:root{--bg:#fff8e1;--card:#faf0ca;--yellow:#fde694;--green:#90cea1;--olive:#c4ae5c;--ink:#49473e;--black:#121212;--mute:#6b6858;color-scheme:light}
:root[data-theme=dark]{--bg:#090909;--card:#171717;--yellow:#452719;--green:#ff9b74;--olive:#8e6957;--ink:#eee9df;--black:#fff6ed;--mute:#bcb6aa;color-scheme:dark}
body,body.home-redesign{font-family:Inter,sans-serif!important;font-size:17px;line-height:1.65}h1,h2,h3,h4,.home-redesign h1,.home-redesign h2,.home-redesign h3,.card b{font-family:Poppins,sans-serif!important}input,select,textarea,button,#theme-toggle,.button,.btn{font-family:Inter,sans-serif!important}.logo,.brand{font-family:Comfortaa,sans-serif!important;font-weight:500!important}
article.post{max-width:780px}article.post h1{font-size:clamp(2rem,3.2vw,3rem);line-height:1.2}article.post p,article.post li{font-size:1.0625rem;line-height:1.75}article.post h2{font-size:1.625rem;line-height:1.3}article.post h3{font-size:1.2rem;line-height:1.4}article.post .lead{font-size:1.15rem;line-height:1.65}.wrap{max-width:840px}.box.good{background:var(--card);border-left:4px solid var(--green)}.box.warn{background:var(--yellow)}.home-redesign .hero-section h1{font-size:clamp(40px,4.2vw,58px);line-height:1.15;letter-spacing:-.04em}.home-redesign .intro{font-size:18px;line-height:1.7}.home-redesign .guide-card p,.home-redesign .checks-grid p{font-size:15px;line-height:1.65}.home-redesign .guide-card h3{font-size:20px;line-height:1.35}.home-redesign .hero-section::before{animation:hero-bubble 4s ease-in-out infinite alternate;will-change:transform;opacity:.25;z-index:0;pointer-events:none}.home-redesign .hero-grid,.home-redesign .header-row{position:relative;z-index:1}.home-redesign .site-header{position:relative;z-index:2;background:var(--page)}
@keyframes hero-bubble{0%{transform:translate(-12px,-18px) rotate(-8deg) scale(.96)}50%{transform:translate(36px,22px) rotate(8deg) scale(1.08)}100%{transform:translate(12px,54px) rotate(18deg) scale(1.02)}}

[data-theme=dark] .card:nth-child(3n+2){background:var(--card)}[data-theme=dark] table,[data-theme=dark] td,[data-theme=dark] th{color:var(--ink)}#theme-toggle{background:transparent;color:var(--ink);border:1px solid var(--mute);border-radius:24px;padding:10px 14px;font-size:13px;cursor:pointer;min-height:44px;margin-left:14px}[data-theme=dark] .home-redesign #theme-toggle{color:var(--text)}article a{overflow-wrap:anywhere}article pre{overflow-x:auto}article table{max-width:100%}
@media(max-width:640px){body,body.home-redesign{font-size:16px}article.post h1{font-size:30px;line-height:1.23}article.post h2{font-size:23px}article.post h3{font-size:18px}article.post p,article.post li{font-size:16px;line-height:1.75}article.post .lead{font-size:17px}.home-redesign .hero-section h1{font-size:39px;line-height:1.17}.home-redesign .intro{font-size:16px}.home-redesign h2{font-size:27px}.home-redesign .guide-card h3{font-size:19px}.home-redesign .guide-card p,.home-redesign .checks-grid p{font-size:15px}header.top .wrap{flex-wrap:wrap;gap:12px}header.top nav{display:flex;align-items:center;flex-wrap:wrap;gap:12px}header.top nav a{margin-left:0;font-size:14px}#theme-toggle{margin-left:0;font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
[data-theme=dark] .chip{background:#ff9b74;color:#17110e}[data-theme=dark] ul.posts li small.tag{background:#ff9b74;color:#17110e}[data-theme=dark] body:not(.home-redesign)::before,[data-theme=dark] body:not(.home-redesign)::after{opacity:.28}
.home-redesign .deadline .date-box small{color:inherit!important}

/* Audit repairs: shared navigation, stable reading surface and search. */
/* Reading pages: drifting bubbles restored (user request), calm pace, behind content. */
body:not(.home-redesign)::before,body:not(.home-redesign)::after{opacity:.16}
body:not(.home-redesign)::before{animation:drift1 9s ease-in-out infinite}
body:not(.home-redesign)::after{animation:drift2 11s ease-in-out infinite}
header.top .wrap,.home-redesign .header-row{min-height:76px;gap:16px;max-width:1160px;padding:16px 24px;margin:auto}
header .brand,header .logo{display:inline-flex;align-items:center;gap:0;font-size:27px;letter-spacing:-1px;color:var(--ink);text-decoration:none;line-height:1.4}
header .brand::before{display:none}header .brand span,header .logo span{color:var(--green)}
header nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px}header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;margin:0;font-size:14px;line-height:1.4}
header nav #theme-toggle{margin:0;line-height:1.4}
form.search{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(180px,240px) auto;align-items:end;gap:14px;width:100%;margin:20px 0 12px}
form.search .search-field,form.search .category-field{min-width:0}form.search label{position:static!important;display:block;width:auto!important;height:auto!important;margin:0 0 6px!important;clip:auto!important;overflow:visible!important;font-size:14px;font-weight:600}
form.search #q,form.search #category{width:100%;min-width:0;min-height:48px;margin:0;padding:10px 12px;background:var(--bg);color:var(--ink);border:1px solid var(--mute);border-radius:12px;line-height:1.5;outline-offset:3px}
form.search button{min-height:48px;padding:10px 18px;border-radius:12px;background:var(--card);color:var(--ink);border:1px solid var(--mute)}
.search-status{display:flex;align-items:center;gap:12px;margin:12px 0 20px;color:var(--mute);font-size:14px}#nores{padding:20px;background:var(--card);border-radius:16px}
.on-this-page{margin:20px 0 28px;padding:18px 22px;border:1px solid var(--mute);border-radius:16px;background:var(--card)}.on-this-page h2{margin:0 0 10px;font-size:20px}.on-this-page ul{margin:0;padding-left:20px;columns:2;column-gap:24px}.on-this-page li{break-inside:avoid;font-size:15px!important;margin:6px 0}.on-this-page a{display:inline-block;padding:4px 0;line-height:1.5}article h2[id],article h3[id],article .src[id]{scroll-margin-top:24px}
[data-theme=dark] article.post .cover{width:min(100%,500px);max-height:270px;object-fit:contain;margin:20px auto 28px}
:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
@media(max-width:640px){header.top .wrap,.home-redesign .header-row{padding:14px 20px;gap:10px}header nav{width:100%;gap:4px;justify-content:flex-start}header nav a{padding:8px 10px;font-size:13px}form.search{grid-template-columns:minmax(0,1fr) auto;gap:12px}.search-field{grid-column:1/-1}.on-this-page ul{columns:1}.on-this-page a{min-height:40px}article.post .cover{border-radius:16px}}
#postlist li{animation:none!important}

/* Orange stays on reading pages; homepage retains its prior palette. */
:root[data-theme=dark]{--aicon-orange:#ff682f}
[data-theme=dark] body:not(.home-redesign){--green:var(--aicon-orange);--olive:var(--aicon-orange)}
[data-theme=dark] body:not(.home-redesign) .chip,[data-theme=dark] body:not(.home-redesign) ul.posts li small.tag{background:var(--aicon-orange);color:#090909}
[data-theme=dark] body:not(.home-redesign) h1,[data-theme=dark] body:not(.home-redesign) h2,[data-theme=dark] body:not(.home-redesign) h3,[data-theme=dark] body:not(.home-redesign) a{color:var(--aicon-orange)}
/* Three restrained floating hero bubbles. */
.home-redesign .hero-section{isolation:isolate;overflow:hidden}
.home-redesign .hero-section::before{animation:hero-bubble 4s ease-in-out infinite alternate;opacity:.25;z-index:-1;pointer-events:none}
.home-redesign .hero-section::after,.home-redesign .hero-grid::before{content:"";position:absolute;border-radius:45% 55% 55% 45%;background:var(--cta);pointer-events:none;z-index:-1;will-change:transform;opacity:.14}
.home-redesign .hero-section::after{width:180px;height:180px;right:-55px;top:48%;animation:hero-bubble-right 4.5s ease-in-out infinite alternate}
.home-redesign .hero-grid::before{width:110px;height:110px;left:40%;bottom:-55px;animation:hero-bubble-small 3.5s ease-in-out infinite alternate}
@keyframes hero-bubble-right{from{transform:translate(0,-25px) rotate(0) scale(.93)}to{transform:translate(-30px,32px) rotate(20deg) scale(1.08)}}
@keyframes hero-bubble-small{from{transform:translate(-20px,0) rotate(-12deg)}to{transform:translate(28px,-25px) rotate(16deg)}}
@media(prefers-reduced-motion:reduce){.home-redesign .hero-section::before,.home-redesign .hero-section::after,.home-redesign .hero-grid::before{animation:none!important}}
.aicon-share-tools{margin:1.2rem 0;padding:1rem;border:1px solid var(--border,#aaa);border-radius:14px;background:transparent;color:inherit}.aicon-share-tools button,.aicon-share-choices a{font:inherit;font-size:14px;line-height:1.4;border:1px solid currentColor;border-radius:9px;padding:.65rem .9rem;background:transparent;color:inherit;cursor:pointer;text-decoration:none;display:inline-block}.aicon-share-tools button:focus-visible,.aicon-share-choices a:focus-visible{outline:3px solid #ec7131;outline-offset:3px}.aicon-share-tools button:hover,.aicon-share-choices a:hover{background:rgba(128,128,128,.12)}#aicon-share-button{font-weight:700}.aicon-share-choices{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.8rem}.aicon-share-choices[hidden],.aicon-share-choices textarea[hidden]{display:none}.aicon-share-status{font-size:13px;margin:.6rem 0 0;line-height:1.5}.aicon-share-status:empty{display:none}.aicon-share-choices textarea{width:100%;box-sizing:border-box;color:inherit;background:transparent;border:1px solid currentColor;border-radius:7px;padding:.6rem;font:inherit}

/* Theme polish, October 9: restrained home, stable reading and accessible controls. */

body,header,main,.card,.deadline-panel,.checks-grid,.guide-card,.box,input,select,button{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}
body:not(.home-redesign)::before,body:not(.home-redesign)::after{opacity:.07;pointer-events:none}
[data-theme=dark] body:not(.home-redesign)::before,[data-theme=dark] body:not(.home-redesign)::after{opacity:.09}
[data-theme=dark] body:not(.home-redesign) h1,[data-theme=dark] body:not(.home-redesign) h2,[data-theme=dark] body:not(.home-redesign) h3{color:var(--black)}
[data-theme=dark] body:not(.home-redesign) .crumbs a,[data-theme=dark] body:not(.home-redesign) header nav a{color:var(--ink)}
article.post .cover,[data-theme=dark] article.post .cover{width:100%;max-width:660px;max-height:none;height:auto;object-fit:contain;margin:22px auto 28px;border:1px solid rgba(128,128,128,.2)}
article.post{padding-bottom:28px}article.post p,article.post li{overflow-wrap:break-word}
article.post h2{border-bottom:1px solid rgba(128,128,128,.24);padding-bottom:10px}
article.post a:not(.chip):not(.button){text-underline-offset:4px;text-decoration-thickness:1px}
article.post .chip,[data-theme=light] ul.posts li small.tag{color:#18221b}
article.post .box{border:1px solid rgba(128,128,128,.16)}
article.post .box.warn{border-left:4px solid var(--olive)}
article.post .facts{table-layout:fixed}article.post .facts th,article.post .facts td{overflow-wrap:anywhere}
article.post pre{max-width:100%;padding:16px;border-radius:12px;background:var(--card)}
article.post iframe,article.post video{max-width:100%}
article.post .on-this-page a[aria-current=true]{font-weight:700;text-decoration-thickness:2px}
#theme-toggle:hover{background:var(--card)}.home-redesign #theme-toggle:hover{background:var(--surface)}
:focus-visible{outline:3px solid var(--green);outline-offset:4px}
.skip-link{position:fixed;top:12px;left:12px;transform:translateY(-180%);z-index:100;padding:12px 18px;border-radius:12px;background:var(--black);color:var(--bg)!important;font:600 14px Inter,sans-serif}
.skip-link:focus{transform:none}
#postlist li{border:1px solid transparent;transition:border-color .15s ease,background-color .18s ease}
#postlist li:hover,#postlist li:focus-within{border-color:var(--mute)}
#postlist li a{color:var(--ink)}[data-theme=dark] #postlist li a{color:var(--ink)!important}
@media(max-width:640px){header.top .wrap,.home-redesign .header-row{padding:14px 20px}header nav{gap:2px}header nav a{padding:8px}.home-redesign .header-row{gap:8px}.home-redesign .hero-section{padding-top:48px;padding-bottom:52px}.home-redesign section{padding-top:48px;padding-bottom:48px}article.post h1{font-size:29px}article.post .facts th,article.post .facts td{padding:10px;font-size:14px}.on-this-page{padding:16px}.aicon-share-tools{padding:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* AiCoN orange is the brand accent in both themes. */
:root{--brand-orange:#ff682f;--brand-link:#a9360e}
:root[data-theme=dark]{--brand-link:#ff8c60}
body.home-redesign{--accent:#ff682f;--cta:#ff682f;--button:#ff682f;--button-text:#16100c;--green:#ff682f}
header .brand span,header .logo span,.home-redesign .logo span{color:var(--brand-orange)}
article.post a,[data-theme=dark] body:not(.home-redesign) article.post a{color:var(--brand-link)}
article.post .chip{background:var(--brand-orange);color:#16100c}
.home-redesign .guide-meta span{color:var(--brand-link);border-color:var(--brand-link)}
.home-redesign .cta-band{background:var(--surface);color:var(--text);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-redesign .cta-band .button{background:var(--brand-orange);color:#16100c!important}
.home-redesign .cta-band .button.outline{background:transparent;color:var(--text)!important;border-color:var(--secondary)}
.home-redesign .category-grid .card,.home-redesign .guide-card,.event-guide{box-shadow:0 4px 18px #00000008;transition:transform .2s cubic-bezier(.2,.7,.2,1),border-color .2s,box-shadow .2s,background-color .18s}
.home-redesign .category-grid .card::after{color:var(--brand-link);transition:transform .18s ease}
.home-redesign .category-grid .card:hover::after{transform:translateX(4px)}
.home-redesign .guide-card .read-link{color:var(--brand-link);display:flex;align-items:center;justify-content:space-between}
.home-redesign .guide-card .read-link::after{content:'↗';font-size:19px;transition:transform .18s ease}
.home-redesign .guide-card:hover .read-link::after{transform:translate(2px,-2px)}
.home-redesign .deadline-panel{box-shadow:0 12px 36px #0000000c}
.home-redesign .deadline{transition:background-color .18s ease}
.home-redesign .deadline:hover{background:var(--surface-alt)}
.event-guide{background:var(--surface,var(--card));border-color:var(--line,var(--mute))}
.event-guide .event-tag{color:var(--brand-link)}
@media(hover:hover){.home-redesign .category-grid .card:hover,.home-redesign .guide-card:hover,.event-guide:hover{border-color:var(--brand-link);transform:translateY(-4px);box-shadow:0 12px 28px #00000014}}
.home-redesign .checks-grid .number{background:transparent;color:var(--brand-link);border:1px solid var(--brand-link)}
.aicon-reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:90;pointer-events:none;background:transparent}
.aicon-reading-progress span{display:block;height:100%;background:var(--brand-orange);transform-origin:left;transform:scaleX(0)}
.aicon-back-top{position:fixed;right:20px;bottom:20px;z-index:80;min-width:44px;min-height:44px;padding:10px 14px;border:1px solid var(--brand-link);border-radius:999px;background:var(--bg);color:var(--ink);box-shadow:0 4px 18px #0002;font:600 13px Inter,sans-serif;cursor:pointer;transition:transform .18s ease,opacity .18s ease}
.aicon-back-top[hidden]{display:none}.aicon-back-top:hover{transform:translateY(-3px)}
@keyframes aicon-enter{from{opacity:.6;transform:translateY(12px)}to{opacity:1;transform:none}}
.aicon-enter{animation:aicon-enter .4s cubic-bezier(.2,.7,.2,1) both}
@media(max-width:640px){.aicon-back-top{right:14px;bottom:14px}.home-redesign .category-grid .card{padding:20px}.home-redesign .guide-card{padding:22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
[data-theme=light] ul.posts li small.tag{background:var(--brand-orange);color:#16100c}
/* AiCoN mark 3 logo, 19 Oct 2026: orange tile + wordmark lockup replaces text wordmark (theme.js rewrites brand innerHTML, so style, not markup) */
header .brand,header .logo,footer .logo{font-size:0!important;display:inline-block;width:124px;height:30px;background:url("aicon-lockup-light-text.svg") no-repeat left center/contain;vertical-align:middle}
header .brand span,header .logo span,footer .logo span{display:none}
html[data-theme="light"] header .brand,html[data-theme="light"] header .logo,html[data-theme="light"] footer .logo{background-image:url("aicon-lockup-dark-text.svg")}
/* Reading-page header: keep theme control beside the brand on phones. */
@media(max-width:640px){
 header.top .wrap{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
 header.top .brand{grid-column:1/4;grid-row:1}
 header.top nav{display:contents}
 header.top #theme-toggle{grid-column:4/7;grid-row:1;justify-self:end}
 header.top nav a{grid-column:span 2;padding-inline:2px;font-size:12px;text-align:center}
}

/* 2026-11-03: centre article media */
article.post figure{text-align:center}article.post figure img,article.post figure video,article.post figure iframe,article.post>img.hero,article.post video{display:block;margin-left:auto;margin-right:auto;max-width:100%}article.post figcaption{text-align:center}article.post iframe[src*="youtube"],article.post iframe[src*="youtu.be"]{display:block;margin-left:auto;margin-right:auto;max-width:100%}
