/* V11: one palette, derived from each cashbox's chosen brand color. */
:root{--brand:#235347;--on-brand:#fff;--brand-link:#235347;--brand-soft:color-mix(in srgb,var(--brand) 12%,#f7fff9);--brand-edge:color-mix(in srgb,var(--brand) 30%,#fff);--page-base:color-mix(in srgb,var(--brand) 7%,#f6fbf8)}
html{--ink:#163832;--muted:#49675e;--glass:color-mix(in srgb,var(--brand) 6%,#ffffffeb);--field:#ffffffd9;--line:color-mix(in srgb,var(--brand) 22%,#fff);--edge:#ffffffb0}
html[data-theme=dark]{--ink:#edf7f0;--muted:#b6cfc2;--glass:#10231fec;--glass-inner:#ffffff08;--field:#102923;--line:#ffffff29;--edge:#ffffff30;--page-base:#081b17;--brand-soft:color-mix(in srgb,var(--brand) 10%,#132720);--brand-edge:color-mix(in srgb,var(--brand) 40%,#8eb69b)}
html body{background:radial-gradient(ellipse at 8% 0%,color-mix(in srgb,var(--brand) 24%,transparent),transparent 50%),radial-gradient(ellipse at 100% 70%,color-mix(in srgb,var(--brand) 18%,transparent),transparent 55%),var(--page-base)!important;color:var(--ink)}
html body :is(.panel,.auth,.card,.family-card,.member-card,.box-tile,.responsible-group,.topbar,.entry-dialog,.nav-popup,.name-picker-panel,.ledger-row,dialog){background:var(--glass)!important;color:var(--ink);border-color:var(--edge)!important}
html body :is(input,textarea,select){background:var(--field)!important;color:var(--ink)!important;border-color:var(--line)!important}
html body :is(a,.text-button,.tile-open){color:var(--brand-link)}
html[data-theme=dark] body :is(a,.text-button,.tile-open){color:#c8ecd6}
html body :is(.primary,button.primary,a.primary){background:var(--brand)!important;color:var(--on-brand)!important;border-color:var(--brand-edge)!important}
html body :is(.secondary,.theme-toggle,.nav-home,.nav-group summary){background:var(--brand-soft)!important;color:var(--ink)!important;border-color:var(--brand-edge)!important}
html body :is([aria-current=page],.tabs a[aria-current=page]){background:var(--brand)!important;color:var(--on-brand)!important}
html body :is(.card-bubble,.profile-avatar){background:var(--brand-soft)!important;color:var(--ink)!important;border-color:var(--brand-edge)!important}
html body .cards .balance{background:linear-gradient(125deg,var(--brand),color-mix(in srgb,var(--brand) 74%,#051f20))!important;color:var(--on-brand)!important}
html body .cards .balance :is(strong,small,span){color:inherit!important}
html body :is(.cards article:not(.balance),.plan-card,.wizard-step){background:var(--glass)!important;border-color:var(--brand-edge)!important;color:var(--ink)}
html body :focus-visible{outline:3px solid var(--brand-edge);outline-offset:3px}
html body progress{accent-color:var(--brand)}
html body .positive{color:#238267!important}html[data-theme=dark] body .positive{color:#7cdeb7!important}
html[data-theme=dark] body :is(.error,.negative){color:#ffb6b6!important}html[data-theme=dark] body .error{background:#50262b!important}
html[data-theme=dark] body :is(.notice,.hint,.empty,.panel-footer,.management-menu,.ledger-summary,.ledger-filters){background-color:var(--glass)!important;color:var(--muted)!important}
html[data-theme=dark] body :is(p,small,label,.eyebrow){color:inherit}
.plan-badge{display:inline-flex;align-self:center;align-items:center;border-radius:999px;padding:5px 10px;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.06em;white-space:nowrap}
html body .plan-free{background:#dce8df;color:#294b3b}html body .plan-plus{background:#19654c;color:#edfff4}html body .plan-pro{background:#f1d28a;color:#483619}
.person-badge{display:inline-block;border-radius:99px;padding:3px 8px;font-size:11px;font-weight:700;margin:3px;background:#e8e4fa;color:#463a72}.badge-cashier{background:#f8e7bf;color:#695014}.badge-local{background:#cfeddf;color:#185139}.badge-global{background:#dce5ff;color:#2d417c}.badge-teacher{background:#f9dfe8;color:#753952}.badge-group{background:#e0efc8;color:#435826}
.user-avatar{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border-radius:50%;object-fit:cover;background:#d9eddd;color:#234d3e;font-size:20px;vertical-align:middle;margin-right:8px}.avatar-tone-1{background:#f5e2c2}.avatar-tone-2{background:#e2dbf3}.avatar-tone-3{background:#d6ebef}.avatar-tone-4{background:#f4dce2}.person-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.compact-users{width:100%;border-collapse:collapse}.compact-users td,.compact-users th{padding:12px;text-align:left;border-bottom:1px solid var(--line)}.compact-users td small{display:block}.filter-grid{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.filter-grid label{flex:1;min-width:150px}.pagination{display:flex;gap:12px;align-items:center;justify-content:center;margin:20px}.v11-result-note{min-height:1.5em}.wizard-grid,.feature-grid,.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.wizard-step,.plan-card{padding:24px;border:1px solid var(--edge);border-radius:24px}.wizard-step.done{border-color:#49a780}.readonly-banner{padding:18px;border:2px dashed var(--brand-edge);border-radius:16px}
.public-home{max-width:1240px;margin:auto;padding:28px}.landing-nav{display:flex;gap:18px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;margin:36px 0 64px}.hero-copy h1{font-size:clamp(38px,5vw,68px);line-height:1.08;letter-spacing:-.04em;margin:16px 0}.hero-copy>p{font-size:19px;line-height:1.7}.hero-art{width:100%;height:auto;max-height:620px;object-fit:contain;border-radius:32px;box-shadow:0 22px 70px #12352730}.landing-section{margin:64px 0}.landing-section h2{font-size:32px}.plan-price{font-size:38px;font-weight:800}.plan-card.featured{border:2px solid var(--brand-edge);transform:translateY(-8px)}.landing-login{max-width:520px;margin:auto}.marketing-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px}.marketing-gallery img{width:100%;height:auto;border-radius:28px}.preview-swatch{padding:22px;border:1px solid var(--brand-edge);border-radius:20px;background:var(--brand-soft);margin:18px 0}.card,.panel{overflow-wrap:anywhere}.group-checkboxes{max-height:340px;overflow:auto}
@media(max-width:700px){.hero-grid{grid-template-columns:1fr;gap:24px}.hero-art{max-height:520px}.public-home{padding:16px}.wizard-grid,.feature-grid,.pricing-grid{grid-template-columns:1fr}.plan-card.featured{transform:none}.topbar{flex-wrap:wrap}.compact-users td,.compact-users th{padding:8px;font-size:13px}.compact-users .user-avatar{display:none}.marketing-gallery{gap:12px}.filter-grid{display:grid;grid-template-columns:1fr 1fr}.filter-grid label{min-width:0}}
@media(prefers-reduced-motion:no-preference){.wizard-step,.plan-card{transition:transform .18s ease,box-shadow .18s ease}.wizard-step:hover{transform:translateY(-2px)}}

html[data-theme=dark] body .plan-free{color:#294b3b}html[data-theme=dark] body .plan-plus{color:#edfff4}html[data-theme=dark] body .plan-pro{color:#483619}
html body .card{padding:22px;border:1px solid var(--edge);border-radius:22px}.landing-login{padding:28px}
@media(max-width:700px){html body .topbar .brand{flex-basis:auto;flex:1;min-width:0;max-width:calc(100% - 76px)}html body .topbar .plan-badge{flex:none;margin-left:auto}html body .topbar .brand-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

html[data-theme=dark] body .plan-free{color:#294b3b}html[data-theme=dark] body .plan-plus{color:#edfff4}html[data-theme=dark] body .plan-pro{color:#483619}
html body .card{padding:22px;border:1px solid var(--edge);border-radius:22px}.landing-login{padding:28px}
@media(max-width:700px){html body .topbar .brand{flex-basis:auto;flex:1;min-width:0;max-width:calc(100% - 76px)}html body .topbar .plan-badge{flex:none;margin-left:auto}}
