:root {
    --ink: #0b1f44;
    --blue: #5267ff;
    --step: #a8b7ff;
    --ivory: #fff9ee;
    --charcoal: #171a22;
    --white: #ffffff;
    --line: #dde3f3;
    --muted: #69738a;
    --soft-blue: #eef1ff;
    --success: #167a5a;
    --error: #b9384b;
    --shadow: 0 18px 55px rgba(11, 31, 68, 0.1);
    --radius-lg: 28px;
    --radius-md: 20px;
    --radius-sm: 14px;
}
* { box-sizing: border-box; }
html { min-height: 100%; background: var(--ivory); }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 88% -10%, rgba(168, 183, 255, 0.28), transparent 31rem), var(--ivory); color: var(--charcoal); font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
a { color: var(--ink); text-decoration: none; }
.ui-icon { display: block; width: 1em; height: 1em; }
button,input,select,textarea { font: inherit; }
h1,h2,h3,p { margin-top: 0; }
h1,h2,h3 { color: var(--ink); font-family: "Sora", "Inter", sans-serif; line-height: 1.12; }
h1 { margin-bottom: 12px; font-size: clamp(2rem, 7vw, 3.7rem); letter-spacing: -0.05em; }
h2 { margin-bottom: 8px; font-size: clamp(1.25rem, 4vw, 1.75rem); letter-spacing: -0.035em; }
p { color: var(--muted); line-height: 1.6; }
.topbar { position: sticky; z-index: 20; top: 0; display: flex; align-items: center; justify-content: space-between; width: min(100%, 1040px); height: 76px; margin: 0 auto; padding: 12px 22px; background: rgba(255, 249, 238, 0.9); backdrop-filter: blur(18px); }
.brand-link img { display: block; width: 145px; max-height: 47px; object-fit: contain; object-position: left center; }
.topbar-actions,.badge-row { display: flex; align-items: center; gap: 8px; }
.plan-pill,.mini-badge { display: inline-flex; align-items: center; min-height: 30px; padding: 5px 11px; border: 1px solid var(--step); border-radius: 999px; background: var(--soft-blue); color: var(--ink); font-size: 0.74rem; font-weight: 700; letter-spacing: 0.03em; text-transform: uppercase; }
.mini-badge { min-height: 25px; padding: 3px 8px; border-color: var(--line); background: var(--white); font-size: 0.68rem; }
.mini-badge.accent { border-color: var(--step); background: var(--soft-blue); }
.icon-button { display: grid; width: 36px; height: 36px; border-radius: 50%; background: var(--ink); color: var(--white); font-family: "Sora", sans-serif; font-weight: 700; place-items: center; }
.page-shell { width: min(100%, 980px); margin: 0 auto; padding: 36px 22px calc(112px + env(safe-area-inset-bottom)); }
.page-shell-auth { display: grid; min-height: 100vh; padding-top: 32px; padding-bottom: 32px; place-items: center; }
.eyebrow { margin-bottom: 8px; color: var(--blue); font-size: 0.74rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }
.balance-card { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:44px; padding:28px; border:1px solid rgba(82,103,255,.2); border-radius:var(--radius-lg); background:linear-gradient(135deg,var(--ink),#183a78); box-shadow:var(--shadow); color:var(--white); }
.balance-card span,.balance-card strong { display:block; } .balance-card span{margin-bottom:8px;color:var(--step);font-size:.82rem;font-weight:700}.balance-card strong{font-family:"Sora",sans-serif;font-size:clamp(1.35rem,4vw,2rem)}.balance-card a{flex:0 0 auto;padding:11px 16px;border-radius:999px;background:var(--white);color:var(--ink);font-size:.82rem;font-weight:700}
.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:16px}.decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:30px}.decision-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;min-height:122px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.86);box-shadow:0 10px 30px rgba(11,31,68,.06)}
.decision-card strong,.decision-card small{display:block}.decision-card strong{margin-bottom:6px;color:var(--ink);font-family:"Sora",sans-serif;font-size:1rem}.decision-card small{color:var(--muted)}.decision-card b{color:var(--blue);font-size:1.8rem;font-weight:400}.decision-icon,.empty-mark,.guide-icon{display:grid;width:52px;height:52px;border-radius:16px;background:var(--blue);color:var(--white);font-size:1.45rem;place-items:center}.decision-icon .ui-icon,.guide-icon .ui-icon{width:27px;height:27px}.decision-icon.dark{background:var(--ink)}
.next-step-card,.admin-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:24px;border:1px solid rgba(168,183,255,.7);border-radius:var(--radius-md);background:var(--soft-blue)}.next-step-card h2,.next-step-card p,.admin-card h2,.admin-card p{margin-bottom:4px}.step-dot{width:16px;height:16px;border:5px solid var(--step);border-radius:50%;background:var(--blue);box-shadow:0 0 0 8px rgba(82,103,255,.1)}
.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 20px;border:0;border-radius:14px;cursor:pointer;font-weight:750}.button-primary{background:var(--blue);box-shadow:0 10px 26px rgba(82,103,255,.28);color:var(--white)}.button-secondary{border:1px solid var(--step);background:var(--white);color:var(--ink)}.button-quiet{background:transparent;color:var(--error)}.button-small{min-height:40px;padding:8px 14px;background:var(--ink);color:var(--white)}.button-full{width:100%}
.bottom-nav{position:fixed;z-index:30;right:16px;bottom:max(14px,env(safe-area-inset-bottom));left:16px;display:grid;grid-template-columns:repeat(4,1fr);max-width:580px;min-height:68px;margin:auto;padding:7px;border:1px solid rgba(221,227,243,.9);border-radius:23px;background:rgba(255,255,255,.94);box-shadow:0 20px 55px rgba(11,31,68,.18);backdrop-filter:blur(20px)}.bottom-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;border-radius:17px;color:var(--muted)}.bottom-nav a.active{background:var(--soft-blue);color:var(--blue)}.bottom-nav span{display:grid;min-width:24px;min-height:24px;align-items:center;justify-items:center;font-size:1.25rem;line-height:1}.bottom-nav span .ui-icon{width:22px;height:22px;stroke-width:2.15}.bottom-nav small{font-size:.68rem;font-weight:700}
.auth-page{background:radial-gradient(circle at 50% 0%,rgba(82,103,255,.2),transparent 35rem),var(--ivory)}.auth-card{width:min(100%,470px);padding:clamp(24px,6vw,42px);border:1px solid rgba(221,227,243,.9);border-radius:32px;background:rgba(255,255,255,.92);box-shadow:var(--shadow)}.auth-logo{display:block;width:min(100%,270px);max-height:190px;margin:0 auto 28px;object-fit:contain}.auth-logo.compact{width:210px;height:70px;margin-left:0;object-position:left center}.auth-copy{margin-bottom:24px}.auth-copy h1{font-size:2.3rem}.form-stack{display:grid;gap:17px}.form-stack label,.entitlement-form label{display:grid;gap:7px;color:var(--ink);font-size:.82rem;font-weight:750}.form-stack label small{color:var(--muted);font-weight:500}
input,select,textarea{width:100%;min-height:50px;padding:12px 14px;border:1px solid #cfd7ea;border-radius:13px;outline:none;background:var(--white);color:var(--charcoal)}textarea{resize:vertical;line-height:1.5}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(82,103,255,.12)}.auth-switch{margin:22px 0 8px;text-align:center}.auth-switch a,.text-link{color:var(--blue);font-weight:700}.text-link{display:block;text-align:center;font-size:.78rem}.auth-version{display:block;margin-top:18px;color:var(--muted);font-size:.7rem;text-align:center}
.form-error,.flash{padding:13px 15px;border-radius:13px;background:#fff0f2;color:var(--error);font-size:.88rem}.form-error{margin-bottom:12px}.flash{position:fixed;z-index:100;top:86px;right:20px;max-width:min(420px,calc(100% - 40px));box-shadow:var(--shadow)}.flash-success{background:#e7f8f1;color:var(--success)}.flash-info{background:var(--soft-blue);color:var(--ink)}
.page-heading{max-width:700px;margin-bottom:32px}.compact-heading h1{font-size:clamp(2rem,5vw,3rem)}.empty-state{padding:clamp(28px,7vw,60px);border:1px dashed var(--step);border-radius:var(--radius-lg);background:rgba(255,255,255,.72);text-align:center}.status-card,.profile-card{padding:22px;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.88)}.status-card strong,.profile-card strong,.profile-card span{display:block}.status-card p,.profile-card p{margin:7px 0 0}.status-card.success{margin-bottom:18px;border-color:#9ed8c4;background:#effbf7}.profile-card{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.profile-card div>span{margin-bottom:6px;color:var(--muted);font-size:.78rem}.logout-form{margin-top:14px;text-align:center}
.admin-tabs{display:flex;gap:8px;margin:-10px 0 34px;padding-bottom:4px;overflow-x:auto}.admin-tabs a{flex:0 0 auto;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--muted);font-size:.82rem;font-weight:700}.admin-tabs a.active{border-color:var(--ink);background:var(--ink);color:var(--white)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.stats-grid article,.stat-link-card{min-height:135px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white)}.stats-grid span,.stats-grid strong,.stat-link-card span,.stat-link-card strong{display:block}.stats-grid span,.stat-link-card span{margin-bottom:18px;color:var(--muted);font-size:.76rem}.stats-grid strong,.stat-link-card strong{color:var(--ink);font-family:"Sora",sans-serif;font-size:2rem}
.user-list{display:grid;gap:12px}.user-card{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white)}.user-main{display:flex;align-items:center;gap:14px}.avatar{display:grid;flex:0 0 auto;width:46px;height:46px;border-radius:15px;background:var(--soft-blue);color:var(--blue);font-family:"Sora",sans-serif;font-weight:700;place-items:center}.user-card h2,.user-card p{margin-bottom:5px}.user-card h2{font-size:1rem}.user-card p{font-size:.8rem}.entitlement-form{display:flex;align-items:end;gap:8px}.entitlement-form select{min-width:165px;min-height:40px;padding:7px 10px}.admin-form-card{padding:clamp(22px,5vw,36px);border:1px solid var(--line);border-radius:var(--radius-lg);background:rgba(255,255,255,.92);box-shadow:var(--shadow)}.form-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:8px}
.edit-user-summary{display:flex;align-items:center;gap:15px;margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid var(--line)}.edit-user-summary strong,.edit-user-summary div>span{display:block}.edit-user-summary strong{margin-bottom:4px;color:var(--ink);font-family:"Sora",sans-serif}.edit-user-summary div>span{color:var(--muted);font-size:.78rem}.large-avatar{width:58px;height:58px;border-radius:18px;font-size:1.2rem}

