:root,:root[data-theme=aurora]{--bg: #f3f1ff;--bg-alt: #e6e2fb;--surface: #ffffff;--surface-2: #ebe8fb;--surface-hover: #f6f4ff;--accent: #4f46e5;--accent-light: #6d5ff0;--accent-dim: rgba(99, 82, 235, .1);--accent-border: rgba(99, 82, 235, .28);--accent-grad: linear-gradient(135deg, #7c5cf6 0%, #4f46e5 55%, #2563eb 100%);--title-grad: linear-gradient(120deg, #3b2fb8 0%, #6d28d9 55%, #0e7490 100%);--on-accent: #ffffff;--text: #1b1a3a;--text-muted: #55547f;--text-faint: #8a89b0;--border: rgba(27, 26, 58, .09);--border-strong: rgba(27, 26, 58, .16);--glass: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .95);--glass-edge: rgba(79, 70, 229, .1);--input-bg: rgba(255, 255, 255, .85);--input-bg-focus: #ffffff;--ghost-bg: rgba(255, 255, 255, .6);--ghost-bg-hover: #ffffff;--card-tint: linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(224, 218, 255, .75));--ok-bg: rgba(22, 163, 74, .12);--ok-fg: #15803d;--ok-solid: #16a34a;--warn-bg: rgba(217, 119, 6, .14);--warn-fg: #92400e;--glow-1: rgba(124, 92, 246, .34);--glow-2: rgba(56, 189, 248, .3);--glow-3: rgba(244, 114, 182, .26);--shadow-rgb: 49, 46, 129;--meta: #f3f1ff;color-scheme:light}:root[data-theme=sunset]{--bg: #fff3ea;--bg-alt: #fde3d0;--surface: #ffffff;--surface-2: #fde9db;--surface-hover: #fff8f2;--accent: #c2410c;--accent-light: #ea580c;--accent-dim: rgba(234, 88, 12, .1);--accent-border: rgba(234, 88, 12, .3);--accent-grad: linear-gradient(135deg, #c2410c 0%, #be185d 100%);--title-grad: linear-gradient(120deg, #b43a0a 0%, #be185d 100%);--text: #2d1a12;--text-muted: #7a5442;--text-faint: #b08d7c;--border: rgba(45, 26, 18, .09);--border-strong: rgba(45, 26, 18, .16);--glass-edge: rgba(234, 88, 12, .12);--card-tint: linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(254, 215, 190, .75));--glow-1: rgba(251, 146, 60, .36);--glow-2: rgba(244, 114, 182, .28);--glow-3: rgba(250, 204, 21, .26);--shadow-rgb: 154, 52, 18;--meta: #fff3ea}:root[data-theme=midnight]{--bg: #0b1020;--bg-alt: #151b33;--surface: #151b33;--surface-2: #1d2547;--surface-hover: #1a2140;--accent: #a5b4fc;--accent-light: #c7d2fe;--accent-dim: rgba(129, 140, 248, .16);--accent-border: rgba(129, 140, 248, .38);--accent-grad: linear-gradient(135deg, #6366f1 0%, #7c3aed 100%);--title-grad: linear-gradient(120deg, #c7d2fe 0%, #a78bfa 55%, #67e8f9 100%);--on-accent: #ffffff;--text: #e9edff;--text-muted: #a0abd6;--text-faint: #6f7cae;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--glass: rgba(24, 31, 62, .62);--glass-border: rgba(255, 255, 255, .09);--glass-edge: rgba(129, 140, 248, .14);--input-bg: rgba(255, 255, 255, .06);--input-bg-focus: rgba(255, 255, 255, .1);--ghost-bg: rgba(255, 255, 255, .06);--ghost-bg-hover: rgba(255, 255, 255, .12);--card-tint: linear-gradient(135deg, rgba(99, 102, 241, .22), rgba(24, 31, 62, .66));--ok-bg: rgba(74, 222, 128, .16);--ok-fg: #86efac;--ok-solid: #4ade80;--warn-bg: rgba(251, 191, 36, .16);--warn-fg: #fcd34d;--glow-1: rgba(99, 102, 241, .4);--glow-2: rgba(34, 211, 238, .22);--glow-3: rgba(192, 132, 252, .28);--shadow-rgb: 0, 0, 0;--meta: #0b1020;color-scheme:dark}:root[data-theme=ivory]{--bg: #f5f3ef;--bg-alt: #ece9e3;--surface: #ffffff;--surface-2: #f0ede8;--surface-hover: #f7f5f1;--accent: #1e293b;--accent-light: #334155;--accent-dim: rgba(30, 41, 59, .07);--accent-border: rgba(30, 41, 59, .18);--accent-grad: linear-gradient(135deg, #3b4a63 0%, #1e293b 100%);--title-grad: linear-gradient(120deg, #1e293b 0%, #1e293b 100%);--text: #1e293b;--text-muted: #64748b;--text-faint: #94a3b8;--border: rgba(0, 0, 0, .08);--border-strong: rgba(0, 0, 0, .14);--glass-edge: rgba(30, 41, 59, .08);--card-tint: linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(240, 237, 232, .7));--glow-1: rgba(100, 116, 139, .2);--glow-2: rgba(226, 200, 160, .38);--glow-3: rgba(148, 163, 184, .22);--shadow-rgb: 30, 41, 59;--meta: #f5f3ef}:root{--radius: 20px;--radius-sm: 12px;--nav-width: 220px;--bottom-bar-h: 64px;--font-head: "Bricolage Grotesque", "Plus Jakarta Sans", system-ui, sans-serif;--font-body: "Plus Jakarta Sans", system-ui, sans-serif;--shadow: 0 12px 40px rgba(var(--shadow-rgb), .14);--shadow-sm: 0 1px 2px rgba(var(--shadow-rgb), .05), 0 8px 24px rgba(var(--shadow-rgb), .09)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.55;min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:-20%;right:-20%;bottom:-20%;left:-20%;z-index:0;pointer-events:none;background:radial-gradient(42% 38% at 18% 14%,var(--glow-1),transparent 70%),radial-gradient(38% 32% at 86% 24%,var(--glow-2),transparent 70%),radial-gradient(46% 40% at 62% 92%,var(--glow-3),transparent 70%);animation:drift 40s ease-in-out infinite alternate}@keyframes drift{0%{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(3%,2%,0) scale(1.06)}}@media(prefers-reduced-motion:reduce){body:before{animation:none}.page{animation:none!important}}h1,h2,h3{font-family:var(--font-head);font-weight:700;line-height:1.1;letter-spacing:-.025em}h1{font-size:clamp(2.25rem,8vw,3rem);font-weight:800;letter-spacing:-.035em;background:var(--title-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--text);padding-bottom:.08em}h2{font-size:1.5rem}h3{font-size:1.15rem}a{color:var(--accent);text-decoration:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-alt);border-radius:3px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:999px;font-family:var(--font-body);font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:transform .15s,box-shadow .15s,background .15s,color .15s}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent-grad);color:var(--on-accent);box-shadow:0 6px 16px rgba(var(--shadow-rgb),.28),inset 0 1px #ffffff38}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px rgba(var(--shadow-rgb),.34),inset 0 1px #ffffff38}.btn-ghost{background:var(--ghost-bg);color:var(--text-muted);border:1px solid var(--glass-edge);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-ghost:hover:not(:disabled){background:var(--ghost-bg-hover);color:var(--text)}.btn-danger{background:transparent;color:#dc2626;border:1px solid rgba(220,38,38,.25)}.btn-danger:hover{background:#dc26260f}.btn-sm{padding:5px 13px;font-size:.8rem}.btn-icon{background:transparent;color:var(--text-muted);border:none;padding:4px;cursor:pointer;border-radius:999px;display:inline-flex;align-items:center;transition:color .15s,background .15s}.btn-icon:hover{color:var(--text);background:var(--surface-2)}.card{background:var(--glass);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--glass-edge);border-radius:var(--radius);padding:18px;position:relative;z-index:1;transition:box-shadow .2s,transform .2s}.card:has(a):hover{transform:translateY(-2px);box-shadow:var(--shadow),inset 0 0 0 1px var(--glass-edge)}.card-gold{background:var(--card-tint)}.input,.select,.textarea{width:100%;background:var(--input-bg);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-body);font-size:.9rem;padding:10px 14px;transition:border-color .15s,box-shadow .15s,background .15s}.input:focus,.select:focus,.textarea:focus{outline:none;background:var(--input-bg-focus);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-dim)}.input::placeholder,.textarea::placeholder{color:var(--text-faint)}.textarea{resize:vertical;min-height:80px}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.label{display:block;font-size:.8rem;font-weight:600;color:var(--text-muted);margin-bottom:6px}.field{margin-bottom:14px}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:500}.badge-gold{background:var(--accent-dim);color:var(--accent-light);border:1px solid var(--accent-border)}.badge-muted{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.badge-green{background:var(--ok-bg);color:var(--ok-fg)}.badge-red{background:#dc26261a;color:#dc2626}.badge-blue{background:#2563eb1a;color:#1d4ed8}.priority-high{color:#dc2626}.priority-medium{color:#d97706}.priority-low{color:var(--text-faint)}.checkbox{width:20px;height:20px;border-radius:8px;border:2px solid var(--border-strong);background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s,background .15s}.checkbox.checked{background:var(--accent-grad);border-color:var(--accent)}.checkbox.checked svg{display:block}.checkbox svg{display:none;width:12px;height:12px}.row{display:flex;align-items:center;gap:8px}.row-between{display:flex;align-items:center;justify-content:space-between}.col{display:flex;flex-direction:column;gap:8px}.gap-4{gap:4px}.gap-12{gap:12px}.flex-1{flex:1}.text-muted{color:var(--text-muted)}.text-faint{color:var(--text-faint)}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-accent{color:var(--accent)}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.divider{height:1px;background:var(--border);margin:12px 0}.empty{text-align:center;padding:40px 20px;color:var(--text-muted)}.empty-icon{font-size:2.5rem;margin-bottom:12px;opacity:.4}.empty p{font-size:.9rem}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:20px;height:20px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page{animation:fadeIn .3s ease-out;position:relative;z-index:1}.done-text{text-decoration:line-through;color:var(--text-faint)}.inline-form{display:flex;gap:8px;align-items:flex-end}.inline-form .input{flex:1}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-active{background:var(--ok-solid)}.status-planning{background:#d97706}.status-done{background:var(--text-faint)}.status-paused{background:#2563eb}.seg{display:flex;gap:4px;padding:4px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px}.seg button{flex:1;padding:8px 10px;border:0;border-radius:999px;background:transparent;font:inherit;font-size:.875rem;color:var(--text-muted);cursor:pointer}.seg button.on{background:var(--accent-grad);color:var(--on-accent)}.seg button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fchip{padding:6px 12px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);font:inherit;font-size:.8125rem;cursor:pointer}.fchip.on{background:var(--accent-grad);color:var(--on-accent);border-color:transparent}.fchip.more{border-style:dashed}.fchip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fcount{opacity:.7;margin-left:2px}.tag{border:1px solid transparent}.tagc-blue{--tc: #3b82f6;--tfg: #1d4ed8}.tagc-teal{--tc: #14b8a6;--tfg: #0f766e}.tagc-green{--tc: #22c55e;--tfg: #15803d}.tagc-amber{--tc: #f59e0b;--tfg: #92400e}.tagc-orange{--tc: #f97316;--tfg: #9a3412}.tagc-pink{--tc: #ec4899;--tfg: #9d174d}.tagc-purple{--tc: #8b5cf6;--tfg: #5b21b6}.tagc-gray{--tc: #64748b;--tfg: #334155}:root[data-theme=midnight] .tagc-blue{--tfg: #93c5fd}:root[data-theme=midnight] .tagc-teal{--tfg: #5eead4}:root[data-theme=midnight] .tagc-green{--tfg: #86efac}:root[data-theme=midnight] .tagc-amber{--tfg: #fcd34d}:root[data-theme=midnight] .tagc-orange{--tfg: #fdba74}:root[data-theme=midnight] .tagc-pink{--tfg: #f9a8d4}:root[data-theme=midnight] .tagc-purple{--tfg: #c4b5fd}:root[data-theme=midnight] .tagc-gray{--tfg: #cbd5e1}.tag[class*=tagc-]{background:color-mix(in srgb,var(--tc) 16%,transparent);color:var(--tfg);border-color:color-mix(in srgb,var(--tc) 38%,transparent)}.tdot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0;background:var(--tc, var(--text-faint))}
