[data-v-6e44daa7]::-webkit-scrollbar{display:none}:root{--font-base: "Manrope", "Avenir Next", "Segoe UI", sans-serif;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-md: 13px;--font-size-lg: 18px;--page-bg: #f8fafc;--shell-bg: #ffffff;--shell-border: #e2e8f0;--text: #0f172a;--text-soft: #475569;--text-muted: #64748b;--hero-bg: #020617;--hero-panel: #0f172a;--hero-border: #334155;--hero-text: #f8fafc;--hero-muted: #cbd5e1;--accent: #10b981;--accent-strong: #059669;--danger: #dc2626;--card-bg: #ffffff;--card-border: #e2e8f0;--muted-bg: #f8fafc;--shadow-shell: 0 20px 40px rgb(15 23 42 / .14);--shadow-card: 0 6px 16px rgb(15 23 42 / .06)}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:var(--font-base);font-size:var(--font-size-md);line-height:1.45;background:var(--page-bg);color:var(--text);overflow-x:hidden}body.theme-dark{--page-bg: #020617;--shell-bg: #0b1220;--shell-border: #334155;--text: #f1f5f9;--text-soft: #cbd5e1;--text-muted: #94a3b8;--hero-bg: #020617;--hero-panel: #0f172a;--hero-border: #334155;--hero-text: #f8fafc;--hero-muted: #cbd5e1;--accent: #34d399;--accent-strong: #10b981;--danger: #f87171;--card-bg: #111827;--card-border: #334155;--muted-bg: #0f172a;--shadow-shell: 0 20px 45px rgb(2 6 23 / .5);--shadow-card: 0 10px 24px rgb(2 6 23 / .35)}.app-shell{min-height:100vh;width:100%;padding:6px}.app-shell__content{width:100%;max-width:1365px;margin:0 auto;padding:0;border:1px solid var(--shell-border);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-shell);background:var(--shell-bg);font-size:var(--font-size-md)}.card{border:0;border-bottom:1px solid var(--card-border);border-radius:0;padding:22px;background:var(--card-bg);box-shadow:none;border-top:1px solid var(--card-border)}.card--hero{background:radial-gradient(140% 120% at -5% -35%,rgb(56 189 248 / .16),transparent 58%),radial-gradient(100% 85% at 102% -30%,rgb(16 185 129 / .2),transparent 60%),var(--hero-bg);color:var(--hero-text);display:grid;gap:8px;padding:13px 15px}.hero-head{display:flex;flex-direction:column;gap:10px;align-items:stretch}.hero-main{width:100%;min-width:0;display:grid;gap:6px}.hero-brand-block{width:100%;min-width:0}.eyebrow{margin:0;font-size:clamp(28px,2.6vw,34px);font-weight:850;letter-spacing:-.03em;line-height:.96;text-transform:uppercase;font-style:italic}.hero-sub{margin:3px 0 0;color:#34d399;text-transform:uppercase;font-size:11px;letter-spacing:.15em;font-weight:650;overflow-wrap:anywhere}.calendar-nav{display:flex;align-items:center;gap:8px;margin:6px 0 2px}.btn--calendar{min-width:96px;padding:9px 10px;border-color:#64748b;background:#0f172a94}.calendar-nav--top-right{margin:0;width:100%;justify-content:flex-end}.calendar-nav--top-right .btn--calendar{min-width:104px}.month-loading-skeleton{margin-top:8px;display:grid;gap:5px;max-width:300px}.month-loading-skeleton span{display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,#94a3b82e,#e2e8f07a,#94a3b82e);background-size:220% 100%;animation:nav-loading-shimmer 1.25s linear infinite}.month-loading-skeleton span:nth-child(1){width:86%}.month-loading-skeleton span:nth-child(2){width:78%}.month-loading-skeleton span:nth-child(3){width:64%}.month-nav-loading .habit-grid,.month-nav-loading .chart,.month-nav-loading .stats-grid,.month-nav-loading .kpis,.month-nav-loading .rewards-grid{opacity:.88}@keyframes nav-loading-shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}.hero-side{min-width:0;width:100%;max-width:none;display:grid;gap:7px}.hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:7px}.btn{border:1px solid var(--hero-border);background:#1e293b;color:#f8fafc;border-radius:10px;padding:9px 11px;font-size:var(--font-size-sm);font-weight:650;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;transition:background .18s ease,border-color .18s ease}.btn:hover{background:#334155}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--secondary{background:#10b9811f;border-color:#05966959;color:#065f46}.btn--secondary:hover{background:#10b98133;border-color:#0596697a}.btn--ghost{background:transparent;border-color:var(--card-border);color:var(--text-muted)}.kpis{display:grid;gap:8px}.kpis--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi{border:1px solid #334155;border-radius:12px;background:#1e293b;text-align:center;padding:9px 12px;min-height:66px;display:grid;align-content:center}.kpi p{margin:0;text-transform:uppercase;color:#94a3b8;font-size:var(--font-size-xs);font-weight:500;letter-spacing:.07em}.kpi strong{display:block;margin-top:1px;color:#fff;font-size:clamp(24px,2.1vw,31px);font-weight:750;line-height:1}.balance-math{border:1px solid #334155;border-radius:11px;background:#0f172a8c;padding:9px 10px}.balance-math h3{margin:0 0 6px;color:#cbd5e1;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.balance-math__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px}.balance-math__grid p{margin:0;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#cbd5e1;font-size:var(--font-size-sm);font-weight:500}.balance-math__grid span{color:#94a3b8}.balance-math__grid strong{color:#f8fafc;font-weight:600}.kpi--wallet{background:var(--accent-strong);border-color:var(--accent-strong)}.kpi--wallet p,.kpi--wallet strong{color:#ecfdf5}.focus-card{border:1px solid var(--hero-border);background:#0f172ad9;border-radius:12px;padding:10px}.focus-card--hero{width:100%;max-width:none}.focus-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.focus-head strong{font-size:var(--font-size-sm);color:#6ee7b7;letter-spacing:.08em;text-transform:uppercase}.focus-day-select{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.focus-day-select label,.focus-day-select span{color:#cbd5e1;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase}.focus-day-select select{border:1px solid #475569;background:#1e293b;color:#f8fafc;border-radius:8px;font-size:var(--font-size-sm);padding:5px 8px;font-weight:700}.focus-list{margin-top:8px;display:grid;gap:7px}.focus-item{display:flex;align-items:flex-start;gap:8px;border:1px solid #475569;border-radius:8px;background:#1e293bb8;padding:8px}.focus-item label{flex:1;color:#f1f5f9;font-size:var(--font-size-md);font-weight:500;line-height:1.3}.focus-item label.is-done{color:#94a3b8;text-decoration:line-through}.focus-delete{border:0;background:transparent;color:#94a3b8;font-weight:700;cursor:pointer}.focus-empty{margin:8px 0 0;border:1px dashed #475569;border-radius:8px;padding:10px;color:#94a3b8;text-align:center;font-size:var(--font-size-sm)}.focus-input-row{margin-top:8px;display:grid;grid-template-columns:1fr auto;gap:8px}.focus-input-row input,.review-fields input,.check-add-row input,.check-item input[type=text],.reflection-grid textarea{width:100%;border:1px solid var(--card-border);border-radius:8px;background:var(--card-bg);color:var(--text);font-size:var(--font-size-sm);padding:9px 10px}.focus-input-row input{border-color:#475569;background:#1e293b;color:#f8fafc}.focus-input-row input::placeholder,.review-fields input::placeholder,.check-add-row input::placeholder,.reflection-grid textarea::placeholder{color:var(--text-muted)}.banner{margin:2px 0 0;border-radius:8px;padding:9px 11px;font-size:var(--font-size-sm);font-weight:600}.banner--success{border:1px solid rgb(16 185 129 / .45);background:#10b98129;color:#6ee7b7}.banner--error{border:1px solid rgb(220 38 38 / .45);background:#dc26261f;color:#fecaca}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}.section-head h2{margin:0;color:var(--text-soft);font-size:var(--font-size-lg);font-weight:800;display:flex;align-items:center;gap:8px}.section-title{display:inline-flex;align-items:center;gap:8px}.section-title__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:7px;background:#0f172a;color:#fff;font-size:16px;line-height:1}.section-head small{color:var(--text-muted);font-size:var(--font-size-sm);font-weight:500}#analytics{background:radial-gradient(120% 90% at 4% -22%,rgb(16 185 129 / .12),transparent 62%),radial-gradient(95% 85% at 100% -15%,rgb(14 165 233 / .1),transparent 68%),linear-gradient(180deg,#f9fcff,#f8fdfa 55%,#f9fbfd)}#analytics .chart-wrap,#analytics .progress-block,#analytics .stat-card{border:1px solid #d7e0ec;border-radius:16px;background:linear-gradient(180deg,#fff,#f9fcfb);box-shadow:0 1px 2px #0f172a0d,0 10px 18px #0f172a0d}#analytics .chart-wrap{padding:12px 12px 2px}#analytics .chart{height:210px}#analytics .chart__grid line{stroke:#dce4ee}#analytics .chart__y-labels text,#analytics .chart__x-labels text{fill:#6f829c;font-size:12px}#analytics .chart__y-label,#analytics .chart__x-label{font-weight:600;letter-spacing:.02em;font-family:Avenir Next,Segoe UI,sans-serif}#analytics .chart__y-label{text-anchor:end;dominant-baseline:middle}#analytics .chart__x-label{text-anchor:middle;dominant-baseline:middle;font-size:9.5px;letter-spacing:0}#analytics .chart__x-labels text.chart__x-label--weekend{fill:#0f9f78}#analytics .chart-legend-note{margin:8px 4px 0;display:inline-flex;align-items:center;gap:6px;color:#6f829c;font-size:11px;font-weight:600;letter-spacing:.01em}#analytics .chart-legend-note__dot{color:#0f9f78;font-size:10px;line-height:1}#analytics .chart__area{fill:url(#analyticsAreaGradient)}#analytics .chart__line{stroke:url(#analyticsLineGradient);stroke-width:2;filter:url(#analyticsLineGlow)}#analytics .chart__dot{fill:#16b081;stroke:#f4fffb;stroke-width:2.2}#analytics .progress-head strong{font-size:var(--font-size-lg);line-height:1;color:#0b9f78}#analytics .progress-track{height:16px;margin-top:10px;background:#d2dbe6}#analytics .progress-fill{background:linear-gradient(90deg,#10b981,#0aa06f)}#analytics .progress-note{font-size:var(--font-size-md);font-weight:600;color:#5f748f}#analytics .stats-grid{margin-top:16px;gap:12px}#analytics .stat-card p{font-size:var(--font-size-sm);color:#5f748f}#analytics .stat-card strong{line-height:1.1;color:#16314d}#analytics .stat-card:last-child strong{color:#089f76}body.theme-dark #analytics .stat-card p{color:#9fb2c9}body.theme-dark #analytics .stat-card strong{color:#e5edf7}body.theme-dark #analytics .stat-card:last-child strong{color:#6ee7b7}.chart-wrap{border:1px solid var(--card-border);border-radius:12px;background:var(--card-bg);overflow:hidden;box-shadow:var(--shadow-card);padding:6px 10px 0}.chart{display:block;width:100%;height:210px}.chart__grid line{stroke:#e2e8f0;stroke-width:1}.chart__y-labels text,.chart__x-labels text{fill:#64748b;font-size:12px;font-weight:500}.chart__y-label,.chart__x-label{font-weight:600;letter-spacing:.02em}.chart__y-label{text-anchor:end;dominant-baseline:middle}.chart__x-labels text{text-anchor:middle;font-size:9.5px;font-weight:500;dominant-baseline:middle}.chart__area{fill:#10b98124}.chart__line{fill:none;stroke:var(--accent);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.chart__dot{fill:var(--accent);stroke:#fff;stroke-width:2}.progress-block{margin-top:12px;border:1px solid var(--card-border);border-radius:12px;background:var(--card-bg);padding:12px;box-shadow:var(--shadow-card)}.progress-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.progress-head p{margin:0;color:var(--text-muted);text-transform:uppercase;font-size:var(--font-size-xs);font-weight:700;letter-spacing:.08em}.progress-head strong{color:var(--accent-strong);font-size:var(--font-size-md);font-weight:800}.progress-track{margin-top:8px;height:12px;border-radius:999px;overflow:hidden;background:#e2e8f0}.progress-fill{height:100%;width:0;background:var(--accent);box-shadow:0 0 10px #10b9816b}.progress-note{margin:8px 0 0;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:500}.stats-grid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;min-width:0}.stat-card{border:1px solid var(--card-border);border-radius:12px;background:var(--card-bg);box-shadow:var(--shadow-card);padding:12px}.stat-card p{margin:0;color:var(--text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:600;letter-spacing:.08em}.stat-card strong{display:block;margin-top:4px;color:var(--text);font-size:var(--font-size-lg);font-weight:650}.empty-state{border:1px dashed var(--card-border);border-radius:10px;color:var(--text-muted);font-size:var(--font-size-sm);padding:14px}.habit-grid-wrap{overflow-x:hidden;max-width:100%}.habit-grid{border-collapse:collapse;width:100%;min-width:0;table-layout:fixed}.habit-grid th,.habit-grid td{border:1px solid var(--card-border);padding:4px 2px;text-align:center;font-size:10px}.habit-grid thead th{min-height:54px}.habit-grid tbody td{min-height:40px}.habit-grid thead tr{background:#e2e8f0}.habit-grid__sticky{position:sticky;left:0;z-index:2;background:var(--card-bg);text-align:left;width:170px;min-width:170px;max-width:170px;padding:6px 8px;font-size:11px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;border-right-width:2px}.habit-grid__name{font-weight:600;font-size:11px}.habit-grid__pts{color:var(--text-muted);font-weight:800;background:var(--muted-bg);width:36px;min-width:36px;max-width:36px}.habit-grid__day{width:auto;min-width:0;font-weight:700;color:var(--text-muted)}.habit-grid__day--weekend{background:#10b98124;color:var(--accent-strong)}.habit-grid__day--current{background:#10b9812e;color:var(--accent-strong)}.habit-grid__cell--weekend{background:#10b98112}.habit-grid__check{width:18px;height:18px;padding:0;border-radius:4px;border:1px solid var(--card-border);background:var(--muted-bg);color:var(--text-muted);font-weight:700;font-size:10px;line-height:1;cursor:pointer}.habit-grid__check--done{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}.habit-grid__totals td{background:#0f172a;color:#fff;font-weight:800}.habit-grid__totals .habit-grid__sticky{background:#0f172a;color:#fff}.habit-grid__totals .habit-grid__cell--weekend{background:#132235}.habits-editor{padding:4px 0 10px}.habits-editor__hint{margin:0 0 14px;color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.5}.habits-editor__list{display:grid;gap:6px;margin-bottom:12px}.habits-editor__row{display:flex;align-items:center;gap:8px;background:var(--muted-bg);border:1px solid var(--card-border);border-radius:10px;padding:8px 10px}.habits-editor__num{min-width:20px;text-align:right;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:700;flex-shrink:0}.habits-editor__name{flex:1;min-width:0;border:1px solid var(--card-border);background:var(--card-bg);color:var(--text);border-radius:8px;padding:7px 10px;font-size:var(--font-size-md);font-family:var(--font-base);transition:border-color .15s}.habits-editor__name:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #10b9812e}.habits-editor__name--error{border-color:var(--danger)}.habits-editor__pts-label{display:flex;align-items:center;gap:5px;flex-shrink:0;font-size:var(--font-size-xs);font-weight:700;color:var(--text-muted);text-transform:uppercase}.habits-editor__pts{width:54px;border:1px solid var(--card-border);background:var(--card-bg);color:var(--text);border-radius:8px;padding:7px 8px;font-size:var(--font-size-sm);font-weight:700;text-align:center;transition:border-color .15s}.habits-editor__pts:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #10b9812e}.habits-editor__delete{flex-shrink:0;border:1px solid var(--card-border);background:transparent;color:var(--text-muted);border-radius:8px;padding:7px 10px;font-size:var(--font-size-sm);font-weight:700;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.habits-editor__delete:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.habits-editor__add{margin-bottom:14px}.habits-editor__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--card-border);padding-top:12px;margin-top:4px}.habits-editor__warn{color:var(--danger);font-size:var(--font-size-xs);font-weight:600}@media (max-width: 1200px){.habit-grid__sticky{width:150px;min-width:150px;max-width:150px;font-size:10px;padding:6px}.habit-grid__pts{width:30px;min-width:30px;max-width:30px}.habit-grid th,.habit-grid td{font-size:9px;padding:3px 1px}.habit-grid__check{width:16px;height:16px;font-size:9px}}@media (max-width: 768px){.habit-grid-wrap{overflow-x:hidden}.habit-grid__sticky{width:132px;min-width:132px;max-width:132px;font-size:9px;line-height:1.25;padding:5px}.habit-grid__pts{width:24px;min-width:24px;max-width:24px;font-size:9px}.habit-grid th,.habit-grid td{font-size:8px;padding:2px 1px}.habit-grid__check{width:14px;height:14px;font-size:8px;border-radius:3px}.habits-editor__row{flex-wrap:wrap;align-items:flex-start;gap:6px}.habits-editor__num{min-width:16px}.habits-editor__name{flex-basis:calc(100% - 26px)}.habits-editor__pts-label{margin-left:22px}.habits-editor__actions{display:grid;grid-template-columns:1fr;gap:8px}.habits-editor__actions .btn,.habits-editor__add{width:100%}.section-head{align-items:flex-start}}body.theme-dark .habits-editor__row{background:#0f1a2a;border-color:#314256}body.theme-dark .habits-editor__name,body.theme-dark .habits-editor__pts{background:#15263d;border-color:#425977;color:#f8fafc}body.theme-dark .habits-editor__name:focus,body.theme-dark .habits-editor__pts:focus{border-color:#86efac;box-shadow:0 0 0 3px #10b98138}body.theme-dark .habits-editor__name--error{border-color:#f87171}body.theme-dark .habits-editor__delete{border-color:#425977;color:#94a3b8}body.theme-dark .habits-editor__delete:hover{background:#dc26262e;color:#f87171;border-color:#7f1d1d}body.theme-dark .habits-editor__warn{color:#f87171}body.theme-dark .card--hero{background:radial-gradient(152% 124% at -10% -40%,rgb(56 189 248 / .29),transparent 56%),radial-gradient(110% 92% at 108% -34%,rgb(16 185 129 / .34),transparent 60%),linear-gradient(165deg,#010511,#030b19 54%,#041427)}body.theme-dark .eyebrow{color:#fcfdff;text-shadow:0 2px 16px rgb(7 20 42 / .52)}body.theme-dark .hero-sub{color:#86efac;text-shadow:0 0 11px rgb(16 185 129 / .24)}body.theme-dark .btn{border-color:#55657d;background:#1a2940;color:#f8fafc}body.theme-dark .btn:hover{background:#233756}body.theme-dark .btn--secondary{background:#0b1829d1;border-color:#60728c}body.theme-dark .btn--calendar{border-color:#647a96;background:#091527c7}body.theme-dark .kpi{border-color:#425977;background:#15263d}body.theme-dark .kpi p{color:#b8c6d8}body.theme-dark .kpi strong{color:#fff}body.theme-dark .kpi--wallet{background:linear-gradient(180deg,#0ea870,#0a8f64);border-color:#10b981}body.theme-dark .kpi--wallet p,body.theme-dark .kpi--wallet strong{color:#f0fdf4}body.theme-dark .balance-math{border-color:#425977;background:#081323c7}body.theme-dark .balance-math h3{color:#dbe7f5}body.theme-dark .balance-math__grid p{color:#d2deed}body.theme-dark .balance-math__grid span,body.theme-dark .focus-day-select label,body.theme-dark .focus-day-select span{color:#a7b9cf}body.theme-dark .focus-card{border-color:#425977;background:#0a1525e6}body.theme-dark .focus-head strong{color:#86efac}body.theme-dark .focus-day-select select{border-color:#5d7491;background:#15263d;color:#f8fafc}body.theme-dark .focus-item{border-color:#4b6382;background:#15263dd1}body.theme-dark .focus-item label{color:#f8fbff}body.theme-dark .focus-empty,body.theme-dark .focus-delete{color:#9fb2c9}body.theme-dark .card--hero .btn:hover,body.theme-dark .card--hero .btn--calendar:hover,body.theme-dark .card--hero .focus-day-select select:hover{border-color:#7b93b1}body.theme-dark .card--hero .focus-item:hover{border-color:#6f89ab}body.theme-dark .card--hero .focus-delete:hover{color:#c6d6ea}body.theme-dark .card--hero button:focus-visible,body.theme-dark .card--hero select:focus-visible,body.theme-dark .card--hero input[type=checkbox]:focus-visible,body.theme-dark .card--hero input[type=text]:focus-visible{outline:2px solid #86efac;outline-offset:2px;box-shadow:0 0 0 4px #10b98147}body.theme-dark .habit-grid__day--weekend{background:#10b98138;color:#10b981}body.theme-dark .habit-grid__cell--weekend{background:#10b9811f}body.theme-dark .habit-grid__totals .habit-grid__cell--weekend{background:#17304a}.dashboard-columns{display:grid;grid-template-columns:1fr;border-top:1px solid var(--card-border);min-width:0}#rewards{background:var(--card-bg)}#rewards .column-card{padding:16px}#rewards .column-card h2{margin-bottom:14px;color:var(--text-soft);font-size:var(--font-size-lg);font-weight:800;line-height:1.2;letter-spacing:normal;text-transform:none;display:flex;align-items:center;gap:8px}#rewards .rewards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#rewards .reward-item{border:1px solid #d9e0e9;border-radius:12px;background:#fff;box-shadow:none;padding:10px 10px 12px;min-height:112px;display:flex;flex-direction:column;gap:6px}#rewards .reward-item p{color:#5f738c;font-size:var(--font-size-xs)}#rewards .reward-item h3{min-height:30px;color:#10233f;font-size:var(--font-size-md);line-height:1.25}#rewards .reward-btn{margin-top:auto;min-height:30px;padding:7px 10px;border-radius:8px;background:#0e1a36;font-size:var(--font-size-sm)}#rewards .reward-btn:disabled{background:#e9eef5;color:#8ca1bc}#rewards .ledger-wrap{border:1px solid #d9e0e9;border-radius:12px;max-height:none;min-height:148px;box-shadow:none}#rewards .ledger-table{min-width:0}#rewards .ledger-table th{background:#dce4ee;color:#304763;font-size:var(--font-size-xs)}#rewards .ledger-table td{font-size:var(--font-size-sm)}#rewards .ledger-table__empty{color:#90a2b8;font-size:var(--font-size-sm)}#rewards .ledger-actions{margin-top:16px}#rewards .ledger-actions .btn--ghost{border:0;background:transparent;color:#91a3ba;padding:0;font-size:var(--font-size-sm);letter-spacing:.04em}body.theme-dark #rewards{background:radial-gradient(115% 90% at 4% -18%,rgb(16 185 129 / .14),transparent 62%),radial-gradient(100% 85% at 100% -14%,rgb(56 189 248 / .1),transparent 68%),#0b1220}body.theme-dark #rewards .column-card h2{color:#dbeafe}body.theme-dark #rewards .reward-item{border-color:#314256;background:linear-gradient(180deg,#111d2d,#0f1a2a)}body.theme-dark #rewards .reward-item p{color:#9fb2c8}body.theme-dark #rewards .reward-item h3{color:#e2ebf8}body.theme-dark #rewards .reward-btn{border-color:#10b981;background:linear-gradient(180deg,#14b982,#0ea573);color:#f0fdf4}body.theme-dark #rewards .reward-btn:hover:not(:disabled){background:linear-gradient(180deg,#1ac38a,#12ad7b)}body.theme-dark #rewards .reward-btn:disabled{background:#1f2d41;color:#7f94ad}body.theme-dark #rewards .ledger-wrap{border-color:#314256;background:#0f1a2a}body.theme-dark #rewards .ledger-table th{background:#18283d;color:#b9cae0}body.theme-dark #rewards .ledger-table td,body.theme-dark #rewards .ledger-table__empty{color:#9fb2c8}body.theme-dark #rewards .ledger-actions .btn--ghost{color:#b4c4d8}body.theme-dark #rewards .reward-btn:focus-visible,body.theme-dark #rewards .ledger-actions .btn--ghost:focus-visible{outline:2px solid #86efac;outline-offset:2px;box-shadow:0 0 0 4px #10b9813d}.column-card{border-bottom:0;min-width:0}.column-card h2{margin:0 0 16px;font-size:var(--font-size-lg);text-transform:uppercase;font-weight:900;letter-spacing:-.01em}.rewards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;min-width:0}.reward-item{border:1px solid var(--card-border);border-radius:12px;background:var(--card-bg);box-shadow:var(--shadow-card);padding:12px;display:grid;gap:8px}.reward-item p{margin:0;color:var(--text-muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:800;letter-spacing:.08em}.reward-item h3{margin:0;color:var(--text);font-size:var(--font-size-md);font-weight:700;line-height:1.25;min-height:34px}.reward-btn{border:0;border-radius:8px;background:#0f172a;color:#fff;font-size:var(--font-size-sm);font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.reward-btn:not(:disabled):hover{background:var(--accent-strong)}.reward-btn:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed}.rewards-editor,.ledger-editor{display:grid;gap:10px}.rewards-editor__list{display:grid;gap:8px}.rewards-editor__row{display:grid;grid-template-columns:minmax(80px,.28fr) minmax(200px,1fr) auto auto;gap:8px;align-items:center;border:1px solid var(--card-border);border-radius:10px;background:var(--muted-bg);padding:8px}.rewards-editor__type,.rewards-editor__item,.rewards-editor__cost,.ledger-editor__input,.ledger-editor__cost{width:100%;border:1px solid var(--card-border);border-radius:8px;background:var(--card-bg);color:var(--text);padding:8px 10px;font-size:var(--font-size-sm)}.rewards-editor__cost-label{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase}.rewards-editor__cost,.ledger-editor__cost{width:92px;text-align:center;font-weight:700}.ledger-editor__actions{display:flex;justify-content:flex-start}body.theme-dark .rewards-editor__row{background:#0f1a2a;border-color:#314256}body.theme-dark .rewards-editor__type,body.theme-dark .rewards-editor__item,body.theme-dark .rewards-editor__cost,body.theme-dark .ledger-editor__input,body.theme-dark .ledger-editor__cost{background:#111827;border-color:#374151;color:#dbeafe}@media (max-width: 920px){.rewards-editor__row{grid-template-columns:1fr;gap:6px}.rewards-editor__cost,.ledger-editor__cost{width:100%;text-align:left}.ledger-editor__actions .btn,.rewards-editor__add{width:100%}}.ledger-wrap{border:1px solid var(--card-border);border-radius:12px;overflow:auto;max-height:380px;background:var(--card-bg);box-shadow:var(--shadow-card)}.ledger-table{width:100%;border-collapse:collapse;min-width:580px}.ledger-table th,.ledger-table td{border-bottom:1px solid var(--card-border);text-align:left;padding:10px;font-size:var(--font-size-sm)}.ledger-table th{position:sticky;top:0;background:#f1f5f9;color:var(--text-muted);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.08em;font-weight:800}.ledger-table__cost{color:var(--danger);text-align:right;font-weight:800}.ledger-table__empty{text-align:center;color:var(--text-muted);font-style:italic}.ledger-actions{margin-top:14px;display:flex;justify-content:flex-end}.review-snapshot{margin:6px 0 0;color:var(--text-muted);font-size:var(--font-size-sm)}.review-grid{margin-top:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;min-width:0}.review-card{border:1px solid var(--card-border);border-radius:12px;background:var(--muted-bg);padding:12px}.review-card h3{margin:0 0 10px;color:var(--text-soft);text-transform:uppercase;font-size:var(--font-size-sm);letter-spacing:.08em}.review-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.review-fields label,.reflection-grid label{display:grid;gap:4px;color:var(--text-soft);font-size:var(--font-size-sm);font-weight:700}.check-list{display:grid;gap:7px}.check-item{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;border:1px solid var(--card-border);border-radius:8px;background:var(--card-bg);padding:8px}.check-item button{border:0;background:transparent;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:800;cursor:pointer}#weekly-review{background:var(--card-bg);padding-top:14px}#weekly-review .section-head{margin-bottom:6px;align-items:flex-start}#weekly-review .section-head h2{color:var(--text-soft);font-size:var(--font-size-lg);font-weight:800;line-height:1.2;letter-spacing:normal;display:flex;align-items:center;gap:8px}#weekly-review .section-head small{margin-top:2px;display:block;color:#5f748f;font-size:var(--font-size-sm)}#weekly-review .section-head .btn--secondary{background:#edf2f8;border:1px solid #c9d4e2;color:#173252;border-radius:10px;padding:9px 12px;font-size:var(--font-size-sm)}#weekly-review .review-snapshot{margin:2px 0 0;color:#6d8098;font-size:var(--font-size-sm)}#weekly-review .review-grid{margin-top:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#weekly-review .review-card{border:1px solid #d6dfea;border-radius:14px;background:#f8fbff;padding:12px}#weekly-review .review-card h3{margin-bottom:10px;color:#334b68;font-size:var(--font-size-sm);letter-spacing:.07em}#weekly-review .review-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#weekly-review .review-fields label,#weekly-review .reflection-grid label{color:#324965;font-size:var(--font-size-sm);font-weight:700}#weekly-review .metric-guide{display:block;margin-top:6px;color:var(--text-muted);font-size:11px;line-height:1.4;font-weight:500}#weekly-review .review-fields input,#weekly-review .check-add-row input,#weekly-review .check-item input[type=text],#weekly-review .reflection-grid textarea{border:1px solid #cad5e4;border-radius:8px;background:#fff;color:#142f4d;font-size:12px;padding:8px 10px}#weekly-review .check-list{gap:8px}#weekly-review .check-item{grid-template-columns:auto 1fr auto;border-color:#d5deea;border-radius:10px;background:#fff;padding:6px 8px}#weekly-review .check-item input[type=checkbox]{width:16px;height:16px;margin:0}#weekly-review .check-item button{color:#8ea1b8;font-size:18px;line-height:1}#weekly-review .check-add-row{margin-top:10px;grid-template-columns:1fr auto;gap:8px}#weekly-review .check-add-row .btn{min-width:56px;border:1px solid #8d98a8;background:#9098a6;color:#fff;border-radius:8px;padding:8px 12px}#weekly-review .reflection-grid{margin-top:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#weekly-review .reflection-grid textarea{min-height:42px}#weekly-review .reflection-grid__wide{grid-column:1 / -1}body.theme-dark #weekly-review .review-card{border-color:#334155;background:#0f172a}body.theme-dark #weekly-review .section-head h2,body.theme-dark #weekly-review .review-card h3,body.theme-dark #weekly-review .review-fields label,body.theme-dark #weekly-review .reflection-grid label,body.theme-dark #weekly-review .check-item input[type=text],body.theme-dark #weekly-review .check-item button,body.theme-dark #weekly-review .reflection-grid textarea,body.theme-dark #weekly-review .review-fields input,body.theme-dark #weekly-review .check-add-row input{color:#dbeafe}body.theme-dark #weekly-review .section-head small,body.theme-dark #weekly-review .review-snapshot,body.theme-dark #weekly-review .metric-guide{color:#9fb2c8}body.theme-dark #weekly-review .check-item,body.theme-dark #weekly-review .review-fields input,body.theme-dark #weekly-review .check-add-row input,body.theme-dark #weekly-review .check-item input[type=text],body.theme-dark #weekly-review .reflection-grid textarea{background:#111827;border-color:#374151}body.theme-dark #weekly-review .section-head .btn--secondary{background:#1f2937;border-color:#374151;color:#dbeafe}body.theme-dark #weekly-review .review-fields input,body.theme-dark #weekly-review .check-add-row input,body.theme-dark #weekly-review .check-item input[type=text],body.theme-dark #weekly-review .reflection-grid textarea,body.theme-dark #weekly-review .check-item{background:#111827;border-color:#374151}@media (max-width: 980px){#weekly-review .review-grid,#weekly-review .reflection-grid{grid-template-columns:1fr}}body.theme-dark #analytics{background:radial-gradient(120% 90% at 4% -22%,rgb(16 185 129 / .24),transparent 62%),radial-gradient(95% 85% at 100% -15%,rgb(14 165 233 / .2),transparent 68%),linear-gradient(180deg,#0b1524,#0e1a2b 55%,#0d1a2a)}body.theme-dark #analytics .chart-wrap,body.theme-dark #analytics .progress-block,body.theme-dark #analytics .stat-card{border-color:#089f76;background:linear-gradient(180deg,#101c2b,#0e1a29);box-shadow:0 10px 22px #02061759}body.theme-dark #analytics .chart__grid line{stroke:#334155}body.theme-dark #analytics .chart__y-labels text,body.theme-dark #analytics .chart__x-labels text,body.theme-dark #analytics .progress-note,body.theme-dark #analytics .stat-card p{fill:#9fb2c8;color:#9fb2c8}body.theme-dark #analytics .chart__x-labels text.chart__x-label--weekend{fill:#6ee7b7}body.theme-dark #analytics .chart-legend-note{color:#9fb2c8}body.theme-dark #analytics .chart-legend-note__dot{color:#6ee7b7}.check-add-row{margin-top:8px;display:grid;grid-template-columns:1fr auto;gap:8px}.reflection-grid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px}.reflection-grid textarea{resize:vertical;min-height:72px}.reflection-grid__wide{grid-column:1 / -1}@media (min-width: 1024px){.dashboard-columns{grid-template-columns:1fr 1fr}.dashboard-columns .column-card:first-child{border-right:1px solid var(--card-border)}#rewards .column-card{padding:14px 16px 16px}}@media (max-width: 1180px){.hero-sub{letter-spacing:.12em}}@media (max-width: 920px){.app-shell__content{margin:2px auto;border-radius:12px}.card,.card--hero{padding:14px}.hero-brand-block{min-width:0}.hero-actions{justify-content:flex-start}.kpis--compact{grid-template-columns:1fr 1fr}.kpi strong{font-size:30px}.balance-math__grid,.focus-input-row,.check-add-row{grid-template-columns:1fr}}@media (max-width: 980px){.focus-card--hero{max-width:none}}@media (max-width: 640px){.app-shell{padding:8px}.app-shell__content{border-radius:10px}.hero-sub{letter-spacing:.1em;font-size:12px}.calendar-nav{justify-content:flex-start;gap:6px;flex-wrap:wrap}.btn--calendar{min-width:0}.kpis--compact{grid-template-columns:1fr}.section-head h2,.column-card h2{font-size:20px}.section-title__icon{width:28px;height:28px;font-size:14px}.chart-wrap{padding:4px 6px 0}.chart{height:166px}#analytics .chart{height:172px}#analytics .progress-head strong{font-size:16px}#analytics .stat-card strong{font-size:20px}.rewards-grid{grid-template-columns:1fr}#rewards .column-card h2{font-size:24px}#rewards .rewards-grid,.stats-grid{grid-template-columns:1fr}}@media (max-width: 375px){.app-shell{padding:6px}.card,.card--hero{padding:12px 10px}.eyebrow{font-size:26px}.hero-sub{font-size:10px;letter-spacing:.08em}.btn,.btn--calendar,.btn--secondary,.btn--ghost{min-height:44px;padding:11px 14px;font-size:12px}.hero-actions{gap:6px}.kpi{min-height:58px}.kpi strong{font-size:26px}.focus-item{padding:10px;gap:10px}.focus-item input[type=checkbox]{width:20px;height:20px;flex-shrink:0}.focus-delete{min-width:36px;min-height:36px;display:flex;align-items:center;justify-content:center;font-size:16px}.focus-input-row input{min-height:44px;font-size:14px}.habit-grid__sticky{width:110px;min-width:110px;max-width:110px;font-size:8.5px;padding:4px}.habit-grid__pts{width:20px;min-width:20px;max-width:20px;font-size:8px}.habit-grid th,.habit-grid td{font-size:7.5px;padding:2px 0}.habit-grid__check{width:13px;height:13px;font-size:7px;border-radius:2px}.habits-editor__row{flex-direction:column;gap:8px;padding:10px}.habits-editor__name,.habits-editor__pts{width:100%;min-height:44px;font-size:14px}.habits-editor__pts-label{margin-left:0;flex-direction:row;gap:8px}.habits-editor__pts{width:80px;min-height:44px}.habits-editor__delete{min-height:44px;width:100%;text-align:center}.habits-editor__add{min-height:44px;width:100%}.section-head{flex-direction:column;align-items:stretch;gap:8px}.section-head h2{font-size:17px}.stats-grid{grid-template-columns:1fr;gap:8px}.stat-card strong{font-size:20px}.rewards-grid{grid-template-columns:1fr;gap:8px}.reward-btn{min-height:44px;font-size:13px}.ledger-wrap{overflow-x:auto}.review-grid,.reflection-grid{grid-template-columns:1fr;gap:8px}.review-fields{grid-template-columns:1fr}.check-item{padding:10px;gap:10px}.check-item input[type=checkbox]{width:20px;height:20px}.check-item button{min-width:36px;min-height:36px;font-size:18px;display:flex;align-items:center;justify-content:center}.check-add-row{grid-template-columns:1fr}.check-add-row .btn{min-height:44px;width:100%}.reflection-grid textarea{min-height:80px;font-size:14px}}@media (min-width: 768px){.app-shell{padding:18px}.hero-head{flex-direction:row;justify-content:space-between;align-items:flex-start}.hero-main,.hero-brand-block{flex:1;min-width:0}.hero-side{width:388px;min-width:388px;padding-top:0}.hero-actions{width:100%;justify-content:flex-end;flex-wrap:nowrap}.kpis--compact{width:100%}}@media (min-width: 1500px) and (max-width: 1700px){.app-shell{padding:18px}.card--hero{padding:14px 16px}}.app-loading{min-height:100vh;background-color:var(--page-bg);display:flex;align-items:center;justify-content:center}.app-spinner{display:flex;flex-direction:column;align-items:center}.spinner-icon{animation:auth-spin 1s linear infinite;height:40px;width:40px;color:var(--accent-strong);margin-bottom:16px}.spinner-icon--small{height:16px;width:16px;margin-right:8px;margin-bottom:0;color:#fff}.spinner-track{opacity:.25}.spinner-fill{opacity:.75}.loading-text{color:var(--text-soft);font-weight:500;letter-spacing:.025em}@keyframes auth-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-root{min-height:100vh;background-color:var(--page-bg);font-family:var(--font-base)}.app-nav{background-color:#ffffffdb;border:1px solid var(--shell-border);border-radius:12px;position:sticky;top:0;z-index:50;box-shadow:0 1px 2px #0000000d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);margin:0 0 6px}.app-nav__container{width:100%;margin:0;padding:0 12px;display:flex;justify-content:space-between;align-items:center;height:64px}.app-nav__left,.app-nav__right{display:flex;align-items:center}.app-nav__left{gap:12px}.app-nav__right{gap:16px;margin-left:auto}.app-nav__logo-icon{background:linear-gradient(145deg,#0f172a,#1e293b);border:1px solid #314157;padding:8px;border-radius:8px;box-shadow:0 1px 2px #0f172a2e;display:flex;align-items:center;justify-content:center}.icon-brand{width:20px;height:20px;color:#34d399}.icon-brand-large{width:32px;height:32px;color:#67e8f9}.app-nav__brand-text{font-size:20px;font-weight:700;background:linear-gradient(to right,#0f172a,#334155);background-clip:text;-webkit-background-clip:text;color:transparent;letter-spacing:-.025em}.user-badge{display:flex;align-items:center;gap:8px;padding:6px 12px;background-color:#f1f5f9;border-radius:9999px;border:1px solid #e2e8f0}@media (max-width: 639px){.user-badge,.logout-text{display:none}}.icon-sm{width:16px;height:16px;color:var(--text-soft)}.user-badge__text{font-size:14px;font-weight:500;color:#334155}.btn--logout{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid #e2e8f0;border-radius:8px;background-color:#fff;color:var(--text-soft);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:none;letter-spacing:normal}.btn--logout:hover{background-color:#f8fafc;color:#4f46e5;border-color:#c7d2fe}.btn--logout:focus{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #6366f1}.app-main-content{max-width:1280px;margin:0 auto;padding:0 16px}body.theme-dark .app-nav{background-color:#0b1220e0;border-color:#334155;box-shadow:0 6px 18px #02061759}body.theme-dark .app-nav__logo-icon{background:linear-gradient(145deg,#0f172a,#13253f);border-color:#3a526f}body.theme-dark .icon-brand{color:#6ee7b7}body.theme-dark .app-nav__brand-text{background:linear-gradient(to right,#e2e8f0,#86efac);background-clip:text;-webkit-background-clip:text}body.theme-dark .user-badge{background-color:#111827;border-color:#374151}body.theme-dark .user-badge__text,body.theme-dark .icon-sm{color:#dbeafe}body.theme-dark .btn--logout{background-color:#111827;border-color:#374151;color:#dbeafe}body.theme-dark .btn--logout:hover{background-color:#1f2937;border-color:#4b5563;color:#86efac}body.theme-dark .btn--logout:focus{box-shadow:0 0 0 2px #0b1220,0 0 0 4px #10b981}.auth-layout{min-height:100vh;background-color:var(--page-bg);display:flex}.auth-panel-premium{display:none;position:relative;background-color:var(--hero-bg);overflow:hidden;align-items:center;justify-content:center;padding:48px}@media (min-width: 1024px){.auth-panel-premium{display:flex;width:50%}}.auth-bg-blob{position:absolute;border-radius:9999px;filter:blur(48px)}.auth-bg-blob--primary{top:-128px;left:-128px;width:384px;height:384px;background-color:var(--accent);opacity:.15}.auth-bg-blob--secondary{bottom:0;right:0;width:480px;height:480px;background-color:#38bdf8;opacity:.1}.auth-bg-blob--tertiary{top:50%;left:25%;width:256px;height:256px;background-color:var(--accent-strong);opacity:.2}.auth-panel__content-wrapper{position:relative;z-index:10;color:#fff;max-width:512px}.auth-panel__icon-container{display:inline-flex;align-items:center;justify-content:center;padding:12px;background-color:#ffffff1a;border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);margin-bottom:32px;border:1px solid rgb(255 255 255 / .2);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.auth-panel__title{font-size:3rem;line-height:1.1;font-weight:800;letter-spacing:-.025em;margin:0 0 24px}.text-gradient{color:transparent;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(to right,#38bdf8,var(--accent))}.auth-panel__description{font-size:1.25rem;color:#e0e7ff;margin:0 0 40px;line-height:1.625}.auth-panel__feature-list{display:flex;flex-direction:column;gap:24px}.feature-chip{display:flex;align-items:center;gap:16px;padding:16px;border-radius:16px;background-color:#ffffff0d;border:1px solid rgb(255 255 255 / .1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.feature-chip__icon{width:24px;height:24px;flex-shrink:0}.feature-chip__icon--fuchsia{color:#f0abfc}.feature-chip__icon--emerald{color:#6ee7b7}.feature-chip__text{color:#eef2ff;font-weight:500;letter-spacing:.025em}.auth-panel-form{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:32px;background-color:#fff;position:relative}@media (min-width: 1024px){.auth-panel-form{width:50%;padding:96px}}.auth-form-container{width:100%;max-width:448px}.auth-mobile-logo{display:flex;justify-content:center;margin-bottom:32px}@media (min-width: 1024px){.auth-mobile-logo{display:none}}.auth-mobile-logo__box{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:var(--hero-panel);border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.auth-header{text-align:center;margin-bottom:40px}.auth-header__title{margin:0;font-size:1.875rem;font-weight:700;color:#0f172a;letter-spacing:-.025em}.auth-header__subtitle{margin:8px 0 0;color:#64748b;font-size:.875rem;font-weight:500}.btn-oauth{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;border:1px solid #e2e8f0;border-radius:12px;background-color:#fff;color:#334155;font-weight:500;font-size:1rem;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.btn-oauth:hover{background-color:#f8fafc;border-color:#cbd5e1}.btn-oauth:focus{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--accent)}.icon-oauth{height:20px;width:20px}.auth-divider{position:relative;margin:32px 0}.auth-divider__line{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center}.auth-divider__line:before{content:"";width:100%;border-top:1px solid #e2e8f0}.auth-divider__text-wrapper{position:relative;display:flex;justify-content:center;font-size:.875rem}.auth-divider__text{padding:0 16px;background-color:#fff;color:#64748b;font-weight:500}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-alert{padding:12px 16px;border-radius:12px;font-size:.875rem;display:flex;align-items:center}.auth-alert__icon{width:16px;height:16px;margin-right:8px;flex-shrink:0}.auth-alert--success{background-color:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.auth-alert--error{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.auth-input-group{display:block}.auth-label{display:block;font-size:.875rem;font-weight:600;color:#334155;margin-bottom:6px}.auth-input-wrapper{position:relative}.auth-input-icon{position:absolute;top:0;bottom:0;left:0;padding-left:12px;display:flex;align-items:center;pointer-events:none}.icon-muted{height:20px;width:20px;color:#94a3b8}.auth-input{display:block;width:100%;padding:10px 12px 10px 40px;background-color:#f8fafc;border:1px solid #e2e8f0;color:#0f172a;border-radius:12px;font-family:inherit;transition:all .2s}.auth-input:focus{outline:none;background-color:#fff;border-color:var(--accent);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--accent)}.auth-form-submit{padding-top:8px}.auth-submit-btn{width:100%;display:flex;justify-content:center;align-items:center;padding:10px 16px;border:1px solid transparent;border-radius:12px;font-size:.875rem;font-weight:700;color:#fff;background-color:var(--accent-strong);box-shadow:0 1px 2px #0000000d;cursor:pointer;transition:all .2s;font-family:inherit}.auth-submit-btn:hover{background-color:var(--accent)}.auth-submit-btn:focus{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--accent)}.auth-submit-btn:disabled{opacity:.7;cursor:not-allowed}.auth-submit-btn__inner{display:flex;align-items:center}.icon-arrow-right{margin-left:8px;width:16px;height:16px;transition:transform .2s}.auth-submit-btn:hover .icon-arrow-right{transform:translate(4px)}.auth-toggle{margin-top:32px;text-align:center;font-size:.875rem}.auth-toggle__text{color:#64748b;margin:0}.auth-toggle__btn{font-weight:600;color:var(--accent-strong);background:transparent;border:none;margin-left:4px;cursor:pointer;transition:color .2s;font-family:inherit}.auth-toggle__btn:hover{color:var(--accent)}.auth-toggle__btn:focus{outline:none;text-decoration:underline}
