.goals-page .feature-head{gap:20px}.goals-page h1 span{color:var(--sage)}.goal-limit{background:linear-gradient(110deg,#e5ece2,#f0eee4);border-radius:15px;align-items:center;gap:13px;margin-bottom:19px;padding:16px 18px;display:flex}.goal-limit>svg{color:#627662}.goal-limit>div:nth-child(2){flex:1}:is(.goal-limit b,.goal-limit span){display:block}.goal-limit b{font-size:14px}.goal-limit span{color:#81847c;margin-top:3px;font-size:12px}.limit-dots{gap:5px;display:flex}.limit-dots i{background:#d5d5ce;border-radius:5px;width:28px;height:6px}.limit-dots i.filled{background:#6b8069}.goals-page .goal-columns{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px;display:grid}.goals-page .goal-columns>section{border:1px solid var(--line);background:color-mix(in srgb, var(--card) 72%, var(--paper));border-radius:8px;min-height:0;padding:14px}.goals-page .column-title{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:1px 0 12px;display:flex}.goals-page .column-title>span{color:#6b7e69;background:#fff;border-radius:8px;place-items:center;width:27px;height:27px;display:grid}.goals-page .column-title svg{width:14px}.goals-page .column-title b{flex:1;font-size:13px}.goals-page .column-title small{color:#888;background:#fff;border-radius:12px;padding:2px 6px;font-size:10px}.goal-card-list{gap:10px;padding-top:10px;display:grid}.goals-page .goal-card{border:1px solid var(--line);box-shadow:none;background:#fff;border-radius:8px;margin:0;padding:13px}.goal-card-link{color:inherit;gap:8px;text-decoration:none;display:grid}.goals-page .goal-card-title{color:var(--ink);text-decoration:none;display:block}.goals-page .goal-card-title:hover b{color:var(--sage)}:is(.goals-page .goal-card-title b,.goal-card-static-title){min-width:0;font-size:13px;line-height:1.35;display:block}.goal-inline-text{min-width:0;color:inherit;font:inherit;text-align:left;cursor:text;background:0 0;border:0;padding:0}.goal-inline-description{resize:none;width:100%;min-height:36px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:11px;line-height:1.45}.goal-inline-description.goal-inline-text{color:var(--muted);display:block}.goal-inline-description:focus{outline:1px solid var(--sage);outline-offset:3px}.goal-progress{background:#eef0eb;border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.goal-progress span{border-radius:inherit;height:100%;display:block}.goals-page .goal-card-link>small{color:var(--muted);font-size:10px}.goals-page .goal-actions{gap:5px;margin-top:11px;display:flex}.goals-page .goal-actions button{border:1px solid var(--line);background:var(--card);min-height:34px;color:var(--ink);border-radius:6px;flex:1;padding:6px 8px;font-size:10px}.goals-page .goal-actions .icon-button{flex:0 0 34px;place-items:center;width:34px;padding:0;display:grid}.goals-page .goal-actions .icon-button svg{width:16px}.goals-focus-strip{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;font-size:11px;display:flex}.goals-focus-strip a{background:var(--sage-soft);color:var(--sage);border-radius:6px;padding:6px 9px;font-weight:700;text-decoration:none}.goal-create-modal{border:1px solid var(--line);background:var(--card);width:min(520px,100vw - 32px);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:28px;display:grid;position:relative}.goal-create-modal .modal-close{background:0 0;border:0;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:12px;right:12px}:is(.goal-create-modal input,.goal-create-modal textarea,.goal-create-modal select){border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);font:inherit;border-radius:6px;padding:11px 12px;font-size:13px}.goal-detail .feature-head{gap:20px}.goal-detail-title{width:100%;color:inherit;font:inherit;text-align:left;cursor:text;background:0 0;border:0;margin:0;padding:0;display:block}.goal-detail-title-input{border:0;border-bottom:1px solid var(--sage);width:100%;min-height:1.2em;color:inherit;font:inherit;font-size:inherit;line-height:inherit;background:0 0;border-radius:0;outline:0;margin:0;padding:0;display:block}.big-progress{text-align:center;background:#e7ede3;border-radius:16px;padding:14px 21px}:is(.big-progress strong,.big-progress span){display:block}.big-progress strong{font-size:24px}.big-progress span{color:#788276;font-size:11px}.goal-time-summary{color:var(--sage);align-items:center;gap:9px;margin:0 0 14px;display:inline-flex}.goal-time-summary svg{width:18px}:is(.goal-time-summary b,.goal-time-summary span){display:block}.goal-time-summary b{color:var(--ink);font-size:13px}.goal-time-summary span{color:var(--muted);font-size:10px}.detail-progress{background:#e6e4de;border-radius:8px;height:9px;margin:-11px 0 25px;overflow:hidden}.detail-progress i{background:#6d826b;height:100%;display:block}.goal-detail-tabs{border-bottom:1px solid var(--line);gap:6px;margin:18px 0;display:flex}.goal-detail-tabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 12px;font-size:12px}.goal-detail-tabs button.active{border-color:var(--sage);color:var(--ink);font-weight:700}.goal-detail-style{border-block:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 18px;padding:10px 0;display:flex}.goal-detail-style>b{font-size:12px}.goal-theme-colors{gap:7px;display:flex}.goal-theme-colors button{cursor:pointer;border:2px solid #0000;border-radius:50%;width:25px;height:25px;padding:0}.goal-theme-colors button.active{border-color:var(--ink);box-shadow:0 0 0 2px var(--card), 0 0 0 3px var(--ink)}.goal-icon-upload{color:var(--muted);cursor:pointer;align-items:center;gap:6px;margin-left:4px;font-size:11px;display:inline-flex}.goal-icon-upload svg{width:15px}.goal-icon-upload input{display:none}.goal-icon-remove{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:11px}.week-tabs{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:4px 0 14px;display:grid;overflow-x:auto}.week-tabs button{border:1px solid var(--line);white-space:normal;background:#fff;border-radius:10px;min-width:0;min-height:88px;padding:8px;font-size:14px;overflow:hidden}.week-tabs button small{color:#999;font-size:9px;display:block}.week-tabs button.active{color:#fff;background:#637762}.week-tabs button.active small{color:#dce4d9}.week-tabs button.phase-menstrual{background:#f7e9ec;border-color:#d8b2bc}.week-tabs button.phase-follicular{background:#e7f4ec;border-color:#a9d2bc}.week-tabs button.phase-ovulatory{background:#fff3d8;border-color:#e6c273}.week-tabs button.phase-luteal{background:#f1eaf7;border-color:#c6b1d8}.week-tabs button.phase-premenstrual{background:#f7eee7;border-color:#d7b49c}:is(.week-tabs button.phase-menstrual.active,.week-tabs button.phase-follicular.active,.week-tabs button.phase-ovulatory.active,.week-tabs button.phase-luteal.active,.week-tabs button.phase-premenstrual.active){background:var(--sage);color:#fff}.week-tabs button .week-date{color:var(--muted);white-space:nowrap;margin-top:3px;font-size:8px;display:block}.week-tabs button .week-phase-label{color:inherit;overflow-wrap:anywhere;margin-top:4px;font-size:8px;line-height:1.15;display:block}.task-layout{grid-template-columns:1.4fr .6fr;gap:16px;display:grid}.goal-task{border-top:1px solid var(--line);align-items:flex-start;gap:11px;padding:14px 2px;display:flex}.goal-task:first-of-type{margin-top:15px}.goal-task>div{flex:1;min-width:0}.goal-task.done{opacity:.52;transition:opacity .2s}.goal-task .action-open{color:#557556;margin:0 0 6px;font-size:16px;font-weight:700;line-height:1.4;text-decoration:none;display:block}.goal-task .action-open:hover{color:#405f42}.goal-task .task-meta{color:#7e857c;margin-top:7px;font-size:12px;line-height:1.45;display:block}.task-view-tabs{border-bottom:1px solid var(--line);gap:4px;margin:15px 0 0;display:flex}.task-view-tabs button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:7px 9px;font-size:11px}.task-view-tabs button.active{border-color:var(--sage);color:var(--ink);font-weight:700}.week-kanban{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:9px;padding:15px 0 4px;display:grid}.week-kanban-column{border:1px solid var(--line);background:#f7f8f5;border-radius:9px;min-height:205px;padding:9px}.week-kanban-column>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:6px;padding-bottom:8px;display:flex}.week-kanban-header-actions{align-items:center;gap:5px;display:flex}.week-kanban-add{border:1px solid var(--line);width:23px;height:23px;color:var(--sage);cursor:pointer;background:#fff;border-radius:5px;place-items:center;padding:0;display:grid}.week-kanban-add svg{width:14px}:is(.week-kanban-column header b,.week-kanban-column header small){display:block}.week-kanban-column header b{font-size:12px}.week-kanban-column header small{color:var(--muted);margin-top:2px;font-size:10px}.week-kanban-column header span{min-width:18px;color:var(--sage);text-align:center;background:#e4e9e0;border-radius:999px;padding:2px 5px;font-size:10px}.week-kanban-cards{gap:7px;padding-top:9px;display:grid}.week-kanban-card{cursor:grab;background:#fff;border:1px solid #dfe4da;border-radius:7px;gap:7px;padding:9px;display:grid;box-shadow:0 1px 2px #2a3a280f}.week-kanban-card:active{cursor:grabbing}.week-kanban-card.done{opacity:.55}.week-kanban-card a{color:#557556;overflow-wrap:anywhere;font-size:11px;font-weight:700;line-height:1.35;text-decoration:none}.week-kanban-card select{border:1px solid var(--line);width:100%;color:var(--muted);font:inherit;background:#fff;border-radius:5px;padding:5px 6px;font-size:10px}.week-kanban-time{border:1px solid var(--line);width:100%;color:var(--muted);font:inherit;background:#fff;border-radius:5px;padding:5px 6px;font-size:10px}.week-kanban-add-form{background:#fff;border:1px dashed #bcc9b9;border-radius:7px;gap:6px;padding:8px;display:grid}.week-kanban-add-form input{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);font:inherit;background:#fff;border-radius:5px;padding:6px;font-size:10px}.week-kanban-add-form>div{gap:5px;display:flex}.week-kanban-add-form button{background:var(--sage);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:5px;padding:5px 6px;font-size:10px}.week-kanban-add-form button[type=button]{color:var(--muted);background:#e7e9e4}.week-kanban-empty{color:var(--muted);margin:4px 0;font-size:10px;line-height:1.4}.task-list-panel{overflow-x:auto}.goal-task p{color:#82857d;overflow-wrap:anywhere;margin:4px 0 0;font-size:12px;line-height:1.45}:is(.task-check,.delete-icon){background:0 0;border:0}.task-check{color:#6b8069}.task-check svg{width:21px}.delete-icon{color:#aaa;flex:none;margin-top:2px}.delete-icon svg{width:16px}.quick-task label{margin-top:15px;font-size:12px;font-weight:700;display:block}:is(.quick-task input,.quick-task select,.quick-task textarea){border:1px solid var(--line);width:100%;font:inherit;border-radius:9px;margin-top:6px;padding:11px;font-size:13px}.goal-obstacles{gap:12px;margin-top:16px;display:grid}.goal-obstacles label{color:var(--muted);gap:6px;font-size:11px;display:grid}.goal-obstacles textarea{border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);font:inherit;border-radius:7px;padding:9px}.linked-visions{margin-bottom:18px}.vision-link-empty{text-align:center;justify-items:center;gap:14px;min-height:210px;padding:70px 20px 28px;display:grid}.vision-link-controls{flex-wrap:wrap;justify-content:center;gap:10px;width:min(520px,100%);display:flex}.vision-link-controls select{border:1px solid var(--line);background:var(--card);min-width:240px;color:var(--ink);font:inherit;border-radius:8px;flex:240px;padding:11px 12px;font-size:13px}:is(.vision-link-controls .auth-submit,.vision-link-empty>.auth-submit){background:var(--sage);color:#fff;min-height:42px;font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;margin:0;padding:0 18px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.vision-link-controls .auth-submit:disabled{opacity:.6;cursor:wait}.linked-vision-tabs{margin:12px 0;overflow-x:auto}.linked-vision-list{gap:8px;display:grid}.linked-vision-list.linked-vision-gallery{grid-template-columns:repeat(var(--vision-columns,4), minmax(0, 1fr))}.linked-vision-item{background:var(--surface-soft,#f4f6f1);min-width:0;color:var(--ink);border-radius:8px;flex-direction:column;gap:3px;padding:10px 12px;text-decoration:none;display:flex;overflow:hidden}.linked-vision-item:hover b{text-decoration:underline}.linked-vision-item small{color:var(--muted);font-size:11px}.linked-vision-list.linked-vision-gallery .linked-vision-item{min-height:190px}:is(.linked-vision-list.linked-vision-gallery img,.linked-vision-image-empty){aspect-ratio:4/3;object-fit:cover;border-radius:5px;width:100%;height:auto}.linked-vision-image-empty{background:var(--sage-soft);color:var(--sage);place-items:center;display:grid}.linked-vision-image-empty svg{width:22px}.linked-vision-table{border-top:1px solid var(--line);overflow-x:auto}:is(.linked-vision-table-head,.linked-vision-table-row){border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,1fr) 150px 220px;align-items:center;gap:12px;min-width:620px;padding:10px 12px;display:grid}.linked-vision-table-head{color:var(--muted);font-size:10px;font-weight:700}.linked-vision-table-row a{color:var(--ink);font-size:13px;font-weight:700;text-decoration:none}.linked-vision-table-row a:hover{color:var(--sage)}.linked-vision-table-row select{border:1px solid var(--line);background:var(--card);width:100%;min-width:0;color:var(--ink);font:inherit;border-radius:5px;padding:6px 8px;font-size:11px}@media (max-width:900px){.task-layout{grid-template-columns:1fr}}@media (max-width:820px){.week-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:700px){.goals-page .goal-columns{grid-template-columns:1fr;gap:12px}:is(.goal-inline-description,.goal-inline-description.goal-inline-text){min-height:0}.goal-detail-style{align-items:flex-start}}@media (max-width:640px){.goal-detail-tabs{overflow-x:auto}.linked-vision-list.linked-vision-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.goal-create-modal{padding:22px 18px}}@media (max-width:520px){.week-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.auth-screen{background:var(--paper);grid-template-columns:1.05fr .95fr;height:100svh;min-height:100svh;font-family:Manrope,system-ui,sans-serif;display:grid;overflow:hidden}.auth-story{background:var(--sage);color:#fff;flex-direction:column;justify-content:space-between;gap:clamp(18px,3vh,36px);padding:clamp(24px,4vw,48px) max(28px,7vw);display:flex}.auth-story .brand{color:#fff;margin:0}.auth-story .brand-mark{color:var(--sage);background:#fff}.auth-story h1{letter-spacing:0;margin:clamp(14px,2.4vh,24px) 0 clamp(12px,2vh,18px);font-family:inherit;font-size:clamp(34px,4vw,48px);font-weight:700;line-height:1.15}:is(.auth-story p,.auth-story blockquote){opacity:.78;font-family:inherit;line-height:1.7}.auth-story blockquote{border-left:2px solid #ffffff4d;margin:0;padding-left:17px;font-size:13px}.auth-form-wrap{place-items:center;padding:clamp(18px,3vw,35px);display:grid}.auth-form{width:min(410px,100%)}.auth-form h2{letter-spacing:0;margin:8px 0;font-family:inherit;font-size:32px;font-weight:700;line-height:1.08}.auth-form>p:not(.eyebrow){color:var(--muted);margin-bottom:22px;font-size:13px}.auth-invite-note{color:#6e6a5d;background:#f4efe3;border:1px solid #e3dccd;border-radius:999px;width:fit-content;margin:-12px 0 14px;padding:8px 12px;font-size:12px}.auth-form label{margin-top:12px;font-size:11px;font-weight:700;display:block}:is(.auth-form input,.auth-form select){border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;outline:none;margin-top:7px;padding:11px 13px;font-size:12px;display:block}:is(.auth-form input:focus,.auth-form select:focus){border-color:var(--sage);box-shadow:0 0 0 3px #6a7e671a}.password{position:relative}.password input{padding-right:45px}.password button{width:34px;height:34px;color:var(--muted);background:0 0;border:0;position:absolute;top:9px;right:7px}.auth-submit{background:var(--sage);color:#fff;width:100%;height:44px;font:inherit;border:0;border-radius:8px;justify-content:center;align-items:center;gap:9px;margin-top:18px;font-size:12px;font-weight:700;display:flex}.auth-error{color:#a75144;background:#fce8e3;border-radius:8px;margin-top:13px;padding:10px 12px;font-size:10px}.auth-switch{color:var(--muted);text-align:center;margin-top:14px;font-size:12px}:is(.auth-switch a,.public-login){color:var(--sage);font-weight:700;text-decoration:none}.motivation-banner{border:1px solid var(--line);background:var(--card);border-radius:8px;display:flex;overflow:hidden}.motivation-banner>img{object-fit:cover;width:220px}.motivation-banner>div{flex:1;padding:20px;position:relative}.motivation-banner>div>span{color:var(--sage)}:is(.motivation-banner blockquote,.motivation-banner p){margin:5px 0;font-family:Playfair Display,serif;line-height:1.5}.motivation-banner cite{color:var(--muted);font-size:12px}.motivation-banner .author-photo{object-fit:cover;border-radius:50%;width:48px;height:48px;position:absolute;top:12px;right:12px}.blog-hero{text-align:center;max-width:780px;margin:60px auto 42px}.blog-hero h1{font-family:Playfair Display,serif;font-size:46px}.blog-hero>p:last-child{color:var(--muted);font-size:16px;line-height:1.6}.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;max-width:1100px;margin:auto;display:grid}.blog-card{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;text-decoration:none;transition:transform .2s;overflow:hidden}.blog-card:hover{transform:translateY(-3px)}.blog-card img{object-fit:cover;width:100%;height:175px;display:block}.blog-card>div{padding:19px}:is(.blog-card time,.blog-card p){color:var(--muted);font-size:13px}.blog-card h2{margin:10px 0 7px;font-family:Playfair Display,serif;font-size:21px}.blog-card span{color:var(--sage);font-size:12px;font-weight:700}.blog-empty{color:var(--muted);text-align:center;grid-column:1/-1;padding:50px}.post-page{max-width:780px;margin:auto;padding:40px 20px 80px}.post-page article{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:clamp(24px,6vw,60px)}.post-page h1{margin:14px 0;font-family:Playfair Display,serif;font-size:46px;line-height:1.2}.post-excerpt{color:var(--muted);font-size:18px;line-height:1.6}.post-cover{object-fit:cover;border-radius:8px;width:100%;max-height:440px;margin:26px 0;display:block}.post-body p{font-size:17px;line-height:1.8}@media (max-width:900px){.auth-screen{grid-template-columns:1fr}.auth-story{display:none}}@media (max-width:700px){.blog-grid{grid-template-columns:1fr}:is(.blog-hero h1,.post-page h1){font-size:36px}}@media (max-width:600px){.motivation-banner>img{display:none}.motivation-banner>div{padding:19px}}
