:root{--bg: #1a1a1a;--panel: #262626;--panel-2: #2e2e2e;--raised: #333;--line: #333;--sheet: #212121;--text: #f0f0f0;--muted: #9a9a9a;--subtle: #8a8a88;--field: #707070;--accent: #77a9a3;--accent-bg: #2a3a38;--on-accent: #0f2220;--accent-dim: #5c8580;--danger: #ff6b6b;--tab-on: #161616;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.3;color-scheme:dark;color:var(--text);-webkit-tap-highlight-color:transparent}.desktop{--bg: #1f1f1f;--panel: #282828;--panel-2: #2f2f2f;--line: #3a3a3a;font-size:14px;line-height:1.4}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--bg)}body{font-variant-numeric:tabular-nums;overscroll-behavior-y:none}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}a{color:var(--accent);text-decoration:none}h1,h2,p{margin:0}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--muted)}.danger{color:var(--danger)}.strong{font-weight:600}.boot{min-height:100dvh;display:grid;place-items:center;color:var(--muted)}.card{background:var(--panel);border-radius:14px;overflow:hidden}.row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;min-height:50px;border-bottom:1px solid var(--line);width:100%;text-align:left;color:var(--text)}.row:last-child{border-bottom:0}.row small{display:block;font-size:13px;color:var(--muted);margin-top:2px}.section{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:26px 6px 10px;font-size:15px;font-weight:700;color:var(--muted)}.section a,.section button{display:inline-flex;align-items:center;min-height:44px;margin:-14px 0;font-size:15px;font-weight:700;color:var(--accent)}.hero{padding:18px 16px 16px;display:flex;flex-direction:column;gap:6px}.big{font-size:48px;line-height:1.05;font-weight:800;letter-spacing:-.5px}.bar{position:relative;height:6px;border-radius:3px;background:#3a3a3a;margin:16px 0 4px}.bar i{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:var(--accent)}.bar i.late{background:var(--danger)}.bar .today{position:absolute;top:-5px;width:2px;height:16px;border-radius:1px;background:var(--text)}.thin{height:4px;border-radius:2px;background:var(--line);margin-top:10px}.thin i{display:block;height:4px;border-radius:2px;background:var(--accent-dim)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 22px;border-radius:26px;font-weight:600;white-space:nowrap}.btn.primary{background:var(--accent);color:var(--on-accent)}.btn.text{color:var(--accent)}.btn.wide{width:100%}.btn:disabled{opacity:.45;cursor:default}.field{width:100%;height:48px;padding:0 14px;border-radius:14px;background:var(--panel-2);border:1px solid var(--field);color:var(--text);outline:0}.field:focus{border-color:var(--accent)}.label{display:block;margin:0 0 6px 4px;font-size:13px;color:var(--muted)}.chip{flex:none;display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 12px;border-radius:22px;background:var(--raised);border:1px solid var(--field);font-size:15px}.chip.on{background:var(--accent-bg);border-color:var(--accent);color:var(--accent);font-weight:500}.tok{background:var(--accent-bg);color:var(--accent);border-radius:6px}.round{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--raised);flex:none}.round.accent{background:var(--accent);color:var(--on-accent)}.error{color:var(--danger);font-size:14px}.empty{padding:18px 16px;color:var(--muted);font-size:15px}.mobile .page{max-width:640px;margin:0 auto;padding:calc(env(safe-area-inset-top,0px) + 18px) 16px 120px}.ltitle{font-size:34px;font-weight:800;letter-spacing:-.3px}.sub{margin:4px 0 20px;color:var(--muted);font-size:15px}.tabbar{position:fixed;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);max-width:616px;margin:0 auto;height:70px;padding:6px;display:flex;align-items:center;gap:2px;border-radius:34px;background:#282828eb;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:0 8px 30px #0000008c;z-index:40}.tab{flex:1 1 auto;padding:0 10px;white-space:nowrap;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:29px;font-size:12px;font-weight:500;color:#c8c8c8}.tab.on{background:var(--tab-on);color:var(--accent)}.plus{flex:none;width:52px;height:52px;margin:0 4px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--on-accent)}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:60;animation:fade .2s ease-out}.sheet{position:fixed;left:0;right:0;bottom:0;max-width:640px;margin:0 auto;max-height:92dvh;overflow-y:auto;background:var(--sheet);border-radius:24px 24px 0 0;padding:0 16px calc(env(safe-area-inset-bottom,0px) + 16px);z-index:61;animation:up .22s ease-out}.grab{display:grid;place-items:center;padding:10px 0 6px}.grab span{width:40px;height:5px;border-radius:3px;background:#555}.addcard{position:fixed;left:8px;right:8px;bottom:calc(env(safe-area-inset-bottom,0px) + 8px);max-width:624px;margin:0 auto;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid rgba(255,255,255,.08);border-radius:22px;box-shadow:0 12px 40px #0000008c;z-index:61;animation:up .2s ease-out}@keyframes up{0%{transform:translateY(100%)}}@keyframes fade{0%{opacity:0}}@media (prefers-reduced-motion: reduce){*{animation:none!important}}.desktop.shell{display:flex;min-height:100dvh}.side{width:250px;flex:none;position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:2px;padding:0 12px 20px;background:var(--panel)}.sbtop{height:52px;display:flex;align-items:center;gap:10px;padding:0 6px;font-weight:600}.avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--panel-2);border:1px solid var(--line);font-size:12px}.addt{display:flex;align-items:center;gap:10px;min-height:36px;padding:0 10px;margin-bottom:10px;border-radius:8px;color:var(--accent);font-weight:600}.addt .pl{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--on-accent)}.nav{display:flex;align-items:center;gap:10px;min-height:36px;padding:0 10px;border-radius:8px;color:var(--text);width:100%;text-align:left}.nav svg{color:var(--muted)}.nav:hover{background:var(--panel-2)}.nav.on{background:var(--accent-bg);color:var(--accent)}.nav.on svg{color:var(--accent)}.nav .c{margin-left:auto;font-size:12px;color:var(--muted)}.ntitle{margin:22px 10px 6px;font-size:13px;font-weight:600;color:var(--muted)}.sync{margin-top:auto;padding:0 10px;display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.desktop .main{flex:1;min-width:0;padding:60px 40px 40px}.desktop .wrap{max-width:800px;margin:0 auto}.desktop .wrap.wide{max-width:980px}.desktop{--panel-title: 17px}.desktop .ltitle{font-size:26px;font-weight:700;letter-spacing:0}.desktop .sub{margin:6px 0 20px;font-size:14px}.desktop .section{padding:22px 4px 8px}.desktop .section a,.desktop .section button{min-height:32px;margin:-8px 0;font-size:14px}.desktop .big{font-size:44px}.desktop .row{min-height:46px;padding:8px 16px}.desktop .row small{font-size:12px}.desktop .btn{height:40px;padding:0 18px;border-radius:8px}.desktop .field{height:40px;border-radius:8px;background:var(--bg);padding:0 12px}.desktop .chip{height:34px;border-radius:10px;font-size:14px}.cols{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;align-items:start}.cols>div>.section:first-child{padding-top:0}.cats3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.cats3>div{padding:14px 16px;border-right:1px solid var(--line);border-top:1px solid var(--line)}.cats3>div:nth-child(3n){border-right:0}.cats3>div:nth-child(-n+3){border-top:0}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:60}.modal{position:fixed;left:50%;top:80px;transform:translate(-50%);width:min(860px,94vw);max-height:86vh;overflow:auto;background:var(--bg);border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 60px #00000080;z-index:61}.quickadd{position:fixed;left:50%;top:96px;transform:translate(-50%);width:min(640px,94vw);padding:14px 16px;display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 60px #00000080;z-index:61}.qa{position:relative;font-size:18px}.desktop .qa{font-size:17px}.qa input,.qa .mirror{width:100%;padding:8px 4px;font-size:inherit;line-height:1.3;letter-spacing:normal;white-space:pre;border:0;background:none}.qa input{position:relative;color:transparent;caret-color:var(--accent);outline:0}.qa input::placeholder{color:var(--muted)}.qa .mirror{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;color:var(--text)}
