:root{--accent:#df2034;--accent-hover:#bd1426;--ink:#17191e;--muted:#62656e;--line:#dedee4;--surface:#f5f5f7;color:var(--ink);background:var(--surface);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{color:var(--ink);background:var(--surface)}header{background:#14161b;color:#fff;border-bottom:1px solid #303239}header a{color:#fff}header span{color:#e1e1e6}
button,.button,.portal-link{background:var(--accent);color:#fff;border-radius:10px;transition:background .15s,box-shadow .15s}button:hover:not(:disabled),.button:hover,.portal-link:hover{background:var(--accent-hover);color:#fff}button:disabled{opacity:.55}a{color:#bb1428}h1,h2,h3{color:var(--ink);letter-spacing:-.025em}.eyebrow{color:#be172b}.muted{color:var(--muted)}
.card,.resource-card,.payroll-receipt{border-color:var(--line);box-shadow:0 3px 18px #15171c04}.card{border-radius:18px}.secondary{background:#f0f0f3;color:#303139;border:1px solid #d8d8e0}.secondary:hover:not(:disabled){background:#e6e6ec;color:#1c1e25}.danger{background:#fff0f2;color:#a91024;border:1px solid #e9bac2}.danger:hover:not(:disabled){background:#ffe1e6;color:#900b1c}
input,select,textarea{border-color:#c9c9d2;color:#20212a;background:#fff;accent-color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #eb6777;outline-offset:3px}
.notice,.owner-summary{background:#f8f0f2;border-left-color:var(--accent);color:#333139}.admin-toggle{background:var(--accent);border-radius:12px}.admin-toggle:hover{background:var(--accent-hover)}details[open] .admin-toggle{background:#24262d}.resource-card h3,.platform-link{color:#b8172b}.resource-card,.document-row,#resourceAdmin form,#memberList p,.record{border-color:var(--line)}.edit-panel{border-color:#d9394b}.owner-summary h3{color:#23252b}
.menu-card{background:#fff;border:1px solid #d7d7df;color:#24262d;box-shadow:0 3px 18px #15171c04;border-radius:16px}.menu-card:hover{background:#fff4f5;border-color:#e6a4ae;color:#24262d}.menu-card strong{color:#191b20}.menu-card b{color:#c41c30}.menu-icon{background:var(--accent);color:#fff}.section-bar h2{color:#1c1e25}
.payroll-amounts{background:#f8f8fa;border-color:#dedee5}.payroll-columns fieldset{border-color:#d6d6df}.payroll-columns legend{color:#272932}.payroll-columns input[readonly]{background:#eeeef3}.payroll-totals p{background:#ececf1}.payroll-totals p:last-child{background:#22242b;color:#fff}.payroll-receipt{color:#24262d}.receipt-header{border-bottom-color:var(--accent)}.receipt-header>strong{color:#c31b2f}.receipt-badge{background:#fbe9ec;color:#a91528}.receipt-meta span{color:#686b74}.receipt-columns h4{border-bottom-color:#dedee5}.payroll-preview{background:#f4f4f7}.payroll-preview::backdrop,#documentPreview::backdrop{background:#101116aa}#documentPreview{border-color:#d6d6df}
.payroll-calendar{border-color:#d6d6df}.calendar-weekday{color:#666975}.calendar-none{background:#f0f0f3;color:#777b85}
/* Calendar green/red/blue retain their meaning: available, reserved, current. */
.login-choices button[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
.location-map{background:#faf8f9;border-color:#dfd9de}.location-map>strong{color:#292a31}.location-place,.location-map-open{color:#b4172a}.location-map-detail{color:#626570}.location-truck{border-color:var(--accent);box-shadow:0 3px 14px #36152133}
.install-efimob{background:#fff;border-color:#dddde5;color:#30323b;box-shadow:0 3px 14px #15171c05}.install-efimob button{background:var(--accent)}.install-efimob button:hover{background:var(--accent-hover)}
@media(prefers-reduced-motion:reduce){button,.button,.menu-card{transition:none}}
