:root{--coral:#ff765f;--coral-dark:#f45b48;--blush:#fff6f4;--blush-2:#fff1ee;--card-bg:#fff;--ink:#242424;--muted:#777;--line:#eee2df;--white:#fff;--shadow:0 5px 18px rgba(63,35,28,.06);--font-heading:"Montserrat",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--font-body:"Roboto",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
@view-transition{navigation:auto}
html{scrollbar-gutter:stable}
.site-header{view-transition-name:site-header}
body.app-view #app > #account.account-bar{view-transition-name:account-navigation}
::view-transition-old(site-header),::view-transition-new(site-header),::view-transition-old(account-navigation),::view-transition-new(account-navigation){animation-duration:.16s}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#F8F6F0;color:var(--ink);font-family:var(--font-body);font-size:15px}html.internal-route:not(.internal-ready) body>:not(#internalLoader){visibility:hidden}html.internal-ready #internalLoader{display:none}
header{height:64px;padding:0 max(28px,calc((100% - 1200px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee;background:#fff;position:sticky;top:0;z-index:20}.brand{font-size:19px;font-weight:750;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:9px}.brand:before{content:"✣";display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#ff3e22,#ff735d);color:#fff;font-size:19px;box-shadow:0 4px 12px #ff765f44}.brand span{font-size:9px;text-transform:uppercase;background:#ffe8e3;color:var(--coral-dark);border-radius:10px;padding:3px 7px}
h1,h2,h3,.brand,.eyebrow,small,button,.primary,.save,.quarter-tab,.week-tab,.progress-card strong,.progress-card b,.progress-story strong{font-family:var(--font-heading)}
main{max-width:1200px;margin:auto;padding:40px 28px 90px}.hidden{display:none!important}.account{display:flex;align-items:center;gap:10px;font-size:13px}.account a,.import-link,.ghost{border:1px solid #e7deda;background:#fff;color:#333;text-decoration:none;border-radius:12px;padding:9px 13px;cursor:pointer;margin:0;font:inherit}.import-link input{display:none}.account a:hover,.import-link:hover,.ghost:hover{border-color:#ffb8ab;background:#fff9f7}
.public-nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.public-nav a{font:700 13px/1 var(--font-heading);color:#706762;text-decoration:none}.public-nav a:hover{color:var(--coral-dark)}
.legal-footer{max-width:1200px;margin:0 auto 34px;padding:18px 28px 0;border-top:1px solid #e8ded8;color:#7d736e;font-size:13px;line-height:1.55}.legal-footer p{margin:6px 0}.legal-footer a{color:var(--coral-dark);font-weight:700;text-decoration:none}.legal-footer a:hover{text-decoration:underline}
.auth{min-height:calc(100vh - 145px);display:grid;grid-template-columns:1.15fr .7fr;gap:80px;align-items:center}.auth h1,.hero h1{font-size:54px;line-height:1.08;margin:11px 0 20px;letter-spacing:-2px}.lead{font-size:18px;line-height:1.6;color:var(--muted);max-width:620px}.eyebrow,small{font-size:11px;letter-spacing:1.7px;color:var(--coral-dark);font-weight:750}.card,.panel,.week{background:var(--card-bg);border:1px solid var(--line);border-radius:16px;padding:25px;box-shadow:var(--shadow)}.card h2{font-size:27px;margin:0 0 22px}label{display:block;color:#666;font-size:13px;margin:15px 0}input,textarea,select{width:100%;border:1px solid #e6ddda;background:#fff;padding:12px 14px;border-radius:10px;color:var(--ink);font:inherit;margin-top:7px;outline:none;transition:.15s}input:focus,textarea:focus,select:focus{border-color:#ff9b89;box-shadow:0 0 0 3px #ff765f18}textarea{min-height:110px;resize:vertical;line-height:1.55}.primary,.save{border:0;background:linear-gradient(135deg,#ff8b75,#ff6e57);color:#fff;padding:11px 17px;border-radius:11px;font-weight:700;cursor:pointer;box-shadow:0 5px 12px #ff765f2b}.primary:hover,.save:hover{background:var(--coral-dark);transform:translateY(-1px)}.card .primary{width:100%}.link{border:0;background:none;color:var(--coral-dark);cursor:pointer;width:100%;padding:10px}.error{min-height:18px;color:#b32b20;font-size:13px}
.hero{display:flex;justify-content:space-between;align-items:end;margin:8px 0 30px}.hero h1{font-size:36px;letter-spacing:-1px;margin-bottom:8px}.hero p{color:var(--muted);margin:0}.hero select,.month-head select{width:auto;min-width:130px;background:#fff}.hero-tools{display:flex;align-items:flex-end;gap:12px}.today-badge{min-width:190px;padding:9px 13px;border:1px solid #eee1dc;border-radius:14px;background:rgba(255,255,255,.72);box-shadow:0 8px 22px rgba(61,38,31,.045);text-align:left}.today-badge span{display:block;color:#9a8f8a;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.today-badge strong{display:block;margin-top:3px;color:#342f2c;font-size:15px;font-weight:500;line-height:1.2;text-transform:capitalize}.today-badge small{display:block;margin-top:4px;color:#8e817b;font-size:11px;line-height:1.25}
.grid.top{display:block}.annual{min-height:205px}.quote{display:none}.panel-title{display:flex;justify-content:space-between}.panel h2,.section-title h2,.month-head h2{font-size:25px;margin:7px 0 11px}.annual textarea{min-height:82px;border:0;background:transparent;padding-left:28px;background-image:radial-gradient(circle,#d9d0cd 7px,transparent 8px);background-size:20px 32px;background-position:0 10px;background-repeat:repeat-y}.dot{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#ff3e22,#ff765f);position:relative}.dot:after{content:"◎";color:#fff;position:absolute;inset:0;display:grid;place-items:center;font-size:19px}.save{float:right;margin-top:12px}.section-title{margin:72px 0 22px;padding-left:51px;position:relative}.section-title:before{content:"▱";position:absolute;left:0;top:0;width:39px;height:39px;display:grid;place-items:center;border-radius:11px;background:var(--blush-2);color:var(--coral);font-size:22px}.section-title h2{margin-bottom:0}.quarters{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.quarter{min-height:157px}.quarter h3{font-size:14px;margin:9px 0 3px}.quarter textarea{min-height:62px;border:0;background:transparent;padding-left:27px;background-image:radial-gradient(circle,#ddd3d0 7px,transparent 8px);background-size:20px 31px;background-position:0 10px;background-repeat:repeat-y}
.month-head{display:flex;justify-content:space-between;align-items:end;margin:72px 0 20px}.calendar{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.calendar div,.calendar button{min-height:76px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:11px;text-align:left}.calendar .weekday{min-height:38px;background:var(--blush);font-size:11px;font-weight:700;color:#8a7772;text-align:center}.calendar button{cursor:pointer;font-size:15px;font-weight:400}.calendar button:hover{background:#fff5f2;color:var(--coral-dark)}.calendar .empty{background:#fcfaf9}.calendar .has-entry{background:#fff0ec;color:var(--coral-dark);font-weight:500;position:relative}.calendar .has-entry:after{content:"";position:absolute;bottom:10px;left:11px;width:6px;height:6px;background:var(--coral);border-radius:50%}.weeks{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.week{border-radius:3px;padding:28px;box-shadow:0 6px 20px rgba(40,30,25,.05)}.week h3{font:24px Georgia,serif;margin:8px 0 14px}.week textarea{border-radius:2px}.week .row{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.week .row label{display:flex;align-items:center;gap:8px}.week input[type=checkbox]{width:15px;height:15px;margin:0;accent-color:var(--coral)}.week textarea.reflection{min-height:76px}.week .save{background:#23211d;border-radius:4px}
.modal{position:fixed;inset:0;background:#1c1b187f;display:grid;place-items:center;padding:20px;z-index:30}.modal-card{position:relative;background:var(--card-bg);padding:32px;width:min(560px,100%);border-radius:16px;box-shadow:0 20px 60px #2618133d}.modal-card h2{margin:8px 0 14px}.modal-card textarea{min-height:210px}.close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px;cursor:pointer}.toast{position:fixed;right:25px;bottom:25px;background:#23211d;color:#fff;padding:12px 18px;border-radius:10px;z-index:40}
@media(max-width:800px){header{height:auto;min-height:62px;padding:10px 16px;align-items:flex-start;gap:10px}.public-nav{gap:9px}.public-nav a{font-size:12px}.account{gap:5px}.account #userName,.account a{display:none}.account .import-link,.account .ghost{padding:8px}.auth{grid-template-columns:1fr;gap:28px}.auth h1{font-size:39px}.hero{align-items:start}.hero h1{font-size:30px}.hero-tools{align-items:stretch;flex-direction:column;width:100%}.today-badge{min-width:0}.hero-tools select{width:100%}.quarters,.weeks{grid-template-columns:1fr}main{padding:28px 16px 70px}.calendar div,.calendar button{min-height:52px;padding:7px}.section-title,.month-head{margin-top:50px}}

/* Goal editor and checklist layout */
.panel,.week{display:flex;flex-direction:column;align-items:stretch;min-width:0}.annual,.quarter{min-height:0}.annual textarea,.quarter textarea{background:#fff;min-height:112px;padding:12px 14px;border:1px solid #e6ddda}.quarter textarea{min-height:130px}.panel .save,.week .save{float:none;align-self:flex-end;margin-top:16px}.checklist{display:grid;gap:2px;margin:12px 0 2px}.checklist:empty{display:none}.goal-item{display:flex;align-items:flex-start;gap:10px;margin:0;padding:8px 9px;border-radius:8px;color:#333;font-size:14px;line-height:1.4;cursor:pointer;transition:.15s}.goal-item:hover{background:#fff}.goal-item input{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;accent-color:var(--coral)}.goal-item span{min-width:0;overflow-wrap:anywhere}.goal-item.done span{text-decoration:line-through;color:#aaa}.week textarea{min-height:115px}.week textarea.reflection{margin-top:12px}.week .row label{margin:0}.quarters{align-items:start}
@media(max-width:800px){.account{flex-wrap:wrap;justify-content:flex-end}.brand span{display:none}.panel,.week{padding:20px}.quarter textarea{min-height:110px}}

/* Unified inline goal rows */
.legacy-goal-field,.checklist{display:none!important}.goal-editor{display:grid;gap:4px;margin:12px 0;min-width:0}.goal-row{display:grid;grid-template-columns:21px minmax(0,1fr);align-items:center;gap:10px;margin:0;padding:7px 10px;border:1px solid transparent;border-radius:10px;color:var(--ink);transition:.15s}.goal-row:hover,.goal-row:focus-within{background:#fff;border-color:#eadfdb}.goal-row .goal-check{width:18px;height:18px;margin:0;padding:0;accent-color:var(--coral);box-shadow:none}.goal-row .goal-check:disabled{opacity:.35;cursor:default}.goal-row .goal-text{width:100%;height:auto;margin:0;padding:3px 0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:14px;line-height:1.45}.goal-row .goal-text:focus{border:0;box-shadow:none}.goal-row.done .goal-text{text-decoration:line-through;color:#aaa}.goal-row:last-child{margin-top:3px;background:rgba(255,255,255,.45);border-color:#eadfdb}.goal-row:last-child .goal-text::placeholder{color:#aaa}.quarter .goal-editor{flex:1}.week .goal-editor{margin-bottom:14px}.week .reflection{border-radius:10px}.annual{padding-bottom:24px}
.week .goal-row textarea.goal-text{min-height:21px;resize:none;overflow:hidden;white-space:pre-wrap}.week .reflection{min-height:96px;resize:none;overflow:hidden}.week-thoughts-label{margin:12px 0 0;font-size:13px;font-weight:700;color:#4e4845}.week-thoughts-label+.reflection{margin-top:7px}

/* Refined reference-inspired visual rhythm */
.panel,.week{padding:22px 24px;border-color:#eee5e2;box-shadow:0 4px 16px rgba(61,38,31,.045)}.quarters,.weeks{gap:14px}.goal-editor{gap:1px;margin:9px 0}.goal-row{grid-template-columns:18px minmax(0,1fr);gap:9px;padding:5px 7px;border:0;border-radius:8px;min-height:32px}.goal-row:hover{background:rgba(255,118,95,.045)}.goal-row:focus-within{background:#fff;box-shadow:0 0 0 2px rgba(255,118,95,.12)}.goal-row:last-child{margin-top:4px;background:transparent;border:1px dashed #eaded9}.goal-row:last-child:hover,.goal-row:last-child:focus-within{background:rgba(255,255,255,.62);border-color:#e2c9c2}.goal-row .goal-text{font-size:14px;line-height:1.42;color:#37322f;letter-spacing:.002em}.goal-row.done .goal-text{color:#aaa;text-decoration-color:#c6b7b2}.goal-row .goal-check,.week .row input[type=checkbox]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;margin:0;border:1.5px solid #cfc5c1;border-radius:50%;background:#fff;display:grid;place-items:center;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.goal-row .goal-check:hover,.week .row input[type=checkbox]:hover{border-color:var(--coral);transform:scale(1.06)}.goal-row .goal-check:checked,.week .row input[type=checkbox]:checked{border-color:var(--coral);background:var(--coral)}.goal-row .goal-check:checked:after,.week .row input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:12px;font-weight:800;line-height:1}.goal-row .goal-check:focus-visible,.week .row input[type=checkbox]:focus-visible{outline:3px solid rgba(255,118,95,.2);outline-offset:2px}.goal-row .goal-check:disabled{cursor:default;border-color:#ddd4d0;background:#faf7f5;opacity:.7}.week h3{margin-bottom:10px}.week .goal-editor{margin-bottom:10px}.week-thoughts-label{margin-top:10px;color:#514a46;letter-spacing:.01em}.week .reflection{background:#fffdfc;border-color:#e8dfdc;line-height:1.5;padding:10px 12px}.week .reflection:hover{border-color:#dfd1cc}.week .reflection:focus{border-color:#ef9b8b;box-shadow:0 0 0 3px rgba(255,118,95,.1)}.week .row{margin-top:10px}.section-title{margin-top:62px}.quarter h3{margin-bottom:6px}
@media(max-width:800px){.panel,.week{padding:18px}.goal-row{padding:5px 3px}.goal-editor{margin:7px 0}.quarters,.weeks{gap:11px}}
.goal-row .goal-check,.week .row input[type=checkbox]{min-height:18px}

/* Desktop calendar + weekly planning split */
.planning-layout{display:grid;grid-template-columns:minmax(360px,.88fr) minmax(440px,1.12fr);gap:24px;align-items:start;margin-top:64px}.planning-layout .month-head{margin:0 0 18px}.weeks-column>.section-title{margin:0 0 18px;padding-left:48px}.weeks-column .weeks{grid-template-columns:1fr;gap:12px}.calendar-column{position:sticky;top:88px;min-width:0}.weeks-column{min-width:0}.weeks-column .week{padding:19px 21px}.planning-layout .calendar div,.planning-layout .calendar button{min-height:62px}.planning-layout .calendar .weekday{min-height:36px}.weeks-column .week h3{font-size:21px}.weeks-column .section-title h2{font-size:24px}
@media(max-width:950px){.planning-layout{grid-template-columns:1fr;gap:48px;margin-top:52px}.calendar-column{position:static}.weeks-column>.section-title{margin-top:0}.planning-layout .calendar div,.planning-layout .calendar button{min-height:60px}}

/* Interaction and section-label corrections */
.goal-row:focus-within{background:transparent;box-shadow:none}.goal-row:hover:focus-within{background:rgba(255,118,95,.035)}.goal-row:last-child:focus-within{background:rgba(255,255,255,.35);border-color:#e2d8d4;box-shadow:none}.annual .panel-title small,.section-title>small,.month-head small{display:none}.section-title{padding-left:51px}.month-head h2{margin-top:0}
.week .row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px}.week .row>label{display:flex;align-items:center;gap:9px;flex:1;min-width:0;margin:0;color:#6a625e;line-height:1.3}.week .row input[type=checkbox]{box-sizing:border-box;flex:0 0 18px;width:18px;height:18px;min-width:18px;min-height:18px;padding:0;margin:0;border-radius:50%;box-shadow:none}.week .row .save{float:none;flex:0 0 auto;align-self:center;margin:0;white-space:nowrap}
@media(max-width:560px){.week .row{align-items:stretch;flex-direction:column;gap:12px}.week .row .save{align-self:flex-end}.section-title{padding-left:48px}}

/* Quarter focus and Telegram actions */
.quarters{display:block}.quarter-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.quarter-tab{border:1px solid #eadfdb;background:#fff;border-radius:11px;padding:10px 12px;color:#675f5b;font:600 13px/1.2 inherit;cursor:pointer;text-align:left;transition:.15s}.quarter-tab span{display:block;margin-top:4px;color:#aaa;font-size:10px;font-weight:500;text-transform:lowercase}.quarter-tab:hover{border-color:#efb5aa;background:#fffaf8}.quarter-tab.active{border-color:var(--coral);background:var(--blush-2);color:var(--coral-dark);box-shadow:0 0 0 2px rgba(255,118,95,.08)}.active-quarter{width:100%;min-height:0}.active-quarter h3{font-size:16px;margin:0 0 9px}.telegram-action{border:1px solid #dcd2cf;background:#fff;color:#3f3936;padding:10px 14px;border-radius:10px;font:700 13px/1 inherit;cursor:pointer;white-space:nowrap;transition:.15s}.telegram-action:hover{border-color:#83b9dc;background:#f6fbff;color:#1875ad}.telegram-action:before{content:"↗";margin-right:6px;color:#229ed9}.day-actions{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:10px;margin-top:12px}.day-actions .save,.day-actions .telegram-action{width:100%;margin:0}.week-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.week .row .week-actions .save{margin:0}.week .row .week-actions .telegram-action{margin:0}
@media(max-width:700px){.quarter-tabs{grid-template-columns:repeat(2,1fr)}.week-actions{width:100%;justify-content:flex-end}.day-actions{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:6px}.day-actions .save,.day-actions .telegram-action{padding:10px 8px;font-size:12px;white-space:normal;text-align:center}}

/* Collapsible week selector */
.weeks-column .weeks{display:block}.week-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:12px}.week-tab{display:flex;align-items:center;gap:7px;min-width:0;border:1px solid #eadfdb;background:#fff;border-radius:10px;padding:8px;color:#6a625e;cursor:pointer;text-align:left;transition:.15s}.week-tab strong{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#f6f1ef;color:#8b7e78;font-size:12px}.week-tab span{min-width:0;color:#9a8f8a;font-size:10px;line-height:1.2}.week-tab:hover{border-color:#efb5aa;background:#fffaf8}.week-tab.active{border-color:var(--coral);background:var(--blush-2)}.week-tab.active strong{background:var(--coral);color:#fff}.week-tab.active span{color:#6d5650}.active-week{width:100%}
@media(max-width:560px){.week-tabs{grid-template-columns:repeat(2,1fr)}.week-tab{padding:7px}}

/* Profile settings, progress, and report preview */
.progress-strip{margin:0 0 28px}.progress-panel{padding:18px 20px}.progress-panel .panel-title h2{font-size:20px;margin-bottom:8px}.progress-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:6px}.progress-card{display:grid;grid-template-columns:78px minmax(0,1fr) 40px;align-items:center;gap:10px}.progress-card strong{display:block;font-size:13px;color:#3d3734}.progress-card span{display:block;margin-top:2px;color:#9a8f8a;font-size:11px}.progress-card b{font-size:13px;color:#8f6b61;text-align:right}.progress-bar{height:7px;border-radius:20px;background:#f0e8e5;overflow:hidden}.progress-bar i{display:block;height:100%;border-radius:inherit;background:#d99283;transition:width .25s}.progress-card:nth-child(2) .progress-bar i{background:#a8b7a0}.progress-card:nth-child(3) .progress-bar i{background:#9fb3c8}.app-footer{margin:72px 0 0;padding:20px 0 0;border-top:1px solid #ebe4de}.footer-settings{border:0;background:transparent;color:#6d625d;padding:8px 0;font:700 13px/1 inherit;cursor:pointer}.footer-settings:hover{color:var(--coral-dark)}.settings-panel{margin-top:12px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.settings-grid label{margin:9px 0}.telegram-help{margin:12px 0 2px;padding:12px 14px;border-radius:12px;background:#faf7f2;border:1px solid #eee4dc;color:#5f5651}.telegram-help h3{margin:0 0 8px;font-size:14px;font-weight:600;color:#3d3734}.telegram-help ol{margin:0;padding-left:18px}.telegram-help li{margin:5px 0;font-size:12px;line-height:1.45}.telegram-help p{margin:9px 0 0;color:#938883;font-size:12px;line-height:1.45}.settings-note,.autosave-hint{margin:4px 0 0;color:#9a8f8a;font-size:12px}.modal{padding:14px}.modal-card{width:min(520px,100%);max-height:calc(100vh - 28px);overflow:auto;padding:22px 24px}.modal-card h2{font-size:22px;margin:4px 0 8px}.modal-card label{margin:8px 0;color:#4f4742;font-weight:700}.modal-card label textarea{min-height:86px;padding:9px 11px;line-height:1.42;font-size:14px;font-weight:400}.modal-card .telegram-action{margin-top:8px}.autosave-hint{margin-top:6px}.preview-card textarea{min-height:320px;white-space:pre-wrap}.preview-actions{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:10px;margin-top:12px}.preview-card .primary,.preview-card .save{width:100%;margin:0;white-space:normal}
.daily-focus-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:-8px 0 24px}.daily-focus-panel article{display:block;min-width:0;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:var(--card-bg);box-shadow:var(--shadow)}.daily-focus-panel article:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px}.daily-focus-panel small{display:block;margin:0 0 8px;color:#9a8f8a;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:1.5px}.daily-focus-panel article:first-child small{grid-column:1/-1}.daily-focus-panel strong{display:block;min-width:0;color:#342f2c;font-size:16px;font-weight:500;line-height:1.45}.daily-focus-panel article:first-child strong{grid-column:1;grid-row:2}.daily-focus-panel ol{margin:0;padding-left:20px;color:#342f2c;font-size:15px;line-height:1.45}.daily-focus-panel li{margin:4px 0}.daily-focus-panel button{margin-top:13px;padding:9px 13px;border:1px solid #e7deda;border-radius:12px;background:#fff;color:#333;font:inherit;cursor:pointer;white-space:nowrap}.daily-focus-panel article:first-child button{grid-column:2;grid-row:2;margin-top:0}.daily-focus-panel button:hover{border-color:#ffb8ab;background:#fff9f7;color:var(--coral-dark)}
.collapse-toggle{border:1px solid #e7deda;background:#fff;color:#6d625d;border-radius:12px;padding:8px 12px;font:700 12px/1 var(--font-heading);cursor:pointer;white-space:nowrap}.collapse-toggle:hover{border-color:#ffb8ab;background:#fff9f7;color:var(--coral-dark)}.section-title .collapse-toggle{position:absolute;right:0;top:5px}.collapsed-section .annual textarea,.collapsed-section .annual .goal-editor,.collapsed-section .annual .save,.quarters.collapsed-section{display:none!important}.grid.top.collapsed-section{margin-bottom:4px}.grid.top.collapsed-section .annual{min-height:0;padding-bottom:22px}.grid.top.collapsed-section .panel-title{align-items:center}.section-title-quarters{padding-right:105px}
@media(max-width:900px){.progress-cards{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.progress-card{grid-template-columns:86px minmax(0,1fr) 38px}}
@media(max-height:760px){.modal-card label textarea{min-height:70px}.modal-card{padding:18px 22px}.modal-card h2{font-size:20px}.modal-card label{margin:6px 0}.modal-card .telegram-action{padding:9px 12px}}
.field-hint{margin:-3px 0 8px;color:#9a8f8a;font-size:12px;line-height:1.35}.field-hint b{color:#6d625d;font-weight:700}
.day-extra{margin:10px 0 2px;padding:10px 12px;border:1px solid #eee4dc;border-radius:12px;background:#fffdfb}
.day-extra summary{cursor:pointer;color:#5f5651;font-size:13px;font-weight:700;list-style:none}
.day-extra summary::-webkit-details-marker{display:none}
.day-extra summary:before{content:"+";display:inline-grid;place-items:center;width:18px;height:18px;margin-right:7px;border-radius:50%;background:#fff1ec;color:#ff3b1f;font-weight:800}
.day-extra[open] summary:before{content:"−"}
.day-extra label{margin-top:9px}
.day-extra textarea{min-height:70px!important}

/* Mobile app experience */
@media(max-width:640px){
  body{font-size:14px}
  header{position:static;align-items:flex-start;gap:10px;padding:12px 14px;background:rgba(255,255,255,.92)}
  .brand{font-size:16px;gap:7px;line-height:1.15}.brand:before{width:30px;height:30px;border-radius:9px;font-size:16px}.brand span{display:none}
  .account{margin-left:auto}.account .ghost{padding:8px 11px;border-radius:10px;font-size:12px}
  main{padding:22px 12px 54px}
  .auth{min-height:auto;grid-template-columns:1fr;gap:20px;padding-top:8px}.auth h1{font-size:32px;letter-spacing:-1px}.lead{font-size:15px;line-height:1.5}.card{padding:20px}
  .hero{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;margin:0 0 18px}.hero h1{font-size:26px;line-height:1.12;margin:5px 0 6px}.hero p{font-size:13px}.hero select{min-width:96px;padding:10px 9px}
  .progress-strip{margin-bottom:18px}.progress-panel{padding:14px}.progress-panel .panel-title h2{font-size:18px;margin:0 0 6px}.progress-cards{gap:8px}.progress-card{grid-template-columns:74px minmax(0,1fr) 34px;gap:8px}.progress-card span{font-size:10px}.progress-card b{font-size:12px}
  .panel,.week{padding:15px;border-radius:13px}.panel h2,.section-title h2,.month-head h2{font-size:20px}.dot{width:30px;height:30px;border-radius:9px}.annual textarea,.quarter textarea{min-height:92px}
  .section-title{margin:34px 0 12px;padding-left:34px}.section-title:before{width:27px;height:27px;border-radius:8px;font-size:16px}
  .quarter-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.quarter-tab{padding:9px 10px;border-radius:10px;font-size:12px}.quarter-tab span{font-size:9px}
  .month-head{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin:34px 0 12px}.month-head select{min-width:116px;padding:10px 9px}
  .planning-layout{display:block;margin-top:34px}.calendar-column{position:static}.weeks-column{margin-top:34px}.weeks-column>.section-title{padding-left:34px;margin-bottom:12px}
  .calendar{border-radius:12px}.calendar div,.calendar button,.planning-layout .calendar div,.planning-layout .calendar button{min-height:44px;padding:6px 5px;font-size:13px}.calendar .weekday,.planning-layout .calendar .weekday{min-height:30px;font-size:10px}.calendar .has-entry:after{left:7px;bottom:7px;width:5px;height:5px}
  .week-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.week-tab{padding:7px 8px;border-radius:9px}.week-tab strong{width:22px;height:22px;flex-basis:22px;font-size:11px}.week-tab span{font-size:9px}
  .weeks-column .week{padding:15px}.week h3,.weeks-column .week h3{font-size:18px;margin:4px 0 8px}.goal-row{grid-template-columns:18px minmax(0,1fr);padding:5px 2px}.goal-row .goal-text{font-size:14px}.week .row{gap:10px}.week-actions{width:100%}.telegram-action{width:100%;padding:10px 12px;text-align:center}
  .app-footer{margin-top:42px;padding-top:14px}.settings-panel{padding:15px}.settings-grid input{padding:10px 11px}.footer-settings{width:100%;text-align:left;padding:11px 0}
  .modal{display:block;overflow-y:auto;padding:calc(14px + env(safe-area-inset-top)) 8px calc(14px + env(safe-area-inset-bottom));background:#1c1b18a8}.modal-card{width:100%;max-height:none;min-height:auto;overflow:visible;border-radius:16px;padding:22px 16px 16px;margin:0 auto}.modal-card h2{font-size:19px;margin:2px 28px 7px 0}.modal-card label{margin:7px 0;font-size:12px}.modal-card label textarea{min-height:68px;font-size:14px;line-height:1.4;padding:8px 10px}.close{right:10px;top:8px;font-size:25px;line-height:1}.preview-card textarea{min-height:220px}.preview-actions{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:6px}.preview-actions .primary,.preview-actions .save{padding:10px 8px;font-size:12px}.toast{right:12px;bottom:12px;left:12px;text-align:center}
}

/* 2026-09 internal workspace visual refresh */
body.app-view{
  --workspace-ink:#282420;
  --workspace-muted:#786f68;
  --workspace-line:#e3d9d1;
  --workspace-paper:#fffdfa;
  --workspace-coral:#ef715d;
  background:
    radial-gradient(circle at 12% 5%,rgba(239,113,93,.09),transparent 28rem),
    radial-gradient(circle at 92% 22%,rgba(137,165,147,.11),transparent 25rem),
    #f6f2ea;
  color:var(--workspace-ink);
}
body.app-view .site-header{
  border-bottom-color:#ded5ce;
  box-shadow:0 8px 24px rgba(66,48,39,.035);
}
body.app-view main{position:relative}
body.app-view #app{position:relative}
body.app-view #app:before{
  content:"";
  position:absolute;
  z-index:-1;
  top:104px;
  left:-28px;
  width:4px;
  height:132px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--workspace-coral),#eeb59f 45%,#9eb8a7);
}
body.app-view .account-bar{
  width:max-content;
  margin-left:auto;
  padding:5px;
  border:1px solid rgba(222,213,206,.92);
  border-radius:14px;
  background:rgba(255,253,250,.78);
  box-shadow:0 7px 20px rgba(66,48,39,.04);
  backdrop-filter:blur(10px);
}
body.app-view .account-bar>span{padding:0 8px;color:#5f5751;font-weight:500}
body.app-view .account a,
body.app-view .account .ghost{border-color:transparent;background:transparent;box-shadow:none}
body.app-view .account a:hover,
body.app-view .account .ghost:hover{border-color:#eadbd4;background:#fff}
body.app-view .hero{
  position:relative;
  align-items:center;
  margin:14px 0 24px;
  padding:30px 32px;
  overflow:hidden;
  border:1px solid var(--workspace-line);
  border-radius:22px;
  background:linear-gradient(125deg,#fffdfa 0%,#fff9f4 58%,#f1f6f1 100%);
  box-shadow:0 16px 42px rgba(65,47,38,.065);
}
body.app-view .hero:after{
  content:"";
  position:absolute;
  right:-62px;
  bottom:-96px;
  width:250px;
  height:250px;
  border:1px solid rgba(239,113,93,.16);
  border-radius:50%;
  box-shadow:0 0 0 30px rgba(239,113,93,.035),0 0 0 66px rgba(137,165,147,.035);
  pointer-events:none;
}
body.app-view .hero>*,body.app-view .hero-tools{position:relative;z-index:1}
body.app-view .hero h1{color:#26211e;font-size:38px;font-weight:600;letter-spacing:-1.2px}
body.app-view .hero .eyebrow{color:#c85f50;letter-spacing:1.9px}
body.app-view .today-badge,
body.app-view .hero select{
  border-color:#ded3cb;
  background:rgba(255,255,255,.82);
  box-shadow:0 7px 18px rgba(62,44,35,.055);
}
body.app-view .card,
body.app-view .panel,
body.app-view .week{
  border-color:var(--workspace-line);
  background:var(--workspace-paper);
  box-shadow:0 12px 32px rgba(63,46,37,.055);
}
body.app-view .progress-panel{
  border-color:#e4d5cd;
  background:linear-gradient(115deg,#fffdfa 0%,#fff3ed 54%,#f2f7f2 100%);
  box-shadow:0 14px 34px rgba(68,46,37,.06);
}
body.app-view .progress-overview.compact,
body.app-view .progress-metrics.compact .progress-card{
  border-color:rgba(217,202,193,.9);
  background:rgba(255,255,255,.72);
  box-shadow:0 5px 15px rgba(70,49,39,.035);
}
body.app-view .annual{
  position:relative;
  overflow:hidden;
  border-left:4px solid var(--workspace-coral);
}
body.app-view .annual:after{
  content:"";
  position:absolute;
  inset:0 0 auto auto;
  width:180px;
  height:100%;
  background:linear-gradient(110deg,transparent,rgba(239,113,93,.035));
  pointer-events:none;
}
body.app-view .panel h2,
body.app-view .section-title h2,
body.app-view .month-head h2{color:#302b27;font-weight:600}
body.app-view .section-title{margin-top:62px}
body.app-view .section-title:before{
  border-color:#e4d5cc;
  background:#fffdfa;
  box-shadow:0 7px 18px rgba(65,44,35,.07);
}
body.app-view .quarter-tabs,
body.app-view .week-tabs{gap:10px}
body.app-view .quarter-tab,
body.app-view .week-tab{
  border-color:#ded5ce;
  background:rgba(255,253,250,.9);
  box-shadow:0 5px 14px rgba(64,47,38,.035);
}
body.app-view .quarter-tab:hover,
body.app-view .week-tab:hover{
  border-color:#dfaa9e;
  background:#fffaf6;
  transform:translateY(-1px);
}
body.app-view .quarter-tab.active,
body.app-view .week-tab.active{
  border-color:#ec8a77;
  background:linear-gradient(135deg,#fff3ef,#fff9f5);
  box-shadow:0 0 0 3px rgba(239,113,93,.08),0 8px 18px rgba(94,55,43,.05);
}
body.app-view .active-quarter,
body.app-view .active-week{border-top:3px solid rgba(239,113,93,.62)}
body.app-view .month-head{
  padding:0 2px 14px;
  border-bottom:1px solid #ded5ce;
}
body.app-view .calendar{
  border-color:#dcd1ca;
  border-radius:18px;
  box-shadow:0 14px 34px rgba(62,45,37,.06);
}
body.app-view .calendar div,
body.app-view .calendar button{border-color:#e8dfd9;background:#fffdfa}
body.app-view .calendar .weekday{background:#eee8df;color:#6b615b;letter-spacing:.7px}
body.app-view .calendar button:hover{background:#fff1eb;color:#c95646}
body.app-view .calendar .empty{background:#f8f4ed}
body.app-view .calendar .has-entry{background:linear-gradient(145deg,#fff5f0,#ffebe5)}
body.app-view input,
body.app-view textarea,
body.app-view select{border-color:#ddd3cc;background:#fff}
body.app-view input:focus,
body.app-view textarea:focus,
body.app-view select:focus{border-color:#df8f7f;box-shadow:0 0 0 3px rgba(239,113,93,.11)}
body.app-view .goal-row:hover{background:rgba(239,113,93,.04)}
body.app-view .week-status{border-color:#e3d8d1;background:#f8f4ed}
body.app-view .app-footer{border-top-color:#ddd4cd}

@media(max-width:760px){
  body.app-view #app:before{display:none}
  body.app-view .account-bar{width:100%;justify-content:flex-end;margin-bottom:12px}
  body.app-view .hero{display:grid;gap:20px;padding:24px 20px;border-radius:18px}
  body.app-view .hero h1{font-size:30px;letter-spacing:-.7px}
  body.app-view .hero-tools{width:100%;align-items:stretch}
  body.app-view .today-badge{min-width:0;flex:1}
  body.app-view .hero select{min-width:96px}
  body.app-view .quarter-tabs,
  body.app-view .week-tabs{gap:7px}
}

@media(max-width:520px){
  body.app-view .hero{padding:20px 16px}
  body.app-view .hero h1{font-size:27px}
  body.app-view .hero-tools{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:8px}
  body.app-view .today-badge{min-width:0}
  body.app-view .progress-panel{padding:15px}
  body.app-view .annual{border-left-width:3px}
  body.app-view .card,
  body.app-view .panel,
  body.app-view .week{box-shadow:0 8px 22px rgba(63,46,37,.05)}
}

/* Unified PlanCeli identity, icons and actions */
.site-header .brand{
  gap:10px;
  color:#1b1e24;
  font-family:"Segoe UI",Roboto,Arial,sans-serif;
  font-size:18px;
  font-weight:400;
  letter-spacing:-.15px;
}
.site-header .brand:before{
  content:"";
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:8px;
  background:#ff3b1f url('/logo-mark.svg') center/34px 34px no-repeat;
  box-shadow:0 4px 12px rgba(255,59,31,.18);
}
body.app-view .section-title:after{transform:none}
body.app-view .section-title-quarters:after{
  left:9px;
  top:9px;
  width:18px;
  height:18px;
  border-radius:0;
  background:
    linear-gradient(#ff3b1f,#ff3b1f) 0 0/7px 7px no-repeat,
    linear-gradient(#ff8b76,#ff8b76) 11px 0/7px 7px no-repeat,
    linear-gradient(#ff8b76,#ff8b76) 0 11px/7px 7px no-repeat,
    linear-gradient(#ff3b1f,#ff3b1f) 11px 11px/7px 7px no-repeat;
}
body.app-view .section-title-weeks:before{border-color:#d8dde5;background:#fff;box-shadow:none}
body.app-view .section-title-weeks:after{
  left:9px;
  top:9px;
  width:18px;
  height:18px;
  border-radius:0;
  background:
    linear-gradient(#ff3b1f,#ff3b1f) 0 0/18px 3px no-repeat,
    linear-gradient(90deg,#ff3b1f 0 5px,transparent 5px 7px,#cbd1d9 7px 18px) 0 7px/18px 3px no-repeat,
    linear-gradient(90deg,#cbd1d9 0 9px,transparent 9px 11px,#ff8b76 11px 18px) 0 14px/18px 3px no-repeat;
  box-shadow:none;
}
body.app-view .telegram-action,
body.app-view .dictate-button{
  border:1px solid #d1d7df!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#343941!important;
  box-shadow:none!important;
  font-family:"Segoe UI",Roboto,Arial,sans-serif!important;
  font-weight:400!important;
  transform:none!important;
}
body.app-view .telegram-action:before{color:#ff3b1f!important}
body.app-view .telegram-action:hover,
body.app-view .dictate-button:hover{
  border-color:#ff3b1f!important;
  background:#fff5f2!important;
  color:#d92f17!important;
}
body.app-view .dictate-button.recording{border-color:#ff3b1f!important;background:#fff0ec!important;color:#d92f17!important}
body.app-view .dictate-button.processing{border-color:#e1b8af!important;background:#fff7f5!important;color:#9f3e30!important}
body.app-view .dictate-button.fallback{border-color:#d1d7df!important;background:#f7f8fa!important;color:#555d68!important}
body.app-view .modal{background:rgba(22,25,30,.48);backdrop-filter:blur(3px)}
body.app-view .modal-card{
  border:1px solid #cfd6df;
  border-radius:8px;
  background:#fff;
  box-shadow:0 24px 70px rgba(23,29,37,.2);
}
body.app-view .modal-card:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:3px;
  border-radius:8px 8px 0 0;
  background:#ff3b1f;
}
body.app-view .modal-card h2{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:300!important}
body.app-view .modal-card label{color:#343941;font-weight:400}
body.app-view .modal-card .field-hint,
body.app-view .modal-card .autosave-hint{color:#707986;font-weight:300}
body.app-view .close{
  top:12px;
  right:13px;
  width:30px;
  height:30px;
  border:1px solid #d8dde5;
  border-radius:5px;
  color:#626a75;
  font:300 22px/26px "Segoe UI",Arial,sans-serif;
}
body.app-view .close:hover{border-color:#ff3b1f;background:#fff5f2;color:#d92f17}

@media(max-width:640px){
  .site-header .brand{font-size:16px}
  .site-header .brand:before{width:32px;height:32px;flex-basis:32px;background-size:32px 32px}
  body.app-view .section-title-quarters:after,
  body.app-view .section-title-weeks:after{left:7px;top:7px;transform:scale(.9);transform-origin:top left}
  body.app-view .modal-card{border-radius:8px}
}
@media(max-width:420px){
  main{padding-left:10px;padding-right:10px}
  .hero{grid-template-columns:1fr}.hero select{width:100%}
  .month-head{grid-template-columns:1fr}.month-head select{width:100%}
  .calendar div,.calendar button,.planning-layout .calendar div,.planning-layout .calendar button{min-height:39px;font-size:12px}
  .calendar .weekday,.planning-layout .calendar .weekday{min-height:28px}
  .quarter-tabs,.week-tabs{grid-template-columns:1fr}
  .progress-card{grid-template-columns:68px minmax(0,1fr) 32px}
  .week .row{align-items:stretch;flex-direction:column}
}

/* SEO landing */
.landing{grid-template-columns:minmax(0,1.1fr) minmax(320px,.58fr);align-items:start}.landing-copy{padding-top:54px}.landing h1{max-width:760px}.landing-visual{height:210px;max-width:520px;margin-top:28px;padding:22px 24px 18px;border:1px solid #eee2df;border-radius:18px;background:linear-gradient(180deg,#fff,#fff8f5);box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:end}.metric{height:100%;display:grid;grid-template-rows:auto 1fr auto;gap:8px;color:#746964}.metric span{font-size:12px;font-weight:700}.metric b{order:3;color:var(--coral-dark);font-size:18px}.metric i{align-self:end;display:block;border-radius:14px 14px 6px 6px;background:linear-gradient(180deg,#ff9b89,#ff765f);box-shadow:inset 0 1px 0 #ffffff66}.seo-content{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}.seo-content article{padding:24px;border:1px solid #eee2df;border-radius:16px;background:#fff;box-shadow:var(--shadow)}.seo-content h2{margin:0 0 20px;font-size:24px;line-height:1.18;color:#2b2724}.seo-content p{margin:0 0 12px;color:#5e5651;line-height:1.65}.seo-content p:last-child{margin-bottom:0}.seo-content ul{margin:0 0 12px;padding-left:18px;color:#5e5651;line-height:1.65}.seo-content li{margin:8px 0}.feature-card{background:linear-gradient(180deg,#fff,#fff7f4)!important}.benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 14px}.benefit-grid span{padding:10px;border-radius:10px;background:#fff6f4;border:1px solid #f0e2de;color:#584d48;font-weight:700;font-size:13px;text-align:center}.cta-block{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 24px;align-items:center}.cta-block h2,.cta-block p{grid-column:1/-1}.cta-block ul{margin-bottom:0}.cta-block .primary{min-width:190px}
.why-wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:center;overflow:hidden;background:linear-gradient(135deg,#fff,#fff8f4 62%,#ffece6)!important}.why-copy{min-width:0}.why-illustration{position:relative;min-height:260px;border-radius:14px;background:linear-gradient(180deg,#fff,#fbf7ef);border:1px solid #f0e4dd;overflow:hidden}.why-illustration:before{content:"";position:absolute;inset:24px;border-radius:50%;border:1px dashed #ecd8d0}.why-illustration:after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 8px #ff765f18}.orbit{position:absolute;inset:38px;border-radius:50%;background:conic-gradient(from 20deg,#ff765f 0 70deg,transparent 70deg 130deg,#efd8cf 130deg 220deg,transparent 220deg 360deg);opacity:.32;transition:transform .5s ease}.route{position:absolute;left:42px;right:42px;top:50%;height:2px;background:#ead8d1}.route span{position:absolute;top:-4px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--coral);transition:transform .25s ease,background .25s ease}.route span:nth-child(1){left:0}.route span:nth-child(2){left:32%}.route span:nth-child(3){left:64%}.route span:nth-child(4){right:0}.goal-node{position:absolute;padding:9px 12px;border-radius:999px;background:#fff;border:1px solid #eadbd5;color:#574b46;font-size:12px;font-weight:800;box-shadow:0 8px 20px rgba(61,38,31,.06);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.goal-node.main{left:50%;top:50%;transform:translate(-50%,-50%);background:var(--coral);border-color:var(--coral);color:#fff}.goal-node.step-a{left:28px;top:34px}.goal-node.step-b{right:32px;top:54px}.goal-node.step-c{right:56px;bottom:34px}.why-wide:hover .orbit{transform:rotate(24deg) scale(1.03)}.why-wide:hover .route span{background:var(--coral);transform:scale(1.18)}.why-wide:hover .goal-node{border-color:#efb5aa;box-shadow:0 10px 28px rgba(255,118,95,.14)}.why-wide:hover .goal-node.main{transform:translate(-50%,-50%) scale(1.06)}
.inside-wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:28px;align-items:center;background:linear-gradient(135deg,#fff,#fbf8f1)!important}.inside-copy{min-width:0}.inside-scheme{position:relative;min-height:220px;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;gap:8px;padding:22px;border-radius:14px;background:linear-gradient(180deg,#fffaf7,#fff);border:1px solid #f0e4dd;overflow:hidden}.inside-scheme:before{content:"";position:absolute;left:42px;right:42px;top:50%;height:2px;background:linear-gradient(90deg,#eddcd4,#ff765f,#eddcd4)}.inside-scheme span{position:relative;display:grid;place-items:center;min-height:62px;padding:10px;border-radius:14px;background:#fff;border:1px solid #ecddd7;color:#564b46;font-size:12px;font-weight:800;text-align:center;box-shadow:0 8px 20px rgba(61,38,31,.055);transition:transform .25s ease,border-color .25s ease,background .25s ease}.inside-scheme span:after{content:"";position:absolute;right:-13px;width:16px;height:2px;background:#edddd6}.inside-scheme span:last-child:after{display:none}.inside-wide:hover .inside-scheme span{transform:translateY(-3px);border-color:#efb5aa}.inside-wide:hover .inside-scheme span:nth-child(4){background:#fff1ee;color:var(--coral-dark)}.plain-section{grid-column:1/-1!important;padding:60px 8px!important;border:0!important;background:transparent!important;box-shadow:none!important}.plain-section h2{max-width:760px}.plain-section ul{columns:2;column-gap:38px;padding-left:18px}.plain-section li{break-inside:avoid;margin-top:0;margin-bottom:12px}.why-illustration:after{display:none}
.plain-section .icon-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;columns:auto;margin:8px 0 18px;padding:0;list-style:none}.icon-list li{position:relative;min-height:50px;margin:0;padding:2px 0 0 52px;color:#5e5651;line-height:1.55;break-inside:auto}.icon-list li:before{content:"";position:absolute;left:0;top:2px;width:36px;height:36px;border-radius:12px;background:#fff;border:1px solid #eeded8;box-shadow:0 6px 16px rgba(61,38,31,.045)}.icon-list li:after{content:"";position:absolute;left:10px;top:12px;width:16px;height:16px;background:var(--coral);-webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}.icon-list .icon-plan:after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 12.5l4 4L19 6.5' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 12.5l4 4L19 6.5' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.icon-list .icon-chart:after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 19h16v2H4zM6 11h3v6H6zM11 6h3v11h-3zM16 9h3v8h-3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 19h16v2H4zM6 11h3v6H6zM11 6h3v11h-3zM16 9h3v8h-3z'/%3E%3C/svg%3E")}.icon-list .icon-stack:after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 7l8-4 8 4-8 4-8-4zm0 5l8 4 8-4v3l-8 4-8-4v-3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 7l8-4 8 4-8 4-8-4zm0 5l8 4 8-4v3l-8 4-8-4v-3z'/%3E%3C/svg%3E")}.icon-list .icon-bell:after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 22a2.5 2.5 0 0 0 2.4-2h-4.8A2.5 2.5 0 0 0 12 22zM5 18h14l-2-3v-4a5 5 0 0 0-10 0v4l-2 3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 22a2.5 2.5 0 0 0 2.4-2h-4.8A2.5 2.5 0 0 0 12 22zM5 18h14l-2-3v-4a5 5 0 0 0-10 0v4l-2 3z'/%3E%3C/svg%3E")}
@media(max-width:900px){.landing{grid-template-columns:1fr}.landing-copy{padding-top:10px}.landing h1{font-size:34px;letter-spacing:-1px}.seo-content{grid-template-columns:1fr}.cta-block{grid-template-columns:1fr}.cta-block .primary{width:100%}}
@media(max-width:900px){.why-wide,.inside-wide{grid-template-columns:1fr}.why-illustration{min-height:230px}.inside-scheme{grid-template-columns:1fr;min-height:0}.inside-scheme:before,.inside-scheme span:after{display:none}.plain-section ul{columns:1}.plain-section .icon-list{grid-template-columns:1fr}}
@media(max-width:640px){.landing h1{font-size:30px}.landing-visual{height:170px;padding:16px;gap:12px}.seo-content{gap:12px;margin-top:18px}.seo-content article{padding:18px}.seo-content h2{font-size:20px}.benefit-grid{grid-template-columns:1fr 1fr}.metric b{font-size:15px}.why-illustration{min-height:210px}.goal-node{font-size:11px;padding:8px 10px}.goal-node.step-a{left:18px}.goal-node.step-b{right:18px}.goal-node.step-c{right:28px}}
@media(max-width:640px){.inside-wide{gap:16px}.inside-scheme{gap:7px;padding:14px}.inside-scheme span{min-height:42px;padding:8px}.plain-section{padding:38px 8px!important}.plain-section .icon-list{gap:12px}.why-wide{gap:16px}.why-illustration{min-height:190px}.route{left:28px;right:28px}.orbit{inset:28px}}

/* Final compact override for progress history */
.progress-cards{grid-template-columns:240px minmax(0,1fr)!important;gap:12px!important}.progress-overview.compact{grid-template-columns:72px minmax(0,1fr)!important;padding:12px 14px!important;border-radius:16px!important}.progress-overview.compact .progress-orb,.progress-orb{width:72px!important;height:72px!important}.progress-overview.compact .progress-orb:before,.progress-orb:before{inset:7px!important}.progress-overview.compact .progress-orb span,.progress-orb span{font-size:20px!important;letter-spacing:-.8px!important}.progress-overview.compact .progress-story strong{font-size:14px!important;line-height:1.2!important}.progress-overview.compact .progress-story span{font-size:11px!important;line-height:1.35!important;margin-top:5px!important}.progress-metrics.compact{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}.progress-metrics.compact .progress-card{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;grid-template-areas:"text percent" "bar bar"!important;gap:7px 10px!important;min-height:86px!important;padding:12px 13px!important}.progress-metrics.compact .progress-card>div:first-child{grid-area:text!important}.progress-metrics.compact .progress-card b{grid-area:percent!important;text-align:right!important;font-size:16px!important}.progress-metrics.compact .progress-bar{grid-area:bar!important;height:7px!important}
@media(max-width:900px){.progress-cards{grid-template-columns:1fr!important}.progress-metrics.compact{grid-template-columns:1fr!important}.progress-overview.compact{grid-template-columns:68px minmax(0,1fr)!important}.progress-overview.compact .progress-orb,.progress-orb{width:68px!important;height:68px!important}.progress-overview.compact .progress-orb span,.progress-orb span{font-size:19px!important}}

/* Compact progress history */
.progress-panel{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fffaf6 68%,#fff3ee 100%)}.progress-panel:before{content:"";position:absolute;right:-80px;top:-100px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,#ff765f1c,transparent 68%);pointer-events:none}.progress-panel .panel-title{position:relative;z-index:1}.progress-cards{position:relative;z-index:1;display:grid;grid-template-columns:240px minmax(0,1fr);gap:12px;align-items:stretch}.progress-overview.compact{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:12px 14px;border:1px solid #f0e3dc;border-radius:16px;background:rgba(255,255,255,.76);box-shadow:0 8px 20px rgba(70,44,35,.04)}.progress-orb{--value:0;position:relative;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--coral) calc(var(--value)*1%),#f1e6df 0);animation:orb-pop .45s ease both;flex:0 0 auto}.progress-orb:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #f0e2dc}.progress-orb span{position:relative;z-index:1;font-size:20px;font-weight:850;color:#332d29;letter-spacing:-.8px}.progress-story{min-width:0}.progress-story strong{display:block;font-size:14px;line-height:1.2;color:#3d3734}.progress-story span{display:block;margin-top:5px;color:#8c817b;font-size:11px;line-height:1.35}.progress-metrics.compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.progress-metrics.compact .progress-card{display:grid;grid-template-columns:minmax(0,1fr) 42px;grid-template-areas:"text percent" "bar bar";align-content:center;gap:7px 10px;min-height:86px;padding:12px 13px;border:1px solid #f0e3dc;border-radius:15px;background:rgba(255,255,255,.7);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.progress-metrics.compact .progress-card:hover{transform:translateY(-1px);border-color:#efc6bd;box-shadow:0 10px 22px rgba(80,48,38,.055)}.progress-metrics.compact .progress-card>div:first-child{grid-area:text;min-width:0}.progress-metrics.compact .progress-card strong{font-size:13px}.progress-metrics.compact .progress-card span{font-size:10px;line-height:1.25}.progress-metrics.compact .progress-card b{grid-area:percent;text-align:right;font-size:16px;letter-spacing:-.3px;color:#8f6b61}.progress-metrics.compact .progress-bar{grid-area:bar;height:7px}.progress-bar i{animation:progress-fill .55s ease both}.progress-card.tone-1 .progress-bar i{background:linear-gradient(90deg,#d99283,#ff765f)}.progress-card.tone-2 .progress-bar i{background:linear-gradient(90deg,#a8b7a0,#7fa083)}.progress-card.tone-3 .progress-bar i{background:linear-gradient(90deg,#9fb3c8,#8b9fd0)}@keyframes progress-fill{from{width:0}}@keyframes orb-pop{from{transform:scale(.96);opacity:.7}to{transform:scale(1);opacity:1}}
@media(max-width:900px){.progress-cards{grid-template-columns:1fr}.progress-metrics.compact{grid-template-columns:1fr}.progress-overview.compact{grid-template-columns:68px minmax(0,1fr)}.progress-orb{width:68px;height:68px}.progress-orb span{font-size:19px}}
@media(max-width:640px){.progress-cards{gap:9px}.progress-overview.compact{padding:11px 12px;border-radius:14px}.progress-metrics.compact .progress-card{min-height:76px;padding:11px 12px}.progress-panel:before{display:none}}

/* Rich progress history */
.progress-panel{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fffaf6 58%,#fff2ec 100%)}.progress-panel:before{content:"";position:absolute;right:-70px;top:-90px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,#ff765f24,transparent 68%);pointer-events:none}.progress-panel .panel-title{position:relative;z-index:1}.progress-cards{position:relative;z-index:1;display:grid;grid-template-columns:270px minmax(0,1fr);gap:14px;align-items:stretch}.progress-overview{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;align-items:center;padding:16px;border:1px solid #f0e3dc;border-radius:18px;background:rgba(255,255,255,.76);box-shadow:0 10px 24px rgba(70,44,35,.045)}.progress-orb{--value:0;position:relative;width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--coral) calc(var(--value)*1%),#f1e6df 0);animation:orb-pop .55s ease both}.progress-orb:before{content:"";position:absolute;inset:9px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #f0e2dc}.progress-orb span,.progress-orb small{position:relative;z-index:1}.progress-orb span{font-size:28px;font-weight:850;color:#332d29;letter-spacing:-1px}.progress-orb small{display:block;margin-top:30px;position:absolute;color:#9b8d87;font-size:10px;letter-spacing:.8px;text-transform:uppercase}.progress-story strong{display:block;font-size:16px;line-height:1.25;color:#3d3734}.progress-story span{display:block;margin-top:7px;color:#8c817b;font-size:12px;line-height:1.45}.progress-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.progress-metrics .progress-card{grid-template-columns:1fr;align-content:center;gap:9px;min-height:118px;padding:14px;border:1px solid #f0e3dc;border-radius:16px;background:rgba(255,255,255,.72);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.progress-metrics .progress-card:hover{transform:translateY(-2px);border-color:#efc6bd;box-shadow:0 12px 26px rgba(80,48,38,.07)}.progress-metrics .progress-card strong{font-size:14px}.progress-metrics .progress-card span{font-size:11px;line-height:1.35}.progress-metrics .progress-card b{text-align:left;font-size:22px;letter-spacing:-.5px}.progress-bar{height:8px}.progress-bar i{animation:progress-fill .7s ease both}.progress-card.tone-1 .progress-bar i{background:linear-gradient(90deg,#d99283,#ff765f)}.progress-card.tone-2 .progress-bar i{background:linear-gradient(90deg,#a8b7a0,#7fa083)}.progress-card.tone-3 .progress-bar i{background:linear-gradient(90deg,#9fb3c8,#8b9fd0)}.progress-deep{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 250px 190px;gap:12px}.progress-timeline,.quarter-rings,.progress-insight{padding:14px;border:1px solid #f0e3dc;border-radius:16px;background:rgba(255,255,255,.66)}.progress-subtitle{margin-bottom:10px;color:#6f625c;font-size:12px;font-weight:800}.spark-bars{height:84px;display:flex;align-items:end;gap:5px;padding:10px 4px 4px;border-radius:12px;background:linear-gradient(180deg,#fff,#fbf6f1)}.spark-bars span{flex:1;min-width:4px;height:var(--h);border-radius:999px 999px 4px 4px;background:linear-gradient(180deg,#ff9c89,#d99283);opacity:.85;transform-origin:bottom;animation:bar-rise .65s ease both;transition:transform .18s ease,opacity .18s ease}.spark-bars span:nth-child(3n+2){background:linear-gradient(180deg,#a8b7a0,#86a487)}.spark-bars span:nth-child(3n){background:linear-gradient(180deg,#a9b8ca,#8fa2c5)}.spark-bars span.empty{background:#eee4de;opacity:.7}.spark-bars span:hover{transform:scaleY(1.08);opacity:1}.quarter-rings{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;align-items:center}.quarter-rings .progress-subtitle{grid-column:1/-1;margin-bottom:2px}.mini-ring{--value:0;display:grid;place-items:center;gap:3px;min-height:70px;border-radius:14px;background:conic-gradient(#d99283 calc(var(--value)*1%),#efe4de 0);position:relative}.mini-ring:before{content:"";position:absolute;inset:7px;border-radius:11px;background:#fff}.mini-ring span,.mini-ring b{position:relative;z-index:1}.mini-ring span{font-size:11px;font-weight:850;color:#726660}.mini-ring b{font-size:12px;color:#8f6b61}.progress-insight{display:flex;flex-direction:column;justify-content:center}.progress-insight span{color:#9a8f8a;font-size:11px;text-transform:uppercase;letter-spacing:.9px;font-weight:800}.progress-insight strong{margin-top:8px;color:#3d3734;font-size:16px;line-height:1.25}@keyframes progress-fill{from{width:0}}@keyframes bar-rise{from{transform:scaleY(.15);opacity:.35}}@keyframes orb-pop{from{transform:scale(.96);opacity:.7}to{transform:scale(1);opacity:1}}
@media(max-width:980px){.progress-cards{grid-template-columns:1fr}.progress-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.progress-deep{grid-template-columns:1fr 1fr}.progress-insight{grid-column:1/-1}.progress-overview{grid-template-columns:96px minmax(0,1fr)}.progress-orb{width:96px;height:96px}.progress-orb span{font-size:24px}}
@media(max-width:640px){.progress-cards{gap:10px}.progress-overview{grid-template-columns:82px minmax(0,1fr);padding:12px;border-radius:15px}.progress-orb{width:82px;height:82px}.progress-orb span{font-size:21px}.progress-orb small{font-size:8px;margin-top:24px}.progress-story strong{font-size:14px}.progress-metrics,.progress-deep{grid-template-columns:1fr}.progress-metrics .progress-card{min-height:0;padding:12px}.spark-bars{height:68px;gap:4px}.quarter-rings{grid-template-columns:repeat(2,1fr)}.mini-ring{min-height:58px}.progress-insight{min-height:76px}}

/* Final final compact override for progress history */
.progress-cards{grid-template-columns:240px minmax(0,1fr)!important;gap:12px!important}.progress-overview.compact{display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;padding:12px 14px!important;border-radius:16px!important}.progress-overview.compact .progress-orb{width:72px!important;height:72px!important}.progress-overview.compact .progress-orb:before{inset:7px!important}.progress-overview.compact .progress-orb span{font-size:20px!important;letter-spacing:-.8px!important}.progress-overview.compact .progress-story strong{font-size:14px!important;line-height:1.2!important}.progress-overview.compact .progress-story span{font-size:11px!important;line-height:1.35!important;margin-top:5px!important}.progress-metrics.compact{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}.progress-metrics.compact .progress-card{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;grid-template-areas:"text percent" "bar bar"!important;gap:7px 10px!important;min-height:86px!important;padding:12px 13px!important}.progress-metrics.compact .progress-card>div:first-child{grid-area:text!important}.progress-metrics.compact .progress-card b{grid-area:percent!important;text-align:right!important;font-size:16px!important}.progress-metrics.compact .progress-bar{grid-area:bar!important;height:7px!important}
@media(max-width:900px){.progress-cards{grid-template-columns:1fr!important}.progress-metrics.compact{grid-template-columns:1fr!important}.progress-overview.compact{grid-template-columns:68px minmax(0,1fr)!important}.progress-overview.compact .progress-orb{width:68px!important;height:68px!important}.progress-overview.compact .progress-orb span{font-size:19px!important}}

/* Noticeable section icons and softer Telegram button */
.section-title{padding-left:58px}.section-title:before{content:"";width:43px;height:43px;border-radius:15px;background:linear-gradient(135deg,#fff,#fff1ec);border:1px solid #f0d8d0;box-shadow:0 8px 18px rgba(255,118,95,.12)}.section-title:after{content:"";position:absolute;left:11px;top:11px;width:21px;height:21px}.section-title-quarters:after{border-radius:6px;background:linear-gradient(90deg,var(--coral) 0 8px,transparent 8px 13px,#9fb3c8 13px 21px),linear-gradient(90deg,#a8b7a0 0 8px,transparent 8px 13px,#d99283 13px 21px);background-size:21px 8px,21px 8px;background-position:0 0,0 13px;background-repeat:no-repeat}.section-title-weeks:after{left:10px;top:10px;width:23px;height:23px;border-radius:7px;background:linear-gradient(var(--coral),var(--coral)) 0 0/23px 5px no-repeat,radial-gradient(circle,#9fb3c8 2px,transparent 2.5px) 3px 9px/8px 8px repeat,linear-gradient(90deg,transparent 0 2px,#a8b7a0 2px 14px,transparent 14px) 4px 16px/18px 4px no-repeat,#fff;box-shadow:inset 0 0 0 1.5px #e6d7d1}.section-title-weeks:before{background:linear-gradient(135deg,#fff,#eef8ff);border-color:#cfe4f2;box-shadow:0 8px 18px rgba(34,158,217,.12)}.section-title h2{line-height:1.12}.telegram-action{border-color:#cfe4f2!important;background:#eef8ff!important;color:#24739f!important;box-shadow:0 5px 14px rgba(34,158,217,.08)}.telegram-action:hover{border-color:#aad1e8!important;background:#e3f4ff!important;color:#17658f!important;transform:translateY(-1px)}.telegram-action:before{color:#48a9dc!important}
@media(max-width:640px){.section-title{padding-left:44px}.section-title:before{width:32px;height:32px;border-radius:11px}.section-title:after{left:8px;top:8px;width:16px;height:16px}.section-title-quarters:after{border-radius:5px;background:linear-gradient(90deg,var(--coral) 0 6px,transparent 6px 10px,#9fb3c8 10px 16px),linear-gradient(90deg,#a8b7a0 0 6px,transparent 6px 10px,#d99283 10px 16px);background-size:16px 6px,16px 6px;background-position:0 0,0 10px;background-repeat:no-repeat}.section-title-weeks:after{left:8px;top:8px;width:16px;height:16px;border-radius:5px;background:linear-gradient(var(--coral),var(--coral)) 0 0/16px 4px no-repeat,radial-gradient(circle,#9fb3c8 1.5px,transparent 2px) 2px 7px/6px 6px repeat,linear-gradient(90deg,transparent 0 1px,#a8b7a0 1px 11px,transparent 11px) 3px 12px/13px 3px no-repeat,#fff;box-shadow:inset 0 0 0 1px #e6d7d1}}

/* Week title icon alignment */
.weeks-column>.section-title.section-title-weeks{padding-left:58px;margin-bottom:24px}.section-title-weeks:before{top:50%;transform:translateY(-50%)}.section-title-weeks:after{left:10px;top:50%;transform:translateY(-50%)}.weeks-column>.section-title.section-title-weeks:after{left:10px}.weeks-column>.section-title.section-title-weeks+ .weeks{margin-top:0}
@media(max-width:640px){.weeks-column>.section-title.section-title-weeks{padding-left:44px;margin-bottom:18px}.section-title-weeks:after{left:8px}.section-title-weeks:before{top:50%}}

/* Softer landing headline */
.landing h1{font-size:42px;font-weight:700;letter-spacing:-1px}.auth h1{font-weight:700}

/* Landing character image instead of the old progress chart */
.landing-character{
  position:relative;
  max-width:560px;
  margin:30px 0 0;
  padding:10px;
  overflow:hidden;
  border:1px solid #eee2df;
  border-radius:28px;
  background:linear-gradient(135deg,#fff,#fff7f2);
  box-shadow:0 18px 42px rgba(76,43,34,.09);
}
.landing-character:before{
  content:"";
  position:absolute;
  inset:auto -42px -74px auto;
  width:190px;
  height:190px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,118,95,.22),transparent 68%);
  pointer-events:none;
}
.landing-character img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  aspect-ratio:16/10.5;
  object-fit:cover;
  object-position:48% 42%;
  border-radius:22px;
}
.landing-character figcaption{
  position:relative;
  z-index:1;
  margin:10px 4px 2px;
  color:#7d736e;
  font-size:13px;
  line-height:1.45;
}
@media(max-width:900px){
  .landing-character{
    max-width:100%;
    margin-top:24px;
  }
}
@media(max-width:640px){
  .landing-character{
    margin-top:20px;
    padding:8px;
    border-radius:22px;
  }
  .landing-character img{
    aspect-ratio:4/3;
    object-position:45% 38%;
    border-radius:17px;
  }
  .landing-character figcaption{
    font-size:12px;
  }
}
@media(max-width:640px){.landing h1,.auth h1{font-size:26px;line-height:1.12;font-weight:700;letter-spacing:-.5px}}

/* Landing hero recomposition */
.landing{
  align-items:start;
}
.landing-copy{
  min-height:auto;
}
.landing-side{
  display:grid;
  gap:0;
  align-self:start;
  padding-top:86px;
}
.landing-side .card{
  position:relative;
  z-index:2;
  margin:0;
}
@media(max-width:900px){
  .landing-copy{
    min-height:auto;
  }
  .landing-side{
    padding-top:0;
  }
}
@media(max-width:640px){
  .landing-side{
    gap:0;
  }
}

/* Weekly assistant and mobile today screen */
.today-screen{display:none;margin:0 0 22px;padding:16px 18px;background:linear-gradient(135deg,#fff,#fff8f4)}
.today-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.today-head h2{margin:4px 0 3px;font-size:21px}
.today-head p{margin:0;color:#918782;font-size:12px}
.today-open{flex:0 0 auto}
.today-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.today-card{border:1px solid #eee1dc;background:#fff;border-radius:13px;padding:12px;text-align:left;color:#3e3834;cursor:pointer;box-shadow:0 5px 14px rgba(61,38,31,.035);transition:transform .16s ease,border-color .16s ease,background .16s ease}
.today-card:hover{transform:translateY(-1px);border-color:#efc2b8;background:#fffaf8}
.today-card span,.smart-title span{display:block;color:#8e817b;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}
.today-card strong{display:block;margin-top:5px;font-size:15px;line-height:1.25}
.today-card small{display:block;margin-top:5px;color:#9a8f8a;font-size:11px;line-height:1.25}
.smart-panel{margin:12px 0 10px;padding:13px;border:1px solid #eee3de;border-radius:14px;background:linear-gradient(135deg,#fffdfb,#f8fbff);box-shadow:0 6px 16px rgba(61,38,31,.035)}
.smart-title{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:10px}
.smart-title small{color:#9a8f8a;font-size:10px;letter-spacing:0;text-transform:none;font-weight:600}
.smart-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.smart-actions button{border:1px solid #dfebe9;background:#f7fcfb;color:#4f6f70;border-radius:10px;padding:8px 9px;font-size:12px;font-weight:700;line-height:1.2;cursor:pointer;text-align:left;transition:transform .15s ease,border-color .15s ease,background .15s ease}
.smart-actions button:hover{transform:translateY(-1px);border-color:#b7d8d2;background:#effaf8}
.smart-preview .preview-card h2:after{content:" · черновик";color:#9a8f8a;font-size:13px;font-weight:600}
.risk-panel{display:grid;grid-template-columns:minmax(0,1fr) 64px;gap:8px 12px;margin:8px 0 12px;padding:12px 13px;border-radius:14px;border:1px solid #eadfdb;background:#fffaf8}
.risk-main span,.word-price span{display:block;color:#958983;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.9px}
.risk-main strong{display:block;margin-top:3px;color:#3d3734;font-size:15px;font-family:var(--font-heading)}
.risk-main small{display:block;margin-top:4px;color:#8f8580;font-size:11px;line-height:1.35}
.risk-score{display:grid;place-items:center;align-content:center;min-height:52px;border-radius:12px;background:#fff;border:1px solid #efe3de}
.risk-score b{color:#3d3734;font-size:16px;font-family:var(--font-heading)}
.risk-score small{color:#9a8f8a;font-size:10px}
.risk-panel ul{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.risk-panel li{padding:5px 8px;border-radius:999px;background:#fff;color:#776c67;font-size:11px;line-height:1.2}
.risk-ok{background:linear-gradient(135deg,#fbfff9,#fff);border-color:#ddebd8}.risk-ok .risk-main strong{color:#5f7f5b}.risk-ok li{background:#f3fbef}
.risk-mid{background:linear-gradient(135deg,#fffaf0,#fff);border-color:#f1dfbd}.risk-mid .risk-main strong{color:#9a7242}.risk-mid li{background:#fff4dc}
.risk-high{background:linear-gradient(135deg,#fff5f2,#fff);border-color:#efc9c0}.risk-high .risk-main strong{color:#c45e4b}.risk-high li{background:#ffebe6}
.word-price{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin:2px 0 10px;padding:11px 13px;border:1px dashed #e4d7d1;border-radius:13px;background:#fff}
.word-price strong{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:4px;color:#4c4541;font-size:13px;font-family:var(--font-heading)}
.word-price input{width:76px;margin:0;padding:5px 7px;border-radius:8px;text-align:center;font-size:13px}
.word-price small{display:block;margin-top:4px;color:#958983;font-size:11px;line-height:1.35}
.word-price em{display:block;margin-top:6px;color:#7d8b78;font-size:11px;line-height:1.35;font-style:normal}
.word-price>b{padding:8px 10px;border-radius:10px;background:#fff4ef;color:#b05d4d;font-size:14px;font-family:var(--font-heading);white-space:nowrap}
@media(max-width:700px){
  .today-screen{display:block}
  .today-head{align-items:flex-start;flex-direction:column}
  .today-open{width:100%}
  .today-cards{grid-template-columns:1fr}
  .smart-actions{grid-template-columns:1fr 1fr}
  .risk-panel,.word-price{grid-template-columns:1fr}
  .risk-score{display:flex;justify-content:space-between;min-height:0;padding:8px 10px}
  .word-price>b{justify-self:start}
}
@media(max-width:420px){.smart-actions{grid-template-columns:1fr}.smart-title{display:block}.smart-title small{margin-top:4px}}

/* Compact weekly status */
.week-status{margin:8px 0 12px;padding:9px 11px;border:1px solid #eee3de;border-radius:12px;background:#fffdfb;color:#6d625d;font-size:12px;line-height:1.35}
.week-risk{display:flex;align-items:center;gap:6px;min-width:0;color:#6d625d}
.week-risk i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#85a981;flex:0 0 8px}
.week-risk.risk-mid i{background:#d7a558}.week-risk.risk-high i{background:#d67a68}
.word-line{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:7px}
.word-line input{width:64px;margin:0;padding:4px 7px;border-radius:7px;font-size:12px;text-align:center}
.word-line b{color:#9f5b4c;font-family:var(--font-heading)}
.week-status>small{display:block;margin-top:5px;color:#9a8f8a;font-size:11px}
.smart-panel{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:8px 0 10px;padding:0;border:0;background:transparent;box-shadow:none}
.smart-panel>span{color:#9a8f8a;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.smart-panel button{border:1px solid #e5ded9;background:#fff;color:#6d625d;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:700;line-height:1;cursor:pointer;transition:.15s}
.smart-panel button:hover{border-color:#b7d8d2;background:#f7fcfb;color:#4f6f70}
@media(max-width:640px){.word-line input{width:58px}.smart-panel button{padding:7px 9px}}

/* Voice dictation */
.dictate-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;margin-top:7px;border:1px solid #dcebef;background:#f5fbff;color:#39728f;border-radius:999px;padding:7px 11px;font:700 12px/1 var(--font-heading);cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .15s}
.dictate-button:hover{background:#eaf7ff;border-color:#bcddec;color:#216382;transform:translateY(-1px)}
.dictate-button.recording{background:#fff0ec;border-color:#ffb7a9;color:#c44f3e;box-shadow:0 0 0 3px rgba(255,118,95,.1)}
.dictate-button.processing{background:#f7f4ff;border-color:#d6caef;color:#67528f;cursor:wait}
.dictate-button.fallback{background:#fffaf4;border-color:#eadac8;color:#80684c}
.dictate-button.fallback:hover{background:#fff4e8;border-color:#dec4a6;color:#6f573a}
.dictate-inline{margin:-2px 0 8px}
.modal-card label .dictate-button{margin-bottom:2px}
@media(max-width:640px){.dictate-button{width:100%;padding:9px 11px}.dictate-inline{margin-bottom:10px}}

@media(max-width:640px){.toast{display:none!important}}

/* Softer heading weight across the whole app */
h1,h2,h3,h4,
.hero h1,
.auth h1,
.landing h1,
.panel h2,
.card h2,
.section-title h2,
.month-head h2,
.modal-card h2,
.week h3,
.quarter h3,
.today-head h2,
.smart-title b,
.progress-story strong,
.service-route span,
.service-timeline h2,
.service-shot-panel h2,
.screen-card h2,
.mechanics-grid h2,
.service-final h2,
.blog-hero h1,
.featured-post h2,
.blog-post h2,
.blog-note h2,
.admin-hero h1,
.admin-panel h2,
.support-hero-rich h1,
.support-form-card h2,
.support-mini-card h2,
.support-flow-card h2{font-weight:600!important}
/* Unified in-app header: keep public navigation stable, move account controls below */
#app .account-bar{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  width:100%;
  margin:-18px 0 12px;
  padding:0;
  font-size:13px;
}
#app .account-bar #userName{
  color:#6d625d;
  font-weight:600;
}
#app .account-bar .ghost,
#app .account-bar a,
#app .account-bar .import-link{
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 4px 12px rgba(63,35,28,.04);
}
#app .hero{
  margin-top:0;
}
header .public-nav{
  margin-left:auto;
}
header.site-header .nav-toggle,
header.site-header .nav-button{
  display:none;
}
header.site-header .nav{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin-left:auto;
}
header.site-header .nav a{
  font:700 13px/1 var(--font-heading);
  color:#706762;
  text-decoration:none;
}
header.site-header .nav a:hover{
  color:var(--coral-dark);
}
@media(max-width:800px){
  header.site-header{
    position:sticky;
    top:0;
    z-index:40;
    min-height:62px;
    padding:10px 16px;
    align-items:center;
    gap:10px;
  }
  header.site-header .brand{
    font-size:17px;
    line-height:1.1;
  }
  header.site-header .brand:before{
    width:30px;
    height:30px;
    border-radius:9px;
    font-size:17px;
  }
  header.site-header .nav-button{
    display:block;
    position:relative;
    width:38px;
    height:38px;
    margin-left:auto;
    border:1px solid #eaded9;
    border-radius:12px;
    background:#fff8f5;
    cursor:pointer;
    flex:0 0 auto;
  }
  header.site-header .nav-button span,
  header.site-header .nav-button:before,
  header.site-header .nav-button:after{
    content:"";
    position:absolute;
    left:9px;
    width:18px;
    height:2px;
    border-radius:99px;
    background:var(--coral-dark);
    transition:.18s;
    transform-origin:center;
  }
  header.site-header .nav-button:before{top:13px}
  header.site-header .nav-button span{top:18px}
  header.site-header .nav-button:after{top:23px}
  header.site-header .nav-toggle:checked + .nav-button span{opacity:0}
  header.site-header .nav-toggle:checked + .nav-button:before{
    top:18px;
    transform:rotate(45deg);
  }
  header.site-header .nav-toggle:checked + .nav-button:after{
    top:18px;
    transform:rotate(-45deg);
  }
  header.site-header .nav{
    position:absolute;
    left:16px;
    right:16px;
    top:calc(100% + 8px);
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:8px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 14px 34px rgba(63,35,28,.12);
  }
  header.site-header .nav-toggle:checked ~ .nav{
    display:flex;
  }
  header.site-header .nav a{
    display:block;
    padding:12px 13px;
    border-radius:10px;
    font-size:13px;
  }
  header.site-header .nav a:hover{
    background:var(--blush);
  }
}
.admin-menu-button{
  border:1px solid #dfeceb!important;
  background:#f6fbfa!important;
  color:#4f7470!important;
}
.admin-modal-card{
  width:min(860px,100%);
}
.admin-tabs{
  display:flex;
  gap:8px;
  margin:8px 0 14px;
}
.admin-tabs button{
  border:1px solid #e8ddd8;
  background:#fff;
  color:#6d625d;
  border-radius:999px;
  padding:8px 13px;
  font:700 13px/1 var(--font-heading);
  cursor:pointer;
}
.admin-tabs button.active{
  border-color:#b9d8d3;
  background:#f1fbf9;
  color:#426c68;
}
.admin-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:0 0 14px;
}
.admin-summary article{
  border:1px solid #efe5df;
  border-radius:14px;
  background:#fffdfb;
  padding:12px;
}
.admin-summary b{
  display:block;
  color:#3d3734;
  font:600 22px/1 var(--font-heading);
}
.admin-summary span{
  display:block;
  margin-top:5px;
  color:#8d827d;
  font-size:12px;
}
.admin-users-list{
  display:grid;
  gap:9px;
}
.admin-user-card{
  border:1px solid #eee3de;
  border-radius:16px;
  background:#fff;
  padding:13px;
}
.admin-user-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.admin-user-head strong{
  display:block;
  color:#3d3734;
  font:600 15px/1.25 var(--font-heading);
}
.admin-user-head span{
  display:block;
  margin-top:3px;
  color:#918782;
  font-size:12px;
}
.admin-user-head small{
  flex:0 0 auto;
  color:#6f8d87;
  background:#eff8f6;
  border-radius:999px;
  padding:5px 8px;
  font-size:11px;
}
.admin-user-progress{
  height:7px;
  margin:11px 0 9px;
  overflow:hidden;
  border-radius:999px;
  background:#f1e9e5;
}
.admin-user-progress i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#9fb3c8,#a8b7a0,#d99283);
}
.admin-user-stats{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.admin-user-stats span{
  border-radius:999px;
  background:#f8f6f0;
  color:#746a65;
  padding:5px 8px;
  font-size:11px;
}
.muted{
  color:#8d827d;
}
@media(max-width:800px){
  #app .account-bar{
    justify-content:flex-start;
    margin:-8px 0 14px;
    gap:8px;
    overflow-x:auto;
    padding-bottom:2px;
  }
  #app .account-bar #userName{
    display:inline;
    white-space:nowrap;
  }
  #app .account-bar .ghost,
  #app .account-bar a,
  #app .account-bar .import-link{
    display:inline-flex;
    flex:0 0 auto;
    padding:8px 11px;
    white-space:nowrap;
  }
}
@media(max-width:700px){
  .admin-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .admin-user-head{
    display:block;
  }
  .admin-user-head small{
    display:inline-block;
    margin-top:8px;
  }
}

/* Dreams and wishes */
.dreams-panel{margin:0 0 22px;padding:22px 24px}.dreams-panel .panel-title{align-items:flex-start;gap:14px}.dreams-panel h2{font-size:24px;margin:0 0 7px;font-weight:600}.dreams-panel p{margin:0;color:var(--muted);line-height:1.55;font-size:14px}.dreams-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:#fff8f5;border:1px solid #f0dfd9;color:var(--coral);font-size:20px}.dreams-list{display:grid;gap:8px;margin-top:16px}.dreams-active{display:grid;gap:5px}.dream-row{display:grid;grid-template-columns:18px minmax(220px,1fr) 132px 108px;gap:9px;align-items:center;margin:0;padding:5px 7px;border-radius:9px;color:#333;transition:.15s}.dream-row:hover{background:rgba(255,118,95,.045)}.dream-row:focus-within{background:#fff;box-shadow:0 0 0 2px rgba(255,118,95,.12)}.dream-row[data-dream-draft="true"]{margin-top:5px;border:1px dashed #eaded9;background:transparent}.dream-row.done .dream-text{text-decoration:line-through;color:#aaa}.dream-check{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;margin:0;border:1.5px solid #cfc5c1;border-radius:50%;background:#fff;display:grid;place-items:center;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.dream-check:hover{border-color:var(--coral);transform:scale(1.06)}.dream-check:checked{border-color:var(--coral);background:var(--coral)}.dream-check:checked:after{content:"✓";color:#fff;font-size:12px;font-weight:800;line-height:1}.dream-check:disabled{cursor:default;border-color:#ddd4d0;background:#faf7f5;opacity:.7}.dream-text,.dream-category,.dream-to-goal{margin:0;border-color:transparent;background:transparent;padding:8px 9px;border-radius:8px;font-size:14px;line-height:1.35}.dream-text:focus,.dream-category:focus,.dream-to-goal:focus{background:#fff;border-color:#efd3cb;box-shadow:none}.dream-category,.dream-to-goal{border-color:#eee5e2;background:#fffdfc;color:#706762;font-size:13px}.dream-to-goal.muted{border:1px solid #eee5e2;background:#fffdfc;border-radius:8px;padding:8px 9px;font-size:13px;color:#aaa;text-align:center}.dreams-done{margin-top:8px;border-top:1px solid #f0e7e2;padding-top:9px}.dreams-done summary{cursor:pointer;color:#8a817c;font-size:13px;margin-bottom:7px}.dreams-done .dream-row{opacity:.72}
@media(max-width:800px){.dreams-panel{padding:18px}.dream-row{grid-template-columns:18px minmax(0,1fr);grid-template-areas:"check text" ". category" ". target";gap:7px}.dream-check{grid-area:check}.dream-text{grid-area:text}.dream-category{grid-area:category}.dream-to-goal{grid-area:target}.dream-category,.dream-to-goal{width:100%}}

/* Dreams section: same calm pattern as annual goals */
.dreams-section{margin:0 0 24px}.dreams-section summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 20px;box-shadow:0 4px 16px rgba(61,38,31,.045);font:600 18px/1.2 Montserrat,Arial,sans-serif;color:var(--ink)}.dreams-section summary::-webkit-details-marker{display:none}.dreams-section summary:after{content:"+";display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--blush-2);color:var(--coral);font:600 18px/1 Montserrat,Arial,sans-serif}.dreams-section[open] summary{border-radius:16px 16px 10px 10px}.dreams-section[open] summary:after{content:"−"}.dreams-section summary small{margin-left:auto;font-family:Roboto,Arial,sans-serif;font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted)}.dreams-panel{margin:10px 0 0;padding:22px 24px}.dreams-panel .panel-title{display:flex;justify-content:space-between;align-items:flex-start}.dreams-panel h2{font-size:25px;font-weight:600;margin:7px 0 8px}.dreams-panel p{font-size:13px;line-height:1.5}.dreams-icon{display:none}.dreams-list{margin-top:10px}.dream-row,.dream-row.goal-row{grid-template-columns:18px minmax(0,1fr);gap:9px;padding:5px 7px;border:0;border-radius:8px;grid-template-areas:none}.dream-row[data-dream-draft="true"]{border:1px dashed #eaded9;background:transparent}.dream-row:hover{background:rgba(255,118,95,.045)}.dream-row:focus-within{background:#fff;box-shadow:0 0 0 2px rgba(255,118,95,.12)}.dream-row .dream-text{grid-area:auto;margin:0;border:0!important;background:transparent!important;box-shadow:none!important;padding:6px 0;font-size:14px;line-height:1.42}.dream-row .dream-check{grid-area:auto}.dreams-done{border-top:0;margin-top:8px;padding-top:0}.dreams-done summary{box-shadow:none;border:0;background:transparent;padding:8px 7px;border-radius:8px;font:400 13px/1.2 Roboto,Arial,sans-serif;color:#8a817c}.dreams-done summary:after{display:none}.dreams-done .dream-row{opacity:.72}
@media(max-width:800px){.dreams-section summary{padding:14px 16px;font-size:16px}.dreams-section summary small{font-size:12px}.dreams-panel{padding:18px}.dream-row,.dream-row.goal-row{grid-template-columns:18px minmax(0,1fr);grid-template-areas:none}}

/* Softer dreams layout */
.dreams-section summary{background:transparent!important;border:0!important;box-shadow:none!important;padding:8px 2px 12px!important;border-radius:0!important}.dreams-section[open] summary{border-radius:0!important}.dreams-section summary:after{background:#fff;border:1px solid #eaded9;width:24px;height:24px;font-size:16px}.dreams-panel{margin:0 0 22px!important}.dreams-panel p{line-height:1.35!important}.dreams-list{margin-top:6px!important}.dream-row,.dream-row.goal-row{grid-template-columns:18px minmax(0,1fr) 88px!important;gap:8px!important;min-height:28px!important;padding:3px 6px!important;line-height:1.25!important}.dream-row .dream-text{min-height:0!important;padding:4px 0!important;line-height:1.25!important}.dream-to-goal{margin:0!important;padding:5px 6px!important;border:0!important;background:transparent!important;color:#8a817c!important;font-size:12px!important;line-height:1.2!important;box-shadow:none!important}.dream-to-goal:hover,.dream-to-goal:focus{background:#fff8f5!important;color:var(--coral-dark)!important}.dream-to-goal.muted{text-align:right!important;border:0!important;background:transparent!important;color:#b8aca7!important;padding:5px 0!important}.dreams-done summary{padding:5px 6px!important}.dreams-done{margin-top:4px!important}
@media(max-width:800px){.dream-row,.dream-row.goal-row{grid-template-columns:18px minmax(0,1fr) 78px!important;grid-template-areas:none!important}.dream-to-goal{font-size:11px!important;padding:5px 2px!important}.dreams-section summary{padding-top:4px!important}}

/* Separate dreams page */
body.dreams-view #app > :not(#account):not(#dreamsPage),body.library-view #app > :not(#account):not(#libraryPage){display:none!important}.dreams-nav-button{margin-right:6px}.dreams-page{padding:8px 0 60px}.dreams-page-head{display:grid;grid-template-columns:minmax(0,760px);gap:0;align-items:start;margin:0 0 28px}.dreams-page-head h1{font-size:38px;line-height:1.1;letter-spacing:-.8px;margin:8px 0 12px;font-weight:600}.dreams-page-head p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.55}.dreams-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.dream-category-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 18px 14px;box-shadow:0 4px 16px rgba(61,38,31,.045)}.dream-category-head{display:flex;align-items:center;gap:12px;margin:0 0 10px}.dream-category-head>span{display:grid;place-items:center;width:36px;height:36px;border-radius:13px;background:linear-gradient(135deg,#fff,#fff1ec);border:1px solid #f0d8d0;color:var(--coral);font:600 18px/1 Montserrat,Arial,sans-serif}.dream-category-head h2{font-size:18px;line-height:1.2;margin:0 0 3px;font-weight:600}.dream-category-head small{font-size:11px;letter-spacing:.3px;text-transform:none;font-weight:400;color:var(--muted)}.dream-category-card .dreams-active{gap:1px}.dream-category-card .dream-row,.dream-category-card .dream-row.goal-row{grid-template-columns:18px minmax(0,1fr) 78px!important;padding:2px 4px!important;gap:8px!important}.dream-category-card .dream-row:hover{background:rgba(255,118,95,.04)}.dream-category-card .dream-row:focus-within{background:transparent!important;box-shadow:none!important}.dream-category-card .dream-text:focus,.dream-category-card .library-text:focus{background:transparent!important;border-color:transparent!important;box-shadow:none!important}.dream-category-card .dream-text,.dream-category-card .library-text{line-height:1.18!important;padding:3px 0!important}.dream-category-card .dream-to-goal{opacity:.74}.dream-category-card .dream-to-goal:hover,.dream-category-card .dream-to-goal:focus{opacity:1;background:#fff8f5!important;border-radius:7px}.dreams-done-card{grid-column:1/-1}.dreams-done-card .dreams-done{display:grid;gap:2px}.dreams-done-card .dreams-done summary{font-size:14px;color:#706762;margin-bottom:4px}
@media(max-width:900px){.dreams-page-head{grid-template-columns:1fr;gap:14px}.dreams-page-head .ghost{justify-self:start}.dreams-grid{grid-template-columns:1fr}.dreams-page-head h1{font-size:32px}}
@media(max-width:640px){.dreams-nav-button{flex:1}.dreams-page{padding-top:0}.dream-category-card{padding:16px 14px;border-radius:14px}.dream-category-card .dream-row,.dream-category-card .dream-row.goal-row{grid-template-columns:18px minmax(0,1fr) 68px!important}.dreams-page-head h1{font-size:29px}.dreams-page-head p:not(.eyebrow){font-size:14px}}

/* Nicer dream-to-goal control */
.dream-category-card .dream-to-goal{height:26px!important;appearance:none;-webkit-appearance:none;border:1px solid #eaded9!important;background:#f8f6f0!important;color:#5f5752!important;border-radius:999px!important;padding:4px 18px 4px 10px!important;font-size:12px!important;font-weight:400!important;line-height:1!important;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#8a817c 50%),linear-gradient(135deg,#8a817c 50%,transparent 50%)!important;background-position:calc(100% - 11px) 10px,calc(100% - 7px) 10px!important;background-size:4px 4px,4px 4px!important;background-repeat:no-repeat!important}.dream-category-card .dream-to-goal:hover{background-color:#fff8f5!important;border-color:#e5cdc5!important;color:#3f3936!important}.dream-category-card .dream-to-goal:focus{outline:none!important;box-shadow:none!important;background-color:#fff!important;border-color:#e5cdc5!important;color:#3f3936!important}.dream-category-card .dream-to-goal.muted{display:inline-flex;align-items:center;justify-content:center;height:26px!important;border:1px solid #f0e7e2!important;background:#faf8f5!important;border-radius:999px!important;color:#9a908b!important;padding:4px 10px!important;background-image:none!important}

/* Dreams: long text should wrap and grow down, like goal textareas */
.dream-row textarea.dream-text{
  width:100%;
  min-width:0;
  min-height:24px!important;
  height:auto;
  resize:none;
  overflow:hidden;
  white-space:pre-wrap;
  word-break:break-word;
  overflow-wrap:anywhere;
  font-family:inherit;
}

.dream-category-card .dream-row,
.dream-category-card .dream-row.goal-row{
  align-items:start!important;
}

.dream-category-card .dream-check,
.dream-category-card .dream-to-goal{
  margin-top:3px!important;
}

/* Dreams: final mobile polish */
@media(max-width:720px){
  body.dreams-view #app{
    padding-top:12px;
  }

  body.dreams-view #account.account-bar{
    margin:0 0 16px;
    padding:0 0 6px;
    gap:7px;
  }

  body.dreams-view #account.account-bar #userName{
    flex:0 0 100%;
    color:#7d726d;
    font-size:12px;
  }

  body.dreams-view #account.account-bar .ghost,
  body.dreams-view #account.account-bar button,
  body.dreams-view #account.account-bar a{
    min-height:34px;
    padding:8px 10px;
    font-size:12px;
  }

  .dreams-page{
    padding:0 0 42px;
  }

  .dreams-page-head{
    display:block;
    margin:0 0 18px;
  }

  .dreams-page-head .ghost{
    margin:0 0 14px;
    padding:8px 0;
    background:transparent;
    border:0;
    color:#6f635e;
  }

  .dreams-page-head .eyebrow{
    margin-bottom:6px;
    font-size:10px;
  }

  .dreams-page-head h1{
    max-width:340px;
    margin:0 0 8px;
    font-size:25px;
    line-height:1.13;
    letter-spacing:0;
  }

  .dreams-page-head p:not(.eyebrow){
    max-width:360px;
    font-size:13px;
    line-height:1.45;
  }

  .dreams-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }

  .dream-category-card{
    padding:13px 12px 11px;
    border-radius:12px;
    box-shadow:0 2px 10px rgba(61,38,31,.035);
  }

  .dream-category-head{
    gap:9px;
    margin-bottom:7px;
  }

  .dream-category-head>span{
    width:30px;
    height:30px;
    border-radius:10px;
    font-size:15px;
  }

  .dream-category-head h2{
    font-size:15px;
    line-height:1.15;
  }

  .dream-category-head small{
    font-size:10px;
  }

  .dream-category-card .dreams-active{
    gap:4px;
  }

  .dream-category-card .dream-row,
  .dream-category-card .dream-row.goal-row{
    display:grid;
    grid-template-columns:18px minmax(0,1fr)!important;
    grid-template-areas:
      "check text";
    gap:4px 8px!important;
    min-height:0!important;
    padding:5px 2px!important;
  }

  .dream-category-card .dream-row[data-dream-draft="true"],
  .dream-category-card .dream-row.goal-row[data-dream-draft="true"]{
    display:block;
    margin-top:8px;
    padding:8px 10px!important;
    border:1px solid #f0e4df!important;
    border-radius:10px!important;
    background:#fffaf8!important;
  }

  .dream-category-card .dream-check{
    grid-area:check;
    margin-top:5px!important;
  }

  .dream-category-card .dream-row[data-dream-draft="true"] .dream-check{
    display:none;
  }

  .dream-category-card textarea.dream-text{
    grid-area:text;
    min-height:28px!important;
    padding:3px 0!important;
    font-size:14px!important;
    line-height:1.3!important;
  }

  .dream-category-card .dream-row[data-dream-draft="true"] textarea.dream-text{
    display:block;
    width:100%;
    min-height:26px!important;
    padding:0!important;
    color:#3f3936!important;
  }

  .dream-category-card textarea.dream-text::placeholder{
    color:#8d827d;
    opacity:1;
  }

  .dream-category-card .dream-to-goal{
    display:none!important;
  }

  .dream-category-card .dream-to-goal.muted{
    display:none!important;
  }

  .dream-row[data-dream-draft="true"]{
    margin-top:8px;
    padding-top:8px!important;
  }
}

/* 2026-09 strict editorial workspace - inspired by the approved reference */
body.app-view{
  --workspace-red:#ff3b1f;
  --workspace-red-soft:#fff3f0;
  --workspace-ink:#15181d;
  --workspace-muted:#69717e;
  --workspace-line:#d9dee7;
  --workspace-paper:#fff;
  background:#fff;
  color:var(--workspace-ink);
  font-family:"Segoe UI",Roboto,Arial,sans-serif;
  font-weight:300;
}
body.app-view .site-header{
  border-bottom:1px solid #d8dde5;
  box-shadow:none;
}
body.app-view #app:before{display:none}
body.app-view .account-bar{
  margin-top:18px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
body.app-view .account-bar>span,
body.app-view .account a,
body.app-view .account .ghost{
  color:#30343b;
  font-weight:400;
}
body.app-view .account a,
body.app-view .account .ghost{
  min-height:34px;
  border:1px solid #d8dde5;
  border-radius:6px;
  background:#fff;
}
body.app-view .account a:hover,
body.app-view .account .ghost:hover{border-color:var(--workspace-red);background:#fff;color:var(--workspace-red)}
body.app-view .hero{
  margin:26px 0 34px;
  padding:30px 0 26px;
  overflow:visible;
  border:0;
  border-bottom:1px solid #d8dde5;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
body.app-view .hero:after{display:none}
body.app-view .hero h1{
  margin:10px 0 9px;
  color:#15181d;
  font-family:"Segoe UI",Roboto,Arial,sans-serif;
  font-size:40px;
  font-weight:300;
  letter-spacing:-.7px;
}
body.app-view .hero p{color:#5e6672;font-weight:300}
body.app-view .hero .eyebrow,
body.app-view .eyebrow,
body.app-view small{color:var(--workspace-red);font-weight:400;letter-spacing:.7px}
body.app-view .today-badge,
body.app-view .hero select{
  min-height:58px;
  border:1px solid #d8dde5;
  border-radius:7px;
  background:#fff;
  box-shadow:none;
}
body.app-view .today-badge strong{font-weight:400}
body.app-view .card,
body.app-view .panel,
body.app-view .week{
  border:1px solid var(--workspace-line);
  border-radius:8px;
  background:#fff;
  box-shadow:none;
}
body.app-view .progress-panel{
  padding:24px 28px 28px;
  border-color:#cfd6df;
  background:#fff;
  box-shadow:none;
}
body.app-view .progress-panel:before{display:none}
body.app-view .progress-panel .panel-title{
  margin:-2px 0 18px;
  padding-bottom:16px;
  border-bottom:1px solid #d8dde5;
}
body.app-view .progress-overview.compact,
body.app-view .progress-metrics.compact .progress-card{
  border:0;
  border-right:1px solid #d8dde5;
  border-radius:0!important;
  background:#fff;
  box-shadow:none;
}
body.app-view .progress-metrics.compact .progress-card:last-child{border-right:0}
body.app-view .progress-orb{background:conic-gradient(var(--workspace-red) calc(var(--value)*1%),#eceff3 0)}
body.app-view .progress-card strong,
body.app-view .progress-card b,
body.app-view .progress-story strong{font-weight:400!important}
body.app-view .progress-card.tone-1 .progress-bar i,
body.app-view .progress-card.tone-2 .progress-bar i,
body.app-view .progress-card.tone-3 .progress-bar i{background:var(--workspace-red)}
body.app-view .annual{
  padding:28px;
  overflow:hidden;
  border:1px solid #cfd6df;
  border-left:3px solid var(--workspace-red);
  border-radius:8px;
}
body.app-view .annual:after{display:none}
body.app-view .dot{
  border-radius:5px;
  background:var(--workspace-red);
  box-shadow:none;
}
body.app-view .panel h2,
body.app-view .section-title h2,
body.app-view .month-head h2,
body.app-view .week h3,
body.app-view .quarter h3{
  color:#171a20;
  font-family:"Segoe UI",Roboto,Arial,sans-serif;
  font-weight:300!important;
}
body.app-view .panel h2,
body.app-view .section-title h2,
body.app-view .month-head h2{font-size:25px}
body.app-view .section-title{
  margin-top:64px;
  padding:0 0 15px 48px;
  border-bottom:1px solid #d8dde5;
}
body.app-view .section-title:before{
  width:36px;
  height:36px;
  border:1px solid #d8dde5;
  border-radius:6px;
  background:#fff;
  box-shadow:none;
}
body.app-view .section-title:after{transform:scale(.82);transform-origin:top left}
body.app-view .quarter-tabs,
body.app-view .week-tabs{gap:0;margin-bottom:0;border:1px solid #cfd6df;border-radius:8px 8px 0 0;overflow:hidden}
body.app-view .quarter-tab,
body.app-view .week-tab{
  min-height:58px;
  border:0;
  border-right:1px solid #d8dde5;
  border-radius:0;
  background:#fff;
  box-shadow:none;
  color:#30343b;
  font-weight:400;
  transform:none;
}
body.app-view .quarter-tab:last-child,
body.app-view .week-tab:last-child{border-right:0}
body.app-view .quarter-tab:hover,
body.app-view .week-tab:hover{border-color:#d8dde5;background:#fafbfc;color:var(--workspace-red);transform:none}
body.app-view .quarter-tab.active,
body.app-view .week-tab.active{
  border-color:#d8dde5;
  background:var(--workspace-red-soft);
  color:var(--workspace-red);
  box-shadow:inset 0 -3px 0 var(--workspace-red);
}
body.app-view .week-tab.active strong{background:var(--workspace-red)}
body.app-view .active-quarter,
body.app-view .active-week{
  padding:25px 28px;
  border:1px solid #cfd6df;
  border-top:0;
  border-radius:0 0 8px 8px;
}
body.app-view .month-head{
  margin-bottom:0;
  padding:0 0 16px;
  border-bottom:1px solid #cfd6df;
}
body.app-view .calendar{
  border-color:#cfd6df;
  border-radius:0 0 8px 8px;
  box-shadow:none;
}
body.app-view .calendar div,
body.app-view .calendar button{border-color:#e0e4ea;background:#fff;font-weight:400}
body.app-view .calendar .weekday{background:#f5f6f8;color:#535b67;font-weight:400;letter-spacing:.4px}
body.app-view .calendar button:hover{background:#fff5f2;color:var(--workspace-red)}
body.app-view .calendar .empty{background:#fafbfc}
body.app-view .calendar .has-entry{background:#fff0ec;color:#d9381f}
body.app-view .calendar .has-photo{overflow:hidden;isolation:isolate;box-shadow:inset 0 0 0 2px rgba(255,59,31,.48)}
body.app-view .calendar .calendar-day-photo{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);object-fit:cover;border-radius:4px;z-index:0;opacity:.9}
body.app-view .calendar .has-photo span{position:relative;z-index:1;display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:rgba(255,255,255,.92);color:#252a31;font-weight:600;box-shadow:0 1px 5px rgba(0,0,0,.16)}
body.app-view .calendar .outside-month.has-photo{opacity:.66}
body.app-view .calendar .has-photo.is-today{box-shadow:inset 0 0 0 3px #ff3b1f}
body.app-view .calendar .has-photo small,body.app-view .calendar .has-photo.is-today:before{z-index:1;background:rgba(255,255,255,.88);padding:2px 4px;border-radius:4px}
body.app-view .month-actions{display:flex;align-items:center;gap:9px}
body.app-view .month-actions .ghost{min-height:40px;padding:9px 13px}
body.app-view .calendar button{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:4px}
body.app-view .calendar button span{line-height:1}
body.app-view .calendar button small{color:#89919a;font-size:9px;font-weight:500;text-transform:uppercase;letter-spacing:.35px}
body.app-view .calendar .outside-month{background:#fafbfc;color:#9aa1aa}
body.app-view .calendar .outside-month:hover{background:#fff5f2;color:#d9381f}
body.app-view .calendar .outside-month.has-entry{background:#fff8f5;color:#d76a59}
body.app-view .calendar .is-today{box-shadow:inset 0 0 0 2px #ff3b1f;color:#d92f17;font-weight:600}
body.app-view .calendar .is-today:before{content:"Сегодня";position:absolute;right:6px;bottom:6px;color:#d92f17;font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.35px}
body.app-view input,
body.app-view textarea,
body.app-view select{
  border-color:#cfd6df;
  border-radius:6px;
  background:#fff;
  color:#242931;
  font-weight:300;
}
body.app-view input:focus,
body.app-view textarea:focus,
body.app-view select:focus{border-color:var(--workspace-red);box-shadow:0 0 0 2px rgba(255,59,31,.09)}
body.app-view .goal-row:hover{background:#fafbfc}
body.app-view .primary,
body.app-view .save{
  border-radius:5px;
  background:var(--workspace-red);
  box-shadow:none;
  font-weight:400;
}
body.app-view .primary:hover,
body.app-view .save:hover{background:#e92e13}
body.app-view .week-status{border-color:#d8dde5;border-radius:6px;background:#f7f8fa}

@media(max-width:760px){
  body.app-view .account-bar{margin-top:12px;border:0;border-radius:0}
  body.app-view .hero{padding:24px 0 22px;border-radius:0}
  body.app-view .hero h1{font-size:31px}
  body.app-view .progress-panel{padding:20px 17px}
  body.app-view .progress-overview.compact,
  body.app-view .progress-metrics.compact .progress-card{border-right:0;border-bottom:1px solid #d8dde5}
  body.app-view .progress-metrics.compact .progress-card:last-child{border-bottom:0}
  body.app-view .annual{padding:22px 18px}
  body.app-view .quarter-tabs,
  body.app-view .week-tabs{gap:0}
  body.app-view .active-quarter,
  body.app-view .active-week{padding:20px 17px}
}

@media(max-width:520px){
  body.app-view .hero{padding:22px 0 20px}
  body.app-view .hero h1{font-size:29px;line-height:1.08}
  body.app-view .card,
  body.app-view .panel,
  body.app-view .week{box-shadow:none}
  body.app-view .section-title{padding-left:43px}
}

@media(max-width:720px){
  body.dreams-view .dream-category-card label.dream-row.goal-row:not([data-dream-draft="true"]){
    grid-template-columns:18px minmax(0,1fr)!important;
    grid-template-areas:"check text"!important;
  }

  body.dreams-view .dream-category-card label.dream-row.goal-row:not([data-dream-draft="true"]) .dream-check{
    grid-column:1!important;
    grid-row:1!important;
  }

  body.dreams-view .dream-category-card label.dream-row.goal-row:not([data-dream-draft="true"]) textarea.dream-text{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    max-width:100%!important;
  }

  body.dreams-view .dream-category-card label.dream-row.goal-row .dream-to-goal{
    display:none!important;
  }
}

/* Final guard for the internal visual system. Keep this block last. */
.site-header .brand{gap:10px;color:#1b1e24;font-family:"Segoe UI",Roboto,Arial,sans-serif;font-size:18px;font-weight:400;letter-spacing:-.15px}
.site-header .brand:before{content:"";width:34px;height:34px;flex:0 0 34px;border-radius:8px;background:#ff3b1f url('/logo-mark.svg') center/34px 34px no-repeat;box-shadow:0 4px 12px rgba(255,59,31,.18)}
body.app-view .section-title-quarters:after{left:9px;top:9px;width:18px;height:18px;border-radius:0;background:linear-gradient(#ff3b1f,#ff3b1f) 0 0/7px 7px no-repeat,linear-gradient(#ff8b76,#ff8b76) 11px 0/7px 7px no-repeat,linear-gradient(#ff8b76,#ff8b76) 0 11px/7px 7px no-repeat,linear-gradient(#ff3b1f,#ff3b1f) 11px 11px/7px 7px no-repeat;transform:none}
body.app-view .section-title-weeks:before{border-color:#d8dde5;background:#fff;box-shadow:none}
body.app-view .section-title-weeks:after{left:9px;top:9px;width:18px;height:18px;border-radius:0;background:linear-gradient(#ff3b1f,#ff3b1f) 0 0/18px 3px no-repeat,linear-gradient(90deg,#ff3b1f 0 5px,transparent 5px 7px,#cbd1d9 7px 18px) 0 7px/18px 3px no-repeat,linear-gradient(90deg,#cbd1d9 0 9px,transparent 9px 11px,#ff8b76 11px 18px) 0 14px/18px 3px no-repeat;box-shadow:none;transform:none}
body.app-view .telegram-action,body.app-view .dictate-button{border:1px solid #d1d7df!important;border-radius:5px!important;background:#fff!important;color:#343941!important;box-shadow:none!important;font-family:"Segoe UI",Roboto,Arial,sans-serif!important;font-weight:400!important;transform:none!important}
body.app-view .telegram-action:before{color:#ff3b1f!important}
body.app-view .telegram-action:hover,body.app-view .dictate-button:hover{border-color:#ff3b1f!important;background:#fff5f2!important;color:#d92f17!important}
body.app-view .dictate-button.recording{border-color:#ff3b1f!important;background:#fff0ec!important;color:#d92f17!important}
body.app-view .dictate-button.processing{border-color:#e1b8af!important;background:#fff7f5!important;color:#9f3e30!important}
body.app-view .dictate-button.fallback{border-color:#d1d7df!important;background:#f7f8fa!important;color:#555d68!important}
body.app-view .modal{background:rgba(22,25,30,.48);backdrop-filter:blur(3px)}
body.app-view .modal-card{border:1px solid #cfd6df;border-radius:8px;background:#fff;box-shadow:0 24px 70px rgba(23,29,37,.2)}
body.app-view .modal-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;border-radius:8px 8px 0 0;background:#ff3b1f}
body.app-view .modal-card h2{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:300!important}
body.app-view .modal-card label{color:#343941;font-weight:400}
body.app-view .close{top:12px;right:13px;width:30px;height:30px;border:1px solid #d8dde5;border-radius:5px;color:#626a75;font:300 22px/26px "Segoe UI",Arial,sans-serif}
body.app-view .close:hover{border-color:#ff3b1f;background:#fff5f2;color:#d92f17}
@media(max-width:640px){.site-header .brand{font-size:16px}.site-header .brand:before{width:32px;height:32px;flex-basis:32px;background-size:32px 32px}body.app-view .section-title-quarters:after,body.app-view .section-title-weeks:after{left:7px;top:7px;transform:scale(.9);transform-origin:top left}body.app-view .modal-card{border-radius:8px}}

/* Stronger global navigation and clearer secondary actions */
.site-header .brand{font-weight:600}
.site-header .nav a{font-weight:400}
body.app-view .telegram-action,
body.app-view .dictate-button,
body.app-view .smart-panel button{
  border-color:#cfd4dc!important;
  background:#f1f3f5!important;
  color:#353a42!important;
}
body.app-view .telegram-action:hover,
body.app-view .dictate-button:hover,
body.app-view .smart-panel button:hover{
  border-color:#ff3b1f!important;
  background:#fff2ee!important;
  color:#d92f17!important;
}

/* Report preview: one clear primary action */
body.app-view #previewModal .preview-actions #confirmTelegram{border:1px solid #ff3b1f!important;background:#ff3b1f!important;color:#fff!important;box-shadow:0 8px 18px rgba(255,59,31,.16)!important}
body.app-view #previewModal .preview-actions #confirmTelegram:hover{background:#e92e13!important;border-color:#e92e13!important}
body.app-view #previewModal .preview-actions #savePreview{border:1px solid #cfd4dc!important;background:transparent!important;color:#353a42!important;box-shadow:none!important}
body.app-view #previewModal .preview-actions #savePreview:hover{border-color:#ff3b1f!important;background:#fff5f2!important;color:#d92f17!important}

/* Public home uses the same editorial system */
body:not(.app-view){background:#fff;color:#171a20}
body:not(.app-view) .landing{width:min(1156px,calc(100% - 32px));gap:44px;padding-top:58px}
body:not(.app-view) .landing h1{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:300!important;letter-spacing:-.8px;line-height:1.08}
body:not(.app-view) .landing-copy>p{color:#535b67;font-weight:300;line-height:1.6}
body:not(.app-view) .landing-side .card{
  padding:30px;
  border:1px solid #cfd6df;
  border-top:3px solid #ff3b1f;
  border-radius:8px;
  background:#fff;
  box-shadow:0 16px 36px rgba(24,30,40,.06);
}
body:not(.app-view) .landing-side .card h2{
  margin-bottom:24px;
  font-family:"Segoe UI",Roboto,Arial,sans-serif;
  font-weight:300!important;
  color:#171a20;
}
body:not(.app-view) .landing-side .card label{color:#434a55;font-weight:400}
body:not(.app-view) .landing-side .card input{
  min-height:46px;
  border:1px solid #cfd6df;
  border-radius:5px;
  background:#fff;
  box-shadow:none;
}
body:not(.app-view) .landing-side .card input:focus{
  border-color:#ff3b1f;
  box-shadow:0 0 0 3px rgba(255,59,31,.09);
}
body:not(.app-view) .landing-side .card .primary{
  min-height:46px;
  border-radius:5px;
  background:#ff3b1f;
  box-shadow:none;
  font-weight:500;
}
body:not(.app-view) .landing-side .card .primary:hover{background:#e92e13}
body:not(.app-view) .landing-side .card .link{color:#d92f17;font-weight:400}
body:not(.app-view) .landing-character{
  border:1px solid #d8dde5;
  border-radius:8px;
  background:#f7f8fa;
  box-shadow:none;
}
body:not(.app-view) .landing-character img{border-radius:7px 7px 0 0}
body:not(.app-view) .landing-character figcaption{border-top:1px solid #e1e5ea;background:#fff;color:#69717e;font-weight:300}
body:not(.app-view) .auth-card{border:1px solid #cfd6df;border-top:3px solid #ff3b1f;border-radius:8px;background:#fff;box-shadow:none}
body:not(.app-view) .auth-card h2{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:300!important}
body:not(.app-view) .auth-card input{border-color:#cfd6df;border-radius:5px;background:#fff}
body:not(.app-view) .hero-character{border:1px solid #d8dde5;border-radius:8px;background:#f7f8fa;box-shadow:none}
body:not(.app-view) .hero-character img{border-radius:5px}
body:not(.app-view) .seo-content article{border:1px solid #d8dde5;border-radius:8px;box-shadow:none}
body:not(.app-view) .seo-content h2{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:300!important}
.legal-footer{width:min(1156px,calc(100% - 32px))!important;box-sizing:border-box;margin:0 auto 34px!important;padding:20px 0 0!important;border-top:1px solid #d8dde5!important;background:transparent!important;color:#69717e!important;font:300 13px/1.55 "Segoe UI",Roboto,Arial,sans-serif!important}
.legal-footer a{color:#db321a!important;font-weight:500!important}
@media(max-width:760px){body:not(.app-view) .landing{width:min(100% - 24px,1156px);padding-top:34px}body:not(.app-view) .landing h1{font-size:34px;letter-spacing:0}body:not(.app-view) .landing-side .card{padding:22px 18px}.legal-footer{width:min(100% - 24px,1156px)!important}}
@media(max-width:520px){body:not(.app-view) .social-auth{gap:6px}body:not(.app-view) .social-auth-button{min-height:40px;padding:6px 5px;font-size:11px}body:not(.app-view) .social-auth-button b{width:21px;height:21px}body:not(.app-view) .auth-card-new{padding:20px 16px!important}}

/* Public home v4 - product story */
body:not(.app-view) main{max-width:none;padding:0 0 90px}
body:not(.app-view) .home-landing{display:block;width:min(1156px,calc(100% - 40px));min-height:0;margin:0 auto!important;padding:34px 0 0}
body:not(.app-view) .home-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.78fr);min-height:510px;border:1px solid #f1c9c0;border-left:3px solid #ff3b1f;border-radius:8px;background:linear-gradient(125deg,#fff4f0 0%,#fff9f7 54%,#f4f6f8 54%,#fff 100%);overflow:hidden}
body:not(.app-view) .home-hero-copy{align-self:center;padding:54px 48px}
body:not(.app-view) .home-hero h1{max-width:680px;margin:12px 0 20px;color:#171a20;font:300 clamp(38px,4.1vw,58px)/1.04 "Segoe UI",Roboto,Arial,sans-serif!important;letter-spacing:-1.6px}
body:not(.app-view) .home-hero .lead{max-width:650px;margin:0;color:#4f5762;font:300 17px/1.55 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-hero-actions{display:flex;align-items:center;gap:18px;margin-top:28px}
body:not(.app-view) .home-hero-actions .primary,body:not(.app-view) .home-final-cta .primary{min-height:44px;border-radius:5px;background:#ff3b1f;box-shadow:none;font-weight:500}
body:not(.app-view) .home-hero-actions a{color:#333a44;font-size:14px;text-decoration:none;border-bottom:1px solid #9da4ad;padding:4px 0}
body:not(.app-view) .home-hero-note{display:flex;align-items:center;gap:12px;margin-top:32px;color:#6b727c;font-size:12px}
body:not(.app-view) .home-hero-note b{padding:6px 9px;border-radius:4px;background:#fff;border:1px solid #f0cfc7;color:#d92f17;font-weight:500}
body:not(.app-view) .home-hero-visual{position:relative;min-width:0;margin:0;overflow:hidden}
body:not(.app-view) .home-hero-visual:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:#d8dde5;z-index:2}
body:not(.app-view) .home-hero-visual img{display:block;width:100%;height:100%;min-height:510px;object-fit:cover;object-position:48% center;filter:saturate(.92) contrast(.98)}
body:not(.app-view) .home-hero-visual figcaption{position:absolute;left:18px;bottom:18px;padding:8px 11px;border-radius:4px;background:#30353e;color:#fff;font-size:11px}
body:not(.app-view) .home-levels{display:grid;grid-template-columns:repeat(4,1fr);margin:18px 0 56px;border:1px solid #d8dde5;border-radius:7px;background:#fff;overflow:hidden}
body:not(.app-view) .home-levels span{display:flex;align-items:center;gap:12px;padding:18px 22px;border-right:1px solid #d8dde5;color:#343b45;font-size:14px}
body:not(.app-view) .home-levels span:last-child{border-right:0}
body:not(.app-view) .home-levels b{color:#ff3b1f;font-weight:500;font-size:11px}
body:not(.app-view) .home-signup{display:grid;grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr);gap:50px;align-items:start;margin:0 0 72px;padding:38px 42px;border:1px solid #d8dde5;border-left:3px solid #ff3b1f;border-radius:7px;background:#f6f7f9}
body:not(.app-view) .home-signup>div{padding-top:10px}
body:not(.app-view) .home-signup>div h2{margin:10px 0 14px;font:300 34px/1.15 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-signup>div p:last-child{max-width:480px;color:#5e6672;font:300 15px/1.6 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-signup .card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;margin:0;padding:24px;border:1px solid #cfd6df;border-top:3px solid #ff3b1f;border-radius:7px;background:#fff;box-shadow:none}
body:not(.app-view) .home-signup .card h2,body:not(.app-view) .home-signup .card .primary,body:not(.app-view) .home-signup .card .error,body:not(.app-view) .home-signup .card .link{grid-column:1/-1}
body:not(.app-view) .home-signup .card h2{font-size:25px}
body:not(.app-view) .home-signup .card label{margin:8px 0}
body:not(.app-view) .home-signup .auth-card-new{display:flex;flex-direction:column;gap:0}
body:not(.app-view) .auth-card-new .auth-intro{margin:0 0 10px;color:#66707c;font-size:13px;line-height:1.5}
body:not(.app-view) .auth-card-new .primary:disabled{cursor:wait;opacity:.65}
body:not(.app-view) .auth-divider{display:flex;align-items:center;gap:10px;margin:17px 0 12px;color:#818792;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
body:not(.app-view) .auth-divider:before,body:not(.app-view) .auth-divider:after{content:"";height:1px;flex:1;background:#e1e4e8}
body:not(.app-view) .social-auth{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body:not(.app-view) .social-auth-button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:7px 9px;border:1px solid #d5dbe3;border-radius:6px;background:#fff;color:#303741;font-size:13px;text-decoration:none;transition:border-color .15s,background .15s,transform .15s}
body:not(.app-view) .social-auth-button:hover{border-color:#aeb8c4;background:#f8fafc;transform:translateY(-1px)}
body:not(.app-view) .social-auth-button b{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;font-size:11px;color:#fff}
body:not(.app-view) .social-yandex b{background:#fc3f1d}
body:not(.app-view) .social-vk b{background:#0077ff;font-size:9px}
body:not(.app-view) .social-mail b{background:#168de2;font-size:14px}
body:not(.app-view) .auth-card-new .link{margin-top:14px}
body:not(.app-view) .auth-legal{margin:12px 0 0;color:#858b94;font-size:10px;line-height:1.45;text-align:center}
body:not(.app-view) .auth-legal a{color:#616a76}
body:not(.app-view) .home-story{display:grid;grid-template-columns:1fr;gap:68px;margin:0}
body:not(.app-view) .home-story>article{padding:0;border:0;border-radius:0;background:#fff;box-shadow:none}
body:not(.app-view) .home-feature{display:grid;grid-template-columns:minmax(0,.82fr) minmax(480px,1.18fr);gap:48px;align-items:center}
body:not(.app-view) .home-feature-reverse{grid-template-columns:minmax(480px,1.18fr) minmax(0,.82fr)}
body:not(.app-view) .home-feature-copy{padding-left:20px;border-left:2px solid #ff3b1f}
body:not(.app-view) .home-feature h2,body:not(.app-view) .home-process h2,body:not(.app-view) .home-final-cta h2{margin:10px 0 18px;color:#171a20;font:300 34px/1.14 "Segoe UI",Roboto,Arial,sans-serif!important}
body:not(.app-view) .home-feature-copy>p:not(.eyebrow){color:#555e69;font:300 15px/1.62 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-feature figure{min-width:0;margin:0;border:1px solid #d8dde5;border-radius:7px;background:#f4f6f8;overflow:hidden}
body:not(.app-view) .home-feature figure img{display:block;width:100%;height:420px;object-fit:cover;object-position:top center;background:#fff}
body:not(.app-view) .home-feature-main figure img{object-fit:contain;padding:10px}
body:not(.app-view) .home-feature figure figcaption{padding:12px 15px;border-top:1px solid #d8dde5;background:#fff;color:#737b86;font-size:12px}
body:not(.app-view) .home-checks{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:22px 0 0;padding:1px;list-style:none;background:#d8dde5;border:1px solid #d8dde5;border-radius:5px;overflow:hidden}
body:not(.app-view) .home-checks li{position:relative;margin:0;padding:13px 12px 13px 32px;background:#fff;color:#353c46;font-size:13px}
body:not(.app-view) .home-checks li:before{content:"";position:absolute;left:13px;top:17px;width:7px;height:7px;border-radius:50%;background:#ff3b1f}
body:not(.app-view) .home-process{padding:38px 0!important;background:#f5f6f8!important}
body:not(.app-view) .home-process .home-section-head{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:end;padding:0 28px 24px}
body:not(.app-view) .home-section-head>p{color:#67707b;font:300 14px/1.55 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-process ol{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0 28px;list-style:none}
body:not(.app-view) .home-process li{min-height:190px;padding:22px;border:1px solid #d8dde5;border-right:0;background:#fff}
body:not(.app-view) .home-process li:last-child{border-right:1px solid #d8dde5}
body:not(.app-view) .home-process li>b{display:block;color:#ff3b1f;font-weight:500;font-size:11px}
body:not(.app-view) .home-process h3{margin:34px 0 9px;font:400 17px/1.25 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-process li p{margin:0;color:#69717c;font:300 13px/1.5 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-stat{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;margin-top:24px;padding:16px;border:1px solid #f1c9c0;border-radius:5px;background:#fff5f2}
body:not(.app-view) .home-stat b{color:#ff3b1f;font:400 24px/1 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-stat span{color:#656d78;font-size:12px;line-height:1.4}
body:not(.app-view) .home-feature .benefit-grid{grid-template-columns:repeat(2,1fr);gap:1px;margin-top:22px;padding:1px;background:#d8dde5;border:1px solid #d8dde5;border-radius:5px}
body:not(.app-view) .home-feature .benefit-grid span{border:0;border-radius:0;background:#fff;color:#3f4650;font-weight:400;text-align:left}
body:not(.app-view) .home-final-cta{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(260px,.7fr) auto;gap:34px;align-items:center;padding:34px 38px!important;border:1px solid #f1c9c0!important;border-left:3px solid #ff3b1f!important;border-radius:7px!important;background:#fff4f0!important}
body:not(.app-view) .home-final-cta h2{margin-bottom:8px}
body:not(.app-view) .home-final-cta p{margin:0;color:#656d78;font-weight:300}
body:not(.app-view) .home-final-cta ul{margin:0;padding-left:18px;color:#505864;line-height:1.8}
body:not(.app-view) .home-final-cta .primary{white-space:nowrap}
body:not(.app-view) .home-tools-bridge{display:grid!important;gap:24px;padding:36px 0!important;border:0!important;border-top:1px solid #d8dde5!important;border-bottom:1px solid #d8dde5!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
body:not(.app-view) .home-tools-bridge .home-section-head{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,.9fr);gap:52px;align-items:end}
body:not(.app-view) .home-tools-bridge h2{margin:10px 0 0;color:#171a20;font:300 34px/1.14 "Segoe UI",Roboto,Arial,sans-serif!important}
body:not(.app-view) .home-tools-bridge p:not(.eyebrow){margin:0;color:#555e69;font:300 15px/1.62 "Segoe UI",Roboto,Arial,sans-serif}
body:not(.app-view) .home-tools-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:1px;background:#d8dde5;border:1px solid #d8dde5;border-radius:7px;overflow:hidden}
body:not(.app-view) .home-tools-grid a{display:grid;grid-template-rows:auto auto 1fr;gap:9px;min-width:0;padding:16px;background:#fff;color:#20242b;text-decoration:none}
body:not(.app-view) .home-tools-grid a:hover{background:#fff8f6}
body:not(.app-view) .home-tools-grid span{display:block;width:100%;aspect-ratio:16/9;border:1px solid #d8dde5;border-radius:5px;overflow:hidden;background:#f7f8fa}
body:not(.app-view) .home-tools-grid img{display:block;width:100%;height:100%;object-fit:cover}
body:not(.app-view) .home-tools-grid b{font:400 17px/1.25 "Segoe UI",Roboto,Arial,sans-serif;color:#171a20}
body:not(.app-view) .home-tools-grid small{color:#626b77;font:300 13px/1.45 "Segoe UI",Roboto,Arial,sans-serif;letter-spacing:0;text-transform:none}
body:not(.app-view) .home-tools-link{justify-self:start;color:#d92f17;font:500 15px/1.2 "Segoe UI",Roboto,Arial,sans-serif;text-decoration:none}
body:not(.app-view) .home-tools-link:hover{text-decoration:underline}
@media(max-width:900px){body:not(.app-view) .home-hero{grid-template-columns:1fr}body:not(.app-view) .home-hero-visual{height:420px}body:not(.app-view) .home-hero-visual img{min-height:0;height:100%}body:not(.app-view) .home-signup,body:not(.app-view) .home-feature,body:not(.app-view) .home-feature-reverse{grid-template-columns:1fr}body:not(.app-view) .home-feature-reverse figure{order:2}body:not(.app-view) .home-process ol{grid-template-columns:1fr 1fr}body:not(.app-view) .home-process li:nth-child(2){border-right:1px solid #d8dde5}body:not(.app-view) .home-final-cta{grid-template-columns:1fr 1fr}body:not(.app-view) .home-final-cta .primary{width:100%}}
@media(max-width:900px){body:not(.app-view) .home-tools-bridge .home-section-head{grid-template-columns:1fr;gap:8px}body:not(.app-view) .home-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){body:not(.app-view) .home-landing{width:min(100% - 24px,1156px);padding-top:18px}body:not(.app-view) .home-hero{min-height:0;background:#fff5f2}body:not(.app-view) .home-hero-copy{padding:34px 22px}body:not(.app-view) .home-hero h1{font-size:34px!important;letter-spacing:-.5px}body:not(.app-view) .home-hero .lead{font-size:15px}body:not(.app-view) .home-hero-actions{align-items:flex-start;flex-direction:column}body:not(.app-view) .home-hero-note{align-items:flex-start}body:not(.app-view) .home-hero-visual{height:300px}body:not(.app-view) .home-levels{grid-template-columns:1fr 1fr;margin-bottom:40px}body:not(.app-view) .home-levels span:nth-child(2){border-right:0}body:not(.app-view) .home-levels span:nth-child(-n+2){border-bottom:1px solid #d8dde5}body:not(.app-view) .home-signup{gap:24px;margin-bottom:52px;padding:26px 18px}body:not(.app-view) .home-signup>div h2,body:not(.app-view) .home-feature h2,body:not(.app-view) .home-process h2,body:not(.app-view) .home-final-cta h2{font-size:27px!important}body:not(.app-view) .home-signup .card{grid-template-columns:1fr;padding:20px 16px}body:not(.app-view) .home-story{gap:50px}body:not(.app-view) .home-feature,body:not(.app-view) .home-feature-reverse{gap:24px}body:not(.app-view) .home-feature-copy{padding-left:14px}body:not(.app-view) .home-feature figure img{height:auto;max-height:400px;object-fit:contain}body:not(.app-view) .home-process{margin-left:-12px!important;margin-right:-12px!important;padding:28px 12px!important}body:not(.app-view) .home-process .home-section-head{grid-template-columns:1fr;gap:4px;padding:0 4px 18px}body:not(.app-view) .home-process ol{grid-template-columns:1fr;padding:0 4px}body:not(.app-view) .home-process li{min-height:0;border-right:1px solid #d8dde5;border-bottom:0}body:not(.app-view) .home-process li:last-child{border-bottom:1px solid #d8dde5}body:not(.app-view) .home-process h3{margin-top:18px}body:not(.app-view) .home-checks{grid-template-columns:1fr}body:not(.app-view) .home-stat{grid-template-columns:1fr}body:not(.app-view) .home-final-cta{grid-template-columns:1fr;padding:26px 20px!important}}
@media(max-width:640px){body:not(.app-view) .home-tools-bridge{gap:18px;padding:28px 0!important}body:not(.app-view) .home-tools-bridge h2{font-size:27px!important}body:not(.app-view) .home-tools-grid{grid-template-columns:1fr}body:not(.app-view) .home-tools-grid a{grid-template-columns:82px minmax(0,1fr);grid-template-rows:auto auto;align-items:center}body:not(.app-view) .home-tools-grid span{grid-row:1/3;aspect-ratio:1}body:not(.app-view) .home-tools-grid small{font-size:12px}}

/* Compact registration card on the public home */
body:not(.app-view) .home-signup{grid-template-columns:minmax(0,1fr) minmax(360px,470px);align-items:center}
body:not(.app-view) .home-signup .card{width:100%;max-width:470px;box-sizing:border-box;justify-self:end;padding:22px}
body:not(.app-view) .home-signup .card .primary{width:auto;min-width:190px;justify-self:start;padding-inline:24px}
body:not(.app-view) .home-signup .card .link{width:auto;justify-self:start;padding:7px 0;background:transparent}
@media(max-width:900px){body:not(.app-view) .home-signup{grid-template-columns:1fr}body:not(.app-view) .home-signup .card{justify-self:start}}
@media(max-width:640px){body:not(.app-view) .home-signup .card{max-width:none;padding:18px 16px}body:not(.app-view) .home-signup .card .primary{width:100%;justify-self:stretch}}

/* Public home auth form: calmer support-page style */
body:not(.app-view) .home-signup{
  grid-template-columns:minmax(0,1fr) minmax(320px,420px)!important;
  gap:36px!important;
  align-items:center!important;
  padding:32px 36px!important;
  border-color:#d8dde5!important;
  border-left:3px solid #ff3b1f!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body:not(.app-view) .home-signup>div{
  padding-top:0!important;
}
body:not(.app-view) .home-signup>div h2{
  max-width:560px;
  font-size:30px!important;
  line-height:1.18!important;
}
body:not(.app-view) .home-signup>div p:last-child{
  max-width:560px!important;
  color:#59616d!important;
}
body:not(.app-view) .home-signup .card{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:9px!important;
  width:100%!important;
  max-width:420px!important;
  justify-self:end!important;
  padding:22px!important;
  border:1px solid #d8dde5!important;
  border-top:3px solid #ff3b1f!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,#fff 0%,#fff8f6 100%)!important;
  box-shadow:0 14px 32px rgba(28,32,38,.055)!important;
}
body:not(.app-view) .home-signup .card h2{
  margin:0 0 8px!important;
  font-size:22px!important;
  font-weight:300!important;
  color:#171a20!important;
}
body:not(.app-view) .home-signup .card label{
  margin:0!important;
  color:#232832!important;
  font:400 13px/1.3 "Segoe UI",Roboto,Arial,sans-serif!important;
}
body:not(.app-view) .home-signup .card input{
  min-height:42px!important;
  margin-top:6px!important;
  border:1px solid #cfd6df!important;
  border-radius:5px!important;
  background:#fff!important;
  font-weight:300!important;
}
body:not(.app-view) .home-signup .card input:focus{
  border-color:#ff3b1f!important;
  box-shadow:0 0 0 2px rgba(255,59,31,.08)!important;
}
body:not(.app-view) .home-signup .card .primary{
  width:auto!important;
  min-width:160px!important;
  justify-self:start!important;
  margin-top:4px!important;
  padding:10px 22px!important;
  border-radius:5px!important;
  background:#ff3b1f!important;
  box-shadow:none!important;
  font-weight:400!important;
}
body:not(.app-view) .home-signup .card .primary:hover{
  background:#e92e13!important;
  transform:none!important;
}
body:not(.app-view) .home-signup .card .link{
  width:auto!important;
  justify-self:start!important;
  padding:6px 0!important;
  background:transparent!important;
  color:#343a44!important;
  font-weight:400!important;
  text-decoration:underline;
  text-decoration-color:#cfd6df;
  text-underline-offset:4px;
}
@media(max-width:900px){
  body:not(.app-view) .home-signup{
    grid-template-columns:1fr!important;
    padding:28px 24px!important;
  }
  body:not(.app-view) .home-signup .card{
    justify-self:start!important;
    max-width:460px!important;
    padding:20px!important;
    border:1px solid #d8dde5!important;
    border-top:3px solid #ff3b1f!important;
  }
}
@media(max-width:640px){
  body:not(.app-view) .home-signup{
    gap:22px!important;
    padding:24px 18px!important;
  }
  body:not(.app-view) .home-signup>div h2{
    font-size:25px!important;
  }
  body:not(.app-view) .home-signup .card{
    max-width:none!important;
  }
  body:not(.app-view) .home-signup .card .primary{
    width:100%!important;
    justify-self:stretch!important;
  }
}

/* Inner app readability pass */
body.app-view .goal-row .goal-text,
body.app-view .dream-row .dream-text,
body.app-view .week .reflection,
body.app-view .annual textarea,
body.app-view .quarter textarea,
body.app-view textarea,
body.app-view input{
  font-size:15px;
}
body.app-view .goal-row .goal-text{
  line-height:1.5;
  color:#25282d;
}

/* Compact planning workspace: calendar is the primary surface. */
@media(min-width:951px){
  .planning-layout{grid-template-columns:minmax(0,1.86fr) minmax(320px,1fr);gap:22px}
  .weeks-column .week{padding:16px 17px}
}
.weeks-column>.section-title.section-title-weeks{padding-left:0}
body.app-view .section-title-weeks:before,
body.app-view .section-title-weeks:after{display:none}
.week-report-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}
.week-complete{display:inline-flex;align-items:center;gap:7px;color:#242931;font-size:13px;line-height:1.35}
.week-complete input[type=checkbox]{appearance:none;-webkit-appearance:none;display:grid;place-items:center;width:18px;height:18px;min-width:18px;margin:0;padding:0;border:1.5px solid #c7cdd6;border-radius:50%;background:#fff;box-shadow:none;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.week-complete input[type=checkbox]:hover{border-color:#ff3b1f;transform:scale(1.06)}
.week-complete input[type=checkbox]:checked{border-color:#ff3b1f;background:#ff3b1f}
.week-complete input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:12px;font-weight:700;line-height:1}
.week-complete input[type=checkbox]:focus-visible{outline:3px solid rgba(255,59,31,.18);outline-offset:2px}
.week-report-row .telegram-action{width:auto;min-width:176px}

/* Keep the mobile photo card identical before and after a file is selected. */
@media(max-width:520px){
  .day-photo-panel{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:8px 10px}
  .day-photo-preview,.day-photo-placeholder{grid-column:1;width:150px;height:150px;min-height:150px}
  .day-photo-actions{grid-column:2;display:flex;flex-direction:column;align-items:stretch;gap:7px;margin:0}
  .day-photo-actions button{width:100%;min-width:0;min-height:32px;white-space:normal}
  .day-photo-status{grid-column:1/-1}
}
@media(max-width:350px){
  .day-photo-panel{grid-template-columns:132px minmax(0,1fr)}
  .day-photo-preview,.day-photo-placeholder{width:132px;height:132px;min-height:132px}
}

@media(max-width:520px){
  .day-photo-panel{display:block;width:100%;padding:9px}
  .day-photo-preview{width:100%;height:auto;min-height:0;aspect-ratio:4/3}
  .day-photo-placeholder{display:none!important}
  .day-photo-actions{display:grid;grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}
  .day-photo-actions button{width:100%;min-height:34px}
  .day-photo-panel:has(.day-photo-preview.hidden) .day-photo-actions{grid-template-columns:1fr;margin-top:0}
  .day-photo-panel:has(.day-photo-preview.hidden) .day-photo-actions button{justify-self:end;width:auto;min-width:126px}
  .day-photo-status{grid-column:auto;margin-top:7px}
}
@media(max-width:350px){
  .day-photo-preview{width:100%;height:auto;min-height:0}
}

/* Final responsive overrides for the large photo viewer. */
@media(min-width:901px){
  body.app-view #modal .modal-card{width:min(1180px,calc(100vw - 48px))}
  .day-photo-panel{width:min(54%,640px)}
  .day-photo-preview,.day-photo-placeholder{height:auto;min-height:360px;aspect-ratio:4/3}
  #modal .modal-card>label,#modal .modal-card>.field-hint,#modal .modal-card>.day-extra,#modal .modal-card>.autosave-hint{margin-right:calc(min(54%,640px) + 24px)}
  #modal .modal-card:has(.day-photo-preview.hidden) .day-photo-panel{width:230px}
  #modal .modal-card:has(.day-photo-preview.hidden)>label,#modal .modal-card:has(.day-photo-preview.hidden)>.field-hint,#modal .modal-card:has(.day-photo-preview.hidden)>.day-extra,#modal .modal-card:has(.day-photo-preview.hidden)>.autosave-hint{margin-right:252px}
}
.photo-lightbox{position:fixed;inset:0;z-index:160;display:flex;align-items:center;justify-content:center;padding:32px;background:rgba(15,18,24,.9);backdrop-filter:blur(4px)}
.photo-lightbox.hidden{display:none}
.photo-lightbox img{display:block;max-width:min(1180px,calc(100vw - 64px));max-height:calc(100vh - 64px);width:auto;height:auto;border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.42);object-fit:contain}
.photo-lightbox-close{position:fixed;right:24px;top:20px;z-index:1;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(18,21,27,.72);color:#fff;font:300 32px/40px Arial,sans-serif;cursor:pointer}
.photo-lightbox-close:hover{background:#fff;color:#242931}
body.photo-lightbox-open{overflow:hidden}
@media(max-width:900px){
  .photo-lightbox{padding:20px}
  .photo-lightbox img{max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);border-radius:10px}
  .photo-lightbox-close{right:14px;top:14px;width:40px;height:40px;font-size:29px;line-height:36px}
}
@media(max-width:520px){
  .photo-lightbox{padding:10px}
  .photo-lightbox img{max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:8px}
}

/* Compact public registration form without changing its structure */
body:not(.app-view) .home-signup{padding-top:24px!important;padding-bottom:24px!important}
body:not(.app-view) .home-signup .auth-card-new{gap:5px!important;padding:18px 20px!important}
body:not(.app-view) .home-signup .auth-card-new .auth-intro{margin-bottom:5px!important;line-height:1.4}
body:not(.app-view) .home-signup .auth-card-new .error{min-height:10px;margin:0}
body:not(.app-view) .home-signup .auth-divider{margin:10px 0 7px}
body:not(.app-view) .home-signup .auth-card-new .link{margin-top:7px!important}
body:not(.app-view) .home-signup .auth-legal{margin-top:7px}
@media(max-width:640px){
  body:not(.app-view) .home-signup{padding-top:20px!important;padding-bottom:20px!important}
  body:not(.app-view) .home-signup .auth-card-new{padding:17px 16px!important}
}

/* Keep the nutrition workspace inside the real layout width. Using 100vw here
   includes the browser scrollbar and shifts the page several pixels left. */
body.nutrition-view .nutrition-page{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
}

/* Mobile integrations: cards and actions use the full available width. */
@media(max-width:640px){
  body.app-view .settings-panel,
  body.app-view .settings-panel *{min-width:0}
  body.app-view .pro-settings{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
    width:100%;
    padding:14px;
  }
  body.app-view .pro-settings>div,
  body.app-view .pro-settings p,
  body.app-view .pro-feature-status{width:100%;max-width:100%}
  body.app-view .pro-settings p,
  body.app-view .pro-settings a,
  body.app-view .pro-feature-status{
    overflow-wrap:anywhere;
    word-break:normal;
  }
  body.app-view .pro-settings .save{
    float:none;
    align-self:stretch;
    width:100%;
    max-width:100%;
    margin:0;
    padding:11px 12px;
    white-space:normal;
  }
  body.app-view .pro-ok,
  body.app-view .pro-lock-link{
    display:inline-flex;
    width:auto;
    max-width:100%;
    white-space:normal;
  }
  body.app-view .api-settings,
  body.app-view .api-token-create,
  body.app-view .api-token-row{width:100%;max-width:100%}
}

/* Tablet weekly card: readable tabs and top-aligned checks for wrapped goals. */
@media(min-width:401px) and (max-width:760px){
  body.app-view .weeks-column .week-tabs{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
  }
  body.app-view .weeks-column .week-tab{
    min-height:44px;
    padding:7px 8px;
  }
  body.app-view .weeks-column .week-tab span{
    font-size:9px;
    line-height:1.25;
  }
  body.app-view .weeks-column .goal-row{
    align-items:start;
    gap:9px;
  }
  body.app-view .weeks-column .goal-row .goal-check{
    margin-top:5px;
  }
}

/* Tablet dreams and library: keep each item on one compact row. */
@media(min-width:721px) and (max-width:900px){
  body.dreams-view .dream-category-card .dreams-active,
  body.dreams-view .dream-category-card .dreams-done,
  body.library-view .dream-category-card .dreams-active,
  body.library-view .dream-category-card .dreams-done{
    display:grid!important;
    grid-auto-rows:min-content!important;
    gap:2px!important;
  }
  body.dreams-view .dream-category-card label.dream-row.goal-row,
  body.library-view .dream-category-card label.dream-row.goal-row{
    display:grid!important;
    grid-template-columns:18px minmax(0,1fr) 78px!important;
    grid-template-areas:none!important;
    align-items:start!important;
    gap:6px 9px!important;
    min-height:34px!important;
    margin:0!important;
    padding:4px 5px!important;
  }
  body.dreams-view .dream-category-card .dream-check,
  body.library-view .dream-category-card .library-check{
    grid-area:auto!important;
    margin-top:5px!important;
  }
  body.dreams-view .dream-category-card textarea.dream-text,
  body.library-view .dream-category-card textarea.library-text{
    grid-area:auto!important;
    width:100%!important;
    min-height:26px!important;
    margin:0!important;
    padding:4px 0!important;
    max-height:none!important;
    overflow:hidden!important;
  }
  body.dreams-view .dream-category-card .dream-to-goal,
  body.library-view .dream-category-card .dream-to-goal{
    grid-area:auto!important;
    align-self:start!important;
    width:78px!important;
    margin:0!important;
  }
}

@media(min-width:721px) and (max-width:900px){
  body.app-view #modal .modal-card{width:min(760px,calc(100vw - 32px))}
  .day-photo-panel{position:static;display:block;width:100%;margin:10px 0 16px;padding:10px}
  .day-photo-preview{width:100%;height:auto;min-height:0;aspect-ratio:4/3}
  .day-photo-placeholder{width:100%;height:180px}
  .day-photo-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}
  .day-photo-status{margin-top:7px}
  #modal .modal-card>label,#modal .modal-card>.field-hint,#modal .modal-card>.day-extra,#modal .modal-card>.autosave-hint{margin-right:0}
}

/* Large day photo and in-page viewer. */
@media(min-width:901px){
  body.app-view #modal .modal-card{width:min(1180px,calc(100vw - 48px))}
  .day-photo-panel{width:min(54%,640px)}
  .day-photo-preview,.day-photo-placeholder{height:auto;min-height:360px;aspect-ratio:4/3}
  #modal .modal-card>label,#modal .modal-card>.field-hint,#modal .modal-card>.day-extra,#modal .modal-card>.autosave-hint{margin-right:calc(min(54%,640px) + 24px)}
  #modal .modal-card:has(.day-photo-preview.hidden) .day-photo-panel{width:230px}
  #modal .modal-card:has(.day-photo-preview.hidden)>label,#modal .modal-card:has(.day-photo-preview.hidden)>.field-hint,#modal .modal-card:has(.day-photo-preview.hidden)>.day-extra,#modal .modal-card:has(.day-photo-preview.hidden)>.autosave-hint{margin-right:252px}
}
.photo-lightbox{position:fixed;inset:0;z-index:160;display:flex;align-items:center;justify-content:center;padding:32px;background:rgba(15,18,24,.9);backdrop-filter:blur(4px)}
.photo-lightbox.hidden{display:none}
.photo-lightbox img{display:block;max-width:min(1180px,calc(100vw - 64px));max-height:calc(100vh - 64px);width:auto;height:auto;border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.42);object-fit:contain}
.photo-lightbox-close{position:fixed;right:24px;top:20px;z-index:1;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(18,21,27,.72);color:#fff;font:300 32px/40px Arial,sans-serif;cursor:pointer}
.photo-lightbox-close:hover{background:#fff;color:#242931}
body.photo-lightbox-open{overflow:hidden}
@media(max-width:900px){
  .photo-lightbox{padding:20px}
  .photo-lightbox img{max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);border-radius:10px}
  .photo-lightbox-close{right:14px;top:14px;width:40px;height:40px;font-size:29px;line-height:36px}
}
@media(max-width:520px){
  .photo-lightbox{padding:10px}
  .photo-lightbox img{max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:8px}
}

/* Day entry: show complete text and keep actions inside the text column. */
#modal .modal-card>label textarea{
  overflow-y:hidden;
  resize:none;
}
#modal .day-actions{
  align-items:stretch;
}
#modal .day-actions .save,
#modal .day-actions .telegram-action{
  min-height:44px;
  height:100%;
  margin:0;
  padding:10px 14px;
  white-space:normal;
}
@media(min-width:901px){
  #modal .day-actions{margin-right:calc(min(46%,540px) + 36px)}
  #modal .modal-card:has(.day-photo-preview.hidden) .day-actions{margin-right:calc(min(46%,540px) + 36px)}
}
@media(max-width:900px){
  #modal .day-actions{margin-right:0}
}

/* Let the complete day entry grow with its text; scroll the overlay, not the card. */
#modal{
  display:block;
  overflow-y:auto;
  padding:24px;
}
#modal.hidden{display:none}
body:has(#modal:not(.hidden)){overflow:hidden}
#modal .modal-card{
  max-height:none;
  overflow:visible;
  margin:0 auto 24px;
}
@media(max-width:700px){
  #modal{padding:calc(14px + env(safe-area-inset-top)) 8px calc(14px + env(safe-area-inset-bottom))}
  #modal .modal-card{margin:0 auto}
}

/* Compact weekly navigation and neutral commitment styling. */
.weeks-column .week-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
.weeks-column .week-tab{min-height:52px;justify-content:flex-start;padding:7px 6px}
.weeks-column .week-tab span{font-size:9px;line-height:1.18;color:#5c626b}
.weeks-column .week-tab.active span{color:#242931}
.weeks-column .active-week{padding:16px 13px}
.weeks-column .week-status{padding:8px 9px;background:#f7f8fa;color:#242931}
.weeks-column .week-status,
.weeks-column .week-status span,
.weeks-column .week-status small,
.weeks-column .week-status b{color:#242931!important}
.weeks-column .week-risk i,
.weeks-column .week-risk.risk-mid i,
.weeks-column .week-risk.risk-high i{background:#343941}
.weeks-column .word-line{gap:4px}
.weeks-column .word-line input{width:56px;color:#242931}
@media(max-width:950px){
  .weeks-column .active-week{padding:15px 12px}
}
@media(max-width:520px){
  .weeks-column .week-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
  .weeks-column .week-tab{min-height:48px;padding:6px 4px}
  .weeks-column .week-tab span{font-size:8px}
  .day-photo-panel{display:block;width:100%;padding:9px}
  .day-photo-preview{width:100%;height:auto;min-height:0;aspect-ratio:4/3}
  .day-photo-placeholder{display:none!important}
  .day-photo-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}
  .day-photo-actions button{width:100%;min-height:34px}
  .day-photo-panel:has(.day-photo-preview.hidden) .day-photo-actions{grid-template-columns:1fr;margin-top:0}
  .day-photo-status{margin-top:7px}
}
@media(max-width:350px){
  .day-photo-preview{width:100%;height:auto;min-height:0}
}
body.app-view .goal-row textarea.goal-text{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:22px;
  padding:3px 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  resize:none;
  overflow:hidden;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
body.app-view .goal-row{
  min-height:36px;
  min-width:0;
}
body.app-view .panel h2,
body.app-view .section-title h2,
body.app-view .month-head h2{
  font-size:26px;
  font-weight:500;
}
body.app-view .annual{border-left-color:#d8dde5!important}
body.app-view .active-quarter,
body.app-view .active-week{
  border-top-color:#d8dde5!important;
}
body.app-view .active-quarter .row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:42px;
  margin-top:10px;
}
body.app-view .active-quarter .row>label{
  display:flex;
  align-items:center;
  gap:9px;
  flex:1;
  min-width:0;
  margin:0;
  color:#6a625e;
  line-height:1.3;
}
body.app-view .active-quarter .row input[type=checkbox]{
  appearance:none;
  -webkit-appearance:none;
  box-sizing:border-box;
  flex:0 0 18px;
  width:18px;
  height:18px;
  min-width:18px;
  min-height:18px;
  padding:0;
  margin:0;
  border:1.5px solid #cfc5c1;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:none;
  transition:border-color .15s,background .15s,transform .15s;
}
body.app-view .active-quarter .row input[type=checkbox]:hover{
  border-color:#ff3b1f!important;
  transform:scale(1.06);
}
body.app-view .active-quarter .row input[type=checkbox]:checked{
  border-color:#ff3b1f!important;
  background:#ff3b1f!important;
}
body.app-view .active-quarter .row input[type=checkbox]:checked:after{
  content:"✓";
  color:#fff;
  font-size:12px;
  font-weight:800;
  line-height:1;
}
body.app-view .active-quarter .row input[type=checkbox]:focus-visible{
  outline:3px solid rgba(255,59,31,.22)!important;
  outline-offset:2px;
}
body.app-view .quarter-tab.active,
body.app-view .week-tab.active{
  border-color:#cfd6df!important;
  box-shadow:0 0 0 2px rgba(37,40,45,.04),0 8px 18px rgba(37,40,45,.035)!important;
}
body.app-view .goal-row .goal-check:hover,
body.app-view .week .row input[type=checkbox]:hover,
body.app-view .dream-check:hover{
  border-color:#ff3b1f!important;
}
body.app-view .goal-row .goal-check:checked,
body.app-view .week .row input[type=checkbox]:checked,
body.app-view .dream-check:checked{
  border-color:#ff3b1f!important;
  background:#ff3b1f!important;
}
body.app-view .goal-row .goal-check:focus-visible,
body.app-view .week .row input[type=checkbox]:focus-visible,
body.app-view .dream-check:focus-visible{
  outline-color:rgba(255,59,31,.22)!important;
}
body.app-view .section-title:before,
body.app-view .section-title-weeks:before{
  border-color:#d8dde5!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.app-view .section-title-quarters:after,
body.app-view .section-title-weeks:after{
  opacity:.62;
  filter:grayscale(.35);
}
body.app-view .goal-row.done .goal-text,
body.app-view .dream-row.done .dream-text{
  color:#4a4a4a!important;
  text-decoration-color:#1f1f1f!important;
  text-decoration-thickness:1px;
}
body.app-view .smart-panel{
  border-color:transparent;
  background:transparent;
  box-shadow:none;
  padding-left:0;
  padding-right:0;
}
body.app-view .smart-panel span{
  color:#59616d;
  font-weight:500;
}
body.app-view .smart-panel button{
  border-color:#cfd6df;
  background:#fff;
  color:#343a44;
}
body.app-view .smart-panel button:hover{
  border-color:#ffb4a6;
  color:#db321a;
  background:#fff7f4;
}
@media(max-width:640px){
  body.app-view .goal-row .goal-text,
  body.app-view .dream-row .dream-text,
  body.app-view .week .reflection,
  body.app-view .annual textarea,
  body.app-view .quarter textarea{
    font-size:15px;
  }
  body.app-view .panel h2,
  body.app-view .section-title h2,
  body.app-view .month-head h2{
    font-size:22px;
  }
}

/* Real interface screenshots on the public home */
body:not(.app-view) .home-story figure img[src*="/images/screenshots/"]{
  object-fit:contain!important;
  object-position:center top!important;
  background:#fff!important;
  max-height:460px;
}
body:not(.app-view) .home-feature-reverse figure img[src*="desktop-04-day-entry-08"]{
  width:auto!important;
  max-width:100%!important;
  margin:0 auto!important;
  max-height:560px!important;
}

/* API tokens settings */
.api-settings{margin:14px 0 6px;padding:14px;border:1px solid #eee4dc;border-radius:12px;background:#fffdfb;color:#5f5651}
.pro-settings{margin:14px 0 6px;padding:14px;border:1px solid #f0dfd9;border-radius:12px;background:#fff8f5;color:#5f5651;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.pro-settings h3{margin:0 0 7px;font-size:14px;font-weight:600;color:#3d3734}.pro-settings p{margin:0 0 8px;color:#938883;font-size:12px;line-height:1.45}.pro-settings p a{color:var(--coral-dark);font-weight:600;text-decoration:none}.pro-feature-status{font-size:12px}.pro-ok,.pro-lock-link{display:inline-flex;border-radius:999px;padding:7px 10px;text-decoration:none;font-weight:600}.pro-ok{border:1px solid #cfe4f2;background:#eef8ff;color:#24739f}.pro-lock-link{border:1px solid #f0dfd9;background:#fff;color:var(--coral-dark)}
.api-settings h3{margin:0 0 7px;font-size:14px;font-weight:600;color:#3d3734}
.api-settings p{margin:0 0 8px;color:#938883;font-size:12px;line-height:1.45}
.api-settings a{color:var(--coral-dark);font-size:12px;font-weight:600;text-decoration:none}
.api-token-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:12px}
.api-token-create input{margin:0}
.api-token-create .save{margin:0;float:none;white-space:nowrap}
.api-settings textarea{min-height:64px;margin-top:10px;font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.api-tokens-list{display:grid;gap:8px;margin-top:10px}
.api-token-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid #f0e5e0;border-radius:10px;background:#fff}
.api-token-row b{display:block;color:#3d3734;font-size:13px;font-weight:600}
.api-token-row span{display:block;margin-top:3px;color:#948982;font-size:11px;line-height:1.35}
.api-token-row button{border:1px solid #ead8d2;background:#fff;color:#8d4a3d;border-radius:9px;padding:8px 10px;cursor:pointer;font:600 12px/1 var(--font-heading)}
@media(max-width:640px){.api-token-create,.api-token-row{grid-template-columns:1fr}.api-token-create .save,.api-token-row button{width:100%}}

/* Final unified navigation guard */
.site-header{height:64px!important;min-height:64px!important;padding:0 max(28px,calc((100% - 1200px)/2))!important;background:#fff!important;border-bottom:1px solid #d8dde5!important;box-shadow:none!important;backdrop-filter:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;position:sticky!important;top:0!important;z-index:50!important}
.site-header .brand,.site-header>.brand{display:flex!important;align-items:center!important;gap:10px!important;color:#1b1e24!important;text-decoration:none!important;font-family:"Segoe UI",Roboto,Arial,sans-serif!important;font-size:18px!important;font-weight:600!important;line-height:1!important;letter-spacing:-.15px!important;white-space:nowrap!important}
.site-header .brand:before{content:""!important;display:block!important;width:34px!important;height:34px!important;flex:0 0 34px!important;border-radius:8px!important;background:#ff3b1f url('/logo-mark.svg') center/34px 34px no-repeat!important;box-shadow:0 4px 12px rgba(255,59,31,.18)!important}
.site-header .nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:18px!important;flex-wrap:wrap!important;margin-left:auto!important}
.site-header .nav a{display:inline-flex!important;align-items:center!important;min-height:34px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:#343941!important;text-decoration:none!important;font-family:"Segoe UI",Roboto,Arial,sans-serif!important;font-size:14px!important;font-weight:400!important;line-height:1.15!important;letter-spacing:0!important;white-space:nowrap!important}
.site-header .nav a:hover,.site-header .nav a:focus-visible{color:#ff3b1f!important;background:transparent!important}
.site-header .nav-toggle,.site-header .nav-button{display:none!important}
@media(max-width:800px){.site-header{height:auto!important;min-height:58px!important;padding:10px 14px!important;align-items:center!important}.site-header .brand{font-size:16px!important}.site-header .brand:before{width:32px!important;height:32px!important;flex-basis:32px!important;background-size:32px 32px!important}.site-header .nav-button{display:block!important;position:relative!important;width:38px!important;height:38px!important;margin-left:auto!important;border:1px solid #d8dde5!important;border-radius:8px!important;background:#fff!important;cursor:pointer!important;flex:0 0 auto!important}.site-header .nav-button span,.site-header .nav-button:before,.site-header .nav-button:after{content:""!important;position:absolute!important;left:9px!important;width:18px!important;height:2px!important;border-radius:99px!important;background:#343941!important;transition:.18s!important;transform-origin:center!important}.site-header .nav-button:before{top:13px!important}.site-header .nav-button span{top:18px!important}.site-header .nav-button:after{top:23px!important}.site-header .nav-toggle:checked + .nav-button span{opacity:0!important}.site-header .nav-toggle:checked + .nav-button:before{top:18px!important;transform:rotate(45deg)!important}.site-header .nav-toggle:checked + .nav-button:after{top:18px!important;transform:rotate(-45deg)!important}.site-header .nav{position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 8px)!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:8px!important;background:#fff!important;border:1px solid #d8dde5!important;border-radius:8px!important;box-shadow:0 16px 36px rgba(22,25,30,.14)!important}.site-header .nav-toggle:checked ~ .nav{display:flex!important}.site-header .nav a{display:block!important;min-height:0!important;padding:12px 13px!important;border-radius:6px!important;font-size:14px!important}.site-header .nav a:hover,.site-header .nav a:focus-visible{background:#fff5f2!important;color:#d92f17!important}}

/* Life pulse dashboards */
body.pulse-view #app > :not(#account):not(#pulsePage){display:none!important}
body.business-view #app > :not(#account):not(#businessPage){display:none!important}
body.business-view #businessPage{display:block!important}
.business-page{width:100%;padding:0 0 70px;background:#fff}
.business-page iframe{display:block;width:100%;min-height:900px;border:0;background:#fff;overflow:hidden}

body.nutrition-view #app > :not(#account):not(#nutritionPage){display:none!important}
.nutrition-page{width:100%;margin-left:0;padding:8px 0 60px;background:#fff}
.nutrition-page-head{display:grid;grid-template-columns:minmax(0,760px);gap:0;align-items:start;width:100%;margin:0 0 28px}
.nutrition-page-head h1{font-size:38px;line-height:1.1;letter-spacing:-.8px;margin:8px 0 12px;font-weight:600}
.nutrition-page-head p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.55}
.nutrition-frame-wrap{position:relative;width:100%;min-height:760px;margin:0;overflow:visible;background:#fff}
.nutrition-frame-wrap iframe{display:block;width:100%;height:max(760px,calc(100vh - 150px));border:0;background:transparent}
.nutrition-paywall{position:absolute;inset:0;z-index:2;display:grid;place-items:center;padding:24px;background:rgba(23,28,32,.78);backdrop-filter:blur(4px)}
.nutrition-paywall.hidden{display:none!important}
.nutrition-paywall-card{width:min(440px,100%);padding:36px 32px;text-align:center;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgba(31,38,43,.92);box-shadow:0 24px 60px rgba(0,0,0,.32);color:#fff}
.nutrition-paywall-card h2{margin:16px 0 10px;font-size:27px;line-height:1.2;color:#fff}
.nutrition-paywall-card p{margin:0 0 24px;color:rgba(255,255,255,.76);line-height:1.5}
.nutrition-paywall-card .primary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border-radius:10px;text-decoration:none}
.nutrition-lock{display:inline-grid;place-items:center;min-width:58px;height:34px;padding:0 12px;border-radius:999px;background:var(--coral);font:700 13px/1 Montserrat,Arial,sans-serif;letter-spacing:.8px;color:#fff}
.nutrition-add-food-fab{position:fixed;right:28px;bottom:24px;z-index:60;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:52px;padding:0 22px;border:0;border-radius:8px;background:#ff493d;color:#fff;font-weight:800;box-shadow:0 12px 30px rgba(255,73,61,.28)}
.nutrition-add-food-fab:hover{background:#ed3e33;transform:translateY(-1px)}
.nutrition-add-food-fab span{font-size:21px;line-height:1}
.nutrition-add-food-fab.hidden{display:none!important}
body.nutrition-modal-open{overflow:hidden}
body.nutrition-modal-open #nutritionFrame{position:fixed;inset:0;z-index:100;width:100vw;height:100vh!important;background:transparent}
@media(max-width:700px){.nutrition-page{padding:0 0 40px}.nutrition-page-head{display:block;margin-bottom:16px}.nutrition-page-head>button{margin-bottom:18px}.nutrition-page-head h1{font-size:29px}.nutrition-page-head p:not(.eyebrow){font-size:14px}.nutrition-frame-wrap{min-height:720px}.nutrition-frame-wrap iframe{height:max(720px,calc(100vh - 110px))}.nutrition-paywall{padding:16px;position:fixed;top:0}.nutrition-paywall-card{padding:30px 22px}.nutrition-paywall-card h2{font-size:23px}.nutrition-add-food-fab{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));min-height:50px;padding:0 18px}}

/* Stable authenticated navigation - additive guard, shared by all app views */
body.app-view #app > #account.account-bar{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  width:100%;
  max-width:100%;
  margin:14px 0 18px;
  padding:10px 0 13px;
  gap:8px;
  border:0;
  border-bottom:1px solid #e2e6ec;
  border-radius:0;
  background:#fff;
  box-shadow:none;
  overflow:visible;
}
body.app-view #app > #account.account-bar #userName{
  flex:1 1 150px;
  min-width:120px;
  margin:0 auto 0 0;
  padding:0 12px 0 0;
  color:#30343b;
  font-size:13px;
  font-weight:500;
  line-height:1.3;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.app-view #app > #account.account-bar .ghost,
body.app-view #app > #account.account-bar a,
body.app-view #app > #account.account-bar .import-link{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-height:36px;
  margin:0;
  padding:8px 13px;
  border:1px solid #d8dde5;
  border-radius:999px;
  background:#fff;
  color:#343941;
  box-shadow:none;
  font-size:13px;
  font-weight:400;
  line-height:1;
  white-space:nowrap;
}
body.app-view #app > #account.account-bar .ghost:hover,
body.app-view #app > #account.account-bar a:hover,
body.app-view #app > #account.account-bar .import-link:hover,
body.app-view #app > #account.account-bar .ghost:focus-visible,
body.app-view #app > #account.account-bar a:focus-visible,
body.app-view #app > #account.account-bar .import-link:focus-within{
  border-color:#ff8f7d;
  background:#fff8f5;
  color:#d92f17;
}
@media(max-width:760px){
  body.app-view #app > #account.account-bar{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
    margin:6px 0 18px;
    padding:8px 0 14px;
    gap:8px;
    overflow:visible;
  }
  body.app-view #app > #account.account-bar #userName{
    grid-column:1/-1;
    width:100%;
    min-width:0;
    margin:0;
    padding:0 2px 3px;
    font-size:13px;
  }
  body.app-view #app > #account.account-bar .ghost,
  body.app-view #app > #account.account-bar button,
  body.app-view #app > #account.account-bar a,
  body.app-view #app > #account.account-bar .import-link{
    width:100%;
    min-width:0;
    min-height:40px;
    padding:9px 8px;
    border-radius:9px;
    font-size:12px;
    white-space:normal;
    text-align:center;
  }
}

/* Polished desktop account navigation; mobile keeps the compact icon row above. */
@media(min-width:761px){
  body.app-view #app > #account.account-bar{
    padding:9px 0 13px;
    border:0;
    border-bottom:1px solid #e2e6ec;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  body.app-view #app > #account.account-bar #userName{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding-left:4px;
    font-weight:600;
  }
  body.app-view #app > #account.account-bar #userName:before{
    content:"";
    flex:0 0 8px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:#ff3b1f;
    box-shadow:0 0 0 4px rgba(255,59,31,.09);
  }
  body.app-view #app > #account.account-bar [data-mobile-icon]:before{
    content:attr(data-mobile-icon);
    margin-right:6px;
    color:#727a86;
    font-size:13px;
    line-height:1;
  }
}

/* Report blocks stay tidy and reflection fields always reveal their full text. */
body.app-view textarea.reflection{
  box-sizing:border-box;
  width:100%;
  height:auto;
  min-height:96px;
  max-height:none!important;
  overflow-y:hidden!important;
  resize:none;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
body.app-view .week-report-row,
body.app-view .active-quarter .quarter-report-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  width:100%;
  min-height:42px;
  margin-top:12px;
}
body.app-view .week-report-row .week-complete,
body.app-view .active-quarter .quarter-report-row .quarter-complete{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  margin:0;
  line-height:1.35;
}
body.app-view .week-report-row .telegram-action,
body.app-view .active-quarter .quarter-report-row .telegram-action{
  width:auto;
  min-width:176px;
  margin:0;
}
/* The weekly card lives in a narrow sidebar even on desktop. Keep its
   controls on separate rows so the checkbox label never gets squeezed. */
body.app-view .week-report-row{
  grid-template-columns:minmax(0,1fr);
  align-items:stretch;
  gap:10px;
}
body.app-view .week-report-row .week-complete{
  width:100%;
}
body.app-view .week-report-row .telegram-action{
  width:100%;
  min-width:0;
}
@media(max-width:560px){
  body.app-view .week-report-row,
  body.app-view .active-quarter .quarter-report-row{
    grid-template-columns:1fr;
    align-items:stretch;
    gap:10px;
  }
  body.app-view .week-report-row .telegram-action,
  body.app-view .active-quarter .quarter-report-row .telegram-action{
    width:100%;
    min-width:0;
  }
}
@media(max-width:380px){
  body.app-view #app > #account.account-bar{grid-template-columns:1fr}
  body.app-view #app > #account.account-bar #userName{grid-column:1}
}

/* Mobile and tablet account navigation: one compact icon row */
@media(max-width:900px){
  body.app-view #app > #account.account-bar{
    display:flex;
    flex-flow:row wrap;
    align-items:stretch;
    gap:5px;
    padding-bottom:12px;
  }
  body.app-view #app > #account.account-bar #userName{
    flex:0 0 100%;
    width:100%;
    padding:0 2px 4px;
  }
  body.app-view #app > #account.account-bar [data-mobile-icon]{
    display:flex;
    flex:1 1 0;
    flex-direction:column;
    gap:3px;
    width:auto;
    min-width:0;
    min-height:48px;
    padding:6px 1px;
    border-radius:9px;
    font-size:0;
    line-height:1;
    overflow:hidden;
  }
  body.app-view #app > #account.account-bar [data-mobile-icon]:before{
    content:attr(data-mobile-icon);
    display:block;
    color:#59616d;
    font-size:16px;
    font-weight:500;
    line-height:18px;
  }
  body.app-view #app > #account.account-bar [data-mobile-icon]:after{
    content:attr(data-mobile-label);
    display:block;
    max-width:100%;
    color:#59616d;
    font-size:9px;
    font-weight:500;
    line-height:11px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.app-view #app > #account.account-bar [data-mobile-icon]:hover:before,
  body.app-view #app > #account.account-bar [data-mobile-icon]:hover:after,
  body.app-view #app > #account.account-bar [data-mobile-icon]:focus-visible:before,
  body.app-view #app > #account.account-bar [data-mobile-icon]:focus-visible:after{
    color:#d92f17;
  }
}
@media(max-width:400px) and (min-width:320px){
  body.app-view #app > #account.account-bar{
    gap:3px;
    padding-bottom:10px;
  }
  body.app-view #app > #account.account-bar #userName{
    padding-bottom:2px;
    font-size:12px;
  }
  body.app-view #app > #account.account-bar [data-mobile-icon]{
    flex:1 1 calc(20% - 3px);
    min-width:calc(20% - 3px);
    min-height:38px;
    padding:3px 1px;
    gap:1px;
    border-radius:7px;
  }
  body.app-view #app > #account.account-bar [data-mobile-icon]:before{
    font-size:14px;
    line-height:16px;
  }
  body.app-view #app > #account.account-bar [data-mobile-icon]:after{
    font-size:8px;
    line-height:10px;
  }
}
/* One vertical rhythm after the account navigation in every workspace section. */
body.app-view #app > .hero{margin-top:0;padding-top:30px}
body.app-view #app > .dreams-page,
body.app-view #app > .library-page,
body.app-view #app > .pulse-page,
body.app-view #app > .nutrition-page{padding-top:30px}
@media(max-width:760px){
  body.app-view #app > .hero,
  body.app-view #app > .dreams-page,
  body.app-view #app > .library-page,
  body.app-view #app > .pulse-page,
  body.app-view #app > .nutrition-page{padding-top:24px}
}
@media(max-width:520px){
  body.app-view #app > .hero,
  body.app-view #app > .dreams-page,
  body.app-view #app > .library-page,
  body.app-view #app > .pulse-page,
  body.app-view #app > .nutrition-page{padding-top:22px}
}
.pulse-nav-button{margin-right:6px}
.pulse-page{padding:8px 0 70px}
.pulse-page-head{display:grid;grid-template-columns:minmax(0,820px);gap:0;align-items:start;margin:0 0 28px}
.pulse-page-head h1{font-size:40px;line-height:1.08;letter-spacing:-.9px;margin:8px 0 12px;font-weight:600}
.pulse-page-head p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.55}
.pulse-dashboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch;grid-auto-flow:dense}
.pulse-card{min-width:0;background:#fff;border:1px solid #d8dde5;border-radius:10px;padding:18px;box-shadow:0 8px 22px rgba(22,25,30,.045);display:flex;flex-direction:column;gap:12px}
.pulse-card.pulse-wide{grid-column:span 2}
.pulse-card-head span{display:block;margin-bottom:7px;color:#ff3b1f;font:500 11px/1.1 "Segoe UI",Roboto,Arial,sans-serif;letter-spacing:1px;text-transform:uppercase}
.pulse-card-head h2{margin:0;color:#171a20;font:300 25px/1.12 "Segoe UI",Roboto,Arial,sans-serif!important;letter-spacing:-.3px}
.pulse-card p{margin:0;color:#59616d;font:300 14px/1.55 "Segoe UI",Roboto,Arial,sans-serif}
.pulse-card small{color:#7a828d;line-height:1.45}
.pulse-big{color:#ff3b1f;font:300 54px/1 "Segoe UI",Roboto,Arial,sans-serif;letter-spacing:-1.5px}
.pulse-action{width:max-content;border:1px solid #ff3b1f;background:#ff3b1f;color:#fff;border-radius:6px;padding:10px 13px;cursor:pointer;font:500 13px/1 "Segoe UI",Roboto,Arial,sans-serif}
.pulse-action:hover{background:#e92e13;border-color:#e92e13}
.pulse-ring{--p:0;display:grid;place-items:center;width:102px;height:102px;border-radius:50%;background:conic-gradient(#ff3b1f calc(var(--p)*1%),#edf0f3 0)}
.pulse-ring b{display:grid;place-items:center;width:78px;height:78px;border-radius:50%;background:#fff;color:#171a20;font:400 25px/1 "Segoe UI",Roboto,Arial,sans-serif}
.pulse-stats{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:baseline}
.pulse-stats b{color:#171a20;font:300 38px/1 "Segoe UI",Roboto,Arial,sans-serif}
.pulse-stats span{color:#65707d;font-size:13px}
.pulse-bars{display:grid;gap:8px}
.pulse-bar-row{display:grid;grid-template-columns:150px minmax(0,1fr) 34px;gap:10px;align-items:center;color:#4d5661;font-size:13px}
.pulse-bar-row b{position:relative;height:8px;border-radius:999px;background:#edf0f3;overflow:hidden}
.pulse-bar-row b:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);border-radius:inherit;background:linear-gradient(90deg,#ff3b1f,#ff927f)}
.pulse-bar-row em{font-style:normal;color:#8a929c;text-align:right}
.pulse-tags{display:flex;gap:7px;flex-wrap:wrap}
.pulse-tags span{border:1px solid #d8dde5;background:#f7f8fa;border-radius:999px;padding:7px 10px;color:#343941;font-size:13px}
.pulse-timeline{height:168px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:7px;align-items:end;padding:10px 0 0}
.pulse-timeline span{height:100%;display:grid;grid-template-rows:14px minmax(0,1fr) 14px 12px;align-items:end;justify-items:center;gap:5px}
.pulse-timeline i{display:block;align-self:end;width:100%;min-height:4px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#dbe2ea,#eef2f5)}
.pulse-timeline i.tone-soft{background:linear-gradient(180deg,#ffb7aa,#ffe1dc)}
.pulse-timeline i.tone-warm{background:linear-gradient(180deg,#ff6f57,#ffc2b7)}
.pulse-timeline i.tone-hot{background:linear-gradient(180deg,#ff3b1f,#ff9a86);box-shadow:0 8px 18px rgba(255,59,31,.18)}
.pulse-timeline i.tone-empty{background:#edf1f4}
.pulse-timeline b{color:#69717c;font:400 11px/1 "Segoe UI",Roboto,Arial,sans-serif}
.pulse-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin:-2px 0 4px;color:#7a828d;font-size:12px}
.pulse-legend span:first-child{color:#343941;font-weight:500}
.pulse-timeline em{color:#343941;font-style:normal;font-size:11px;line-height:1}
.pulse-timeline small{color:#8d969f;font-size:10px;line-height:1}
.pulse-steps{margin:0;padding-left:20px;color:#343941;display:grid;gap:8px}
.pulse-steps li{line-height:1.45}
.pulse-balance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pulse-balance span{min-width:0;padding:11px 12px;border:1px solid #e1e5ea;border-radius:10px;background:linear-gradient(90deg,rgba(255,59,31,.08) var(--w),#fff var(--w));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}
.pulse-balance i{display:none}
.pulse-balance b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#303640;font:400 13px/1.25 "Segoe UI",Roboto,Arial,sans-serif}
.pulse-balance em{color:#8d6c62;font-style:normal;font-size:12px}
@media(max-width:980px){.pulse-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.pulse-card.pulse-wide{grid-column:span 2}.pulse-page-head{grid-template-columns:1fr;gap:14px}.pulse-page-head .ghost{justify-self:start}}
@media(max-width:640px){.pulse-nav-button{flex:1}.pulse-page{padding-top:0}.pulse-page-head h1{font-size:30px}.pulse-dashboard{grid-template-columns:1fr}.pulse-card,.pulse-card.pulse-wide{grid-column:1}.pulse-card{padding:16px}.pulse-card-head h2{font-size:22px!important}.pulse-bar-row{grid-template-columns:1fr 1fr 28px}.pulse-balance{grid-template-columns:1fr}.pulse-legend{font-size:11px}.pulse-timeline{gap:4px;height:152px}.pulse-timeline span{grid-template-rows:13px minmax(0,1fr) 28px 11px}.pulse-timeline em{font-size:10px}.pulse-timeline small{font-size:9px}.pulse-timeline b{font-size:10px;writing-mode:vertical-rl;transform:rotate(180deg)}}
@media(max-width:640px){.daily-focus-panel{grid-template-columns:1fr;margin:0 0 18px}.daily-focus-panel article,.daily-focus-panel article:first-child{grid-template-columns:1fr;padding:15px 16px}.daily-focus-panel article:first-child small,.daily-focus-panel article:first-child strong,.daily-focus-panel article:first-child button{grid-column:1;grid-row:auto}.daily-focus-panel article:first-child button{justify-self:start;margin-top:2px}.daily-focus-panel strong{font-size:15px}}

/* Compact collapsed year and quarter sections */
body.app-view .grid.top.collapsed-section{
  margin:0 0 12px;
}
body.app-view .grid.top.collapsed-section .annual{
  min-height:0;
  padding:15px 18px;
  border-radius:8px;
}
body.app-view .grid.top.collapsed-section .panel-title{
  align-items:center;
}
body.app-view .annual .panel-title{
  align-items:center;
}
body.app-view .annual .collapse-toggle{
  align-self:center;
  min-height:0;
}
body.app-view .section-title-quarters{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-left:0;
  padding-right:28px;
}
body.app-view .section-title-quarters h2{
  margin:0;
}
body.app-view .section-title-quarters:before,
body.app-view .section-title-quarters:after{
  display:none;
}
body.app-view .section-title-quarters .collapse-toggle{
  position:static;
  flex:0 0 auto;
  margin-left:auto;
  align-self:center;
  min-height:0;
}
body.app-view .grid.top.collapsed-section .panel-title h2{
  margin:0;
  font-size:22px;
  line-height:1.2;
}
body.app-view .grid.top.collapsed-section .collapse-toggle,
body.app-view .section-title-quarters:has(+ .quarters.collapsed-section) .collapse-toggle{
  padding:7px 11px;
  border-radius:10px;
}
body.app-view .section-title-quarters:has(+ .quarters.collapsed-section){
  box-sizing:border-box;
  min-height:0;
  margin:0 0 12px;
  padding:15px 18px;
  border:1px solid #cfd6df;
  border-radius:8px;
  background:#fff;
}
body.app-view .grid.top:not(.collapsed-section) + .section-title-quarters:has(+ .quarters.collapsed-section){
  margin-top:22px;
}
body.app-view .grid.top.collapsed-section + .section-title-quarters:not(:has(+ .quarters.collapsed-section)){
  margin-top:24px;
}
body.app-view .section-title-quarters:has(+ .quarters.collapsed-section) h2{
  margin:0;
  font-size:22px;
  line-height:1.2;
}
body.app-view .section-title-quarters:has(+ .quarters.collapsed-section):before,
body.app-view .section-title-quarters:has(+ .quarters.collapsed-section):after{
  display:none;
}
body.app-view .section-title-quarters:has(+ .quarters.collapsed-section):before{
  top:2px;
}
body.app-view .section-title-quarters:has(+ .quarters.collapsed-section):after{
  top:11px;
}
body.app-view .section-title-quarters:has(+ .quarters.collapsed-section) .collapse-toggle{
  position:static;
  flex:0 0 auto;
  margin-left:auto;
}
@media(max-width:640px){
  body.app-view .grid.top.collapsed-section .annual{
    padding:13px 14px;
  }
  body.app-view .grid.top.collapsed-section .panel-title h2,
  body.app-view .section-title-quarters:has(+ .quarters.collapsed-section) h2{
    font-size:20px;
  }
  body.app-view .section-title-quarters{
    padding-left:0;
    padding-right:18px;
  }
  body.app-view .section-title-quarters:has(+ .quarters.collapsed-section){
    margin:14px 0 10px;
    padding:13px 14px;
  }
  body.app-view .grid.top:not(.collapsed-section) + .section-title-quarters:has(+ .quarters.collapsed-section),
  body.app-view .grid.top.collapsed-section + .section-title-quarters:not(:has(+ .quarters.collapsed-section)){
    margin-top:18px;
  }
  body.app-view .section-title-quarters:has(+ .quarters.collapsed-section):before{
    top:3px;
  }
  body.app-view .section-title-quarters:has(+ .quarters.collapsed-section):after{
    top:10px;
  }
}

/* Motivating progress panel */
body.app-view .progress-panel .panel-title{
  align-items:flex-start;
}
body.app-view .progress-intro{
  margin:4px 0 0;
  color:#7c858d;
  font-size:13px;
  line-height:1.4;
}
body.app-view .progress-story .progress-win{
  display:block;
  margin-top:5px;
  color:#4f5962;
  font-style:normal;
  font-size:12px;
  line-height:1.35;
}
body.app-view .progress-story em:not(.progress-win){
  display:block;
  margin-top:5px;
  color:#8d6c62;
  font-style:normal;
  font-size:11px;
  line-height:1.35;
}
body.app-view .progress-card small{
  display:block;
  margin-top:4px;
  color:#8b949d;
  font-size:10px;
  font-weight:500;
  line-height:1.25;
}
@media(max-width:640px){
  body.app-view .progress-intro{
    font-size:12px;
  }
  body.app-view .progress-story .progress-win,
  body.app-view .progress-story em:not(.progress-win){
    font-size:11px;
  }
}

/* Simplified progress panel */
body.app-view .progress-overview-simple{
  grid-template-columns:72px minmax(0,1fr)!important;
}
body.app-view .progress-overview-simple .progress-story{
  display:flex;
  align-items:center;
}
body.app-view .progress-overview-simple .progress-story strong{
  font-size:15px!important;
}
body.app-view .progress-metrics-simple .progress-card{
  min-height:74px!important;
}
body.app-view .progress-metrics-simple .progress-card strong{
  font-size:14px!important;
}
body.app-view .progress-metrics-simple .progress-card span{
  margin-top:5px;
  font-size:12px!important;
}
body.app-view .progress-dream-card{
  grid-template-areas:"text percent"!important;
}
body.app-view .progress-dream-card .progress-bar{
  display:none!important;
}
body.app-view .progress-dream-card b{
  color:var(--workspace-red)!important;
}
body.app-view .progress-panel,
body.app-view .annual .panel-title,
body.app-view .section-title-quarters,
body.app-view .progress-dream-card{
  cursor:pointer;
}
body.app-view .progress-dream-card:hover{
  border-color:#ffb8ab!important;
  background:#fff9f7!important;
}
body.app-view .progress-panel:hover{
  border-color:#c6d0dc;
}
@media(max-width:640px){
  body.app-view .progress-overview-simple{
    grid-template-columns:66px minmax(0,1fr)!important;
  }
  body.app-view .progress-metrics-simple .progress-card{
    min-height:64px!important;
  }
}

/* Books and movies page */
body.app-view .library-row .library-text{
  grid-area:auto;
  width:100%;
  min-height:0!important;
  margin:0;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:4px 0!important;
  color:var(--ink);
  font-size:14px;
  line-height:1.25!important;
  resize:none;
  overflow:hidden;
}
body.app-view .library-row .library-text:focus{
  outline:none;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
body.app-view .library-row.done .library-text{
  text-decoration:line-through;
  text-decoration-thickness:1.5px;
  color:#8a817c;
}
body.app-view .library-row[data-library-draft="true"]{
  border:1px dashed #eaded9;
  background:transparent;
}
body.library-view .library-category-card{
  min-height:180px;
}
body.app-view .done-year-group{
  margin-top:8px!important;
  padding-top:0!important;
  border-top:1px solid #f0e7e2!important;
}
body.app-view .done-year-switch{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:8px 0 6px;
  padding:9px 11px;
  border:1px solid #efe5e0;
  border-radius:12px;
  background:#fffdfc;
  color:#706762;
  font-size:13px;
}
body.app-view .done-year-switch b{
  color:#1f2933;
  font-weight:600;
}
body.app-view .done-year-switch small{
  color:#9a8f8a;
  font-size:12px;
}
body.app-view .selected-done-year{
  border-color:#eadbd5!important;
}
body.app-view .done-year-empty{
  margin:4px 7px 8px;
  font-size:13px;
}
body.app-view .done-year-group summary{
  display:flex;
  align-items:center;
  min-height:30px;
  padding:7px 4px!important;
  color:#706762!important;
  font-size:13px!important;
  font-weight:500!important;
}
body.app-view .library-done-years{
  margin-top:10px;
}
body.app-view .library-done-years h3{
  margin:0 0 4px;
  color:#706762;
  font-size:13px;
  font-weight:500;
}
@media (max-width:720px){
  body.app-view .done-year-switch{
    display:block;
    padding:8px 9px;
  }
  body.app-view .done-year-switch small{
    display:block;
    margin-top:3px;
  }
}

/* Stable mobile rows for dreams, books and movies */
@media(max-width:720px){
  body.dreams-view .dream-category-card label.dream-row.goal-row,
  body.library-view .dream-category-card label.dream-row.goal-row{
    display:grid!important;
    grid-template-columns:18px minmax(0,1fr)!important;
    grid-template-areas:
      "check text"
      ". target"!important;
    align-items:start!important;
    gap:5px 8px!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    padding:6px 2px!important;
  }
  body.dreams-view .dream-category-card .dream-check,
  body.library-view .dream-category-card .library-check{
    grid-area:check!important;
    margin-top:5px!important;
  }
  body.dreams-view .dream-category-card textarea.dream-text,
  body.library-view .dream-category-card textarea.library-text{
    grid-area:text!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:26px!important;
    height:auto;
    margin:0!important;
    padding:4px 0!important;
  }
  body.dreams-view .dream-category-card .dream-to-goal,
  body.library-view .dream-category-card .dream-to-goal{
    grid-area:target!important;
    display:block!important;
    justify-self:start!important;
    width:min(100%,180px)!important;
    margin:0!important;
  }
  body.dreams-view .dream-category-card label.dream-row.goal-row:not([data-dream-draft="true"]),
  body.library-view .dream-category-card label.dream-row.goal-row:not([data-library-draft="true"]){
    grid-template-areas:
      "check text"
      ". target"!important;
  }
  body.dreams-view .dream-category-card label.dream-row.goal-row:not([data-dream-draft="true"]) .dream-to-goal,
  body.library-view .dream-category-card label.dream-row.goal-row:not([data-library-draft="true"]) .dream-to-goal{
    grid-area:target!important;
    display:block!important;
  }
  body.dreams-view .dream-category-card label[data-dream-draft="true"],
  body.library-view .dream-category-card label[data-library-draft="true"]{
    display:block!important;
    margin-top:7px!important;
    padding:8px 10px!important;
    border:1px dashed #eaded9!important;
    border-radius:10px!important;
    background:#fffaf8!important;
  }
  body.dreams-view .dream-category-card label[data-dream-draft="true"] .dream-check,
  body.library-view .dream-category-card label[data-library-draft="true"] .library-check,
  body.dreams-view .dream-category-card label[data-dream-draft="true"] .dream-to-goal,
  body.library-view .dream-category-card label[data-library-draft="true"] .dream-to-goal{
    display:none!important;
  }
}

@media(max-width:640px){
  body.app-view .month-head{align-items:flex-end;gap:10px}
  body.app-view .month-actions{gap:6px}
  body.app-view .month-actions .ghost{min-height:36px;padding:7px 9px;font-size:12px}
  body.app-view .month-actions select{width:auto;min-width:116px}
  body.app-view .calendar .is-today:before{display:none}
}

/* Private Pro photo attached to a daily entry. */
.modal{z-index:80}
.toast{z-index:90}
body.app-view #modal .modal-card{width:min(820px,100%)}
.day-photo-panel{position:absolute;right:24px;top:74px;width:230px;margin:0;padding:10px;border:1px solid #d9dee6;border-radius:10px;background:#f8fafc}
.day-photo-preview,.day-photo-placeholder{width:100%;height:230px;border:1px solid #d9dee6;border-radius:8px;overflow:hidden;background:#fff}
.day-photo-preview{display:block;padding:0;cursor:zoom-in}
.day-photo-preview img{display:block;width:100%;height:100%;object-fit:cover}
.day-photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#525b67;text-align:center}
.day-photo-placeholder{background:#eef1f4}
.day-photo-placeholder span{font-size:15px;font-weight:600}
.day-photo-placeholder small{max-width:150px;color:#818a96;font-size:11px;line-height:1.35}
.day-photo-actions{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:9px}
.day-photo-actions button{min-height:30px;padding:5px 7px;border:1px solid #d8dde5;border-radius:7px;background:#fff;color:#343941;font:600 11px/1.15 inherit;cursor:pointer}
.day-photo-actions button:hover{border-color:#ff8e7d;color:#d92d18}
.day-photo-actions button:disabled{cursor:not-allowed;opacity:.55}
.day-photo-status{display:block;margin-top:8px;color:#707986;font-size:11px;line-height:1.35}
#modal .modal-card>label,#modal .modal-card>.field-hint,#modal .modal-card>.day-extra,#modal .modal-card>.autosave-hint{margin-right:252px}
#modal .modal-card:has(.day-photo-panel.hidden)>label,#modal .modal-card:has(.day-photo-panel.hidden)>.field-hint,#modal .modal-card:has(.day-photo-panel.hidden)>.day-extra,#modal .modal-card:has(.day-photo-panel.hidden)>.autosave-hint{margin-right:0!important}
#modal .modal-card:has(.day-photo-panel.hidden) .day-actions{margin-right:0!important}

@media(max-width:720px){
  .day-photo-panel{position:static;display:block;width:100%;margin:8px 0 14px;padding:10px}
  #modal .modal-card>label,#modal .modal-card>.field-hint,#modal .modal-card>.day-extra,#modal .modal-card>.autosave-hint{margin-right:0}
  .day-photo-preview,.day-photo-placeholder{width:100%;height:auto;min-height:0;aspect-ratio:4/3}
  .day-photo-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}
  .day-photo-actions button{min-width:0;white-space:normal}
  .day-photo-status{margin-top:7px}
}

@media(max-width:520px){
  .day-photo-panel{display:block;width:100%;padding:9px}
  .day-photo-preview{width:100%;height:auto;min-height:0;aspect-ratio:4/3}
  .day-photo-placeholder{display:flex!important;width:100%;height:auto;min-height:0;aspect-ratio:4/3}
  .day-photo-placeholder.hidden{display:none!important}
  .day-photo-actions{display:grid;grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}
  .day-photo-actions button{width:100%;min-height:34px;white-space:normal}
  .day-photo-panel:has(.day-photo-preview.hidden) .day-photo-actions{grid-template-columns:1fr;margin-top:8px}
  .day-photo-panel:has(.day-photo-preview.hidden) .day-photo-actions button{justify-self:stretch;width:100%;min-width:0}
  .day-photo-status{grid-column:auto;margin-top:7px}
}
@media(max-width:350px){
  .day-photo-preview{width:100%;height:auto;min-height:0}
}

/* Final large photo and in-page viewer overrides. */
@media(min-width:721px) and (max-width:900px){
  body.app-view #modal .modal-card{width:min(760px,calc(100vw - 32px))}
  .day-photo-panel{position:static;display:block;width:100%;margin:10px 0 16px;padding:10px}
  .day-photo-preview{width:100%;height:auto;min-height:0;aspect-ratio:4/3}
  .day-photo-placeholder{width:100%;height:auto;min-height:0;aspect-ratio:4/3}
  .day-photo-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}
  .day-photo-status{margin-top:7px}
  #modal .modal-card>label,#modal .modal-card>.field-hint,#modal .modal-card>.day-extra,#modal .modal-card>.autosave-hint{margin-right:0}
}
@media(min-width:901px){
  body.app-view #modal .modal-card{width:min(1120px,calc(100vw - 48px))}
  body.app-view #modal .modal-card:has(.day-photo-panel.hidden){width:min(820px,calc(100vw - 48px))}
  .day-photo-panel{width:min(46%,540px)}
  .day-photo-preview,.day-photo-placeholder{height:auto;min-height:320px;aspect-ratio:4/3}
  #modal .modal-card>label,#modal .modal-card>.field-hint,#modal .modal-card>.day-extra,#modal .modal-card>.autosave-hint{margin-right:calc(min(46%,540px) + 36px)}
  #modal .modal-card:has(.day-photo-preview.hidden) .day-photo-panel{width:min(46%,540px)}
  #modal .modal-card:has(.day-photo-preview.hidden)>label,#modal .modal-card:has(.day-photo-preview.hidden)>.field-hint,#modal .modal-card:has(.day-photo-preview.hidden)>.day-extra,#modal .modal-card:has(.day-photo-preview.hidden)>.autosave-hint{margin-right:calc(min(46%,540px) + 36px)}
}
.photo-lightbox{position:fixed;inset:0;z-index:160;display:flex;align-items:center;justify-content:center;padding:32px;background:rgba(15,18,24,.9);backdrop-filter:blur(4px)}
.photo-lightbox.hidden{display:none}
.photo-lightbox img{display:block;max-width:min(1180px,calc(100vw - 64px));max-height:calc(100vh - 64px);width:auto;height:auto;border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.42);object-fit:contain}
.photo-lightbox-close{position:fixed;right:24px;top:20px;z-index:1;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(18,21,27,.72);color:#fff;font:300 32px/40px Arial,sans-serif;cursor:pointer}
.photo-lightbox-close:hover{background:#fff;color:#242931}
body.photo-lightbox-open{overflow:hidden}
@media(max-width:900px){
  .photo-lightbox{padding:20px}
  .photo-lightbox img{max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);border-radius:10px}
  .photo-lightbox-close{right:14px;top:14px;width:40px;height:40px;font-size:29px;line-height:36px}
}
@media(max-width:520px){
  .photo-lightbox{padding:10px}
  .photo-lightbox img{max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:8px}
}
