/* Approved C identity: shared site controls only; official resource logos keep their colors. */
:root{--brand-primary:#514ce3;--brand-hover:#433cce;--brand-accent:#514ce3;--brand-soft:#f0eeff;--brand-line:#d5d0fc;--brand-focus:#514ce3;--brand-focus-halo:#fff;--brand-on-primary:#fff;--brand-on-scenery:#dedaff;--accent:var(--brand-accent)}
[data-theme=dark]{--brand-accent:#b3adff;--brand-soft:#292641;--brand-line:#625b95;--brand-focus:#c6c1ff;--brand-focus-halo:#101822;--accent:var(--brand-accent)}
.blog-grid,.article-page,[data-theme=dark] .blog-grid,[data-theme=dark] .article-page{--accent:var(--brand-accent)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--brand-focus);outline-offset:3px;box-shadow:0 0 0 4px var(--brand-focus-halo)}
.sidebar-brand{padding:0 16px;gap:0}
.site-brand-lockup{position:relative;display:block;width:176px;height:57px;flex:none}
.site-brand-lockup img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;border-radius:0;background:transparent;filter:none}
.site-brand-icon{position:relative;display:block;width:32px;height:32px;flex:none}
.site-brand-icon img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:transparent;filter:none}
.brand-dark{display:none!important}[data-theme=dark] .brand-light{display:none!important}[data-theme=dark] .brand-dark{display:block!important}
.header-brand{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--brand-line);background:#fffffff2;border-radius:8px;order:-1}
[data-theme=dark] .header-brand{background:#172230f2}
.sidebar-collapsed .header-brand{display:flex}
.topbar .top-about{margin-left:auto}
.nav-link svg,.nav-link svg.solid-icon,.section-title>svg,.section-title>svg.solid-icon{color:var(--brand-accent)}
.nav-link.active,[data-theme=dark] .nav-link.active{background:var(--brand-soft);color:var(--brand-accent)}
.nav-link.active svg,.nav-link.active svg.solid-icon{color:var(--brand-accent)}
.nav-link:hover,[data-theme=dark] .nav-link:hover{background:var(--brand-soft);color:var(--brand-accent)}
.search-groups button.active,[data-theme=dark] .search-groups button.active{border-bottom-color:var(--brand-on-scenery)}
.search-engines button.active,[data-theme=dark] .search-engines button.active{color:var(--brand-accent)}
#search-submit,[data-theme=dark] #search-submit{color:var(--brand-accent);background:var(--brand-soft)}
#search-submit:hover,[data-theme=dark] #search-submit:hover{background:var(--brand-line)}
#search-form:focus-within{border-color:var(--brand-focus);box-shadow:0 0 0 3px #514ce326}
.region-filter button.active,[data-theme=dark] .region-filter button.active{background:var(--brand-soft);color:var(--brand-accent)}
#reset-filters,.more-link:hover,.breadcrumb a,.detail-source a,.wallpaper-credits a,.info-panel a,[data-theme=dark] .breadcrumb a,[data-theme=dark] .detail-source a,[data-theme=dark] .wallpaper-credits a{color:var(--brand-accent)}
.tab-indicator,[data-theme=dark] .tab-indicator{background:var(--brand-primary);box-shadow:0 3px 8px #514ce31c}
.section-tabs button:hover,[data-theme=dark] .section-tabs button:hover{color:var(--brand-accent);background:var(--brand-soft)}
.section-tabs button.active,.section-tabs button.active:hover,[data-theme=dark] .section-tabs button.active,[data-theme=dark] .section-tabs button.active:hover{background:transparent;color:var(--brand-on-primary)}
.topbar #menu-toggle,[data-theme=dark] .topbar #menu-toggle{background:var(--brand-primary);color:var(--brand-on-primary)}
.topbar #menu-toggle:hover,[data-theme=dark] .topbar #menu-toggle:hover{background:var(--brand-hover);color:var(--brand-on-primary)}
.card-actions .card-detail,.detail-official,.business-copy,[data-theme=dark] .business-copy,[data-theme=dark] .detail-official{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-on-primary)}
.card-actions .card-detail:hover,.detail-official:hover,.business-copy:hover,[data-theme=dark] .business-copy:hover,[data-theme=dark] .detail-official:hover{background:var(--brand-hover);border-color:var(--brand-hover);color:var(--brand-on-primary);filter:none}
.card-actions .card-official:hover,[data-theme=dark] .card-actions .card-official:hover{color:var(--brand-accent);border-color:var(--brand-line);background:var(--brand-soft)}
.resource-card:hover,.resource-card:focus-within,[data-theme=dark] .resource-card:hover,[data-theme=dark] .resource-card:focus-within{border-color:var(--brand-line);box-shadow:0 4px 15px #514ce30f}
.detail-like[aria-pressed=true],[data-theme=dark] .detail-like[aria-pressed=true]{background:var(--brand-soft);color:var(--brand-accent);border-color:var(--brand-line)}
.detail-like-count{margin-left:6px;font-weight:600;font-variant-numeric:tabular-nums}
.business-mail:hover{background:var(--brand-soft)}
.page-tools button,[data-theme=dark] .page-tools button{color:var(--brand-accent);border-color:var(--brand-line)}
.page-tools button:hover,[data-theme=dark] .page-tools button:hover{background:var(--brand-soft);color:var(--brand-accent)}
.favorite-button:hover,.favorite-button[aria-pressed=true]{color:var(--brand-accent)}
.favorite-button[aria-pressed=true] svg{fill:var(--brand-soft)}
.privacy-header .site-brand-lockup{width:150px;height:49px}
.hero-clock time{font-size:clamp(67.2px,7.2vw,92.4px)}
@media(max-width:960px){.hero-clock time{font-size:clamp(62.4px,9vw,86.4px)}}
@media(max-width:600px){.hero-clock time{font-size:clamp(33.6px,11.4vw,62.4px)}}
@media(max-width:960px){.header-brand{display:flex;order:0}.topbar .top-about{order:1;margin-left:0}.topbar #menu-toggle{order:2;margin-left:auto}.sidebar-open .header-brand{visibility:hidden}}
@media(prefers-reduced-motion:reduce){.header-brand,.site-brand-lockup{transition:none}}
[data-theme=dark] .nav-link svg,[data-theme=dark] .nav-link svg.solid-icon,[data-theme=dark] .section-title>svg,[data-theme=dark] .section-title>svg.solid-icon{color:var(--brand-accent)}

.topbar .top-about,[data-theme=dark] .topbar .top-about{background:var(--brand-primary);border-color:var(--brand-line);color:var(--brand-on-primary);backdrop-filter:none}
.topbar .top-about:hover,[data-theme=dark] .topbar .top-about:hover{background:var(--brand-hover);color:var(--brand-on-primary)}
.site-footer .footer-brand{display:inline-flex;padding:0;background:transparent;border:0;vertical-align:middle}
.site-footer .footer-brand .site-brand-lockup{width:120px;height:39px}
.search-engines{flex-wrap:wrap;justify-content:center;max-width:100%}

/* Filled controls have no decorative bright rim; keyboard focus remains visible. */
.topbar .top-about,.topbar #menu-toggle,[data-theme=dark] .topbar .top-about,[data-theme=dark] .topbar #menu-toggle{border-color:transparent;box-shadow:none}
.card-actions .card-detail,.favorites-hidden .card-actions .card-detail,[data-theme=dark] .card-actions .card-detail,[data-theme=dark] .favorites-hidden .card-actions .card-detail{border-color:transparent;box-shadow:none}
.card-actions .card-detail:hover,.favorites-hidden .card-actions .card-detail:hover,[data-theme=dark] .card-actions .card-detail:hover,[data-theme=dark] .favorites-hidden .card-actions .card-detail:hover{border-color:transparent;box-shadow:none}
.topbar .top-about:focus-visible,.topbar #menu-toggle:focus-visible,.card-actions .card-detail:focus-visible,.favorites-hidden .card-actions .card-detail:focus-visible,[data-theme=dark] .card-actions .card-detail:focus-visible{outline:2px solid var(--brand-focus);outline-offset:3px;box-shadow:0 0 0 3px #514ce31a}
.site-footer .footer-intro{max-width:680px;margin:12px 0 0;font-size:12px;line-height:1.9;color:var(--muted);text-wrap:pretty}

.affiliate-badge{flex:none;display:inline-block;font-size:10px;line-height:16px;padding:2px 5px;border-radius:4px;background:var(--brand-soft);color:var(--brand-accent);white-space:nowrap}
.detail-affiliate-disclosure{margin:14px 0 10px;font-size:12px;line-height:1.8;color:var(--muted)}

/* Two distinct configurable homepage banners, with original proportions. */
.sponsor-placement{max-width:1480px;margin:0 auto 24px}
.sponsor-placement[hidden]{display:none}
.sponsor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.sponsor-banner{position:relative;display:block;min-width:0;overflow:hidden;border-radius:6px}
.sponsor-banner picture{display:block}
.sponsor-banner img{display:block;width:100%;height:auto;aspect-ratio:728/90;object-fit:contain;border-radius:6px}
.sponsor-ad-label{position:absolute;top:4px;left:5px;padding:0 4px;border-radius:3px;font:10px/15px Arial,sans-serif;color:#fff;background:#142139c9;pointer-events:none}
.sponsor-banner:focus-visible{outline:2px solid var(--brand-focus);outline-offset:3px}
.promotion-note{margin:8px 0 0;font-size:11px;line-height:1.6;color:var(--brand-accent)}
.resource-card.has-promotion-note{height:155px;min-height:155px}
@media(max-width:960px){.sponsor-grid{grid-template-columns:1fr}.sponsor-placement{max-width:728px}}
@media(max-width:600px){.sponsor-placement{max-width:320px;margin-bottom:20px}.sponsor-grid{gap:12px}.sponsor-banner img{aspect-ratio:630/330}.resource-card.has-promotion-note{height:215px;min-height:215px}}

.sponsor-grid.single{grid-template-columns:1fr;max-width:728px;margin-inline:auto}

/* One non-self detail placement: right of introduction on desktop; after actions on mobile. */
.detail-page.has-detail-promo{display:grid;grid-template-columns:minmax(0,1fr)300px;column-gap:28px}
.detail-page.has-detail-promo> :not(.detail-promo){grid-column:1}
.detail-page.has-detail-promo>.detail-breadcrumb,.detail-page.has-detail-promo>.detail-related,.detail-page.has-detail-promo>.detail-feedback{grid-column:1/-1}
.detail-promo{grid-column:2;grid-row:2/span 5;align-self:start;max-width:300px}
.detail-promo .sponsor-banner img{aspect-ratio:630/330}
@media(max-width:1150px){.detail-page.has-detail-promo{display:block}.detail-promo{max-width:320px;margin:24px auto 0}}

.detail-profile{margin:28px 0 8px}
.detail-profile .detail-section-title{margin:24px 0 10px}
.detail-profile-paragraph{margin:0 0 10px;line-height:1.85;color:var(--text,#1c1f3b)}
.detail-profile-points{margin:0 0 10px;padding-left:20px;line-height:1.85}
.detail-profile-alternatives{display:flex;flex-wrap:wrap;gap:8px}
.detail-profile-alternative{padding:6px 12px;border:1px solid var(--line,#e4e7ec);border-radius:6px;font-size:13px;text-decoration:none}
.detail-profile-sources{margin-top:20px;font-size:12px;color:var(--muted)}
.detail-profile-sources ul{margin:6px 0 0;padding-left:18px;line-height:1.9}

/* One in-article placement between the body and resource links; image ratio reserves the space. */
.article-promo{max-width:728px;margin:28px auto}
.article-promo .sponsor-banner img{aspect-ratio:728/90}
@media(max-width:600px){.article-promo{max-width:320px}.article-promo .sponsor-banner img{aspect-ratio:630/330}}

/* Palette A: indigo for interaction, coral only as a sparse accent, neutral navigation icons. */
:root{--brand-coral:#ff6b4a;--brand-coral-text:#c8432a;--brand-coral-soft:#fff0eb;--brand-ink:#1c1f3b;--nav-icon:#7a8294;--muted:#667085}
[data-theme=dark]{--brand-coral:#ff8a6e;--brand-coral-text:#ff9c84;--brand-coral-soft:#3a2522;--brand-ink:#e0e8f4;--nav-icon:#8d97ab;--muted:#a8b7cd}
.nav-link svg,.nav-link svg.solid-icon,[data-theme=dark] .nav-link svg,[data-theme=dark] .nav-link svg.solid-icon{color:var(--nav-icon)}
.nav-link.active svg,.nav-link.active svg.solid-icon,.nav-link:hover svg,.nav-link:hover svg.solid-icon,[data-theme=dark] .nav-link.active svg,[data-theme=dark] .nav-link:hover svg{color:var(--brand-accent)}
.section-title>svg,.section-title>svg.solid-icon,[data-theme=dark] .section-title>svg,[data-theme=dark] .section-title>svg.solid-icon{color:var(--brand-coral)}
.search-groups button.active,[data-theme=dark] .search-groups button.active{border-bottom-color:var(--brand-coral)}
.topbar .top-about,.topbar #menu-toggle{background:#ffffffe8;color:var(--brand-ink);backdrop-filter:blur(8px)}
.topbar .top-about:hover,.topbar #menu-toggle:hover{background:#fff;color:var(--brand-primary)}
[data-theme=dark] .topbar .top-about,[data-theme=dark] .topbar #menu-toggle{background:#172230e8;color:#e0e8f4}
[data-theme=dark] .topbar .top-about:hover,[data-theme=dark] .topbar #menu-toggle:hover{background:#1f2d40;color:var(--brand-accent)}
.card-description{font-size:13px;line-height:21px;height:42px;color:var(--muted)}
@media(hover:hover) and (pointer:fine) and (min-width:601px) and (prefers-reduced-motion:no-preference){
 .resource-card{transition:border-color .2s,box-shadow .2s,transform .2s cubic-bezier(.2,.7,.3,1)}
 .resource-card:hover,.resource-card:focus-within{transform:translateY(-3px);box-shadow:0 10px 24px #514ce31f}
 [data-theme=dark] .resource-card:hover,[data-theme=dark] .resource-card:focus-within{box-shadow:0 10px 24px #0006}
 .card-description{transition:opacity .16s,transform .22s cubic-bezier(.2,.7,.3,1)}
 .resource-card:hover .card-description,.resource-card:focus-within .card-description{transform:translateY(-8px)}
 .card-actions{transform:translateY(10px);transition:opacity .18s,transform .24s cubic-bezier(.2,.7,.3,1)}
 .resource-card:hover .card-actions,.resource-card:focus-within .card-actions{transform:none}
}

/* Search is the primary action; the clock supports it. */
.hero-clock{gap:4px;margin-bottom:22px}
.hero-clock time{font-size:clamp(64px,6vw,84px)}
.clock-date{font-size:18px}
.search-panel{max-width:800px}
#search-form{height:60px;border-radius:12px}
#search{font-size:16px;padding-inline:22px}
#search-submit,[data-theme=dark] #search-submit{background:var(--brand-primary);color:var(--brand-on-primary);padding-inline:22px;white-space:nowrap}
@media(min-width:521px){#search-submit{width:auto;min-width:108px;gap:6px}}
#search-submit:hover,[data-theme=dark] #search-submit:hover{background:var(--brand-hover)}
.search-engines button{font-size:13px}
@media(max-width:960px){.hero-clock time{font-size:clamp(56px,9vw,76px)}.clock-date{font-size:16px}}
@media(max-width:600px){.hero-clock time{font-size:clamp(40px,13vw,60px)}.clock-date{font-size:14px}#search-form{height:52px}#search{font-size:15px}}

/* Homepage problem-solving articles. */
.home-articles .section-top{margin-bottom:14px}
.home-article-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px}
.home-article-list a{display:flex;align-items:baseline;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit;text-decoration:none;min-width:0}
.home-article-list a:hover{border-color:var(--brand-line);background:var(--brand-soft)}
.home-article-list a:hover .home-article-title{color:var(--brand-accent)}
.home-article-tag{flex:none;font-size:12px;line-height:18px;padding:1px 7px;border-radius:4px;background:var(--brand-coral-soft);color:var(--brand-coral-text)}
.home-article-title{min-width:0;font-size:14px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-theme=dark] .home-article-list a{background:#172433;border-color:#2d4059}
.home-article-list a{transition:border-color .18s,background-color .18s}
.home-article-title{transition:color .18s,transform .2s cubic-bezier(.2,.7,.3,1)}
.home-article-list a::after{content:"\203A";flex:none;margin-left:auto;font-size:18px;line-height:1;color:var(--brand-accent);opacity:0;transform:translateX(-6px);transition:opacity .18s,transform .2s cubic-bezier(.2,.7,.3,1)}
.home-article-list a:hover .home-article-title,.home-article-list a:focus-visible .home-article-title{transform:translateX(3px)}
.home-article-list a:hover::after,.home-article-list a:focus-visible::after{opacity:1;transform:none}

/* Motion: search group underline, back-to-top reveal, section arrival, theme cross-fade. */
.search-groups{position:relative}
.search-groups button.active,[data-theme=dark] .search-groups button.active{border-bottom-color:transparent}
.search-group-indicator{position:absolute;left:0;bottom:0;height:2px;width:0;border-radius:2px;background:var(--brand-coral);pointer-events:none}
.search-group-indicator.ready{transition:transform .26s cubic-bezier(.2,.7,.3,1),width .26s cubic-bezier(.2,.7,.3,1)}
#back-to-top{transition:opacity .2s,transform .2s,visibility .2s,background-color .18s,color .18s}
body:not(.scrolled-down) #back-to-top{opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none}
@keyframes section-flash{0%,35%{background:var(--brand-soft);box-shadow:0 0 0 6px var(--brand-soft)}100%{background:transparent;box-shadow:0 0 0 6px transparent}}
@keyframes section-flash-title{0%,45%{color:var(--brand-accent)}}
.section-flash .section-top{border-radius:8px;animation:section-flash 1.3s ease-out}
.section-flash .section-title h2{animation:section-flash-title 1.3s ease-out}
::view-transition-old(root),::view-transition-new(root){animation-duration:.32s;animation-timing-function:ease}
@media(prefers-reduced-motion:reduce){.search-group-indicator.ready,#back-to-top,.home-article-title,.home-article-list a::after{transition:none}.section-flash .section-top,.section-flash .section-title h2{animation:none}}
@media(max-width:760px){.home-article-list{grid-template-columns:minmax(0,1fr)}}
