@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;0,9..144,900;1,9..144,400;1,9..144,600&family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@300;400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--cream:#f7f3ec;--ink:#1c1814;--rust:#c4572a;--sage:#4a7a5c;--gold:#b88820;--blue:#2d4a7a;--lavender:#6b5b8a;--muted:#8a8070;--border:#ddd8cf;--white:#ffffff;--max-w:1100px}body{font-family:DM Sans,sans-serif;background:var(--cream);color:var(--ink);min-height:100vh;padding:0 1.5rem 5rem}header{max-width:var(--max-w);margin:0 auto;padding:1.4rem 0 1.2rem;border-bottom:2px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}h1{font-family:Fraunces,serif;font-size:clamp(1.5rem,4vw,2rem);font-weight:900;line-height:1;letter-spacing:-.02em}h1 span{color:var(--rust);font-style:italic;font-weight:400;font-size:.85em}.meta{font-size:.75rem;color:var(--muted);text-align:right;line-height:1.9;letter-spacing:.07em;text-transform:uppercase;font-family:DM Mono,monospace}.stats-bar{max-width:var(--max-w);margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:space-between;padding:.7rem 0;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.75rem}.stats-date{display:flex;flex-direction:column;gap:.1rem}.date-day{font-family:Fraunces,serif;font-size:1rem;font-weight:700;color:var(--ink);line-height:1}.date-full{font-size:.72rem;font-family:DM Mono,monospace;color:var(--muted);letter-spacing:.04em}.stats-counts{display:flex;align-items:center;gap:.6rem}.stat-item{display:flex;align-items:baseline;gap:.35rem}.stat-n{font-family:Fraunces,serif;font-size:1.35rem;font-weight:700;line-height:1}.stat-l{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-family:DM Mono,monospace}.stat-sep{width:1px;height:1.1rem;background:var(--border);margin:0 .2rem}.toolbar{max-width:var(--max-w);margin:0 auto 1.5rem;display:flex;flex-direction:column;gap:.6rem}.toolbar-search-row{display:flex;align-items:center;gap:.4rem;position:relative}.toolbar-search{font-family:DM Sans,sans-serif;font-size:.9rem;padding:.45rem .9rem;border:1.5px solid var(--border);background:var(--white);color:var(--ink);border-radius:3px;width:100%;max-width:360px;outline:none;transition:border-color .15s}.toolbar-search:focus{border-color:var(--ink)}.search-clear{font-size:.8rem;color:var(--muted);cursor:pointer;padding:.2rem .4rem;line-height:1}.search-clear:hover{color:var(--ink)}.toolbar-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.cat-filter-row{flex-wrap:wrap}.cat-chip{display:flex;align-items:center;gap:.25rem}.cat-chip-label{font-size:.72rem}.cat-chip-active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.cat-clear{color:var(--muted);border-color:transparent;background:transparent;font-size:.72rem}.cat-clear:hover{color:var(--rust);background:transparent;border-color:transparent}.toolbar-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-right:.2rem;font-family:DM Mono,monospace}.btn{font-family:DM Mono,monospace;font-size:.78rem;padding:.38rem .8rem;border:1.5px solid var(--border);background:var(--white);color:var(--ink);cursor:pointer;border-radius:3px;letter-spacing:.04em;transition:all .12s;white-space:nowrap}.btn:hover,.btn.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.btn.q-active{background:#e8f4e8;color:#2d6b2d;border-color:#b0d8b0}.btn.b-active{background:#fde8e0;color:var(--rust);border-color:#f0c0a8}.divider{width:1px;height:1.4rem;background:var(--border);margin:0 .2rem}.focus-zone{max-width:var(--max-w);margin:0 auto 2rem}.focus-zone-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}.focus-label{font-family:Fraunces,serif;font-size:1.1rem;font-weight:600;color:var(--ink);letter-spacing:-.01em;margin-bottom:0}.focus-label span{color:var(--rust);font-style:italic;margin-right:.35rem}.pomo-launch-btn{font-family:DM Mono,monospace;font-size:.78rem;padding:.35rem .75rem;border:1.5px solid var(--border);background:var(--white);color:var(--ink);border-radius:3px;cursor:pointer;transition:all .12s}.pomo-launch-btn:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.pomodoro-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1001;background:var(--white);border:2px solid var(--border);border-radius:8px;width:min(340px,92vw);box-shadow:0 8px 32px #0000002e}.pomodoro-body{padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.pomo-presets{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.pomo-preset-btn{font-family:DM Mono,monospace;font-size:.72rem;padding:.3rem .7rem;border:1.5px solid var(--border);background:var(--cream);color:var(--muted);cursor:pointer;border-radius:3px;transition:all .12s}.pomo-preset-btn:hover:not(:disabled){background:var(--ink);color:var(--cream);border-color:var(--ink)}.pomo-preset-btn.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.pomo-preset-btn:disabled{opacity:.4;cursor:not-allowed}.pomo-ring-wrap{position:relative;width:130px;height:130px}.pomo-ring{width:100%;height:100%;transform:rotate(-90deg)}.pomo-ring-bg{fill:none;stroke:var(--border);stroke-width:8}.pomo-ring-progress{fill:none;stroke:var(--rust);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .9s linear}.pomo-ring-done{stroke:var(--sage)}.pomo-time{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Fraunces,serif;font-size:1.6rem;font-weight:700;color:var(--ink)}.pomo-time-done{color:var(--sage)}.pomo-finished-msg{font-size:.82rem;color:var(--sage);font-family:DM Mono,monospace;text-align:center}.pomo-controls{display:flex;gap:.6rem}.pomo-btn{font-family:DM Mono,monospace;font-size:.8rem;padding:.45rem 1.1rem;border:1.5px solid var(--border);background:var(--cream);color:var(--ink);cursor:pointer;border-radius:3px;transition:all .12s}.pomo-start{background:var(--rust);color:#fff;border-color:var(--rust)}.pomo-start:hover{background:#a83a1a}.pomo-pause{background:var(--gold);color:var(--ink);border-color:var(--gold)}.pomo-pause:hover{background:#c09010}.pomo-reset:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.focus-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem}.focus-grid.focus-grid-solo{grid-template-columns:1fr}@media(max-width:640px){.focus-grid{grid-template-columns:1fr}}.focus-card{border:1.5px solid var(--border);border-radius:6px;background:var(--white);overflow:hidden}.focus-card-hdr{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-bottom:1px solid var(--border);background:var(--cream)}.focus-card-icon{font-size:.75rem;color:var(--muted);font-family:DM Mono,monospace;font-weight:700}.focus-card-title{font-family:Fraunces,serif;font-size:.9rem;font-weight:600;flex:1;color:var(--ink)}.focus-refresh{font-size:.9rem;color:var(--muted);cursor:pointer;padding:.1rem .3rem;border-radius:3px;transition:all .12s}.focus-refresh:hover{color:var(--ink);background:var(--border)}.focus-change{font-size:.72rem;color:var(--muted);cursor:pointer;padding:.1rem .4rem;border-radius:3px;font-family:DM Mono,monospace;transition:all .12s;border:1px solid transparent}.focus-change:hover{color:var(--rust);border-color:#c4572a4d;background:#c4572a0f}.task-picker{border-bottom:1px solid var(--border);background:var(--white);max-height:200px;overflow-y:auto}.task-picker-option{display:flex;align-items:center;gap:.5rem;padding:.45rem 1rem;cursor:pointer;transition:background .1s;font-size:.82rem}.task-picker-option:hover{background:var(--cream)}.task-picker-option.active{background:#fde8e0;font-weight:500}.task-picker-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-picker-empty{padding:.5rem 1rem;font-size:.78rem;color:var(--muted);font-style:italic}.focus-right-now{border-color:#c4572a4d}.focus-right-now .focus-card-hdr{background:linear-gradient(135deg,#fde8e0,#fad4c8)}.focus-frog-card{border-color:#2d8a2d4d}.focus-empty{font-size:.85rem;color:var(--muted);padding:1.2rem 1rem;font-family:DM Mono,monospace;margin:0}.suggestion-btns{display:flex;flex-direction:column;gap:.4rem;flex-shrink:0}.suggestion-utils{display:flex;flex-direction:column;gap:.25rem;margin-top:.25rem}.util-btn{font-size:.72rem;font-family:DM Mono,monospace;padding:.25rem .45rem;border-radius:3px;cursor:pointer;text-align:center;border:1px solid var(--border);background:var(--white);color:var(--muted);transition:all .12s;white-space:nowrap;-webkit-user-select:none;user-select:none}.util-btn:hover{background:var(--cream);color:var(--ink);border-color:var(--ink)}.frog-panel{padding:.85rem 1rem}.frog-panel.celebrating{background:linear-gradient(135deg,#e8f5e8,#d4edd4)}.frog-panel-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.frog-icon{font-size:1.2rem}.frog-label{font-family:Fraunces,serif;font-size:.9rem;font-weight:700;color:#2d6b2d;flex:1}.frog-subtitle{font-size:.68rem;color:var(--muted);font-family:DM Mono,monospace}.frog-task-row{display:flex;align-items:flex-start;gap:.75rem}.frog-task-body{flex:1}.frog-task-title{font-size:.9rem;font-weight:500;color:var(--ink);display:block;margin-bottom:.3rem}.frog-task-meta{display:flex;flex-wrap:wrap;gap:.3rem}.frog-actions{display:flex;flex-direction:column;gap:.3rem;flex-shrink:0}.frog-eat-btn{font-family:DM Mono,monospace;font-size:.78rem;padding:.35rem .75rem;background:#2d6b2d;color:#fff;border-radius:3px;cursor:pointer;white-space:nowrap;transition:all .12s}.frog-eat-btn:hover{background:#1d4b1d}.frog-unfrog{font-size:.7rem;color:var(--muted);cursor:pointer;text-align:center;text-decoration:underline;font-family:DM Mono,monospace}.frog-unfrog:hover{color:var(--ink)}.frog-celebration{display:flex;align-items:center;gap:.75rem;padding:.25rem 0}.frog-celebration-emoji{font-size:2.5rem;animation:frog-bounce .4s ease-in-out 3}.frog-celebration-text{flex:1;display:flex;flex-direction:column;gap:.15rem}.frog-celebration-title{font-family:Fraunces,serif;font-size:1rem;font-weight:700;color:#2d6b2d}.frog-celebration-species{font-size:.72rem;color:var(--muted);font-family:DM Mono,monospace}.frog-celebration-confetti{font-size:1.5rem;animation:confetti-spin .5s ease-in-out 3}@keyframes frog-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes confetti-spin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.3)}to{transform:rotate(360deg) scale(1)}}.badge-frog{background:#2d8a2d0f;color:#2d6b2d;border-color:#2d8a2d40;font-size:.7rem;border-radius:20px}.badge-frog:hover{background:#2d8a2d24}.badge-frog-active{background:#2d6b2d;color:#fff;border-color:#2d6b2d;font-size:.7rem;border-radius:20px}.focus-panels{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:700px){.focus-panels{grid-template-columns:1fr}}.urgency-panel{background:var(--white);border-radius:4px;overflow:hidden;border:1.5px solid var(--border)}.urgency-panel.panel-today{border-color:#c4572a80;box-shadow:0 0 0 1px #c4572a26}.urgency-panel.panel-asap{border-color:#b8882059}.panel-header{display:flex;align-items:center;gap:.6rem;padding:.7rem 1.1rem;border-bottom:1px solid var(--border)}.panel-header-today{background:linear-gradient(135deg,#fde8e0,#fad4c8);border-left:5px solid var(--rust)}.panel-header-asap{background:linear-gradient(135deg,#fef3e0,#fde8c8);border-left:3px solid var(--gold)}.panel-icon{font-size:.85rem;font-weight:900;flex-shrink:0;font-family:DM Mono,monospace}.panel-header-today .panel-icon{color:var(--rust)}.panel-header-asap .panel-icon{color:var(--gold)}.panel-title{font-family:Fraunces,serif;font-size:1rem;font-weight:700;flex:1}.panel-header-today .panel-title{color:var(--rust)}.panel-header-asap .panel-title{color:#a07a20}.panel-count{font-size:.7rem;font-family:DM Mono,monospace;color:var(--muted);background:#ffffffb3;padding:.15rem .5rem;border-radius:10px}.panel-time{font-size:.68rem;font-family:DM Mono,monospace;color:var(--muted);opacity:.8}.panel-tasks{display:flex;flex-direction:column}.panel-tasks .flat-row{border-radius:0;border-left:none;border-right:none;border-top:none}.panel-tasks .flat-row:last-child{border-bottom:none}.panel-empty{max-width:var(--max-w);margin:0 auto 1rem}.panel-empty-text{font-size:.85rem;color:var(--muted);font-style:italic;padding:.5rem 0}.view-flat{max-width:var(--max-w);margin:0 auto;display:flex;flex-direction:column;gap:.3rem}.category-accordion{max-width:var(--max-w);margin:0 auto;display:flex;flex-direction:column;gap:.6rem}.acc-section{background:var(--white);border:1px solid var(--border);border-radius:4px;overflow:hidden;transition:box-shadow .15s}.acc-section:hover{box-shadow:0 2px 8px #1c181412}.acc-header{width:100%;display:flex;align-items:center;gap:.75rem;padding:.85rem 1.2rem;border:none;background:transparent;cursor:pointer;text-align:left;border-bottom:1px solid transparent;transition:background .12s;font-family:inherit}.acc-header:hover{background:var(--cream)}.acc-section.open .acc-header{border-bottom-color:var(--border)}.acc-icon{font-size:1.1rem;flex-shrink:0}.acc-title{font-family:Fraunces,serif;font-size:1rem;font-weight:700;flex:1;letter-spacing:.01em}.acc-count{font-size:.72rem;font-family:DM Mono,monospace;color:var(--muted);background:var(--cream);padding:.18rem .5rem;border-radius:10px}.acc-chevron-icon{color:var(--muted);flex-shrink:0}.acc-tasks{list-style:none;padding:.3rem 0}.category{background:var(--white);border:1px solid var(--border);border-radius:4px;overflow:hidden;transition:transform .15s,box-shadow .15s}.category:hover{transform:translateY(-2px);box-shadow:4px 4px 0 var(--border)}.cat-header{padding:.9rem 1.1rem;display:flex;align-items:center;gap:.7rem;border-bottom:1px solid var(--border)}.cat-icon{font-size:1.2rem;flex-shrink:0}.cat-title{font-family:Fraunces,serif;font-size:1rem;font-weight:700;letter-spacing:.01em;flex:1}.cat-count{font-size:.72rem;font-family:DM Mono,monospace;color:var(--muted);background:var(--cream);padding:.2rem .5rem;border-radius:10px}.task-list{list-style:none;padding:.3rem 0}.task{display:flex;align-items:flex-start;gap:.7rem;padding:.6rem 1.1rem;font-size:.88rem;line-height:1.5;border-bottom:1px solid var(--cream);transition:background .1s;position:relative}.task:last-child{border-bottom:none}.task:hover{background:var(--cream)}.task.done{opacity:.38}.task.done .task-text{text-decoration:line-through}.task-check{width:18px;height:18px;border:1.5px solid var(--border);border-radius:2px;flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center;transition:all .1s;cursor:pointer}.task:hover .task-check{border-color:var(--muted)}.task.done .task-check{background:var(--sage);border-color:var(--sage)}.task.is-dragging{opacity:.4}.task.drag-over{outline:2px solid var(--lavender);outline-offset:-2px;background:#6b5b8a0a}.task.nest-target{outline:2px dashed var(--lavender);outline-offset:-2px;background:#6b5b8a14}.flat-row.is-dragging{opacity:.4;cursor:grabbing}.flat-row.drag-over{outline:2px solid var(--lavender);outline-offset:-2px;background:#6b5b8a0a}.flat-row.nest-target{outline:2px dashed var(--lavender);outline-offset:-2px;background:#6b5b8a14}.dnd-sub-wrap.is-dragging{opacity:.4}.dnd-sub-wrap.drag-over{outline:2px solid var(--lavender);outline-offset:-2px;background:#6b5b8a0a;border-radius:3px}.dnd-sub-wrap.nest-target{outline:2px dashed var(--lavender);outline-offset:-2px;background:#6b5b8a14;border-radius:3px}.task-body{flex:1;display:flex;flex-direction:column;gap:.3rem;min-width:0}.task-text{flex:1;cursor:pointer;font-size:.875rem}.task-meta{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.badge{font-size:.7rem;padding:.2rem .6rem;border-radius:20px;flex-shrink:0;font-weight:500;font-family:DM Sans,sans-serif;display:inline-flex;align-items:center;gap:.3rem;border:1px solid transparent;line-height:1.3}.badge-today{background:#fef3e4;color:#8a5a08;border-color:#e8d090}.badge-today:before{content:"●";color:var(--rust);font-size:.55rem;line-height:1}.badge-asap{background:#fdf0eb;color:#8a3a18;border-color:#e8c0a8}.badge-asap:before{content:"●";color:var(--rust);font-size:.55rem;line-height:1;opacity:.7}.badge-soon{background:#eef5ee;color:#2e5c38;border-color:#b8d8bc}.badge-soon:before{content:"●";color:var(--sage);font-size:.55rem;line-height:1}.badge-not_urgent{background:#f4f4f2;color:#888;border-color:#ddd}.badge-not_urgent:before{content:"·";font-size:.9rem;line-height:.8;color:#bbb}.badge-aspirational{background:#f4f0f9;color:#5a4878;border-color:#d4c8ec}.badge-aspirational:before{content:"·";font-size:.9rem;line-height:.8;color:var(--lavender)}.urgency-pill{font-family:DM Sans,sans-serif;font-size:.7rem;border:1px solid transparent;border-radius:20px;cursor:pointer;appearance:none;-webkit-appearance:none;padding:.2rem .6rem;font-weight:500;line-height:1.3}.urgency-pill.badge-today{background:#fef3e4;color:#8a5a08;border-color:#e8d090}.urgency-pill.badge-asap{background:#fdf0eb;color:#8a3a18;border-color:#e8c0a8}.urgency-pill.badge-soon{background:#eef5ee;color:#2e5c38;border-color:#b8d8bc}.urgency-pill.badge-not_urgent{background:#f4f4f2;color:#888;border-color:#ddd}.urgency-pill.badge-aspirational{background:#f4f0f9;color:#5a4878;border-color:#d4c8ec}.urgency-pill:hover{filter:brightness(.93)}.badge-due-overdue{background:#fde8e8;color:#902020;border-color:#e8b0b0;font-weight:600}.badge-due-due-today{background:#fef3e4;color:#8a5a08;border-color:#e8d090;font-weight:600}.badge-due-due-soon{background:#eef3fb;color:#2a4a78;border-color:#b8cce8}.badge-due-due-future{background:#f5f5f3;color:var(--muted);border-color:var(--border)}.badge-quick{background:#eef6ee;color:#2e5c38;border-color:#b8d8bc}.badge-bd{background:#fdf0eb;color:#8a3a18;border-color:#e8c0a8}.badge-bd-action{background:#f4f0f9;color:#5a4878;border-color:#c8b8ec;cursor:pointer}.badge-bd-action:hover{background:#5a4878;color:#fff;border-color:#5a4878}.badge-off{background:transparent;color:var(--muted);border:1px dashed rgba(0,0,0,.15);opacity:.5}.badge-off:hover{opacity:.8}.badge-stuck{background:#fffbe8;color:#7a6010;border-color:#e4d070;opacity:.65;font-size:.68rem}.badge-stuck:hover{opacity:1;background:#fff3b0}.motivator-modal{width:min(500px,94vw)}.motivator-modal .motivator-task-name{font-family:Fraunces,serif;font-size:.95rem;font-weight:600;color:var(--ink);margin-bottom:1rem;padding:.5rem .75rem;background:var(--cream);border-radius:6px;border-left:3px solid var(--rust)}.motivator-thread{max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding:.25rem 0;margin-bottom:.75rem}.motivator-msg{display:flex;gap:.6rem;align-items:flex-start}.motivator-msg-assistant{flex-direction:row}.motivator-msg-user{flex-direction:row-reverse}.motivator-msg-icon{font-size:.8rem;color:var(--sage);flex-shrink:0;margin-top:.15rem}.motivator-msg-you{font-size:.65rem;color:var(--muted);font-family:DM Mono,monospace;flex-shrink:0;margin-top:.3rem}.motivator-msg-text{font-size:.86rem;line-height:1.6;color:var(--ink);padding:.55rem .8rem;border-radius:10px;white-space:pre-wrap;max-width:90%}.motivator-msg-assistant .motivator-msg-text{background:#f0f8f0;border:1px solid #c8e0c8}.motivator-msg-user .motivator-msg-text{background:var(--cream);border:1px solid var(--border);text-align:right}.motivator-thinking{font-size:.78rem;color:var(--muted);font-family:DM Mono,monospace;padding:.35rem 0}.motivator-reply-row{display:flex;gap:.5rem;align-items:flex-end}.motivator-reply-input{flex:1;font-family:DM Sans,sans-serif;font-size:.85rem;padding:.5rem .75rem;border:1.5px solid var(--border);border-radius:6px;resize:none;outline:none;transition:border-color .15s}.motivator-reply-input:focus{border-color:var(--ink)}.motivator-reply-input:disabled{opacity:.5}.motivator-send-btn{font-family:DM Sans,sans-serif;font-size:.82rem;padding:.45rem .9rem;background:var(--ink);color:var(--cream);border:none;border-radius:6px;cursor:pointer;transition:all .12s;flex-shrink:0}.motivator-send-btn:hover:not(:disabled){background:#333}.motivator-send-btn:disabled{opacity:.4;cursor:not-allowed}.motivator-restart{font-size:.72rem;color:var(--muted);cursor:pointer;text-decoration:underline;margin-right:auto;font-family:DM Mono,monospace;align-self:center}.motivator-restart:hover{color:var(--ink)}.motivator-limit{display:flex;flex-direction:column;gap:.6rem}.motivator-limit-msg{font-size:.8rem;color:var(--muted);line-height:1.5;margin:0}.motivator-limit-prompt{font-family:DM Mono,monospace;font-size:.72rem;line-height:1.5;padding:.6rem .75rem;border:1.5px solid var(--border);border-radius:6px;resize:none;color:var(--ink);background:var(--cream);width:100%;box-sizing:border-box}.motivator-copy-btn{align-self:flex-end;font-size:.75rem;font-family:DM Mono,monospace;color:var(--sage);cursor:pointer;text-decoration:underline;transition:color .12s}.motivator-copy-btn:hover{color:var(--ink)}.field-optional{text-transform:none;font-size:.68rem;letter-spacing:0;opacity:.7}.clickable{cursor:pointer;transition:all .12s}.clickable:hover{filter:brightness(.88)}.effort-chip{font-size:.7rem;padding:.2rem .6rem;border-radius:20px;background:var(--white);border:1px solid var(--border);color:var(--muted);cursor:pointer;white-space:nowrap;transition:all .1s;-webkit-user-select:none;user-select:none;font-family:DM Sans,sans-serif}.effort-chip:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.loc-chip{font-size:.7rem;padding:.2rem .6rem;border-radius:20px;background:var(--white);border:1px dashed var(--border);color:var(--muted);cursor:pointer;white-space:nowrap;transition:all .1s;-webkit-user-select:none;user-select:none;font-family:DM Sans,sans-serif;display:inline-flex;align-items:center;gap:.25rem}.loc-chip:hover{border-style:solid;border-color:var(--ink);color:var(--ink)}.loc-unset{opacity:.5}.drag-handle{display:inline-flex;align-items:center;width:14px;color:var(--border);cursor:grab;flex-shrink:0;margin-top:2px;transition:color .12s}.drag-handle:active{cursor:grabbing}.task:hover .drag-handle{color:var(--muted)}.icon-btn{background:none;border:none;padding:.1rem;cursor:pointer;color:var(--muted);display:inline-flex;align-items:center;transition:color .1s;line-height:1;border-radius:2px}.icon-btn:hover{color:var(--ink)}.edit-btn{opacity:0;transition:opacity .12s,color .1s}.task:hover .edit-btn,.flat-row:hover .edit-btn{opacity:.5}.edit-btn:hover{opacity:1!important}.task-actions{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;margin-top:.15rem}.toggle-btn{font-size:.68rem;font-family:DM Mono,monospace;padding:.18rem .5rem;border-radius:2px;border:1.5px solid var(--border);background:var(--white);color:var(--muted);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;transition:all .12s;display:inline-flex;align-items:center;gap:.25rem;flex-shrink:0;-webkit-user-select:none;user-select:none}.toggle-btn:hover{border-color:var(--ink);color:var(--ink);background:var(--cream)}.toggle-btn.active-quick{background:#ebf5eb;color:#2a5e2a;border-color:#9ecf9e;font-weight:600}.toggle-btn.active-breakdown{background:#fdf0ea;color:var(--rust);border-color:#e8b49a;font-weight:600}.action-btn{font-size:.68rem;font-family:DM Mono,monospace;padding:.18rem .5rem;border-radius:2px;border:1.5px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;transition:all .12s;display:inline-flex;align-items:center;gap:.25rem;flex-shrink:0;white-space:nowrap}.action-btn:hover{background:var(--lavender);color:var(--cream);border-color:var(--lavender)}.subtask-add-form{display:flex;align-items:center;gap:.35rem;margin-top:.3rem}.subtask-add-input{font-family:DM Mono,monospace;font-size:.8rem;padding:.3rem .5rem;border:1.5px solid var(--ink);border-radius:2px;background:var(--cream);flex:1;min-width:0;outline:none}.subtask-add-save{font-family:DM Mono,monospace;font-size:.72rem;padding:.28rem .6rem;border:1.5px solid var(--ink);background:var(--ink);color:var(--cream);border-radius:2px;cursor:pointer;letter-spacing:.04em;transition:all .1s}.subtask-add-save:hover{background:#333}.subtask-add-cancel{background:none;border:none;cursor:pointer;color:var(--muted);display:flex;align-items:center;padding:.1rem;border-radius:2px;transition:color .1s}.subtask-add-cancel:hover{color:var(--rust)}.subtask-progress{font-size:.68rem;color:var(--muted);font-family:DM Mono,monospace}.effort-popover{position:absolute;left:2.5rem;top:100%;z-index:200;background:var(--white);border:1.5px solid var(--ink);border-radius:4px;padding:.6rem;display:flex;flex-direction:column;gap:.4rem;box-shadow:3px 3px 0 var(--border);min-width:170px}.effort-popover input{font-family:DM Mono,monospace;font-size:.85rem;padding:.35rem .55rem;border:1px solid var(--border);border-radius:3px;width:100%;background:var(--cream)}.effort-popover input:focus{outline:none;border-color:var(--ink)}.effort-hint{font-size:.72rem;color:var(--muted);font-family:DM Mono,monospace}.effort-btns{display:flex;gap:.4rem}.effort-btns button{font-family:DM Mono,monospace;font-size:.75rem;padding:.28rem .55rem;border:1px solid var(--border);background:var(--cream);cursor:pointer;border-radius:3px;flex:1}.effort-btns .esave{background:var(--ink);color:var(--cream);border-color:var(--ink)}.flat-row{background:var(--white);border:1px solid var(--border);border-radius:3px;display:flex;align-items:flex-start;gap:.7rem;padding:.65rem 1rem;font-size:.88rem;line-height:1.5;transition:background .1s;position:relative}.flat-row[draggable=true]{-webkit-user-select:none;user-select:none;cursor:grab}.flat-row:hover{background:var(--cream)}.flat-row.done{opacity:.38}.flat-row.done .task-text{text-decoration:line-through}.cat-tag{font-size:.68rem;padding:.15rem .48rem;border-radius:3px;background:var(--cream);color:var(--muted);white-space:nowrap;flex-shrink:0;margin-top:2px;font-family:DM Mono,monospace}.cat-select{font-family:DM Mono,monospace;font-size:.7rem;padding:.15rem .4rem;border:1.5px solid var(--ink);border-radius:3px;background:var(--white);color:var(--ink);cursor:pointer}.urgency-select{font-family:DM Mono,monospace;border:none;cursor:pointer;appearance:none;-webkit-appearance:none}.section-hdr{font-family:Fraunces,serif;font-size:.9rem;font-weight:600;letter-spacing:.02em;color:var(--muted);padding:.9rem 0 .3rem;border-top:1px solid var(--border);margin-top:.5rem}.section-hdr:first-child{border-top:none;margin-top:0}.progress-footer{max-width:var(--max-w);margin:2.5rem auto 0;display:flex;align-items:center;gap:1rem;font-size:.8rem;color:var(--muted);letter-spacing:.05em;font-family:DM Mono,monospace}.progress-bar{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:var(--sage);border-radius:2px;transition:width .4s;width:0%}.progress-label{white-space:nowrap;min-width:60px;text-align:right}.cat-school .cat-header,.cat-school .acc-header{background:#f0f4fa;border-left:3px solid var(--blue)}.cat-school .cat-title,.cat-school .acc-title{color:var(--blue)}.cat-medical .cat-header,.cat-medical .acc-header{background:#faf0ee;border-left:3px solid var(--rust)}.cat-medical .cat-title,.cat-medical .acc-title{color:var(--rust)}.cat-home .cat-header,.cat-home .acc-header{background:#f0f4f0;border-left:3px solid var(--sage)}.cat-home .cat-title,.cat-home .acc-title{color:var(--sage)}.cat-food .cat-header,.cat-food .acc-header{background:#fdf5e8;border-left:3px solid var(--gold)}.cat-food .cat-title,.cat-food .acc-title{color:var(--gold)}.cat-admin .cat-header,.cat-admin .acc-header{background:#f2f0f6;border-left:3px solid var(--lavender)}.cat-admin .cat-title,.cat-admin .acc-title{color:var(--lavender)}.cat-personal .cat-header,.cat-personal .acc-header{background:#f5f0ea;border-left:3px solid #8a6a3a}.cat-personal .cat-title,.cat-personal .acc-title{color:#8a6a3a}.cat-projects .cat-header,.cat-projects .acc-header{background:#eef2fa;border-left:3px solid #3a6a8a}.cat-projects .cat-title,.cat-projects .acc-title{color:#3a6a8a}.cat-errands .cat-header,.cat-errands .acc-header{background:#f5f2e8;border-left:3px solid #7a6030}.cat-errands .cat-title,.cat-errands .acc-title{color:#7a6030}.cat-room .cat-header,.cat-room .acc-header{background:#eef4f2;border-left:3px solid #3a7a6a}.cat-room .cat-title,.cat-room .acc-title{color:#3a7a6a}.cat-garden .cat-header,.cat-garden .acc-header{background:#eef4ee;border-left:3px solid #4a7a3a}.cat-garden .cat-title,.cat-garden .acc-title{color:#4a7a3a}@keyframes checkPop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.task-check.just-checked{animation:checkPop .3s ease}.wsdn-btn{font-family:DM Mono,monospace;font-size:.8rem;padding:.5rem 1rem;background:var(--rust);color:var(--cream);border:2px solid var(--rust);border-radius:3px;cursor:pointer;letter-spacing:.04em;transition:all .15s}.wsdn-btn:hover{background:var(--ink);border-color:var(--ink)}.suggestion-card{padding:1rem;display:flex;align-items:flex-start;gap:1rem}.suggestion-card .task-text{font-size:.95rem;font-weight:500}.suggestion-card .done-btn{font-family:DM Mono,monospace;font-size:.8rem;padding:.35rem .8rem;background:var(--sage);color:var(--cream);border:none;border-radius:3px;cursor:pointer;text-align:center;transition:all .12s;letter-spacing:.04em}.suggestion-card .done-btn:hover{background:#2d6b2d}.suggestion-card .dismiss{font-size:.78rem;color:var(--muted);cursor:pointer;text-decoration:underline;text-align:center;font-family:DM Mono,monospace}.celebration{position:fixed;top:2rem;left:50%;transform:translate(-50%);background:var(--sage);color:var(--cream);padding:.8rem 1.5rem;border-radius:4px;font-size:.9rem;font-family:DM Mono,monospace;letter-spacing:.04em;z-index:1000;animation:slideDown .3s ease,fadeOut .3s ease 2.5s forwards;box-shadow:0 4px 12px #00000026}@keyframes slideDown{0%{transform:translate(-50%) translateY(-100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@keyframes fadeOut{to{opacity:0;transform:translate(-50%) translateY(-20px)}}.add-task-section{max-width:var(--max-w);margin:0 auto 1.5rem}.add-task-toggle{font-family:DM Mono,monospace;font-size:.82rem;padding:.5rem .9rem;border:1.5px dashed var(--border);background:transparent;color:var(--muted);cursor:pointer;border-radius:3px;flex:1;text-align:left;transition:all .12s}.add-task-toggle:hover{border-color:var(--ink);color:var(--ink)}.add-task-form{background:var(--white);border:1.5px solid var(--ink);border-radius:4px;padding:1rem;display:flex;flex-direction:column;gap:.7rem}.add-task-form input,.add-task-form select{font-family:DM Mono,monospace;font-size:.85rem;padding:.45rem .65rem;border:1px solid var(--border);border-radius:3px;background:var(--cream)}.add-task-form input:focus,.add-task-form select:focus{outline:none;border-color:var(--ink)}.add-task-form .form-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.add-task-form .form-row>*{flex:1;min-width:120px}.add-task-form label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:flex;flex-direction:column;gap:.25rem;font-family:DM Mono,monospace}.add-task-form .form-checks{display:flex;gap:1rem;align-items:center;font-size:.8rem}.add-task-form .form-checks label{flex-direction:row;gap:.35rem;align-items:center;cursor:pointer}.add-task-form .form-actions{display:flex;gap:.5rem;justify-content:flex-end}.add-task-form .form-actions button{font-family:DM Mono,monospace;font-size:.8rem;padding:.4rem .9rem;border:1.5px solid var(--border);background:var(--cream);cursor:pointer;border-radius:3px}.add-task-form .form-actions .save-btn{background:var(--ink);color:var(--cream);border-color:var(--ink)}.voice-btn{font-family:DM Mono,monospace;font-size:.78rem;padding:.38rem .75rem;border:1.5px solid var(--border);background:var(--white);color:var(--ink);cursor:pointer;border-radius:3px;display:flex;align-items:center;gap:.35rem;transition:all .15s}.voice-btn:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.voice-btn.recording{background:#c4572a;color:var(--cream);border-color:#c4572a;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.voice-btn.processing{background:var(--gold);color:var(--cream);border-color:var(--gold);cursor:wait}.voice-status{font-size:.76rem;color:var(--muted);font-style:italic;font-family:DM Mono,monospace}.tts-toggle{font-size:1rem;padding:.3rem .5rem;border:1.5px solid var(--border);background:var(--white);cursor:pointer;border-radius:3px;transition:all .15s;line-height:1}.tts-toggle:hover{border-color:var(--ink)}.tts-toggle.tts-on{background:#e8f4e8;border-color:#b0d8b0}.smart-btn{font-family:DM Mono,monospace;font-size:.78rem;padding:.38rem .75rem;border:1.5px solid var(--lavender);background:#f2f0f6;color:var(--lavender);cursor:pointer;border-radius:3px;transition:all .15s;white-space:nowrap}.smart-btn:hover:not(:disabled){background:var(--lavender);color:var(--cream);border-color:var(--lavender)}.smart-btn:disabled{opacity:.4;cursor:not-allowed}.dep-inline{position:relative;display:inline-flex;align-items:center}.badge-blocked{background:#fde8e8;color:#902020;border:1px solid #e8b0b0;cursor:pointer;border-radius:20px}.badge-dep-ok{background:#eef5ee;color:#2e5c38;border:1px solid #b8d8bc;cursor:pointer;border-radius:20px}.badge-dep-add{background:transparent;color:var(--muted);border:1px dashed rgba(0,0,0,.2);opacity:.5;font-size:.68rem;border-radius:20px}.badge-dep-add:hover{opacity:.8}.badge-dep{background:#f2eef8;color:#5a4878;border:1px solid #c8b8ec;cursor:pointer;font-size:.68rem;border-radius:20px}.dep-picker{position:absolute;left:0;top:100%;z-index:300;background:var(--white);border:1.5px solid var(--ink);border-radius:4px;padding:.5rem;box-shadow:3px 3px 0 var(--border);min-width:260px;max-width:340px;display:flex;flex-direction:column;gap:.4rem}.dep-picker.drop-up{top:auto;bottom:100%;box-shadow:-3px -3px 0 var(--border)}.dep-search{font-family:DM Mono,monospace;font-size:.78rem;padding:.35rem .5rem;border:1px solid var(--border);border-radius:3px;background:var(--cream);width:100%}.dep-search:focus{outline:none;border-color:var(--ink)}.dep-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:1px}.dep-option{padding:.35rem .5rem;font-size:.78rem;cursor:pointer;border-radius:3px;display:flex;align-items:center;gap:.4rem;transition:background .1s}.dep-option:hover{background:var(--cream)}.dep-option-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge-done-sm{font-size:.65rem;padding:.15rem .45rem;background:#eef5ee;color:#2e5c38;border-radius:20px;border:1px solid #b8d8bc}.dep-empty{font-size:.75rem;color:var(--muted);font-style:italic;padding:.3rem .5rem}.dep-current{display:flex;flex-direction:column;gap:.3rem;padding-bottom:.3rem;border-bottom:1px solid var(--border)}.dep-blockers{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;margin-top:.2rem}.dep-label{font-size:.7rem;color:var(--rust);text-transform:uppercase;letter-spacing:.06em;font-weight:500;font-family:DM Mono,monospace}.dep-tag{font-size:.72rem;padding:.2rem .5rem;background:#fde8e0;color:var(--rust);border-radius:3px;display:inline-flex;align-items:center;gap:.4rem;border:1px solid #f0c0a8;font-family:DM Mono,monospace}.dep-tag .dep-done{text-decoration:line-through;opacity:.5}.dep-remove{cursor:pointer;font-size:.65rem;opacity:.6;font-weight:700}.dep-remove:hover{opacity:1}.task-title-row{display:flex;align-items:flex-start;gap:.4rem}.task-title-row .task-text{flex:1}.btn.loc-active{background:#e8f0f8;color:var(--blue);border-color:#a0c0e0}.modal-backdrop{position:fixed;inset:0;background:#00000059;z-index:400}.modal-box{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:401;background:var(--white);border:2px solid var(--ink);border-radius:5px;box-shadow:6px 6px 0 var(--border);width:min(520px,92vw);max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.2rem;border-bottom:1.5px solid var(--border);flex-shrink:0}.modal-title{font-family:Fraunces,serif;font-size:1.05rem;font-weight:700}.modal-close{cursor:pointer;font-size:.85rem;color:var(--muted);opacity:.7;transition:opacity .1s}.modal-close:hover{opacity:1}.modal-body{padding:1rem 1.2rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.modal-footer{padding:.75rem 1.2rem;border-top:1.5px solid var(--border);display:flex;gap:.5rem;justify-content:flex-end;flex-shrink:0}.modal-btn{font-family:DM Mono,monospace;font-size:.78rem;padding:.38rem .85rem;border:1.5px solid var(--border);background:var(--cream);color:var(--ink);cursor:pointer;border-radius:3px;transition:all .12s}.modal-btn:hover:not(:disabled){background:var(--border)}.modal-btn.modal-save{background:var(--ink);color:var(--cream);border-color:var(--ink)}.modal-btn.modal-save:hover:not(:disabled){background:#333}.modal-btn:disabled{opacity:.45;cursor:not-allowed}.modal-btn.modal-cancel:hover{background:var(--cream);color:var(--muted)}.modal-footer .delete-confirm-text{font-size:.75rem;color:var(--rust);font-family:DM Mono,monospace;margin-right:auto;align-self:center}.modal-btn.modal-delete{margin-right:auto;color:var(--muted);border-color:transparent;background:transparent}.modal-btn.modal-delete:hover{color:var(--rust);border-color:var(--rust);background:transparent}.modal-btn.modal-delete-confirm{background:var(--rust);color:#fff;border-color:var(--rust)}.modal-btn.modal-delete-confirm:hover{background:#a83a1a}.field-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:flex;flex-direction:column;gap:.25rem;font-family:DM Mono,monospace}.field-input{font-family:DM Mono,monospace;font-size:.85rem;padding:.45rem .65rem;border:1px solid var(--border);border-radius:3px;background:var(--cream);width:100%}.field-input:focus{outline:none;border-color:var(--ink)}.field-textarea{resize:vertical;min-height:56px}.field-row{display:flex;gap:.6rem;flex-wrap:wrap}.field-row>*{flex:1;min-width:140px}.field-checks{display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap}.check-label{font-size:.8rem;display:flex;align-items:center;gap:.35rem;cursor:pointer;color:var(--ink)}.bd-task-title{font-size:.95rem;font-weight:500;padding:.6rem .8rem;background:var(--cream);border-radius:4px;border-left:3px solid var(--lavender);margin-bottom:.25rem}.bd-ask-btn{font-family:DM Mono,monospace;font-size:.82rem;padding:.5rem 1rem;background:var(--lavender);color:var(--cream);border:none;border-radius:3px;cursor:pointer;transition:all .15s;align-self:flex-start}.bd-ask-btn:hover:not(:disabled){background:#5a4a7a}.bd-ask-btn:disabled{opacity:.45;cursor:wait}.bd-ask-again{background:var(--cream);color:var(--lavender);border:1.5px solid var(--lavender);font-size:.75rem;padding:.35rem .7rem}.bd-ask-again:hover:not(:disabled){background:#f2f0f6}.bd-loading{font-size:.85rem;color:var(--lavender);font-style:italic;padding:.4rem 0}.bd-error{font-size:.8rem;color:var(--rust);padding:.35rem .6rem;background:#fde8e0;border-radius:3px}.bd-results{display:flex;flex-direction:column;gap:.6rem}.bd-results-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-family:DM Mono,monospace}.bd-subtask-list{display:flex;flex-direction:column;gap:.35rem}.bd-subtask{display:flex;align-items:center;gap:.4rem;background:var(--cream);border-radius:3px;padding:.3rem .5rem;border:1px solid var(--border)}.bd-subtask-input{font-family:DM Mono,monospace;font-size:.82rem;border:none;background:transparent;flex:1;color:var(--ink);outline:none}.bd-subtask-input:focus{border-bottom:1px solid var(--ink)}.bd-subtask-meta{font-size:.7rem;color:var(--muted);white-space:nowrap;flex-shrink:0;font-family:DM Mono,monospace}.bd-remove{font-size:.7rem;color:var(--muted);cursor:pointer;flex-shrink:0;opacity:.6;font-weight:700;padding:.1rem .2rem}.bd-remove:hover{opacity:1;color:var(--rust)}.bd-granularity{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.bd-gran-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-family:DM Mono,monospace}.bd-gran-picker{display:flex;gap:.25rem}.bd-gran-dot{width:1.6rem;height:1.6rem;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:500;border-radius:50%;cursor:pointer;border:1.5px solid var(--border);color:var(--muted);background:transparent;transition:all .15s;-webkit-user-select:none;user-select:none}.bd-gran-dot.filled{border-color:var(--lavender);color:var(--lavender)}.bd-gran-dot.active{background:var(--lavender);border-color:var(--lavender);color:var(--cream)}.bd-gran-dot:hover{border-color:var(--lavender);transform:scale(1.1)}.bd-gran-hint{font-size:.75rem;color:var(--muted);font-style:italic}.subtask-toggle{font-size:.75rem;color:var(--muted);cursor:pointer;padding:.3rem 0;-webkit-user-select:none;user-select:none;transition:color .1s;font-family:DM Mono,monospace}.subtask-toggle:hover{color:var(--ink)}.subtask-list{list-style:none;padding:0 0 0 1.2rem;margin:0;border-left:2px solid var(--border)}.subtask-list .task,.subtask-list .flat-row{font-size:.82rem;padding:.4rem .6rem}.subtask-list .task-meta{gap:.25rem}.subtask-list .badge,.subtask-list .effort-chip{font-size:.6rem;padding:.1rem .35rem}.brain-dump-btn{font-family:DM Mono,monospace;font-size:.78rem;padding:.38rem .75rem;background:#f0eef8;color:#5a3a8a;border:1.5px solid #c8b8e8;border-radius:3px;cursor:pointer;transition:all .12s}.brain-dump-btn:hover{background:#e4dff5;border-color:#a090cc}.bd-dump-hint{font-size:.82rem;color:var(--muted);margin:0 0 .25rem}.bd-dump-textarea{min-height:160px;font-size:.85rem}.bd-dump-task-list{display:flex;flex-direction:column;gap:.5rem}.bd-dump-task{background:var(--cream);border:1px solid var(--border);border-radius:4px;padding:.5rem .65rem;display:flex;flex-direction:column;gap:.3rem}.bd-dump-task-top{display:flex;align-items:center;gap:.4rem}.bd-dump-task-meta{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.bd-urgency-select{font-family:DM Mono,monospace;font-size:.7rem;border:none;cursor:pointer;padding:.1rem .3rem;border-radius:3px;-webkit-appearance:none;appearance:none}.bd-restart-link{font-size:.75rem;color:var(--muted);cursor:pointer;text-decoration:underline;align-self:flex-start;margin-top:.25rem;font-family:DM Mono,monospace}.bd-restart-link:hover{color:var(--ink)}.graveyard{max-width:var(--max-w);margin:2rem auto 0;border:1.5px solid var(--border);border-radius:4px;overflow:hidden;background:var(--white)}.graveyard-header{width:100%;display:flex;align-items:center;gap:.75rem;padding:.85rem 1.2rem;background:#f1ede6;cursor:pointer;border:none;font-family:inherit;transition:background .12s}.graveyard-header:hover{background:#e8e4dd}.graveyard-icon{font-size:1.05rem;flex-shrink:0}.graveyard-title{font-family:Fraunces,serif;font-size:1rem;font-weight:600;color:var(--muted);flex-shrink:0}.graveyard-progress{display:flex;align-items:center;gap:.5rem;flex:1;margin:0 .25rem}.graveyard-bar{flex:1;height:5px;background:var(--border);border-radius:3px;overflow:hidden;max-width:160px}.graveyard-fill{height:100%;background:var(--sage);border-radius:3px;transition:width .4s}.graveyard-pct{font-size:.72rem;font-family:DM Mono,monospace;color:var(--sage);font-weight:500;min-width:2.5rem}.graveyard-count{font-size:.72rem;font-family:DM Mono,monospace;color:var(--sage);background:#e8f0e8;padding:.18rem .5rem;border-radius:10px;border:1px solid #c0dcc0;flex-shrink:0}.graveyard-chevron{font-size:.7rem;color:var(--muted);flex-shrink:0}.graveyard-body{padding:.4rem 0 .25rem}.graveyard-hint{font-size:.72rem;color:var(--muted);font-style:italic;padding:.2rem 1.2rem .5rem;font-family:DM Mono,monospace;border-bottom:1px solid var(--border);margin-bottom:.25rem}.grave-row{display:flex;align-items:center;gap:.6rem;padding:.4rem 1.2rem;transition:background .1s}.grave-row:hover{background:var(--cream)}.grave-check{width:18px;height:18px;border:none;background:var(--sage);border-radius:3px;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-size:11px;padding:0;line-height:1;transition:background .12s}.grave-check:hover{background:#c44020}.grave-title{flex:1;font-size:.86rem;text-decoration:line-through;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grave-cat{font-size:.88rem;flex-shrink:0;opacity:.6}.grave-effort{font-size:.65rem;font-family:DM Mono,monospace;color:var(--muted);opacity:.6;flex-shrink:0}.notif-bell-wrap{position:relative;cursor:pointer;display:flex;align-items:center}.notif-bell{font-size:1.1rem;opacity:.6;transition:opacity .12s}.notif-bell-wrap:hover .notif-bell{opacity:1}.notif-badge{position:absolute;top:-4px;right:-6px;background:var(--rust);color:var(--cream);font-family:DM Mono,monospace;font-size:.55rem;font-weight:600;min-width:14px;height:14px;display:flex;align-items:center;justify-content:center;border-radius:7px;padding:0 3px;line-height:1}.notif-backdrop{position:fixed;inset:0;z-index:999}.notif-dropdown{position:absolute;top:2rem;right:0;z-index:1000;background:var(--white);border:1.5px solid var(--border);border-radius:6px;width:min(360px,90vw);max-height:420px;overflow-y:auto;box-shadow:0 6px 24px #0000001f}.notif-dropdown-hdr{display:flex;align-items:center;justify-content:space-between;padding:.6rem .8rem;border-bottom:1px solid var(--border)}.notif-dropdown-title{font-family:DM Mono,monospace;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.notif-mark-all{font-family:DM Mono,monospace;font-size:.68rem;color:var(--rust);cursor:pointer}.notif-mark-all:hover{text-decoration:underline}.notif-list{display:flex;flex-direction:column}.notif-item{display:flex;align-items:flex-start;gap:.5rem;padding:.6rem .8rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.notif-item:hover{background:var(--cream)}.notif-item:last-child{border-bottom:none}.notif-unread{background:#c4572a0a}.notif-icon{font-size:.9rem;flex-shrink:0;margin-top:.1rem}.notif-content{flex:1;min-width:0}.notif-text{font-size:.8rem;line-height:1.4;display:block}.notif-time{font-family:DM Mono,monospace;font-size:.65rem;color:var(--muted)}.notif-action{flex-shrink:0;margin-top:.1rem}.notif-empty{padding:1.5rem;text-align:center;font-size:.82rem;color:var(--muted)}.comp-status-badge{display:flex;align-items:center;gap:.4rem;padding:.45rem .8rem;background:var(--white);border:1.5px solid var(--border);border-radius:4px;font-family:DM Mono,monospace;font-size:.75rem;color:var(--ink);text-decoration:none;margin-bottom:.75rem;transition:all .12s}.comp-status-badge:hover{border-color:var(--ink);background:var(--ink);color:var(--cream)}.comp-status-icon{font-size:.85rem}.comp-status-text{flex:1}.friends-page{max-width:700px;margin:0 auto;padding:2rem 1rem}.friends-header{margin-bottom:2rem}.friends-title{font-family:Fraunces,serif;font-size:1.6rem;font-weight:900;margin-top:.5rem}.friends-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.friends-section h2{font-family:Fraunces,serif;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.friends-empty{font-size:.85rem;color:var(--muted)}.add-friend-form{display:flex;gap:.4rem;margin-bottom:.5rem}.friend-email-input{font-family:DM Sans,sans-serif;font-size:.9rem;padding:.45rem .9rem;border:1.5px solid var(--border);background:var(--white);color:var(--ink);border-radius:3px;flex:1;outline:none;transition:border-color .15s}.friend-email-input:focus{border-color:var(--ink)}.send-result{font-size:.78rem;margin-top:.25rem}.send-success{color:var(--sage)}.send-error{color:var(--rust)}.friend-row{display:flex;align-items:center;gap:.6rem;padding:.6rem 0;border-bottom:1px solid var(--border)}.friend-row:last-child{border-bottom:none}.friend-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--cream);font-family:Fraunces,serif;font-size:.85rem;font-weight:700;flex-shrink:0}.friend-avatar-sm{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--cream);font-family:Fraunces,serif;font-size:.65rem;font-weight:700;flex-shrink:0}.friend-info{flex:1;min-width:0}.friend-name{font-size:.9rem;font-weight:500;display:block}.friend-meta{font-size:.72rem;color:var(--muted);font-family:DM Mono,monospace}.friend-actions{display:flex;gap:.3rem;flex-shrink:0}.friend-sharing-summary{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:.2rem}.sharing-badge{font-family:DM Mono,monospace;font-size:.62rem;padding:.15rem .4rem;background:var(--cream);border:1px solid var(--border);border-radius:2px;color:var(--muted)}.sharing-all{background:#e8f4e8;color:var(--sage);border-color:#b0d8b0}.sharing-none{background:#fde8e0;color:var(--rust);border-color:#f0c0a8}.btn-accept{background:#e8f4e8;color:#2d6b2d;border-color:#b0d8b0}.btn-accept:hover{background:var(--sage);color:var(--cream);border-color:var(--sage)}.btn-decline{color:var(--muted);border-color:var(--border)}.btn-decline:hover{background:var(--muted);color:var(--cream);border-color:var(--muted)}.permissions-panel{padding:.75rem;margin:.5rem 0;background:var(--white);border:1.5px solid var(--border);border-radius:4px}.perm-row{margin-bottom:.5rem}.perm-label{font-size:.82rem;display:flex;align-items:center;gap:.4rem;cursor:pointer}.perm-label input[type=checkbox]{accent-color:var(--rust)}.perm-categories{display:flex;flex-wrap:wrap;gap:.3rem;margin:.4rem 0}.perm-cat-chip{font-family:DM Mono,monospace;font-size:.68rem;padding:.25rem .5rem;border:1px solid var(--border);border-radius:3px;cursor:pointer;display:flex;align-items:center;gap:.2rem;transition:all .1s}.perm-cat-chip.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.comp-page{max-width:700px;margin:0 auto;padding:2rem 1rem}.comp-header{margin-bottom:2rem}.comp-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.comp-title{font-family:Fraunces,serif;font-size:1.6rem;font-weight:900;margin-top:.5rem}.comp-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.comp-section h2{font-family:Fraunces,serif;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.comp-empty{text-align:center;padding:3rem 1rem;color:var(--muted)}.comp-empty p{margin-bottom:1rem;font-size:.9rem}.comp-card{background:var(--white);border:1.5px solid var(--border);border-radius:6px;padding:1rem;margin-bottom:.75rem}.comp-active{border-color:var(--rust);border-width:2px}.comp-card-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.comp-card-title{font-family:Fraunces,serif;font-size:1rem;font-weight:600}.comp-type-badge{font-family:DM Mono,monospace;font-size:.62rem;padding:.15rem .4rem;background:var(--cream);border:1px solid var(--border);border-radius:2px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.comp-time-left{font-family:DM Mono,monospace;font-size:.72rem;color:var(--rust);margin-left:auto}.comp-target-badge{font-family:DM Mono,monospace;font-size:.72rem;color:var(--blue);margin-left:auto}.comp-date{font-family:DM Mono,monospace;font-size:.68rem;color:var(--muted);margin-left:auto}.comp-card-meta{font-size:.78rem;color:var(--muted);margin-bottom:.5rem}.comp-card-actions{display:flex;gap:.3rem}.comp-cancel{margin-top:.75rem}.scoreboard{display:flex;flex-direction:column;gap:.3rem;margin:.5rem 0}.score-row{display:flex;align-items:center;gap:.5rem;padding:.4rem .5rem;border-radius:3px;background:var(--cream)}.score-leader{background:#b888201a;border:1px solid rgba(184,136,32,.25)}.score-winner{background:#b8882026;border:1px solid rgba(184,136,32,.3)}.score-rank{font-family:DM Mono,monospace;font-size:.72rem;color:var(--muted);min-width:1.5rem}.score-name{font-size:.85rem;flex:1}.score-count{font-family:Fraunces,serif;font-size:1rem;font-weight:600}.score-bar-wrap{width:60px;height:6px;background:var(--border);border-radius:3px;overflow:hidden;flex-shrink:0}.score-bar{height:100%;background:var(--rust);border-radius:3px;transition:width .3s}.frog-feed{margin-top:.75rem;padding-top:.5rem;border-top:1px solid var(--border)}.frog-feed h3{font-family:DM Mono,monospace;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.4rem}.feed-item{display:flex;align-items:center;gap:.4rem;padding:.3rem 0;font-size:.78rem}.feed-emoji{flex-shrink:0}.feed-text{flex:1;min-width:0}.feed-text em{color:var(--muted);font-style:italic}.feed-time{font-family:DM Mono,monospace;font-size:.65rem;color:var(--muted);flex-shrink:0}.participants-status{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem}.part-status-row{display:flex;align-items:center;gap:.4rem}.part-name{font-size:.82rem;flex:1}.part-badge{font-family:DM Mono,monospace;font-size:.62rem;padding:.15rem .4rem;border-radius:2px;background:var(--cream);color:var(--muted);border:1px solid var(--border)}.part-accepted{background:#e8f4e8;color:var(--sage);border-color:#b0d8b0}.part-pending{background:#fde8e0;color:var(--rust);border-color:#f0c0a8}.proposal-display{margin:.5rem 0;padding:.5rem;background:var(--cream);border-radius:3px}.proposal-label{font-family:DM Mono,monospace;font-size:.68rem;color:var(--muted);display:block;margin-bottom:.2rem}.proposal-value{font-family:Fraunces,serif;font-size:1rem;font-weight:600}.neg-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.neg-waiting{font-size:.82rem;color:var(--muted);font-style:italic;margin-top:.5rem}.counter-form{display:flex;gap:.3rem;align-items:center}.comp-create{background:var(--white);border:1.5px solid var(--border);border-radius:6px;padding:1rem}.create-form{display:flex;flex-direction:column;gap:.75rem}.create-input{font-family:DM Sans,sans-serif;font-size:.9rem;padding:.45rem .9rem;border:1.5px solid var(--border);background:var(--white);color:var(--ink);border-radius:3px;outline:none;transition:border-color .15s}.create-input:focus{border-color:var(--ink)}.create-input-sm{max-width:80px;padding:.35rem .6rem;font-size:.82rem}.create-row{display:flex;flex-direction:column;gap:.3rem}.create-label{font-family:DM Mono,monospace;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.create-meta{font-size:.78rem;color:var(--muted)}.create-meta a{color:var(--rust)}.type-toggle,.duration-options{display:flex;gap:.3rem;flex-wrap:wrap}.custom-duration{display:flex;gap:.3rem;align-items:center;margin-top:.25rem}.btn-primary{background:var(--rust);color:var(--cream);border-color:var(--rust)}.btn-primary:hover:not(:disabled){background:var(--ink);border-color:var(--ink)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.friend-picker{display:flex;flex-direction:column;gap:.2rem;max-height:200px;overflow-y:auto;border:1px solid var(--border);border-radius:3px;padding:.3rem}.friend-pick-row{display:flex;align-items:center;gap:.4rem;padding:.35rem .4rem;border-radius:3px;cursor:pointer;transition:background .1s}.friend-pick-row:hover{background:var(--cream)}.friend-pick-row.selected{background:#e8f4e8}.friend-pick-name{font-size:.82rem;flex:1}.friend-pick-check{font-size:.8rem;color:var(--sage);min-width:1rem;text-align:center}.friend-pick-row.already-invited{opacity:.6;cursor:default}.friend-pick-row.already-invited:hover{background:transparent}.friend-invited-badge{font-family:DM Mono,monospace;font-size:.7rem;color:var(--muted);border:1px solid var(--border);border-radius:2px;padding:.1rem .35rem;letter-spacing:.04em}.history-toggle{cursor:pointer;display:flex;align-items:center;gap:.3rem}.toggle-arrow{font-size:.7rem;color:var(--muted)}.comp-completed{opacity:.8}.back-link{font-family:DM Mono,monospace;font-size:.78rem;color:var(--muted);text-decoration:none;letter-spacing:.04em}.back-link:hover{color:var(--ink)}@media(max-width:600px){body{padding:0 1rem 5rem}header{flex-direction:column;align-items:flex-start}.meta{text-align:left}.stats-bar{gap:1rem}.stat-num{font-size:1.3rem}.friends-page,.comp-page{padding:1rem .5rem}.notif-dropdown{right:-2rem;width:min(320px,88vw)}}
