@import url("https://fonts.googleapis.com/css2?family=Instrument+Sans:ital,wght@0,400..700;1,400..700&family=Instrument+Serif:ital@0;1&display=swap");:root{--bg:#F6F4EE;--surface:#FFFFFF;--surface-2:#FBFAF6;--ink:#211F1A;--ink-2:#5C594E;--ink-3:#8F8B7D;--line:#E6E2D6;--line-soft:#EEEBE1;--accent:#2E6E5E;--accent-ink:color-mix(in oklab,var(--accent) 78%,black);--accent-soft:color-mix(in oklab,var(--accent) 11%,white);--agent:#A8651F;--agent-soft:#F8EEDD;--agent-line:#EBD9BC;--danger:#A8442E;--danger-soft:#F7E8E2;--wait:#6B5CA5;--wait-soft:#ECE8F6;--radius:12px;--radius-sm:8px;--shadow-1:0 1px 2px rgba(33,31,26,.05),0 4px 16px rgba(33,31,26,.05);--shadow-2:0 2px 6px rgba(33,31,26,.08),0 16px 48px rgba(33,31,26,.14);--font-ui:"Instrument Sans",system-ui,sans-serif;--font-display:"Instrument Serif",Georgia,serif}:root[data-display=sans]{--font-display:"Instrument Sans",system-ui,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:14.5px;line-height:1.45;-webkit-font-smoothing:antialiased}#root{height:100%}button{cursor:pointer;border:none;background:none;padding:0}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}::selection{background:var(--accent-soft)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#D9D5C8;border-radius:8px;border:3px solid var(--bg)}::-webkit-scrollbar-track{background:transparent}.display{font-weight:400;letter-spacing:-.01em}.display,.screen-title{font-family:var(--font-display)}.screen-title{font-size:30px;line-height:1.1;margin:0}.screen-sub{color:var(--ink-3);font-size:13.5px;margin-top:4px}.overline{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}.btn,.overline{font-weight:600}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:var(--radius-sm);font-size:13.5px;line-height:1;transition:background .15s,color .15s,box-shadow .15s,transform .05s;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-ink)}.btn-ghost{background:transparent;color:var(--ink-2);border:1px solid var(--line)}.btn-ghost:hover{background:var(--surface);border-color:#D8D4C6}.btn-soft{background:var(--accent-soft);color:var(--accent-ink)}.btn-soft:hover{background:#DAE9E1}.btn-agent{background:var(--agent-soft);color:var(--agent);border:1px solid var(--agent-line)}.btn-agent:hover{background:#F2E2C8}.btn-sm{padding:5px 10px;font-size:12.5px}.btn-icon{padding:8px;border-radius:var(--radius-sm);color:var(--ink-2)}.btn-icon:hover{background:rgba(33,31,26,.06);color:var(--ink)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-1)}.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:600;line-height:1.5;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2)}.chip-btn{transition:background .15s,border-color .15s}.chip-btn:hover{background:#F1EEE3}.chip.active{background:var(--ink);border-color:var(--ink);color:#fff}.chip-accent{background:var(--accent-soft);border-color:transparent;color:var(--accent-ink)}.chip-agent{background:var(--agent-soft);border-color:var(--agent-line);color:var(--agent)}.chip-wait{background:var(--wait-soft);color:var(--wait)}.chip-danger,.chip-wait{border-color:transparent}.chip-danger{background:var(--danger-soft);color:var(--danger)}.ckb{width:20px;height:20px;min-width:20px;border-radius:7px;border:1.7px solid #c9c5b6;background:var(--surface);display:inline-flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.ckb.done,.ckb:hover{border-color:var(--accent)}.ckb.done{background:var(--accent)}.ckb svg{opacity:0;transform:scale(.6);transition:opacity .15s,transform .15s}.ckb.done svg{opacity:1;transform:scale(1)}.row-action{display:flex;align-items:flex-start;gap:12px;padding:11px 14px;border-radius:10px;transition:background .15s,opacity .3s,transform .3s}.row-action:hover{background:var(--surface-2)}.row-action.checking{opacity:0;transform:translateX(8px)}.row-action .title{font-weight:500}.row-action.done-row .title{text-decoration:line-through;color:var(--ink-3)}.nav-item{display:flex;align-items:center;gap:11px;width:100%;padding:8px 12px;border-radius:9px;font-weight:500;color:var(--ink-2);transition:background .12s,color .12s;text-align:left}.nav-item:hover{background:rgba(33,31,26,.05);color:var(--ink)}.nav-item.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1);border:1px solid var(--line);padding:7px 11px}.nav-item .count{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--ink-3);background:rgba(33,31,26,.06);border-radius:999px;padding:1px 8px}.nav-item.active .count{background:var(--accent-soft);color:var(--accent-ink)}.tab-item{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 0 6px;color:var(--ink-3);font-size:10.5px;font-weight:600}.tab-item.active{color:var(--accent-ink)}.modal-veil{position:fixed;inset:0;background:rgba(33,31,26,.4);z-index:90;display:flex;align-items:flex-end;justify-content:center;animation:veilIn .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@keyframes veilIn{0%{opacity:0}}.modal-sheet{background:var(--surface);width:100%;max-width:620px;border-radius:18px 18px 0 0;box-shadow:var(--shadow-2);animation:sheetUp .25s cubic-bezier(.3,1.1,.4,1);max-height:86vh;overflow-y:auto}@media (min-width:720px){.modal-veil{align-items:center;padding:24px}.modal-sheet{border-radius:18px;animation:popIn .2s cubic-bezier(.3,1.1,.4,1)}}@keyframes sheetUp{0%{transform:translateY(40px);opacity:0}}@keyframes popIn{0%{transform:scale(.97) translateY(8px);opacity:0}}.toast{display:flex;align-items:center;gap:10px;background:var(--ink);color:#F6F4EE;padding:10px 12px 10px 14px;border-radius:12px;box-shadow:var(--shadow-2);font-size:13px;font-weight:500;animation:toastIn .25s cubic-bezier(.3,1.1,.4,1);max-width:420px}@keyframes toastIn{0%{transform:translateY(14px);opacity:0}}.toast .undo{color:#F0C988;font-weight:700;padding:4px 8px;border-radius:7px}.toast .undo:hover{background:rgba(255,255,255,.12)}.field{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface);outline:none;transition:border-color .15s,box-shadow .15s;resize:none}.field:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.fade-in{opacity:1}.pulse-dot{width:7px;height:7px;border-radius:99px;background:var(--agent);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.divider{height:1px;background:var(--line-soft);border:none;margin:0}.seg{display:inline-flex;background:#EEEBE0;border-radius:9px;padding:3px;gap:2px}.seg button{padding:5px 12px;border-radius:7px;font-size:12.5px;font-weight:600;color:var(--ink-2)}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(33,31,26,.12)}.mic-wave{display:flex;align-items:center;gap:3px;height:26px}.mic-wave span{width:3px;border-radius:99px;background:var(--danger);animation:wave 1s ease-in-out infinite}@keyframes wave{0%,to{height:6px}50%{height:24px}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01s!important;transition-duration:.01s!important}}:root[data-theme=dark]{--bg:#171613;--surface:#201F1B;--surface-2:#262420;--ink:#ECE8DE;--ink-2:#B7B2A4;--ink-3:#8B8678;--line:#33312B;--line-soft:#2B2925;--accent-ink:color-mix(in oklab,var(--accent) 42%,white);--accent-soft:color-mix(in oklab,var(--accent) 26%,#201F1B);--agent:#D08B3A;--agent-soft:color-mix(in oklab,#D08B3A 24%,#201F1B);--agent-line:color-mix(in oklab,#D08B3A 40%,#201F1B);--danger:#D9684E;--danger-soft:color-mix(in oklab,#D9684E 24%,#201F1B);--wait:#9385D6;--wait-soft:color-mix(in oklab,#9385D6 24%,#201F1B);--shadow-1:0 1px 2px rgba(0,0,0,.3),0 4px 16px rgba(0,0,0,.32);--shadow-2:0 2px 6px rgba(0,0,0,.42),0 16px 48px rgba(0,0,0,.55)}:root[data-theme=dark] .seg{background:#2B2925}:root[data-theme=dark] .toast{background:#34322C;color:#ECE8DE}:root[data-theme=dark] .btn-icon:hover,:root[data-theme=dark] .nav-item:hover{background:rgba(255,255,255,.06);color:var(--ink)}:root[data-theme=dark] .nav-item .count{background:rgba(255,255,255,.07)}:root[data-theme=dark] .nav-item.active .count{background:var(--accent-soft);color:var(--accent-ink)}:root[data-theme=dark] .ckb{background:var(--surface);border-color:#4A4740}:root[data-theme=dark] .chip-btn:hover{background:#2E2C27}:root[data-theme=dark] .btn-ghost:hover{background:var(--surface-2);border-color:#44413A}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#3A382F}