@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_87616ece-module__PVY0aG__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_87616ece-module__PVY0aG__variable{--font-display:"Space Grotesk", "Space Grotesk Fallback"}
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_d3059f68-module__KoXOiW__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_d3059f68-module__KoXOiW__variable{--font-body:"Geist", "Geist Fallback"}
:root{--brand:#ff1a8c;--cream:#fff5fa;--cream-card:#fff;--ink:#33202c;--ink-soft:#92707f;--line:#ff1a8c29;--phase:var(--brand);--font-display:"Space Grotesk", -apple-system, system-ui, sans-serif;--font-body:"Geist", -apple-system, system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-weight:700}.accent{color:var(--brand);font-style:normal;font-weight:700}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--ink-soft);margin:0 0 14px;font-size:12px}.page{background:radial-gradient(1100px 600px at 85% -10%, color-mix(in srgb, var(--brand) 14%, transparent), transparent 60%), radial-gradient(800px 500px at -10% 110%, color-mix(in srgb, var(--brand) 10%, transparent), transparent 55%), radial-gradient(1.2px 1.2px at 12% 22%, color-mix(in srgb, var(--brand) 55%, transparent) 45%, transparent 55%), radial-gradient(1.4px 1.4px at 38% 64%, color-mix(in srgb, var(--brand) 45%, transparent) 45%, transparent 55%), radial-gradient(1px 1px at 61% 18%, color-mix(in srgb, var(--brand) 50%, transparent) 45%, transparent 55%), radial-gradient(1.3px 1.3px at 83% 51%, color-mix(in srgb, var(--brand) 45%, transparent) 45%, transparent 55%), radial-gradient(1px 1px at 27% 87%, color-mix(in srgb, var(--brand) 50%, transparent) 45%, transparent 55%), radial-gradient(1.2px 1.2px at 72% 84%, color-mix(in srgb, var(--brand) 45%, transparent) 45%, transparent 55%), var(--cream);min-height:100vh;position:relative;overflow:hidden}.leaf{pointer-events:none;opacity:.1;z-index:0;color:var(--phase);position:fixed}.leaf.tr{width:240px;top:-40px;right:-30px;transform:rotate(15deg)}.leaf.bl{width:280px;bottom:-50px;left:-40px;transform:rotate(-160deg)}.shell{z-index:1;max-width:1200px;margin:0 auto;padding:30px 24px 70px;position:relative}.topbar{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:8px;display:flex}.greeting{font-size:clamp(26px,4vw,36px);line-height:1.05}.date{color:var(--ink-soft);margin-top:6px;font-size:14px}.signout{color:var(--ink-soft);cursor:pointer;font-family:var(--font-body);text-underline-offset:3px;background:0 0;border:none;padding:4px;font-size:13px;text-decoration:underline}.signout:hover{color:var(--ink)}.declaration{border-left:3px solid var(--brand);background:color-mix(in srgb, var(--phase) 8%, var(--cream-card));border-radius:4px 16px 16px 4px;margin:18px 0 22px;padding:16px 22px}.declaration p{font-family:var(--font-display);color:var(--ink);margin:0;font-size:clamp(18px,2.6vw,23px);font-style:normal;font-weight:600;line-height:1.3}.declaration .label{font-style:normal;font-family:var(--font-body)}.grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}@media (max-width:720px){.grid{grid-template-columns:1fr}}.card{background:var(--cream-card);border:1px solid var(--line);border-radius:16px;padding:18px 20px;box-shadow:0 1px 10px #ff1a8c0d}.card h2{margin-bottom:2px;font-size:17px}.card .sub{color:var(--ink-soft);margin:0 0 12px;font-size:12.5px}.card.span2{grid-column:1/-1}.card.soon{opacity:.72}.soon-tag{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:11px;display:inline-block}.cycle-top{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.phase-pill{background:color-mix(in srgb, var(--phase) 16%, var(--cream-card));color:color-mix(in srgb, var(--phase) 65%, var(--ink));border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:14px;font-weight:500;display:inline-flex}.phase-dot{background:var(--phase);border-radius:50%;width:9px;height:9px}.cycle-day{font-family:var(--font-display);font-size:40px;line-height:1}.cycle-meta{color:var(--ink-soft);margin-top:12px;font-size:14px;line-height:1.7}.cycle-meta b{color:var(--ink);font-weight:500}.cycle-empty{color:var(--ink-soft);font-size:15px;line-height:1.6}.btn{font-family:var(--font-body);cursor:pointer;background:var(--ink);color:var(--cream);border:none;border-radius:12px;padding:11px 18px;font-size:14px;transition:opacity .16s}.btn:hover{opacity:.88}.btn-row{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.notes-area{resize:vertical;width:100%;min-height:150px;font-family:var(--font-body);color:var(--ink);background:0 0;border:none;outline:none;font-size:15px;line-height:1.6}.notes-area::placeholder{color:var(--ink-soft);opacity:.6}.save-state{color:var(--ink-soft);height:16px;margin-top:6px;font-size:12px}.login{background:radial-gradient(900px 600px at 80% -10%, color-mix(in srgb, var(--brand) 18%, transparent), transparent 60%), var(--cream);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--cream-card);border:1px solid var(--line);text-align:left;border-radius:22px;width:100%;max-width:420px;padding:44px 38px}.login-card h1{margin-bottom:14px;font-size:38px}.login-card .accent{color:var(--brand)}.login-sub{color:var(--ink-soft);margin:0 0 26px;font-size:16px;line-height:1.5}.g-btn{width:100%;font-family:var(--font-body);background:var(--ink);color:var(--cream);cursor:pointer;border:none;border-radius:12px;padding:14px;font-size:15px;font-weight:500;transition:opacity .16s}.g-btn:hover{opacity:.9}.login-fine{color:var(--ink-soft);margin:18px 0 0;font-size:12px}.topnav{align-items:center;gap:18px;display:flex}.settings-stack{flex-direction:column;gap:18px;margin-top:24px;display:flex}.field{margin:0 0 18px}.field:last-child{margin-bottom:0}.field-row{flex-wrap:wrap;gap:18px;display:flex}.field label{color:var(--ink-soft);letter-spacing:.01em;margin-bottom:8px;font-size:13px;display:block}.label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.text-input{width:100%;font-family:var(--font-body);color:var(--ink);background:var(--cream);border:1px solid var(--line);border-radius:12px;outline:none;padding:11px 14px;font-size:15px;transition:border-color .16s}.text-input:focus{border-color:var(--phase)}.text-input.small{width:110px}.text-input::placeholder{color:var(--ink-soft);opacity:.6}.link-btn{cursor:pointer;font-family:var(--font-body);color:var(--ink-soft);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.link-btn:hover{color:var(--ink)}.swatches{flex-wrap:wrap;gap:14px;display:flex}.swatch{cursor:pointer;flex-direction:column;align-items:center;gap:8px;display:inline-flex;position:relative}.swatch input[type=color]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.swatch-dot{border:1px solid var(--line);width:40px;height:40px;box-shadow:inset 0 0 0 3px var(--cream-card);border-radius:50%}.swatch-label{color:var(--ink-soft);font-size:12px}.decl-list{margin:0 0 18px;padding:0;list-style:none}.decl-item{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 0;display:flex}.decl-item.off .decl-text{color:var(--ink-soft);opacity:.7;text-decoration:line-through}.decl-toggle{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;flex:none;width:18px;height:18px;padding:0;transition:background .16s,border-color .16s}.decl-text{font-family:var(--font-body);color:var(--ink);background:0 0;border:none;border-bottom:1px solid #0000;outline:none;flex:auto;padding:4px 0;font-size:15px}.decl-text:focus{border-bottom-color:var(--line)}.decl-remove{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;flex:none;padding:0 4px;font-size:22px;line-height:1}.decl-remove:hover{color:#9c4f4f}.decl-add{align-items:stretch;gap:10px;display:flex}.decl-add .text-input{flex:auto}.decl-add .btn{white-space:nowrap}.arrange-bar{justify-content:space-between;align-items:center;gap:12px;margin:4px 0 14px;display:flex}.arrange-toggle{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:7px 15px;font-size:12px;transition:all .16s}.arrange-toggle.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}.grid-item{position:relative}.grid-item.span2{grid-column:1/-1}.grid-item.dragging{opacity:.96}.grid-item.dragging .card{box-shadow:0 14px 34px #2f2b262e}.drag-handle{z-index:2;background:color-mix(in srgb, var(--phase) 12%, var(--cream-card));border:1px solid var(--line);width:30px;height:30px;color:var(--ink-soft);cursor:grab;opacity:0;touch-action:none;border-radius:8px;justify-content:center;align-items:center;transition:opacity .16s;display:inline-flex;position:absolute;top:12px;right:12px}.drag-handle:active{cursor:grabbing}.grid-item:hover .drag-handle{opacity:.75}.drag-handle:hover{opacity:1;color:var(--ink)}@media (max-width:720px){.arrange-bar{display:flex}.drag-handle{opacity:0;pointer-events:none}.grid.arranging .drag-handle{opacity:.9;pointer-events:auto}.grid.arranging .card{outline:1px dashed color-mix(in srgb, var(--phase) 45%, transparent);outline-offset:3px}}.conn-list{margin:0;padding:0;list-style:none}.conn-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 0;display:flex}.conn-row:last-child{border-bottom:none;padding-bottom:0}.conn-main{flex:auto;min-width:0}.conn-head{align-items:center;gap:10px;display:flex}.conn-name{font-family:var(--font-display);font-size:17px}.conn-badge{letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:2px 9px;font-size:11px}.conn-badge.on{color:#5c7a52;border-color:#5c7a5266}.conn-blurb{color:var(--ink-soft);margin:4px 0 0;font-size:13px}.conn-action{flex:none}.conn-action .btn{text-decoration:none;display:inline-block}.conn-token{margin-top:12px}.conn-hint{color:var(--ink-soft);margin:0 0 8px;font-size:12px;line-height:1.5}.conn-token-row{gap:8px;display:flex}.conn-token-row .text-input{flex:auto}.conn-err{color:#c04a2e;margin:8px 0 0;font-size:12px}.mod-list{margin:0;padding:0;list-style:none}.mod-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.mod-row:last-child{border-bottom:none;padding-bottom:0}.mod-name{font-size:15px}.switch{border:1px solid var(--line);background:var(--cream);cursor:pointer;border-radius:999px;width:44px;height:26px;padding:0;transition:background .16s,border-color .16s;position:relative}.switch-knob{background:var(--cream-card);border-radius:50%;width:20px;height:20px;transition:transform .16s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000026}.switch.on .switch-knob{transform:translate(18px)}.music-overlay{z-index:40;position:fixed;bottom:18px;right:18px}.music-fab{background:var(--ink);width:50px;height:50px;color:var(--cream);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .16s;display:inline-flex;box-shadow:0 6px 18px #2f2b2638}.music-fab:hover{transform:translateY(-2px)}.music-pill{background:var(--cream-card);border:1px solid var(--line);border-radius:999px;align-items:center;gap:2px;padding:5px 6px;display:inline-flex;box-shadow:0 6px 18px #2f2b2629}.music-ctrl{cursor:pointer;color:var(--ink);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;transition:background .14s;display:inline-flex}.music-ctrl:hover{background:color-mix(in srgb, var(--phase) 14%, transparent)}.music-ctrl.play{background:var(--ink);color:var(--cream)}.music-ctrl.play:hover{opacity:.9;background:var(--ink)}.music-ctrl.expand{color:var(--ink-soft)}.music-panel{background:var(--cream-card);border:1px solid var(--line);text-align:center;border-radius:18px;width:260px;padding:18px;box-shadow:0 14px 36px #2f2b2633}.music-panel-head{justify-content:space-between;align-items:center;display:flex}.music-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--ink-soft);font-size:11px}.music-close{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;padding:0 2px;font-size:20px;line-height:1}.music-close:hover{color:var(--ink)}.music-art{width:84px;height:84px;color:var(--phase);background:color-mix(in srgb, var(--phase) 16%, var(--cream));border:1px solid var(--line);border-radius:12px;justify-content:center;align-items:center;margin:14px auto 12px;display:flex}.music-art svg{width:34px;height:34px}.music-track{font-family:var(--font-display);margin:0;font-size:17px}.music-sub{color:var(--ink-soft);margin:6px 0 14px;font-size:13px;line-height:1.5}.music-controls{justify-content:center;align-items:center;gap:8px;margin-bottom:12px;display:flex}.music-ctrl.big{width:46px;height:46px;font-size:16px}.music-setlink{color:var(--ink-soft);text-underline-offset:3px;font-size:12px;text-decoration:underline;display:inline-block}.music-setlink:hover{color:var(--ink)}.music-panel .btn{text-decoration:none;display:inline-block}.coach-banner{background:color-mix(in srgb, var(--phase) 12%, var(--cream-card));border:1px solid var(--line);color:var(--ink-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:10px 16px;font-size:13px;display:flex}.coach-banner b{color:var(--ink);font-weight:600}.coach-exit{color:var(--ink-soft);text-underline-offset:3px;white-space:nowrap;text-decoration:underline}.coach-exit:hover{color:var(--ink)}.date-field{flex-direction:column;gap:4px;display:inline-flex}.date-field-label{color:var(--ink-soft);font-size:11px}.date-input-native{font-family:var(--font-body);color:var(--ink);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:12px;padding:10px 12px;font-size:14px}.date-input-native:focus{border-color:var(--phase);outline:none}.cycle-undo{color:var(--ink-soft);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;margin-top:12px;padding:0;font-size:12px;text-decoration:underline;display:inline-block}.cycle-undo:hover{color:var(--ink)}.cycle-undo:disabled{opacity:.5;cursor:default}.music-art img{object-fit:cover;border-radius:12px;width:100%;height:100%}.music-ctrl:disabled{opacity:.4;cursor:default}.music-ctrl:disabled:hover{background:0 0}.music-playlists{text-align:left;flex-direction:column;gap:4px;max-height:240px;margin:12px 0;display:flex;overflow-y:auto}.music-playlist{cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:6px;display:flex}.music-playlist:hover{background:color-mix(in srgb, var(--phase) 12%, transparent)}.music-playlist img,.music-playlist-ph{object-fit:cover;background:color-mix(in srgb, var(--phase) 16%, var(--cream));border-radius:6px;flex:none;width:36px;height:36px}.music-playlist-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.conn-guide{background:color-mix(in srgb, var(--phase) 6%, var(--cream));border:1px solid var(--line);border-radius:12px;margin-top:14px;padding:14px 16px}.conn-steps{margin:0 0 12px;padding-left:20px}.conn-steps li{color:var(--ink-soft);margin-bottom:4px;font-size:13px;line-height:1.6}.conn-link-btn{color:var(--ink);border:1px solid var(--line);background:var(--cream-card);border-radius:999px;margin-bottom:12px;padding:7px 14px;font-size:13px;font-weight:500;text-decoration:none;display:inline-block}.conn-link-btn:hover{border-color:var(--phase)}.task-row{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:9px 0;display:flex}.task-check{border:1.5px solid color-mix(in srgb, var(--phase) 55%, var(--line));cursor:pointer;background:0 0;border-radius:50%;flex:none;width:19px;height:19px;transition:background .14s}.task-text{color:var(--ink);flex:auto;font-size:14px;line-height:1.4}.task-text.overdue{color:#c04a2e}.task-open{color:var(--ink-soft);border-radius:6px;flex:none;padding:4px;display:inline-flex}.task-open:hover{color:var(--ink);background:color-mix(in srgb, var(--phase) 12%, transparent)}.task-add{gap:8px;display:flex}.task-add .text-input{flex:auto}.task-add .btn{white-space:nowrap}.card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.icon-btn{border:1px solid var(--line);width:32px;height:32px;color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:9px;flex:none;justify-content:center;align-items:center;transition:color .14s,border-color .14s;display:inline-flex}.icon-btn:hover{color:var(--ink);border-color:var(--phase)}.icon-btn.spin svg{animation:.8s linear spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.undo-toast{z-index:60;background:var(--ink);color:var(--cream);border-radius:999px;align-items:center;gap:14px;max-width:90vw;padding:10px 10px 10px 18px;font-size:13px;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #2f2b2647}.undo-toast span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.undo-btn{background:color-mix(in srgb, var(--cream) 22%, transparent);color:var(--cream);cursor:pointer;font-size:12px;font-weight:600;font-family:var(--font-body);border:none;border-radius:999px;padding:6px 14px}.undo-btn:hover{background:color-mix(in srgb, var(--cream) 34%, transparent)}.crm-search{width:200px;max-width:46vw}.crm-board{gap:12px;padding:4px 2px 8px;display:flex;overflow-x:auto}.crm-col{background:color-mix(in srgb, var(--phase) 5%, var(--cream));border:1px solid var(--line);border-radius:12px;flex:0 0 210px;padding:10px}.crm-col-head{align-items:center;gap:8px;margin-bottom:8px;padding:0 2px;display:flex}.crm-col-name{letter-spacing:.02em;color:var(--ink);font-size:12px;font-weight:600}.crm-col-count{color:var(--ink-soft);font-size:11px}.crm-col-cards{flex-direction:column;gap:8px;display:flex}.crm-card{background:var(--cream-card);border:1px solid var(--line);border-radius:9px;padding:10px 11px;text-decoration:none;transition:border-color .14s,transform .14s;display:block}.crm-card:hover{border-color:var(--phase);transform:translateY(-1px)}.crm-card-name{color:var(--ink);font-size:13px;font-weight:500;line-height:1.3;display:block}.crm-tag{letter-spacing:.04em;color:var(--ink-soft);background:color-mix(in srgb, var(--phase) 14%, transparent);border-radius:999px;margin-top:7px;padding:2px 8px;font-size:10px;display:inline-block}.crm-date{color:var(--ink-soft);margin-top:7px;font-size:11px;display:block}.fmt-bar{gap:4px;margin-bottom:8px;display:flex}.fmt-btn{border:1px solid var(--line);background:var(--cream-card);min-width:30px;height:30px;color:var(--ink-soft);cursor:pointer;font-family:var(--font-body);border-radius:8px;padding:0 8px;font-size:14px;line-height:1}.fmt-btn:hover{color:var(--ink)}.fmt-btn.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}.notes-editor{min-height:130px;font-family:var(--font-body);color:var(--ink);outline:none;font-size:15px;line-height:1.6}.notes-editor:focus{outline:none}.notes-editor p{margin:0 0 8px}.notes-editor h1,.notes-editor h2,.notes-editor h3{font-family:var(--font-display);margin:10px 0 6px;line-height:1.2}.notes-editor h1{font-size:22px}.notes-editor h2{font-size:19px}.notes-editor h3{font-size:16px}.notes-editor ul,.notes-editor ol{margin:0 0 8px;padding-left:22px}.notes-editor li{margin:2px 0}.notes-editor:empty:before,.notes-editor p.is-editor-empty:first-child:before{color:var(--ink-soft);opacity:.55}.declaration .label{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px;font-size:12px;font-style:normal;display:block}.declaration p.declaration-author{font-family:var(--font-body);color:var(--ink-soft);letter-spacing:.02em;margin:12px 0 0;font-size:13px;font-style:normal}.vision-card .card-head{margin-bottom:2px}.vision-statement{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:8px 0 0;font-size:clamp(22px,3.4vw,30px);line-height:1.25}.vision-empty{color:var(--ink-soft);margin:8px 0 0;font-size:15px;font-style:italic}.vision-empty.small{font-size:14px}.vision-image{border:1px solid var(--line);border-radius:14px;margin:20px 0 0;overflow:hidden}.vision-image img{object-fit:cover;width:100%;height:auto;max-height:360px;display:block}.vision-image.editing{position:relative}.vision-image-actions{background:var(--cream-card);border-top:1px solid var(--line);gap:16px;padding:10px 12px;display:flex}.vision-textarea{resize:vertical;line-height:1.5;font-family:var(--font-display);font-size:18px}.vision-goals{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.vision-goals-label{text-transform:uppercase;letter-spacing:.16em;color:var(--ink-soft);margin-bottom:12px;font-size:12px;display:block}.goal-list{margin:0;padding:0;list-style:none}.goal-item{align-items:baseline;gap:12px;padding:7px 0;display:flex}.goal-bullet{background:var(--phase);border-radius:50%;flex:none;width:7px;height:7px;transform:translateY(-2px)}.goal-text{color:var(--ink);font-size:16px;line-height:1.5}.goal-edit-list{margin:0 0 10px;padding:0;list-style:none}.goal-edit-item{align-items:center;gap:10px;margin-bottom:8px;display:flex}.goal-edit-item .text-input{flex:auto}.top3-open{white-space:nowrap;padding:8px 14px;font-size:13px;text-decoration:none}.top3-list{margin:16px 0 0;padding:0;list-style:none}.top3-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:9px 0;display:flex}.top3-row:last-child{border-bottom:none}.top3-input{font-family:var(--font-body);color:var(--ink);background:0 0;border:none;outline:none;flex:auto;padding:2px 0;font-size:15px}.top3-input::placeholder{color:var(--ink-soft);opacity:.55}.top3-input.done{color:var(--ink-soft);text-decoration:line-through}.task-check:disabled{cursor:default}.arrange-hint{color:var(--ink-soft);font-size:13px}.arrange-link{margin-top:6px;text-decoration:none;display:inline-block}.grid.arranging .drag-handle{opacity:.9;pointer-events:auto}.grid.arranging .card{outline:1px dashed color-mix(in srgb, var(--phase) 45%, transparent);outline-offset:4px}.cycle-log{margin-top:18px;display:inline-block;position:relative}.cycle-guidance{color:var(--ink-soft);margin:14px 0 0;font-size:14px;line-height:1.65}.cycle-log-btn{font-family:var(--font-body);cursor:pointer;color:var(--ink-soft);border:1px solid var(--line);background:0 0;border-radius:999px;padding:9px 17px;font-size:13px;transition:color .16s,border-color .16s}.cycle-log-btn:hover{color:var(--ink);border-color:var(--phase)}.cycle-log-btn:disabled{opacity:.5;cursor:default}.cycle-date-hidden{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute;bottom:0;left:14px}.sparkle{font-size:.7em;animation:2.4s ease-in-out infinite twinkle;display:inline-block}@keyframes twinkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.65;transform:scale(.82)rotate(8deg)}}@media (prefers-reduced-motion:reduce){.sparkle{animation:none}}.card-head-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.empty-note{color:var(--ink-soft);margin:8px 0 0;font-size:13.5px;line-height:1.6}.empty-note a{color:var(--brand);text-underline-offset:3px;font-weight:600;text-decoration:underline}.row-remove{cursor:pointer;color:var(--ink-soft);opacity:.5;background:0 0;border:none;flex:none;padding:0 4px;font-size:18px;line-height:1}.row-remove:hover{opacity:1;color:#c0264e}.hot{color:var(--brand);font-weight:700}.text-input.select,.text-input.date{flex:none;width:auto}.client-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (min-width:980px){.client-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:560px){.client-grid{grid-template-columns:1fr}}.client-tile{border:1px solid color-mix(in srgb, var(--client) 30%, var(--line));border-top:3px solid var(--client);background:color-mix(in srgb, var(--client) 3%, var(--cream-card));border-radius:12px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.client-head{align-items:center;gap:8px;display:flex}.client-dot{background:var(--client,var(--brand));border-radius:50%;flex:none;width:10px;height:10px}.client-names{flex-direction:column;min-width:0;display:flex}.client-name{font-family:var(--font-display);font-size:15px;font-weight:700;line-height:1.2}.client-company{color:var(--ink-soft);font-size:11.5px}.client-clock{font-variant-numeric:tabular-nums;color:var(--ink-soft);white-space:nowrap;margin-left:auto;font-size:12.5px}.client-needs{flex:auto}.client-needs ul{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.client-needs li{align-items:baseline;gap:6px;font-size:13px;line-height:1.35;display:flex}.client-needs a{color:var(--ink);text-decoration:none}.client-needs a:hover{color:var(--brand)}.client-clear{color:var(--ink-soft);margin:0;font-size:13px}.client-more{color:var(--ink-soft);font-size:12px}.need-pill{letter-spacing:.06em;text-transform:uppercase;background:color-mix(in srgb, var(--client) 14%, transparent);color:color-mix(in srgb, var(--client) 70%, var(--ink));border-radius:999px;flex:none;padding:1px 7px;font-size:9.5px;font-weight:700}.need-pill.overdue{color:#c0264e;background:#ffe3e8}.client-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.client-actions a,.client-info-btn{color:var(--brand);cursor:pointer;font-size:12px;font-weight:600;font-family:var(--font-body);background:0 0;border:none;padding:0;text-decoration:none}.client-actions a:hover,.client-info-btn:hover{text-underline-offset:3px;text-decoration:underline}.client-urgent{color:#c0264e;background:#ffe3e8;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:10.5px;font-weight:700}.client-notes{border-top:1px dashed var(--line);padding-top:8px}.client-notes p{color:var(--ink-soft);white-space:pre-wrap;margin:0 0 6px;font-size:12.5px;line-height:1.5}.client-notes b{color:var(--ink)}.zone-strip{flex-wrap:wrap;gap:8px;margin:2px 0 14px;display:flex}.zone-chip{border:1px solid color-mix(in srgb, var(--client,var(--brand)) 30%, var(--line));background:color-mix(in srgb, var(--client,var(--brand)) 5%, var(--cream-card));border-radius:999px;align-items:baseline;gap:7px;padding:4px 12px;font-size:12.5px;display:inline-flex}.zone-chip b{font-size:11.5px;font-weight:700}.zone-chip span{font-variant-numeric:tabular-nums;color:var(--ink-soft)}.zone-chip.you{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 10%, var(--cream-card))}.zone-chip.you span{color:var(--ink);font-weight:600}.zone-diff{color:var(--brand);margin-left:4px;font-size:10px;font-style:normal;font-weight:700}.agenda{margin:0;padding:0;list-style:none}.agenda-row{border-bottom:1px solid var(--line);align-items:baseline;gap:14px;padding:8px 0;font-size:14px;display:flex}.agenda-row:last-child{border-bottom:none}.agenda-row.past{opacity:.45}.agenda-row.live{background:color-mix(in srgb, var(--brand) 6%, transparent);border-radius:8px;padding-left:8px;padding-right:8px}.agenda-time{font-variant-numeric:tabular-nums;color:var(--ink-soft);white-space:nowrap;flex:0 0 128px;font-size:12.5px}.agenda-title{flex:auto;min-width:0;font-weight:600}.agenda-title a{color:var(--ink);text-decoration:none}.agenda-title a:hover{color:var(--brand)}.live-pill{letter-spacing:.08em;text-transform:uppercase;background:var(--brand);color:#fff;vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:9.5px;font-weight:700}.agenda-extra{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:180px;font-size:12px;overflow:hidden}.agenda-extra a{color:var(--brand);font-weight:700;text-decoration:none}.agenda-extra a:hover{text-underline-offset:3px;text-decoration:underline}@media (max-width:560px){.agenda-extra{display:none}.agenda-time{flex-basis:96px}}.task-bucket{margin-top:6px}.bucket-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:10px 0 4px;font-size:10.5px;font-weight:700}.bucket-label.overdue{color:#c0264e}.bucket-label.today{color:var(--brand)}.task-list{margin:0;padding:0;list-style:none}.task-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:6px 0;font-size:14px;display:flex}.task-row:last-child{border-bottom:none}.task-check{border:1.6px solid color-mix(in srgb, var(--brand) 55%, var(--line));cursor:pointer;background:0 0;border-radius:50%;flex:none;width:17px;height:17px;padding:0;transition:background .14s,border-color .14s}.task-check:hover{background:color-mix(in srgb, var(--brand) 18%, transparent)}.task-check.on{background:var(--brand);border-color:var(--brand)}.task-check:disabled{cursor:default;opacity:.5}.task-title{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:auto;text-decoration:none;overflow:hidden}.task-title:hover{color:var(--brand)}.task-client{color:color-mix(in srgb, var(--client,var(--brand)) 70%, var(--ink));background:color-mix(in srgb, var(--client,var(--brand)) 12%, transparent);white-space:nowrap;border-radius:999px;flex:none;padding:2px 9px;font-size:10.5px;font-weight:700}.task-due{color:var(--ink-soft);font-variant-numeric:tabular-nums;flex:none;font-size:11.5px}.task-due.overdue{color:#c0264e;font-weight:700}.task-due.today{color:var(--brand);font-weight:700}.task-add{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.task-add .text-input:first-child{flex:200px}.focus-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:12px 0 6px;font-size:10.5px;font-weight:700;display:block}.focus-intention{font-weight:600}.focus-card .save-state{display:block}.focus-card .top3-list{margin-top:4px}.check-list{margin:0;padding:0;list-style:none}.check-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:6px 0;font-size:14px;display:flex}.check-row:last-child{border-bottom:none}.check-row.done .check-text{color:var(--ink-soft);text-decoration:line-through}.check-text{flex:auto;min-width:0}.check-cat{margin-right:6px;font-size:12px;font-style:normal}.check-add{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.check-add .text-input:first-child{flex:140px}.project-list{margin:0;padding:0;list-style:none}.project-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:7px 0;font-size:14px;display:flex}.project-row:last-child{border-bottom:none}.project-row.done .project-name{color:var(--ink-soft);text-decoration:line-through}.project-name{flex:auto;min-width:0;font-weight:600}.project-client{color:var(--ink-soft);flex:none;font-size:11.5px}.project-due{color:var(--ink-soft);font-variant-numeric:tabular-nums;flex:none;font-size:11.5px}.status-pill{letter-spacing:.07em;text-transform:uppercase;cursor:pointer;font-size:10px;font-weight:700;font-family:var(--font-body);text-align:center;border:none;border-radius:999px;flex:none;width:74px;padding:3px 10px}.status-pill.planning{color:#7c3aed;background:#f3e8ff}.status-pill.active{background:color-mix(in srgb, var(--brand) 16%, #fff);color:var(--brand)}.status-pill.waiting{color:#a16207;background:#fff3d6}.status-pill.done{color:#15803d;background:#dcfce7}.dir-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.dir-search{flex:220px}.cat-chips{flex-wrap:wrap;gap:6px;display:flex}.cat-chip{font-size:12px;font-weight:600;font-family:var(--font-body);cursor:pointer;border:1px solid var(--line);color:var(--ink-soft);background:0 0;border-radius:999px;padding:5px 12px;transition:all .14s}.cat-chip.on{background:var(--brand);border-color:var(--brand);color:#fff}.dir-list{margin:0;padding:0;list-style:none}.dir-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:14px;padding:8px 0;display:flex}.dir-row:last-child{border-bottom:none}.dir-main{flex-wrap:wrap;flex:auto;align-items:baseline;gap:10px;min-width:0;display:flex}.dir-name{font-size:14px;font-weight:700}.dir-meta{color:var(--ink-soft);font-size:12.5px}.dir-notes{color:var(--ink-soft);flex-basis:100%;font-size:12px}.dir-actions{flex:none;align-items:baseline;gap:12px;display:flex}.dir-actions a{color:var(--brand);white-space:nowrap;font-size:12.5px;font-weight:600;text-decoration:none}.dir-actions a:hover{text-underline-offset:3px;text-decoration:underline}.contact-add{border:1px dashed var(--line);border-radius:12px;flex-direction:column;gap:8px;margin-bottom:14px;padding:14px;display:flex}.contact-add-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (max-width:560px){.contact-add-grid{grid-template-columns:1fr}}.client-edit-list{margin:0 0 14px;padding:0;list-style:none}.client-edit-row{border-bottom:1px solid var(--line)}.client-edit-row:last-child{border-bottom:none}.client-edit-head{cursor:pointer;text-align:left;width:100%;font-family:var(--font-body);color:var(--ink);background:0 0;border:none;align-items:center;gap:10px;padding:12px 0;font-size:15px;display:flex}.client-edit-head .client-name{font-size:15px}.client-edit-head .client-company{font-size:12px}.client-edit-chev{color:var(--ink-soft);margin-left:auto}.client-form{flex-direction:column;gap:8px;padding:4px 0 16px;display:flex}.client-form-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (max-width:560px){.client-form-grid{grid-template-columns:1fr}}.client-notes-input{resize:vertical;line-height:1.5}.color-field{color:var(--ink-soft);border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:6px 12px;font-size:13px;display:inline-flex}.color-field input[type=color]{cursor:pointer;background:0 0;border:none;width:30px;height:30px;padding:0}.btn{background:var(--brand);color:#fff;border-radius:11px;font-weight:600}.btn.ghost{color:var(--brand);border:1px solid color-mix(in srgb, var(--brand) 40%, var(--line));background:0 0}.switch.on{background:var(--brand);border-color:var(--brand)}.g-btn{background:var(--brand);font-weight:700}.decl-toggle.on{background:var(--brand);border-color:var(--brand)}
