:root{--cream:#e3ebe7;--parchment:#fff;--ink:#0d0d0d;--ink-light:#3a3a3a;--warm-mid:#6b7572;--warm-light:#a8b3af;--accent:#3a7263;--accent-light:#5fa28d;--green:#3d6b4a;--green-light:#6a9e78;--blue:#2c4a6b;--amber:#c8870a;--border:rgba(60,80,70,.22);--border-strong:rgba(60,80,70,.45);--shadow:0 2px 14px rgba(13,13,13,.08);--shadow-lg:0 6px 32px rgba(13,13,13,.14);--heat2:#fdebc6;--heat3:#f9c77e;--heat4:#f0944d;--heat5:#c84e2a;--table-header:#f0e9d8;--surplus-bg:#dcebe0;--surplus-border:#a3c9b2;--shortfall-bg:#f8ead4;--shortfall-border:#e3c489;--radius:6px;--font-display:"Playfair Display", Georgia, serif;--font-body:"DM Sans", system-ui, -apple-system, sans-serif;--dev-banner-bg:#f5c518;--dev-banner-fg:#2a1d00}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--cream);color:var(--ink);min-height:100vh;font-size:14px}@supports (padding:max(0px)){body{padding-top:env(safe-area-inset-top)}body:before{content:"";height:env(safe-area-inset-top);background:var(--cream);z-index:300;pointer-events:none;position:fixed;top:0;left:0;right:0}header{top:env(safe-area-inset-top);padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}main{padding-left:max(10px, env(safe-area-inset-left));padding-right:max(10px, env(safe-area-inset-right));padding-bottom:calc(60px + env(safe-area-inset-bottom))}}header{background:var(--ink);color:var(--cream);border-bottom:3px solid var(--accent);z-index:200;justify-content:space-between;align-items:center;gap:10px;min-height:80px;padding:0 16px;display:flex;position:-webkit-sticky;position:sticky;top:0}.header-left{flex-shrink:0;align-items:center;gap:12px;display:flex}.crest{border:2px solid var(--accent);object-fit:cover;border-radius:50%;flex-shrink:0;width:52px;height:52px;box-shadow:0 0 0 2px rgba(122,63,43,.3)}.house-name{font-family:var(--font-display);letter-spacing:.02em;cursor:pointer;font-size:16px;font-weight:600;line-height:1.2;transition:opacity .15s}.house-name:hover{opacity:.75}.header-sub{color:var(--warm-light);letter-spacing:.08em;text-transform:uppercase;margin-top:3px;font-size:10px}.header-stats{text-align:center;flex-direction:column;align-items:center;margin-top:1px;display:flex}.stat-fraction{color:var(--warm-light);font-size:12px}.stat-fraction strong{color:var(--cream)}.stat-pct{color:var(--warm-light);margin-top:1px;font-size:11px}.header-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.header-statbar{display:none}.hdr-btn{color:var(--cream);font-family:var(--font-body);cursor:pointer;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:62px;padding:5px 8px;font-size:10px;line-height:1.2;transition:all .15s;display:flex}.hdr-btn .btn-icon{font-size:15px;line-height:1}.hdr-btn .btn-label{letter-spacing:.04em;text-transform:uppercase;opacity:.85;font-size:9px}.hdr-btn:hover{background:rgba(255,255,255,.15)}.hdr-btn.heat-on{background:var(--amber);border-color:var(--amber);color:#fff}.hdr-btn.settings-btn{background:var(--accent);border-color:var(--accent)}.hdr-btn.settings-btn:hover{background:var(--accent-light)}.global-stat{color:var(--warm-light);white-space:nowrap;font-size:12px}.global-stat strong{color:var(--cream)}.toolbar{background:var(--parchment);border-bottom:1px solid var(--border-strong);flex-wrap:wrap;align-items:center;gap:7px;padding:7px 12px;display:flex}.filter-label{text-transform:uppercase;letter-spacing:.1em;color:var(--warm-mid);font-size:10px;font-weight:600}.fbtn{border:1px solid var(--border-strong);font-size:12px;font-family:var(--font-body);color:var(--ink-light);cursor:pointer;background:#fff;border-radius:3px;align-items:center;gap:4px;padding:4px 10px;line-height:1.4;transition:all .15s;display:inline-flex}.fbtn .fbtn-icon{font-size:11px;line-height:1}.fbtn:hover{border-color:var(--accent);color:var(--accent)}.fbtn.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.toolbar-divider{background:var(--border-strong);width:1px;height:18px}.search-inp{border:1px solid var(--border-strong);font-family:var(--font-body);color:var(--ink);background:#fff;border-radius:3px;outline:none;width:110px;padding:4px 8px;font-size:12px}.search-inp:focus{border-color:var(--accent)}.search-inp::-ms-input-placeholder{color:var(--warm-light)}.search-inp::placeholder{color:var(--warm-light)}.heat-legend{color:var(--warm-light);align-items:center;gap:5px;font-size:11px;display:none}.heat-legend.on{display:flex}.ls{border-radius:2px;width:12px;height:12px;display:inline-block}main{max-width:1400px;margin:0 auto;padding:14px 10px 60px}.zone-block{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;overflow:hidden}.zone-header{background:var(--ink-light);color:var(--cream);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:10px 18px;display:flex}.zone-header:hover{background:var(--ink)}.zone-left{align-items:center;gap:10px;display:flex}.zone-icon{font-size:15px}.zone-name{font-family:var(--font-display);letter-spacing:.02em;font-size:16px;font-weight:600}.zone-right{color:var(--warm-light);align-items:center;gap:12px;font-size:12px;display:flex}.z-prog{align-items:center;gap:6px;display:flex}.z-bar{background:rgba(255,255,255,.15);border-radius:2px;width:56px;height:3px;overflow:hidden}.z-fill{background:var(--green-light);border-radius:2px;height:100%;transition:width .4s}.z-fill.warn{background:var(--amber)}.z-fill.danger{background:var(--accent-light)}.collapse-arrow{color:var(--warm-light);font-size:10px;transition:transform .2s}.zone-block.collapsed .collapse-arrow{transform:rotate(-90deg)}.zone-body{display:block}.zone-block.collapsed .zone-body{display:none}.cat-block{border-bottom:1px solid var(--border)}.cat-block:last-child{border-bottom:none}.cat-hdr{background:var(--parchment);cursor:pointer;border-bottom:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:8px 18px;display:flex}.cat-hdr:hover{background:#e8dfc8}.cat-left2{align-items:center;gap:8px;display:flex}.cat-icon2{font-size:13px}.cat-name2{color:var(--ink-light);letter-spacing:.01em;font-size:13px;font-weight:600}.cat-freq-badge{letter-spacing:.04em;border:1px solid var(--border-strong);color:var(--warm-mid);border-radius:10px;padding:1px 7px;font-size:10px;font-weight:500}.cat-right2{color:var(--warm-mid);align-items:center;gap:10px;font-size:11px;display:flex}.mini-prog{align-items:center;gap:5px;display:flex}.mini-bar{background:rgba(140,123,94,.2);border-radius:2px;width:40px;height:3px;overflow:hidden}.mini-fill{background:var(--green);border-radius:2px;height:100%;transition:width .3s}.cat-arr{font-size:10px;transition:transform .2s}.cat-block.cat-collapsed .cat-arr{transform:rotate(-90deg)}.cat-block.cat-collapsed table{display:none}.add-task-row{background:#fff;align-items:center;gap:6px;padding:6px 18px 8px 42px;display:flex}.add-task-btn{border:1px dashed var(--border-strong);font-size:11px;font-family:var(--font-body);color:var(--warm-mid);cursor:pointer;background:0 0;border-radius:3px;padding:3px 10px;transition:all .15s}.add-task-btn:hover{border-color:var(--green);color:var(--green)}.cat-ctrls{align-items:center;gap:2px;margin-right:8px;display:flex}.cat-ctrl{border:1px solid var(--border);color:var(--warm-mid);cursor:pointer;background:0 0;border-radius:4px;padding:3px 6px;font-size:11px;line-height:1;transition:all .15s}.cat-ctrl:hover{border-color:var(--green);color:var(--green)}.cat-ctrl.danger:hover{border-color:var(--accent-light);color:var(--accent-light)}.add-grouping-row{padding:6px 18px 10px;display:flex}.add-grouping-btn{border:1px dashed var(--border-strong);font-size:12px;font-family:var(--font-body);color:var(--warm-mid);cursor:pointer;background:0 0;border-radius:4px;padding:5px 12px;transition:all .15s}.add-grouping-btn:hover{border-color:var(--green);color:var(--green)}table{border-collapse:collapse;table-layout:auto;width:100%}col.c-freq{width:92px}col.c-reward{width:58px}col.c-assignee{width:108px}.reward-cell{white-space:nowrap;font-size:14px;line-height:1}.reward-cell .rw-star{margin-left:1px;font-size:12px}.reward-cell .rw-none{color:var(--warm-mid);opacity:.5}col.c-lastdone{width:104px}col.c-nextdue{width:96px}col.c-lastdoer{width:104px}.nd-col{color:var(--ink-light);white-space:nowrap;font-size:12px}col.c-chk{width:36px}col.c-del{width:24px}.task-name-col{width:auto;min-width:160px}thead tr{background:var(--table-header);border-bottom:1px solid var(--border-strong)}th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--warm-mid);white-space:nowrap;padding:6px 10px;font-size:10px;font-weight:600;overflow:hidden}th.ctr{text-align:center}th.r{text-align:right}.tr{border-bottom:1px solid var(--border);background:#fff;transition:background .12s;position:relative}.tr:last-child{border-bottom:none}.tr:hover{background:#fdfaf5}.tr.done{opacity:.52}.tr.done .tname{color:var(--warm-mid);text-decoration:line-through}.tr td{vertical-align:middle;padding:8px 10px}.str{border-bottom:1px solid var(--border);background:#faf7f2}.str:hover{background:#f3ede0}.str.done{opacity:.5}.str.done .tname{text-decoration:line-through}.str td{vertical-align:middle;padding:5px 10px}.str:last-child{border-bottom:none}.str-add td{background:#faf7f2;padding:4px 14px 6px 44px}.str-add-inp{border:1px dashed var(--border-strong);font-family:var(--font-body);color:var(--ink);background:#fff;border-radius:3px;outline:none;width:220px;padding:4px 8px;font-size:12px}.str-add-inp:focus{border-color:var(--green);border-style:solid}.str-add-btn{cursor:pointer;color:var(--green);font-size:12px;font-family:var(--font-body);background:0 0;border:none;padding:2px 6px}.str-add-btn:hover{text-decoration:underline}.sub-container{display:none}.sub-container.open{display:table-row-group}.name-cell{align-items:center;gap:7px;display:flex}.xpnd{cursor:pointer;color:var(--warm-mid);text-align:center;background:0 0;border:none;border-radius:2px;flex-shrink:0;width:16px;padding:2px 3px;font-size:9px;transition:all .15s}.xpnd:hover{background:var(--parchment);color:var(--ink)}.xpnd.open{transform:rotate(90deg)}.no-xpnd{flex-shrink:0;width:16px;display:inline-block}.tname{word-break:break-word;font-size:13.5px}.fbadge{letter-spacing:.03em;white-space:nowrap;border-radius:10px;padding:2px 7px;font-size:10px;font-weight:500;display:inline-block}.fd{color:#943030;background:#fde8e8}.fw{color:#2c4a8c;background:#e8f0fe}.fb{color:#2d6b42;background:#e8f5ec}.fm{color:#7a4f00;background:#fff3e0}.fq{color:#5b2c6f;background:#f3e5f5}.fs{color:#00616b;background:#e0f7fa}.fa{color:#555;background:#f5f5f5}.assignee-wrap{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.apill{color:#fff;white-space:nowrap;cursor:default;letter-spacing:.01em;border-radius:8px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-block}.assignee-checks{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.ac-item{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;align-items:center;gap:5px;display:flex}.ac-item input{display:none}.ac-pill{color:#fff;opacity:.35;cursor:pointer;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;transition:opacity .15s}.ac-item input:checked+.ac-pill{opacity:1}.ac-pill.helper{background:var(--warm-mid);border:1px dashed rgba(255,255,255,.6)}.ld-cell{color:var(--warm-mid);white-space:nowrap;font-size:11px}.ld-cell.overdue{color:var(--accent-light);font-weight:500}.ld-edit{cursor:pointer;position:relative}.ld-edit:hover{background:rgba(140,123,94,.08)}.ld-pencil{opacity:0;color:var(--warm-mid);margin-left:6px;font-size:10px;transition:opacity .15s}.ld-edit:hover .ld-pencil{opacity:.85}.ld-pencil-only{color:#bbb;font-size:11px;font-style:italic}.ld-edit:hover .ld-pencil-only{color:var(--warm-mid)}.ld-doer{white-space:nowrap;font-size:11px}.tb-group{align-items:center;gap:4px;margin-left:6px;display:inline-flex}.tb-group label{text-transform:uppercase;letter-spacing:.06em;color:var(--warm-mid);font-size:10px;font-weight:600}.tb-select{font-family:var(--font-body);color:var(--ink);border:1px solid var(--border-strong);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='%238c7b5e' d='M0 0l5 6 5-6z'/></svg>") right 6px center no-repeat;border-radius:4px;padding:4px 22px 4px 8px;font-size:12px}.tb-select:hover{border-color:var(--green)}.tb-select:focus{border-color:var(--green);outline:none}.toolbar-row2{background:var(--cream);flex-wrap:wrap;align-items:center;gap:8px;padding:0 12px 8px;display:flex}.ctr-cell{text-align:center}.chk{border:2px solid var(--border-strong);cursor:pointer;background:#fff;border-radius:3px;justify-content:center;align-items:center;width:17px;height:17px;font-size:10px;transition:all .15s;display:inline-flex}.chk:hover{border-color:var(--green)}.chk.on{background:var(--green);border-color:var(--green);color:#fff}.del-btn{cursor:pointer;color:var(--warm-light);text-align:center;background:0 0;border:none;border-radius:2px;width:100%;padding:2px 4px;font-size:12px;transition:all .15s;display:block}.del-btn:hover{color:var(--ink-light);background:rgba(60,80,70,.06)}.del-btn.danger:hover{color:var(--accent-light);background:#fde8e8}.bang{background:var(--accent-light,#c0392b);color:#fff;vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:6px;padding:0 4px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.bang-btn{color:var(--warm-light);font-weight:800}.bang-btn.on{color:var(--accent-light,#c0392b)}.bang-btn:hover{color:var(--accent-light,#c0392b);background:#fde8e8}.reorder-grp{flex-direction:column;flex-shrink:0;gap:1px;display:inline-flex}.reorder-btn{color:var(--warm-light);cursor:pointer;background:0 0;border:1px solid transparent;border-radius:2px;padding:1px 4px;font-size:7px;line-height:1;transition:all .12s}.reorder-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:rgba(58,114,99,.06)}.reorder-btn:disabled{opacity:.3;cursor:default}.sub-edit-list{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.sub-edit-row{border:1px solid var(--border);background:#faf7f2;border-radius:4px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.sub-edit-top{align-items:center;gap:6px;display:flex}.sub-edit-top input.sub-name-inp{border:1px solid var(--border-strong);font-family:var(--font-body);background:#fff;border-radius:3px;outline:none;flex:1;padding:5px 8px;font-size:12px}.sub-edit-top input.sub-name-inp:focus{border-color:var(--accent)}.sub-edit-meta{flex-wrap:wrap;align-items:center;gap:10px;padding-top:2px;display:flex}.sub-meta-label{text-transform:uppercase;letter-spacing:.08em;color:var(--warm-mid);white-space:nowrap;font-size:10px;font-weight:600}.sub-offset-inp{border:1px solid var(--border-strong);width:52px;font-family:var(--font-body);text-align:center;background:#fff;border-radius:3px;outline:none;padding:3px 6px;font-size:12px}.sub-offset-inp:focus{border-color:var(--accent)}.sub-assignee-checks{flex-wrap:wrap;gap:5px;display:flex}.sub-rm{cursor:pointer;color:var(--warm-light);background:0 0;border:none;flex-shrink:0;padding:0 3px;font-size:14px}.sub-rm:hover{color:var(--accent-light)}.add-sub-btn{border:1px dashed var(--border-strong);font-size:11px;font-family:var(--font-body);color:var(--warm-mid);cursor:pointer;background:0 0;border-radius:3px;padding:4px 10px;transition:all .15s}.add-sub-btn:hover{border-color:var(--green);color:var(--green)}.str-assignee{font-size:11px}.str-due{color:var(--warm-mid);white-space:nowrap;font-size:11px}.str-due.sub-overdue{color:var(--accent-light);font-weight:500}.str-completedAt{color:var(--green);white-space:nowrap;font-size:10px}.tr-done-hidden{opacity:.5}.tr-done-hidden .tname{color:var(--warm-mid);text-decoration:line-through}.tr-done-hidden .chk{background:var(--green);border-color:var(--green);color:#fff}.tr-overdue .tname{color:var(--ink)}.tr-due .tname{font-weight:500}.nd-never{color:#bbb;font-style:italic}.nd-done{color:var(--ink)}.nd-overdue{color:#c84e2a;font-weight:600}.nd-due{color:#d97706;font-weight:500}.nd-soon{color:#b45309;font-weight:400}.nd-ok{color:var(--green);font-weight:400}.next-due-label{white-space:nowrap;font-size:11px;font-weight:500}.overdue-label{color:var(--accent-light);font-weight:500}.heat-bar{opacity:0;width:4px;transition:opacity .3s;position:absolute;top:0;bottom:0;left:0}.heat-mode .heat-bar{opacity:1}.hb1{background:var(--heat2)}.hb2{background:var(--heat3)}.hb3{background:var(--heat4)}.hb4{background:var(--heat5)}.heat-mode .hbg2:not(.done){background:#fffdf7}.heat-mode .hbg3:not(.done){background:#fff8ec}.heat-mode .hbg4:not(.done){background:#fff2e6}.heat-mode .hbg5:not(.done){background:#ffeae8}.overlay{z-index:500;background:rgba(0,0,0,.5);justify-content:center;align-items:center;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.overlay.open{display:flex}.modal{background:var(--cream);box-shadow:var(--shadow-lg);border-top:4px solid var(--accent);border-radius:8px;width:min(640px,95vw);max-height:88vh;overflow-y:auto}.modal-hdr{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:18px 22px 14px;display:flex}.modal-title{font-family:var(--font-display);font-size:18px;font-weight:600}.modal-close{cursor:pointer;color:var(--warm-mid);background:0 0;border:none;border-radius:3px;padding:2px 6px;font-size:20px;line-height:1;transition:all .15s}.modal-close:hover{background:var(--parchment);color:var(--ink)}.modal-body{padding:20px 22px}.setting-section{margin-bottom:24px}.setting-label{text-transform:uppercase;letter-spacing:.1em;color:var(--warm-mid);margin-bottom:8px;font-size:11px;font-weight:600}.setting-inp{border:1px solid var(--border-strong);font-family:var(--font-body);color:var(--ink);background:#fff;border-radius:4px;outline:none;width:100%;padding:7px 12px;font-size:14px}.setting-inp:focus{border-color:var(--accent)}.setting-hint{color:var(--warm-mid);margin:-2px 0 8px;font-size:12px;line-height:1.4}.loc-row{gap:8px;display:flex}.loc-row .loc-zip{flex:auto}.loc-row .loc-state{text-transform:uppercase;flex:0 0 90px}.extra-loc{margin-top:12px}.setting-sublabel{color:var(--ink-light);margin-bottom:4px;font-size:12px;font-weight:600}.chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.chip{background:var(--cream);border:1px solid var(--border-strong);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:3px 6px 3px 10px;font-size:12px;display:inline-flex}.chip-x{color:var(--warm-mid);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:15px;line-height:1}.chip-x:hover{color:var(--amber)}.zone-list{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.zone-row{align-items:center;gap:8px;display:flex}.zone-row input{border:1px solid var(--border-strong);font-family:var(--font-body);background:#fff;border-radius:4px;outline:none;flex:1;padding:6px 10px;font-size:13px}.zone-row input:focus{border-color:var(--accent)}.icon-inp{text-align:center;flex:none!important;width:50px!important}.rm-zone{border:1px solid var(--border);cursor:pointer;color:var(--warm-mid);background:0 0;border-radius:3px;padding:4px 8px;font-size:12px;transition:all .15s}.rm-zone:hover{color:var(--accent-light);border-color:var(--accent-light);background:#fde8e8}.add-zone-btn{border:1px dashed var(--border-strong);font-size:12px;font-family:var(--font-body);color:var(--warm-mid);cursor:pointer;background:0 0;border-radius:4px;width:100%;padding:7px 14px;transition:all .15s}.add-zone-btn:hover{border-color:var(--green);color:var(--green)}.save-btn{background:var(--accent);font-family:var(--font-body);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:9px 22px;font-size:14px;font-weight:500;transition:background .15s}.save-btn:hover{background:var(--accent-light)}.members-grid{flex-wrap:wrap;gap:8px;display:flex}.member-chip{border:1px solid var(--border-strong);background:#fff;border-radius:20px;align-items:center;gap:6px;padding:4px 10px 4px 12px;font-size:12px;display:flex}.rm-member{cursor:pointer;color:var(--warm-light);background:0 0;border:none;padding:0 2px;font-size:14px;line-height:1}.rm-member:hover{color:var(--accent-light)}.edit-member{cursor:pointer;color:var(--warm-light);background:0 0;border:none;padding:0 2px;font-size:12px;line-height:1}.edit-member:hover{color:var(--accent)}.rename-inp{border:1px solid var(--border-strong);font-size:12px;font-family:var(--font-body);color:var(--ink);border-radius:12px;width:96px;min-width:0;padding:2px 8px}.rename-ok{cursor:pointer;color:var(--green);background:0 0;border:none;padding:0 2px;font-size:13px;line-height:1}.rename-ok:disabled{opacity:.5;cursor:default}.add-member-row{gap:8px;margin-top:8px;display:flex}.add-member-row input{border:1px solid var(--border-strong);font-family:var(--font-body);background:#fff;border-radius:4px;outline:none;flex:1;padding:6px 10px;font-size:13px}.add-member-row input:focus{border-color:var(--accent)}.sm-btn{background:var(--ink);font-family:var(--font-body);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:6px 14px;font-size:12px;transition:background .15s}.sm-btn:hover{background:var(--ink-light)}select.setting-inp{cursor:pointer}.te-field{margin-bottom:14px}.te-field label{text-transform:uppercase;letter-spacing:.09em;color:var(--warm-mid);margin-bottom:5px;font-size:11px;font-weight:600;display:block}.te-field input,.te-field select{border:1px solid var(--border-strong);width:100%;font-family:var(--font-body);color:var(--ink);background:#fff;border-radius:4px;outline:none;padding:7px 10px;font-size:13px}.te-field input:focus,.te-field select:focus{border-color:var(--accent)}@media (max-width:680px){header{border-bottom:none;gap:6px;min-height:60px;padding:0 12px}.header-sub,.header-tagline,.header-stats--inline{display:none}.header-statbar{background:var(--ink);color:var(--cream);border-bottom:3px solid var(--accent);justify-content:center;align-items:baseline;gap:12px;padding:5px 12px 6px;display:flex}.header-statbar .sync-status{margin-top:0}main{padding:14px 10px 48px;padding-left:max(10px, env(safe-area-inset-left));padding-right:max(10px, env(safe-area-inset-right));padding-bottom:calc(48px + env(safe-area-inset-bottom))}.toolbar{padding:8px 10px}th.hide-sm,td.hide-sm,.global-stat,.hdr-btn .btn-label{display:none}.hdr-btn{min-width:0;padding:7px 9px}.heat-legend{display:none}.header-right{gap:4px}.crest{width:44px;height:44px}}.toast{background:var(--ink);color:var(--cream);font-size:13px;font-family:var(--font-body);z-index:9999;opacity:0;pointer-events:none;white-space:nowrap;border-left:3px solid var(--green);border-radius:6px;padding:10px 20px;transition:all .3s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(20px)}.toast.open{opacity:1;transform:translate(-50%)translateY(0)}.toast.error{border-left-color:var(--accent-light)}.boot-error{color:#c84e2a;padding:24px;font-family:sans-serif}.boot-error pre{white-space:pre-wrap;margin-top:8px;font-size:12px}.dev-banner.svelte-12qhfyh{z-index:9999;background:var(--dev-banner-bg);width:100%;color:var(--dev-banner-fg);text-align:center;letter-spacing:.02em;padding:6px 10px;font-size:13px;font-weight:700;position:-webkit-sticky;position:sticky;top:0;box-shadow:0 1px rgba(0,0,0,.1)}#app-root.svelte-12qhfyh{min-height:100vh}
