:root{
  --bg:#0b0e14;--panel:#121722;--panel2:#171d29;--line:#252d3b;--text:#f4f6fa;--muted:#8e98a8;
  --accent:#7c9cff;--accent2:#a9baff;--good:#5ad69a;--bad:#ff6b78;--warn:#ffb85c;--shadow:0 16px 44px rgba(0,0,0,.28);
  --radius:22px;--safe-bottom:env(safe-area-inset-bottom,0px)
}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Text",Segoe UI,Roboto,sans-serif;background:radial-gradient(circle at 20% -10%,rgba(124,156,255,.13),transparent 34%),var(--bg);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{max-width:760px;margin:0 auto;min-height:100vh;padding-bottom:calc(88px + var(--safe-bottom))}.topbar{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;position:sticky;top:0;z-index:20;background:linear-gradient(to bottom,rgba(11,14,20,.96),rgba(11,14,20,.82));backdrop-filter:blur(18px)}.brand{font-weight:800;letter-spacing:-.04em;font-size:20px}.icon-btn{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--text)}.content{padding:8px 16px 28px}.bottom-nav{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:min(760px,100%);display:grid;grid-template-columns:repeat(5,1fr);padding:8px 8px calc(8px + var(--safe-bottom));background:rgba(13,16,23,.94);backdrop-filter:blur(24px);border-top:1px solid rgba(255,255,255,.06);z-index:30}.bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--muted);font-size:20px;padding:4px 2px;border-radius:12px}.bottom-nav a.active{color:var(--text);background:rgba(124,156,255,.1)}.bottom-nav small{font-size:10px}.hero-card,.card,.action-card,.todo-card,.history-card{background:linear-gradient(180deg,rgba(23,29,41,.98),rgba(17,22,32,.98));border:1px solid rgba(255,255,255,.065);box-shadow:var(--shadow);border-radius:var(--radius)}.hero-card{padding:22px;margin-bottom:14px}.hero-card.idle{padding:26px}.hero-card h1{font-size:30px;line-height:1.05;letter-spacing:-.04em;margin:8px 0 10px}.hero-card p{color:var(--muted);line-height:1.5}.eyebrow{font-size:11px;letter-spacing:.14em;color:var(--muted);font-weight:800}.hero-value{font-size:48px;font-weight:850;letter-spacing:-.055em;margin-top:10px}.hero-sub{color:var(--muted);margin-top:2px}.progress{height:10px;border-radius:999px;background:#222937;overflow:hidden;margin:20px 0 16px}.progress span{display:block;height:100%;background:linear-gradient(90deg,#718fff,#a8b9ff);border-radius:999px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stats-mini>div,.mini-counters>div{background:rgba(255,255,255,.035);padding:13px;border-radius:16px;display:flex;flex-direction:column;gap:4px}.stats-mini small,.mini-counters small,.quick-card small,.history-card small,.preset-card small{color:var(--muted)}.mini-counters strong{font-size:24px}.pill{display:inline-flex;padding:7px 11px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted);margin-top:10px}.pill.success{color:var(--good);border-color:rgba(90,214,154,.25);background:rgba(90,214,154,.07)}.countdown{margin-top:14px;color:var(--muted);font-weight:650}.card{padding:18px;margin:14px 0}.bonus-card{display:flex;align-items:end;justify-content:space-between}.bonus-card h2{font-size:34px;margin:3px 0 0;color:var(--good)}.section-title{font-size:16px;font-weight:800;margin-bottom:12px}.quick-grid{margin:12px 0}.quick-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:16px;display:flex;flex-direction:column;min-height:112px}.quick-card span{font-size:26px}.quick-card strong{margin-top:auto}.quick-card small{margin-top:4px}.schedule-line,.list-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}.schedule-line:last-child,.list-line:last-child{border-bottom:0}.muted{color:var(--muted);font-size:13px;line-height:1.5}.positive{color:var(--good)!important}.negative{color:var(--bad)!important}.danger-soft{background:linear-gradient(180deg,rgba(78,29,36,.42),rgba(31,20,25,.64));border-color:rgba(255,107,120,.16)}.hint{padding:12px 14px;border-radius:15px;background:rgba(124,156,255,.09);border:1px solid rgba(124,156,255,.16);font-size:13px;color:var(--accent2);margin:10px 0 14px}.hint.warning{background:rgba(255,184,92,.08);border-color:rgba(255,184,92,.2);color:#ffd19a}.page-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:4px 0 14px}.page-head h1{font-size:30px;letter-spacing:-.04em;margin:4px 0}.segmented{display:flex;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:4px}.segmented a{padding:8px 12px;border-radius:10px;color:var(--muted)}.segmented a.active{background:#252d3d;color:var(--text)}.stack{display:flex;flex-direction:column;gap:10px}.action-card,.todo-card{padding:14px}.action-main,.todo-main{display:flex;align-items:center;gap:12px}.grow{flex:1}.action-card h3,.todo-card h3,.preset-card h3{margin:0 0 4px;font-size:16px}.amount{font-weight:800;text-align:right;white-space:nowrap}.amount small{display:block;font-size:11px;color:var(--good)}.status-dot{width:12px;height:12px;border:2px solid #495263;border-radius:50%}.status-dot.required{border-color:var(--warn);background:rgba(255,184,92,.25)}.status-dot.done{background:var(--good);border-color:var(--good)}.btn{border:0;border-radius:14px;padding:12px 15px;font-weight:750;color:var(--text);background:#252d3b;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn.primary{background:linear-gradient(180deg,#7694ff,#607ee8);color:white}.btn.danger{background:linear-gradient(180deg,#df5a69,#b7414e)}.btn.ghost{background:transparent;border:1px solid var(--line)}.btn.ghost.danger{color:var(--bad);border-color:rgba(255,107,120,.22)}.btn.full{width:100%}.btn.compact{padding:9px 12px}.action-card .btn{margin-top:12px}.inline-form{display:flex;gap:10px;align-items:end}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-grid .span2{grid-column:span 2}label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:12px;font-weight:650}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:13px;background:#0e121a;color:var(--text);padding:12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent)}textarea{resize:vertical}.check{flex-direction:row;align-items:center;background:rgba(255,255,255,.025);padding:12px;border-radius:13px}.check input{width:auto}.action-edit-card{padding:0;overflow:hidden}.action-edit-card summary{list-style:none;padding:16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.action-edit-card summary::-webkit-details-marker{display:none}.action-edit-card summary div{display:flex;flex-direction:column;gap:4px}.action-edit-card summary small{color:var(--muted)}.action-edit-card form{margin:0 14px 14px}.todo-check{width:34px;height:34px;border-radius:12px;border:2px solid #465061;background:transparent;color:white;font-weight:900}.todo-card.completed{opacity:.58}.todo-card.completed h3{text-decoration:line-through}.todo-card.completed .todo-check{background:var(--good);border-color:var(--good);color:#082116}.todo-card p{margin:6px 0;color:#c8ced8;font-size:14px;line-height:1.45;white-space:pre-wrap}.todo-meta{font-size:12px;color:var(--muted);margin-top:7px}.todo-edit{margin-top:10px;border-top:1px solid rgba(255,255,255,.05);padding-top:10px}.todo-edit summary{cursor:pointer;color:var(--muted);font-size:13px}.todo-edit form{margin-top:12px}.empty{text-align:center;color:var(--muted);padding:32px 16px}.history-card{padding:16px;display:flex;justify-content:space-between;align-items:center}.history-card>div{display:flex;flex-direction:column;gap:4px}.history-money{text-align:right}.button-row{display:flex;gap:8px;margin-top:14px}.button-row form{flex:1}.button-row .btn{width:100%}.preset-head{display:flex;justify-content:space-between}.back-link{display:inline-block;color:var(--muted);margin-bottom:10px}.compact-hero{padding:18px}.compact-hero .hero-value{font-size:38px}.total{font-size:16px;font-weight:800}.flash{margin:0 16px 8px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--panel);font-size:13px}.flash.success{color:var(--good);border-color:rgba(90,214,154,.22)}.flash.error{color:var(--bad);border-color:rgba(255,107,120,.22)}.login-body{display:grid;place-items:center;min-height:100vh;padding:20px}.login-card{width:min(420px,100%);background:var(--panel);border:1px solid var(--line);border-radius:26px;padding:26px;box-shadow:var(--shadow)}.login-card h1{margin:14px 0 4px;font-size:32px;letter-spacing:-.04em}.login-card p{color:var(--muted);margin-top:0}.app-icon{width:64px;height:64px;border-radius:20px;background:linear-gradient(145deg,#7897ff,#425dc5);display:grid;place-items:center;font-weight:900;font-size:20px}.login-card .stack{margin-top:20px}.daily-field,.repeat-field{display:none}.reminder-form[data-mode="daily"] .daily-field{display:flex}.reminder-form[data-mode="repeat"] .repeat-field{display:flex}
@media(max-width:500px){.hero-value{font-size:42px}.bonus-card{align-items:center}.form-grid{grid-template-columns:1fr}.form-grid .span2{grid-column:span 1}.inline-form{flex-direction:column;align-items:stretch}.grid2.quick-grid{grid-template-columns:1fr 1fr}.content{padding-left:12px;padding-right:12px}.topbar{padding-left:14px;padding-right:14px}}