/* v0.1.5 */
.profile-actions{display:grid;gap:12px;margin:0 0 18px}.profile-action{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white)}.profile-action-icon{display:grid;width:44px;height:44px;border-radius:14px;background:var(--soft-blue);color:var(--blue);place-items:center}.profile-action-icon .ui-icon{width:22px;height:22px}.profile-action strong,.profile-action small{display:block}.profile-action strong{margin-bottom:4px;color:var(--ink);font-family:"Sora",sans-serif}.profile-action small{color:var(--muted)}.profile-action b{color:var(--blue);font-size:1.5rem}.profile-version{margin:18px 0 0;color:var(--muted);font-size:.72rem;text-align:center}
.admin-heading-row{display:flex;max-width:none;align-items:flex-start;justify-content:space-between;gap:20px}.stats-grid-six{grid-template-columns:repeat(3,1fr)}.stats-grid-two{grid-template-columns:repeat(2,1fr)}.stat-link-card{transition:transform 150ms ease,box-shadow 150ms ease}.stat-link-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:22px}.analytics-card{padding:22px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white)}.compact-list{display:grid;gap:0}.compact-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--line)}.compact-list>div:first-child{border-top:0}.compact-list span,.compact-list strong,.compact-list small{display:block}.compact-list strong{color:var(--ink);font-size:.84rem}.compact-list small{margin-top:3px;color:var(--muted);font-size:.7rem}.metric-right{text-align:right}.warning-card{margin-bottom:22px;border-color:#f2c078;background:#fff7e8}.version-card{margin-top:22px}
.admin-list{display:grid;gap:14px}.admin-list-card{display:grid;grid-template-columns:1fr auto;gap:22px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white)}.admin-list-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.admin-list-heading h2{margin-bottom:5px;font-size:1.08rem}.admin-list-heading p{margin-bottom:0}.admin-list-main>small{color:var(--muted)}.admin-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.status-pill{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border-radius:999px;background:var(--soft-blue);color:var(--ink);font-size:.68rem;font-weight:800;text-transform:uppercase;white-space:nowrap}.status-new,.status-open{background:#fff2d7;color:#8a5a00}.status-approved,.status-resolved{background:#e7f8f1;color:var(--success)}.status-rejected,.status-closed{background:#f1f3f7;color:var(--muted)}.status-in_progress{background:var(--soft-blue);color:var(--blue)}.status-form{display:flex;align-items:end;gap:8px}.status-form select{min-width:150px;min-height:40px;padding:7px 10px}.bug-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:.74rem}.user-activity-line{margin-top:8px!important;color:var(--muted)!important;font-size:.72rem!important}
@media (max-width:760px){.decision-grid,.stats-grid,.form-grid-two,.stats-grid-six,.stats-grid-two,.analytics-grid{grid-template-columns:1fr}.balance-card,.next-step-card,.admin-card,.user-card{align-items:stretch;flex-direction:column}.next-step-card,.admin-card{grid-template-columns:1fr}.user-card{display:flex}.entitlement-form{width:100%}.user-card>.button{width:100%}.entitlement-form label{flex:1}.admin-heading-row{display:flex;flex-direction:column}.admin-heading-row .button{width:100%}.admin-list-card{grid-template-columns:1fr}.admin-list-actions,.status-form{justify-content:flex-start}.admin-list-heading{flex-direction:column}}
@media (max-width:480px){.page-shell{padding-right:16px;padding-left:16px}.topbar{padding-right:16px;padding-left:16px}.balance-card{align-items:flex-start;flex-direction:column}.decision-card{min-height:108px;padding:16px}.decision-icon{width:46px;height:46px}.entitlement-form,.status-form{align-items:stretch;flex-direction:column}.form-actions{align-items:stretch;flex-direction:column}.form-actions .button{width:100%}.admin-list-actions{align-items:stretch;flex-direction:column}.admin-list-actions .button{width:100%}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Preserved v0.1.4 component styles */
.welcome-block{max-width:650px;margin-bottom:30px}.welcome-block p:last-child{font-size:1.05rem}.decision-card{transition:transform 160ms ease,box-shadow 160ms ease}.decision-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.button{transition:transform 150ms ease,box-shadow 150ms ease}.button:hover{transform:translateY(-1px)}
.guide-hero{max-width:750px;margin-bottom:24px;padding:clamp(28px,7vw,58px);border-radius:var(--radius-lg);background:var(--soft-blue);overflow:hidden}.guide-car{background:var(--ink)}.guide-car h1,.guide-car p{color:var(--white)}.guide-car .eyebrow{color:var(--step)}.guide-icon{margin-bottom:32px}.guide-car .guide-icon{background:var(--white);color:var(--ink)}
.admin-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.admin-feature-grid article{padding:22px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white)}.admin-feature-grid article>span{color:var(--step);font-family:"Sora",sans-serif;font-size:1.5rem;font-weight:700}.admin-feature-grid h2{margin-top:26px;font-size:1.05rem}.admin-feature-grid p{margin-bottom:0;font-size:.86rem}
.changelog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;max-width:none}.version-badge{display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:42px;padding:9px 15px;border-radius:999px;background:var(--ink);color:var(--white);font-family:"Sora",sans-serif;font-size:.82rem;font-weight:700}.changelog-timeline{position:relative;display:grid;gap:18px;padding-left:30px}.changelog-timeline::before{position:absolute;top:18px;bottom:18px;left:9px;width:2px;background:var(--line);content:""}.changelog-release{position:relative;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.9);box-shadow:0 10px 30px rgba(11,31,68,.05);overflow:hidden}.changelog-release.current{border-color:var(--step);background:linear-gradient(135deg,rgba(238,241,255,.96),rgba(255,255,255,.94))}.timeline-marker{position:absolute;top:24px;left:-28px;width:16px;height:16px;border:4px solid var(--ivory);border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px var(--step)}.changelog-release>header{padding:22px 24px 17px;border-bottom:1px solid var(--line)}.changelog-release>header span{display:block;margin-bottom:6px;color:var(--blue);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.changelog-release>header h2{margin:0;font-size:1.35rem}.changelog-body{padding:6px 24px 22px}.changelog-body h3{margin:20px 0 10px;color:var(--ink);font-size:.86rem;letter-spacing:.04em;text-transform:uppercase}.changelog-body ul{display:grid;gap:9px;margin:0;padding-left:20px}.changelog-body li,.changelog-body p{color:#4d5870;font-size:.9rem;line-height:1.55}.changelog-body li::marker{color:var(--blue)}code{padding:2px 5px;border-radius:5px;background:var(--soft-blue);color:var(--ink)}
@media(max-width:760px){.admin-feature-grid{grid-template-columns:1fr}.step-dot{margin-bottom:4px}}
@media(max-width:480px){.changelog-heading{align-items:stretch;flex-direction:column}.version-badge{align-self:flex-start}}

/* v0.1.6 QA polish */
.profile-meta-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 18px;
    padding: 15px 18px;
    border: 1px solid var(--line);
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, 0.72);
}
.profile-meta-card span {
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 650;
}
.profile-meta-card strong {
    color: var(--ink);
    font-family: "Sora", sans-serif;
    font-size: 0.86rem;
}
.access-overview-card {
    margin-bottom: 18px;
    padding: 20px 22px;
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    background: var(--soft-blue);
}
.access-overview-card h2,
.access-overview-card p {
    margin-bottom: 5px;
}

