:root{font-family:ui-rounded,"Segoe UI",system-ui,sans-serif;color:#303c33;background:#f5f3ed;font-synthesis:none;--green:#52674f;--line:#dedfd6;--muted:#626e65;--paper:#fffdf9}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);border-radius:13px;padding:11px 16px;background:var(--paper);color:inherit;min-height:44px;font-weight:600}button:hover{background:#edf0e8}button:disabled{opacity:.5;cursor:wait}button.primary{background:var(--green);color:#fff;border-color:var(--green)}button.primary:hover{background:#40583e}button.soft{background:#eee9f5;border-color:#ded5eb}button.subtle{background:transparent}button.small{padding:7px 11px;font-size:.85rem;min-height:40px}a{color:var(--green)}:focus-visible{outline:3px solid #8a77aa;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.7rem,5vw,2.35rem);letter-spacing:-.04em;line-height:1.15}h2{font-size:1.18rem;letter-spacing:-.02em;margin-bottom:14px}h3{font-size:1rem}p{line-height:1.6}.muted{color:var(--muted);font-size:.9rem}.eyebrow{font-size:.77rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:8px}.shell{max-width:1080px;margin:auto;padding:26px 24px 116px}.header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:inherit;font-size:1.18rem;font-weight:750}.brand img{width:38px;height:38px}.identity{border-radius:30px;background:#e9e4f0;padding:8px 13px;font-size:.85rem;white-space:nowrap}.intro{margin:16px 0 24px}.intro p{margin-bottom:0}.card{background:var(--paper);border:1px solid var(--line);border-radius:23px;padding:22px;margin-bottom:20px}.card.sage{background:#e8eee2}.card.peach{background:#f6eae0}.card.lilac{background:#eee9f5}.section-head{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:12px}.section-head h2{margin:0}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.summary div{padding:17px;border-radius:18px;background:#e8eee2}.summary div:nth-child(2){background:#f6eae0}.summary div:nth-child(3){background:#eee9f5}.summary strong{display:block;font-size:1.7rem;margin-bottom:3px}.summary span{font-size:.8rem}.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.room{display:flex;align-items:center;gap:12px;text-align:left;padding:17px;border-radius:18px;background:var(--paper)}.room .symbol{width:38px;height:38px;border-radius:12px;background:#eee9f5;display:grid;place-items:center;font-size:1.2rem;flex-shrink:0}.room .info{flex:1}.room strong{display:block;font-size:.94rem}.room small{display:block;color:var(--muted);font-weight:400;font-size:.75rem;margin-top:3px}.dot{width:10px;height:10px;display:inline-block;border-radius:50%;background:#78966c;flex-shrink:0}.dot.orange{background:#cc973d}.dot.red{background:#b8625a}.dot.season{background:#9998a6}.legend{display:flex;gap:15px;flex-wrap:wrap;margin:14px 0;font-size:.78rem;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.task-list{display:grid;gap:0}.task-row{display:flex;align-items:center;gap:13px;border-bottom:1px solid #e9e9e1;padding:15px 0}.task-row:last-child{border:0}.task-row .task-main{flex:1;min-width:0}.task-row strong{display:block;font-size:.94rem;line-height:1.4}.task-row small{display:block;font-size:.77rem;line-height:1.5;color:var(--muted);margin-top:4px}.task-row input[type=checkbox]{width:21px;height:21px;accent-color:var(--green);flex-shrink:0}.task-tools{display:flex;gap:6px;align-items:center}.task-row .edit{border:0;background:transparent;min-width:40px;padding:7px}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.bulk{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#e8eee2;padding:13px 16px;border-radius:16px;margin-bottom:12px;flex-wrap:wrap}.cleaner-banner{background:#eee9f5;border-radius:18px;padding:16px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.filters input{flex:1;min-width:170px}.filters select{width:auto}.nav{position:fixed;bottom:0;left:0;right:0;background:#fffdf9f5;backdrop-filter:blur(8px);border-top:1px solid var(--line);display:flex;justify-content:center;gap:6px;padding:9px 16px max(9px,env(safe-area-inset-bottom));z-index:5}.nav a{display:grid;gap:3px;text-align:center;justify-items:center;min-width:74px;max-width:150px;flex:1;text-decoration:none;color:var(--muted);font-size:.72rem;padding:8px;border-radius:13px}.nav a.active{background:#e8eee2;color:#40583e;font-weight:700}.nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.login{max-width:470px;margin:35px auto;padding:22px}.login .brand{margin-bottom:35px}.login h1{margin-bottom:12px}.login .card{padding:25px}.field{display:grid;gap:7px;margin-bottom:17px;font-size:.9rem}.field input,.field select,input.search,select.filter{border:1px solid #cdd3c9;background:#fffefa;border-radius:12px;padding:12px;color:inherit;width:100%;min-height:46px}.field small{font-size:.78rem;color:var(--muted);line-height:1.5}.login .primary{width:100%}.error{background:#fae9e5;border-radius:12px;padding:12px;color:#7f3934;font-size:.88rem;line-height:1.5;margin-bottom:14px}.empty{padding:24px 8px;text-align:center;color:var(--muted)}.history-row{border-bottom:1px solid #e9e9e1;padding:17px 0;display:flex;gap:15px;align-items:flex-start}.history-row .info{flex:1}.history-row strong{font-size:.92rem;display:block;line-height:1.4}.history-row p{font-size:.8rem;margin:6px 0 0;color:var(--muted)}.history-row.voided{opacity:.65}.tag{display:inline-block;border-radius:9px;padding:4px 8px;background:#eee9f5;font-size:.7rem;margin-top:7px}.loading{text-align:center;margin:60px 20px}.notice{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);border-radius:16px;padding:14px 20px;background:#303c33;color:white;z-index:30;box-shadow:0 6px 25px #0002;max-width:calc(100% - 30px);width:max-content;font-size:.88rem}.notice.error-notice{background:#8c4540}dialog{border:1px solid var(--line);border-radius:24px;padding:26px;background:var(--paper);color:inherit;max-width:470px;width:calc(100% - 28px);max-height:90dvh;overflow:auto;box-shadow:0 12px 80px #0002}dialog::backdrop{background:#28352e60;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.dialog-heading h2{font-size:1.4rem}.dialog-heading button{border:0;background:transparent;font-size:1.2rem;min-width:44px}.actor-options{display:flex;gap:10px;margin-bottom:18px}.actor-options label{display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:13px;flex:1;cursor:pointer}.actor-options input{accent-color:var(--green)}.full{width:100%}.session{border-top:1px solid var(--line);padding:15px 0;display:flex;gap:14px;align-items:center}.session .info{flex:1}.session strong{font-size:.9rem}.session p{font-size:.75rem;color:var(--muted);margin:5px 0 0;overflow-wrap:anywhere}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-grid .card{margin:0}.back{margin-bottom:16px}.split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkbox-note{display:flex;align-items:center;gap:9px;margin-bottom:17px;font-size:.85rem}.checkbox-note input{width:19px;height:19px;accent-color:var(--green)}[hidden]{display:none!important}@media(max-width:680px){.shell{padding:20px 16px 115px}.header{margin-bottom:20px}.rooms{grid-template-columns:1fr 1fr;gap:10px}.room{padding:14px 11px;gap:8px}.room .symbol{width:31px;height:34px;font-size:1rem}.room strong{font-size:.84rem}.room small{font-size:.69rem}.card{padding:18px}.summary{gap:8px}.summary div{padding:14px 10px}.summary strong{font-size:1.5rem}.summary span{font-size:.72rem}.task-row{gap:9px}.task-row strong{font-size:.88rem}.task-tools{gap:0}.task-tools .small{padding:7px 9px;font-size:.78rem}.task-row .edit{min-width:32px}.section-head{align-items:flex-start}.section-head button{font-size:.8rem}.settings-grid{grid-template-columns:1fr}.login{margin:15px auto}.cleaner-banner{font-size:.85rem}.identity{font-size:.75rem}.history-row{gap:8px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s ease}}
.work-cards{display:grid;gap:16px;margin-bottom:22px}.work-cards.personal{grid-template-columns:1.2fr 1fr}.work-cards.shared{grid-template-columns:1fr 1fr 1fr}.work-cards .card{margin:0}.timer-number{font-size:clamp(1.8rem,4vw,2.7rem);font-variant-numeric:tabular-nums;letter-spacing:-.045em;font-weight:650;margin:16px 0 7px}.timer-status{color:var(--muted);font-size:.82rem;margin-bottom:17px}.timer-secondary{display:flex;justify-content:space-between;gap:6px;margin:10px -8px 9px}.pot-number{font-size:clamp(2rem,4vw,2.9rem);font-weight:650;letter-spacing:-.045em;margin:18px 0 12px}.pot-card .actions{margin-top:22px}.history-tabs{display:flex;gap:10px;margin-bottom:24px}.money-side{display:grid;justify-items:end;gap:8px;white-space:nowrap;font-size:.9rem}.work-picker{border:0;padding:0;margin:10px 0 21px;min-width:0}.work-picker legend{font-weight:650;margin-bottom:13px}.work-picker .filters input{min-width:100px}.work-picker .filters select{width:100%}#picker-list{max-height:250px;overflow:auto;border:1px solid var(--line);border-radius:13px;padding:5px 11px}.picker-task{display:flex;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #e9e9e1;cursor:pointer;font-size:.88rem}.picker-task:last-child{border:0}.picker-task input{width:20px;height:20px;accent-color:var(--green);flex-shrink:0}.picker-task small{display:block;color:var(--muted);font-size:.74rem;margin-top:3px}.nav a{min-width:0}.timer-card .actions button{font-size:.88rem}@media(max-width:800px){.work-cards.shared{grid-template-columns:1fr 1fr}.work-cards.shared .pot-card{grid-column:1/-1;grid-row:2}}@media(max-width:560px){.work-cards.personal{grid-template-columns:1fr}.work-cards.shared{grid-template-columns:1fr 1fr;gap:10px}.work-cards.shared .timer-card{padding:15px 12px}.work-cards.shared .timer-card h2{font-size:1rem}.work-cards.shared .timer-number{font-size:1.7rem}.work-cards.shared .actions{gap:6px}.work-cards.shared .actions button{padding:9px 10px;font-size:.8rem}.timer-secondary{flex-wrap:wrap}.timer-secondary button{font-size:.73rem}.nav{padding-left:8px;padding-right:8px;gap:2px}.nav a{padding:8px 5px;font-size:.67rem}}
