:root{--bg:#f7f6f2;--surface:#fff;--ink:#292c30;--muted:#818380;--line:#e8e8e0;--purple:#7860aa;--purple-dark:#62498e;--lavender:#efebf6;--soft:#f5f3f8;--green:#e9eee5;--radius:18px;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);font-size:14px;background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #ab95d1;outline-offset:4px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--purple);outline-offset:2px}button svg{flex-shrink:0}h1,h2,h3,p{margin:0}button{border:0;background:none}svg{vertical-align:middle}em{font-weight:400}::selection{background:#dcd2f0}.brand{display:inline-flex;gap:12px;align-items:center;font-weight:650;font-size:20px;letter-spacing:-.8px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;background:var(--purple);border-radius:13px;color:#fff;font-family:Georgia,serif;font-size:29px;letter-spacing:-2px;font-weight:400;padding-right:3px}.brand-mark span{color:#d0c0e9}.brand-caption{display:block;font-size:10px;color:var(--muted);font-weight:400;letter-spacing:.35px;margin-top:3px}.eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:650;color:var(--muted);line-height:1.7;text-transform:uppercase}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:12px 19px;border-radius:11px;font-weight:550;transition:background .18s,transform .18s}.primary{background:var(--purple);color:#fff}.primary:hover{background:var(--purple-dark);transform:translateY(-1px)}.secondary{border:1px solid var(--line);background:var(--surface)}.secondary:hover{background:var(--soft)}.large{min-height:54px;padding:16px 25px;font-size:15px}.full{width:100%}.text-button{color:var(--purple);display:inline-flex;gap:7px;align-items:center;min-height:40px;font-weight:500;text-align:left}.text-button:hover{color:var(--purple-dark)}.icon-button{height:38px;width:38px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--muted)}.icon-button:hover{background:var(--soft);color:var(--purple)}.icon-button:disabled{opacity:.25}.subtle{font-size:12px;color:var(--muted)}.prototype-label{font-size:11px;letter-spacing:.3px;color:var(--muted);border:1px solid var(--line);padding:8px 12px;border-radius:30px}.welcome-page{min-height:100vh;max-width:1440px;margin:auto;padding:35px 6vw 0;display:flex;flex-direction:column}.welcome-header{display:flex;align-items:center;justify-content:space-between}.welcome-main{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:70px 15px 90px}.tiny-line{display:inline-block;width:24px;height:1px;background:var(--purple);vertical-align:middle;margin-right:10px}.welcome-copy h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(44px,4.6vw,70px);line-height:1.1;letter-spacing:-2.4px;font-weight:400;margin:24px 0}.welcome-copy h1 em{color:var(--purple)}.lead{color:#85847f;line-height:1.85;font-size:16px;margin:0 0 30px}.demo-link{display:block;color:var(--muted);font-size:12px;margin:19px 0 0;padding:7px 0}.demo-link span{margin-left:8px;color:var(--purple)}.demo-link:hover{color:var(--purple)}.welcome-details{display:flex;gap:14px;align-items:center;font-size:11px;color:var(--muted);margin-top:45px}.welcome-details i{height:3px;width:3px;background:#bebbb4;border-radius:50%}.welcome-footer{padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.welcome-art{position:relative;max-width:520px;min-height:500px;display:flex;align-items:center;justify-content:center}.art-ring{position:absolute;width:440px;height:440px;border:1px solid #e3ded7;border-radius:50%;background:radial-gradient(ellipse,#eee8f1 0,transparent 70%)}.art-ring:before{content:"";position:absolute;inset:-30px;border:1px dashed #e8e2d9;border-radius:50%}.paper-card{width:360px;padding:32px 28px 22px;position:relative;transform:rotate(-6deg);background:#fffefa;border:1px solid #ede9e0;box-shadow:3px 28px 60px #4c3c6612;border-radius:7px}.paper-top{display:flex;justify-content:space-between;color:#969086;font-size:8px;letter-spacing:1.3px}.paper-card h2{font-family:Georgia,serif;font-weight:400;font-size:32px;line-height:1.2;margin:28px 0 26px}.paper-rule{height:1px;background:var(--line);margin-bottom:15px}.paper-days,.paper-cells{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.paper-days span{text-align:center;font-size:9px;color:#9c9589;padding-bottom:8px}.paper-cells span{aspect-ratio:1;background:#f7f5ef;border:1px solid #ebe7df;border-radius:5px;margin-bottom:7px;display:grid;place-items:center;font-size:18px;color:#fff}.paper-cells .filled{background:#9280b5;border-color:#9280b5}.paper-cells .half{background:linear-gradient(135deg,#b8a8d3 50%,#f1edf6 50%);border-color:#dacfe8}.paper-bottom{display:flex;justify-content:space-between;align-items:center;color:#9a9387;font-size:10px;padding-top:18px}.paper-bottom span{font-size:27px;color:var(--purple)}.little-note{position:absolute;right:-6px;bottom:25px;background:#e7ebdf;transform:rotate(8deg);padding:22px 34px 20px 22px;font:italic 21px/1.3 Georgia,serif;box-shadow:0 8px 25px #29302110}.little-note span{display:block;text-align:right;font-size:32px;margin-top:7px;color:#909d7d}.art-label{position:absolute;bottom:-30px;left:0;width:100%;text-align:center;font-size:9px;letter-spacing:2.4px;color:#a19a90}.app-shell{display:flex;min-height:100vh}.sidebar{width:240px;position:fixed;inset:0 auto 0 0;padding:33px 24px 22px;background:#f0efe9;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.sidebar-cycle{margin:45px 2px 31px;display:flex;flex-direction:column;gap:9px}.sidebar-cycle strong{font-size:14px;line-height:1.4;overflow-wrap:anywhere}.sidebar-cycle>span:not(.eyebrow){font-size:11px;color:var(--muted)}.mini-weeks{display:flex;gap:4px;margin-top:4px}.mini-weeks span{flex:1;height:5px;background:#deddd5;border-radius:2px}.mini-weeks .passed{background:#a795c4}.sidebar-cycle small{font-size:10px;color:var(--muted)}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav-item{display:flex;align-items:center;gap:12px;min-height:47px;padding:12px 14px;border-radius:10px;color:#888a83;font-size:13px;text-align:left}.nav-item.active{background:#e7e1f0;color:var(--purple-dark);font-weight:600}.nav-item:hover{background:#e9e7e0}.nav-item.active:hover{background:#e7e1f0}.nav-dot{width:5px;height:5px;border-radius:50%;background:var(--purple);margin-left:auto}.sidebar-add{display:flex;align-items:center;gap:10px;border:1px dashed #ccc8d1;border-radius:10px;margin-top:24px;padding:12px 14px;color:#8a8198;font-size:12px}.sidebar-add:hover{background:#eae6f0}.sidebar-bottom{margin-top:auto;padding-top:45px;color:#94958b}.sidebar-bottom p{font-family:Georgia,serif;font-style:italic;font-size:17px;line-height:1.6;margin:10px 0 25px}.leaf-symbol{color:#a0a88e}.sidebar-bottom .text-button{font-size:11px;color:#92938d;width:100%;justify-content:space-between;border-top:1px solid #e0dfd7;padding-top:10px}.main-area{margin-left:240px;min-width:0;flex:1}.topbar{height:87px;border-bottom:1px solid var(--line);padding:0 42px;display:flex;align-items:center;justify-content:space-between}.topbar-caption{font-size:9px;letter-spacing:1.7px;color:#aaa9a0}.topbar-right{display:flex;align-items:center;gap:18px}.prototype-chip{background:#eeede7;color:#88897f;padding:7px 11px;border-radius:6px;font-size:10px}.avatar{width:31px;height:31px;display:grid;place-items:center;background:#e9e4ef;color:var(--purple);border-radius:50%;font-size:11px}.content{padding:40px 42px 24px;max-width:1480px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.page-heading h1{font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:48px;letter-spacing:-1.9px;margin:8px 0 11px;line-height:1.1}.heading-dot{color:var(--purple)}.page-heading p{color:var(--muted);font-size:12px;line-height:1.7}.eyebrow-divider{margin:0 9px;color:#c4c1ba}.week-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:21px}.week-switch{display:flex;align-items:center;gap:11px}.week-switch>span{font-size:13px;font-weight:550;min-width:150px;text-align:center}.week-switch .icon-button{height:32px;width:32px;border:1px solid var(--line);background:#fff}.today-button{font-size:11px;color:#8e8a98;display:flex;align-items:center;gap:7px;min-height:38px}.today-button svg{width:16px}.week-layout{display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:24px;align-items:start}.tracker-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.card-top{display:flex;align-items:center;justify-content:space-between;padding:22px 23px;gap:10px}.card-top h2{font-size:14px;font-weight:550;display:flex;align-items:center;gap:8px}.card-top h2 svg{width:16px;color:var(--muted)}.goal-group{border-top:1px solid var(--line)}.goal-header{padding:18px 19px 10px;display:flex;align-items:flex-start;gap:6px}.goal-toggle{padding:0;display:flex;align-items:center;gap:12px;flex:1;text-align:left;min-width:0;min-height:39px}.goal-number{width:31px;height:31px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;font-size:10px;letter-spacing:.5px;flex-shrink:0}.color-0{background:#eee8f6;color:#9b84b7}.color-1{background:#eaf0e5;color:#8d9b7f}.color-2{background:#f8eee3;color:#c3a681}.color-3{background:#e6edf1;color:#879dab}.goal-label{min-width:0;flex:1}.goal-label strong{font-size:13px;font-weight:550;display:block;line-height:1.5;overflow-wrap:anywhere}.goal-label small{display:block;font-size:10px;color:#a3a29c;line-height:1.5;margin-top:2px;overflow-wrap:anywhere}.chevron{color:#aaa8a5}.chevron svg{width:14px;transition:transform .2s}.chevron.collapsed svg{transform:rotate(-90deg)}.goal-header>.icon-button{width:25px;height:34px}.goal-body{padding:0 22px 15px}.action-row{padding:14px 0 13px;display:flex;align-items:center;gap:18px}.action-row+.action-row{border-top:1px dashed #eeede8}.action-title{font-size:12px;line-height:1.55;flex:1;min-width:110px;overflow-wrap:anywhere}.action-title>span{display:block;color:#aaa8a1;font-size:9px;margin-top:5px}.day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;flex-shrink:0;width:294px}.day-column{display:flex;flex-direction:column;align-items:center;gap:7px}.day-label{font-size:8px;color:#a3a29c;text-align:center;line-height:1.35;min-height:25px}.day-label b{display:block;font-size:10px;font-weight:500;color:#8a8984}.is-today .day-label,.is-today .day-label b{color:var(--purple);font-weight:650}.day-cell{width:100%;height:37px;border:1px solid #e6e4df;border-radius:7px;display:grid;place-items:center;font-size:18px;transition:background .15s,transform .15s;background:#fafaf7}.day-cell:not(:disabled):hover{transform:translateY(-2px);border-color:#b4a1cf;background:#eee8f6}.day-cell.done{background:#9582b9;color:#fff;border-color:#9582b9}.day-cell.done:hover{background:var(--purple)}.day-cell.partial{background:#eee7f5;border-color:#c4b4d9;color:#9a82b9}.day-cell.skipped{background:#f3f2ee;border-color:#e4e2db;color:#b5b1a7}.day-cell.off{border-color:transparent;background:#fafaf8;color:#d9d7d0;font-size:13px}.day-cell.future{opacity:.6}.day-cell.off.future{opacity:.7}.is-today .day-cell{box-shadow:0 0 0 2px #fff,0 0 0 3px #c3b2dd}.is-today .day-cell.off{box-shadow:none}.empty-dot{width:3px;height:3px;background:#ccc8be;border-radius:50%}.day-cell svg{width:18px;height:18px}.action-add{font-size:10px;min-height:28px;padding:3px 0;color:#a29aaa}.action-add svg{width:13px;height:13px}.add-row{min-height:54px;border-top:1px solid var(--line);color:#9991a2;width:100%;display:flex;gap:8px;align-items:center;padding:14px 23px;font-size:11px;text-align:left}.add-row:hover{background:#faf8fc}.add-row svg{width:15px}.legend{display:flex;gap:13px;flex-wrap:wrap;padding:15px 22px;background:#fbfbf8;border-top:1px solid var(--line);font-size:9px;color:#9c9b93}.legend>span{display:flex;gap:5px;align-items:center}.legend-box{width:14px;height:14px;border-radius:3px;font-style:normal;display:grid;place-items:center;font-size:10px}.legend-box.done{color:#fff;background:#9582b9}.legend-box.partial{color:#9a82b9;background:#eee7f5}.legend-box.skipped{color:#b5b1a7;background:#eeece6}.legend-box.off{color:#c0bdb6}.week-aside{display:flex;flex-direction:column;gap:20px}.progress-card{background:#eeebf4;border:1px solid #e5dfed;border-radius:var(--radius);padding:23px 23px 25px;position:relative;overflow:hidden}.card-kicker{font-size:8px;letter-spacing:1.3px;color:#9b8eae;display:flex;align-items:center;justify-content:space-between}.card-kicker svg{width:16px}.progress-number{font:400 65px/1 Georgia,serif;color:#74608f;letter-spacing:-3px;margin:22px 0 12px}.progress-number small{font-size:26px;letter-spacing:-1px;margin-left:4px}.progress-card>p{font-size:10px;color:#9a8eaa;line-height:1.7}.progress-track{margin:19px 0 18px;height:5px;border-radius:5px;background:#ded6e9;overflow:hidden}.progress-track span{height:100%;display:block;background:#a18dbb;border-radius:5px;transition:width .25s}.progress-caption{font-size:10px;line-height:1.8;color:#9c91a8;position:relative;z-index:1}.progress-flower{font-size:78px;position:absolute;right:-12px;bottom:-20px;color:#e3dcec;transform:rotate(17deg)}.note-card{background:#f4f2eb;border:1px solid #e9e5da;border-radius:var(--radius)}.note-card .card-top{padding:17px 17px 3px}.note-card .card-top h2{font-size:11px}.note-card .icon-button{height:28px;width:24px}.note-card .icon-button svg{width:15px}.note-preview{padding:13px 20px 22px;display:block;width:100%;text-align:left;font:italic 16px/1.65 Georgia,serif;color:#aaa18f;min-height:132px;overflow-wrap:anywhere;white-space:pre-wrap}.note-preview span{display:block;font:10px/1.5 Segoe UI,sans-serif;margin-top:23px;color:#a79e8d}.note-preview.has-note{font-size:15px;color:#81776b}.quiet-tip{display:flex;gap:11px;padding:0 10px;color:#b0ab9f}.quiet-tip>span{font-size:22px}.quiet-tip p{font-size:9px;line-height:1.8;padding-top:3px}.content-footer{display:flex;justify-content:space-between;gap:10px;margin-top:34px;padding-top:20px;border-top:1px solid var(--line);font-size:9px;color:#aaa89e}.status-dot{display:inline-block;width:5px;height:5px;background:#a5af98;border-radius:50%;margin-right:5px}.mobile-nav,.mobile-brand{display:none}.demo-banner,.error-banner{padding:11px 42px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;line-height:1.5}.demo-banner{background:#eeebf4;color:#92829f}.demo-banner button{font-size:11px;color:var(--purple);white-space:nowrap;min-height:26px}.error-banner{background:#fbede5;color:#9a5d3c}.error-banner button{color:#9a5d3c;text-decoration:underline;min-height:32px}.inline-empty{color:var(--muted);font-size:12px;line-height:1.7;padding:12px 0}.empty-state{text-align:center;padding:45px 24px;max-width:420px;margin:auto}.empty-icon{width:50px;height:50px;background:var(--lavender);border-radius:16px;color:var(--purple);margin:0 auto 20px;display:grid;place-items:center}.empty-state h3{font:26px/1.25 Georgia,serif;margin-bottom:12px}.empty-state p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:25px}.goals-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.goal-detail{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:25px;min-width:0}.goal-detail-top{display:flex;align-items:center;justify-content:space-between}.goal-detail h2{font-size:19px;line-height:1.4;margin:20px 0 8px;overflow-wrap:anywhere;font-weight:550}.goal-detail>p{font-size:12px;color:var(--muted);line-height:1.8;overflow-wrap:anywhere}.goal-actions-list{border-top:1px solid var(--line);margin-top:22px;padding:14px 0}.goal-actions-list>div{display:flex;gap:11px;padding:9px 0;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.goal-actions-list svg{color:#b4a3c8;width:15px;flex-shrink:0;margin-top:2px}.goal-actions-list small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.goal-detail>.text-button{font-size:12px}.cycle-cover{background:#eeebf3;border:1px solid #e5deee;padding:35px;border-radius:var(--radius);display:flex;justify-content:space-between;gap:30px;align-items:center}.cycle-cover h2{font:34px/1.3 Georgia,serif;margin:16px 0;overflow-wrap:anywhere}.cycle-cover p{font-size:13px;color:#8d8199;line-height:1.7}.cycle-cover div>span{display:block;margin-top:12px;font-size:10px;color:#a49aaf}.cycle-big{font:120px/.8 Georgia,serif;color:#c3b6d4;letter-spacing:-8px;text-align:center;flex-shrink:0}.cycle-big span{font:10px/1.5 Segoe UI,sans-serif;letter-spacing:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:35px 0 20px}.section-heading h2{font-size:17px;font-weight:550}.section-heading>span{color:var(--muted);font-size:11px}.weeks-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.week-tile{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:19px;min-width:0;transition:transform .15s}.week-tile:hover{transform:translateY(-3px);border-color:#c0b0d4}.week-tile.current{border-color:#b6a0cf;background:#f3eef9}.week-tile>div:first-child{display:flex;justify-content:space-between;gap:6px;align-items:center;font-size:8px;letter-spacing:1px;color:#99928d}.week-tile svg{width:13px;color:#b3ada7}.week-tile i{font-style:normal;font-size:8px;color:var(--purple);letter-spacing:0}.week-tile strong{font:32px/1.2 Georgia,serif;display:block;margin:19px 0 10px;color:#8d7b9f}.week-tile strong small{font-size:17px}.week-tile p{font-size:9px;color:var(--muted)}.future-tile strong{font-size:22px;line-height:1.75;color:#bcb7b0}.tile-bars{display:flex;gap:4px;margin-top:17px}.tile-bars span{height:4px;flex:1;background:#eceae4;border-radius:2px}.tile-bars .filled{background:#ae9bc6}dialog{border:1px solid var(--line);border-radius:22px;padding:27px 30px 29px;background:var(--surface);color:var(--ink);width:480px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 30px 100px #29213926}dialog::backdrop{background:#26232e60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sheet-handle{display:none}.sheet-header{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.sheet-header h2{font:29px/1.18 Georgia,serif;letter-spacing:-.8px}.sheet-header .icon-button{margin-right:-8px}.sheet-intro{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:24px;overflow-wrap:anywhere}.step-label{display:flex;justify-content:space-between;gap:8px;font-size:9px;letter-spacing:1px;color:var(--purple);margin-bottom:19px}.step-label span{color:#aaa4af;letter-spacing:0}.field{display:block;margin-bottom:20px}.field>span{display:block;font-size:12px;font-weight:550;margin-bottom:8px}.field small{color:#a2a09a;font-size:10px;font-weight:400;margin-left:4px}.field input,.field textarea,.field select{width:100%;min-width:0;background:#fafaf7;border:1px solid #e4e2dc;border-radius:9px;padding:13px 12px;font-size:13px;line-height:1.5;color:var(--ink)}.field input::placeholder,.field textarea::placeholder{color:#aaa69e}.field textarea{resize:vertical;min-height:120px}.form-hint{font-size:11px;line-height:1.7;color:#9f9b93;background:#f7f6f1;padding:12px 14px;border-radius:8px;margin-bottom:21px}.privacy-hint{font-size:10px;line-height:1.6;text-align:center;color:#a6a29a;margin-top:16px}.form-error{font-size:12px;line-height:1.6;color:#a36244}.form-error:not(:empty){padding:10px 0 16px}.center{display:flex;justify-content:center;margin:12px auto 0}.goal-context{display:flex;align-items:center;gap:10px;color:var(--purple);font-size:12px;background:var(--lavender);padding:12px 15px;margin-bottom:22px;border-radius:9px;overflow-wrap:anywhere}.goal-context svg{flex-shrink:0}.days-field{padding:0;border:0;margin:0 0 22px}.days-field legend{font-size:12px;font-weight:550;margin-bottom:11px}.day-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.day-picker label{cursor:pointer;position:relative}.day-picker input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.day-picker span{display:grid;place-items:center;height:44px;border:1px solid var(--line);border-radius:9px;background:var(--bg);font-size:12px}.day-picker input:checked+span{background:var(--lavender);border-color:#bca8d5;color:var(--purple);font-weight:600}.day-picker input:focus-visible+span{outline:2px solid var(--purple);outline-offset:2px}.day-presets{display:flex;gap:12px;margin-top:12px;flex-wrap:wrap}.day-presets button{font-size:10px;color:var(--purple);padding:6px 0}.mark-date{display:block;color:var(--purple);margin-top:4px;font-size:12px}.mark-options{display:flex;flex-direction:column;gap:8px}.mark-option{display:flex;gap:13px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:12px;text-align:left}.mark-option:hover,.mark-option.selected{background:var(--soft);border-color:#c3b3d8}.mark-option>span:nth-child(2){flex:1}.mark-option strong{display:block;font-size:13px;font-weight:550}.mark-option small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.mark-option>svg{color:var(--purple);width:17px}.mark-symbol{height:38px;width:38px;display:grid;place-items:center;font-size:22px;border-radius:9px;background:#f1efea;color:#a8a194}.mark-symbol.done{background:#9582b9;color:#fff}.mark-symbol.partial{background:var(--lavender);color:var(--purple)}.about-info p{font-size:12px;line-height:1.8;margin-bottom:15px;color:var(--muted)}.about-info strong{color:var(--ink);font-weight:550}.prototype-tools{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.prototype-tools .secondary{font-size:11px;margin:13px 0}.prototype-tools p{font-size:11px;color:var(--muted);line-height:1.8}.button-stack{display:flex;flex-direction:column;gap:10px}#notification{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#39313f;color:#fff;border-radius:12px;padding:13px 21px;font-size:12px;line-height:1.5;max-width:calc(100vw - 32px);width:max-content;z-index:100;transition:opacity .2s,transform .2s;box-shadow:0 10px 30px #0002}#notification.visible{opacity:1;transform:translate(-50%)}@media(min-width:1500px){.content{padding-top:55px}.week-layout{grid-template-columns:minmax(0,1fr) 285px;gap:28px}.day-grid{width:350px;gap:9px}.day-cell{height:42px}.action-title{font-size:13px}.progress-card{padding:26px}.progress-number{font-size:76px}}@media(max-width:1200px){.sidebar{width:210px;padding-left:20px;padding-right:20px}.main-area{margin-left:210px}.content{padding:32px 26px 24px}.topbar{padding:0 26px}.week-layout{grid-template-columns:minmax(0,1fr) 220px;gap:18px}.action-row{display:block}.action-title{margin-bottom:12px}.action-title>span{display:none}.day-grid{width:100%;gap:7px}.day-cell{height:40px}.goal-body{padding-left:20px;padding-right:20px}.weeks-map{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-banner,.error-banner{padding-left:26px;padding-right:26px}.welcome-art{transform:scale(.9)}.welcome-copy h1{font-size:54px}}@media(max-width:950px){.sidebar{width:190px;padding-left:15px;padding-right:15px}.sidebar .brand{font-size:17px;gap:8px}.sidebar .brand-mark{width:36px;height:38px;font-size:26px}.main-area{margin-left:190px}.week-layout{grid-template-columns:minmax(0,1fr)}.week-aside{display:grid;grid-template-columns:1fr 1fr}.quiet-tip{display:none}.progress-number{font-size:52px;margin:15px 0 8px}.progress-card{padding:20px}.progress-caption{font-size:9px}.topbar-caption{font-size:8px;letter-spacing:1px}.topbar-right{gap:10px}.page-heading h1{font-size:42px}.goals-cards{grid-template-columns:1fr}.cycle-cover{padding:25px}.cycle-big{font-size:90px}.cycle-cover h2{font-size:29px}.welcome-main{gap:0;padding:55px 0}.welcome-copy h1{font-size:48px}.welcome-art{transform:scale(.76);transform-origin:center;width:400px;margin-left:-10px}.welcome-page{overflow:hidden}.welcome-details{gap:9px;font-size:10px}}@media(max-width:700px){.welcome-page{padding:22px 23px 0;min-height:100dvh}.welcome-header .brand{font-size:18px}.welcome-header .prototype-label{font-size:8px;padding:6px 8px;max-width:100px;text-align:center;line-height:1.5}.welcome-main{display:block;padding:45px 0 20px}.welcome-copy h1{font-size:49px;line-height:1.08;margin:23px 0;letter-spacing:-1.9px}.lead{font-size:14px;line-height:1.8;margin-bottom:26px}.welcome-copy>.primary{width:100%}.demo-link{margin:12px auto 0;font-size:12px}.welcome-details{justify-content:center;margin-top:24px}.welcome-art{height:330px;min-height:330px;width:100%;transform:none;margin:10px auto}.paper-card{width:250px;padding:22px 20px 16px}.paper-card h2{font-size:23px;margin:18px 0}.paper-top{font-size:6px}.paper-days span{font-size:7px}.paper-cells{gap:4px}.paper-cells span{font-size:13px;margin-bottom:5px}.paper-bottom{font-size:8px;padding-top:9px}.paper-bottom span{font-size:21px}.art-ring{width:280px;height:280px}.art-ring:before{inset:-15px}.little-note{right:0;bottom:10px;font-size:16px;padding:15px 20px}.little-note span{font-size:24px;margin-top:3px}.art-label{display:none}.welcome-footer{font-size:8px;gap:10px;line-height:1.6}.sidebar{display:none}.main-area{margin-left:0}.topbar{height:72px;padding:0 20px;background:var(--bg)}.topbar-caption{display:none}.mobile-brand{display:inline-flex;font-size:18px;gap:9px}.mobile-brand .brand-mark{height:35px;width:35px;font-size:25px;border-radius:10px}.mobile-brand .brand-caption{font-size:8px}.avatar{display:none}.prototype-chip{font-size:8px;padding:7px 8px}.content{padding:27px 18px 110px}.page-heading{margin-bottom:23px;gap:12px}.page-heading h1{font-size:42px;margin-top:7px;margin-bottom:10px}.page-heading .eyebrow{font-size:8px;letter-spacing:1.3px}.page-heading p{font-size:11px;max-width:270px}.add-goal-top{font-size:0;min-height:39px;width:39px;padding:0;border-radius:12px}.add-goal-top svg{width:19px}.week-toolbar{margin-bottom:16px}.week-switch{gap:6px}.week-switch>span{font-size:12px;min-width:132px}.week-switch .icon-button{width:30px;height:32px}.today-button{font-size:10px}.week-layout{gap:18px}.tracker-card{border-radius:15px}.card-top{padding:20px 16px}.card-top h2{font-size:13px}.goal-header{padding:17px 14px 6px}.goal-label strong{font-size:12px}.goal-label small{font-size:9px}.goal-number{width:29px;height:29px;font-size:9px}.goal-toggle{gap:10px}.goal-body{padding:0 16px 12px}.action-row{padding:13px 0}.action-title{font-size:12px;margin-bottom:11px}.day-grid{gap:6px}.day-cell{height:39px;border-radius:7px}.day-label{font-size:8px}.day-label b{font-size:10px}.day-column{gap:6px}.action-add{font-size:11px;min-height:35px}.add-row{font-size:11px;padding:15px 17px}.legend{gap:10px;padding:14px 16px;font-size:8px}.week-aside{grid-template-columns:1fr}.progress-card{padding:20px;display:grid;grid-template-columns:1fr auto;column-gap:15px}.card-kicker{grid-column:1}.card-kicker svg{display:none}.progress-number{grid-column:2;grid-row:1/4;margin:0;font-size:52px;align-self:center}.progress-card>p{grid-column:1;margin-top:11px}.progress-track{grid-column:1;margin:13px 0 3px}.progress-caption,.progress-flower{display:none}.note-card .card-top{padding:15px 18px 3px}.note-preview{min-height:100px;padding:10px 20px 20px;font-size:16px}.note-preview span{margin-top:12px}.content-footer{margin-top:25px;font-size:8px;line-height:1.6}.content-footer>span:last-child{display:none}.mobile-nav{position:fixed;display:flex;justify-content:space-around;bottom:0;left:0;right:0;padding:9px 15px max(10px,env(safe-area-inset-bottom));background:#faf9f6f5;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:30}.mobile-nav .nav-item{flex-direction:column;gap:5px;padding:7px 20px;min-height:53px;font-size:9px;border-radius:11px;min-width:86px;align-items:center;text-align:center}.mobile-nav .nav-item svg{width:19px;height:19px}.mobile-nav .nav-dot{display:none}.mobile-nav .nav-item.active{background:#eee8f5;font-weight:500}.demo-banner,.error-banner{padding:8px 18px;font-size:9px;gap:8px}.demo-banner button{font-size:9px}.goals-cards{gap:15px}.page-heading>.primary{font-size:10px;padding:10px 12px;min-height:40px;gap:7px;flex-shrink:0}.page-heading>.primary svg{width:14px}.goal-detail{padding:20px}.goal-detail h2{font-size:18px;margin-top:15px}.cycle-cover{padding:23px;gap:16px}.cycle-cover h2{font-size:27px}.cycle-cover p{font-size:11px}.cycle-big{font-size:75px;letter-spacing:-5px}.cycle-big span{max-width:80px;font-size:8px!important}.cycle-cover .eyebrow{font-size:8px}.section-heading{align-items:flex-start;flex-direction:column;gap:9px;margin-top:30px}.section-heading h2{font-size:16px}.section-heading>span{font-size:10px}.weeks-map{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.week-tile{padding:17px}.week-tile strong{font-size:30px}.future-tile strong{font-size:22px}.week-tile>div:first-child{font-size:8px;letter-spacing:.6px}dialog{width:100%;max-width:100%;max-height:92dvh;margin:auto 0 0;border-radius:24px 24px 0 0;padding:10px 23px max(27px,env(safe-area-inset-bottom));border-bottom:0}.sheet-handle{display:block;width:35px;height:4px;background:#dfdcd6;border-radius:4px;margin:0 auto 22px}.sheet-header{margin-bottom:18px}.sheet-header h2{font-size:27px}.field input,.field textarea,.field select{font-size:16px;padding:12px}.sheet-intro{font-size:12px}.step-label{font-size:8px}.day-picker{gap:6px}.day-picker span{height:43px}.days-field{margin-bottom:19px}.day-presets{gap:16px}.day-presets button{font-size:11px;min-height:32px}.form-hint{font-size:10px}.empty-state{padding:35px 22px}.empty-state h3{font-size:25px}.empty-state p{font-size:12px}#notification{bottom:95px;font-size:11px;padding:12px 16px}.about-info p{font-size:12px}.desktop-break{display:none}}@media(max-width:360px){.content,.goal-body{padding-left:12px;padding-right:12px}.day-grid{gap:4px}.day-cell{height:36px}.legend{gap:6px;font-size:7px}.welcome-copy h1{font-size:43px}.welcome-page{padding-left:20px;padding-right:20px}.mobile-nav .nav-item{padding-left:14px;padding-right:14px}.cycle-big{display:none}.page-heading>.primary{font-size:0;width:39px}.page-heading>.primary svg{width:18px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.react-error{background:#fbede5;color:#995b38;padding:14px;margin-bottom:20px;border-radius:12px}.connection{font-size:10px;color:var(--muted)}.react-dialog{position:fixed;inset:0;background:#26232e60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:60;padding:20px}.react-sheet{width:480px;max-width:100%;max-height:90dvh;overflow:auto;background:#fff;padding:28px;border-radius:22px}.react-sheet .field input{font-size:16px}.react-notice{font-size:11px;color:var(--muted);padding:15px 0}.week-tile:disabled{opacity:.7}.brand-mark{flex-shrink:0}@media(max-width:700px){.react-dialog{align-items:end;padding:0}.react-sheet{width:100%;border-radius:24px 24px 0 0;padding:24px}.topbar-right{gap:8px}.connection{font-size:8px}.action-title{padding-top:4px}}.action-edit{font-size:10px;min-height:28px;padding:0}.lifecycle-panel{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.lifecycle-panel p{font-size:12px;line-height:1.8;margin-bottom:15px;color:var(--muted)}