/* v0.2.0 budgetmotor */
.balance-card small{display:block;margin-top:7px;color:rgba(255,255,255,.72);font-size:.74rem}.budget-heading{max-width:760px}.budget-inline-button{margin-top:16px}.budget-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px}.budget-summary-grid article{min-height:145px;padding:22px;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.92)}.budget-summary-grid span,.budget-summary-grid strong,.budget-summary-grid small{display:block}.budget-summary-grid span{margin-bottom:15px;color:var(--muted);font-size:.76rem;font-weight:700}.budget-summary-grid strong{margin-bottom:8px;color:var(--ink);font-family:"Sora",sans-serif;font-size:clamp(1.35rem,4vw,2rem)}.budget-summary-grid small{color:var(--muted);font-size:.72rem;line-height:1.45}.budget-summary-grid .budget-disposable{border-color:rgba(82,103,255,.38);background:linear-gradient(135deg,var(--ink),#183a78)}.budget-summary-grid .budget-disposable span,.budget-summary-grid .budget-disposable small{color:var(--step)}.budget-summary-grid .budget-disposable strong{color:var(--white)}.budget-summary-grid .budget-disposable.negative{border-color:#f0b4bd;background:linear-gradient(135deg,#731f2d,#b9384b)}.budget-summary-grid .budget-disposable.negative span,.budget-summary-grid .budget-disposable.negative small{color:#ffdce1}.budget-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.35fr);gap:22px;align-items:start}.budget-form-card{position:sticky;top:96px}.budget-form-card .section-heading{margin-bottom:20px}.budget-form-actions{margin-top:2px}.budget-groups{display:grid;gap:16px}.budget-group-card{border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.92);overflow:hidden}.budget-group-card>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 20px;border-bottom:1px solid var(--line);background:var(--soft-blue)}.budget-group-card>header span,.budget-group-card>header strong,.budget-group-card>header small{display:block}.budget-group-card>header span{margin-bottom:4px;color:var(--muted);font-size:.72rem;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.budget-group-card>header strong{color:var(--ink);font-family:"Sora",sans-serif;font-size:1.18rem}.budget-group-card>header small{color:var(--muted);font-size:.7rem}.budget-empty{margin:0;padding:22px;color:var(--muted);font-size:.84rem}.budget-entry-list{display:grid}.budget-entry{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}.budget-entry:last-child{border-bottom:0}.budget-entry-main strong,.budget-entry-main small,.budget-entry-value strong,.budget-entry-value small{display:block}.budget-entry-main strong{margin-bottom:5px;color:var(--ink);font-size:.9rem}.budget-entry-main small{color:var(--muted);font-size:.7rem;line-height:1.4}.budget-entry-value{text-align:right}.budget-entry-value strong{color:var(--ink);font-family:"Sora",sans-serif;font-size:.9rem}.budget-entry-value small{margin-top:3px;color:var(--muted);font-size:.65rem}.budget-entry-actions{display:flex;align-items:center;gap:9px}.budget-entry-actions a,.budget-entry-actions button{padding:0;border:0;background:transparent;color:var(--blue);cursor:pointer;font-size:.7rem;font-weight:750}.budget-entry-actions button{color:var(--error)}.budget-entry-actions form{margin:0}
@media(max-width:820px){.budget-layout{grid-template-columns:1fr}.budget-form-card{position:static}.budget-summary-grid{grid-template-columns:1fr 1fr}.budget-summary-grid .budget-disposable{grid-column:1/-1}}
@media(max-width:560px){.budget-summary-grid{grid-template-columns:1fr}.budget-summary-grid .budget-disposable{grid-column:auto}.budget-entry{grid-template-columns:minmax(0,1fr) auto;gap:10px 14px}.budget-entry-actions{grid-column:1/-1;justify-content:flex-end;padding-top:2px}.budget-group-card>header{align-items:flex-end}.budget-form-actions{align-items:stretch;flex-direction:column}.budget-form-actions .button{width:100%}}


/* v0.2.0 budget UI polish */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.budget-heading-polished{margin-bottom:28px}.budget-heading-polished h1{margin-bottom:16px}.budget-summary-polished{gap:18px;margin-bottom:18px}.budget-summary-polished .budget-metric{display:flex;align-items:center;gap:18px;min-height:142px;padding:20px;border:1px solid #e1e4ee;border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(11,31,68,.055)}.budget-metric-icon{display:grid;flex:0 0 auto;width:70px;height:70px;border-radius:50%;place-items:center;font-size:2rem;font-weight:700}.budget-metric.income .budget-metric-icon{background:#e8f7ec;color:#169a5d}.budget-metric.expense .budget-metric-icon{background:#fdeaea;color:#e63e38}.budget-metric.disposable .budget-metric-icon{background:#efedff;color:#514dff}.budget-metric.disposable.negative .budget-metric-icon{background:#fdeaea;color:var(--error)}.budget-summary-polished .budget-metric-label{margin-bottom:5px;color:var(--ink);font-size:.85rem;font-weight:750}.budget-summary-polished .budget-metric strong{margin:0 0 6px;font-size:clamp(1.55rem,4vw,2rem)}.budget-summary-polished .budget-metric strong em{margin-left:4px;font-family:"Inter",sans-serif;font-size:.8rem;font-style:normal;font-weight:700}.budget-metric.income strong{color:#169a5d}.budget-metric.expense strong{color:#e63e38}.budget-metric.disposable strong{color:#514dff}.budget-metric.disposable.negative strong{color:var(--error)}.budget-summary-polished .budget-metric small{font-size:.76rem}
.budget-add-card,.budget-posts-card{margin-top:18px;padding:28px;border:1px solid #e1e4ee;border-radius:28px;background:rgba(255,255,255,.94);box-shadow:0 14px 36px rgba(11,31,68,.055)}.budget-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.budget-card-heading h2{font-size:1.65rem}.budget-outline-action{padding:10px 14px;border:1px solid var(--step);border-radius:12px;background:#fff;color:var(--blue);font-size:.78rem;font-weight:750}.budget-modern-form{padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.budget-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.budget-field{display:grid;gap:8px;color:var(--ink);font-size:.82rem;font-weight:750}.budget-field-label{color:var(--ink);font-size:.82rem;font-weight:750}.budget-field>small,.budget-type-field>small{color:var(--muted);font-size:.68rem;font-weight:500}.budget-type-strip{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#f6f7fa}.budget-type-strip span{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:8px;color:var(--ink);font-size:.73rem;font-weight:750;text-align:center}.budget-type-strip span+span{border-left:1px solid var(--line)}.budget-type-strip .income{background:#e8f7ec;color:#168d56}.budget-money-input{display:grid;grid-template-columns:1fr auto;overflow:hidden;border:1px solid #cfd7ea;border-radius:13px;background:#fff}.budget-money-input:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px rgba(82,103,255,.12)}.budget-money-input input{border:0;border-radius:0;box-shadow:none!important}.budget-money-input b{display:grid;min-width:62px;padding:0 14px;border-left:1px solid var(--line);background:#f7f8fb;color:var(--ink);place-items:center;font-size:.82rem}.budget-frequency-help{display:flex;align-items:center;gap:12px;min-height:76px;padding:13px 15px;border:1px solid #caead5;border-radius:13px;background:#edf9f0}.budget-frequency-help>span{display:grid;flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:#d8f2df;color:#149258;place-items:center}.budget-frequency-help strong,.budget-frequency-help small{display:block}.budget-frequency-help strong{margin-bottom:4px;color:#197c50;font-size:.78rem}.budget-frequency-help small{color:#557365;font-size:.68rem;line-height:1.4}.budget-submit-wide{width:100%;margin-top:16px;border-radius:10px;background:linear-gradient(90deg,#4a45ff,#5267ff);font-size:.9rem}.budget-submit-wide span{margin-right:8px;font-size:1.1rem}
.budget-posts-card{margin-top:16px}.budget-posts-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.budget-posts-topbar .eyebrow{margin-bottom:12px}.budget-filter-pills{display:flex;flex-wrap:wrap;gap:8px}.budget-filter-pills a{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 13px;border-radius:999px;background:#f2f3f6;color:var(--ink);font-size:.72rem;font-weight:750}.budget-filter-pills a.active{background:linear-gradient(90deg,#514dff,#5267ff);color:#fff;box-shadow:0 8px 18px rgba(82,103,255,.2)}.budget-sort-form select{min-width:165px;min-height:42px;padding:8px 34px 8px 12px}.budget-empty-state{display:grid;min-height:180px;padding:28px;border:1px dashed #cfd7ea;border-radius:16px;text-align:center;place-items:center}.budget-empty-state>span{display:grid;width:48px;height:48px;margin-bottom:8px;border-radius:50%;background:#efedff;color:#514dff;place-items:center}.budget-empty-state strong{color:var(--ink);font-family:"Sora",sans-serif;font-size:.9rem}.budget-empty-state p{margin:4px 0 0;font-size:.78rem}.budget-modern-list{display:grid;border:1px solid var(--line);border-radius:16px;overflow:hidden}.budget-modern-entry{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:16px 18px;background:#fff;border-bottom:1px solid var(--line)}.budget-modern-entry:last-child{border-bottom:0}.budget-entry-icon{display:grid;width:38px;height:38px;border-radius:12px;place-items:center;font-weight:800}.budget-modern-entry.income .budget-entry-icon{background:#e8f7ec;color:#169a5d}.budget-modern-entry.fixed .budget-entry-icon{background:#fdeaea;color:#e63e38}.budget-modern-entry.variable .budget-entry-icon{background:#fff3dd;color:#dd8a00}.budget-entry-copy strong,.budget-entry-copy small,.budget-entry-monthly strong,.budget-entry-monthly small{display:block}.budget-entry-copy strong{margin-bottom:4px;color:var(--ink);font-size:.87rem}.budget-entry-copy small{color:var(--muted);font-size:.68rem}.budget-entry-monthly{text-align:right}.budget-entry-monthly strong{color:var(--ink);font-family:"Sora",sans-serif;font-size:.9rem}.budget-entry-monthly small{color:var(--muted);font-size:.64rem}
@media(max-width:820px){.budget-summary-polished{grid-template-columns:1fr}.budget-summary-polished .budget-disposable{grid-column:auto}.budget-form-grid{grid-template-columns:1fr}.budget-posts-topbar{align-items:stretch;flex-direction:column}.budget-sort-form select{width:100%}.budget-modern-entry{grid-template-columns:auto minmax(0,1fr) auto}.budget-modern-entry .budget-entry-actions{grid-column:2/-1;justify-content:flex-end}}
@media(max-width:560px){.budget-summary-polished .budget-metric{min-height:112px;padding:16px;border-radius:20px}.budget-metric-icon{width:54px;height:54px;font-size:1.55rem}.budget-add-card,.budget-posts-card{padding:18px;border-radius:22px}.budget-modern-form{padding:14px}.budget-card-heading{align-items:stretch;flex-direction:column}.budget-type-strip{grid-template-columns:1fr}.budget-type-strip span+span{border-top:1px solid var(--line);border-left:0}.budget-filter-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.budget-filter-pills a{justify-content:center}.budget-modern-entry{grid-template-columns:auto minmax(0,1fr)}.budget-entry-monthly{grid-column:2;text-align:left}.budget-modern-entry .budget-entry-actions{grid-column:1/-1;justify-content:flex-end}.budget-money-input b{min-width:54px}}


/* v0.2.0 budget UI QA fix 2 */
.budget-svg-icon{display:block;width:1em;height:1em}
.budget-metric-icon .budget-svg-icon{width:30px;height:30px;stroke-width:2.1}
.budget-type-strip .budget-svg-icon{width:17px;height:17px;flex:0 0 auto}
.budget-frequency-help>span .budget-svg-icon{width:19px;height:19px}
.budget-filter-pills a span{display:grid;width:17px;height:17px;place-items:center}
.budget-filter-pills a .budget-svg-icon{width:15px;height:15px;stroke-width:2.15}
.budget-entry-icon .budget-svg-icon{width:19px;height:19px;stroke-width:2.05}
.budget-empty-state>span .budget-svg-icon{width:22px;height:22px}
html{scroll-behavior:smooth;scroll-padding-top:96px}
#budget-posts,#budget-add{scroll-margin-top:96px}


/* v0.2.0 budget mobile hardening */
.budget-svg-icon{display:block;max-width:100%;max-height:100%;overflow:visible}

@media(max-width:640px){
    .budget-heading-polished{margin-bottom:20px}
    .budget-heading-polished h1{font-size:clamp(2.2rem,12vw,3.15rem);margin-bottom:12px}
    .budget-heading-polished p{font-size:.94rem;line-height:1.55}

    .budget-summary-grid.budget-summary-polished{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:12px!important;
        margin-bottom:14px!important;
    }
    .budget-summary-polished .budget-metric{
        display:grid!important;
        grid-template-columns:52px minmax(0,1fr)!important;
        align-items:center!important;
        gap:14px!important;
        min-height:0!important;
        padding:16px!important;
        border:1px solid #dfe4ef!important;
        border-radius:20px!important;
        background:#fff!important;
        box-shadow:0 8px 22px rgba(11,31,68,.055)!important;
    }
    .budget-metric-icon{
        width:52px!important;
        height:52px!important;
        min-width:52px!important;
        min-height:52px!important;
        font-size:0!important;
        border-radius:50%!important;
    }
    .budget-metric-icon .budget-svg-icon{width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important}
    .budget-summary-polished .budget-metric-label{font-size:.78rem!important;margin-bottom:3px!important}
    .budget-summary-polished .budget-metric strong{font-size:1.55rem!important;line-height:1.05!important;margin-bottom:5px!important}
    .budget-summary-polished .budget-metric strong em{font-size:.68rem!important}
    .budget-summary-polished .budget-metric small{font-size:.7rem!important;line-height:1.35!important}

    .budget-add-card,.budget-posts-card{
        display:block!important;
        margin-top:14px!important;
        padding:16px!important;
        border:1px solid #dfe4ef!important;
        border-radius:22px!important;
        background:#fff!important;
        box-shadow:0 8px 22px rgba(11,31,68,.05)!important;
        overflow:hidden!important;
    }
    .budget-card-heading{display:block!important;margin-bottom:15px!important}
    .budget-card-heading h2{font-size:1.45rem!important;margin-bottom:0!important}
    .budget-outline-action{display:inline-flex!important;margin-top:12px!important}
    .budget-modern-form{padding:0!important;border:0!important;background:transparent!important}
    .budget-form-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
    .budget-field,.budget-frequency-help,.budget-type-field{
        min-width:0!important;
    }
    .budget-field input,.budget-field select{min-height:48px!important;font-size:16px!important}
    .budget-type-strip{
        display:grid!important;
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        border-radius:12px!important;
    }
    .budget-type-strip span{
        min-width:0!important;
        min-height:46px!important;
        padding:7px 4px!important;
        gap:4px!important;
        font-size:.64rem!important;
        white-space:normal!important;
        line-height:1.15!important;
    }
    .budget-type-strip span+span{border-top:0!important;border-left:1px solid var(--line)!important}
    .budget-type-strip .budget-svg-icon{width:15px!important;height:15px!important;min-width:15px!important;min-height:15px!important}
    .budget-frequency-help{min-height:0!important;padding:12px!important}
    .budget-frequency-help>span{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important}
    .budget-frequency-help>span .budget-svg-icon{width:18px!important;height:18px!important}
    .budget-submit-wide{min-height:50px!important;margin-top:14px!important}

    .budget-posts-topbar{display:block!important;margin-bottom:14px!important}
    .budget-filter-pills{
        display:flex!important;
        flex-wrap:nowrap!important;
        gap:8px!important;
        margin:0 -2px 12px!important;
        padding:2px 2px 5px!important;
        overflow-x:auto!important;
        scrollbar-width:none!important;
        -webkit-overflow-scrolling:touch!important;
    }
    .budget-filter-pills::-webkit-scrollbar{display:none!important}
    .budget-filter-pills a{
        flex:0 0 auto!important;
        min-height:36px!important;
        padding:8px 11px!important;
        font-size:.69rem!important;
        white-space:nowrap!important;
    }
    .budget-filter-pills a span{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important}
    .budget-filter-pills a .budget-svg-icon{width:14px!important;height:14px!important}
    .budget-sort-form,.budget-sort-form label{display:block!important;width:100%!important}
    .budget-sort-form select{width:100%!important;min-width:0!important;min-height:46px!important;font-size:16px!important}

    .budget-modern-list{
        display:grid!important;
        gap:10px!important;
        border:0!important;
        border-radius:0!important;
        overflow:visible!important;
        background:transparent!important;
    }
    .budget-modern-entry{
        display:grid!important;
        grid-template-columns:40px minmax(0,1fr) auto!important;
        gap:10px 12px!important;
        padding:13px!important;
        border:1px solid var(--line)!important;
        border-radius:15px!important;
        background:#fff!important;
    }
    .budget-entry-icon{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;border-radius:12px!important}
    .budget-entry-icon .budget-svg-icon{width:18px!important;height:18px!important}
    .budget-entry-copy{min-width:0!important}
    .budget-entry-copy strong{font-size:.83rem!important;white-space:normal!important;overflow-wrap:anywhere!important}
    .budget-entry-copy small{font-size:.64rem!important;line-height:1.4!important}
    .budget-entry-monthly{grid-column:3!important;grid-row:1!important;align-self:center!important;text-align:right!important;white-space:nowrap!important}
    .budget-entry-monthly strong{font-size:.82rem!important}
    .budget-entry-monthly small{font-size:.6rem!important}
    .budget-modern-entry .budget-entry-actions{
        grid-column:2/4!important;
        display:flex!important;
        justify-content:flex-end!important;
        gap:12px!important;
        padding-top:2px!important;
    }
    .budget-entry-actions a,.budget-entry-actions button{font-size:.68rem!important}
    .budget-empty-state{min-height:150px!important;padding:22px 14px!important}
    .budget-empty-state>span{width:44px!important;height:44px!important}
    .budget-empty-state>span .budget-svg-icon{width:20px!important;height:20px!important}
}

@media(max-width:380px){
    .budget-summary-polished .budget-metric{grid-template-columns:46px minmax(0,1fr)!important;padding:14px!important;gap:12px!important}
    .budget-metric-icon{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important}
    .budget-metric-icon .budget-svg-icon{width:22px!important;height:22px!important}
    .budget-summary-polished .budget-metric strong{font-size:1.4rem!important}
    .budget-type-strip span{font-size:.59rem!important}
    .budget-modern-entry{grid-template-columns:36px minmax(0,1fr)!important}
    .budget-entry-icon{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
    .budget-entry-monthly{grid-column:2!important;grid-row:auto!important;text-align:left!important}
    .budget-modern-entry .budget-entry-actions{grid-column:1/-1!important}
}


/* v0.2.0 combined mobile + profile QA polish */
.profile-heading{margin-bottom:24px}
.profile-section-card{
    margin-bottom:16px;
    padding:22px;
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    background:rgba(255,255,255,.92);
    box-shadow:0 10px 30px rgba(11,31,68,.045);
}
.profile-section-heading{margin-bottom:16px}
.profile-section-heading .eyebrow{margin-bottom:6px}
.profile-section-heading h2{margin-bottom:6px;font-size:1.05rem}
.profile-section-heading p:last-child{margin-bottom:0;font-size:.84rem}
.profile-plan-row,
.profile-version-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:16px 17px;
    border:1px solid var(--line);
    border-radius:var(--radius-sm);
    background:var(--soft-blue);
}
.profile-plan-row>div>span,
.profile-version-row>span{
    display:block;
    margin-bottom:4px;
    color:var(--muted);
    font-size:.72rem;
    font-weight:700;
}
.profile-plan-row>div>strong,
.profile-version-row>strong{
    display:block;
    color:var(--ink);
    font-family:"Sora",sans-serif;
    font-size:.92rem;
}
.profile-version-row>span{margin-bottom:0}
.profile-action-contained{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
    min-height:76px;
    padding:15px 16px;
    border:1px solid var(--line);
    border-radius:var(--radius-sm);
    background:var(--soft-blue);
}
.profile-action-contained .profile-action-icon{
    display:grid;
    width:42px;
    height:42px;
    border-radius:13px;
    background:var(--white);
    color:var(--blue);
    place-items:center;
}
.profile-action-contained .profile-action-icon .ui-icon{width:21px;height:21px}
.profile-action-contained strong,
.profile-action-contained small{display:block}
.profile-action-contained strong{margin-bottom:4px;color:var(--ink);font-size:.86rem}
.profile-action-contained small{color:var(--muted);font-size:.7rem;line-height:1.4}
.profile-action-contained b{color:var(--blue);font-size:1.55rem;font-weight:400}
.logout-form-card{margin:0;text-align:initial}
.button-danger-outline{
    border:1px solid rgba(185,56,75,.34);
    background:#fff5f6;
    color:var(--error);
    box-shadow:none;
}
.button-danger-outline:hover{background:#ffedef}
@media(max-width:560px){
    .profile-section-card{padding:18px;border-radius:20px}
    .profile-plan-row,.profile-version-row{align-items:flex-start;flex-direction:column}
    .profile-plan-row .plan-pill{align-self:flex-start}
    .profile-action-contained{grid-template-columns:42px minmax(0,1fr) auto;padding:14px}
}


/* v0.3.0 moving-home decision guide */
.moving-hero{position:relative;background:linear-gradient(135deg,#eef1ff,#f8f9ff)}
.moving-inline-button{margin-top:14px}
.moving-notice{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:20px 22px;border:1px solid #d7def8;border-radius:var(--radius-md);background:#f7f8ff}
.moving-notice strong{display:block;margin-bottom:5px;color:var(--ink);font-family:"Sora",sans-serif}
.moving-notice p{margin:0;font-size:.84rem}
.moving-baseline-card,.moving-section-card,.moving-result{margin-bottom:18px;padding:26px;border:1px solid var(--line);border-radius:var(--radius-lg);background:rgba(255,255,255,.94);box-shadow:0 12px 34px rgba(11,31,68,.055)}
.moving-baseline-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,1fr);align-items:center;gap:28px}
.moving-baseline-card h2,.moving-section-heading h2,.moving-result-heading h2{margin-bottom:7px}
.moving-baseline-card p:last-child,.moving-section-heading p:last-child,.moving-result-heading p:last-child{margin-bottom:0;font-size:.85rem}
.moving-baseline-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.moving-baseline-metrics>span{padding:15px;border:1px solid var(--line);border-radius:15px;background:#fafbff}
.moving-baseline-metrics>span.accent{border-color:#cbd3ff;background:var(--soft-blue)}
.moving-baseline-metrics small,.moving-baseline-metrics strong{display:block}
.moving-baseline-metrics small{margin-bottom:6px;color:var(--muted);font-size:.67rem;font-weight:700}
.moving-baseline-metrics strong{color:var(--ink);font-family:"Sora",sans-serif;font-size:.86rem}
.moving-form{display:grid;gap:18px;margin-bottom:18px}
.moving-form .moving-section-card{margin-bottom:0}
.moving-section-heading,.moving-result-heading{display:flex;align-items:flex-start;gap:15px;margin-bottom:22px}
.moving-heading-icon,.moving-result-icon{display:grid;flex:0 0 auto;width:48px;height:48px;border-radius:15px;background:var(--soft-blue);color:var(--blue);place-items:center}
.moving-heading-icon.secondary{background:#eef8f4;color:#167a5a}
.moving-heading-icon.warm{background:#fff4e6;color:#9a6119}
.moving-heading-icon .moving-svg-icon,.moving-result-icon .moving-svg-icon{width:23px;height:23px}
.moving-cost-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.moving-cost-field{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fbfcff}
.moving-cost-label{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:.78rem}
.moving-cost-label i{display:grid;width:30px;height:30px;border-radius:9px;background:var(--soft-blue);color:var(--blue);font-style:normal;place-items:center}
.moving-cost-label i .moving-svg-icon{width:16px;height:16px}
.moving-money-input{display:flex;align-items:center;width:100%;min-height:50px;border:1px solid #cfd7ea;border-radius:13px;background:#fff;overflow:hidden}
.moving-money-input:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px rgba(82,103,255,.12)}
.moving-money-input input{min-width:0;min-height:48px;border:0!important;box-shadow:none!important;background:transparent}
.moving-money-input>b{flex:0 0 auto;padding:0 13px;color:var(--muted);font-size:.75rem}
.moving-replace-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:end}
.moving-replace-row>label{display:grid;gap:8px;color:var(--ink);font-size:.82rem;font-weight:750}
.moving-suggestion{min-height:76px;padding:14px 16px;border:1px solid #dbe2f6;border-radius:14px;background:#f7f9ff}
.moving-suggestion strong,.moving-suggestion small{display:block}
.moving-suggestion strong{margin-bottom:5px;color:var(--ink);font-size:.8rem}
.moving-suggestion small{color:var(--muted);font-size:.7rem;line-height:1.45}
.moving-start-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.moving-start-grid label{display:grid;gap:8px;color:var(--ink);font-size:.82rem;font-weight:750}
.moving-start-grid select{min-height:50px}
.moving-form-note{margin:12px 0 0;font-size:.76rem}
.moving-calculate{width:100%;min-height:54px;font-size:.92rem}
.moving-result{border-color:#cbd3ff;background:linear-gradient(135deg,#f5f6ff,#fff)}
.moving-result-heading{justify-content:space-between}
.moving-result-heading>div{max-width:650px}
.moving-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.moving-result-grid article{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}
.moving-result-grid article.primary{border-color:#b9c3ff;background:#eef1ff}
.moving-result-grid article.primary.negative{border-color:#f0bac2;background:#fff1f3}
.moving-result-grid span,.moving-result-grid strong,.moving-result-grid small{display:block}
.moving-result-grid span{margin-bottom:11px;color:var(--muted);font-size:.72rem;font-weight:700}
.moving-result-grid strong{margin-bottom:5px;color:var(--ink);font-family:"Sora",sans-serif;font-size:1.55rem;letter-spacing:-.03em}
.moving-result-grid small{color:var(--muted);font-size:.68rem;line-height:1.4}
.moving-result-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.moving-result-detail>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.8)}
.moving-result-detail span{color:var(--muted);font-size:.73rem;font-weight:700}
.moving-result-detail strong{color:var(--ink);font-family:"Sora",sans-serif;font-size:.86rem}
.negative-text{color:var(--error)!important}.positive-text{color:var(--success)!important}
.moving-disclaimer{margin:15px 2px 0;font-size:.7rem;line-height:1.5}
@media(max-width:760px){
    .moving-baseline-card{grid-template-columns:1fr;gap:18px;padding:20px}
    .moving-baseline-metrics{grid-template-columns:1fr}
    .moving-baseline-metrics>span{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px}
    .moving-baseline-metrics small{margin:0}.moving-baseline-metrics strong{font-size:.82rem}
    .moving-section-card,.moving-result{padding:19px;border-radius:21px}
    .moving-section-heading{gap:12px;margin-bottom:17px}.moving-heading-icon{width:42px;height:42px;border-radius:13px}
    .moving-cost-grid,.moving-replace-row,.moving-start-grid,.moving-result-grid,.moving-result-detail{grid-template-columns:1fr}
    .moving-cost-grid{gap:10px}.moving-cost-field{padding:12px}
    .moving-result-heading{gap:12px}.moving-result-icon{width:42px;height:42px}
    .moving-result-grid article{padding:16px}.moving-result-grid strong{font-size:1.35rem}
    .moving-notice{align-items:stretch;flex-direction:column;padding:18px}.moving-notice .button{width:100%}
}
@media(max-width:420px){
    .moving-hero{padding:24px 20px}.moving-hero .guide-icon{margin-bottom:22px}
    .moving-section-heading h2,.moving-result-heading h2{font-size:1rem}
    .moving-section-heading p:last-child,.moving-result-heading p:last-child{font-size:.76rem}
    .moving-cost-label{font-size:.74rem}.moving-money-input input{font-size:16px}
    .moving-result-detail>div{align-items:flex-start;flex-direction:column;gap:5px}
}


/* v0.4.0 buy-car decision guide */
.car-hero{background:linear-gradient(135deg,#0b1f44,#152d59)}
.car-form .moving-section-card{overflow:hidden}
.car-svg-icon{display:block;flex:0 0 auto;width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important}
.moving-heading-icon.car-dark,.moving-result-icon.car-dark{background:var(--ink);color:#fff}
.car-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}
.car-type-option{position:relative;display:flex;align-items:flex-start;gap:10px;min-width:0;padding:15px;border:1px solid var(--line);border-radius:16px;background:#fbfcff;cursor:pointer}
.car-type-option:has(input:checked){border-color:#aebaff;background:var(--soft-blue);box-shadow:0 0 0 2px rgba(82,103,255,.08)}
.car-type-option input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--blue)}
.car-type-option span,.car-type-option strong,.car-type-option small{display:block;min-width:0}
.car-type-option strong{margin-bottom:5px;color:var(--ink);font-family:"Sora",sans-serif;font-size:.78rem}
.car-type-option small{color:var(--muted);font-size:.68rem;line-height:1.4}
.car-result-detail{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:720px){
  .car-type-grid{grid-template-columns:1fr;gap:9px}
  .car-type-option{padding:13px 14px}
  .car-main-costs{grid-template-columns:1fr}
  .car-result-detail{grid-template-columns:1fr}
}


/* v0.4.1 defaults + car QA */
.moving-cost-field[hidden]{display:none!important}
.car-field-help{display:block;margin-top:7px;color:var(--muted);font-size:.68rem;line-height:1.4}
.defaults-form{display:grid;gap:16px}
.defaults-card{display:block}
.defaults-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.defaults-card-heading h2{margin:.1rem 0 0}
.defaults-card-heading>span{padding:7px 10px;border-radius:999px;background:var(--soft-blue);color:var(--blue);font-size:.7rem;font-weight:700;white-space:nowrap}
.defaults-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.defaults-field{display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:14px;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fbfcff}
.defaults-field span,.defaults-field strong,.defaults-field small{display:block;min-width:0}
.defaults-field strong{color:var(--ink);font-size:.8rem}
.defaults-field small{margin-top:3px;color:var(--muted);font-size:.66rem}
.defaults-field input{width:100%;min-width:0;text-align:right}
.defaults-save{width:100%}
.defaults-note-card{margin-top:16px}
@media(max-width:760px){
  .defaults-grid{grid-template-columns:1fr}
  .defaults-field{grid-template-columns:minmax(0,1fr) 120px;padding:12px}
  .defaults-card-heading{align-items:center}
}


/* v0.4.2 – Admin content editor */
.content-editor-grid{display:grid;gap:18px;margin-top:18px}
.content-editor-field{display:grid;gap:8px}
.content-editor-field>span{display:grid;gap:3px}
.content-editor-field small{color:var(--muted);font-weight:500}
.content-editor-field textarea{min-height:96px}
@media(min-width:860px){.content-editor-grid{grid-template-columns:1fr 1fr}.content-editor-field:first-child:last-child{grid-column:1/-1}}

/* v0.4.3 – Admin navigation QA: wrap instead of horizontal scrolling */
.admin-tabs{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin:-10px 0 34px;
    padding:0;
    overflow:visible;
    scrollbar-width:none;
}
.admin-tabs::-webkit-scrollbar{display:none}
.admin-tabs a{
    flex:0 0 auto;
    white-space:nowrap;
}
@media(max-width:780px){
    .admin-tabs{
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:8px;
        margin-top:-6px;
    }
    .admin-tabs a{
        display:flex;
        align-items:center;
        justify-content:center;
        min-width:0;
        padding:10px 8px;
        text-align:center;
        white-space:normal;
        line-height:1.2;
    }
}
@media(max-width:520px){
    .admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* v0.4.4 – guide replacement picker, bug screenshots and database QA */
.database-update-form-top{margin:4px 0 8px}
.database-update-form-top .button{min-width:230px}
.database-migration-list{margin-top:18px}
.replacement-picker{display:grid;gap:12px}
.replacement-picker-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #dbe2f6;border-radius:15px;background:#f7f9ff}
.replacement-picker-head>div,.replacement-picker-head strong,.replacement-picker-head small{display:block;min-width:0}
.replacement-picker-head strong{margin-bottom:4px;color:var(--ink);font-size:.82rem}
.replacement-picker-head small{color:var(--muted);font-size:.7rem;line-height:1.45}
.replacement-picker-head>span{flex:0 0 auto;color:var(--muted);font-size:.72rem;white-space:nowrap}
.replacement-picker-head>span b{color:var(--ink);font-family:"Sora",sans-serif;font-size:.92rem}
.replacement-options{display:grid;gap:8px}
.replacement-option{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer}
.replacement-option:has(input:checked){border-color:#b8c2ff;background:#f7f8ff}
.replacement-option input{width:18px;height:18px;margin:0;accent-color:var(--blue)}
.replacement-option span,.replacement-option span strong,.replacement-option span small{display:block;min-width:0}
.replacement-option span strong{color:var(--ink);font-size:.78rem}
.replacement-option span small{margin-top:3px;color:var(--muted);font-size:.66rem}
.replacement-option>b{color:var(--ink);font-size:.75rem;white-space:nowrap}
.replacement-empty{min-height:0}
.bug-screenshot-field{display:grid;gap:8px;padding:15px;border:1px solid var(--line);border-radius:16px;background:#fbfcff}
.bug-screenshot-field>span{color:var(--muted);font-size:.7rem;line-height:1.45}
.bug-screenshot-field input[type=file]{padding:10px;background:#fff}
.bug-screenshot-link{display:inline-grid;gap:8px;margin-top:14px;max-width:360px;color:var(--blue);font-size:.75rem;font-weight:700;text-decoration:none}
.bug-screenshot-link img{display:block;width:100%;max-height:240px;object-fit:cover;border:1px solid var(--line);border-radius:14px;background:#fff}
@media(max-width:620px){
  .database-update-form-top .button{width:100%;min-width:0}
  .replacement-picker-head{align-items:flex-start;flex-direction:column;gap:8px}
  .replacement-option{grid-template-columns:22px minmax(0,1fr);align-items:start}
  .replacement-option>b{grid-column:2}
  .bug-screenshot-link{max-width:100%}
}


/* v0.5.0 Smart Budget Setup */
.smart-import-page{padding-bottom:48px}
.import-upload-card,.import-review-card{margin-top:18px;padding:24px;border-radius:22px}
.import-step-badge{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--primary,#5267ff);color:#fff;font-weight:800;margin-bottom:8px}
.import-upload-form{display:grid;gap:14px;margin-top:18px}
.file-drop{display:flex;flex-direction:column;gap:5px;padding:22px;border:1.5px dashed rgba(11,31,68,.24);border-radius:18px;background:rgba(255,255,255,.6);cursor:pointer}
.file-drop input{margin-top:10px;max-width:100%}
.privacy-note{margin-top:16px;padding:14px 16px;border-radius:14px;background:rgba(82,103,255,.07);font-size:.92rem}
.import-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
.import-summary-grid .metric-card{padding:18px;border-radius:18px}
.import-summary-grid .metric-card span{display:block;font-size:.82rem;color:var(--muted,#687084);margin-bottom:6px}
.import-summary-grid .metric-card strong{font-size:1.35rem}
.import-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px}
.import-section-head>div{display:flex;align-items:center;gap:10px}
.import-section-head .import-step-badge{margin:0}
.import-section-head h2{margin:0}
.import-section-head p{max-width:520px;margin:0;color:var(--muted,#687084);font-size:.9rem}
.import-list{display:grid;gap:10px}
.import-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px;border:1px solid rgba(11,31,68,.09);border-radius:15px;background:#fff;cursor:pointer}
.import-row input{width:20px;height:20px}
.import-row-main{min-width:0}
.import-row-main strong,.import-row-main small{display:block}
.import-row-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.import-row-main small{margin-top:3px;color:var(--muted,#687084)}
.unknown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.unknown-item{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:13px;background:rgba(11,31,68,.04);font-size:.9rem}
.unknown-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.import-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}
.smart-budget-cta{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:22px}
.smart-budget-cta h2{margin:.2rem 0 .45rem}
.smart-budget-cta p{margin:0;max-width:650px}
@media(max-width:720px){
  .import-summary-grid{grid-template-columns:1fr}
  .import-upload-card,.import-review-card{padding:18px}
  .import-section-head{display:block}
  .import-section-head>div{margin-bottom:8px}
  .import-row{grid-template-columns:auto minmax(0,1fr);align-items:start}
  .import-row>strong{grid-column:2}
  .unknown-grid{grid-template-columns:1fr}
  .import-actions{flex-direction:column-reverse}
  .import-actions .btn{width:100%;text-align:center}
  .smart-budget-cta{display:block}
  .smart-budget-cta .btn{display:block;margin-top:15px;width:100%;text-align:center}
}


/* v0.5.1 — Budget import entry + non-scrolling filter controls */
.budget-import-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    margin-top:18px;
    padding:22px 24px;
    border:1px solid rgba(82,103,255,.16);
    border-radius:22px;
    background:linear-gradient(135deg,rgba(82,103,255,.075),rgba(168,183,255,.12));
}
.budget-import-cta-copy{
    display:flex;
    align-items:flex-start;
    gap:15px;
    min-width:0;
}
.budget-import-cta-icon{
    display:grid;
    flex:0 0 auto;
    width:44px;
    height:44px;
    border-radius:14px;
    background:#fff;
    color:var(--blue);
    box-shadow:0 8px 20px rgba(11,31,68,.08);
    place-items:center;
}
.budget-import-cta-icon .budget-svg-icon{width:21px;height:21px}
.budget-import-cta .eyebrow{margin:0 0 3px}
.budget-import-cta h2{margin:0 0 5px;font-size:1.05rem}
.budget-import-cta p{margin:0;max-width:650px;color:var(--muted);font-size:.78rem;line-height:1.5}
.budget-import-cta-button{flex:0 0 auto;white-space:nowrap}

@media(max-width:720px){
    .budget-import-cta{
        display:block;
        padding:18px;
        border-radius:20px;
    }
    .budget-import-cta-copy{gap:12px}
    .budget-import-cta-icon{width:40px;height:40px;border-radius:12px}
    .budget-import-cta-button{
        display:flex;
        width:100%;
        min-height:48px;
        margin-top:16px;
        justify-content:center;
        align-items:center;
        white-space:normal;
        text-align:center;
    }

    /* All budget filters stay visible. No horizontal swipe/scroll. */
    .budget-filter-pills{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:8px!important;
        width:100%!important;
        margin:0 0 12px!important;
        padding:0!important;
        overflow:visible!important;
        overflow-x:visible!important;
        flex-wrap:wrap!important;
        scrollbar-width:auto!important;
    }
    .budget-filter-pills a{
        display:flex!important;
        width:100%!important;
        min-width:0!important;
        min-height:40px!important;
        padding:8px 7px!important;
        justify-content:center!important;
        flex:1 1 auto!important;
        white-space:normal!important;
        line-height:1.15!important;
        text-align:center!important;
    }
}
@media(max-width:390px){
    .budget-filter-pills a{
        font-size:.64rem!important;
        padding-left:5px!important;
        padding-right:5px!important;
    }
    .budget-filter-pills a span{
        width:14px!important;
        height:14px!important;
        min-width:14px!important;
        min-height:14px!important;
    }
    .budget-filter-pills a .budget-svg-icon{
        width:13px!important;
        height:13px!important;
    }
}


/* v0.6.0 — Universal Smart Budget Importer */
.smart-budget-page{padding-bottom:32px}
.smart-upload-card,.smart-review-section{margin-top:18px}
.smart-upload-form{display:grid;gap:14px}
.smart-file-drop{display:grid;gap:5px;padding:24px;border:1.5px dashed rgba(82,103,255,.38);border-radius:18px;background:rgba(82,103,255,.045);cursor:pointer}
.smart-file-drop strong{font-family:Sora,Inter,sans-serif;font-size:.95rem}
.smart-file-drop span,.smart-privacy{color:var(--muted);font-size:.76rem;line-height:1.5}
.smart-file-drop input{margin-top:10px;max-width:100%}
.smart-privacy{margin-top:14px;padding:12px 14px;border-radius:14px;background:rgba(11,31,68,.045)}
.smart-mapping-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.smart-mapping-grid label{display:grid;gap:6px}
.smart-mapping-grid label>span{font-size:.72rem;font-weight:800;color:var(--ink)}
.smart-mapping-grid select{width:100%;min-height:44px;border:1px solid var(--border);border-radius:12px;background:#fff;padding:8px 10px;color:var(--ink)}
.smart-mapping-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:4px}
.smart-import-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
.smart-import-metrics article{padding:16px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(11,31,68,.05)}
.smart-import-metrics span,.smart-import-metrics small{display:block;color:var(--muted);font-size:.68rem}
.smart-import-metrics strong{display:block;margin-top:4px;font-family:Sora,Inter,sans-serif;font-size:1.05rem}
.smart-review-list{display:grid;gap:8px}
.smart-review-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:#fff;cursor:pointer}
.smart-review-row>input{width:18px;height:18px}
.smart-review-main{min-width:0}
.smart-review-main strong,.smart-review-main small{display:block}
.smart-review-main strong{font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smart-review-main small{margin-top:3px;color:var(--muted);font-size:.67rem}
.smart-review-row>strong{font-size:.76rem;white-space:nowrap}
.smart-unknown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.smart-unknown-grid article{padding:12px;border:1px solid var(--border);border-radius:14px;background:#fff}
.smart-unknown-grid span,.smart-unknown-grid strong,.smart-unknown-grid small{display:block}
.smart-unknown-grid span{font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smart-unknown-grid strong{margin-top:4px;font-size:.78rem}
.smart-unknown-grid small{margin-top:3px;color:var(--muted);font-size:.64rem}
.smart-import-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
@media(max-width:720px){
 .smart-mapping-grid{grid-template-columns:1fr}
 .smart-mapping-actions{grid-column:auto;display:grid;grid-template-columns:1fr}
 .smart-import-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .smart-review-row{grid-template-columns:auto minmax(0,1fr)}
 .smart-review-row>strong{grid-column:2}
 .smart-unknown-grid{grid-template-columns:1fr}
 .smart-import-actions{display:grid;grid-template-columns:1fr}
 .smart-import-actions .button,.smart-mapping-actions .button{width:100%;justify-content:center;text-align:center}
}


/* v0.6.2 — robust login / Husk mig */
.remember-me-row{
    display:flex!important;
    align-items:flex-start;
    gap:11px!important;
    cursor:pointer;
    padding:2px 0;
}
.remember-me-row input{
    width:19px!important;
    min-width:19px!important;
    height:19px!important;
    min-height:19px!important;
    margin:1px 0 0!important;
    padding:0!important;
    accent-color:var(--blue);
}
.remember-me-row span{
    display:grid;
    gap:2px;
    min-width:0;
}
.remember-me-row strong{
    color:var(--ink);
    font-size:.8rem;
}
.remember-me-row small{
    color:var(--muted);
    font-size:.68rem;
    font-weight:500;
    line-height:1.35;
}


/* v0.7.0 — Smart Budget manual learning + category admin */
.smart-unknown-card{display:grid!important;gap:9px}
.smart-unknown-title{display:flex;justify-content:space-between;gap:12px;align-items:start}
.smart-unknown-title span{font-weight:800}
.smart-category-select{display:grid;gap:5px;margin-top:4px}
.smart-category-select>span{font-size:.65rem;font-weight:800;color:var(--muted)}
.smart-category-select select{width:100%;min-height:40px;border:1px solid var(--border);border-radius:11px;background:#fff;padding:7px 9px;color:var(--ink)}
.smart-learn-check{display:flex;align-items:center;gap:8px;font-size:.68rem;font-weight:700;color:var(--ink);cursor:pointer}
.smart-learn-check input{width:17px;height:17px;accent-color:var(--blue)}
.category-create-grid{display:grid;grid-template-columns:2fr 1.4fr .7fr auto;gap:10px;align-items:end}
.category-create-grid label,.admin-category-row label{display:grid;gap:5px}
.category-create-grid label>span,.admin-category-row label>span{font-size:.65rem;font-weight:800;color:var(--muted)}
.category-create-grid input,.category-create-grid select,.admin-category-row input,.admin-category-row select{width:100%;min-height:40px;border:1px solid var(--border);border-radius:11px;background:#fff;padding:7px 9px;color:var(--ink)}
.admin-category-list{display:grid;gap:8px}
.admin-category-row{display:grid;grid-template-columns:2fr 1.35fr .65fr .55fr auto;gap:9px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:14px;background:#fff}
.admin-category-active{display:flex!important;align-items:center;gap:7px;padding-bottom:10px}
.admin-category-active input{width:17px!important;height:17px!important;min-height:17px!important;padding:0!important}
.admin-category-active span{color:var(--ink)!important}
@media(max-width:820px){
 .category-create-grid{grid-template-columns:1fr 1fr}
 .admin-category-row{grid-template-columns:1fr 1fr}
 .admin-category-row .button{width:100%;justify-content:center}
}
@media(max-width:520px){
 .category-create-grid,.admin-category-row{grid-template-columns:1fr}
 .category-create-grid .button,.admin-category-row .button{width:100%;justify-content:center}
 .admin-category-active{padding-bottom:0}
}


/* v0.8.0 — Variable income + Danish file picker */
.smart-native-file{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.smart-file-picker{position:relative}
.smart-file-control{display:flex;align-items:center;gap:12px;margin-top:12px;min-width:0}
.smart-file-control .button{flex:0 0 auto}
.smart-file-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)!important;font-size:.74rem!important}
.variable-income-summary{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;align-items:center;margin-top:16px;padding:19px 20px;border:1px solid rgba(82,103,255,.17);border-radius:20px;background:rgba(82,103,255,.055)}
.variable-income-summary h2{margin:2px 0 5px;font-size:1rem}
.variable-income-summary p{margin:0;color:var(--muted);font-size:.73rem;line-height:1.5}
.variable-income-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.variable-income-metrics span{padding:10px;border-radius:13px;background:#fff;border:1px solid var(--border)}
.variable-income-metrics small,.variable-income-metrics strong{display:block}
.variable-income-metrics small{color:var(--muted);font-size:.6rem}.variable-income-metrics strong{margin-top:4px;font-size:.72rem}
.variable-income-editor{grid-column:1/-1;padding:16px;border:1px solid rgba(82,103,255,.18);border-radius:17px;background:rgba(82,103,255,.04)}
.variable-income-editor[hidden],.variable-income-details[hidden],[data-custom-planning][hidden],[data-budget-frequency-field][hidden]{display:none!important}
.variable-income-editor-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.variable-income-editor-head h3{margin:2px 0 4px;font-size:.9rem}
.variable-income-editor-head p{margin:0;max-width:650px;color:var(--muted);font-size:.68rem;line-height:1.45}
.income-type-options{display:flex;gap:6px}.income-type-options label{cursor:pointer}.income-type-options input{position:absolute;opacity:0}
.income-type-options span{display:block;padding:8px 13px;border:1px solid var(--border);border-radius:999px;background:#fff;font-size:.69rem;font-weight:800}
.income-type-options input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.variable-income-details{margin-top:16px;padding-top:15px;border-top:1px solid var(--border)}
.income-history-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}
.income-history-head strong{font-size:.75rem}.income-history-head small{color:var(--muted);font-size:.62rem}
.income-history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.income-history-grid label,.income-planning-grid label{display:grid;gap:5px;font-size:.65rem;font-weight:700}
.income-planning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.income-planning-grid select{width:100%;min-height:42px;border:1px solid var(--border);border-radius:11px;background:#fff;padding:7px 9px}
.field-note{display:block;color:var(--muted);font-weight:500}
.guide-income-note{margin:12px 0;padding:13px 15px;border-radius:14px;background:rgba(82,103,255,.06);border:1px solid rgba(82,103,255,.14)}
.guide-income-note strong{font-size:.76rem}.guide-income-note p{margin:3px 0 0;color:var(--muted);font-size:.68rem;line-height:1.45}
@media(max-width:720px){
 .smart-file-control{display:grid;grid-template-columns:1fr}
 .smart-file-control .button{width:100%;justify-content:center;text-align:center}.smart-file-name{text-align:center}
 .variable-income-summary{grid-template-columns:1fr}.variable-income-metrics{grid-template-columns:1fr}
 .variable-income-editor-head{display:grid}.income-type-options{width:100%}.income-type-options label{flex:1}.income-type-options span{text-align:center}
 .income-history-head{display:grid}.income-history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.income-planning-grid{grid-template-columns:1fr}
}


/* v0.9.0 — password reset + Alpha analytics */
.auth-help-link{margin:12px 0 0;text-align:center;font-size:.78rem}
.auth-help-link a{font-weight:750;color:var(--primary)}
.analytics-periods{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 16px}
.analytics-periods a{padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);font-size:.68rem;font-weight:800;text-decoration:none}
.analytics-periods a.active{background:var(--ink);border-color:var(--ink);color:#fff}
.analytics-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.analytics-kpi-card{padding:15px;border:1px solid var(--border);border-radius:16px;background:#fff}
.analytics-kpi-card span,.analytics-kpi-card strong,.analytics-kpi-card small{display:block}
.analytics-kpi-card span{font-size:.66rem;font-weight:750;color:var(--muted)}
.analytics-kpi-card strong{margin:5px 0 3px;font-family:'Sora',sans-serif;font-size:1.4rem;color:var(--ink)}
.analytics-kpi-card small{font-size:.61rem;line-height:1.4;color:var(--muted)}
.analytics-list-link{color:inherit;text-decoration:none}
.compact-list .analytics-list-link{display:flex;justify-content:space-between;align-items:center;gap:12px}
.analytics-list-link:hover strong{color:var(--primary)}
.activity-timeline{display:grid}
.activity-timeline article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}
.activity-timeline article:last-child{border-bottom:0}
.activity-dot{width:8px;height:8px;border-radius:999px;background:var(--primary)}
.activity-timeline-main{display:grid;gap:2px}
.activity-timeline-main strong{font-size:.72rem}.activity-timeline-main small{font-size:.61rem;color:var(--muted)}
.activity-timeline-main a{color:inherit;font-weight:750}
.activity-timeline time{font-size:.6rem;color:var(--muted);white-space:nowrap}
.user-card-actions{display:flex;flex-wrap:wrap;gap:7px}
.stats-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){
 .analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .stats-grid-three{grid-template-columns:1fr}
 .activity-timeline article{grid-template-columns:auto minmax(0,1fr)}
 .activity-timeline time{grid-column:2}
}
@media(max-width:480px){
 .analytics-kpi-grid{grid-template-columns:1fr}
}

/* v0.10.0 Budget foundation */
.budget-summary-polished{grid-template-columns:repeat(4,minmax(0,1fr))}
.budget-metric.savings{border-color:rgba(82,103,255,.24);background:linear-gradient(145deg,#fff,#f5f6ff)}
.budget-modern-entry.savings{border-left:4px solid #5267ff}
.budget-export-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;margin:18px 0;border:1px solid rgba(11,31,68,.12);border-radius:18px;background:#fff}
.budget-export-bar div:first-child{display:flex;flex-direction:column;gap:4px}.budget-export-bar small{color:#667085}.budget-export-actions{display:flex;gap:10px;flex-wrap:wrap}
.moving-cost-field{position:relative}.guide-cost-remove,.guide-cost-restore{border:0;background:transparent;color:#5267ff;font:inherit;font-size:12px;font-weight:700;cursor:pointer;padding:4px 0;text-align:left}.guide-cost-restore{color:#0b1f44}.moving-cost-field.is-removed{opacity:.62}.moving-cost-field.is-removed .moving-money-input{display:none}
@media(max-width:900px){.budget-summary-polished{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.budget-summary-polished{grid-template-columns:1fr}.budget-export-bar{align-items:flex-start;flex-direction:column}.budget-export-actions{width:100%}.budget-export-actions .button{flex:1;text-align:center}}

/* v0.10.1 QA: desktop budget cards */
@media(min-width:901px){
  .budget-summary-grid.budget-summary-polished{gap:16px}
  .budget-summary-polished .budget-metric{
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    align-items:center;
    gap:18px;
    min-width:0;
    min-height:176px;
    padding:22px 20px;
    overflow:hidden;
  }
  .budget-summary-polished .budget-metric>div{min-width:0}
  .budget-metric-icon{
    width:76px;
    height:76px;
    min-width:76px;
    min-height:76px;
    align-self:center;
  }
  .budget-metric-icon .budget-svg-icon{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
  .budget-summary-polished .budget-metric strong{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:2px;
    min-width:0;
    margin:0 0 7px;
    line-height:1;
  }
  .budget-summary-polished .budget-metric-amount{
    display:block;
    max-width:100%;
    font-size:clamp(1.65rem,2.25vw,2.05rem);
    line-height:1.05;
    white-space:nowrap;
    letter-spacing:-.035em;
  }
  .budget-summary-polished .budget-metric strong em{
    display:block;
    margin:0;
    font-size:.72rem;
    line-height:1.2;
    letter-spacing:0;
  }
  .budget-summary-polished .budget-metric small{display:block;line-height:1.45}
}
@media(min-width:901px) and (max-width:1180px){
  .budget-summary-polished .budget-metric{grid-template-columns:62px minmax(0,1fr);gap:13px;padding:19px 16px}
  .budget-metric-icon{width:62px;height:62px;min-width:62px;min-height:62px}
  .budget-metric-icon .budget-svg-icon{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important}
  .budget-summary-polished .budget-metric-amount{font-size:clamp(1.45rem,2.1vw,1.8rem)}
}
@media(max-width:900px){
  .budget-summary-polished .budget-metric strong{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:1px!important}
  .budget-summary-polished .budget-metric strong em{display:block!important;margin-left:0!important}
}

/* v0.10.1 Housing support in moving guide */
.housing-support-guide{margin-top:20px;padding:18px;border:1px solid rgba(82,103,255,.18);border-radius:18px;background:linear-gradient(145deg,#f8f9ff,#fff);display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,240px);gap:16px 22px;align-items:center}
.housing-support-copy{display:flex;gap:14px;align-items:flex-start}.housing-support-copy .moving-heading-icon{flex:0 0 auto}.moving-heading-icon.support{background:#eef0ff;color:#5267ff}.housing-support-copy strong{display:block;margin-bottom:5px;color:#0b1f44}.housing-support-copy p{margin:0;color:#667085;font-size:.86rem;line-height:1.5}.housing-support-copy small{display:block;margin-top:7px;color:#526070;font-size:.75rem;line-height:1.45}.housing-support-field{display:grid;gap:7px}.housing-support-field>span:first-child{font-size:.76rem;font-weight:750;color:#0b1f44}.housing-support-link{grid-column:1/-1;width:max-content;color:#5267ff;font-size:.78rem;font-weight:750;text-decoration:none}.housing-support-link:hover{text-decoration:underline}
@media(max-width:720px){.housing-support-guide{grid-template-columns:1fr}.housing-support-link{grid-column:auto;max-width:100%}}
.moving-result-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:980px) and (min-width:721px){.moving-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.10.2 hotfix: budget metric cards — vertical desktop layout */
@media(min-width:901px){
  .budget-summary-grid.budget-summary-polished{gap:18px}
  .budget-summary-polished .budget-metric{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:0!important;
    min-width:0!important;
    min-height:228px!important;
    padding:22px!important;
    overflow:visible!important;
  }
  .budget-summary-polished .budget-metric>div{width:100%;min-width:0}
  .budget-metric-icon{
    display:grid!important;
    width:58px!important;height:58px!important;
    min-width:58px!important;min-height:58px!important;
    margin:0 0 15px!important;
    align-self:flex-start!important;
    place-items:center!important;
  }
  .budget-metric-icon .budget-svg-icon{width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important}
  .budget-summary-polished .budget-metric-label{margin:0 0 6px!important;font-size:.82rem!important}
  .budget-summary-polished .budget-metric strong{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:3px!important;
    width:100%!important;
    margin:0 0 8px!important;
    line-height:1!important;
  }
  .budget-summary-polished .budget-metric-amount{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(1.55rem,2.15vw,2rem)!important;
    line-height:1.05!important;
    letter-spacing:-.035em!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  .budget-summary-polished .budget-metric strong em{display:block!important;margin:0!important;font-size:.7rem!important;line-height:1.2!important}
  .budget-summary-polished .budget-metric small{font-size:.72rem!important;line-height:1.45!important}
}
@media(min-width:901px) and (max-width:1120px){
  .budget-summary-polished{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .budget-summary-polished .budget-metric{min-height:205px!important}
  .budget-summary-polished .budget-metric-amount{font-size:2rem!important}
}

/* v0.10.3 QA polish */
.budget-summary-polished span.budget-metric-icon{display:grid!important;align-items:center!important;justify-items:center!important;place-items:center!important;line-height:1!important}
.budget-summary-polished span.budget-metric-icon .budget-svg-icon{display:block!important;margin:auto!important}
.budget-metric.savings .budget-metric-icon{background:#e9ecff!important;color:#5267ff!important}
@media(max-width:620px){.budget-summary-polished .budget-metric-amount{font-size:1.65rem!important}.budget-summary-polished .budget-metric strong{font-size:1.65rem!important}.budget-summary-polished span.budget-metric-icon{width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important}}
.guide-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 28px}.guide-hub-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;padding:24px;border:1px solid var(--line);border-radius:24px;background:#fff;color:var(--ink);box-shadow:0 12px 30px rgba(11,31,68,.05)}a.guide-hub-card{transition:transform .16s ease,border-color .16s ease}a.guide-hub-card:hover{transform:translateY(-2px);border-color:rgba(82,103,255,.4)}.guide-hub-icon{display:grid;width:58px;height:58px;border-radius:18px;background:var(--soft-blue);color:var(--blue);place-items:center;font-size:1.45rem;font-weight:800}.guide-hub-icon .ui-icon{width:29px;height:29px}.guide-hub-card small{display:block;margin-bottom:5px;color:var(--blue);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.guide-hub-card h2{margin:0 0 8px;font-size:1.05rem}.guide-hub-card p{margin:0 0 14px;color:var(--muted);font-size:.82rem;line-height:1.5}.guide-hub-card strong{font-size:.78rem;color:var(--blue)}.guide-hub-card.coming{background:rgba(255,255,255,.62)}.guide-hub-card.coming .guide-hub-icon{background:#f1f2f5;color:#7b8497}.guide-hub-card.coming strong{color:#7b8497}
.admin-category-filters{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(160px,.8fr) minmax(140px,.7fr) auto auto;gap:12px;align-items:end;margin:0 0 10px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--soft-blue)}.admin-category-filters label{display:grid;gap:6px}.admin-category-filters label>span{font-size:.7rem;font-weight:750;color:var(--muted)}.admin-category-filters input,.admin-category-filters select{width:100%}.admin-filter-count{margin:0 0 14px;color:var(--muted);font-size:.75rem}
@media(max-width:760px){.guide-hub-grid{grid-template-columns:1fr}.admin-category-filters{grid-template-columns:1fr 1fr}.admin-category-filters label:first-child{grid-column:1/-1}}
@media(max-width:480px){.guide-hub-card{grid-template-columns:1fr;padding:20px}.admin-category-filters{grid-template-columns:1fr}.admin-category-filters label:first-child{grid-column:auto}}

/* v0.10.4 QA */
.replacement-adjuster{border:1px solid #dbe1f3;border-radius:18px;background:#fff;overflow:hidden}
.replacement-adjuster>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;background:#f7f8ff;color:#0b1f44}
.replacement-adjuster>summary::-webkit-details-marker{display:none}.replacement-adjuster>summary span{display:grid;gap:3px}.replacement-adjuster>summary small{color:#667085;font-weight:500}.replacement-adjuster>summary>b{white-space:nowrap;color:#5267ff}.replacement-adjuster .replacement-picker{border:0;border-radius:0}
.admin-category-filters{display:grid;grid-template-columns:minmax(220px,2fr) repeat(2,minmax(150px,1fr)) auto;gap:12px;align-items:end;margin-bottom:18px}.category-order-actions{display:flex;gap:6px}.category-order-actions .button{min-width:38px;padding-inline:10px}.bug-delete-form{margin-top:10px}.button-danger{background:#fff;border:1px solid #f1b5b5;color:#b42318}.button-danger:hover{background:#fff1f0}.activity-load-more{display:flex;justify-content:center;padding-top:18px}
@media(max-width:800px){.admin-category-filters{grid-template-columns:1fr 1fr}.admin-category-filters label:first-child{grid-column:1/-1}.replacement-adjuster>summary{align-items:flex-start;flex-direction:column}}


/* v0.10.5 QA */
.replacement-more{margin:14px 0 0;border-top:1px solid #e4e8f3;padding-top:12px}.replacement-more>summary{cursor:pointer;color:#5267ff;font-weight:800;font-size:.82rem}.replacement-more .replacement-options{margin-top:12px}.guide-knowledge{margin:22px 0;padding:22px;border:1px solid #dbe1f3;border-radius:22px;background:linear-gradient(145deg,#fffdf8,#f8f9ff)}.guide-knowledge h2{margin:4px 0 8px}.guide-knowledge>p:not(.eyebrow){color:#667085}.guide-knowledge-list{display:grid;gap:10px;margin-top:16px}.guide-knowledge-list details{border:1px solid #e2e6f1;border-radius:14px;background:#fff;padding:0 15px}.guide-knowledge-list summary{cursor:pointer;padding:13px 0;font-weight:750;color:#0b1f44}.guide-knowledge-list p{margin:0;padding:0 0 14px;color:#667085;font-size:.82rem;line-height:1.55}
@media(max-width:720px){.moving-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.moving-result-grid article{min-width:0;padding:15px!important}.moving-result-grid span{font-size:.67rem;line-height:1.25;margin-bottom:8px}.moving-result-grid strong{font-size:1.3rem!important;line-height:1.1;white-space:nowrap}.moving-result-grid small{font-size:.64rem;line-height:1.35}.moving-result-detail{grid-template-columns:1fr!important}}
