
/* US & REWARDS v0.8.0 theme layer */
:root {
 --ur-bg:#fff9fb; --ur-surface:#fffdfd; --ur-surface-alt:#fff0f4;
 --ur-text:#34243a; --ur-muted:#806c83; --ur-border:#f0dce5;
 --ur-primary:#c45e86; --ur-primary-dark:#a84770; --ur-accent:#d9a441;
 --ur-shadow:0 14px 36px rgba(74,38,65,.09);
 color-scheme:light;
}
html.theme-dark {
 --ur-bg:#19141d; --ur-surface:#241d29; --ur-surface-alt:#302331;
 --ur-text:#fff4f7; --ur-muted:#c5b2c9; --ur-border:#493748;
 --ur-primary:#f08eae; --ur-primary-dark:#f5a9c1; --ur-accent:#f0c36d;
 --ur-shadow:0 14px 36px rgba(0,0,0,.28);
 color-scheme:dark;
}
html.theme-light { color-scheme:light; }
body { background-color:var(--ur-bg); color:var(--ur-text); }
.topbar { background:color-mix(in srgb,var(--ur-surface) 88%,transparent); border-color:var(--ur-border); }
.brand-logo { display:block; width:clamp(150px,18vw,210px); height:54px; object-fit:contain; object-position:left center; }
.theme-picker-label { margin:0!important; color:var(--ur-muted)!important; font-size:11px!important; white-space:nowrap; }
.theme-picker { width:auto; min-width:92px; margin:0; padding:8px 28px 8px 10px; border:1px solid var(--ur-border); border-radius:10px; background:var(--ur-surface); color:var(--ur-text); font:inherit; font-size:12px; }
.landing-art-photo { background:#2b1e2d; border:1px solid var(--ur-border); }
.landing-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.landing-art-photo:after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(0deg,rgba(35,19,34,.5),transparent); pointer-events:none; }
.landing-art-photo .floating-chip { z-index:2; }
.feature-cards-visual article { overflow:hidden; padding:0 0 20px; }
.feature-cards-visual article>img { display:block; width:100%; height:145px; object-fit:cover; }
.feature-cards-visual article>span { margin:15px 20px 0; }
.feature-cards-visual article h3,.feature-cards-visual article p { margin-left:20px; margin-right:20px; }
html.theme-dark body { background:radial-gradient(circle at 12% 5%,#302330 0,transparent 32%),radial-gradient(circle at 90% 25%,#28202e 0,transparent 28%),var(--ur-bg); color:var(--ur-text); }
html.theme-dark .topbar,html.theme-dark .auth-card,html.theme-dark .narrow-card,html.theme-dark .module-card,
html.theme-dark .member-card,html.theme-dark .invite-card,html.theme-dark .feature-cards article,
html.theme-dark .analytics-stats article,html.theme-dark .chart-card,html.theme-dark .points-card,
html.theme-dark .mini-stat,html.theme-dark .request-row,html.theme-dark .ur-surface {
 background:var(--ur-surface); color:var(--ur-text); border-color:var(--ur-border);
}
html.theme-dark .dashboard-head h1,html.theme-dark .analytics-title h2,html.theme-dark .chart-heading h3,
html.theme-dark .feature-cards h3,html.theme-dark .landing-section-heading h2,
html.theme-dark .landing-copy h1,html.theme-dark .auth-art h1,html.theme-dark .auth-card h2,
html.theme-dark .narrow-card h1,html.theme-dark .module-heading h2 { color:var(--ur-text); }
html.theme-dark .landing-copy>p,html.theme-dark .landing-section-heading p,html.theme-dark .muted,
html.theme-dark .request-main p,html.theme-dark .analytics-stats span,html.theme-dark .analytics-stats small { color:var(--ur-muted); }
html.theme-dark input,html.theme-dark select,html.theme-dark textarea {
 background:#1d1722; color:var(--ur-text); border-color:var(--ur-border);
}
html.theme-dark .secondary,html.theme-dark .counter,html.theme-dark .status-pill,
html.theme-dark .partner-legend span { background:var(--ur-surface-alt); color:var(--ur-primary-dark); border-color:var(--ur-border); }
html.theme-dark .feature-cards article>span,html.theme-dark .request-symbol,html.theme-dark .module-icon {
 background:var(--ur-surface-alt); color:var(--ur-primary);
}
html.theme-dark .landing-art { border-color:var(--ur-border); }
html.theme-dark .love-note { background:#2a202b; border-color:var(--ur-border); color:var(--ur-text); }
html.theme-dark .love-note strong { color:#fff4f7; }
html.theme-dark .floating-chip { background:#302331ee; border-color:var(--ur-border); color:#fff4f7; }
html.theme-dark .footer,html.theme-dark .footer small { color:var(--ur-muted); }
@media(max-width:600px) {
 .brand-logo { width:142px; height:46px; }
 .top-actions { gap:8px; flex-wrap:wrap; justify-content:flex-end; }
 .theme-picker-label { display:none; }
 .theme-picker { min-width:82px; padding:7px 22px 7px 8px; font-size:11px; }
}
