/* V08 pp.84–89: brand-preserving website color audit, UI/UX CraftKit. */
:root{--blue:#1772B4;--blue-hover:#125B90;--blue-active:#104B74;--pale:#EFF7FC;--light:#DDEEF9;--ink:#152B3C;--secondary:#4D6373;--muted:#596E7D;--line:#CFDAE3;--strong:#8296A6;--canvas:#F4F7FA;--white:#FFFFFF;--navy:#071A2B;--success:#187052;--success-bg:#EAF6F0;--warning:#885A10;--warning-bg:#FFF4DD;--error:#B3333C;--error-bg:#FDEEF0;--glass-light:linear-gradient(130deg,rgba(255,255,255,.97),rgba(239,247,252,.96))}
/* Keep the official logo untouched; branded chrome uses primary blue. */
.site-header{background:rgba(23,114,180,.97)!important;color:var(--white)}
.site-header .nav-link .en{opacity:1}.site-header .icon-btn:focus-visible,.site-header a:focus-visible{outline-color:var(--white)}
/* Reading surfaces and city index share the VI's neutral hierarchy. */
.network-complete{background:var(--canvas);color:var(--ink)}
.network-summary,.network-search,.network-region-tabs button,.network-direct span{color:var(--secondary)}
.network-index-head #network-result-count,.network-city small{color:var(--muted)}
.network-city{background:var(--white);color:var(--ink);border-color:var(--line)}
.network-city.active{background:var(--pale);border-color:var(--blue)}
.network-city:hover{border-color:var(--blue-hover)}
.network-region-tabs button[aria-pressed=true]{background:var(--blue);color:var(--white)}
.network-region-tabs button:hover{background:var(--light);color:var(--blue-hover)}
.network-region-tabs button[aria-pressed=true]:hover{background:var(--blue-hover);color:var(--white)}
.network-region-tabs small{opacity:1}
.network-stage{background:var(--navy)}
.network-info{background:var(--glass-light);color:var(--ink);border-color:var(--line)}
.network-info h3 .en{color:var(--secondary)}
.network-city-arrow{background:rgba(7,26,43,.88);color:var(--white)}
.network-scene-caption small{color:var(--white)}
.network-actions button,.network-empty button{color:var(--blue-hover);border-color:var(--strong)}
.designed-control{background:rgba(244,247,250,.96)!important;border-color:var(--line)!important}
.designed-card:hover,.designed-card:focus-within{background:var(--pale)!important;border-color:var(--blue-hover)}
.article-v4,.publication-layout,.culture-essay{background:var(--white)}
.publication-layout aside,.culture-essay aside,.lt-detail aside{background:var(--glass-light);border-color:var(--line)}
.lt-capability:hover{background:var(--pale)}
/* Inputs keep strong boundaries independent of their containing glass panel. */
.designed-control input,.designed-control select,.network-search input,.enquiry-builder input,.enquiry-builder select,.enquiry-builder textarea{background:var(--white)!important;color:var(--ink);border-color:var(--strong)!important}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:var(--error)!important}
/* Prose link specificity must never recolor a primary button. */
.prose a:not(.btn){color:var(--blue-hover);text-decoration:underline;text-underline-offset:4px}
.prose a:not(.btn):hover{color:var(--blue-active)}
.prose a.btn{color:var(--white);text-decoration:none}
.prose a.btn.light{color:var(--blue-hover);background:var(--white)}
.prose a.btn.outline{color:var(--ink);background:transparent}
.btn:not(.light):not(.outline):hover{background:var(--blue-hover)}
.btn:not(.light):not(.outline):active{background:var(--blue-active)}
/* White inner ring + dark outer ring stays visible on light and dark surfaces. */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue-active);outline-offset:4px;box-shadow:0 0 0 2px var(--white)}
/* Photo overlays retain their grading; increase small text contrast locally. */
.photo-led .hero-display{color:var(--white)}
.photo-led .hero-summary .en{color:var(--white);opacity:1}
.photo-led .hero-bottom{background:rgba(7,26,43,.76)}
.hero-bottom .en{opacity:1}
#article-toc a[aria-current=location],#publication-toc a[aria-current=location]{background:var(--pale);color:var(--blue-hover)}
@media print{.site-header{background:var(--blue)!important}.prose a:not(.btn){color:var(--ink)}}
/* User correction: clear natural photographs, no gray/desaturated wash. */
:root{--photo-grade:saturate(1.06) contrast(1.02) brightness(1.03);--photo-record-grade:none;--photo-shadow:#071A2B;--photo-midtone:#125B90}
.network-complete{background:var(--pale)}
.designed-control{background:rgba(239,247,252,.96)!important}
.photo-led .hero-shade{background:linear-gradient(90deg,rgba(7,26,43,.78),rgba(18,91,144,.18) 60%,transparent)!important}
.designed-heading:before{background:linear-gradient(90deg,#071A2B 0%,rgba(7,26,43,.95) 25%,rgba(18,91,144,.35) 58%,transparent 100%)}
@media(max-width:760px){.photo-led .hero-shade{background:linear-gradient(180deg,transparent,rgba(7,26,43,.5) 32%,rgba(7,26,43,.94) 60%)!important}.designed-heading:before{background:linear-gradient(90deg,rgba(7,26,43,.97),rgba(7,26,43,.76))}}
.network-detail-art>small,.network-directory-art>small{background:rgba(7,26,43,.9);color:var(--white)}
