:root{--bg:#fbfcfc;--side:#eef3f2;--fg:#1b2626;--muted:#677473;--card:#fff;--soft:#f3f6f5;--border:#e0e7e5;--accent:#2b7a73;--accent-hover:#236760;--accent-fg:#fff;--accent-soft:#dcebe7;--accent-text:#226c65;--ok:#2f9c5c;--ok-soft:#e3f3e9;--danger:#b3261e;--danger-soft:#fbe9e7;--warn:#8a5300;--warn-soft:#fdf1de;--star:#e2a915;--cost-up:#a8574e;--info:#2f62a8;--info-soft:#e5eefa;--done:#5d6a69;--shadow:0 1px 2px #1028240a, 0 2px 8px #1028240a;--radius:14px;font-family:var(--font-sans), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}.logo{filter:invert()}:root{--bg:#111716;--side:#161f1d;--fg:#e4ecea;--muted:#97a6a3;--card:#19221f;--soft:#1e2926;--border:#2a3733;--accent:#4fb0a5;--accent-hover:#63c1b6;--accent-fg:#0c1513;--accent-soft:#1f3834;--accent-text:#72c8bd;--ok:#5fcf8b;--ok-soft:#1c3527;--danger:#f2b8b5;--danger-soft:#3a2220;--warn:#f0c36b;--warn-soft:#372c15;--star:#f0c36b;--cost-up:#e39a90;--info:#9cc1f2;--info-soft:#1d2a3b;--done:#b9c6c3;--shadow:none}}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.45}main{max-width:1000px;margin:0 auto;padding:24px 16px 64px}h1{letter-spacing:-.015em;overflow-wrap:anywhere;margin:6px 0;font-size:1.75rem;font-weight:700;line-height:1.2}h2{letter-spacing:-.01em;margin:32px 0 12px;font-size:1.3rem;font-weight:700}h3{letter-spacing:-.01em;margin:4px 0;font-size:1.2rem;font-weight:700}a{color:inherit}hr{border:none;border-top:1px solid var(--border);width:100%;margin:16px 0}.lead{color:var(--muted);font-size:1.2rem}.muted{color:var(--muted)}.accent-link{color:var(--accent-text);align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}.accent-link:hover{text-decoration:underline}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:16px 0;padding:16px 18px}label{margin-bottom:12px;font-size:.95rem;display:block}input,select,textarea{width:100%;font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--border);border-radius:8px;margin-top:4px;padding:8px 10px;font-size:.9rem;display:block}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}textarea{resize:vertical}input[type=radio],input[type=checkbox]{width:auto;accent-color:var(--accent);margin:0 4px 0 0;display:inline}button,.button{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--border);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:7px 14px;font-size:.85rem;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}button:hover,.button:hover{border-color:var(--muted)}button.primary,.button.primary{color:var(--accent-fg);background:var(--accent);border-color:var(--accent)}button.primary:hover,.button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button:disabled{opacity:.5;cursor:default}.error,button.danger{color:var(--danger)}button.link{color:var(--muted);background:0 0;border:none;padding:0;font-weight:400;text-decoration:underline}.icon-button{width:34px;height:34px;color:var(--muted);background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:0;text-decoration:none;list-style:none;display:inline-flex}.icon-button::-webkit-details-marker{display:none}.star-toggle:hover,.star-toggle.on{color:var(--star)}.star-toggle.on svg{fill:currentColor}.favorites .section-link{cursor:pointer}.favorites .section-link svg{color:var(--star)}.tree .favorites .node{color:var(--muted);font-size:.93rem}.tree .favorites .node[aria-current]{color:var(--fg);font-weight:500}.node-parent{color:var(--muted);font-size:.8em}.sidebar{display:none}.mobile-bar{z-index:3;background:var(--side);border-bottom:1px solid var(--border);padding:8px 16px 0;position:sticky;top:0}.mobile-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{line-height:0;display:inline-block}.main-nav{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.main-nav a{color:var(--fg);white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;text-decoration:none;display:flex}.main-nav a svg{color:var(--muted)}.main-nav a:hover{background:var(--soft)}.main-nav a[aria-current=page]{background:var(--accent-soft);font-weight:500}.main-nav a[aria-current=page] svg{color:var(--accent-text)}.mobile-bar .main-nav a{border-radius:10px 10px 0 0;padding:8px 10px}.user{align-items:center;gap:10px;display:flex;position:relative}.avatar{background:var(--accent-soft);width:38px;height:38px;color:var(--accent-text);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.user-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.menu{position:relative}.menu>summary.icon-button{background:0 0;border-color:#0000}.menu[open]>summary{margin:0}.menu-panel{z-index:5;background:var(--card);border:1px solid var(--border);border-radius:12px;min-width:180px;padding:6px;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 8px 24px #0000001f}.mobile-bar .menu-panel,.menu.down .menu-panel{top:calc(100% + 6px);bottom:auto}.menu-panel a,.menu-panel button{width:100%;color:var(--fg);background:0 0;border:none;border-radius:8px;justify-content:flex-start;align-items:center;gap:8px;padding:8px 10px;font-weight:400;text-decoration:none;display:flex}.menu-panel a:hover,.menu-panel button:hover{background:var(--soft)}.menu-panel form{margin:0}.menu-panel .danger{color:var(--danger)}.tree-mobile{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);margin-bottom:16px;padding:8px 12px}@media (min-width:900px){.shell{grid-template-columns:290px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--side);border-right:1px solid var(--border);flex-direction:column;height:100vh;padding:22px 16px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar .brand{margin:0 0 18px 6px}.sidebar .main-nav{flex-direction:column;gap:2px}.sidebar .tree{flex:1}.sidebar .user{margin-top:20px;padding:12px 4px 0}.mobile-bar,.tree-mobile{display:none}main{margin:0;padding:28px 40px 72px}h1{font-size:2.1rem}}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row>input:not([type=radio]){flex:140px;width:auto;min-width:0;margin:0}.stack>*+*{margin-top:8px}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0 12px;display:grid}.grow{flex:1;min-width:0}.small{font-size:.9rem}label.inline{color:var(--muted);align-items:center;gap:4px;margin:0 12px 0 0;display:inline-flex}input.compact{width:auto;margin:0;padding:4px 8px;display:inline-block}details>summary{cursor:pointer;color:var(--muted);padding:4px 0}details[open]>summary{margin-bottom:8px}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0;display:-webkit-box;overflow:hidden}.late{color:var(--danger)}.page-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.page-head h1{margin-top:0}.head-actions{flex:none;align-items:center;gap:10px;padding-top:4px;display:flex}.subtitle{color:var(--muted);margin:4px 0 12px;font-size:1.15rem}.facts{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 16px;margin:8px 0 16px;display:flex}.facts>span{align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.facts .when-label{color:var(--muted)}.facts>span:has(.when-label){color:var(--fg)}.pill{background:var(--soft);color:var(--fg);white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:5px 12px;font-size:.9rem;font-weight:500;display:inline-flex}.pill:before{content:"";background:var(--muted);border-radius:50%;width:8px;height:8px}.pill.ok{background:var(--ok-soft)}.pill.ok:before{background:var(--ok)}.pill.done:before{background:var(--accent)}.badge{background:var(--soft);color:var(--muted);border-radius:6px;padding:2px 8px;font-size:.8rem;font-weight:500;display:inline-block}.badge.accent,.badge.done{background:var(--accent-soft);color:var(--accent-text)}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.hint{border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-size:.9rem;font-weight:500;display:inline-flex}.hint.warn{background:var(--warn-soft);color:var(--warn)}.hint.ok{background:var(--ok-soft);color:var(--ok)}.stats{background:var(--soft);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0 8px;padding:16px 8px;display:grid}.stat{justify-content:center;align-items:center;gap:14px;padding:4px 8px;display:flex}.stat+.stat{border-left:1px solid var(--border)}.stat svg{color:var(--muted);flex:none}.stat strong{font-size:1.6rem;line-height:1.1;display:block}.stat span{color:var(--muted);font-size:.95rem}@media (max-width:560px){.stat{text-align:center;flex-direction:column;gap:4px}.stat svg{display:none}}.section-head{justify-content:space-between;align-items:center;gap:12px;margin:32px 0 12px;display:flex}.section-head h2{margin:0}.pcards{gap:12px;margin:0;padding:0;list-style:none;display:grid}.pcard{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 20px;position:relative}.pcard.closed{opacity:.7}.pcard h3 a{text-decoration:none}.pcard h3 a:after{content:"";border-radius:var(--radius);position:absolute;inset:0}.pcard .chev{color:var(--muted);position:absolute;top:18px;right:16px}.pcard .above{z-index:1;position:relative}.pcard .next{color:var(--muted);margin:4px 0}.money-line{align-items:baseline;gap:10px;margin:8px 0 10px;display:flex}.money-line .amount{letter-spacing:-.02em;font-size:1.5rem;font-weight:700;line-height:1.1}.money-line .percent{margin-left:auto;font-size:1rem;font-weight:700}.month-strip{background:var(--soft);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:14px;padding:10px 12px;display:flex}.month-strip .facts{color:var(--fg);flex:1;margin:0}.items,.cards{margin:0;padding:0;list-style:none}.cards .card-title{font-size:1.15rem;font-weight:700;text-decoration:none}.item{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding:12px 0;display:flex}.item a{overflow-wrap:anywhere;text-decoration:none}.item.done>.grow>a,.item.done>.grow>strong{color:var(--muted);text-decoration:line-through}.check{border:2px solid var(--border);width:26px;height:26px;color:var(--accent-fg);border-radius:50%;flex:none;padding:0;line-height:1}.check:hover{border-color:var(--accent)}.check.checked{background:var(--accent);border-color:var(--accent)}.meta{color:var(--muted);flex-wrap:wrap;gap:4px 10px;margin-top:2px;font-size:.85rem;display:flex}.path{color:var(--muted)}.progress{align-items:center;gap:10px;margin:8px 0;display:flex}.progress .bar{background:var(--border);border-radius:999px;flex:1;height:8px;overflow:hidden}.progress .bar>span{background:var(--accent);border-radius:999px;height:100%;display:block}.notice{border:1px solid var(--border);background:var(--card);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;padding:10px 14px;display:flex}.notice.error{color:var(--danger);background:var(--danger-soft);border-color:#0000}.notice.warn{color:var(--warn);background:var(--warn-soft);border-color:#0000;font-size:.88rem}.history{margin:0;padding:0;list-style:none}.history>li{border-bottom:1px solid var(--border);padding:8px 0}.history ul{color:var(--muted);margin:4px 0 0;padding-left:18px}.prompt{border-color:var(--accent)}.prompt-title{align-items:center;gap:8px;display:inline-flex}.prompt-title svg{color:var(--accent);flex-shrink:0}.prompt-date input{max-width:200px}fieldset.scale{border:none;margin:0;padding:0}fieldset.scale legend{margin-bottom:6px}details.fold>summary{color:var(--fg);align-items:center;gap:10px;padding:10px 0;font-weight:500;list-style:none;display:flex}details.fold>summary::-webkit-details-marker{display:none}details.fold>summary .chevron{transition:transform .15s}details.fold[open]>summary .chevron{transform:rotate(180deg)}details.fold>summary .button{margin-left:auto}.tree{font-size:.95rem}.tree ul{margin:0;padding:0;list-style:none}.tree ul ul{margin:2px 0 6px 20px}.tree details>summary{color:var(--muted);align-items:center;gap:2px;margin:1px 0;padding:0;list-style:none;display:flex}.tree details>summary::-webkit-details-marker{display:none}.tree details>summary:before{content:"";background:currentColor;flex:none;width:18px;height:18px;transition:transform .15s;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") 50%/14px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") 50%/14px no-repeat}.tree details[open]>summary:before{transform:rotate(90deg)}.tree details[open]>summary{margin:1px 0}.tree .node{min-width:0;color:var(--fg);overflow-wrap:anywhere;border-radius:10px;flex:1;align-items:center;gap:10px;padding:7px 10px;text-decoration:none;display:flex}.tree .node:hover{background:var(--soft)}.tree .node[aria-current]{background:var(--accent-soft)}.tree .node-icon{color:var(--muted);flex:none}.tree .goal .node-icon{color:var(--accent-text)}.tree .project{color:var(--muted);font-size:.93rem}.tree .project[aria-current]{color:var(--fg);font-weight:500}.tree .task{color:var(--muted);gap:8px;padding:4px 10px;font-size:.88rem}.tree .task .dot{border:1.5px solid var(--border);border-radius:50%;flex:none;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}.tree .task.closed .dot{border-color:var(--accent);color:var(--accent)}.tree .closed{color:var(--muted)}.tree .task.closed{text-decoration:line-through}.tree .empty,.tree-group{color:var(--muted);margin:4px 0 4px 28px;font-size:.85rem}.tree-group{margin:16px 0 4px 6px}.tree-group a{color:var(--muted)}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;display:grid}.dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.dates fieldset{border:none;min-width:0;margin:0;padding:0}.dates legend{margin-bottom:4px}.dates .pair{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:6px;display:grid}.dates input{min-width:0;margin:0}@media (max-width:560px){.dates .pair{grid-template-columns:minmax(0,1fr)}.grid2:has(.places-picker){grid-template-columns:minmax(0,1fr)}}.sortable{background:var(--bg);position:relative}.sortable.dragging{z-index:2;opacity:.85;box-shadow:0 4px 16px #0000001f}.handle{color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:none;flex:none;align-self:center;padding:4px 2px;font-size:1rem;line-height:1}.handle:active{cursor:grabbing}.tree li.sortable{align-items:center;gap:2px;display:flex}.tree li.sortable .handle{opacity:0;width:14px;padding:0;font-size:.8rem}.tree li.sortable:hover .handle,.tree li.sortable .handle:focus-visible,.tree li.sortable.dragging .handle{opacity:1}@media (hover:none){.tree li.sortable .handle{opacity:.6}}.row.between{justify-content:space-between}.row.between h2{margin:0}.notice.stack{display:block}.notice.ok{border-color:var(--accent)}.lead-small{font-size:1.05rem}.ahead{color:var(--done);font-weight:600}.changes{color:var(--fg);margin:4px 0;padding-left:20px}.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;display:grid}.entry-grid .wide{grid-column:1/-1}.table-wrap{border:1px solid var(--border);background:var(--card);border-radius:8px;margin:8px 0;overflow-x:auto}.plan-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.9rem}.plan-table th,.plan-table td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--border);padding:7px 10px}.plan-table th:first-child,.plan-table td:first-child{text-align:left}.plan-table th{color:var(--muted);vertical-align:bottom;white-space:normal;min-width:7.5em;font-size:.85rem;font-weight:500;line-height:1.25}.plan-table th:first-child{min-width:0}.plan-table tr:last-child td{border-bottom:none}.plan-table tr.current td{font-weight:600}.plan-table tr.future td{color:var(--muted)}.plan-check{border:1px solid var(--border);border-radius:8px;padding:8px 12px}.plan-check.ok{border-color:var(--accent)}.plan-check.off{color:var(--warn)}.plan-months{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px 12px;display:grid}.plan-months label.locked{color:var(--muted)}@media (max-width:520px){.entry-grid{grid-template-columns:1fr}}.tree .sortable{background:var(--side)}.form-panel{width:min(360px,100vw - 32px);padding:12px}.form-panel label.inline{width:auto;padding:0;display:inline-flex}@media (max-width:899px){.mobile-bar .main-nav a{flex:1;justify-content:center;gap:6px;padding:8px 4px;font-size:.92rem}.page-head{flex-wrap:wrap}}.tabs{scrollbar-width:none;background:var(--soft);border:1px solid var(--border);border-radius:12px;gap:2px;max-width:100%;margin:8px 0 16px;padding:3px;display:inline-flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-radius:9px;padding:6px 12px;text-decoration:none}.tabs a[aria-current=page]{color:var(--fg);background:var(--card);box-shadow:var(--shadow);font-weight:500}.row.between .tabs{margin:0}.tabs.small{border-radius:9px;padding:2px}.tabs.small a{border-radius:7px;padding:3px 10px;font-size:.82rem}.savings-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin:4px 0 10px;display:flex}.savings-head .meta{margin:0;font-size:.95rem}.savings-head .entry-card{flex:100%;margin:4px 0 0}p.hint{width:fit-content;max-width:100%;margin:0 0 12px;display:flex}.hint.muted{background:var(--soft);color:var(--muted)}.savings .row.between{margin-top:20px}.plan-table th:first-child,.plan-table td:first-child{z-index:1;background:var(--card);position:sticky;left:0}.money-line{flex-wrap:wrap}.money-line .muted{white-space:nowrap}@media (max-width:560px){.plan-table .now{font-size:.75rem;font-weight:400;display:block}.plan-table th:first-child,.plan-table td:first-child{box-shadow:1px 0 0 var(--border)}}.add-menu .menu-panel{min-width:260px}.add-menu .menu-panel a{align-items:flex-start;gap:10px;padding:8px 10px}.add-menu .menu-panel a span{flex-direction:column;line-height:1.25;display:flex}.add-menu .menu-panel small{font-size:.8rem}.add-form{scroll-margin-top:90px}.add-form input,.add-form textarea,.add-form select{margin-top:0}.add-form label input,.add-form label select{margin-top:4px}.add-title{align-items:center;gap:8px;display:flex}.event-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 12px;display:grid}@media (max-width:640px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}fieldset.checks{border:none;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;display:flex}fieldset.checks legend{margin-bottom:4px;font-size:.95rem}.project-tabs{margin-top:20px}.kind-icon{color:var(--muted);flex:none}.kind-icon.event,.kind-icon.task{color:var(--accent-text)}.kind-icon.result{color:var(--ok)}.kind-icon.decision{color:var(--warn)}.item.record{align-items:flex-start}.item.record>.kind-icon{margin-top:3px}.item.record.past .item-title{color:var(--muted)}.item-title{font-weight:500;text-decoration:none}a.item-title:hover{text-decoration:underline}.items.compact .item{padding:8px 0}.linked{flex-wrap:wrap;gap:4px 6px;display:inline-flex}.chip{background:var(--soft);max-width:260px;color:var(--fg);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:.8rem;text-decoration:none;display:inline-flex;overflow:hidden}.chip:hover{background:var(--accent-soft)}.ext{color:var(--accent-text);align-items:center;gap:3px;text-decoration:none;display:inline-flex}.meta>span{align-items:center;gap:4px;display:inline-flex}.empty-state{border:1px dashed var(--border);color:var(--muted);border-radius:12px;margin:4px 0;padding:14px 16px;font-size:.95rem}.chips{flex-wrap:wrap;gap:6px;margin:4px 0 12px;display:flex}.chips a{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:5px 12px;font-size:.9rem;text-decoration:none}.chips a[aria-current=page]{border-color:var(--accent);background:var(--accent-soft);color:var(--fg);font-weight:500}details.done-fold{color:var(--muted);margin-top:24px}.kind-badge{align-items:center;gap:4px;display:inline-flex}.body-card p{margin:4px 0 0}.break{overflow-wrap:anywhere}.icon-button.ghost{background:0 0;border-color:#0000;width:30px;height:30px}.icon-button.ghost:hover{border-color:var(--border)}.link-form select{flex:200px;width:auto;min-width:0;margin:0}.head-actions{flex-wrap:wrap;justify-content:flex-end}@media (max-width:560px){.project-tabs{grid-template-columns:auto 1fr 1fr;width:100%;display:grid}.project-tabs a{text-align:center;white-space:normal;justify-content:center;align-items:center;padding:6px 8px;line-height:1.2;display:flex}}.head-actions{--head-h:36px;gap:8px}.head-actions form{margin:0}.head-actions .pill,.head-actions .button,.head-actions button,.head-actions .menu>summary.icon-button{height:var(--head-h);min-height:var(--head-h);border-radius:10px;padding:0 14px;font-size:.9rem;line-height:1}.head-actions .menu>summary.icon-button{width:var(--head-h);border:1px solid var(--border);background:var(--card);padding:0}.head-actions svg{width:16px;height:16px}.menu-block{scroll-margin-top:90px}.menu-block-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.savings-meta{margin:4px 0 12px;font-size:.95rem}.savings-meta .month-note{margin-left:auto;font-size:.82rem}.savings-meta .month-note.warn{color:var(--warn)}.savings-meta .month-note.ok{color:var(--ok)}.savings>.entry-card{margin:0 0 14px}.avatar{overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.user-menu{width:100%}.user-menu>summary{color:var(--fg);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:6px;list-style:none;display:flex}.user-menu>summary::-webkit-details-marker{display:none}.user-menu>summary:hover{background:var(--soft)}.user-menu[open]>summary{margin:0}.user-menu .user-gear{color:var(--muted);flex:none}.user-menu.down{width:auto}.user-menu.down>summary{border-radius:50%;padding:2px}.menu-who{border-bottom:1px solid var(--border);overflow-wrap:anywhere;flex-direction:column;gap:2px;margin-bottom:4px;padding:6px 10px 8px;display:flex}.sidebar .user-menu .menu-panel{left:0;right:0}.profile-photo{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.crop{background:var(--soft);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:12px;max-width:100%;position:relative;overflow:hidden}.crop:active{cursor:grabbing}.crop img{pointer-events:none;max-width:none;position:absolute}.crop-ring{pointer-events:none;border-radius:50%;outline:2px solid #ffffffe6;position:absolute;inset:0;box-shadow:0 0 0 999px #00000073}.zoom{max-width:280px}.zoom input{accent-color:var(--accent);padding:0}.sidebar .user-menu{margin-top:20px}.status-menu>summary.pill{cursor:pointer;gap:6px;list-style:none}.status-menu>summary.pill::-webkit-details-marker{display:none}.status-menu>summary.pill svg{color:var(--muted)}.status-menu .menu-panel{white-space:nowrap;min-width:280px;left:0;right:auto}.head-actions .menu-panel a,.head-actions .menu-panel button{border-radius:8px;height:auto;min-height:0;padding:8px 10px;line-height:1.3}.head-actions .menu>summary.button{list-style:none}.head-actions .menu>summary.button::-webkit-details-marker{display:none}.finish-list{margin:0 0 12px;padding-left:20px}.finish-list li{margin:4px 0}.section-head:has(.chips){flex-wrap:wrap}.section-head .chips{margin:0}@media (max-width:560px){.page-head{position:relative}.head-actions>details.menu:has(>.form-panel){position:static}.head-actions .form-panel{left:0;right:auto}}.cal-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;display:flex}.cal-toolbar .cal-title-line{margin:0}.cal-nav{align-items:center;gap:6px;display:flex}.cal-nav .button{height:34px;padding:0 12px}.cal-nav .button[aria-current=page]{border-color:var(--accent);color:var(--accent-text)}.date-jump{width:auto;height:34px;padding:0 8px}.cal-title-line{margin:12px 0 10px;font-size:1.25rem}.cal-item{min-width:0;color:var(--fg);border-radius:6px;align-items:center;gap:5px;padding:2px 6px;font-size:.8rem;line-height:1.3;text-decoration:none;display:flex}.cal-item:hover{background:var(--soft)}.cal-item.event{background:var(--accent-soft);color:var(--accent-text);font-weight:500}.cal-item.event.held{opacity:.8}.cal-item.task.done .cal-title{color:var(--muted);text-decoration:line-through}.cal-item.late,.cal-item.late .kind-icon{color:var(--danger)}.cal-item .kind-icon{flex:none}.cal-time{font-variant-numeric:tabular-nums;flex:none}.cal-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cal-project{color:var(--muted);flex:none;font-size:.8rem;font-weight:400}.cal-item.dragging{z-index:10;cursor:grabbing;position:relative;box-shadow:0 6px 18px #0000002e}.month-grid{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.mhead{border-bottom:1px solid var(--border);color:var(--muted);text-align:center;padding:8px;font-size:.8rem;font-weight:600}.mcell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:112px;padding:4px;position:relative}.mcell:nth-child(7n+7){border-right:none}.mcell.other{background:var(--soft)}.mcell.other .mday{color:var(--muted)}.mcell.over{background:var(--accent-soft)}.mcell-add,.mcell-open{z-index:0;position:absolute;inset:0}.mcell-open{display:none}.mcell-add:hover{background:#2b7a730d}.mday{z-index:1;min-width:26px;height:26px;color:var(--fg);border-radius:13px;justify-content:center;align-items:center;margin-bottom:2px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.mday:hover{background:var(--soft)}.mcell.today .mday{background:var(--accent);color:var(--accent-fg)}.mitems{z-index:1;gap:2px;display:grid;position:relative}.mmore{color:var(--accent-text);padding:0 6px;font-size:.78rem;font-weight:500;text-decoration:none}.mdots{display:none}.day-top{border:1px solid var(--border);background:var(--card);border-radius:12px;flex-wrap:wrap;gap:6px;margin-bottom:8px;padding:8px;display:flex}.day-top .cal-item{border:1px solid var(--border);max-width:100%;padding:4px 8px;font-size:.85rem}.day-free{margin:4px 0 10px}.day-grid{border-left:1px solid var(--border);background:var(--card);margin-left:52px;position:relative}.hour{border-top:1px solid var(--border);position:absolute;left:0;right:0}.hour-label{width:44px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;font-size:.75rem;position:absolute;top:-9px;left:-52px}.slot{z-index:0;position:absolute;left:0;right:0}.slot:hover{background:var(--soft)}.now-line{z-index:3;border-top:2px solid var(--danger);pointer-events:none;position:absolute;left:0;right:0}.cal-item.block{z-index:2;border-left:3px solid var(--accent);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;border-radius:6px;flex-direction:column;align-items:flex-start;gap:0;padding:4px 8px;font-size:.85rem;position:absolute;overflow:hidden}.cal-item.block.short{flex-direction:row;align-items:center;gap:6px;padding-top:1px;padding-bottom:1px}.cal-item.block .cal-title{max-width:100%}.cal-item.block .resize{cursor:ns-resize;height:7px;position:absolute;bottom:0;left:0;right:0}@media (pointer:fine){.cal-item.block{cursor:grab}}.agenda-day h2,.history-day h2{margin:20px 0 8px;font-size:1rem}.agenda-day.today h2{color:var(--accent-text)}.agenda-items{border:1px solid var(--border);background:var(--card);border-radius:12px;margin:0;padding:0;list-style:none}.agenda-items li+li{border-top:1px solid var(--border)}.agenda-items .cal-item{color:var(--fg);background:0 0;border-radius:0;gap:10px;padding:10px 12px;font-size:.95rem;font-weight:400}.agenda-items .cal-item:hover{background:var(--soft)}.agenda-time{width:92px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:.85rem}.agenda-items .cal-title{flex:1}.history-entry{padding:12px 0}.history-day .history-entry{border:1px solid var(--border);background:var(--card);border-radius:12px;margin-bottom:10px;padding:14px 16px}.history-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.85rem;display:flex}.history-entry h3{margin:4px 0 6px;font-size:1.05rem}.history-entry h3 a{color:var(--fg);text-decoration:none}.history-entry h3 a:hover{text-decoration:underline}.history-body{color:var(--muted);margin:0}dl.outcome{gap:10px;margin:0;display:grid}dl.outcome dt{font-size:.9rem;font-weight:600}dl.outcome dd{color:var(--muted);margin:2px 0 0}.outcome-section .section-head{flex-wrap:wrap}.inline-field{align-items:center;gap:8px;display:flex}.inline-field input{width:auto}.today-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.today-card{margin:0;padding:18px 20px}.today-card.wide{grid-column:1/-1}.today-card h2{margin:0 0 12px;font-size:1.2rem}.inbox-card{margin-top:16px}.muted-h{color:var(--fg);font-weight:400}.section-head.tight{margin:0 0 8px}.section-head.tight h2{margin:0}.small-head{margin:8px 0 4px;font-size:.85rem;font-weight:600}.schedule{margin:0;padding:0;list-style:none}.schedule li{align-items:flex-start;gap:16px;padding:10px 0;display:flex}.schedule li+li{border-top:1px solid var(--border)}.sched-time{border-right:1px solid var(--border);width:76px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;padding-right:12px;font-size:.9rem;line-height:1.45}.sched-title{color:var(--fg);font-weight:600;text-decoration:none}.sched-title:hover{text-decoration:underline}.accent-text{color:var(--accent-text)}.today-card .history-entry+.history-entry{border-top:1px solid var(--border)}.entry-actions{justify-content:space-between;margin-top:10px}.quick-note{border:1px dashed var(--border);border-radius:12px;margin-top:12px}.quick-note>summary{color:var(--muted);cursor:pointer;align-items:center;gap:8px;padding:12px 14px;list-style:none;display:flex}.quick-note>summary::-webkit-details-marker{display:none}.quick-note[open]>summary{margin:0}.quick-note form{padding:0 14px 14px}.focus{margin:0;padding:0;list-style:none}.focus li{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.focus li+li{border-top:1px solid var(--border)}.focus-icon{color:var(--accent);flex:none;margin-top:2px}.focus-title{color:var(--fg);font-weight:600;text-decoration:none}.focus-title:hover{text-decoration:underline}.focus .hint{padding:3px 8px;font-size:.8rem}@media (max-width:760px){.today-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.cal-toolbar{align-items:stretch}.cal-nav{flex-wrap:wrap}.mhead{padding:6px 0}.mcell{min-height:96px;padding:2px 1px}.mitems{gap:2px;padding-top:2px}.mitems .cal-item{-webkit-line-clamp:2;overflow-wrap:anywhere;border-radius:4px;-webkit-box-orient:vertical;padding:1px 3px;font-size:.62rem;line-height:1.2;display:-webkit-box;overflow:hidden}.mitems .cal-item.task{background:var(--soft)}.mitems .cal-item .cal-title{white-space:normal;text-overflow:clip;overflow:visible}.mitems .cal-item .kind-icon,.mitems .cal-item .cal-time{display:none}.mmore{padding:0 3px;font-size:.6rem}.mcell-add{display:none}.mcell-open{display:block}.mday{min-width:24px;height:24px}.mdots{z-index:1;pointer-events:none;flex-wrap:wrap;gap:3px;padding:0 3px;display:none;position:relative}.mdots i{background:var(--muted);border-radius:50%;width:6px;height:6px;padding:0}.mdots i.event{background:var(--accent)}.mdots i.late{background:var(--danger)}.agenda-time{width:64px}.agenda-items .cal-project{display:none}.today-card{padding:14px 16px}}.tree.sections,.tree.sections details.section+details.section{margin-top:2px}.tree.sections details.section>summary,.tree.sections details.section[open]>summary{color:var(--muted);margin:0}.tree.sections details.section>summary:focus-visible{outline:none}.tree.sections details.section>summary:focus-visible:after{background:var(--accent)}.tree.sections details.section>summary:before{display:none}.tree.sections details.section>summary:after{content:"";cursor:pointer;background:currentColor;flex:none;width:30px;height:30px;transition:transform .15s;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") 50%/16px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") 50%/16px no-repeat}.tree.sections details.section[open]>summary:after{transform:rotate(90deg)}.section-link{min-width:0;color:var(--fg);border-radius:10px;flex:1;align-items:center;gap:8px;padding:10px 12px;font-size:1rem;text-decoration:none;display:flex}.section-link svg{color:var(--muted);flex:none}.section-link:hover{background:var(--soft)}.section-link[aria-current=page]{background:var(--accent-soft);font-weight:500}.section-link[aria-current=page] svg{color:var(--accent-text)}.section-body{margin:2px 0 8px 16px}.section-body>ul{margin:0}.section-body .empty{margin-left:12px}.dcards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.dcard{flex-direction:column;gap:14px;margin:0;padding:18px 20px;display:flex}.dcard-head{align-items:flex-start;gap:16px;display:flex}.dcard-icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-text);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.dcard h2{margin:4px 0 2px;font-size:1.3rem}.dcard h2 a{color:var(--fg);text-decoration:none}.dcard h2 a:hover{text-decoration:underline}.dcard-head p,.dcard-body{margin:0}.dcard-body{color:var(--muted)}.dcard-goal{border:1px solid var(--border);color:var(--fg);border-radius:10px;align-items:center;gap:10px;padding:10px 14px;text-decoration:none;display:flex}.dcard-goal svg:first-child{color:var(--accent-text);flex:none}.dcard-goal:hover{background:var(--soft)}.dcard-next{border-top:1px solid var(--border);padding-top:14px}.dcard-next p{margin:4px 0 0}.dcard-links{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:auto;display:flex}.dcard-tabs{color:var(--muted);flex-wrap:wrap;gap:8px;display:inline-flex}.dcard-tabs a{color:var(--accent-text);text-decoration:none}.dcard-tabs a:hover{text-decoration:underline}.empty-area{align-items:center;gap:14px;display:flex}.empty-area p{margin:0}.area-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;margin-top:16px;display:grid}.area-rows{margin:0;padding:0;list-style:none}.area-rows li+li{border-top:1px solid var(--border)}.area-rows a{color:var(--fg);align-items:center;gap:16px;padding:12px 0;text-decoration:none;display:flex}.area-rows a:hover .grow{text-decoration:underline}.area-rows .grow{flex-direction:column;gap:2px;min-width:0;display:flex}.area-when{border-right:1px solid var(--border);flex-direction:column;flex:none;width:104px;padding-right:12px;display:flex}.area-dir,.area-kind{align-items:center;gap:6px;display:inline-flex}.area-kind{border-right:1px solid var(--border);flex:none;width:190px;padding-right:12px;font-size:.9rem}.quick-buttons{gap:10px;margin-bottom:10px;display:grid}.quick-button{border-color:var(--accent);color:var(--accent-text);justify-content:flex-start;gap:12px}@media (max-width:760px){.dcards,.area-grid{grid-template-columns:minmax(0,1fr)}.area-kind{border-right:none;flex-basis:100%;width:auto;padding-right:0}.area-rows a{flex-wrap:wrap;gap:4px 12px}.area-rows a .grow{flex:1}}@media (min-width:900px){.sidebar>*{flex-shrink:0}.sidebar .main-nav{overflow:visible}.sidebar .tree{flex:1 0 auto}}.menu-panel.form-panel button.primary{border:1px solid var(--accent);background:var(--accent);width:auto;height:auto;color:var(--accent-fg);border-radius:10px;justify-content:center;padding:10px 16px;font-weight:600}.menu-panel.form-panel button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.link-button{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:.85rem;font-weight:400;display:inline-flex}.link-button:hover{color:var(--fg)}.link-button.danger-hover:hover{color:var(--danger)}.history-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.entry-tools{flex:none;align-items:center;gap:14px;display:flex}.entry-tools form{margin:0}.entry-tools .link-button{height:22px;font-family:inherit;line-height:1;text-decoration:none}@media (max-width:560px){.entry-tools{gap:4px;margin:-6px -8px 0 0}.entry-tools .link-button{justify-content:center;width:34px;height:34px}.entry-tools .tool-label{display:none}}.entry-tools a.link-button:hover{color:var(--accent-text)}.entry-edit{margin-top:10px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.search-box{align-items:center;max-width:560px;margin:8px 0 16px;display:flex;position:relative}.search-box input[type=search]{width:100%;margin:0;padding-left:38px;padding-right:38px}.search-box .search-icon{color:var(--muted);pointer-events:none;position:absolute;left:12px}.search-box .icon-button{position:absolute;right:4px}.rcards{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.rcard{flex-direction:column;gap:10px;margin:0;display:flex}.rcard-head h2{margin:0 0 2px;font-size:1.2rem}.rcard-head h2 a{color:var(--fg);text-decoration:none}.rcard-head h2 a:hover{text-decoration:underline}.rcard-top{margin:0;padding:0;list-style:none}.rcard-top li{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.rcard-top a{min-width:0;color:var(--fg);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.rcard-top a:hover{text-decoration:underline}.rcard-all{margin-top:auto}.stars{vertical-align:middle;flex:none;gap:1px;display:inline-flex}.stars .on{color:#e0a526;fill:#e0a526}.stars .off{color:var(--border)}.recipe-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.recipe-card{color:var(--fg);align-items:flex-start;gap:12px;margin:0;padding:12px 14px;text-decoration:none;display:flex}.recipe-card:hover{border-color:var(--accent)}.recipe-thumb{object-fit:cover;border-radius:10px;flex:none;width:72px;height:72px}.recipe-card-body{min-width:0}.recipe-card-title{font-size:1.05rem;display:block}.recipe-card .clamp2{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:2px 0 0;font-size:.92rem;display:-webkit-box;overflow:hidden}.recipe-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:6px;font-size:.88rem;display:flex}.recipe-meta>span{align-items:center;gap:4px;display:inline-flex}.recipe-toolbar .search-box{margin-bottom:8px}.title-with-back{align-items:flex-start;gap:8px;display:flex}.title-with-back>.icon-button{margin-top:4px}.legacy-note{flex-wrap:nowrap;align-items:flex-start}.legacy-note svg{flex:none;margin-top:2px}.category-manage{margin:0 0 8px;padding:0;list-style:none}.category-manage li{align-items:center;gap:4px;padding:6px 0;display:flex}.category-manage input{flex:160px;margin:0}.recipe-intro{margin:0 0 12px}.recipe-intro.with-photo{grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.recipe-photo{border-radius:var(--radius);object-fit:cover;width:100%;max-height:320px}.recipe-intro .lead{margin:0;font-size:1.05rem}.rating-form{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:4px 0 8px;display:flex}.field-label{font-size:.95rem}.rating-stars{display:inline-flex}.star-button{color:var(--border);cursor:pointer;background:0 0;border:none;padding:4px;display:inline-flex}.star-button.on{color:#e0a526}.star-button.on svg{fill:#e0a526}.star-button:hover{color:#e0a526}.recipe-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:16px;display:grid}.recipe-grid>.card{margin:8px 0}.recipe-grid h2,.recipe-notes h2,.cook-history h2{margin:0 0 8px;font-size:1.15rem}.ingredients{margin:0;padding:0;list-style:none}.ingredients li{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:7px 0;display:flex}.ingredients li:first-child{border-top:none}.ingredients li>span:last-child{text-align:right;flex:none}.steps{margin:0;padding-left:1.4em}.steps li{padding:4px 0 8px}.steps li::marker{color:var(--accent-text);font-weight:600}.cook-history{margin-top:24px}.cooks{margin:0;padding:0;list-style:none}.cooks .cook{margin:10px 0}.cook-body.with-photo{align-items:flex-start;gap:14px;display:flex}.cook-body p{margin:2px 0 0}.cook-photo,.history-photo{object-fit:cover;border-radius:10px;width:120px;height:120px;display:block}.outcome.with-photo .history-photo{float:right;width:88px;height:88px;margin:0 0 8px 12px}.recipe-numbers{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.recipe-rows{border:1px solid var(--border);border-radius:var(--radius);margin:0;padding:12px 14px}.recipe-rows legend{padding:0 6px;font-weight:600}.ingredient-row,.step-row{align-items:flex-start;gap:6px;margin-bottom:8px;display:flex}.ingredient-row input{margin:0}.ing-name{flex:3 160px;min-width:0}.ing-amount,.ing-unit{flex:70px;min-width:0}.step-row textarea{flex:auto;min-width:0;margin:0}.step-number{background:var(--accent-soft);width:26px;height:26px;color:var(--accent-text);text-align:center;border-radius:50%;flex:none;margin-top:6px;font-size:.85rem;font-weight:600;line-height:26px}.row-tools{flex:none;gap:2px;padding-top:4px;display:inline-flex}.row-tools .icon-button:disabled{opacity:.35;cursor:default}.add-row{margin:2px 0 6px}.muted.block{display:block}.recipe-notes p{margin:0}.stack.tight>*+*{margin-top:6px}.photo-picker{flex-direction:column;gap:8px;display:flex}.photo-preview{object-fit:cover;border-radius:10px;width:160px;height:120px}@media (max-width:760px){.recipe-grid,.recipe-intro.with-photo{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.recipe-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.ingredient-row{flex-wrap:wrap}.ing-name{flex-basis:100%}.recipe-list{grid-template-columns:minmax(0,1fr)}.cook-photo{width:88px;height:88px}}.dcard-projects{border-top:1px solid var(--border);padding-top:14px}.dcard-projects>span{font-weight:600}.dcard-projects ul{margin:6px 0 0;padding:0;list-style:none}.dcard-projects li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2px 10px;padding:5px 0;display:flex}.dcard-projects li a{color:var(--fg);text-decoration:none}.dcard-projects li a:hover{text-decoration:underline}.dcard-projects li .small{align-items:center;gap:4px;display:inline-flex}.dcard-projects p{margin:4px 0 0}.direction-about h2{margin:0 0 8px;font-size:1.15rem}.direction-about p{margin:0}.links-section{margin-top:24px}.link-search{align-items:center;max-width:640px;margin-top:8px}.link-search input[type=search]{flex:220px;margin:0}.link-results{margin-top:8px}.link-picker{flex-direction:column;gap:6px;display:flex}.link-picker .picked{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.link-picker .chip{border:1px solid var(--accent);background:var(--accent-soft);border-radius:999px;align-items:center;gap:4px;max-width:100%;padding:3px 4px 3px 10px;font-size:.9rem;display:inline-flex}.link-picker .chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.link-picker .chip{flex:0 auto;min-width:0}.link-picker .chip-remove,.menu-panel .link-picker .chip-remove{width:auto;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;padding:2px;display:inline-flex}.picker-input{align-items:center;gap:6px;display:flex}.picker-input input{flex:auto;margin:0}.picker-results{border:1px solid var(--border);border-radius:10px;max-height:260px;margin:0;padding:4px;list-style:none;overflow-y:auto}.picker-results button{width:100%;color:var(--fg);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:flex-start;gap:8px;padding:6px 8px;display:flex}.picker-results button:hover,.picker-results button:focus-visible{background:var(--soft)}.picker-results small{display:block}.scards{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin:8px 0 20px;padding:0;list-style:none;display:grid}.scard{align-items:flex-start;gap:12px;margin:0;display:flex}.scard-icon{color:var(--accent-text);flex:none;margin-top:2px}.scard-title{color:var(--fg);font-size:1.05rem;font-weight:600;text-decoration:none}.scard-title:hover{text-decoration:underline}.scard p{margin:4px 0 0}.direction-library{margin-top:24px}.page-tabs{margin-top:4px}.about{max-width:72ch;color:var(--muted);margin:0 0 16px}.pins{gap:10px;margin-bottom:20px;display:grid}.pin-card{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));border-radius:var(--radius);align-items:flex-start;gap:14px;padding:18px 18px 16px;display:flex}.pin-card h2{margin:2px 0 4px;font-size:1.25rem}.pin-card h2 a{color:var(--fg);text-decoration:none}.pin-card h2 a:hover{text-decoration:underline}.pin-card p{margin:0}.pin-mark{color:var(--accent-text);flex:none;margin-top:2px}.pin-label{color:var(--accent-text);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:600}.pin-actions{flex:none;gap:6px;display:flex}.pin-actions form{margin:0}.pin-note-form{margin-top:8px}.pin-more{justify-self:start}.wcards{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px;margin:0 0 24px;padding:0;list-style:none;display:grid}.wcard{align-items:flex-start;gap:14px;margin:0;padding:16px;display:flex;position:relative}.wcard.project{border-left:3px solid var(--accent)}.wcard h3{margin:6px 0 2px;font-size:1.05rem}.wcard h3 a{color:var(--fg);text-decoration:none}.wcard .stretched:after{content:"";position:absolute;inset:0}.wcard:hover{border-color:var(--accent)}.wcard-icon{width:44px;height:44px;color:var(--accent-text);background:var(--soft);border-radius:12px;flex:none;justify-content:center;align-items:center;display:inline-flex}.wcard.project .wcard-icon,.wcard.savings .wcard-icon{background:var(--accent-soft)}.wcard-badge{font-size:.75rem}.wcard.project .wcard-badge{color:var(--accent-text);background:var(--accent-soft)}.wcard-next{align-items:flex-start;gap:6px;margin:8px 0 0;display:flex}.wcard-next svg{color:var(--accent-text);flex:none;margin-top:3px}.wcard-last{margin:6px 0 0}.wcard-chev{flex:none;margin-top:4px}.recent-list{margin:0 0 24px;padding:0;list-style:none}.recent-list li+li{border-top:1px solid var(--border)}.recent-list a{color:var(--fg);align-items:center;gap:12px;padding:10px 2px;text-decoration:none;display:flex}.recent-list a:hover .recent-title{text-decoration:underline}.recent-list small{display:block}.recent-icon{width:36px;height:36px;color:var(--ok);background:var(--ok-soft);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.recent-icon.material{color:var(--info);background:var(--info-soft)}.recent-icon.decision{color:var(--warn);background:var(--warn-soft)}@media (max-width:560px){.pin-card{flex-wrap:wrap;padding:14px}.pin-actions{justify-content:flex-end;width:100%}.wcard{padding:14px}}.progress-line{margin:10px 0 4px}.progress-line .bar{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.progress-line .bar>span{background:var(--accent);border-radius:999px;height:100%;display:block}.progress-line.reached .bar>span{background:var(--ok)}.progress-line small{margin-top:4px;display:block}.progress-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.progress-row>.accent-link{margin-top:4px}.progress-line strong{font-size:.95rem}.progress-empty{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 8px;margin:10px 0 4px;font-size:.9rem;display:flex}.pcard .next{align-items:flex-start;gap:6px;display:flex}.pcard .next svg{flex:none;margin-top:4px}.pcard .due,.wcard .due{align-items:center;gap:6px;margin:4px 0 0;display:flex}.wcard .above{z-index:1;position:relative}.counts-mark{color:var(--accent-text);align-items:center;gap:3px;display:inline-flex}.project-progress{margin:12px 0 16px;padding:14px 18px}.project-progress .expected{align-items:flex-start;gap:8px;margin:0 0 6px;display:flex}.project-progress .expected svg{color:var(--accent-text);flex:none;margin-top:3px}.project-progress .progress-line .bar{height:10px}.project-progress .explain{margin:6px 0 0}.project-progress .notice{margin:12px 0 0}.progress-modes{gap:4px;display:grid}.progress-modes label{align-items:flex-start;gap:8px;width:100%;margin:4px 0;display:flex}.progress-modes input{margin-top:4px}.goal-progress{margin:8px 0 20px}.goal-progress-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.goal-progress-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.goal-progress-list .weight{flex:none;align-items:center;gap:6px;display:flex}.goal-progress-list .weight input{width:72px;margin:0}.counts-check{align-self:end;padding-bottom:10px}@media (max-width:560px){.goal-progress-list li{flex-wrap:wrap}}.line-tabs{scrollbar-width:none;border-bottom:1px solid var(--border);gap:28px;margin:6px 0 20px;display:flex;overflow-x:auto}.line-tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:6px 2px 9px;font-size:.95rem;text-decoration:none}.line-tabs a:hover{color:var(--fg)}.line-tabs a[aria-current=page]{color:var(--accent-text);border-bottom-color:color-mix(in srgb, var(--accent) 65%, transparent);font-weight:500}@media (max-width:560px){.line-tabs{gap:20px}}.plan-head{justify-content:space-between;align-items:center;gap:12px;margin:4px 0 10px;display:flex}.plan-head h2{margin:0}.plan-head .plan-add{border-radius:8px;gap:4px;height:30px;min-height:30px;padding:0 10px;font-size:.82rem;line-height:1}.small-button{align-items:center;gap:6px;min-height:34px;padding:5px 12px;font-size:.9rem;display:inline-flex}.text-button{color:var(--accent-text);background:0 0;border:none;align-items:center;gap:4px;padding:4px 0;font-size:.92rem;font-weight:500;text-decoration:none;display:inline-flex}.text-button:hover{text-decoration:underline}.plan-empty{margin:0 0 16px}.stage-list{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 24px;padding:0;list-style:none}.stage-item{position:relative}.stage-item+.stage-item{border-top:1px solid var(--border)}.stage-row>summary{cursor:pointer;align-items:center;gap:10px;min-height:60px;padding:12px 56px 12px 14px;list-style:none;display:flex}.stage-row>summary::-webkit-details-marker{display:none}.stage-row>summary:hover{background:var(--soft)}.stage-item:first-child .stage-row>summary{border-radius:var(--radius) var(--radius) 0 0}.stage-chevron{color:var(--muted);flex:none;transition:transform .15s}.stage-row[open] .stage-chevron{transform:rotate(90deg)}.stage-n{width:26px;height:26px;color:var(--accent-text);background:var(--accent-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;display:inline-flex}.stage-item.done .stage-n{color:var(--ok);background:var(--ok-soft)}.stage-title{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:500}.stage-item.done .stage-title{color:var(--muted)}.stage-meta{flex:none;align-items:center;gap:10px;display:flex}.stage-meta .badge{align-items:center;gap:4px;font-size:.78rem;display:inline-flex}.stage-count{text-align:right;white-space:nowrap;width:64px}.stage-status{justify-content:flex-end;width:168px;display:flex}.stage-lines{margin:0;padding:0;list-style:none}.stage-lines li+li{border-top:1px solid var(--border)}.stage-line{color:var(--fg);align-items:center;gap:10px;padding:10px 0;text-decoration:none;display:flex}.stage-line .badge{flex:none;align-items:center;gap:4px;font-size:.78rem;display:inline-flex}.stage-line:hover .stage-title{color:var(--accent-text)}.stage-lines li.done .stage-n{color:var(--ok);background:var(--ok-soft)}.stage-lines li.done .stage-title{color:var(--muted)}.loose-line{margin:14px 0 0}.stage-menu{position:absolute;top:13px;right:12px}.stage-body{padding:0 16px 14px 50px}.stage-criteria{margin:0 0 8px;font-size:.95rem}.stage-body .items{margin:0}.stage-actions{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:6px;display:flex}.stage-actions form{margin:0}.new-task{flex-wrap:wrap;flex:100%;align-items:center;gap:8px;margin:6px 0;display:flex}.new-task input[name=title]{flex:220px;margin:0}.loose-tasks{margin:8px 0 16px}.loose-tasks .items{margin:0 0 4px}.move-list .item{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.move-form{align-items:center;gap:6px;margin:0;display:flex}.move-form select{max-width:220px;margin:0}.dialog-backdrop{z-index:50;background:#10181659;justify-content:center;align-items:flex-start;padding:8vh 16px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog-dismiss{position:fixed;inset:0}.dialog{width:min(520px,100%);margin:0;position:relative;box-shadow:0 16px 48px #0000002e}.toast{z-index:60;color:var(--accent-text);background:var(--accent-soft);pointer-events:none;border-radius:999px;margin:0;padding:5px 14px;font-size:.82rem;animation:2.6s forwards toast-out;position:fixed;top:14px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000014}@keyframes toast-out{0%,75%{opacity:1}to{opacity:0;visibility:hidden}}@media (max-width:560px){.stage-row>summary{flex-wrap:wrap;gap:8px;padding:12px 52px 12px 12px}.stage-count,.stage-status{width:auto}.stage-title{flex:calc(100% - 90px)}.stage-meta{flex:100%;padding-left:62px}.stage-body{padding:0 12px 12px}}.stage-body .counts-mark{display:none}.page-head.compact .head-actions{--head-h:30px;gap:6px}.page-head.compact .head-actions .pill,.page-head.compact .head-actions .button,.page-head.compact .head-actions button{border-radius:8px;padding:0 10px;font-size:.82rem}.page-head.compact .head-actions .menu>summary.icon-button{border-radius:8px}.page-head.compact .head-actions svg{width:14px;height:14px}.page-head.compact .head-actions .pill:before{width:7px;height:7px}.pins.compact{gap:8px;margin-bottom:16px}.pins.compact .pin-card{background:color-mix(in srgb, var(--accent-soft) 45%, var(--card));border-color:color-mix(in srgb, var(--accent) 14%, var(--border));border-radius:10px;gap:10px;padding:10px 12px}.pins.compact .pin-mark{margin-top:1px}.pins.compact .pin-label{letter-spacing:.06em;font-size:.66rem}.pins.compact .pin-card h2{margin:1px 0 2px;font-size:.95rem;line-height:1.3}.pins.compact .pin-card p{font-size:.85rem;line-height:1.4}.pins.compact .pin-actions{gap:4px}.pins.compact .pin-actions .icon-button{border-radius:7px;width:26px;height:26px}.pins.compact .pin-actions svg{width:14px;height:14px}.pins.compact .pin-more{font-size:.85rem}.wcards.compact{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:10px;margin-bottom:20px}.wcards.compact .wcard{gap:10px;padding:10px 12px;font-size:.85rem}.wcards.compact .wcard-icon{border-radius:9px;width:32px;height:32px}.wcards.compact .wcard-badge{padding:1px 6px;font-size:.68rem}.wcards.compact .wcard h3{margin:4px 0 2px;font-size:.92rem;line-height:1.3}.wcards.compact .wcard-next{gap:5px;margin-top:6px}.wcards.compact .wcard-next svg{width:14px;height:14px;margin-top:2px}.wcards.compact .wcard-last{margin-top:4px;font-size:.78rem}.wcards.compact .wcard-chev{width:16px;height:16px;margin-top:2px}.wcards.compact .progress-line,.wcards.compact .progress-empty{margin:6px 0 2px;font-size:.8rem}.wcards.compact .progress-empty svg{width:14px;height:14px}.place-list{flex-wrap:wrap;gap:6px 18px;margin:0 0 20px;padding:0;list-style:none;display:flex}.place-list li{align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.place-list svg{color:var(--muted)}.about-card{background:color-mix(in srgb, var(--accent-soft) 45%, var(--card));border:1px solid color-mix(in srgb, var(--accent) 14%, var(--border));border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.about-card h2{margin:0 0 4px;font-size:1rem}.about-card p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.5}.about-mark{color:var(--accent-text);flex:none;margin-top:2px}.about-card .icon-button{border-radius:8px;flex:none;width:30px;height:30px}.scards{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px;margin-bottom:24px;display:grid}.scard{flex-direction:column;align-items:stretch;padding:14px 16px;display:flex}.scard-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.scard-head h2{margin:0;font-size:1rem}.scards>.scard.wide{grid-column:1/-1}.scard-head h2 a{color:inherit;text-decoration:none}.scard-head h2 a:hover{color:var(--accent-text)}.scard-head .scard-add{border-radius:8px;flex:none;width:30px;height:30px}.scard-head .scard-add svg{width:14px;height:14px}.sitems{margin:0;padding:0;list-style:none}.sitem{align-items:flex-start;gap:12px;padding:10px 0;display:flex}.sitems>li{border-bottom:none}.sitems>li+li{border-top:1px solid var(--border)}.sitem-icon{width:34px;height:34px;color:var(--accent-text);background:var(--soft);border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.sitem-icon svg{width:17px;height:17px}.sitem-title{color:var(--fg);font-size:.92rem;font-weight:500;text-decoration:none}a.sitem-title:hover{text-decoration:underline}.sitem-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:3px;font-size:.78rem;display:flex}.sitem-meta .badge{padding:1px 6px;font-size:.72rem}.sitem p{color:var(--muted);margin:4px 0 0;font-size:.82rem}.sitems>.sitem-task{background:0 0;border-radius:0;align-items:flex-start;gap:12px;margin:0;padding:10px 0;font-size:.92rem;display:flex}.focus-card{background:color-mix(in srgb, var(--accent-soft) 55%, var(--card));border:1px solid color-mix(in srgb, var(--accent) 14%, var(--border));border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:20px;padding:12px 16px;display:flex}.focus-label{color:var(--accent-text);letter-spacing:.06em;text-transform:uppercase;font-size:.66rem;font-weight:600}.focus-card p{margin:2px 0 0;font-size:.95rem}.focus-card .icon-button{border-radius:8px;flex:none;width:30px;height:30px}.focus-form{flex-wrap:wrap;gap:8px;margin-top:6px}.focus-form input{flex:260px}.area-h2{margin:4px 0 12px}.adcards{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px;margin-bottom:16px;display:grid}.adcard{flex-direction:column;padding:14px 16px;display:flex;position:relative}.adcard:hover{border-color:var(--accent)}.adcard .stretched:after{content:"";position:absolute;inset:0}.adcard-top{justify-content:space-between;align-items:flex-start;display:flex}.adcard-icon{width:36px;height:36px;color:var(--accent-text);background:var(--soft);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.adcard h3{margin:10px 0 2px;font-size:1.02rem}.adcard h3 a{color:var(--fg);text-decoration:none}.adcard-about{margin:0;font-size:.85rem}.adcard-now{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.adcard-now .badge{font-size:.72rem}.adcard-title{margin:6px 0 0;font-size:.9rem}.adcard-now .progress-line{margin:6px 0 0;font-size:.8rem}.adcard-foot{margin:auto 0 0;padding-top:10px;font-size:.78rem}.area-pair{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px;margin-bottom:14px;display:grid}.arows{margin:0;padding:0;list-style:none}.arows>li+li{border-top:1px solid var(--border)}.arows a{color:var(--fg);align-items:center;gap:12px;padding:9px 0;text-decoration:none;display:flex}.arows a:hover .arow-title{text-decoration:underline}.arow-icon{width:32px;height:32px;color:var(--accent-text);background:var(--soft);border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.arow-icon svg{width:16px;height:16px}.arow-title{font-size:.9rem;display:block}.arows small{font-size:.76rem;display:block}.arow-when{color:var(--muted);flex:none;font-size:.8rem}.area-add{margin:4px 0 20px;font-size:.9rem}.area-links{margin-bottom:12px}.crm-pending{background:var(--soft);box-shadow:none;align-items:flex-start;gap:12px;margin:0 0 16px;padding:12px 14px;display:flex}.crm-pending p{margin:2px 0 0}.fin-summary{margin:0 0 8px;padding:14px 16px;display:block}.fin-summary h2{margin:0 0 8px;font-size:1.05rem}.fin-card{background:var(--card);border:1px solid var(--border);border-radius:8px;margin:8px 0;padding:10px 14px 4px}.fin-card .fin-table th{color:var(--muted);font-size:.8rem;font-weight:500}.fin-card .fin-table tr:last-child td{border-bottom:none}.fin-table{border-collapse:collapse;width:100%;font-size:.9rem}.fin-table td,.fin-table th{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:6px 0}.fin-table .num{text-align:right;white-space:nowrap;padding-left:12px}.fin-table .fin-group th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding-top:12px;font-size:.78rem;font-weight:600}.fin-table .fin-total td{border-bottom:none;font-weight:600}.fin-note{font-weight:400;display:block}.fund-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin:0 0 20px;padding:0;list-style:none;display:grid}.fund{padding:14px 16px;display:block}.fund.debt{flex-direction:column;display:flex}.fund.debt .debt-crm{margin:auto 0 0;padding-top:10px}.fund-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.fund-title{color:var(--fg);font-weight:600;text-decoration:none}.fund-purpose{margin:2px 0 0}.fund-figures{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 0;display:grid}.fund-figures dt{color:var(--muted);font-size:.75rem}.fund-figures dd{white-space:nowrap;margin:2px 0 0;font-size:.88rem;font-weight:500}.fund .progress-line{align-items:center;gap:8px;display:flex}.fund .progress-line .bar{flex:1}.fund .progress-line strong{font-size:.85rem}@media (max-width:560px){.fund-figures dd{white-space:normal;font-size:.82rem}}.fin-summary .section-head{margin:0}.fin-pending{margin:0 0 4px}@media (max-width:560px){.fin-table .num{white-space:normal}}.crm-status{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;margin:0 0 8px;display:flex}.crm-status form{margin:0}.crm-status button{height:auto;min-height:0;color:var(--accent-text);box-shadow:none;background:0 0;border:none;align-items:center;gap:4px;padding:2px 4px;font-size:.82rem;display:inline-flex}.fin-error{color:var(--danger,#b42318)}.month-nav{align-items:center;gap:8px;margin:4px 0 10px;display:flex}.month-nav-total{color:var(--fg);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}:is(.month-nav:has(+.fin-card) .month-nav-total,.month-nav:has(+.fin-scroll.fin-card) .month-nav-total){padding-right:15px}.month-nav:has(+.fin-scroll .fin-ops) .month-nav-total{padding-right:18px}.month-nav strong{text-align:center;min-width:130px;font-size:.95rem}.fin-scroll{max-width:100%;overflow-x:auto}.fin-table thead th{color:var(--muted);font-size:.78rem;font-weight:500}.fin-table tfoot td{border-bottom:none}.fin-table .nowrap{white-space:nowrap}.fin-grid td,.fin-grid th{padding-right:8px}.fin-grid td:first-child,.fin-grid th:first-child{background:var(--card);min-width:140px;position:sticky;left:0}.fin-up{color:var(--accent-text)}.fin-down{color:var(--muted)}.fin-cost-less{color:var(--accent-text)}.fin-cost-more{color:var(--cost-up)}.fin-src{color:var(--muted);vertical-align:middle;margin-left:6px}.fin-h3{margin:18px 0 2px;font-size:.95rem}.fin-planned,.fin-history ul{margin:6px 0 0;padding:0;font-size:.88rem;list-style:none}.fin-planned li,.fin-history li{border-bottom:1px solid var(--border);gap:10px;padding:5px 0;display:flex}.fin-history{margin:8px 0}.fin-history summary{color:var(--accent-text);cursor:pointer}.fund .pill.done{color:var(--muted)}@media (max-width:560px){.fin-grid .num,.fin-ops .num{white-space:nowrap}.fin-grid td:first-child,.fin-grid th:first-child{min-width:110px}}.material-source{gap:8px;display:grid}.material-source .seg{background:var(--soft);border-radius:10px;justify-self:start;gap:4px;padding:3px;display:inline-flex}.material-source .seg button{height:30px;min-height:0;color:var(--muted);box-shadow:none;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:.85rem;display:inline-flex}.material-source .seg button[aria-checked=true]{color:var(--fg);background:var(--card);box-shadow:0 1px 2px #00000014}.material-source p{margin:0}.sr-only-input{clip:rect(0 0 0 0);opacity:0;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.file-card{margin:0 0 12px}.file-preview{object-fit:contain;border:1px solid var(--border);border-radius:12px;max-width:min(100%,520px);max-height:420px;margin:0 0 10px;display:block}.attachments-input{gap:8px;display:grid}.attachments-pending{gap:6px;margin:0;padding:0;list-style:none;display:grid}.attachments-pending li{align-items:center;gap:8px;display:flex}.attachments-pending li input[type=url]{flex:1;min-width:0}.attachments-add{flex-wrap:wrap;gap:6px;display:flex}.attachments-add .button.small{height:30px;min-height:0;padding:0 10px;font-size:.85rem}.attachments{margin:0 0 20px}.attachments h2{margin:0 0 10px;font-size:1rem}.attachment-list{gap:10px;margin:0 0 12px;padding:0;list-style:none;display:grid}.attachment{align-items:center;gap:12px;display:flex}.attachment a{align-items:center;gap:6px;display:inline-flex}.attachment-preview{object-fit:cover;border:1px solid var(--border);border-radius:10px;width:96px;height:72px;display:block}.attachments-input .primary.small{height:30px;min-height:0;padding:0 12px;font-size:.85rem}.info-kinds{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;display:flex}.info-kinds label{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.9rem;display:inline-flex}.info-kinds input{opacity:0;pointer-events:none;position:absolute}.info-kinds label:has(input:checked){color:var(--accent-text);border-color:var(--accent);background:var(--accent-soft)}.info-kinds label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.info-fields:not(:has(input[name=item][value=note]:checked)):has(input[name=item]:checked) .info-only-note{display:none}.head-actions .menu:has(>summary.icon-button) .menu-panel{gap:4px;min-width:200px;padding:8px;display:grid}:is(.head-actions .menu:has(>summary.icon-button) .menu-panel a,.head-actions .menu:has(>summary.icon-button) .menu-panel button){border-radius:8px;gap:10px;padding:9px 12px;font-size:.88rem;line-height:1.3}.head-actions .menu:has(>summary.icon-button) .menu-panel svg{flex:none;width:16px;height:16px}form:has(input[name=project_type][value=savings]:checked) .only-standard{display:none}:is(.time-fields:has(input[name=item][value=task]:checked) .time-only-event,.time-fields:has(input[name=item][value=task]:checked) .time-only-tracker,.time-fields:has(input[name=item][value=event]:checked) .time-only-task,.time-fields:has(input[name=item][value=event]:checked) .time-only-tracker,.time-fields:has(input[name=item][value=tracker]:checked) .time-only-task,.time-fields:has(input[name=item][value=tracker]:checked) .time-only-event){display:none}.tracker-kinds{border:none;flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;font-size:.85rem;display:flex}.weekday-picks{flex-wrap:wrap;gap:6px;display:flex}.weekday-picks label{align-items:center;display:inline-flex}.weekday-picks input{opacity:0;pointer-events:none;position:absolute}.weekday-picks span{min-width:38px;height:28px;color:var(--muted);border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 8px;font-size:.8rem;display:inline-flex;position:relative}.weekday-picks input:checked+span{color:var(--accent-text);background:var(--accent-soft);border-color:#0000}.weekday-picks input:checked+span:after{content:"✓";color:var(--accent-text);font-size:9px;font-weight:700;line-height:1;position:absolute;top:1px;right:3px}.weekday-picks input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.add-form{gap:14px;padding:18px 20px;font-size:.9rem;display:grid}.add-form>*+*{margin-top:0}.add-form.plain{padding:0}.savings-form .row.between .text-button{font-size:.82rem}.savings-form .plan-check{color:var(--muted);border:none;padding:0;font-size:.82rem}.savings-form .plan-check.ok{color:var(--ok)}.savings-form .plan-check.off{color:var(--warn)}.savings-form .plan-months{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px 10px}.savings-form .plan-months label{gap:4px;display:grid}.savings-form .plan-months input{padding:6px 8px;font-size:.85rem}.menu-block .line-tabs{margin:0 0 14px}.add-form .add-title{font-size:.95rem;font-weight:600}.add-form input:not([type=radio]):not([type=checkbox]),.add-form select,.add-form textarea{color:var(--fg);border-radius:8px;padding:8px 10px;font-size:.9rem}.add-form textarea{min-height:64px}.add-form .tform-title,.add-form .info-fields>input[name=title]{font-size:.98rem;font-weight:500}.add-form label,.add-form .tform-label,.add-form .field-label{color:var(--muted);font-size:.78rem;font-weight:500}.add-form .tform-label{margin-bottom:5px;display:block}.add-form label>input,.add-form label>select{margin-top:5px}.add-form .info-kinds label{color:var(--fg);padding:5px 12px;font-size:.85rem}.add-form .info-kinds label:has(input:checked){color:var(--accent-text)}.tform,.tform-part{gap:12px;display:grid}.tform-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px 16px;display:grid}.tform-field{min-width:0}.tform-pair{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:6px;display:grid}.add-form small.muted,.add-form .muted.small{font-size:.78rem}.tform-place{border-top:1px solid var(--border);gap:8px;padding-top:12px;display:grid}.tform-place .tform-label{margin-bottom:0}.add-form .places-picker{gap:8px}.add-form .places-picker .picked{gap:6px}.add-form .places-picker .chip{color:var(--accent-text);background:var(--accent-soft);border-color:#0000;padding:4px 6px 4px 10px;font-size:.82rem}.add-form .tform-check{color:var(--fg);align-items:center;gap:6px;font-size:.82rem;display:inline-flex}.add-form .row{gap:8px}.event-mark{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:.78rem;font-weight:500;text-decoration:none;display:inline-flex}.event-mark.ask{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent)}.event-mark.cancelled{color:var(--muted);background:var(--soft)}.cal-item.ask{color:var(--danger);border-color:var(--danger);background:color-mix(in srgb, var(--danger) 8%, var(--card))}.cal-item.cancelled .cal-title{color:var(--muted);text-decoration:line-through}.event-status{gap:10px;display:grid}.event-status.ask{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 5%, var(--card))}.event-status-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.event-status-title{align-items:center;gap:8px;font-size:.95rem;display:inline-flex}.event-status.ask .event-status-title{color:var(--danger)}.event-status-title.held{color:var(--accent-text)}.event-status-title.cancelled{color:var(--muted)}.event-answers{flex-wrap:wrap;gap:8px}.event-answers form{margin:0}.event-answers .button,.event-answers button{align-items:center;gap:6px;padding:7px 14px;font-size:.88rem;display:inline-flex}.event-answer-form{box-shadow:none;border:0;margin:0;padding:0}.places-picker .chip-count{color:var(--muted);background:var(--card);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;margin:0 0 0 4px;padding:1px 8px 1px 6px;font-size:.75rem;font-weight:500;display:inline-flex}.places-picker .chip-count input{margin:0}.places-picker .chip-count:has(input:checked){color:var(--accent-text)}.unanswered{gap:6px;margin:0;padding:0;list-style:none;display:grid}.unanswered li{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.search-pick{max-width:460px;position:relative}.search-pick input[type=search]{border-style:dashed;border-radius:8px;margin:0;padding:7px 10px;font-size:.85rem}.search-pick input[type=search]:focus{border-style:solid}.search-results{z-index:20;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 8px 24px #0000001f}.search-results .muted{margin:4px 6px}.search-option{text-align:left;width:100%;color:var(--fg);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 8px;font-size:.85rem;display:flex}.search-option small{margin:0;padding:0;font-size:.72rem;line-height:1.2;display:block}.search-option.active{background:var(--soft)}.add-form .row .button,.add-form .row button,.event-answers .button,.event-answers button{border-radius:8px;height:32px;min-height:32px;padding:0 14px;font-size:.85rem;line-height:1}.sitem form{margin:0}.task-check{cursor:pointer;border:0;padding:0;position:relative}.task-check .task-check-mark,.task-check:hover svg:first-child,.task-check.done svg:first-child{display:none}.task-check:hover .task-check-mark,.task-check.done .task-check-mark{display:block}.task-check.done{color:#fff;background:var(--accent)}.sitem-meta .late{color:var(--danger)}.sitem-meta .counts-mark{color:var(--accent-text);align-items:center;gap:3px;display:inline-flex}:is(.info-fields:has(input[name=item]:checked):not(:has(input[name=item][value=note]:checked)):not(:has(input[name=item][value=material]:checked)) .info-only-notelike,.info-fields:has(input[name=item]:checked):not(:has(input[name=item][value=decision]:checked)) .info-only-decision){display:none}.info-fields:not(:has(input[name=item]:checked)) .info-only-decision{display:none}.add-form .link-picker .field-label{margin-bottom:5px;display:block}.add-form .picker-input input{border-style:dashed;margin:0;padding:7px 10px;font-size:.85rem}.add-form .picker-input input:focus{border-style:solid}.add-form .attachments-input .field-label{margin-bottom:5px;display:block}.task-mark{width:18px;height:18px;color:var(--accent-text);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;margin-top:3px;padding:0;display:inline-flex}.task-mark .task-mark-check,.task-mark:hover .kind-icon,.task-mark.done .kind-icon{display:none}.task-mark:hover .task-mark-check,.task-mark.done .task-mark-check{display:block}.task-mark.done{color:#fff;background:var(--accent);border-radius:4px}.task-mark .task-mark-check{width:14px;height:14px}.item:has(>form>.task-mark){align-items:flex-start}.items .sortable .handle{opacity:0}.items .sortable:hover .handle,.items .sortable .handle:focus-visible,.items .sortable.dragging .handle{opacity:1}@media (hover:none){.items .sortable .handle{opacity:.5}}.row-link{position:relative}.row-link .item-title:after{content:"";position:absolute;inset:0}.row-link form,.row-link button,.row-link .meta a{z-index:1;position:relative}.row-link:hover .item-title{color:var(--accent-text)}.link-search button{border-radius:8px;height:32px;min-height:32px;padding:0 14px;font-size:.85rem}.link-search input[type=search]{border-style:dashed;border-radius:8px;padding:7px 10px;font-size:.85rem}.line-tabs a:focus-visible,.page-tabs a:focus-visible{text-underline-offset:6px;outline:none;text-decoration:underline}.items .sortable{position:relative}.items .sortable .handle{position:absolute;top:50%;left:-18px;transform:translateY(-50%)}.soft-block{border-top:1px solid var(--border);gap:8px;margin:16px 0 0;padding-top:12px;display:grid}.soft-block:first-child,.line-tabs+.soft-block{border-top:0;padding-top:0}.soft-label{color:var(--muted);font-size:.78rem;font-weight:500}.soft-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.soft-chip{background:var(--accent-soft);border-radius:999px;align-items:center;max-width:100%;padding:4px 6px 4px 10px;display:inline-flex}.soft-chip form{margin:0}.soft-chip-link{min-width:0;color:var(--accent-text);align-items:baseline;gap:6px;font-size:.85rem;text-decoration:none;display:inline-flex}.soft-chip-link svg{flex:none;align-self:center}.soft-chip-link small{color:var(--muted);white-space:nowrap;font-size:.72rem}.soft-chip-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.soft-chip-link:hover .soft-chip-title{text-decoration:underline}.soft-chip .chip-remove{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;margin-left:4px;padding:2px;display:inline-flex}.soft-chip:not(:has(.chip-remove)){padding-right:10px}.link-adder{margin:0}.record-editor{gap:6px;margin-bottom:8px;display:grid}.record-editor-meta{flex-wrap:wrap;align-items:center;gap:8px 12px;min-height:34px;display:flex}.record-editor-kind{color:var(--accent-text);background:var(--accent-soft);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:.82rem;font-weight:500;display:inline-flex}.record-editor .inline-select,.record-editor .inline-date{width:auto;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;margin:0;padding:3px 8px;font-size:.82rem}.record-editor .inline-select:hover,.record-editor .inline-date:hover,.record-editor .inline-select:focus,.record-editor .inline-date:focus{border-color:var(--border)}.save-state{color:var(--muted);font-size:.78rem}.save-state.error{color:var(--danger)}.record-editor-actions{margin-left:auto}.record-editor-title{width:100%;font:inherit;letter-spacing:-.01em;color:var(--fg);resize:none;background:0 0;border:1px solid #0000;border-radius:8px;margin:4px 0 0 -6px;padding:2px 6px;font-size:1.35rem;font-weight:700;line-height:1.3;display:block;overflow:hidden}.record-editor-body{width:100%;min-height:96px;color:var(--fg);resize:none;background:0 0;border:1px solid #0000;border-radius:8px;margin:0 0 0 -6px;padding:6px;font-size:.98rem;line-height:1.6;overflow:hidden}.record-editor-title:hover,.record-editor-body:hover{border-color:var(--border)}.record-editor-title:focus,.record-editor-body:focus{background:var(--card);border-color:var(--border);outline:none}.record-editor-title:disabled,.record-editor-body:disabled{background:0 0;border-color:#0000}.attachments.soft-block h2{display:none}.record-editor .places-picker .chip{color:var(--accent-text);background:var(--accent-soft);border-color:#0000;padding:4px 6px 4px 10px;font-size:.85rem}.places-picker .chip-link{color:inherit;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.places-picker .chip-link:hover{text-decoration:underline}.places-picker .chip.fixed{padding-right:10px}.places-picker .chip.fixed small{color:var(--muted);margin-left:6px;font-size:.72rem}.event-editor .inline-times{color:var(--muted);align-items:center;gap:2px;display:inline-flex}.record-editor-actions .button.small-head{border-radius:8px;align-items:center;gap:6px;height:32px;min-height:32px;padding:0 12px;font-size:.85rem;display:inline-flex}.event-status-menu>summary.pill{cursor:pointer;height:32px;min-height:32px;padding:0 12px;font-size:.85rem;list-style:none}.event-status-menu>summary.pill::-webkit-details-marker{display:none}.event-status-menu.planned>summary.pill:before{background:var(--accent)}.event-status-menu.held>summary.pill{background:var(--ok-soft)}.event-status-menu.held>summary.pill:before{background:var(--ok)}.event-status-menu.ask>summary.pill{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}.event-status-menu.ask>summary.pill:before{background:var(--danger)}.event-status-menu.cancelled>summary.pill{color:var(--muted)}.row-status{flex-shrink:0;align-self:center}.event-status-menu.row-status>summary.pill{height:26px;min-height:26px;padding:0 10px;font-size:.78rem;font-weight:400}.row-status .menu-panel{min-width:220px;left:auto;right:0}.row-status .menu-panel button{font-size:.88rem}.event-editor .soft-block .record-editor-body{min-height:0}.event-answer{margin:4px 0 8px}.event-answer .add-form{margin:8px 0}.record-editor-meta.split{flex-wrap:nowrap;align-items:flex-start}.record-editor-meta .meta-left{flex-wrap:wrap;flex:auto;align-items:center;gap:8px 12px;min-width:0;display:flex}.record-editor-meta.split .record-editor-actions{flex:none}@media (max-width:640px){.record-editor-meta.split{flex-wrap:wrap}}.event-editor .soft-block .record-editor-body[rows="1"]{min-height:36px}.head-actions .status-menu .menu-panel,.head-actions .event-status-menu .menu-panel{gap:4px;min-width:200px;padding:8px;display:grid}.head-actions .status-menu .menu-panel a,.head-actions .status-menu .menu-panel button,.head-actions .event-status-menu .menu-panel a,.head-actions .event-status-menu .menu-panel button{border-radius:8px;gap:10px;height:auto;min-height:0;padding:9px 12px;font-size:.88rem;font-weight:400;line-height:1.3}.head-actions .status-menu .menu-panel svg,.head-actions .event-status-menu .menu-panel svg{width:16px;height:16px}.record-editor-actions .add-menu>summary.button{border-radius:8px;height:32px;min-height:32px;padding:0 12px;font-size:.85rem}.record-editor-actions .add-menu>summary svg{width:15px;height:15px}.outcome-list,.brief-list{margin:0}.brief-list .item-title{font-size:.98rem}.brief-list .item p{margin:2px 0 0}.editor-top{align-items:center;gap:10px;min-height:34px;display:flex}.editor-top .record-editor-kind{height:30px}.editor-top .record-editor-actions{--head-h:32px;align-items:center;gap:8px;margin-left:auto;padding-top:0;display:flex}.editor-top .record-editor-actions .menu>summary.icon-button{border-radius:8px;width:32px;height:32px;min-height:32px}.editor-top .record-editor-actions>.menu,.editor-top .record-editor-actions>details{display:flex}.editor-when{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.editor-when:empty{display:none}.editor-when .star-rating{margin-left:auto}.star-rating.fitted{justify-content:space-between}.star-rating.fitted button{font-size:inherit;padding:0}.record-editor .editor-when .inline-date,.record-editor .editor-when .inline-select{height:30px;color:var(--fg);background:var(--card);border:1px solid var(--border);border-radius:8px;padding:0 8px;font-size:.82rem}.record-editor .editor-when .inline-times{gap:6px}.brief-list>li,.brief-list .item{border-top:0;border-bottom:0;padding:6px 0}.when-field{align-items:center;gap:4px;display:inline-flex}.when-label{color:var(--muted);margin-right:2px;font-size:.78rem}.task-editor .editor-when{gap:8px 16px}.editor-when.summary{color:var(--fg);gap:4px 16px;font-size:.85rem}.editor-when.summary .when-label{margin-right:2px}.when-bell{color:var(--muted);align-items:center;gap:5px;display:inline-flex}.time-panel{gap:14px;margin:10px 0 4px;padding:14px 16px;font-size:.88rem;display:grid}.time-panel .tform-label{color:var(--muted);align-items:center;gap:5px;margin-bottom:6px;font-size:.78rem;display:inline-flex}.time-row{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.time-row .weekday{min-width:2ch;font-size:13px}.time-row .weekday:empty{display:none}.time-panel input[type=date],.time-panel input[type=time]{border-radius:8px;width:auto;height:32px;margin:0;padding:0 8px;font-size:.85rem}.time-panel .tform-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.remind-checks{flex-wrap:wrap;gap:6px 16px;display:flex}.remind-checks label{color:var(--fg);font-size:.85rem}.remind-list{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.time-panel .button.small-head,.time-panel .row .button{border-radius:8px;align-items:center;height:32px;padding:0 12px;font-size:.85rem;display:inline-flex}.funds-overview{margin-bottom:20px}.funds-total{color:var(--accent);background:var(--ok-soft);border-radius:10px;align-items:baseline;gap:10px;margin:0 0 10px;padding:8px 14px;font-size:.85rem;display:inline-flex}.funds-total strong{font-variant-numeric:tabular-nums;font-size:1.15rem}.funds-grid{border-collapse:collapse;font-variant-numeric:tabular-nums;min-width:100%;font-size:.85rem}.funds-grid th,.funds-grid td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--border);padding:7px 12px}.funds-grid thead th{color:var(--muted);font-weight:500;line-height:1.2}.funds-grid thead th.now{color:var(--accent-text)}.funds-grid tbody th{z-index:1;text-align:left;background:var(--card);font-weight:500;position:sticky;left:0}.funds-grid td.ahead{color:var(--muted);opacity:.7}.funds-grid td.now{color:var(--accent-text)}.funds-grid tr:last-child th,.funds-grid tr:last-child td{border-bottom:none}.funds-grid tr.total th,.funds-grid tr.total td:not(.ahead){font-weight:600}.tracker-row{align-items:center}.tracker-row .grow{min-width:6em}.tracker-row .task-mark{justify-content:center;width:32px}.tracker-row .tracker-icon{width:32px;color:var(--accent-text);justify-content:center;display:inline-flex}.tracker-row.skipped .item-title{color:var(--muted)}.tracker-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.tracker-controls form{margin:0}.tracker-controls .icon-button.small{width:28px;height:28px}.tracker-count{text-align:center;font-variant-numeric:tabular-nums;min-width:4.5em;color:var(--muted);font-size:.85rem}.tracker-count.reached{color:var(--accent-text);font-weight:600}.tracker-minutes{align-items:center;gap:6px;display:flex}.tracker-minutes input{width:64px;margin:0;padding:4px 8px}.tracker-skip summary{color:var(--muted);cursor:pointer;font-size:.8rem;list-style:none}.tracker-skip summary::-webkit-details-marker{display:none}.tracker-skip-form{gap:6px;margin-top:6px;display:flex}.tracker-skip-form input{min-width:200px;margin:0}.tracker-stats{color:var(--muted);flex-wrap:wrap;gap:6px 18px;margin:0 0 14px;font-size:.88rem;display:flex}.tracker-stats strong{color:var(--fg)}.tracker-month{grid-template-columns:repeat(7,minmax(28px,40px));gap:4px;display:grid}.tracker-month-head{color:var(--muted);text-align:center;font-size:.72rem}.tracker-day{height:28px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;font-size:.75rem;display:inline-flex}.tracker-day.done{color:var(--accent-fg);background:var(--accent)}.tracker-day.skipped{background:var(--soft);text-decoration:line-through}.tracker-day.missed{border:1px solid var(--border)}.tracker-day.open{border:1px dashed var(--accent)}.tracker-day.off{opacity:.35}.tracker-day.today{font-weight:600}.tracker-here{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;display:flex}.tracker-here:last-child{border-bottom:none}.tracker-here a{color:var(--fg);text-decoration:none}.tracker-dots{gap:4px;display:inline-flex}.tracker-dot{border:1px solid var(--border);border-radius:50%;width:10px;height:10px}.tracker-dot.done{background:var(--accent);border-color:var(--accent)}.tracker-dot.skipped{background:var(--soft)}.tracker-dot.off{opacity:.3}.tracker-streak{text-align:right;min-width:3.5em}:root{--cycle-red:#e5484d;--cycle-yellow:#f5d90a;--cycle-gold:#f2a900;--cycle-grey:#9aa0a6}.cycle-dot{vertical-align:middle;border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.cycle-dot.red{background:var(--cycle-red)}.cycle-dot.yellow{background:var(--cycle-yellow)}.cycle-dot.gold{background:var(--cycle-gold)}.cycle-dot.grey{background:var(--cycle-grey)}a.cycle-dot{width:14px;height:14px;box-shadow:0 0 0 3px var(--soft)}a.cycle-dot:hover{box-shadow:0 0 0 3px var(--border)}.today-title{align-items:center;gap:10px;display:flex}.page-head h1.today-title{letter-spacing:0;margin:0;font-size:1.05rem;font-weight:600}@media (max-width:899px){.page-head.compact.today-head .head-actions .add-menu>summary{justify-content:center;width:32px;padding:0}.today-head .add-label{display:none}.page-head.compact.today-head .head-actions .add-menu>summary svg{flex-shrink:0;width:20px;height:20px}}.cycle-summary{flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 14px;font-size:.9rem;display:flex}.cycle-summary .accent-link{margin-left:auto}.cycle-mark{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;display:flex}.cycle-mark input{width:auto;margin:0}.cycle-month-nav{align-items:center;gap:10px;margin:0 0 8px;display:flex}.cycle-month-nav strong{text-align:center;min-width:9em;font-size:.95rem}.cycle-month{grid-template-columns:repeat(7,minmax(34px,48px));gap:4px;display:grid}.cycle-day{background:var(--soft);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;height:40px;font-size:.8rem;line-height:1.1;display:flex}.cycle-day small{opacity:.85;font-size:.62rem}.cycle-day.red{background:var(--cycle-red);color:#fff}.cycle-day.yellow{background:var(--cycle-yellow);color:#4a4300}.cycle-day.gold{background:var(--cycle-gold);color:#4a3300}.cycle-day.grey{background:var(--cycle-grey);color:#fff}.cycle-day.expected{border:1.5px dashed var(--cycle-red);color:var(--cycle-red);background:0 0}.cycle-day.today{outline:2px solid var(--fg);outline-offset:-2px;font-weight:600}.cycle-phases{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:10px;display:grid}.cycle-phase{border:1px solid var(--border);border-left:4px solid var(--phase);border-radius:10px;padding:10px 12px;scroll-margin-top:80px;font-size:.88rem}.cycle-phase.red{--phase:var(--cycle-red)}.cycle-phase.yellow{--phase:var(--cycle-yellow)}.cycle-phase.gold{--phase:var(--cycle-gold)}.cycle-phase.grey{--phase:var(--cycle-grey)}.cycle-phase.current{background:var(--soft)}.cycle-phase:target{box-shadow:0 0 0 2px var(--phase)}.cycle-phase h3{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 6px;font-size:.95rem;display:flex}.cycle-phase h3 .muted{font-size:.8rem;font-weight:400}.cycle-phase p{margin:0 0 4px}.cycle-now{color:var(--accent-text);margin-left:auto;font-size:.75rem;font-weight:500}.cycle-can strong{color:var(--ok)}.cycle-cannot strong{color:var(--danger)}.cycle-history{margin:0;padding:0;list-style:none}.cycle-history li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:6px 0;font-size:.9rem;display:flex}.cycle-history li:last-child{border-bottom:none}.cycle-history form{margin-left:auto}@media (max-width:480px){.cycle-month{grid-template-columns:repeat(7,1fr)}}.tag-chip{background:var(--accent-soft);color:var(--accent-text);border-radius:999px;padding:0 8px;font-size:.75rem;line-height:1.6}.tag-picks{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tag-picks form{margin:0}button.tag-pick,.tag-pick{border:1px solid var(--border);height:26px;min-height:0;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;align-items:center;padding:0 10px;font-size:.8rem;font-weight:400;display:inline-flex}button.tag-pick:hover{border-color:var(--accent);color:var(--fg)}button.tag-pick.on,.tag-pick.on,.tag-check input:checked+.tag-pick{border-color:var(--accent-soft);background:var(--accent-soft);color:var(--accent-text)}.tag-check{margin:0;display:inline-flex}.tag-check input{opacity:0;width:1px;height:1px;position:absolute}.tag-check input:focus-visible+.tag-pick{outline:2px solid var(--accent)}.tag-new input{border-radius:999px;width:9.5em;height:26px;margin:0;padding:0 10px;font-size:.8rem}.diary-tags{display:inline-block}.diary-tags>summary.button{border-radius:8px;gap:6px;height:32px;min-height:32px;padding:0 12px;font-size:.85rem;list-style:none}.diary-tags>summary::-webkit-details-marker{display:none}.diary-tags .menu-panel{max-height:320px;left:auto;right:0;overflow-y:auto}.diary-tags .menu-panel a[aria-current=page]{font-weight:600}.diary-tags .invisible{visibility:hidden}.diary-month{border-bottom:1px solid var(--border)}.diary-month>summary{cursor:pointer;align-items:baseline;gap:10px;padding:12px 0;list-style:none;display:flex}.diary-month>summary::-webkit-details-marker{display:none}.diary-month>summary:before{content:"›";width:.8em;color:var(--muted);transition:transform .15s;display:inline-block}.diary-month[open]>summary:before{transform:rotate(90deg)}.diary-month>summary h2{color:var(--fg);margin:0;font-size:1.15rem}.diary-month[open]{padding-bottom:12px}.history-day h3.diary-day{color:var(--muted);margin:12px 0 6px;font-size:.9rem;font-weight:500}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.stars-show{color:var(--border);letter-spacing:0;gap:1px;font-size:.8rem;display:inline-flex}.stars-show .on{color:var(--star)}.stars-input{border:0;flex-direction:row-reverse;justify-content:flex-end;gap:2px;margin:0;padding:0;display:inline-flex}.stars-input label{cursor:pointer;margin:0}.stars-input input{opacity:0;width:1px;height:1px;position:absolute}.stars-input label>span[aria-hidden],.star-rating button{color:var(--border);font-size:1.35rem;line-height:1}.stars-input input:checked~span[aria-hidden],.stars-input label:hover>span[aria-hidden],.stars-input label:hover~label>span[aria-hidden]{color:var(--star)}.stars-input label:has(input:checked)~label>span[aria-hidden]{color:var(--star)}.stars-input input:focus-visible+span{outline:2px solid var(--accent);border-radius:4px}.star-rating{gap:2px;display:inline-flex}button.star-rating,.star-rating button{cursor:pointer;background:0 0;border:0;height:auto;min-height:0;padding:0 1px}.star-rating button.on,.star-rating:hover button:not(:disabled){color:var(--star)}.star-rating button:hover~button:not(.on){color:var(--border)}.diary-overview-head{flex-wrap:wrap;align-items:center;gap:8px 10px;margin:14px 0 6px;display:flex}.diary-overview-head h2{margin:0;font-size:1.1rem}.diary-year>h2{margin:22px 0 4px;font-size:1.1rem}.consent{justify-items:center;gap:18px;max-width:480px;margin:48px auto;padding:0 16px;display:grid}.consent .card{width:100%}.consent h1{margin:0;font-size:1.3rem}.consent-choice{border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.consent-choice span{gap:2px;display:grid}.consent-choice input{width:auto;margin-top:4px}.connections{gap:10px;margin:12px 0;padding:0;list-style:none;display:grid}.connection{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bottom-nav{z-index:30;padding-bottom:env(safe-area-inset-bottom);background:var(--card);border-top:1px solid var(--border);display:flex;position:fixed;inset:auto 0 0}.bottom-tab{height:54px;min-height:0;color:var(--muted);background:0 0;border:0;border-radius:0;flex:1;justify-content:center;align-items:center;padding:0;text-decoration:none;display:flex}.bottom-tab[aria-current=page],.bottom-tab[aria-expanded=true]{color:var(--accent-text)}.sheet{z-index:40;position:fixed;inset:0}.sheet-backdrop{background:#0000004d;border:0;border-radius:0;width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0}.sheet-panel{max-height:82vh;padding:12px 16px calc(24px + env(safe-area-inset-bottom));background:var(--side);border-radius:16px 16px 0 0;position:absolute;inset:auto 0 0;overflow-y:auto}.sheet-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}@media (max-width:899px){body{padding-bottom:calc(54px + env(safe-area-inset-bottom))}.mobile-bar{padding-bottom:8px}}@media (min-width:900px){.bottom-nav,.sheet{display:none}}.today-mobile{gap:14px;display:grid}@media (min-width:900px){.today-mobile{display:none}}@media (max-width:899px){.today-grid{display:none}}.m-card{margin:0;padding:16px}.m-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.m-head h2{margin:0;font-size:1.15rem}.m-plus{color:var(--accent-text);display:inline-flex}.habits{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.habit{background:var(--soft);text-align:center;border-radius:12px;grid-template-rows:1fr auto auto;justify-items:center;gap:8px;padding:12px 8px;display:grid}.habit-link{color:var(--fg);justify-items:center;gap:4px;text-decoration:none;display:grid}.habit-link .kind-icon{color:var(--accent-text)}.habit-title{font-size:.9rem;font-weight:500}.habit-amount{color:var(--muted);font-size:.8rem}.habit-bar{background:var(--border);border-radius:999px;width:100%;height:4px;overflow:hidden}.habit-bar span{background:var(--accent);height:100%;display:block}.habit form{height:30px;margin:0;display:flex}.habit-link{align-self:start}.habit-mark{border:2px solid var(--accent);width:30px;height:30px;min-height:0;color:var(--accent-text);background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.habit-mark.on{background:var(--accent);color:var(--accent-fg)}.habit.done .habit-amount{color:var(--accent-text)}.day-rows{margin:0;padding:0;list-style:none}.day-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.day-time{background:var(--soft);min-width:56px;color:var(--accent-text);font-variant-numeric:tabular-nums;text-align:center;border-radius:8px;flex:none;padding:6px 8px;font-size:.85rem}.day-row.late .day-time{color:var(--danger)}.day-main{min-width:0;color:var(--fg);gap:2px;text-decoration:none;display:grid}.day-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.day-meta{color:var(--muted);font-size:.8rem}.day-row.late .day-meta{color:var(--danger)}.status-dot{background:var(--accent);border-radius:50%;flex:none;width:14px;height:14px}.status-dot.s-in_progress{background:var(--info)}.status-dot.s-paused,.status-dot.s-clarifying{background:var(--warn)}.status-dot.s-done,.status-dot.s-cancelled{background:var(--border)}.m-sub{color:var(--muted);margin:14px 0 0;font-size:.85rem;font-weight:600}.m-add{color:var(--accent-text);align-items:center;gap:8px;margin-top:12px;text-decoration:none;display:inline-flex}.m-list{margin:0;padding:0;list-style:none;display:grid}.m-list li{border-bottom:1px solid var(--border);align-items:flex-start;gap:10px;padding:8px 0;display:flex}.m-list li:last-child{border-bottom:none}.m-list a{color:var(--fg);text-decoration:none}.m-note{color:var(--muted);font-size:.8rem;display:block}.today-board{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:16px;display:grid}@media (max-width:899px){.today-board{display:none}}@media (min-width:900px) and (max-width:1180px){.today-board{grid-template-columns:minmax(0,1fr)}}.tb-main,.tb-side{gap:16px;min-width:0;display:grid}.tb-pair{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.tb-card{margin:0;padding:16px 18px}.tb-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.tb-head h2{margin:0;font-size:1.05rem}.tb-head h2 a{color:inherit;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.tb-progress{align-items:center;gap:10px;display:inline-flex}.tb-dots{gap:4px;display:inline-flex}.tb-dots span{background:var(--border);border-radius:999px;width:16px;height:6px}.tb-dots span.on{background:var(--accent)}.habits.wide{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.timeline{margin:0;padding:0;list-style:none;position:relative}.tl-row{grid-template-columns:46px 14px minmax(0,1fr);align-items:center;gap:10px;padding:4px 0;display:grid;position:relative}.tl-row:before{content:"";background:var(--border);width:2px;position:absolute;top:0;bottom:0;left:62px}.tl-time{font-variant-numeric:tabular-nums;color:var(--muted);text-align:right;font-size:.85rem}.tl-row.late .tl-time{color:var(--danger)}.tl-dot{z-index:1;border:2px solid var(--accent);background:var(--card);border-radius:50%;width:12px;height:12px;position:relative}.tl-dot.done{background:var(--accent)}.tl-card{background:var(--soft);color:var(--fg);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;display:flex}.tl-card:hover{background:var(--accent-soft)}.tl-icon{background:var(--card);width:32px;height:32px;color:var(--accent-text);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.tl-text{min-width:0;display:grid}.tl-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tl-meta{color:var(--muted);font-size:.8rem}.tb-add{border:1px dashed var(--border);width:100%;color:var(--accent-text);border-radius:10px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:.9rem;text-decoration:none;display:inline-flex}.tb-add.boxed{background:var(--soft);border-style:solid}.checks{margin:0;padding:0;list-style:none}.checks li{align-items:center;gap:10px;padding:8px 0;font-size:.9rem;display:flex}.checks li a{color:var(--fg);text-decoration:none}.checks li.done a{color:var(--muted);text-decoration:line-through}.checks form{margin:0}.check-box{border:1.5px solid var(--muted);background:0 0;border-radius:4px;width:18px;height:18px;min-height:0;padding:0;display:inline-block}.check-box:hover{border-color:var(--accent)}.check-box.on{border-color:var(--accent);background:var(--accent)}.late-text{color:var(--danger)}.tb-chips{margin:0}.tb-chips a{padding:4px 10px;font-size:.8rem}.tb-input{border:1px solid var(--border);background:var(--soft);color:var(--muted);border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;text-decoration:none;display:flex}.tb-input:hover{border-color:var(--accent)}.quick-tiles{grid-template-columns:1fr 1fr;gap:8px;display:grid}.quick-tiles a{border:1px solid var(--border);background:var(--soft);color:var(--fg);border-radius:10px;gap:8px;padding:12px;font-size:.85rem;text-decoration:none;display:grid}.quick-tiles a svg{color:var(--accent-text)}.quick-tiles a:hover{border-color:var(--accent)}.focus-form{border:1px solid var(--border);background:var(--soft);border-radius:10px;align-items:center;gap:10px;margin:0;padding:8px 12px;display:flex}.focus-form input{width:auto;min-width:0;box-shadow:none;background:0 0;border:0;flex:1;margin:0}.moods{justify-content:space-between;display:flex}.moods form{margin:0}.mood{min-height:0;color:var(--muted);background:0 0;border:0;border-radius:50%;padding:2px;display:inline-flex}.mood:hover{color:var(--accent-text)}.mood.on{color:var(--accent-fg);background:var(--accent)}.tb-head .tb-progress{margin-left:auto}.m-head h2 a{color:inherit;align-items:center;gap:2px;text-decoration:none;display:inline-flex}.page-head.today-head{flex-wrap:nowrap;align-items:center;margin-bottom:24px;padding:0 18px}@media (max-width:899px){.page-head.today-head{margin-bottom:16px;padding:0 16px}}.page-head.today-head .head-actions{padding-top:0}.habits-group{margin:18px 0 8px;font-size:1rem}.all-habits{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.habit-cell{text-align:center;justify-items:center;gap:4px;display:grid}.habits.single{width:100%;display:block}.habit-facts{margin:0}.sheet-panel .main-nav{flex-direction:column;margin-bottom:4px}.tl-row.done .tl-title,.day-row.done .day-title{color:var(--muted);text-decoration:line-through}.crm-mark{background:var(--info-soft);color:var(--info);border-radius:6px;flex:none;padding:0 6px;font-size:.68rem;font-weight:600;line-height:1.6}.cal-item.crm{background:var(--info-soft);color:var(--info)}.import-form{gap:8px;max-width:720px;display:grid}.import-form textarea{width:100%;font-family:ui-monospace,monospace;font-size:12px}.import-form button{justify-self:start}.info-fields:has(input[name=item]:checked):not(:has(input[name=item][value=result]:checked)) .info-only-result{display:none}.info-milestone{font-size:.85rem}.info-milestone input{width:auto;margin:0}.crm-fact{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.crm-fact a{align-items:center;gap:3px;display:inline-flex}.tb-head .tb-chips{margin-left:auto}.prompt-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.prompt-when{flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:4px;display:flex}.prompt-when input[type=date]{margin-top:0}.info-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.add-form:has(.info-stars){position:relative}.add-form .info-stars{position:absolute;top:20px;right:20px}.add-form.plain .info-stars{top:0;right:0}.info-stars{margin-left:auto}.info-when{flex-wrap:wrap;align-items:flex-start;gap:8px 16px;display:flex}.info-date select{width:220px;height:40px;margin-top:4px}.info-date-row{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:4px;display:flex}.info-date-row input[type=date]{width:220px;margin-top:0}.info-milestone{align-items:center;gap:6px;margin:0;display:inline-flex}.info-milestone input[type=checkbox]{flex:none;width:16px;height:16px;margin:0}.tag-select{display:inline-block}.tag-select>summary.button{border-radius:8px;gap:6px;max-width:100%;height:32px;min-height:32px;padding:0 12px;font-size:.85rem;list-style:none}.tag-select>summary::-webkit-details-marker{display:none}.tag-select-names{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tag-select .menu-panel{max-height:280px;left:0;right:auto;overflow-y:auto}.tag-select-item{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:.9rem;display:flex}.tag-select-item:hover{background:var(--soft)}.tag-select-item input{opacity:0;pointer-events:none;position:absolute}.tag-select-check{visibility:hidden;color:var(--accent-text)}.tag-select-item:has(input:checked) .tag-select-check{visibility:visible}.tag-select-item:has(input:checked){font-weight:600}@media (max-width:600px){.info-kind-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.info-kinds{flex-wrap:nowrap}.info-kinds label{padding:7px 12px}.info-top,.info-date-row{flex-wrap:nowrap}.info-date-row input[type=date],.info-date select{width:170px}}.badge.stage-badge{justify-content:center;align-items:center;gap:4px;min-width:104px;display:inline-flex}@media (max-width:899px){input[type=date],input[type=time],input[type=datetime-local]{appearance:none;text-align:left;min-width:0;max-width:100%;min-height:40px}input[type=date]::-webkit-date-and-time-value{text-align:left}input[type=time]::-webkit-date-and-time-value{text-align:left}.tform-pair>input,.tform-pair>select{width:100%}.tform-pair{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}.stage-others{margin:6px 0 0;padding:0;list-style:none}.stage-others li{align-items:center;gap:8px;padding:5px 0;font-size:.9rem;display:flex}.stage-others .kind-icon{color:var(--muted);flex:none}.stage-others a{color:var(--fg);text-decoration:none}.stage-others small{flex:none}.tag-select-add{border-top:1px solid var(--border);gap:6px;margin-top:6px;padding-top:6px;display:flex}.tag-select-add input{flex:1;min-width:0;margin:0}.tag-select-add button{flex:none;justify-content:center;width:32px;padding:0}.tag-select-new{cursor:default;font-weight:600}.tag-select-check.on{visibility:visible}.tag-select-new .link-button{margin-left:auto}.tag-select .menu-panel{min-width:220px}.add-form .tag-select-item{color:var(--fg);margin:0;font-size:.9rem}.overview-grid>.ov-block{min-width:0}.overview-grid>.ov-block.wide{grid-column:1/-1}.overview-grid>.ov-block:empty{display:none}.overview-grid>.ov-block>.card,.overview-grid>.ov-block>section{margin:0}.overview-grid>.ov-block:not(.wide)>.card{height:100%}.ov-setting-list{margin:0;padding:0;list-style:none}.ov-setting{border:1px solid var(--border);background:var(--card);border-radius:8px;margin-bottom:6px;padding:6px 8px;display:block}.ov-setting.dragging{box-shadow:var(--shadow);z-index:2}.ov-setting.off label{color:var(--muted)}.ov-setting label{cursor:pointer;align-items:center;gap:8px;margin:0;display:flex}.ov-setting .handle{width:28px;min-height:28px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;padding:0}.ov-setting-row{align-items:center;gap:8px;display:flex}.ov-open{color:var(--muted);flex:none}.ov-choices{margin:6px 0 2px 36px;padding:0;list-style:none}.ov-choices label{cursor:pointer;align-items:center;gap:8px;margin:0;padding:3px 0;font-size:.9rem;display:flex}
