:root{--bg: #0d1b2a;--panel: #122539;--panel2: #0f2032;--line: #22405f;--line2: #1a3450;--text: #d7e3f4;--muted: #7f97b3;--cyan: #7fd1ff;--yellow: #ffd166;--magenta: #ff2e93;--red: #ff4d4d;--study: #35a852;--work: #7a5cff;--green: var(--study);--purple: var(--work);--money: #e8b04b;--rec: #9ad8c8;--rec-bg: rgba(154, 216, 200, .09);--s1: #1d5c38;--s2: #27804a;--s3: #35a852;--s4: #6fdc8c;--w1: #2f2a63;--w2: #4a3aa8;--w3: #7a5cff;--w4: #a894ff;--cell-empty: #16304a;--cell: 14px;--cell-gap: 3px;--mono: ui-monospace, "Cascadia Code", Consolas, "JetBrains Mono", monospace;--sans: "Segoe UI", system-ui, -apple-system, sans-serif;--fs-hero: 30px;--fs-num: 18px;--fs-body: 15px;--fs-small: 13px;--fs-label: 11px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:var(--fs-body);line-height:1.5}.wrap{max-width:1040px;margin:0 auto;padding:calc(20px + env(safe-area-inset-top)) 20px 64px}.study-ink{color:var(--study)}.work-ink{color:var(--work)}.on-target{color:var(--study)}.muted{color:var(--muted)}header{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:6px}.brand{font-family:var(--mono);font-size:20px;letter-spacing:.04em}.brand b{color:var(--cyan);font-weight:600}.brand .cursor{color:var(--magenta);animation:blink 1.1s steps(1) infinite}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion: reduce){.brand .cursor{animation:none}}header .sub{color:var(--muted);font-family:var(--mono);font-size:12px}header .spacer{flex:1}header .more{display:none}button{font-family:var(--mono);font-size:var(--fs-small);color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:7px 12px;cursor:pointer}button:hover{border-color:var(--cyan)}button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}button.primary{background:var(--cyan);color:#06121e;border-color:var(--cyan);font-weight:600}button.primary:hover{filter:brightness(1.08)}button.ghost{background:none;border-color:transparent;color:var(--muted);padding:4px 9px;font-size:15px;line-height:1}button.ghost:hover{color:var(--red);border-color:transparent}.linkish{border:none;background:none;padding:4px 6px;color:var(--muted);font-family:var(--mono);font-size:12px}.linkish:hover{color:var(--cyan);border:none}.seg{display:inline-flex;background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:2px;gap:2px}.seg button{border:none;background:none;border-radius:6px;padding:5px 12px;color:var(--muted);font-size:12px}.seg button:hover{color:var(--text);border-color:transparent}.seg button[aria-pressed=true]{background:var(--panel);color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}.seg button.study[aria-pressed=true]{color:var(--study)}.seg button.work[aria-pressed=true]{color:var(--work)}.statbar{margin:16px 0 12px}.scopebar{margin-bottom:10px}.stats{display:grid;grid-template-columns:minmax(250px,1.7fr) repeat(3,minmax(92px,1fr));gap:10px}.stats.public{grid-template-columns:repeat(3,minmax(92px,200px))}@media (max-width: 780px){.stats{grid-template-columns:repeat(3,1fr)}.stat.primary{grid-column:1 / -1}}.stat{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-family:var(--mono)}.stat .k{color:var(--muted);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;display:block}.stat .v{font-size:var(--fs-num);display:block;margin-top:3px}.stat.primary .v.hero{font-size:var(--fs-hero);line-height:1.1;margin:4px 0 9px}.stat.primary .v.hero small{font-size:var(--fs-small);color:var(--muted);margin-left:2px}.stat .split{display:block;font-size:12px;color:var(--muted);margin-top:9px}.stat .split b{font-weight:600}.stat .split .sep{margin:0 6px;opacity:.6}.meter{position:relative;display:flex;gap:2px;height:6px;background:var(--panel2);border-radius:3px}.meter.large{height:10px;border-radius:5px}.meter>i{display:block;height:100%;border-radius:3px;min-width:2px}.meter>i.study{background:var(--study)}.meter>i.work{background:var(--work)}.meter>i.money{background:var(--money)}.meter .target{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--text);opacity:.5;border-radius:1px}.legend{display:flex;gap:14px;font-family:var(--mono);font-size:var(--fs-label);color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend .sw{width:10px;height:10px;border-radius:3px;display:inline-block}.legend .sw.study{background:var(--study)}.legend .sw.work{background:var(--work)}.heatwrap{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin-bottom:18px;overflow-x:auto}.heathead{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:10px}.heatlabel,.heatkey,.heatnote{font-family:var(--mono);font-size:var(--fs-label);color:var(--muted)}.heatkey{display:flex;gap:4px;align-items:center}.heatgrid{display:grid;grid-template-columns:auto 1fr;gap:5px 8px;width:max-content}.heatmonths{display:grid;grid-auto-flow:column;grid-auto-columns:var(--cell);gap:var(--cell-gap);font-family:var(--mono);font-size:10px;color:var(--muted)}.heatmonths .mtick{white-space:nowrap}.heatdows{display:grid;grid-template-rows:repeat(7,var(--cell));gap:var(--cell-gap);font-family:var(--mono);font-size:10px;color:var(--muted);text-align:right}.heatdows span{line-height:var(--cell)}.heat{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,var(--cell));grid-auto-columns:var(--cell);gap:var(--cell-gap)}.cell{width:var(--cell);height:var(--cell);border-radius:3px;background:var(--cell-empty)}.cell.today{outline:1px solid var(--magenta);outline-offset:1px}.cell.future{visibility:hidden}.heatkey .cell{width:11px;height:11px}.heatnote{margin-top:10px}nav.tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}nav.tabs::-webkit-scrollbar{display:none}nav.tabs button{border:none;background:none;border-radius:0;padding:9px 14px;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}nav.tabs button:hover{color:var(--text);border-color:transparent;border-bottom-color:var(--line)}nav.tabs button.active{color:var(--cyan);border-bottom-color:var(--cyan)}nav.tabs.sub{border-bottom:none;margin-bottom:12px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px}.panel+.panel{margin-top:14px}.panelhead{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.panelhead h2{margin:0}h2{font-family:var(--mono);font-size:14px;font-weight:600;color:var(--cyan);margin:0 0 14px;letter-spacing:.05em;text-transform:lowercase}label{display:block;font-family:var(--mono);font-size:12px;color:var(--muted);margin:12px 0 4px}input,select,textarea{width:100%;background:var(--panel2);border:1px solid var(--line);border-radius:6px;color:var(--text);padding:8px 10px;font-family:var(--sans);font-size:14px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--cyan);outline-offset:1px;border-color:var(--cyan)}select{cursor:pointer}input[type=checkbox]{width:auto;accent-color:var(--cyan);cursor:pointer}input[type=date],input[type=time],input[type=datetime-local]{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0}input[type=date]::-webkit-date-and-time-value,input[type=time]::-webkit-date-and-time-value,input[type=datetime-local]::-webkit-date-and-time-value{text-align:left;margin:0}input[type=file]{font-family:var(--mono);font-size:12px;color:var(--muted);padding:6px 8px}input[type=file]::file-selector-button{font-family:var(--mono);font-size:12px;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:6px 10px;margin-right:10px;cursor:pointer}input[type=file]::file-selector-button:hover{border-color:var(--cyan)}textarea{min-height:64px;resize:vertical}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.row3{display:grid;grid-template-columns:minmax(140px,1fr) minmax(96px,.6fr) minmax(160px,2fr);gap:16px;align-items:end}.row>*,.row3>*{min-width:0}@media (max-width: 700px){.row,.row3{grid-template-columns:1fr}}.stepper-field{min-width:0}.stepper{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;gap:6px}.stepper input{text-align:center;width:100%}.stepper-btn{min-width:34px;padding:0 10px;line-height:1;font-size:17px;font-variant-numeric:tabular-nums}.stepper-btn:disabled{opacity:.35;cursor:not-allowed}.stepper-btn:disabled:hover{border-color:var(--line)}.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.chips .spacer{flex:1}.chip{font-family:var(--mono);font-size:12px;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:var(--panel2);color:var(--muted);cursor:pointer}.chip:hover{color:var(--text)}.chip[aria-pressed=true]{border-color:var(--cyan);color:var(--cyan);background:#7fd1ff1f}.energy{display:flex;gap:6px}.energy button{width:38px}.energy button.on{border-color:var(--yellow);color:var(--yellow)}.actions{margin-top:18px;display:flex;gap:10px;align-items:center}.toast{font-family:var(--mono);font-size:12px;color:var(--study);opacity:0;transition:opacity .3s}.toast.show{opacity:1}@media (prefers-reduced-motion: reduce){.toast{transition:none}}.error{font-family:var(--mono);font-size:12px;color:var(--red);margin-top:8px}.empty{color:var(--muted);font-family:var(--mono);font-size:var(--fs-small);padding:12px 0}.weektotals{display:grid;grid-template-columns:repeat(3,auto) 1fr;gap:8px 22px;align-items:end;margin:4px 0 18px;font-family:var(--mono)}.weektotals .wt .k{display:block;font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.weektotals .wt .v{font-size:var(--fs-num)}.weektotals .wt .v small{font-size:11px;color:var(--muted)}.weektotals .wtmeter{padding-bottom:7px}@media (max-width: 700px){.weektotals{grid-template-columns:repeat(3,1fr)}.weektotals .wtmeter{grid-column:1 / -1}}.weeknav{display:flex;gap:8px;align-items:center;margin-bottom:12px;font-family:var(--mono);font-size:12px;flex-wrap:wrap}.bars{display:flex;flex-direction:column;gap:7px;margin-top:8px}.bar{display:grid;grid-template-columns:96px 1fr 56px;gap:10px;align-items:center;font-family:var(--mono);font-size:12px}.bar .blabel{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar .track{display:block;height:6px;background:var(--panel2);border-radius:3px}.bar .track>i{display:block;height:100%;border-radius:3px;min-width:2px}.bar .track>i.study{background:var(--study)}.bar .track>i.work{background:var(--work)}.bar .bval{text-align:right}.axisnote{font-family:var(--mono);font-size:var(--fs-label);color:var(--muted);margin:14px 0 0}@media (max-width: 560px){.bar{grid-template-columns:68px 1fr 48px}}.todoadd{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;margin-bottom:8px}.todoadd input[type=date]{width:auto;font-family:var(--mono);font-size:12px}@media (max-width: 780px){.todoadd{grid-template-columns:1fr auto}.todoadd>input:first-child{grid-column:1 / -1}}.todolist{list-style:none;margin:8px 0 0;padding:0}.todolist li{display:flex;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid var(--line2)}.todolist li:last-child{border-bottom:none}.todolist label{display:flex;align-items:center;gap:10px;flex:1;margin:0;cursor:pointer;font-family:var(--sans);font-size:14px;color:var(--text)}.todolist input[type=checkbox]{width:16px;height:16px;accent-color:var(--cyan);flex:none;cursor:pointer}.todolist .tag{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;flex:none;width:58px}.todolist .title{flex:1}.todolist li.done .title{text-decoration:line-through;color:var(--muted)}.todolist .due{font-family:var(--mono);font-size:11px;padding:2px 8px;border-radius:999px;white-space:nowrap}.todolist .due.overdue{color:var(--red);background:#ff4d4d1f}.todolist .due.today{color:var(--yellow);background:#ffd1661f}.todofoot{font-family:var(--mono);font-size:var(--fs-label);color:var(--muted);margin-top:14px}table{width:100%;border-collapse:collapse;font-size:var(--fs-small)}th{font-family:var(--mono);font-size:var(--fs-label);color:var(--muted);text-align:left;font-weight:400;padding:6px 8px;border-bottom:1px solid var(--line);letter-spacing:.06em;text-transform:uppercase}td{padding:7px 8px;border-bottom:1px solid var(--line2);vertical-align:top}td.num{font-family:var(--mono)}tr.today-row td{background:#7fd1ff0f}.timer{font-family:var(--mono);font-size:64px;letter-spacing:.04em;text-align:center;margin:8px 0 2px;color:var(--cyan)}.timer.break{color:var(--study)}.timer-phase{text-align:center;font-family:var(--mono);font-size:12px;color:var(--muted);margin-top:6px}.dots{display:flex;gap:8px;justify-content:center;margin:8px 0 6px}.dot{width:10px;height:10px;border-radius:50%;background:var(--panel2);border:1px solid var(--line)}.dot.done{background:var(--study);border-color:var(--study)}.dot.now{border-color:var(--cyan);background:#7fd1ff40}.focus-actions{justify-content:center}.progress{height:8px;background:var(--panel2);border:1px solid var(--line);border-radius:999px;overflow:hidden;margin:8px 0 16px}.progress i{display:block;height:100%;background:var(--study)}.progress.over i{background:var(--cyan)}.login-card{max-width:380px;margin:8vh auto 0}.landing-cta{margin:20px 0}.yearpanel{margin-top:14px}.yearhead{display:flex;align-items:baseline;gap:10px;width:100%;background:none;border:none;padding:0;text-align:left;cursor:pointer;font-family:var(--mono);font-size:14px;font-weight:600;color:var(--cyan);letter-spacing:.05em;text-transform:lowercase;margin-bottom:8px}.yearhead:hover{border-color:transparent;color:var(--text)}.yearhead .chev{color:var(--muted);font-size:13px}.yearhead .yearname{flex:1}.yearhead .yearcount{font-size:12px;color:var(--muted);white-space:nowrap}.yearhead .badge{margin-left:8px;vertical-align:middle}.yearpanel.is-current{border-color:#7fd1ff73}.youarehere{border-color:var(--cyan)}.youarehere .yah-kicker{font-family:var(--mono);font-size:var(--fs-label);letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);margin-bottom:4px}.youarehere h2{margin-top:0}.youarehere .yah-body{display:flex;flex-direction:column;gap:4px;font-size:13px}.youarehere .yah-body b{color:var(--muted);font-weight:600;margin-right:6px}.youarehere button{margin-top:12px}.qcard{background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin:8px 0;font-size:13px}.qcard .qhead{font-family:var(--mono);color:var(--cyan);font-size:12px;margin-bottom:6px}.qcard b{color:var(--muted);font-weight:600}.plan-item{border-bottom:1px solid var(--line2);padding:6px 0}.plan-item.is-done .plan-title{color:var(--muted);text-decoration:line-through;text-decoration-color:#7f97b380}.plan-row{display:flex;gap:10px;align-items:center}.plan-title{flex:1;cursor:pointer;font-size:14px}.plan-target{font-family:var(--mono);font-size:11px;color:var(--muted);white-space:nowrap}.status-chip{font-family:var(--mono);font-size:11px;width:96px;text-align:center;padding:4px 0;border-radius:999px}.status-chip.not_started{color:var(--muted)}.status-chip.in_progress{color:var(--yellow);border-color:var(--yellow)}.status-chip.done,.status-chip.proficient{color:#06121e;background:var(--study);border-color:var(--study);font-weight:600}.badge{font-family:var(--mono);font-size:10px;padding:2px 7px;border-radius:4px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.badge-milestone{color:var(--magenta);border-color:#ff2e9366}.badge-cert{color:var(--yellow);border-color:#ffd16666}.badge-module{color:var(--cyan);border-color:#7fd1ff66}.badge-book{color:#cfc2ff;border-color:#7a5cff66}.badge-paper{color:#ffab70;border-color:#ff965066}.badge-project{color:var(--study);border-color:#35a85273}.plan-detail{padding:8px 6px 12px 106px}@media (max-width: 700px){.plan-detail{padding-left:6px}.plan-row{flex-wrap:wrap}}.refpara{font-size:13px;color:var(--text);margin:8px 0}.refpara.pre{white-space:pre-wrap;color:var(--muted)}.refsheet{margin-top:14px}.refscroll{overflow-x:auto;margin:10px 0}.finance{margin-top:14px}.finance section{margin-top:18px}.finance .section-head{display:flex;align-items:baseline;gap:10px;margin-bottom:8px}.finance .section-head h3{font-family:var(--mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);margin:0}.finance .section-head button{margin-left:auto}.finance-top{display:flex;gap:10px;flex-wrap:wrap}.finance-top .stat{min-width:130px}.finance .negative{color:var(--red)}.finance .positive{color:var(--study)}.finance .small{font-size:11px}.goal-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-top:14px}.goal-head{display:flex;align-items:baseline;gap:10px}.goal-head h3{margin:0;font-size:var(--fs-body)}.goal-head .muted{margin-left:auto;font-family:var(--mono);font-size:12px}.goal-numbers{font-family:var(--mono);margin:8px 0 10px}.goal-numbers strong{font-size:var(--fs-hero);color:var(--money);line-height:1.1}.goal-meta{display:flex;gap:10px;font-family:var(--mono);font-size:12px;margin-top:7px}.goal-meta .goal-reached{color:var(--study)}.goal-meta>:last-child{margin-left:auto}.goal-projection{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--mono);font-size:12px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line2)}.goal-projection input{width:84px}.goal-projection strong{color:var(--money)}.goal-note{font-size:12px;margin:9px 0 0;line-height:1.5}.account-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:var(--panel2);border:1px solid var(--line2);border-radius:8px;padding:10px}.account-form input,.account-form select{min-width:0}.account-form input[placeholder="last 4"]{width:72px}.account-form label.inline{display:flex;align-items:center;gap:5px;font-family:var(--mono);font-size:12px;color:var(--muted)}.account-form label.inline.disabled{opacity:.4;cursor:not-allowed}.account-form label.inline.disabled input{cursor:not-allowed}.account-table,.txn-table{width:100%;border-collapse:collapse;margin-top:8px}.account-table td,.txn-table td{border-bottom:1px solid var(--line2);padding:8px 6px;vertical-align:top}.account-table td.num,.txn-table td.num{text-align:right;white-space:nowrap;font-family:var(--mono)}.account-table tr.is-savings td:first-child{border-left:2px solid var(--money);padding-left:10px}.account-table .linkish{text-align:right;padding:0;font-size:var(--fs-body);color:var(--text)}.account-table .linkish:hover{color:var(--money)}.balance-edit{display:flex;gap:6px;justify-content:flex-end}.balance-edit input{width:110px;text-align:right}.account-row-actions{display:flex;gap:4px;justify-content:flex-end;white-space:nowrap}button.ghost.danger{color:var(--red)}button.ghost.danger:hover{color:var(--red);border-color:var(--red)}.delete-warning{font-family:var(--mono);font-size:12px;color:var(--red);padding:0 6px 10px!important}.txn-table .tag{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-left:6px}.txn-table .tag.cat{color:var(--cyan)}@media (max-width: 700px){.account-form{flex-direction:column;align-items:stretch}.goal-numbers strong{font-size:var(--fs-num)}}.import-panel input[type=file]{max-width:260px}.import-panel .muted.small{margin:8px 0 0;line-height:1.5}.import-result{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--study);border-radius:8px;padding:12px 14px;margin-top:12px}.import-result.dry{border-left-color:var(--money)}.import-result-head{font-family:var(--mono);font-size:12px}.import-counts{list-style:none;margin:8px 0 0;padding:0;font-family:var(--mono);font-size:12px}.import-counts li{margin:3px 0}.import-counts b{color:var(--text);font-size:var(--fs-body)}.warn{font-family:var(--mono);font-size:12px;color:var(--yellow);margin:8px 0 0;line-height:1.5}.import-counts li.skipped,.import-counts li.skipped b{color:var(--yellow)}.review-inbox .section-head>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review-inbox .remember{font-family:var(--mono);font-size:11px;color:var(--muted);display:inline-flex;align-items:center;gap:6px;cursor:pointer}.review-inbox .raw{margin-top:2px;opacity:.75}.review-inbox .file-cell{display:flex;gap:6px;align-items:center;justify-content:flex-end}.review-inbox .file-cell input{width:150px}.rules-table .mono{font-family:var(--mono)}.rules-table tr.inactive{opacity:.45}.subtabs{display:flex;flex-wrap:wrap;gap:2px;margin:4px 0 18px;padding:3px;background:var(--panel2);border:1px solid var(--line);border-radius:9px}.subtabs button{flex:1 1 auto;border:none;background:none;border-radius:6px;padding:8px 14px;color:var(--muted);font-size:12px;letter-spacing:.02em;display:inline-flex;align-items:center;justify-content:center;gap:7px}.subtabs button:hover{color:var(--text);border-color:transparent}.subtabs button.active{background:var(--panel);color:var(--money);box-shadow:inset 0 0 0 1px var(--line)}.subtabs .badge{font-family:var(--mono);font-size:10px;line-height:1;padding:3px 6px;border-radius:99px;background:var(--line);color:var(--text)}.subtabs button.active .badge{background:var(--money);color:#06121e;font-weight:600}@media (max-width: 620px){.subtabs button{flex:1 1 40%}}.pager{display:flex;align-items:center;justify-content:center;gap:12px;margin:12px 0 4px}.pager .muted.small{margin:0;font-family:var(--mono)}.rule-actions{display:flex;gap:4px;justify-content:flex-end}.rule-edit{display:flex;gap:6px;align-items:center}.rule-edit input{width:150px}input.rule-priority{width:62px;text-align:right}.section-head>div{display:flex;gap:8px}.cat-table .bar-cell{width:40%;padding-right:12px}.cat-table .meter{display:block;width:100%;height:6px;background:var(--cell-empty);border-radius:3px;overflow:hidden}.cat-table .meter>i{display:block;height:100%;background:var(--money);border-radius:3px}.spending .seg{display:flex}@media (max-width: 620px){.cat-table .bar-cell{display:none}.review-inbox .file-cell{flex-direction:column;align-items:stretch}.review-inbox .file-cell input{width:100%}}h4{font-size:var(--fs-small);font-weight:600;color:var(--muted);margin:0;text-transform:lowercase;letter-spacing:.04em}.budget-table .bar-cell{width:26%;padding-right:12px}.budget-table .meter{position:relative}.budget-table .meter>i.over{background:var(--red)}.budget-table .pace-mark{position:absolute;top:-2px;width:1px;height:10px;background:var(--text);opacity:.55}.pace{font-family:var(--mono);font-size:10px;letter-spacing:.05em}.pace-under{color:var(--muted)}.pace-on_track{color:var(--study)}.pace-ahead_of_pace{color:var(--yellow)}.pace-exceeded{color:var(--red)}.pace-within{color:var(--muted)}.income-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.income-line input{width:130px}.recurring-table tr.inactive{opacity:.5}.months{display:flex;align-items:flex-end;gap:10px;height:96px;margin:14px 0 4px}.months .month{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;position:relative}.months .bar{display:block;width:100%;background:var(--money);border-radius:3px 3px 0 0;min-height:2px}.months .month.partial .bar{opacity:.45}.months .amt{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:4px}.months .lbl{font-family:var(--mono);font-size:10px;color:var(--muted);opacity:.7}@media (max-width: 620px){.budget-table .bar-cell,.months .amt{display:none}}:root{--us: #e88fb0}.closeness{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--us);border-radius:8px;padding:14px 16px;margin:14px 0}.closeness.tone-calm{border-left-color:#e88fb066}.closeness.tone-neutral{border-left-color:var(--line)}.closeness.tone-suggest{border-left-color:var(--us)}.closeness.hidden{display:flex;align-items:center;justify-content:space-between;border-left-color:var(--line)}.closeness-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.closeness-head strong{font-size:var(--fs-num)}.closeness .detail{margin:6px 0 0;color:var(--muted);font-size:var(--fs-small);line-height:1.5}.closeness .recent{margin:8px 0 0;font-family:var(--mono);font-size:12px;color:var(--text)}.closeness .muted.small{margin:6px 0 0}.us>.closeness:first-child{margin-top:0}.facts{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:2px 15px;margin-bottom:12px}.fact{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line2)}.fact:last-child{border-bottom:0}.fact>span{font-size:var(--fs-body)}.fact>b{font-family:var(--mono);font-size:var(--fs-small);font-weight:400}.fact>b.far{color:var(--muted)}.logbutton{display:block;width:100%;min-height:44px;margin-bottom:12px;color:var(--us);border-color:#e88fb04d;background:#e88fb017}.logbutton:hover{border-color:var(--us)}.logform{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 15px;margin-bottom:12px;display:flex;flex-direction:column;gap:8px}.logform .logactions{display:flex;justify-content:flex-end;gap:8px}.logform .logactions button{min-height:40px}.logform .muted.small{margin:0}.drawers{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;margin-bottom:12px;scrollbar-width:none}.drawers::-webkit-scrollbar{display:none}.drawers .chip{min-height:36px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.drawers .chip.active{border-color:var(--us);color:var(--us);background:#e88fb01f}.drawers .chip b{font-weight:400;color:var(--muted)}.thread{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px 0}.thread .error{margin:0 0 10px}.rail{position:relative;padding-left:26px}.rail:before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:1px;background:var(--line)}.node{position:relative;margin:0 -8px;padding:9px 8px;border-radius:8px;display:flex;flex-wrap:wrap;align-items:flex-start;column-gap:8px}.node:before{content:"";position:absolute;left:-17px;top:16px;width:9px;height:9px;border-radius:50%;background:var(--panel);border:1px solid var(--line)}.node.us:before{background:var(--us);border-color:var(--us)}.node.ahead:before{background:var(--bg);border-color:var(--muted)}.node .when{flex:1 1 100%;font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.04em}.node .what{flex:1;min-width:0;font-size:14.5px;margin-top:1px}.node .what .kindtag{font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--us);border:1px solid rgba(232,143,176,.3);border-radius:4px;padding:1px 6px;background:#e88fb017;margin-left:7px;white-space:nowrap}.node .what .soft{color:var(--muted);font-size:var(--fs-small);margin-left:7px}.node .empty{flex:1 1 100%}.rowdelete{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin:-9px -8px -9px 0;padding:0;border:none;background:none;color:var(--muted);flex:none}.rowdelete:hover{color:var(--red);border:none}@media (hover: hover) and (pointer: fine){.rowdelete{opacity:0;transition:opacity .12s}.node:hover .rowdelete,.rowdelete:focus-visible{opacity:1}}.node.confirming{background:#ff4d4d0f}.node .confirm{flex:1 1 100%;display:flex;align-items:center;gap:8px;margin-top:9px}.node .confirm>span{flex:1;font-family:var(--mono);font-size:12px;color:var(--red)}.node .confirm button{min-height:36px}.node .confirm button.danger{color:var(--red);border-color:#ff4d4d66}@media (hover: hover) and (pointer: fine){.node .confirm{max-width:420px;margin-left:auto}}.today-rule{display:flex;align-items:center;gap:10px;margin:6px 0 2px}.today-rule>span{flex:1;height:1px;background:var(--line2)}.today-rule>em{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-style:normal}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line2);margin:6px -16px 0;padding:10px 16px}.pager .count{font-family:var(--mono);font-size:11.5px;color:var(--muted)}.pager>div{display:flex;gap:6px}.pager button{min-height:38px}.pager button:disabled{opacity:.4;cursor:default}.pager button:disabled:hover{border-color:var(--line)}.us .section-head>div{display:flex;gap:8px;align-items:center}.ideas-table td:first-child,.reading-table td:first-child{line-height:1.4}.reading-table tr.read td:first-child>a,.reading-table tr.read td:first-child{color:var(--muted)}.reading-table .takeaway{margin-top:4px;font-size:var(--fs-small);color:var(--text);border-left:2px solid var(--us);padding-left:8px}@media (max-width: 620px){.us .section-head>div{flex-wrap:wrap}}.fold{border-top:1px solid var(--line2);margin-top:14px;padding-top:4px}.fold>summary{font-family:var(--mono);font-size:12px;color:var(--muted);cursor:pointer;padding:9px 2px;list-style:none;display:flex;align-items:center;gap:8px}.fold>summary::-webkit-details-marker{display:none}.fold>summary:before{content:"▸";font-size:10px}.fold[open]>summary:before{content:"▾"}.fold>summary:hover{color:var(--text)}.calnav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.calnav h2{margin:0 4px;min-width:0;font-size:15px;text-transform:none;letter-spacing:0}.calnav .spacer{flex:1}.calnav .seg button{text-transform:lowercase}.calnew{white-space:nowrap}.cal-month{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:start}@media (max-width: 860px){.cal-month{grid-template-columns:minmax(0,1fr)}}.monthgrid-dows{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-family:var(--mono);font-size:var(--fs-label);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;text-align:center;margin-bottom:4px}.monthgrid-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.daycell{position:relative;display:flex;flex-direction:column;gap:2px;min-height:84px;background:none;border:1px solid var(--line2);border-radius:7px;padding:4px 4px 5px;cursor:pointer;min-width:0}.daycell:hover{border-color:var(--line)}.daycell:hover .dayadd{opacity:1}.dayhead{display:flex;align-items:center;justify-content:space-between}.daynum{font-family:var(--mono);font-size:13px;background:none;border:none;padding:1px 5px;border-radius:999px;color:var(--text);line-height:1.3}.daynum:hover{border:none;color:var(--cyan)}.dayadd{opacity:0;background:none;border:none;padding:0 5px;color:var(--muted);font-size:15px;line-height:1}.dayadd:hover{color:var(--cyan);border:none}.dayadd:focus-visible{opacity:1}.daycell.outside .daynum,.daycell.outside .daychip{opacity:.45}.daycell.selected{background:#7fd1ff14;border-color:var(--cyan)}.daycell.selected .daynum{color:var(--cyan)}.daycell.is-today .daynum{background:var(--magenta);color:#fff;font-weight:600}.daychips{display:flex;flex-direction:column;gap:2px;min-width:0}.daychip{display:block;width:100%;text-align:left;font-family:var(--sans);font-size:11px;line-height:1.35;padding:1px 5px 1px 6px;border:none;border-left:3px solid var(--line);border-radius:3px;background:var(--panel2);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.daychip:hover{border-color:inherit;filter:brightness(1.15)}.daychip .mono{font-size:10px;color:var(--muted);margin-right:2px}.daychip.study{border-left-color:var(--study)}.daychip.work{border-left-color:var(--work)}.daychip.appt{border-left-color:var(--cyan)}.daychip.personal{border-left-color:var(--muted)}.daychip.allday{border-left-width:0;padding-left:6px;color:#06121e;font-weight:600}.daychip.allday.study{background:var(--study)}.daychip.allday.work{background:var(--work);color:#fff}.daychip.allday.appt{background:var(--cyan)}.daychip.allday.personal{background:var(--muted)}.daymore{font-size:10px;color:var(--muted);padding-left:6px}.daydots{display:none;gap:2px;height:4px;justify-content:center}.daydots i{width:4px;height:4px;border-radius:50%;display:block}.daydots i.study{background:var(--study)}.daydots i.work{background:var(--work)}.daydots i.appt{background:var(--cyan)}.daydots i.personal{background:var(--muted)}.callegend{margin-top:12px}.legend .sw.appt{background:var(--cyan)}.legend .sw.personal{background:var(--muted)}.daysheet .panelhead{margin-bottom:6px}.daysheet .panelhead h2{font-size:13px}.dayrow{display:flex;gap:11px;width:100%;text-align:left;padding:9px 8px 9px 10px;background:none;border:none;border-left:2px solid var(--line);border-radius:0 6px 6px 0;border-bottom:1px solid var(--line2);font-family:var(--sans);font-size:14px;color:var(--text)}.dayrow:hover{background:var(--panel2);border-color:var(--line)}.dayrow:last-of-type{border-bottom:none}.daytime{flex:none;width:48px;font-size:11px;color:var(--muted);padding-top:2px;line-height:1.5}.daytime small{display:block;font-size:10px;opacity:.8}.daybody{flex:1;min-width:0}.daytitle{font-size:14px}.daymeta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:3px;font-size:11px;color:var(--muted)}.daynotes{font-size:12px;color:var(--muted);margin:5px 0 0;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dayrow.study{border-left-color:var(--study)}.dayrow.work{border-left-color:var(--work)}.dayrow.appt{border-left-color:var(--cyan)}.dayrow.personal{border-left-color:var(--line)}.addrow{width:100%;margin-top:12px;color:var(--muted)}.tg{--hour: 48px;--gutter: 46px;border:1px solid var(--line2);border-radius:8px;overflow:hidden}.tg-head,.tg-allday,.tg-canvas{display:grid}.tg-head{border-bottom:1px solid var(--line2);background:var(--panel2)}.tg-gutter{font-family:var(--mono);font-size:10px;color:var(--muted);padding:4px 6px;text-align:right}.tg-day{display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 2px;background:none;border:none;border-left:1px solid var(--line2);border-radius:0}.tg-day:hover{background:var(--panel);border-color:var(--line2)}.tg-dow{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.tg-num{font-family:var(--mono);font-size:16px;line-height:1.5;padding:0 7px;border-radius:999px}.tg-day.is-today .tg-num{background:var(--magenta);color:#fff;font-weight:600}.tg-day.is-today .tg-dow{color:var(--magenta)}.tg-allday{border-bottom:1px solid var(--line2)}.tg-allday .tg-gutter{align-self:center}.tg-allday-col{display:flex;flex-direction:column;gap:2px;padding:3px 2px;border-left:1px solid var(--line2);min-width:0}.tg-chip{font-family:var(--sans);font-size:11px;font-weight:600;text-align:left;padding:2px 6px;border:none;border-radius:4px;color:#06121e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tg-chip.study{background:var(--study)}.tg-chip.work{background:var(--work);color:#fff}.tg-chip.appt{background:var(--cyan)}.tg-chip.personal{background:var(--muted)}.tg-body{max-height:min(calc(100vh - 320px),calc(24 * var(--hour)));min-height:340px;overflow-y:auto}.tg-canvas{height:calc(24 * var(--hour))}.tg-hours{position:relative}.tg-hour{height:var(--hour);font-size:10px;color:var(--muted);text-align:right;padding-right:6px;transform:translateY(-7px)}.tg-col{position:relative;border-left:1px solid var(--line2);cursor:cell;background:repeating-linear-gradient(to bottom,var(--line2) 0 1px,transparent 1px var(--hour))}.tg-col.is-today{background-color:#ff2e9309}.tg-col:hover{background-color:#7fd1ff0a}.tg-ev{position:absolute;display:flex;flex-direction:column;gap:0;overflow:hidden;text-align:left;padding:3px 6px;border:none;border-left:3px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--text);font-family:var(--sans);font-size:12px;line-height:1.3;box-shadow:0 1px #00000040;cursor:pointer}.tg-ev:hover{filter:brightness(1.15);border-color:inherit;z-index:5!important}.tg-ev:focus-visible{z-index:5!important}.tg-ev.study{border-left-color:var(--study);background:#35a85238}.tg-ev.work{border-left-color:var(--work);background:#7a5cff38}.tg-ev.appt{border-left-color:var(--cyan);background:#7fd1ff2e}.tg-ev.personal{border-left-color:var(--muted);background:#7f97b32e}.tg-ev.open{border-bottom:1px dashed var(--line)}.tg-ev-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tg-ev-time{font-size:10px;color:var(--muted)}.tg-now{position:absolute;left:0;right:0;height:0;border-top:2px solid var(--magenta);pointer-events:none;z-index:3}.tg-now:before{content:"";position:absolute;left:-5px;top:-5px;width:8px;height:8px;border-radius:50%;background:var(--magenta)}.tg-one .tg-ev{font-size:13px;padding:5px 9px}.tg-one .tg-ev-time{font-size:11px}.pop-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.pop{position:fixed;width:340px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px 16px;box-shadow:0 18px 50px #00000073}.pop.editor{width:400px}.pop-backdrop:not(.sheet-backdrop){background:#060f1a59}.pop-sheet{max-height:88vh}.peek-head{display:flex;align-items:flex-start;gap:8px;padding-left:10px;border-left:3px solid var(--line);margin-bottom:10px}.peek-head.study{border-color:var(--study)}.peek-head.work{border-color:var(--work)}.peek-head.appt{border-color:var(--cyan)}.peek-head.personal{border-color:var(--muted)}.peek-title{flex:1;font-size:17px;font-weight:600;line-height:1.3;overflow-wrap:anywhere}.peek-facts{display:grid;grid-template-columns:70px 1fr;gap:7px 10px;margin:0;font-size:13px}.peek-facts dt{font-family:var(--mono);font-size:11px;color:var(--muted);padding-top:2px}.peek-facts dd{margin:0;min-width:0}.peek-kind{font-family:var(--mono);font-size:12px}.peek-kind.study{color:var(--study)}.peek-kind.work{color:var(--work)}.peek-kind.appt{color:var(--cyan)}.peek-kind.personal{color:var(--muted)}.peek-notes{white-space:pre-wrap;color:var(--muted)}.peek-actions,.editor-actions{display:flex;align-items:center;gap:8px;margin-top:16px}.peek-actions .spacer,.editor-actions .spacer{flex:1}.peek-actions .ghost.danger,.editor-actions .ghost.danger{font-size:12px;font-family:var(--mono)}.editor-title{font-size:18px;padding:8px 4px;border:none;border-bottom:2px solid var(--line);border-radius:0;background:none}.editor-title:focus-visible{outline:none;border-bottom-color:var(--cyan)}.editor-kinds{margin-top:12px}.editor-kinds .chip.study[aria-pressed=true]{color:var(--study);border-color:var(--study);background:#35a8521f}.editor-kinds .chip.work[aria-pressed=true]{color:#cfc2ff;border-color:var(--work);background:#7a5cff24}.editor-kinds .chip.appt[aria-pressed=true]{color:var(--cyan);border-color:var(--cyan);background:#7fd1ff1f}.editor-kinds .chip.personal[aria-pressed=true]{color:var(--text);border-color:var(--muted);background:#7f97b324}.editor-when{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.editor-when>div{min-width:0}.editor-allday{margin:0 0 9px;white-space:nowrap}.editor-times{display:grid;grid-template-columns:1fr 1fr;gap:12px}.editor-times>div{min-width:0}.editor-durations{margin-top:8px}.editor-durations .chip{padding:3px 8px;font-size:11px}.editor-durations .chip:disabled{opacity:.4;cursor:default}.editor textarea,.pop-sheet textarea{min-height:54px}@media (pointer: coarse){.daycell{min-height:0;aspect-ratio:1;align-items:center;justify-content:center;padding:2px;gap:3px}.dayhead{justify-content:center}.dayadd,.daychips{display:none}.daydots{display:flex}.daycell.selected{background:#7fd1ff21}.cal-month{grid-template-columns:minmax(0,1fr)}.calnav h2{font-size:14px}.calnav h2{flex:1;font-size:14px}.calnav .spacer{flex:0 0 100%;height:0}.calnav .seg{flex:1;display:flex}.calnav .seg button{flex:1}.tg{--gutter: 40px}.tg-day{min-height:48px}.tg-body{max-height:calc(100vh - 300px)}.tg:not(.tg-one) .tg-ev{padding:2px 3px 2px 4px}.tg:not(.tg-one) .tg-ev-time{display:none}.tg:not(.tg-one) .tg-ev-title{white-space:normal;font-size:10px;line-height:1.2;overflow-wrap:anywhere}.tg:not(.tg-one) .tg-chip{white-space:normal;font-size:10px;line-height:1.2;padding:2px 3px}.dayrow{padding-top:12px;padding-bottom:12px}}.inline-check{display:flex;align-items:center;gap:9px;margin:14px 0 0;font-family:var(--mono);font-size:12px;color:var(--muted)}.inline-check input{width:auto}.upkeep-group{margin-top:16px}.upkeep-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.upkeep-group.overdue .upkeep-head{color:var(--red)}.upkeep-group.due_soon .upkeep-head{color:var(--yellow)}.upkeep-row{display:flex;align-items:center;gap:10px;padding:10px 0 10px 12px;border-bottom:1px solid var(--line2);border-left:2px solid var(--line)}.upkeep-row:last-child{border-bottom:none}.upkeep-row.overdue{border-left-color:var(--red)}.upkeep-row.due_soon{border-left-color:var(--yellow)}.upkeep-body{flex:1;min-width:0}.upkeep-title{font-size:14px}.upkeep-meta{font-size:11px;color:var(--muted);margin-top:3px}.due{flex:none;font-family:var(--mono);font-size:11px;padding:3px 9px;border-radius:999px;white-space:nowrap;color:var(--muted)}.due.overdue{color:var(--red);background:#ff4d4d1f}.due.due_soon{color:var(--yellow);background:#ffd1661f}.upkeep-done{flex:none;color:var(--study);border-color:var(--line)}.upkeep-done:hover{border-color:var(--study)}@media (max-width: 620px){.daytime{width:40px}}.bottomnav{display:none}.bottomnav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:none;background:none;border-radius:0;color:var(--muted);font-family:var(--mono);font-size:10px;letter-spacing:.02em;padding:8px 2px;min-height:56px}.bottomnav button.active{color:var(--cyan)}.bottomnav button:hover{border-color:transparent}.bottomnav button:focus-visible{outline:2px solid var(--cyan);outline-offset:-3px}.bottomnav button span{text-overflow:ellipsis;overflow:hidden;max-width:100%;white-space:nowrap}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#060f1aa8;display:flex;align-items:flex-end}.sheet{width:100%;background:var(--panel);border-top:1px solid var(--line);border-radius:14px 14px 0 0;padding:10px 16px calc(18px + env(safe-area-inset-bottom));max-height:76vh;overflow-y:auto}.sheet-grip{width:34px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 14px}.sheet-items{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sheet-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:var(--panel2);border:1px solid var(--line);border-radius:10px;color:var(--muted);font-family:var(--mono);font-size:12px;padding:16px 6px}.sheet-item.active{border-color:var(--cyan);color:var(--cyan);background:#7fd1ff1a}.sheet-actions{display:flex;gap:8px;margin-top:12px}.sheet-actions button{flex:1}.sheet-close{width:100%;margin-top:8px}@media (pointer: coarse){button,input,select,textarea,label,summary,a{touch-action:manipulation}button,.chip,.status-chip{-webkit-tap-highlight-color:transparent}button:active,.chip:active{filter:brightness(1.25)}button{min-height:44px;padding:11px 16px}button.ghost{min-width:44px;padding:10px}.drawers .chip,.pager button,.node .confirm button,.logform .logactions button{min-height:44px}.stepper-btn{min-width:44px;padding:0 12px}.stepper input{min-height:44px}.linkish{min-height:44px;display:inline-flex;align-items:center}.seg button,.subtabs button{min-height:44px;padding:11px 14px}nav.tabs button{min-height:44px;padding:12px 16px}.chip{min-height:44px;padding:12px 16px;display:inline-flex;align-items:center}.status-chip{min-height:44px}.plan-row{flex-wrap:wrap;gap:8px;align-items:center}.plan-title{order:-1;flex:1 1 100%;font-size:15px;line-height:1.35}.status-chip{width:auto;padding:4px 14px}.plan-target{margin-left:auto}table.stacked,table.stacked tbody,table.stacked tr,table.stacked td{display:block}table.stacked thead{display:none}table.stacked tr{border-bottom:1px solid var(--line);padding:9px 0}table.stacked tr:last-child{border-bottom:none}table.stacked td{border:none;padding:2px 0}table.stacked td[data-label]:before{content:attr(data-label) " ";font-family:var(--mono);font-size:var(--fs-label);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}table.stacked td:empty{display:none}table.stacked td:first-child{font-weight:600;padding-bottom:4px}.energy button{width:auto;flex:1;min-width:44px}input:not([type=checkbox]),select,textarea{font-size:16px;min-height:44px;padding:11px 12px}textarea{min-height:96px}input[type=checkbox],.todolist input[type=checkbox]{width:22px;height:22px}.todolist li{padding:4px 2px}.todolist label{min-height:44px}.todoadd input[type=date],input[type=file]{font-size:16px}input[type=file]{min-height:44px}input[type=file]::file-selector-button{min-height:36px;padding:8px 12px}td{padding:10px 8px}header .sub{display:none}header>button{display:none}header>button.more{display:inline-flex;align-items:center;gap:6px;align-self:center;min-height:36px;min-width:36px;padding:0 9px;border-radius:999px;font-size:12px;color:var(--muted);background:none}header>button.more.active{color:var(--cyan);border-color:var(--cyan)}header{gap:8px;margin-bottom:2px}.brand{font-size:17px}.statbar{margin:10px 0 8px}.scopebar{margin-bottom:8px}.stats{grid-template-columns:repeat(3,1fr);gap:6px}.stat{padding:8px 11px}.stat.primary{grid-column:1 / -1}.stat.primary .v.hero{font-size:26px;margin:2px 0 8px}.stat.primary .split{margin-top:7px}.stat:not(.primary):not(:has(.split)){display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:9px 11px}.stat:not(.primary):not(:has(.split)) .k{display:inline;font-size:10px}.stat:not(.primary):not(:has(.split)) .v{display:inline;font-size:14px;margin-top:0}.stat:not(.primary):has(.split){grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;padding:9px 12px}.stat:not(.primary):has(.split) .k{font-size:10px}.stat:not(.primary):has(.split) .v{margin:0 0 0 auto;font-size:15px}.stat:not(.primary):has(.split) .split{flex-basis:100%;margin-top:2px}.heatwrap{padding:10px 12px;margin-bottom:12px;--cell: 9px}.heatdows{display:none}.heatgrid{grid-template-columns:1fr;gap:4px 0}.heatnote{display:none}.heathead{margin-bottom:7px}nav.tabs:not(.sub){display:none}nav.tabs.sub{overflow-x:auto;-webkit-overflow-scrolling:touch}nav.tabs.sub button{min-height:44px;padding:0 14px}.bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(5,1fr);background:var(--panel);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.wrap{padding:calc(12px + env(safe-area-inset-top)) 16px calc(104px + env(safe-area-inset-bottom))}}.pending-note{font-family:var(--mono);font-size:12px;color:var(--yellow)}.ai-draft{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-bottom:18px;background:var(--panel2)}.ai-draft-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ai-draft-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.ai-draft-kicker{font-family:var(--mono);font-size:var(--fs-label);letter-spacing:.1em;text-transform:uppercase;color:var(--cyan)}.ai-draft-body{font-size:13px;display:flex;flex-direction:column;gap:6px}.ai-draft-body p{margin:0}.ai-draft-body b{color:var(--muted);font-weight:600;margin-right:6px}.ai-draft-cost{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:10px}.askpanel{display:flex;flex-direction:column}.askthread{display:flex;flex-direction:column;gap:12px;min-height:40vh;padding:4px 0 12px}.bubble{padding:9px 13px;border-radius:16px;font-size:14px;font-family:var(--sans);line-height:1.5;max-width:86%;white-space:pre-wrap}.bubble.user{align-self:flex-end;background:#7fd1ff21;border:1px solid rgba(127,209,255,.3);border-bottom-right-radius:5px}.bubble.assistant{align-self:flex-start;max-width:100%;padding:4px 0;background:none;border:none}.bubble.thinking{color:var(--muted);font-family:var(--mono);font-size:12px}.askempty{padding:8px 0 4px}.askempty .empty{margin:0 0 12px;padding:0;line-height:1.55}.starters{display:flex;flex-wrap:wrap;gap:8px}.starter{border-radius:999px;padding:8px 13px;font-family:var(--sans);font-size:13px;color:var(--text);background:var(--panel2)}.composer{position:sticky;bottom:12px;z-index:5;margin-top:12px;display:flex;flex-direction:column;gap:4px;padding:10px 10px 8px 14px;background:var(--panel2);border:1px solid var(--line);border-radius:22px;box-shadow:0 -14px 28px -10px var(--bg),0 2px 12px #00000040}.composer:focus-within{border-color:var(--cyan)}.composer.listening{border-color:#ff2e938c}.composer-box{width:100%;min-height:26px;max-height:168px;margin:0;padding:4px 0;box-sizing:border-box;background:none;border:none;border-radius:0;resize:none;outline:none;font-family:var(--sans);font-size:16px;line-height:1.4;color:var(--text)}.composer-box:focus,.composer-box:focus-visible{border:none;box-shadow:none;outline:none}.composer-box::placeholder{color:var(--muted)}.composer-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.composer-left{flex:1;min-width:0;font-family:var(--mono);font-size:11px;color:var(--muted);line-height:1.35}.composer-hint{color:var(--muted)}.composer-right{display:flex;gap:6px;flex:none}.composer .mic,.composer .send{width:40px;height:40px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.composer .mic{background:none;border-color:transparent;color:var(--muted)}.composer .mic:hover{color:var(--text);border-color:var(--line)}.composer .mic.on{color:var(--magenta);background:#ff2e9324;border-color:#ff2e9366}.composer .mic.on svg{animation:mic-pulse 1.2s ease-in-out infinite}.composer .send{background:var(--cyan);border-color:var(--cyan);color:#06121e}.composer .send:hover{filter:brightness(1.08)}.composer .send:disabled{opacity:.35;cursor:default;filter:none}.listening-pill{display:inline-flex;align-items:center;gap:6px;color:var(--magenta)}.listening-pill .dot{width:8px;height:8px;border-radius:50%;background:var(--magenta);animation:mic-pulse 1.2s ease-in-out infinite}@keyframes mic-pulse{50%{opacity:.45}}@media (prefers-reduced-motion: reduce){.composer .mic.on svg,.listening-pill .dot{animation:none}}@media (pointer: coarse){.composer .mic,.composer .send{width:44px;height:44px}.starter{min-height:40px}.askpanel{background:none;border:none;padding:0;margin-bottom:-40px;min-height:calc(100vh - 104px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:calc(100dvh - 104px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.askthread{flex:1;min-height:0}.composer{bottom:calc(64px + env(safe-area-inset-bottom))}}.weekplan .wp-rationale{font-size:13px;margin:0 0 12px}.wp-blocks{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.wp-block{display:flex;gap:10px;align-items:baseline;padding:7px 10px;background:var(--panel2);border:1px solid var(--line);border-radius:8px;font-size:13px}.wp-when{font-family:var(--mono);font-size:11px;color:var(--cyan);white-space:nowrap}.wp-title{flex:1;min-width:0}@media (pointer: coarse){.wp-block{flex-wrap:wrap;gap:2px}.wp-when{flex:1 1 100%}}.bubble .caret{display:inline-block;width:7px;height:1em;margin-left:2px;vertical-align:text-bottom;background:currentColor;opacity:.55;animation:caret-blink 1s step-end infinite}@keyframes caret-blink{50%{opacity:0}}@media (prefers-reduced-motion: reduce){.bubble .caret{animation:none}}.proposal{margin:8px 0 4px;padding:12px 14px;background:var(--panel2);border:1px solid var(--line);border-left:2px solid var(--cyan);border-radius:10px}.proposal-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.proposal-sum{font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap}.proposal .wp-blocks{margin-top:10px}.proposal-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line2)}.proposal-actions .muted.small{margin:0}.proposal-done{margin:12px 0 0;padding-top:10px;border-top:1px solid var(--line2);font-size:var(--fs-small);color:var(--study)}.proposal .error{margin-top:10px}@media (pointer: coarse){.proposal-actions{flex-direction:column;align-items:stretch;gap:8px}.proposal-actions button{min-height:44px}}.threadline{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;margin-bottom:10px;padding:8px 13px;text-align:left;font-family:var(--sans);font-size:14px;color:var(--text)}.threadline-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.threadline-count{font-family:var(--mono);font-size:11px;color:var(--muted)}.threadline-chev{color:var(--muted);font-size:16px;line-height:0;margin-top:-6px}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#060c148c;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-height:82vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0;padding:10px 16px calc(12px + env(safe-area-inset-bottom))}.sheet-grip{width:38px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 12px;flex:none}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;margin-bottom:10px}.sheet-head strong{font-size:16px}.sheet-head>div{display:flex;align-items:center;gap:4px}.sheet-new{border-color:#7fd1ff66;color:var(--cyan)}.sheet-search{flex:none;min-height:44px;font-size:16px;margin-bottom:4px}.sheet-list{flex:1;min-height:0;overflow-y:auto}.sheet-day{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:14px 0 2px}.sheet .empty{padding:20px 0}.convrow{display:flex;align-items:flex-start;gap:4px;border-bottom:1px solid var(--line2)}.convrow.on{background:#7fd1ff12;margin:0 -10px;padding:0 10px;border-radius:8px}.convrow.confirming{background:#ff4d4d0f;margin:0 -10px;padding:12px 10px;border-radius:8px}.convbody{flex:1;min-width:0;text-align:left;padding:12px 0;margin:0;border:none;background:none;color:var(--text);font-family:var(--sans);border-radius:0}.convbody:hover{border:none}.convtitle{font-size:14.5px;line-height:1.35}.convtitle.thin{color:var(--muted)}.convmeta{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:3px}.convmeta .drafted{color:var(--cyan)}.convrow .rowdelete{margin:0 -8px 0 0;align-self:center}.convrow .confirm{display:flex;align-items:center;gap:8px;margin-top:9px;flex-wrap:wrap}.convrow .confirm>span{flex:1 1 100%;font-family:var(--mono);font-size:12px;color:var(--red)}.convrow .confirm button.danger{color:var(--red);border-color:#ff4d4d66}@media (min-width: 700px){.sheet-scrim{align-items:flex-start;padding-top:10vh}.sheet{width:min(560px,92vw);max-height:76vh;border-bottom:1px solid var(--line);border-radius:12px}.sheet-grip{display:none}.convrow .rowdelete{opacity:0}.convrow:hover .rowdelete,.convrow .rowdelete:focus-visible{opacity:1}}@media (pointer: coarse){.sheet-new,.convrow .confirm button{min-height:44px}.convrow .rowdelete{opacity:1}}.proposal-day{margin:10px 0 0;display:flex;flex-direction:column;gap:0}.proposal-field{display:flex;gap:12px;padding:6px 0;border-bottom:1px solid var(--line2)}.proposal-field:last-child{border-bottom:0}.proposal-field dt{flex:0 0 82px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:2px}.proposal-field dd{margin:0;flex:1;min-width:0;font-size:13.5px;color:var(--muted);white-space:pre-wrap}.proposal-field.changed dd{color:var(--text)}.proposal-field.changed dt{color:var(--cyan)}.brief{margin-bottom:14px;padding:12px 16px 10px;background:var(--panel2);border:1px solid var(--line);border-left:2px solid var(--cyan);border-radius:10px}.brief-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.brief-when{font-family:var(--mono);font-size:11px;color:var(--muted);white-space:nowrap}.brief-motivation{margin:8px 0 2px;font-size:15px;line-height:1.5;font-weight:500;max-width:66ch}.brief-headline{margin:6px 0 0;font-size:15.5px;line-height:1.4}.brief-body{margin:8px 0 0;font-size:var(--fs-small);line-height:1.55;color:var(--muted);max-width:66ch}.brief-suggestion{margin:8px 0 0;font-size:var(--fs-small);line-height:1.55;max-width:66ch;padding-left:10px;border-left:2px solid var(--line)}.brief-foot{display:flex;justify-content:flex-end;margin-top:6px}.brief-empty{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-left-color:var(--line)}.brief .error{margin-top:8px;flex:1 1 100%}@media (pointer: coarse){.brief .linkish{min-height:44px}}.notif{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-family:var(--mono);font-size:12px;color:var(--muted)}.notif .row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.notif .label{text-transform:uppercase;letter-spacing:.06em;font-size:11px}.notif .state{color:var(--text)}.notif .hint{margin:4px 0 6px;line-height:1.45}.notif .devices{list-style:none;margin:4px 0 6px;padding:0;display:flex;flex-direction:column;gap:4px}.notif .devices li{display:flex;align-items:center;justify-content:space-between;gap:8px}.notif-pop{max-width:520px;margin:0 0 12px;padding:0 12px 10px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.notif-pop .notif{border-top:none;margin-top:0}@media (pointer: coarse){.notif button{min-height:44px}}.proposal-todos{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}.proposal-todos li{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:7px 10px;background:var(--panel2);border:1px solid var(--line);border-radius:8px;font-size:13px}.proposal-todo-title{flex:1;min-width:0}.proposal-todo-meta{font-family:var(--mono);font-size:11px;color:var(--muted);white-space:nowrap}.recpage{display:flex;flex-direction:column;gap:10px;width:100%;max-width:760px;margin:0 auto}.rec-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.rec-head .seg{display:inline-flex}.seg button.rec[aria-pressed=true]{color:var(--rec)}.rec-cols{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}.recpage:not(.view-today) .rec-today{display:none}.recpage:not(.view-read) .rec-read{display:none}.recpage:not(.view-journal) .rec-journal{display:none}.recpage:not(.view-people) .rec-people{display:none}.rec-col{display:flex;flex-direction:column;gap:10px;min-width:0}.rec-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 15px}.rec-card.number{border-left:2px solid var(--rec);display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.rec-card.number .rec-right{text-align:right;font-family:var(--mono);font-size:11px;white-space:nowrap}.rec-card.number .rec-right>div+div{margin-top:4px}.rec-days{font-family:var(--mono);font-size:44px;line-height:1;color:var(--rec);font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.rec-lbl{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.rec-cardhead{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.rec-cardhead>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-cardhead>.rec-note{white-space:nowrap;flex:none}.rec-note{font-family:var(--mono);font-size:11px;color:var(--muted)}.rec-note.ok{color:var(--rec)}.rec-note.right{margin-left:auto}.rec-hint{margin:6px 0 0;font-size:13px;color:var(--muted);line-height:1.5}.rec-title{margin-top:8px;font-size:14.5px}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rec-prose{margin:8px 0 0;font-size:15px;line-height:1.55;white-space:pre-line}.rec-prose.clipped{max-height:9.3em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}.rec-serif{font-family:Georgia,Times New Roman,serif;font-size:16px;line-height:1.6}.rec-serif p{margin:8px 0 0;white-space:pre-line}.rec-verse-para.poetry>span{display:block}.rec-vn{font-family:var(--mono);font-size:9px;color:var(--muted);margin-right:2px;vertical-align:super;line-height:0}.rec-pline{max-width:62ch}.rec-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.rec-foot.right{justify-content:flex-end;margin-top:4px}.rec-foot select{width:auto;min-height:30px;padding:2px 8px;font-size:12px}.linkish.inline{padding:0;font-size:inherit;font-family:inherit;color:var(--cyan)}button.rec-primary{background:var(--rec);border-color:var(--rec);color:#06121e;font-weight:600;white-space:nowrap}button.rec-primary:hover{filter:brightness(1.06);border-color:var(--rec)}button.rec-primary:disabled{opacity:.5;filter:none;cursor:default}.rec-meter{height:6px;background:var(--panel2);border-radius:3px;overflow:hidden;margin-top:8px}.rec-meter i{display:block;height:100%;background:var(--rec);border-radius:3px}.rec-chapters{margin-top:4px;display:flex;flex-direction:column}.rec-chap{display:flex;align-items:center;gap:10px;min-height:32px;font-family:var(--mono);font-size:12px;color:var(--muted)}button.rec-chap{width:100%;padding:0 4px;border:none;background:none;border-radius:6px;text-align:left}button.rec-chap:hover{border-color:transparent;background:var(--panel2);color:var(--text)}button.rec-chap.open{background:var(--rec-bg)}.rec-chap .tick{width:14px;height:14px;border-radius:50%;border:1px solid var(--line);flex:none}.rec-chap.done{color:var(--text)}.rec-chap.done .tick{background:var(--rec);border-color:var(--rec)}.rec-chap.now{color:var(--rec)}.rec-chap.now .tick{border-color:var(--rec);box-shadow:inset 0 0 0 3px var(--panel);background:var(--rec)}.rec-meditation{display:flex;align-items:center;justify-content:space-between;gap:12px}.rec-meditation>div:first-child{min-width:0}.rec-timer{font-family:var(--mono);font-size:30px;line-height:1.1;margin-top:4px;font-variant-numeric:tabular-nums}.rec-chips{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px}.rec-chips button{font-family:var(--mono);font-size:11px;padding:3px 9px;min-height:26px;border-radius:999px;color:var(--muted)}.rec-chips button.on{color:var(--rec);border-color:var(--rec);background:var(--rec-bg)}.rec-chips button.any{border-style:dashed}.rec-chips input{width:64px;min-height:26px;padding:2px 8px;font-family:var(--mono);font-size:12px}.rec-door{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 6px 6px 14px;background:var(--panel2);border:1px solid var(--line);border-radius:20px;font-family:var(--sans);font-size:16px;color:var(--muted);text-align:left}.rec-door-icons{display:flex;gap:6px}.rec-door .round{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:inline-block}.rec-door .round.send{background:var(--rec);border-color:var(--rec)}.rec-entries{display:flex;flex-direction:column}.rec-day{display:flex;align-items:center;gap:10px;margin:8px 0 2px}.rec-day .rule{flex:1;height:1px;background:var(--line2)}.rec-day .txt{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.rec-entry{display:flex;gap:12px;padding:8px 0;align-items:flex-start}.rec-entry .when{font-family:var(--mono);font-size:11px;color:var(--muted);flex:none;width:44px;padding-top:3px;white-space:nowrap}.rec-entry .body{flex:1;min-width:0;font-size:14.5px;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}.rec-entry .spoken{font-family:var(--mono);font-size:10px;color:var(--muted);white-space:nowrap}.rec-entry .ghost{opacity:0;flex:none}.rec-entry:hover .ghost,.rec-entry .ghost:focus-visible{opacity:1}.rec-journal .composer{position:static;box-shadow:none}.composer.rec-composer:focus-within{border-color:var(--rec)}.composer.rec-composer .send{background:var(--rec);border-color:var(--rec)}.composer-hint.error{color:var(--red)}.rec-library .rec-book{border:1px solid var(--line);border-radius:10px;padding:12px 15px;margin-top:10px}.rec-library .rec-book.bible{border-color:#9ad8c859}.rec-import{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.rec-import input[type=file]{flex:1 1 200px;min-width:0;font-size:12px}.rec-report{margin-top:10px;padding:10px 12px;background:var(--panel2);border-radius:8px;display:flex;flex-direction:column;gap:6px}.rec-report-chapters{margin:0;padding-left:20px;font-size:13px}.rec-report-chapters li{display:flex;justify-content:space-between;gap:10px}.rec-warning{font-family:var(--mono);font-size:11px;color:var(--yellow)}.rec-sample{margin:0;padding-left:10px;border-left:2px solid var(--line);font-family:Georgia,Times New Roman,serif;font-size:14px;color:var(--muted)}@media (pointer: coarse){.rec-entry .ghost{opacity:1}.rec-chips button,.rec-chips input{min-height:36px}.rec-chips button{padding:0 12px}.rec-journal{min-height:calc(100vh - 168px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:calc(100dvh - 168px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.rec-entries{flex:1}.rec-journal .composer{position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));box-shadow:0 -14px 28px -10px var(--bg),0 2px 12px #00000040}}.rec-reader-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}.rec-reader-nav>span{display:flex;gap:6px}.rec-reader-text{margin-top:4px}.rec-pagerule{display:flex;align-items:center;gap:10px;margin:6px 0 10px}.rec-pagerule span{flex:1;height:1px;background:var(--line2)}.rec-pagerule em{font-family:var(--mono);font-style:normal;font-size:10px;letter-spacing:.1em;color:var(--muted)}.rec-reader .rec-pline{cursor:pointer;border-left:2px solid transparent;margin-left:-10px;padding-left:8px;border-radius:2px}.rec-reader .rec-pline.read{color:var(--muted)}.rec-reader .rec-pline.cursor{border-left-color:var(--rec)}.rec-reader .rec-pline.selected{background:var(--rec-bg);border-left-color:var(--rec)}.rec-carry{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;margin:8px 0 2px;padding:8px 10px;background:#ffd16614;border:1px solid rgba(255,209,102,.3);border-radius:8px;font-size:13px;color:var(--yellow)}.rec-note.warn{color:var(--yellow)}.rec-nextcall{display:flex;align-items:center;justify-content:space-between;gap:12px;border-left:2px solid var(--yellow)}.rec-nextcall>div{min-width:0}.rec-nextcall .rec-title{margin-top:4px}.rec-peoplelist{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column}.rec-person{padding:8px 0;border-top:1px solid var(--line2);display:flex;flex-direction:column;gap:4px}.rec-person:first-child{border-top:none}.rec-person-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.rec-person-who{display:flex;align-items:center;gap:8px;min-width:0}.rec-person-name{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rec-chip{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:1px 7px;border-radius:999px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.rec-chip.sponsor{color:var(--rec);border-color:#9ad8c880}.rec-chip.prospect{color:var(--yellow);border-color:#ffd16680}.rec-note.overdue,.rec-note.ask{color:var(--yellow)}.rec-note.due{color:var(--text)}.rec-person-actions{display:flex;align-items:center;gap:4px;flex:none}.rec-person-actions button:not(.ghost){min-height:32px;padding:4px 12px}.rec-person-log{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px}.rec-person-log input[type=text],.rec-person-log input:not([type]){flex:1 1 180px;min-width:0}.rec-person-log select,.rec-person-add select{width:auto}.rec-person-add{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line2)}.rec-person-add input:not([type=number]){flex:1 1 160px;min-width:0}.rec-person-add input[type=number]{width:64px}@media (pointer: coarse){.rec-person-actions button:not(.ghost){min-height:40px}.rec-nextcall button{min-height:40px}}.rec-search{padding:10px 12px}.rec-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto 64px auto;gap:6px;align-items:center}.rec-search-row input{min-width:0;font-size:16px}.rec-hits{display:flex;flex-direction:column;margin-top:8px}.rec-hits .rec-cardhead{margin-bottom:4px}.rec-hit{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 6px;border:none;border-top:1px solid var(--line2);background:none;border-radius:0;text-align:left;font-family:var(--sans);color:var(--text)}.rec-hit:hover{background:var(--panel2);border-color:var(--line2)}.rec-hit-text{font-family:Georgia,Times New Roman,serif;font-size:14.5px;line-height:1.45}.rec-hit mark,.rec-reader mark{background:#9ad8c847;color:inherit;border-radius:2px;padding:0 1px}.rec-reader .rec-pline.hit{background:#9ad8c81f;border-left-color:var(--rec)}.rec-reader .rec-pline.hl-yellow{background:#ffd60a33}.rec-reader .rec-pline.hl-green{background:#50c87833}.rec-reader .rec-pline.hl-blue{background:#5aa0ff33}.rec-reader .rec-pline.hl-pink{background:#ff78aa38}.rec-reader mark.hl{color:inherit;padding:0 1px;border-radius:2px;cursor:pointer}.rec-reader mark.hl.yellow{background:#ffd60a73}.rec-reader mark.hl.green{background:#50c87873}.rec-reader mark.hl.blue{background:#5aa0ff73}.rec-reader mark.hl.pink{background:#ff78aa73}.rec-mark-note{margin:4px 0 6px;padding:6px 10px;border-left:2px solid var(--line2);font-family:var(--sans);font-size:13.5px;line-height:1.45}.rec-mark-note.yellow{border-left-color:#ffd60acc}.rec-mark-note.green{border-left-color:#50c878cc}.rec-mark-note.blue{border-left-color:#5aa0ffcc}.rec-mark-note.pink{border-left-color:#ff78aacc}.rec-mark-note .txt{white-space:pre-line;margin-top:2px}.rec-mark-note-actions{display:flex;gap:10px;margin-top:2px}.rec-pencil-hint{margin:6px 0 0;font-size:12.5px}.rec-markbar{display:flex;flex-direction:column;gap:8px;margin:6px 0 10px;padding:8px 10px;background:var(--panel2);border:1px solid var(--line2);border-radius:10px;font-family:var(--sans)}.rec-hl-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rec-hl-chip{width:26px;height:26px;min-height:0;padding:0;border-radius:50%;border:1px solid var(--line)}.rec-hl-chip.yellow{background:#ffd60a}.rec-hl-chip.green{background:#50c878}.rec-hl-chip.blue{background:#5aa0ff}.rec-hl-chip.pink{background:#ff78aa}.rec-mark-edit{display:flex;flex-direction:column;gap:6px}.rec-mark-edit textarea{width:100%;min-height:72px;font:inherit;font-size:15px;padding:8px;border-radius:8px}.rec-marks{display:flex;flex-direction:column;gap:2px;margin-top:4px}.rec-marks-chapter{margin:8px 0 2px}.rec-mark{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 8px 8px 10px;border:none;border-left:3px solid var(--line2);border-radius:0 6px 6px 0;background:none;text-align:left;color:var(--text);font-family:var(--sans)}.rec-mark:hover{background:var(--panel2)}.rec-mark.yellow{border-left-color:#ffd60ae6}.rec-mark.green{border-left-color:#50c878e6}.rec-mark.blue{border-left-color:#5aa0ffe6}.rec-mark.pink{border-left-color:#ff78aae6}.rec-mark-quote{font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.4}.rec-mark-text{font-size:13px;color:var(--muted)}@media (pointer: coarse){.rec-hl-chip{width:34px;height:34px}.rec-hl-chips button:not(.rec-hl-chip):not(.linkish){min-height:40px}}.rec-shelf .seg{margin-bottom:2px}.rec-search-row.bible{grid-template-columns:minmax(0,1fr) auto}.rec-books{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.rec-books button{font-size:13px;padding:5px 9px;border-radius:14px}.rec-chapgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:6px;margin-top:8px}.rec-chapgrid button{min-height:36px;padding:0;font-variant-numeric:tabular-nums}.rec-verse.hit{background:#9ad8c847;border-radius:2px}.rec-reader-nav.bottom{margin-top:10px}.rec-explain{margin-top:10px;padding-top:8px;border-top:1px solid var(--line2)}.rec-explain .rec-prose{white-space:pre-line}.rec-passage-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}@media (pointer: coarse){.rec-books button,.rec-chapgrid button,.rec-passage-actions button{min-height:40px}}@media (pointer: coarse){.rec-search-row{grid-template-columns:minmax(0,1fr) auto}.rec-search-row input[type=text]{grid-column:1}.rec-search-row button{min-height:44px}}.accounts form{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}.accounts form input{flex:1;min-width:150px;font-size:16px}.accounts .secret-card{margin:8px 0;padding:10px 12px;border:1px solid var(--cyan);border-radius:8px}.accounts .secret{font-family:var(--mono);font-size:15px;letter-spacing:.08em;color:var(--text);word-break:break-all;-webkit-user-select:all;user-select:all;margin:4px 0 8px}.accounts .secret.small{font-size:11px;letter-spacing:0}.chat{display:flex;flex-direction:column}.chat-head{display:flex;justify-content:space-between;gap:8px;margin:4px 0 8px;font-family:var(--mono);font-size:12px;color:var(--muted)}.chat-head .live{color:var(--cyan)}.chat-older{align-self:center;margin:2px 0 10px}.chat-thread{display:flex;flex-direction:column;gap:6px;min-height:50vh;padding-bottom:8px}.chat-day{align-self:center;margin:12px 0 4px;font-family:var(--mono);font-size:11px;color:var(--muted)}.chat-msg{display:flex;flex-direction:column;align-items:flex-start;max-width:82%;align-self:flex-start}.chat-msg.mine{align-self:flex-end;align-items:flex-end}.chat-msg .bubble{max-width:100%;cursor:pointer}.chat-msg.theirs .bubble{background:var(--panel2);border:1px solid var(--line);border-bottom-left-radius:5px}.chat-msg.mine .bubble{background:#7fd1ff21;border:1px solid rgba(127,209,255,.3);border-bottom-right-radius:5px}.chat-msg .bubble.unsent{color:var(--muted);font-style:italic}.chat-msg.pending .bubble{opacity:.6}.chat-meta{margin:2px 6px 0;font-family:var(--mono);font-size:11px;color:var(--muted)}.chat-meta .linkish{padding:0 2px;font-size:11px}.chat-reactions{display:flex;flex-wrap:wrap;gap:4px;margin:-8px 6px 2px}.chat-msg.mine .chat-reactions{justify-content:flex-end}.chat-reaction{min-height:0;padding:1px 7px;border-radius:999px;background:var(--panel);border:1px solid var(--line);font-size:13px;line-height:1.5}.chat-reaction.mine{border-color:var(--cyan)}.chat-actions{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 4px}.chat-actions button{min-height:0;padding:4px 8px;border-radius:999px;font-size:18px;line-height:1.3}.chat-actions .unsend{font-family:var(--mono);font-size:12px;color:var(--muted)}.chat-composer .composer-row{margin-top:-2px}.tab-badge,.sheet-badge{display:inline-block;min-width:18px;margin-left:6px;padding:0 5px;border-radius:999px;background:var(--cyan);color:#06121e;font-family:var(--mono);font-size:11px;line-height:18px;text-align:center}header .more{position:relative}.more-dot{position:absolute;top:5px;right:5px;width:8px;height:8px;border-radius:50%;background:var(--cyan)}.partner-home{max-width:720px;margin:0 auto}.partner-tools{display:flex;align-items:center;gap:8px;margin:2px 0 8px;font-family:var(--mono);font-size:12px;color:var(--muted)}.partner-home .panel{margin-bottom:12px}.partner-home .panel .notif{border-top:none;margin-top:0;padding-top:0}.chat-msg .bubble.media{padding:4px;max-width:min(100%,340px)}.chat-msg .bubble.media .chat-caption{padding:6px 9px 4px}.chat-media{display:block;width:100%;max-height:70vh;object-fit:cover;border-radius:13px;background:var(--panel)}.chat-msg .bubble.sticker{background:none;border:none;padding:0}.chat-msg .bubble.sticker .chat-media{width:150px;height:auto;max-height:none;object-fit:contain;border-radius:8px;background:none}.chat-msg .bubble.big{background:none;border:none;padding:0 4px;font-size:44px;line-height:1.15}.chat-head-right{display:inline-flex;align-items:center;gap:10px}.chat-head-search{min-height:0;width:28px;height:28px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:none;border-color:transparent;color:var(--muted)}.chat-head-search:hover,.chat-head-search[aria-pressed=true]{color:var(--text);border-color:var(--line)}.chat-search{display:flex;flex-direction:column;gap:10px;min-height:50vh}.chat-search-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-search .hint{font-family:var(--mono);font-size:11px;color:var(--muted)}.chat-hits{display:flex;flex-direction:column}.chat-hit{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:8px 6px;border:none;border-top:1px solid var(--line2);background:none;border-radius:0;text-align:left;font-family:var(--sans);color:var(--text)}.chat-hit:hover{background:var(--panel2)}.chat-hit-text{font-size:14px;line-height:1.4}.chat-hit mark{background:#7fd1ff47;color:inherit;border-radius:2px;padding:0 1px}.chat-link a{color:var(--cyan);overflow-wrap:anywhere;font-size:14px}.chat-mediagrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:4px}.chat-mediacell{position:relative;min-height:0;padding:0;aspect-ratio:1;border-radius:6px;overflow:hidden;background:var(--panel);border-color:transparent}.chat-mediacell img{width:100%;height:100%;object-fit:cover;display:block}.chat-mediacell-voice{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:var(--mono);font-size:12px;color:var(--muted)}.chat-mediacell-badge{position:absolute;right:6px;bottom:4px;font-size:12px;color:#fff;text-shadow:0 0 4px rgba(0,0,0,.8)}.chat-newer{display:flex;justify-content:center;gap:16px;padding:6px 0 10px}.chat-msg.focus .bubble{outline:2px solid var(--cyan);outline-offset:2px;transition:outline-color 1.5s ease 1s}@media (pointer: coarse){.chat-head-search{width:36px;height:36px}}.chat-msg .bubble.voice{padding:8px 10px;min-width:210px;max-width:min(100%,300px)}.chat-voice{display:flex;align-items:center;gap:10px}.chat-voice-play{width:34px;height:34px;min-height:0;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none}.chat-voice-bar{flex:1;height:6px;border-radius:3px;background:var(--line);cursor:pointer;overflow:hidden}.chat-voice-bar i{display:block;height:100%;background:var(--cyan);border-radius:3px}.chat-voice-time{font-family:var(--mono);font-size:11px;color:var(--muted);min-width:34px;text-align:right}.chat-voice-pending{font-family:var(--mono);font-size:12px;color:var(--muted)}.chat-recording{display:flex;align-items:center;gap:10px;padding:4px 0 8px}.chat-recording .dot{width:10px;height:10px;border-radius:50%;background:#e0524f;animation:chat-rec-pulse 1s ease-in-out infinite}.chat-recording .clock{font-family:var(--mono);font-size:13px}.chat-recording .hint{flex:1;font-family:var(--mono);font-size:11px;color:var(--muted)}.chat-recording .rec-send{min-height:32px;padding:4px 12px}@keyframes chat-rec-pulse{0%,to{opacity:1}50%{opacity:.3}}@media (prefers-reduced-motion: reduce){.chat-recording .dot{animation:none}}.chat-msg .bubble a{color:inherit;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}.chat-msg.pending .chat-media{max-height:200px}.chat-actions .word{font-family:var(--mono);font-size:12px;color:var(--muted)}.chat-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#000000ed;cursor:zoom-out}.chat-lightbox img{max-width:100vw;max-height:100vh;object-fit:contain}.chat-attach{display:flex;align-items:center;gap:10px;padding:2px 0 6px}.chat-attach img{width:56px;height:56px;object-fit:cover;border-radius:8px}.chat-attach .hint{flex:1;font-family:var(--mono);font-size:11px;color:var(--muted)}.chat-tray{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:6px;margin:4px 0 10px;padding:8px;background:var(--panel2);border:1px solid var(--line);border-radius:14px}.chat-tray .hint{grid-column:1 / -1;margin:2px 4px;font-family:var(--mono);font-size:11px;color:var(--muted)}.chat-tray button{min-height:0;padding:0;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--panel)}.chat-tray img{width:100%;height:100%;object-fit:cover;display:block}.composer .tool{width:40px;height:40px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:none;border-color:transparent;color:var(--muted)}.composer .tool:hover,.composer .tool[aria-pressed=true]{color:var(--text);border-color:var(--line)}
