:root{--bg:#0b0d12;--panel:#12161d;--panel2:#171c25;--text:#f6f7fb;--muted:#8f98a8;--line:#252c37;--accent:#f4f6fb;--accentText:#111318;--safe:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:linear-gradient(180deg,#0b0d12,#0d1118 45%,#0b0d12);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}.app-shell{width:100%;max-width:620px;margin:0 auto;padding:18px 16px calc(94px + var(--safe))}.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:env(safe-area-inset-top,0px)}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.14em;color:#778195}.topbar h1,.sheet-head h2{margin:3px 0 0;font-size:25px;letter-spacing:-.04em}.top-actions{display:flex;gap:9px}.avatar,.icon-btn{width:44px;height:44px;border-radius:15px;border:1px solid var(--line);background:var(--panel2);color:#fff;display:grid;place-items:center;text-decoration:none;font-weight:900;font-size:18px}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0 16px}.summary div{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:16px;padding:12px 8px;text-align:center}.summary strong{display:block;font-size:20px}.summary span{font-size:10px;color:var(--muted)}.tabs{display:flex;gap:8px;overflow:auto;padding-bottom:10px;scrollbar-width:none}.tab{white-space:nowrap;border:1px solid var(--line);background:#11151c;color:#9aa3b2;padding:11px 13px;border-radius:999px;font-weight:800}.tab.active{background:#f3f4f6;color:#111318;border-color:#f3f4f6}.tab b{margin-left:4px}.task-list{display:grid;gap:12px;padding:5px 0 24px}.task-card{position:relative;display:grid;grid-template-columns:5px 1fr;border:1px solid var(--line);background:rgba(20,25,34,.94);border-radius:22px;overflow:hidden;box-shadow:0 14px 34px rgba(0,0,0,.14)}.card-strip{background:var(--card,#4d8cff)}.card-body{padding:16px}.card-head{display:flex;gap:8px;align-items:center;min-height:24px}.time{font-size:13px;color:#d8dde6;font-weight:800}.badge{font-size:9px;font-weight:900;letter-spacing:.08em;background:#3b2f18;color:#ffd98a;padding:5px 7px;border-radius:999px}.badge.urgent{background:#4a1c21;color:#ff9fa9}.task-card h3{font-size:18px;line-height:1.25;margin:8px 0 5px;letter-spacing:-.02em}.task-card p{font-size:14px;line-height:1.45;color:#b6becb;margin:0 0 10px}.meta{display:flex;gap:7px;flex-wrap:wrap}.meta span{font-size:11px;background:#0e1218;border:1px solid #252c37;padding:6px 8px;border-radius:999px;color:#aab3c1}.meta .carry{color:#ffbf76}.card-actions{display:flex;gap:7px;overflow:auto;margin-top:14px;padding-bottom:1px}.card-actions button{border:1px solid var(--line);background:#11161d;color:#d7dde7;border-radius:12px;padding:9px 11px;font-size:12px;font-weight:800;white-space:nowrap}.card-actions .success{background:#173424;color:#a8efbf}.color-red{--card:#ef5350}.color-orange{--card:#ff9f43}.color-yellow{--card:#f3cf4c}.color-green{--card:#4ecb8d}.color-blue{--card:#5b8def}.color-purple{--card:#9d74ff}.color-pink{--card:#ea72aa}.color-gray{--card:#8a94a6}.fab{position:fixed;right:max(20px,calc((100vw - 620px)/2 + 20px));bottom:calc(78px + var(--safe));width:58px;height:58px;border-radius:19px;border:0;background:#fff;color:#111;font-size:34px;line-height:1;box-shadow:0 12px 35px rgba(0,0,0,.35)}.bottom-nav{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:min(620px,100%);padding:9px 14px calc(9px + var(--safe));display:grid;grid-template-columns:repeat(4,1fr);background:rgba(12,15,20,.94);backdrop-filter:blur(18px);border-top:1px solid #222833;z-index:5}.bottom-nav button{background:transparent;border:0;color:#6f7a8b;font-size:20px}.bottom-nav button span{display:block;font-size:10px;margin-top:3px;font-weight:800}.bottom-nav .active{color:#fff}.hidden{display:none!important}.empty{text-align:center;padding:45px 20px;color:var(--muted)}.empty-icon{width:56px;height:56px;border-radius:18px;background:#151a22;margin:0 auto 10px;display:grid;place-items:center;font-size:26px;color:#65d28c}.empty h3{color:#fff;margin:4px}.empty p{margin:5px;font-size:13px}dialog{width:min(620px,100%);max-height:92%;margin:auto 0 0;border:0;border-radius:26px 26px 0 0;background:#12161d;color:#fff;padding:0}dialog::backdrop{background:rgba(0,0,0,.62);backdrop-filter:blur(5px)}#taskForm{padding:20px 18px calc(24px + var(--safe));overflow:auto}.sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}label{display:block;font-size:12px;color:#98a1b0;font-weight:800;margin:12px 0}input,textarea,select{width:100%;margin-top:7px;border:1px solid #29313d;background:#0d1117;color:#fff;border-radius:14px;padding:14px;font-size:16px;outline:none}textarea{resize:vertical}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}fieldset{border:0;padding:0;margin:15px 0}legend{font-size:12px;color:#98a1b0;font-weight:800;margin-bottom:9px}.colors{display:flex;gap:11px;flex-wrap:wrap}.swatch input{display:none}.swatch span{display:block;width:34px;height:34px;border-radius:12px;border:2px solid transparent;box-shadow:inset 0 0 0 2px rgba(255,255,255,.08)}.swatch input:checked+span{border-color:#fff}.swatch.red span{background:#ef5350}.swatch.orange span{background:#ff9f43}.swatch.yellow span{background:#f3cf4c}.swatch.green span{background:#4ecb8d}.swatch.blue span{background:#5b8def}.swatch.purple span{background:#9d74ff}.swatch.pink span{background:#ea72aa}.swatch.gray span{background:#8a94a6}.primary,.danger{width:100%;border:0;border-radius:15px;padding:15px;font-size:15px;font-weight:900}.primary{background:#fff;color:#111}.danger{margin-top:10px;background:#3b191d;color:#ff9ca6}.auth{min-height:100vh;display:grid;place-items:center;padding:22px}.login-card{width:min(390px,100%);padding:24px}.brand-mark{width:66px;height:66px;border-radius:22px;background:#fff;color:#111;display:grid;place-items:center;font-size:30px;font-weight:950}.login-card h1{font-size:38px;margin:18px 0 0;letter-spacing:-.06em}.subtitle{color:var(--muted);margin:2px 0 28px}.login-form label{margin-bottom:15px}.micro{color:#667085;font-size:11px;text-align:center;margin-top:18px}.alert{padding:12px 14px;border-radius:13px;font-size:13px}.alert.error{background:#401c22;color:#ffafb6}@media(min-width:700px){.app-shell{padding-top:30px}.fab{right:calc((100vw - 620px)/2 + 20px)}}
