
:root{color-scheme:dark;--bg:#111111;--panel:#191919;--card:#222222;--border:#393939;--fg:#F5F5F5;--muted:#B0B0B0;--ochre:#D0D0D0;--soft:#D0D0D0}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.75 Georgia,'Times New Roman',serif}a{color:var(--ochre);text-decoration:none;overflow-wrap:anywhere}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--ochre);outline-offset:3px;border-radius:3px}button{font:inherit;cursor:pointer}.shell{max-width:1080px;margin:auto;padding:0 24px}.site-header{background:var(--panel);border-bottom:1px solid var(--border)}.brandbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0 12px}.brand{display:flex;align-items:center;gap:12px;color:var(--fg);font-weight:700;font-size:17px;line-height:1.3}.brand:hover{text-decoration:none}.monogram{flex:none;background:#313131;border:1px solid #6D6D6D;border-radius:9px;padding:9px;color:var(--ochre)}.nav{display:flex;gap:4px;flex-wrap:wrap;padding-bottom:14px}.nav a{font:13px system-ui,sans-serif;color:#D5D5D5;border-radius:7px;padding:9px 11px}.nav a[aria-current=page]{background:#3B3B3B;border:1px solid #D0D0D0;color:#ECECEC;padding:8px 10px}.nav a:hover{background:#353535;text-decoration:none}.menu-toggle{display:none;background:#333333;border:1px solid #737373;border-radius:7px;color:#E3E3E3;padding:9px 12px;font:13px system-ui,sans-serif}main{padding-top:37px!important;padding-bottom:70px!important;min-height:60vh}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.025em;line-height:1.23;font-weight:400}h1{font-size:clamp(34px,6vw,58px);margin:10px 0 14px}h2{font-size:clamp(27px,4vw,36px);margin:0 0 15px}h3{font-size:21px;margin:0 0 10px}p{color:var(--muted);margin:0 0 16px}strong{color:var(--fg)}.eyebrow{font:700 11px system-ui,sans-serif;letter-spacing:1.8px;color:var(--ochre);text-transform:uppercase;margin-bottom:11px}.hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,.66fr);gap:35px;align-items:center;padding:20px 0 43px;border-bottom:1px solid var(--border)}.sub{color:var(--soft);font-size:18px;line-height:1.5;margin-bottom:18px}.portrait{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 25%;border:7px solid #404040;border-radius:15px;box-shadow:0 15px 32px #00000055}.buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 16px;background:transparent;color:var(--soft);border:1px solid #7B7B7B;border-radius:8px;font:650 13px system-ui,sans-serif}.btn.primary{background:var(--ochre);color:#151515;border-color:var(--ochre)}.btn:hover{filter:brightness(1.12);text-decoration:none}.section{padding-top:38px}.rule{height:3px;width:45px;background:var(--ochre);border-radius:4px;margin-bottom:15px}.topics{display:flex;flex-wrap:wrap;gap:10px}.topic{background:#2E2E2E;border:1px solid #444444;border-radius:7px;padding:10px 13px;font-size:14px}.topic:before{content:'✦ ';color:var(--ochre)}.timeline{border-left:1px solid #6D6D6D;padding-left:27px;margin:24px 0 0}.timeitem{position:relative;padding:0 0 24px 10px}.timeitem:last-child{padding-bottom:0}.timeitem:before{content:'';position:absolute;left:-33px;top:6px;background:var(--ochre);width:11px;height:11px;border:3px solid #373737;border-radius:50%}.timeyear{color:var(--ochre);font:700 12px system-ui,sans-serif}.timeitem h3{font-size:18px;margin:6px 0}.timeitem p{font-size:14px;margin:0}.head{border-bottom:1px solid var(--border);padding:10px 0 24px;margin-bottom:26px}.head p{max-width:740px;margin:0}.card{background:var(--card);padding:24px;border:1px solid var(--border);border-radius:11px;margin-bottom:15px}.card p:last-child{margin-bottom:0}.tag{display:inline-block;background:#323232;color:#CCCCCC;font:650 11px system-ui,sans-serif;letter-spacing:.4px;border-radius:5px;padding:5px 10px;margin-bottom:13px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid2 .card{margin-bottom:0}.pub{border-left:3px solid var(--ochre)}.pub p{font-size:15px}.links{display:flex;flex-wrap:wrap;gap:9px}.links a{display:inline-block;background:#323232;border-radius:6px;padding:8px 12px;font:650 12px system-ui,sans-serif}details{border-top:1px solid #414141;margin-top:16px;padding-top:10px}details summary{cursor:pointer;color:var(--ochre);font:650 13px system-ui,sans-serif;padding:9px 0}details p{font-size:14px!important;background:#2C2C2C;border-radius:7px;padding:14px;margin-top:6px!important}ul{padding-left:23px;color:var(--muted)}li{margin-bottom:5px}.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.media-card{background:var(--card);border:1px solid var(--border);border-radius:11px;overflow:hidden}.poster{aspect-ratio:2/3;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:17px;background:linear-gradient(140deg,#3C3C3C,#1D1D1D)}.poster:before{content:'';position:absolute;width:160%;height:55%;top:27%;left:-20%;border:1px solid #A4A4A433;border-radius:50%;transform:rotate(-40deg)}.media-card:nth-child(3n+2) .poster{background:linear-gradient(155deg,#353535,#2B2B2B)}.media-card:nth-child(3n) .poster{background:linear-gradient(155deg,#414141,#232323)}.poster span{position:relative;color:#F3F3F3;text-shadow:0 3px 6px #00000099;font-size:clamp(17px,2.7vw,27px);line-height:1.18}.media-info{padding:15px}.media-info strong{font-size:16px;display:block;line-height:1.3}.media-info small{color:var(--ochre);font:12px system-ui,sans-serif}.media-info p{font-size:13px;margin:7px 0 0}.artist{display:flex;gap:16px;align-items:center}.artist-icon{flex:none;width:76px;height:88px;display:grid;place-items:center;background:linear-gradient(135deg,#4D4D4D,#313131);border-radius:8px;color:#CACACA;font-size:33px}.artist p{font-size:14px}.section-note{color:#A7A7A7;font:12px/1.6 system-ui,sans-serif;margin-top:18px}.footer{background:var(--panel);border-top:1px solid var(--border);padding:28px 15px;text-align:center}.footer-links{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;margin-bottom:12px}.footer-links a{font:13px system-ui,sans-serif}.footer small{font:12px system-ui,sans-serif;color:#A4A4A4}@media(max-width:700px){.shell{padding:0 16px}.menu-toggle{display:block}.nav{display:none;flex-direction:column}.nav.open{display:flex}.nav a{padding:12px}.nav a[aria-current=page]{padding:11px}.hero{grid-template-columns:1fr;gap:22px}.hero .photo-wrap{grid-row:1;max-width:210px}.grid2{grid-template-columns:1fr}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:19px}}@media(max-width:380px){.media-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Gallery revision: actual poster images and compact heights */
.poster{aspect-ratio:5/6;display:block;padding:0;background:#2A2A2A;isolation:isolate}
.poster img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 25%;position:absolute;inset:0;z-index:2}
.poster span{display:none;position:absolute;inset:auto 12px 14px;z-index:3;font-size:21px}
.poster.poster-unavailable span{display:block}
.poster.poster-unavailable{padding:17px}
.poster:before{z-index:0}
.media-card:nth-child(3n+2) .poster,.media-card:nth-child(3n) .poster{background:#282828}
/* Portrait: slightly shorter and wider, especially on phones */
.portrait{aspect-ratio:1/1;object-fit:cover;object-position:center 35%;}
@media(max-width:700px){
 .hero .photo-wrap{max-width:300px;width:min(100%,300px);justify-self:start}
 .hero .portrait{aspect-ratio:5/4;width:100%;max-height:250px;object-fit:cover;object-position:center 32%;}
 .media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .poster{aspect-ratio:5/6}
}
@media(max-width:380px){.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-info{padding:10px}.media-info strong{font-size:14px}}

/* Fast gallery rendering: fixed image sizing + native deferred loading */
.poster { aspect-ratio:5/6; contain:layout paint; background:#2A2A2A; }
.poster img { object-fit:cover; width:100%; height:100%; }
.media-grid { align-items:start; }
@media(max-width:700px){.poster{aspect-ratio:5/6}}

/* Navigation typography revision — scholarly serif, larger and bolder */
.nav a {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
  padding: 10px 12px;
}
.nav a[aria-current="page"] { padding: 9px 11px; }
@media (max-width: 700px) {
  .nav a { font-size: 15px; padding: 13px 14px; }
  .nav a[aria-current="page"] { padding: 12px 13px; }
  .menu-toggle { font-family: Georgia, 'Times New Roman', serif; font-size: 15px; font-weight: 700; }
}

/* Portrait thumbnails for Music I Enjoy */
.artist-icon{overflow:hidden;position:relative;width:92px;height:94px;flex:0 0 92px;padding:0;background:#2F2F2F}
.artist-icon img{width:100%;height:100%;object-fit:cover;object-position:center 23%;display:block;border-radius:8px}
.artist-icon.artist-image-unavailable:after{content:'♫';position:absolute;inset:0;display:grid;place-items:center;color:var(--ochre);font-size:34px}
.artist-credits{margin-top:18px;max-width:950px;line-height:1.8}
.artist-credits a{font-weight:500}
@media(max-width:700px){.artist-icon{width:78px;height:84px;flex-basis:78px}.artist-icon img{height:100%}}


/* Academic contact form: Dark Ink & Ochre, Scholarly Serif */
.contact-form-section{margin:44px 0 12px;max-width:850px}
.contact-form-heading{margin-bottom:20px}
.contact-form-heading h2{margin-bottom:10px}
.contact-form{padding:27px 28px}
.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.form-field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;min-width:0}
.form-field label{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:16px;color:#F5F5F5}
.form-field input,.form-field select,.form-field textarea{font:16px/1.5 Georgia,'Times New Roman',serif;color:#F5F5F5;background:#1C1C1C;border:1px solid #616161;border-radius:8px;padding:12px 14px;width:100%;min-height:47px;transition:border-color .15s,box-shadow .15s}
.form-field textarea{min-height:150px;resize:vertical}
.form-field select{color-scheme:dark}
.form-field input::placeholder,.form-field textarea::placeholder{color:#A8A8A8;opacity:1}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid #D0D0D0;outline-offset:2px;border-color:#D0D0D0}
.form-field input:invalid:not(:placeholder-shown){border-color:#6D6D6D}
.form-spam-field{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.contact-form-bottom{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.contact-submit:disabled{cursor:wait;opacity:.7}
.form-hint{font-size:13px;color:#B0B0B0}
.form-status{margin:15px 0 0!important;border-radius:8px;padding:12px 15px;font-size:14px;line-height:1.55}
.form-status.success{color:#ECECEC;background:#2F2F2F;border:1px solid #858585}
.form-status.error{color:#E5E5E5;background:#2D2D2D;border:1px solid #7F7F7F}
@media(max-width:650px){.contact-form-grid{grid-template-columns:1fr;gap:0}.contact-form{padding:20px 16px}.contact-form-section{margin-top:32px}.contact-form-bottom{align-items:stretch;flex-direction:column}.contact-submit{width:100%}}

/* Compact contact cards and inline platform icons — no network-dependent icon libraries */
.contact-card-compact{padding:16px 19px;min-height:0;display:flex;flex-direction:column;gap:7px;justify-content:center}
.contact-card-head{display:flex;align-items:center;gap:11px;min-height:27px}
.contact-card-head h3{font-size:18px;font-weight:700;line-height:1.3;margin:0;color:var(--fg)}
.contact-card-link{margin:0!important;padding-left:36px;line-height:1.5;font-size:15px}
.contact-card-link a{overflow-wrap:anywhere}
.platform-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;color:var(--ochre);vertical-align:middle;flex-shrink:0}
.platform-icon svg{width:100%;height:100%;display:block}
.platform-link{display:inline-flex!important;align-items:center;gap:7px;vertical-align:middle}
.platform-link .platform-icon{width:17px;height:17px}
.footer-links a{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:14px}
@media(max-width:700px){.contact-card-compact{padding:13px 16px}.contact-card-head h3{font-size:17px}.contact-card-link{padding-left:33px;font-size:14px}}


/* Midnight Blue & Copper — selected final working design */
:root{color-scheme:dark;--bg:#111111;--panel:#202020;--card:#191919;--border:#393939;--fg:#F5F5F5;--muted:#B0B0B0;--ochre:#D0D0D0;--soft:#D0D0D0}
body{background:var(--bg);color:var(--fg)}
.site-header{background:rgba(21,34,49,.96);border-color:var(--border);position:sticky;top:3px;z-index:30;backdrop-filter:blur(12px)}
.reading-progress{position:fixed;top:0;left:0;width:0;height:3px;background:var(--ochre);z-index:50;box-shadow:0 0 9px #A4A4A477;pointer-events:none}
.brand{gap:0;font:700 clamp(17px,2vw,23px)/1.3 Georgia,'Times New Roman',serif;color:var(--fg)}
.nav a{font:700 16px/1.45 Georgia,'Times New Roman',serif;color:#B0B0B0;transition:background-color .2s,color .2s}
.nav a[aria-current=page]{background:#323232;border-color:#D0D0D0;color:#D8D8D8}
.nav a:hover{background:#363636;color:#FFFFFF}
.menu-toggle{color:var(--fg);background:#303030;border-color:var(--border);font-family:Georgia,serif;font-weight:700}
.hero{position:relative;isolation:isolate}
.hero:before{content:'';position:absolute;z-index:-1;right:-2%;top:1%;width:47%;height:90%;background:radial-gradient(ellipse,#A4A4A41c,transparent 70%);filter:blur(16px);pointer-events:none}
.portrait{aspect-ratio:4/5;object-fit:cover;object-position:center 25%;border:7px solid #313131;border-radius:17px;box-shadow:0 16px 36px #07070788;transition:transform .3s ease}
.portrait:hover{transform:translateY(-4px)}
.card{background:var(--card);border-color:var(--border);transition:border-color .24s ease,transform .24s ease,box-shadow .24s ease}
.card:hover{border-color:#6D6D6D;box-shadow:0 9px 20px #0F0F0F55}
.btn,.nav a,.media-card,.artist-icon{transition:all .22s ease}
.btn.primary{background:var(--ochre);border-color:var(--ochre);color:#111111}
.btn:hover{transform:translateY(-2px)}
.topic{background:#2A2A2A;border-color:#535353;color:#E8E8E8;transition:transform .2s,border-color .2s}
.topic:hover{transform:translateY(-2px);border-color:var(--ochre)}
.tag{background:#323232;color:#C6C6C6}
.timeitem:before{background:var(--ochre);border-color:#323232}
.timeline{border-color:#D0D0D0}
.research-details{margin-top:16px;padding-top:12px;border-top:1px solid var(--border)}
.research-details summary{color:var(--ochre);font-weight:700;cursor:pointer}
.research-details p{margin:10px 0 0;font-size:14px;color:var(--muted)}
.contact-form{background:var(--card)}
.form-field input,.form-field textarea,.form-field select{background:#1C1C1C;border-color:#5F5F5F;color:var(--fg)}
.form-field label{color:var(--fg)}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline-color:var(--ochre);border-color:var(--ochre)}
.contact-card-head h3{color:var(--fg)}
.footer{background:var(--panel);border-color:var(--border)}
.platform-icon,.platform-link,.contact-card-link a{color:var(--ochre)}
main{animation:siteEnter .4s ease-out both}
@keyframes siteEnter{from{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.nav a{font-size:15px}.portrait{width:min(100%,330px);aspect-ratio:5/4;object-position:center 29%}.hero{gap:18px}.brand{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}


/* Gallery pill navigation: one category at a time */
.gallery-tabs{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:24px 0 26px}
.gallery-tab{font:700 17px/1.3 Georgia,'Times New Roman',serif;border-radius:999px;padding:12px 24px;min-height:49px;background:#282828;color:#F5F5F5;border:2px solid #525252;transition:background .2s,border-color .2s,transform .2s}
.gallery-tab:hover{background:#3A3A3A;border-color:#D0D0D0;transform:translateY(-2px)}
.gallery-tab[aria-selected="true"]{background:#3D3D3D;color:#D0D0D0;border-color:#D0D0D0}
.gallery-tab:focus-visible{outline:3px solid #D0D0D0;outline-offset:3px}
.gallery-panel[hidden]{display:none!important}
/* Homepage portrait: short and wide instead of an overly tall crop */
.hero{grid-template-columns:minmax(0,1.32fr) minmax(265px,.78fr);gap:30px}
.hero .photo-wrap{width:min(100%,350px);max-width:350px;justify-self:center;align-self:center}
.hero .portrait{display:block;width:100%;height:auto;aspect-ratio:5/4;max-height:none;object-fit:cover;object-position:center 37%;border-radius:17px}
@media(max-width:700px){
  .hero{grid-template-columns:minmax(0,1fr)}
  .hero .photo-wrap{grid-row:1;justify-self:center;width:min(100%,330px);max-width:330px}
  .hero .portrait{width:100%;aspect-ratio:5/4;max-height:none;object-fit:cover;object-position:center 35%}
  .gallery-tabs{gap:8px;margin:18px 0 22px}
  .gallery-tab{font-size:15px;min-height:43px;padding:9px 17px}
}

/* Professional Experience: academic editorial presentation */
.professional-list{display:grid;gap:0}
.professional-entry{display:grid;grid-template-columns:92px minmax(0,1fr);gap:22px;padding:28px 0;border-bottom:1px solid var(--border);align-items:start}
.professional-logo{width:92px;height:92px;display:flex;align-items:center;justify-content:center;background:#FFFFFF;border:1px solid #DCDCDC;border-radius:16px;padding:9px;overflow:hidden}
.professional-logo img{display:block;width:100%;height:100%;object-fit:contain}
.company-wordmark{color:#191919;font:700 14px/1.1 Georgia,serif;letter-spacing:-.3px;text-align:center}
.peekage-wordmark{color:#585858}
.tapsi-wordmark{font:800 15px/1.05 system-ui,sans-serif;color:#7A7A7A}
.professional-dates{font:700 11px system-ui,sans-serif;color:var(--ochre);letter-spacing:.4px;margin-bottom:6px}
.professional-body h2{font-size:clamp(21px,3vw,27px);line-height:1.25;margin:0 0 5px}
.professional-company{font-weight:700;color:var(--fg);margin:0 0 10px}
.professional-separator{color:#9C9C9C;padding:0 4px}
.professional-description{max-width:740px;margin-bottom:13px}
.work-tags{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0}
.work-tag{border:1px solid #5C5C5C;background:#2D2D2D;color:#DEDEDE;padding:5px 10px;border-radius:999px;font:600 11px system-ui,sans-serif}
.professional-details{margin:7px 0 0;max-width:760px;border:0;padding:0}
.professional-details summary{display:inline-block;padding:8px 0;color:var(--ochre);cursor:pointer;font:700 12px system-ui,sans-serif}
.professional-details p{background:#2D2D2D;border-left:2px solid var(--ochre);margin:7px 0 0!important;padding:13px 15px;border-radius:0 7px 7px 0}
.professional-note{margin-top:25px;font-size:13px;color:var(--muted)}
@media(max-width:650px){.professional-entry{grid-template-columns:62px minmax(0,1fr);gap:13px;padding:22px 0}.professional-logo{width:62px;height:62px;border-radius:11px;padding:5px}.company-wordmark{font-size:10px}.tapsi-wordmark{font-size:11px}.professional-body h2{font-size:20px}.professional-company{font-size:13px}}

/* Verified work arrangement labels */
.professional-meta-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:7px}
.professional-meta-row .professional-dates{margin-bottom:0}
.work-arrangement{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:3px 12px;border:1px solid #D0D0D0;background:#353535;color:#DDDDDD;border-radius:999px;font:600 12px/1.25 Georgia,serif;white-space:nowrap}
@media(max-width:650px){.professional-meta-row{gap:7px}.work-arrangement{font-size:11px;padding:3px 9px;min-height:24px}}

/* Beyond Research: compact external discovery links, accessible clickable posters */
.poster{position:relative;isolation:isolate;overflow:hidden}
.poster-link{position:absolute;inset:0;z-index:3;border-radius:inherit}
.poster-link:focus-visible{outline:3px solid var(--ochre);outline-offset:-4px}
.poster img{transition:transform .22s ease,filter .22s ease}
.media-card:hover .poster img,.media-card:focus-within .poster img{transform:scale(1.045)}
.media-card:hover,.media-card:focus-within{border-color:#8C8C8C;box-shadow:0 12px 25px #00000044}
.media-info{display:flex;flex-direction:column;align-items:flex-start}
.external-media-link{display:inline-flex;align-items:center;gap:7px;margin-top:12px;
 padding:7px 11px;border-radius:7px;border:1px solid #5F5F5F;
 background:#343434;color:#F5F5F5!important;text-decoration:none!important;
 font:700 12px/1.3 system-ui,sans-serif;min-height:34px;transition:background .2s,border-color .2s}
.external-media-link:hover{background:#474747;border-color:#D0D0D0}
.external-media-link:focus-visible{outline:2px solid #D0D0D0;outline-offset:2px}
.imdb-mark{background:#D0D0D0;color:#121212;padding:2px 4px;border-radius:3px;
 font:900 12px/1.15 Arial,sans-serif;letter-spacing:-.4px}
.spotify-link svg{flex:none}
.artist .external-media-link{margin-top:10px}
@media(max-width:600px){.external-media-link{font-size:11px;padding:7px 9px}.poster{aspect-ratio:5/6}}
@media(prefers-reduced-motion:reduce){.poster img,.media-card,.external-media-link{transition:none!important}}

/* Research highlights, based on the supplied ICEE and ICBME papers */
.pub-intro{line-height:1.85}.publication-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 18px}.publication-metric{background:#2C2C2C;border:1px solid #505050;border-radius:9px;padding:13px 15px}.publication-metric strong{display:block;color:#D0D0D0;font:700 23px Georgia,serif}.publication-metric span{display:block;color:#B0B0B0;font:12px/1.5 system-ui,sans-serif;margin-top:4px}.publication-detail-content{padding:8px 3px}.publication-highlight-list{padding-left:20px;color:#DEDEDE;line-height:1.75}.publication-highlight-list li{margin-bottom:11px}.publication-highlight-list strong{color:#F5F5F5}@media(max-width:540px){.publication-metrics{grid-template-columns:1fr}}

/* Approved Black & Emerald theme and compact desktop navigation */
:root{color-scheme:dark;--bg:#111111;--panel:#191919;--card:#222222;--border:#393939;--fg:#F5F5F5;--muted:#B0B0B0;--ochre:#D0D0D0;--soft:#D0D0D0}
body{background:var(--bg);color:var(--fg)}
.site-header{background:#191919;border-bottom:1px solid var(--border)}
.nav a{font:700 13px Georgia,'Times New Roman',serif;color:#D4D4D4;background:transparent}
.nav a[aria-current=page]{background:transparent;border:0;border-bottom:2px solid var(--ochre);color:var(--ochre);padding:9px 11px 7px}
.nav a:hover{background:#353535}
.nav .more-menu{position:relative}
.nav .more-trigger{background:transparent;color:#D4D4D4;border:0;padding:9px 11px;border-radius:6px;font:700 13px Georgia,serif}
.nav .more-trigger:hover,.nav .more-trigger[aria-expanded=true]{background:#353535;color:var(--ochre)}
.nav .more-dropdown{display:none;position:absolute;right:0;top:100%;z-index:30;min-width:210px;background:#252525;border:1px solid #5C5C5C;padding:6px;border-radius:8px;box-shadow:0 15px 35px #00000088}
.nav .more-dropdown.open{display:grid}
.nav .more-dropdown a{display:block;border-radius:5px}
.nav .more-dropdown a[aria-current=page]{border-bottom:0;background:#444444;color:#D9D9D9;padding:9px 11px}
.nav .more-trigger.more-current{color:var(--ochre)}
.portrait{aspect-ratio:5/4;object-position:center 38%;border-color:#434343}
.publication-metric{background:#2C2C2C;border-color:#505050}
.publication-metric strong{color:var(--ochre)}
.publication-metric span,.publication-highlight-list{color:#D7D7D7}
.external-media-link{background:#343434;color:#F4F4F4!important;border-color:#5F5F5F}
.external-media-link:hover{background:#474747;border-color:#D0D0D0}
.topic,.work-tag,.chip{background:#313131;color:#E8E8E8;border-color:#5F5F5F}
.work-arrangement{background:#343434;color:#DCDCDC;border-color:#838383}
@media(min-width:701px){.nav{display:flex;gap:4px;align-items:center}}
@media(max-width:700px){.nav .more-menu{width:100%}.nav .more-trigger{width:100%;text-align:left}.nav .more-dropdown{position:static;box-shadow:none;min-width:0;margin:3px 0}.nav .more-dropdown.open{display:grid}}

/* Pure Monochrome — approved website-wide grayscale design */
:root {color-scheme:dark;--bg:#111111;--panel:#191919;--card:#222222;--border:#393939;--fg:#F5F5F5;--muted:#B0B0B0;--ochre:#D0D0D0;--soft:#D0D0D0}
html,body{background:#111111;color:#F5F5F5}
body{font-family:Georgia,'Times New Roman',serif}
a{color:#D0D0D0}
a:hover{color:#FFFFFF}
.site-header,.footer{background:#191919;border-color:#393939}
.nav .more-dropdown{background:#222222;border-color:#555555}
.nav a,.nav .more-trigger{color:#D0D0D0;background:transparent}
.nav a[aria-current=page]{border-color:#D0D0D0;color:#F5F5F5;background:transparent}
.nav .more-trigger:hover,.nav a:hover,.nav .more-trigger[aria-expanded=true]{color:#FFF;background:#303030}
.nav .more-dropdown a[aria-current=page]{background:#333333;color:#F5F5F5}
.nav .more-trigger.more-current{color:#F5F5F5}
.brand,.head h1,.head h2,.card h2,.card h3,h1,h2,h3,strong{color:#F5F5F5}
p,li,.head p,.artist p{color:#B0B0B0}
.eyebrow,.timeyear,.professional-dates,.publication-metric strong{color:#D0D0D0}
.btn{border-color:#727272;color:#F5F5F5;background:transparent}
.btn-primary,.btn.primary{background:#D0D0D0;color:#111111;border-color:#D0D0D0}
.btn-primary:hover,.btn.primary:hover{background:#EEEEEE;color:#111111}
.card,.media-card{background:#222222;border-color:#393939}
.card,.media-card,.professional-logo,.publication-metric{box-shadow:none}
.card.pub,.pub{border-left-color:#D0D0D0}
.section .rule,.rule,.reading-progress{background:#D0D0D0}
.topic,.chip,.work-tag,.work-arrangement{background:#282828;color:#E0E0E0;border-color:#494949}
.work-arrangement{color:#DFDFDF}
.professional-logo{background:#F0F0F0;border-color:#666666}
.professional-details p,details p,.publication-metric{background:#282828;color:#D7D7D7;border-color:#444444}
.publication-highlight-list{color:#C7C7C7}
.publication-metric span{color:#B0B0B0}
.gallery-tab{background:#252525;border:1px solid #555555;color:#D0D0D0}
.gallery-tab:hover{background:#333333;border-color:#888888}
.gallery-tab[aria-selected=true]{background:#484848;color:#FFFFFF;border-color:#B0B0B0}
.gallery-tab:focus-visible{outline:2px solid #D0D0D0}
.media-info small{color:#BBBBBB}
.poster,.media-card:nth-child(3n+2) .poster,.media-card:nth-child(3n) .poster{background:#2C2C2C}
.media-card:hover,.media-card:focus-within{border-color:#898989}
.external-media-link{background:#303030;color:#EAEAEA!important;border-color:#656565}
.external-media-link:hover{background:#424242;border-color:#AAAAAA}
.imdb-mark{background:#D0D0D0;color:#181818}
.spotify-link svg circle{fill:#D0D0D0}
.artist-icon{background:#303030;color:#D0D0D0}
.artist{border-color:#393939}
.featured-favorite{background:linear-gradient(120deg,#282828,#1D1D1D);border:1px solid #4F4F4F;border-radius:10px;padding:19px 22px;margin:24px 0 27px}
.featured-favorite h2{font-size:22px;margin:8px 0 5px}
.featured-favorite p{font-size:13px;margin:0}
.genre-filter{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 21px}
.genre-filter button{padding:7px 13px;border:1px solid #575757;background:#262626;color:#D0D0D0;border-radius:7px;font:600 12px system-ui,sans-serif}
.genre-filter button[aria-pressed=true],.genre-filter button:hover{background:#555555;border-color:#A0A0A0;color:#FFFFFF}
.genre-hidden{display:none!important}
.media-info{display:flex;flex-direction:column;align-items:flex-start}
.personal-rating{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:12px;font:13px system-ui,sans-serif}
.rating-label{color:#BBBBBB}
.rating-score{background:#181818;color:#F5F5F5!important;border:1px solid #696969;border-radius:7px;padding:5px 10px;font:700 13px system-ui,sans-serif}
.feature-choice{background:#242424;color:#DADADA;border:1px solid #666666;padding:8px 12px;border-radius:7px;font:600 12px system-ui,sans-serif;margin-top:10px}
.feature-choice:hover,.feature-choice.active{background:#474747;color:#FFFFFF;border-color:#A7A7A7}
.media-card .external-media-link{margin-top:10px}
.reflection{max-width:850px;margin-top:10px}
.poster{aspect-ratio:5/6}
@media(max-width:700px){.featured-favorite{padding:14px 16px}.genre-filter{gap:6px}.genre-filter button{font-size:11px;padding:7px 10px}}


/* Advanced academic portfolio: accessible two-theme design */
:root{--bg:#111111;--panel:#191919;--card:#222222;--border:#393939;--fg:#F5F5F5;--muted:#B0B0B0;--ochre:#D0D0D0;--soft:#D0D0D0;--control-bg:#222222;--control-text:#F5F5F5;--button-text:#111111;color-scheme:dark}
html[data-theme="light"]{--bg:#F2F3F4;--panel:#E9EBED;--card:#FFFFFF;--border:#D7DBDE;--fg:#272B2E;--muted:#61676D;--ochre:#41474B;--soft:#61676D;--control-bg:#FFFFFF;--control-text:#272B2E;--button-text:#FFFFFF;color-scheme:light}
html,body{background:var(--bg)!important;color:var(--fg)!important}
body,header,footer{transition:background-color .18s,color .18s,border-color .18s}
/* Critical: headings were hard-coded near-white in previous preview. */
html[data-theme="light"] :is(h1,h2,h3,h4,h5,h6), html[data-theme="light"] :is(.head h1,.head h2,.card h2,.card h3,.timeitem h3,.pub h3,.artist h3,.professional-body h2,.contact-card-head h3,.featured-favorite h2,.footer-cta h2),html[data-theme="light"] strong:not(.rating-score):not(.publication-metric strong):not(.company-wordmark),html[data-theme="light"] .brand{color:var(--fg)!important}
html[data-theme="light"] :is(p,li,.head p,.artist p,.timeyear,.professional-dates,.footer-field,.form-hint){color:var(--muted)!important}
html[data-theme="light"] :is(.eyebrow,.tag,.sub,.professional-dates,.timeyear,.publication-metric strong){color:var(--fg)!important}
html[data-theme="light"] a{color:#41474B}html[data-theme="light"] a:hover{color:#1B1D1F}
html[data-theme="light"] .site-header,html[data-theme="light"] .footer{background:var(--panel)!important;border-color:var(--border)!important}
html[data-theme="light"] .nav :is(a,.more-trigger){color:var(--fg)!important;background:transparent!important}
html[data-theme="light"] .nav :is(a,.more-trigger):hover{background:#DDE0E2!important;color:var(--fg)!important}
html[data-theme="light"] .nav a[aria-current=page]{border-color:var(--ochre)!important;color:var(--fg)!important}
html[data-theme="light"] .more-dropdown{background:#FFFFFF!important;border-color:var(--border)!important}
html[data-theme="light"] .card,html[data-theme="light"] .media-card,html[data-theme="light"] .artist,html[data-theme="light"] .contact-card,html[data-theme="light"] .contact-form,html[data-theme="light"] .featured-favorite{background:#FFFFFF!important;border-color:var(--border)!important;box-shadow:none!important}
html[data-theme="light"] .publication-metric,html[data-theme="light"] .professional-details p,html[data-theme="light"] details p,html[data-theme="light"] .work-tag,html[data-theme="light"] .topic,html[data-theme="light"] .chip,html[data-theme="light"] .work-arrangement,html[data-theme="light"] .genre-filter button,html[data-theme="light"] .gallery-tab,html[data-theme="light"] .feature-choice{background:#F6F7F8!important;color:var(--fg)!important;border-color:var(--border)!important}
html[data-theme="light"] .publication-metric span,html[data-theme="light"] .publication-highlight-list,html[data-theme="light"] .rating-label{color:var(--muted)!important}
html[data-theme="light"] .btn,html[data-theme="light"] .external-media-link{background:#FFFFFF!important;color:#272B2E!important;border-color:#C2C6C9!important}
html[data-theme="light"] .btn.primary,html[data-theme="light"] .btn-primary{background:#41474B!important;border-color:#41474B!important;color:#FFFFFF!important}
html[data-theme="light"] .gallery-tab[aria-selected=true],html[data-theme="light"] .genre-filter button[aria-pressed=true],html[data-theme="light"] .feature-choice.active{background:#41474B!important;color:#FFFFFF!important}
html[data-theme="light"] .form-field label{color:#272B2E!important}
html[data-theme="light"] .form-field :is(input,textarea,select){color:#272B2E!important;background:#FFFFFF!important;border-color:#C5C9CB!important;color-scheme:light}
html[data-theme="light"] .form-field :is(input,textarea)::placeholder{color:#697075!important}
html[data-theme="light"] .form-status.success{background:#E9F0EA;color:#273A2D;border-color:#9AB0A0}
html[data-theme="light"] .form-status.error{background:#F7ECEC;color:#6C2828;border-color:#DAA8A8}
html[data-theme="light"] .professional-logo{background:#FFFFFF!important;border-color:var(--border)!important}
html[data-theme="light"] .portrait{border-color:#D2D5D6!important;box-shadow:0 12px 26px #00000016!important}
html[data-theme="light"] .hero:before{background:none!important}
html[data-theme="light"] .footer-links a,html[data-theme="light"] .platform-icon{color:var(--fg)!important}
.header-controls{display:flex;align-items:center;gap:7px}.header-controls .menu-toggle{margin-left:3px}
.utility-button{background:var(--control-bg);color:var(--control-text);border:1px solid var(--border);width:39px;height:39px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;font:21px system-ui,sans-serif}
.utility-button:hover{filter:brightness(.88)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-search-panel{background:var(--panel);border-bottom:1px solid var(--border);position:absolute;top:100%;left:0;right:0;box-shadow:0 16px 30px #0002;z-index:50;padding:16px 0}
.site-search-panel[hidden]{display:none!important}.search-field{display:flex;gap:9px}.search-field input{flex:1;min-width:0;color:var(--fg);background:var(--card);border:1px solid var(--border);border-radius:7px;padding:11px;font:14px system-ui,sans-serif}
.site-search-results{max-height:250px;overflow:auto;margin-top:11px;display:grid;gap:5px}.site-search-results a{display:block;padding:10px;border:1px solid var(--border);border-radius:6px;background:var(--card);color:var(--fg)!important;font:13px system-ui,sans-serif}.site-search-results p{font:13px system-ui,sans-serif}
.page-toc{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:20px 0 15px;padding:13px;background:var(--card);border:1px solid var(--border);border-radius:8px}.page-toc span{font:700 11px system-ui,sans-serif;color:var(--muted);margin-right:4px}.page-toc a{font:12px system-ui,sans-serif;color:var(--fg)!important;text-decoration:none;border:1px solid var(--border);background:var(--bg);padding:7px 10px;border-radius:6px}.page-toc a:hover{background:var(--panel)}
main :is(article[id],section[id]){scroll-margin-top:145px}
.publication-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.publication-metric{background:var(--bg)!important;border-color:var(--border)!important}
.publication-metric strong{color:var(--fg)!important;font-weight:400}
.publication-metric span{color:var(--muted)!important}
.publication-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:17px 0 10px}.publication-tabs button{border:1px solid var(--border);background:var(--bg);color:var(--fg);padding:9px 12px;border-radius:6px;font:12px system-ui,sans-serif}.publication-tabs button[aria-selected=true]{background:var(--ochre);color:var(--button-text);border-color:var(--ochre)}
.publication-tab-panel{background:var(--bg);border:1px solid var(--border);border-radius:7px;padding:16px;font:14px/1.75 system-ui,sans-serif;color:var(--muted);min-height:95px}.publication-tab-panel strong{color:var(--fg)!important}
.research-architecture{border:1px solid var(--border);border-radius:9px;padding:17px;background:var(--card);margin-top:21px}.research-architecture h4{margin:0 0 6px;color:var(--fg);font:400 22px Georgia,serif}.diagram-hint{font:12px system-ui,sans-serif;color:var(--muted)}.diagram-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.architecture-step{display:block;width:100%;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--fg);padding:12px;text-align:center;font:700 13px system-ui,sans-serif}.architecture-step small{display:block;margin-top:4px;color:var(--muted);font:11px/1.4 system-ui,sans-serif}.architecture-step:hover,.architecture-step[aria-pressed=true]{border-color:var(--fg);background:var(--panel)}.diagram-arrow{text-align:center;color:var(--muted);line-height:26px}.architecture-description{background:var(--bg);border-left:3px solid var(--ochre);padding:13px;margin-top:13px;color:var(--muted);font:12px/1.7 system-ui,sans-serif}
.advanced-footer{padding:0!important;text-align:left!important;background:var(--panel)!important;color:var(--fg)}.footer-cta{padding:30px 0 23px;border-bottom:1px solid var(--border)}.footer-cta h2{color:var(--fg)!important;margin:8px 0;font-size:29px}.footer-cta p{max-width:650px;font-size:14px}.footer-cta .buttons{margin:15px 0 0}.footer-columns{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:20px;padding:26px 0}.footer-columns h3{font:700 13px system-ui,sans-serif;color:var(--fg);margin-bottom:13px}.footer-columns a:not(.footer-socials a){display:block;color:var(--muted);font:13px system-ui,sans-serif;padding:5px 0}.footer-columns a:hover{color:var(--fg)!important}.footer-identity{color:var(--fg)!important;font:14px Georgia,serif}.footer-field{font:12px system-ui,sans-serif}.footer-socials{display:flex;gap:7px;flex-wrap:wrap}.footer-socials a{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--border);border-radius:6px;color:var(--fg);font:700 12px system-ui,sans-serif;text-decoration:none!important}.footer-bottom{border-top:1px solid var(--border);padding:16px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.footer-bottom small{font:12px system-ui,sans-serif;color:var(--muted)}.back-to-top{border:1px solid var(--border);background:var(--card);color:var(--fg);padding:9px 11px;border-radius:6px;font:12px system-ui,sans-serif}
@media(max-width:700px){.header-controls .menu-toggle{display:inline-flex!important}.utility-button{width:36px;height:36px}.site-header .brand{font-size:16px}.publication-metrics{grid-template-columns:repeat(2, minmax(0,1fr))}.footer-columns{grid-template-columns:1fr 1fr}.footer-columns>div:last-child{grid-column:1/-1}.footer-cta{padding-top:26px}.footer-columns a:not(.footer-socials a){font-size:12px}}
@media(max-width:420px){.footer-columns{grid-template-columns:1fr}.footer-columns>div:last-child{grid-column:auto}.publication-metrics{grid-template-columns:1fr}.header-controls{gap:4px}.utility-button{width:33px;height:33px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}


/* Advanced 2026 dual-theme system. Overrides older hard-coded colors. */
:root{color-scheme:dark;--bg:#111111;--panel:#191919;--card:#222222;--border:#393939;--fg:#F5F5F5;--muted:#B0B0B0;--ochre:#D0D0D0;--soft:#D0D0D0;--btntext:#111111;--raised:#292929;--shadow:rgba(0,0,0,.28)}
html[data-theme="light"]{color-scheme:light;--bg:#F2F3F4;--panel:#E9EBED;--card:#FFFFFF;--border:#D7DBDE;--fg:#272B2E;--muted:#61676D;--ochre:#41474B;--soft:#41474B;--btntext:#FFFFFF;--raised:#F6F7F8;--shadow:rgba(20,26,32,.09)}
html,html body{background:var(--bg)!important;color:var(--fg)!important}
body,h1,h2,h3,h4,h5,h6,.brand,.head h1,.head h2,.card h2,.card h3,.timeline h3,.timeitem h3,.professional-body h2,.artist h3,.featured-favorite h2,.publication-highlight-list strong,.publication-metric strong,.contact-card h3{color:var(--fg)!important}
body p,body li,.head p,.artist p,.media-info small,.sub,.timeyear,.publication-metric span,.professional-description,.publication-highlight-list,.professional-note,.form-hint,.pub-intro,.tag,.eyebrow{color:var(--muted)!important}
body strong,body b,.publication-highlight-list strong{color:var(--fg)!important}
a,.links a,.external-media-link{color:var(--fg)!important}
a:hover{color:var(--fg)!important}
.site-header,.footer{background:var(--panel)!important;border-color:var(--border)!important}
.nav .nav-link,.nav a,.nav .more-trigger{color:var(--fg)!important}
.nav a[aria-current=page]{color:var(--fg)!important;border-color:var(--ochre)!important}
.nav a:hover,.nav .more-trigger:hover{background:var(--raised)!important;color:var(--fg)!important}
.nav .more-dropdown{background:var(--card)!important;border-color:var(--border)!important;box-shadow:0 12px 25px var(--shadow)}
.nav .more-dropdown a[aria-current=page]{background:var(--raised)!important;color:var(--fg)!important}
.card,.media-card,.artist,.featured-favorite,.contact-form,.professional-entry,.publication-metric,.architecture-demo,.paper-tab-content{background:var(--card)!important;border-color:var(--border)!important;box-shadow:none!important}
.card.pub,.pub{border-left-color:var(--ochre)!important}
.publication-metric{background:var(--raised)!important}
.publication-metric strong{color:var(--fg)!important}
.topic,.chip,.work-tag,.work-arrangement,.rating-score,.feature-choice,.genre-filter button,.gallery-tab{background:var(--raised)!important;color:var(--fg)!important;border-color:var(--border)!important}
.genre-filter button[aria-pressed=true],.gallery-tab[aria-selected=true],.feature-choice.active{background:var(--ochre)!important;color:var(--btntext)!important;border-color:var(--ochre)!important}
.btn{background:transparent!important;color:var(--fg)!important;border-color:var(--border)!important}
.btn.primary,.btn-primary{background:var(--ochre)!important;color:var(--btntext)!important;border-color:var(--ochre)!important}
.btn.primary:hover,.btn-primary:hover{filter:brightness(.9)}
.poster,.media-card:nth-child(3n+2) .poster,.media-card:nth-child(3n) .poster{background:linear-gradient(135deg,#505050,#242424)!important}
.media-info,.artist,.contact-card,.featured-favorite{color:var(--fg)!important}
.external-media-link,.feature-choice{color:var(--fg)!important;background:var(--raised)!important;border-color:var(--border)!important}
.imdb-mark{background:var(--ochre)!important;color:var(--btntext)!important}
.professional-logo{background:#EEE!important;border-color:var(--border)!important}
.professional-details p,details p,.publication-detail-content,.publication-highlight-list{color:var(--muted)!important;background:transparent!important}
.professional-details p{background:var(--raised)!important;border-color:var(--ochre)!important}
.rule{background:var(--ochre)!important}.timeline{border-color:var(--border)!important}
.timeitem:before{background:var(--ochre)!important;border-color:var(--panel)!important}
.form-field input,.form-field textarea,.form-field select,.contact-form input,.contact-form textarea,.contact-form select{background:var(--raised)!important;color:var(--fg)!important;border-color:var(--border)!important}
.form-field label,.contact-form label{color:var(--fg)!important}
.contact-form-section{scroll-margin-top:20px}
.reading-progress{background:var(--ochre)!important}
/* fixed bright text in light mode: explicit targets for nested components */
html[data-theme="light"] .head h1,html[data-theme="light"] .head h2,html[data-theme="light"] .head h3,html[data-theme="light"] .card h3,html[data-theme="light"] .pub h3,html[data-theme="light"] .section h2,html[data-theme="light"] .section h3,html[data-theme="light"] .timeitem h3,html[data-theme="light"] .footer h2,html[data-theme="light"] .footer h3{color:#272B2E!important}
html[data-theme="light"] .publication-metric strong,html[data-theme="light"] .eyebrow,html[data-theme="light"] .tag,html[data-theme="light"] .timeyear{color:#41474B!important}
/* header actions and compact site search */
.header-actions{display:flex;align-items:center;gap:7px}.header-tool{width:35px;height:35px;border:1px solid var(--border);border-radius:7px;color:var(--fg);background:var(--card);font:19px system-ui,sans-serif;display:grid;place-items:center}.header-tool:hover{background:var(--raised)}
.site-header .menu-toggle{margin:0}.site-search[hidden]{display:none!important}.site-search{padding:12px 0 18px;background:var(--panel)}.site-search-row{display:flex;gap:8px;align-items:center}.site-search-row input{width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:7px;background:var(--card);color:var(--fg);font:13px system-ui,sans-serif}.search-dismiss{background:var(--card);border:1px solid var(--border);border-radius:7px;padding:8px 13px;color:var(--fg)}.site-search-results{max-height:225px;overflow-y:auto;margin-top:8px;display:grid;gap:5px}.site-search-results a{display:block;text-decoration:none;padding:9px 11px;border:1px solid var(--border);border-radius:6px;background:var(--card);font:12px system-ui,sans-serif}.site-search-results a:hover{background:var(--raised)}.site-search-results p{font-size:12px;margin:8px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.section-toc{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:16px 0 12px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--card)}.section-toc span{font:700 10px system-ui,sans-serif;color:var(--muted);margin-right:3px}.section-toc a{font:11px system-ui,sans-serif;text-decoration:none;background:var(--raised);border:1px solid var(--border);border-radius:5px;padding:6px 10px}.section-toc a:hover{border-color:var(--ochre)}
.architecture-demo{margin:18px 0;padding:17px;border:1px solid var(--border);border-radius:8px}.architecture-demo h4{font:400 19px Georgia,serif;margin:0 0 13px}.arch-steps{display:flex;flex-wrap:wrap;gap:8px}.arch-step{border:1px solid var(--border);background:var(--raised);color:var(--fg);border-radius:6px;padding:9px 12px;font:12px system-ui,sans-serif}.arch-step:hover,.arch-step.active{border-color:var(--ochre);box-shadow:inset 0 0 0 1px var(--ochre)}.arch-info{background:var(--raised);border-left:2px solid var(--ochre);padding:12px;margin:12px 0 0!important;font:12px/1.65 system-ui,sans-serif}
.paper-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0 10px}.paper-tab{background:var(--raised);color:var(--fg);border:1px solid var(--border);padding:8px 11px;border-radius:6px;font:11px system-ui,sans-serif}.paper-tab.selected{background:var(--ochre);color:var(--btntext)}.paper-tab-content{background:var(--raised)!important;padding:14px;border:1px solid var(--border);border-radius:6px;font:13px/1.7 system-ui,sans-serif;color:var(--fg)}
/* Common footer on all eight pages */
.footer{padding:0!important;text-align:left!important}.footer-inner{padding-top:0}.footer-cta{padding:27px 0 23px;border-bottom:1px solid var(--border)}.footer-cta h2{color:var(--fg)!important;font:400 29px Georgia,serif;margin:5px 0 7px}.footer-cta p{font-size:13px;max-width:680px}.footer-cta-actions{display:flex;flex-wrap:wrap;gap:8px}.footer-columns{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:22px;padding:25px 0}.footer-columns h3{font:700 12px system-ui,sans-serif;margin:0 0 11px;color:var(--fg)!important}.footer-columns a{display:block;text-decoration:none;color:var(--muted)!important;font:12px/1.7 system-ui,sans-serif;padding:3px 0}.footer-columns a:hover{color:var(--fg)!important;text-decoration:underline}.footer-columns p{font-size:12px;line-height:1.8}.footer-social{display:flex;gap:8px;margin-top:12px}.footer-social a{height:35px;width:35px;display:grid;place-items:center;border:1px solid var(--border);border-radius:6px;color:var(--fg)!important;font-weight:700;padding:0}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--border);padding:14px 0}.footer-bottom small{color:var(--muted);font:11px system-ui,sans-serif}.back-to-top{border:1px solid var(--border);border-radius:6px;background:var(--card);color:var(--fg);padding:8px 11px;font:11px system-ui,sans-serif}
@media(max-width:700px){.brandbar{gap:8px}.brand{font-size:15px}.footer-columns{grid-template-columns:1fr 1fr;gap:20px}.footer-columns>div:last-child{grid-column:1/-1}.section-toc{gap:5px}.publication-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.header-tool{width:34px;height:34px}}
@media(max-width:480px){.footer-columns{grid-template-columns:1fr}.footer-columns>div:last-child{grid-column:auto}.publication-metrics{grid-template-columns:1fr}.footer-bottom{align-items:start;flex-direction:column}.header-actions{gap:4px}.brand{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* Final cleanup — one search and one reading-mode control */
.header-actions{display:flex;align-items:center;gap:8px}
.header-tool{width:38px;height:38px;flex-shrink:0}
.site-search[hidden]{display:none!important}
.site-search{background:var(--panel);border-top:1px solid var(--border)}
.feature-choice,.featured-favorite{display:none!important}
/* Theme-specific typography: prevent near-white headings in Soft Silver */
html[data-theme="light"] :is(h1,h2,h3,h4,h5,h6,.brand,.publication-title,.timeitem h3,.section h2,.card h3,.footer-cta h2){color:#272B2E!important}
html[data-theme="light"] :is(.head p,.card p,.timeitem p,.publication-tab-panel,.arch-info,.footer-cta p){color:#61676D!important}
html[data-theme="light"] .header-tool{background:#FFFFFF!important;color:#272B2E!important;border-color:#D7DBDE!important}
html[data-theme="light"] .site-search{background:#E9EBED!important}
@media(max-width:700px){.brandbar{align-items:center}.header-actions{gap:5px}.header-tool{width:34px;height:34px}}


/* Compact academic timeline: site-wide monochrome and Soft Silver variables. */
.professional-timeline{border-left:2px solid var(--border);padding-left:22px;margin:24px 0 30px;max-width:950px}
.professional-timeline .timeline-role{background:transparent!important;box-shadow:none!important;border:0!important;border-bottom:1px solid var(--border)!important;margin:0;padding:25px 0 26px;position:relative}
.professional-timeline .timeline-role:first-child{padding-top:3px}
.professional-timeline .timeline-role:last-child{border-bottom:0!important}
.professional-timeline .timeline-role:before{content:"";position:absolute;left:-29px;top:32px;width:10px;height:10px;border-radius:50%;background:var(--bg);border:2px solid var(--ochre)}
.professional-timeline .timeline-role:first-child:before{top:10px}
.professional-timeline .timeline-role-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;column-gap:22px;row-gap:6px;margin-bottom:10px}
.professional-timeline .timeline-role-date,.professional-timeline .timeline-role-place{font:650 11px/1.6 system-ui,sans-serif;letter-spacing:.3px;color:var(--muted)!important}
.professional-timeline .timeline-role-title{font-family:Georgia,serif!important;font-size:clamp(21px,2.6vw,27px)!important;line-height:1.25!important;font-weight:400!important;color:var(--fg)!important;margin:0 0 5px!important}
.professional-timeline .timeline-role-company{font:650 14px/1.6 system-ui,sans-serif!important;color:var(--fg)!important;margin:0 0 12px!important}
.professional-timeline .timeline-role-summary{font:14px/1.75 Georgia,serif!important;color:var(--muted)!important;max-width:790px;margin:0 0 13px!important}
.professional-timeline .timeline-role-tags{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 9px}
.professional-timeline .timeline-role-tag{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;background:var(--raised);color:var(--muted);padding:5px 10px;font:11px/1.4 system-ui,sans-serif}
.professional-timeline .timeline-role-details{padding:0;margin:5px 0 0!important;border:0!important;background:transparent!important}
.professional-timeline .timeline-role-details summary{display:list-item;list-style:none;cursor:pointer;color:var(--fg)!important;font:650 12px/1.6 system-ui,sans-serif!important;padding:7px 0!important}
.professional-timeline .timeline-role-details summary::-webkit-details-marker{display:none}
.professional-timeline .timeline-role-details summary:after{content:"⌄";padding-left:8px;color:var(--muted)}
.professional-timeline .timeline-role-details[open] summary:after{content:"⌃"}
.professional-timeline .timeline-role-details-body{background:var(--card);border:1px solid var(--border);border-radius:7px;padding:12px 15px;margin:7px 0 0;max-width:760px}
.professional-timeline .timeline-role-details-body p{font:12px/1.8 system-ui,sans-serif!important;color:var(--muted)!important;margin:0!important;background:transparent!important;border:0!important;padding:0!important}
@media(max-width:650px){.professional-timeline{padding-left:16px;margin-top:18px}.professional-timeline .timeline-role{padding:21px 0 23px}.professional-timeline .timeline-role:before{left:-23px;width:9px;height:9px;top:28px}.professional-timeline .timeline-role:first-child:before{top:10px}.professional-timeline .timeline-role-meta{display:block}.professional-timeline .timeline-role-place{display:block;margin-top:3px}.professional-timeline .timeline-role-title{font-size:21px!important}}


/* Publications interface polish: one on-page navigation and consistent theme contrast. */
body .section-toc{background:transparent!important;border:0!important;border-bottom:1px solid var(--border)!important;border-radius:0!important;padding:10px 0 14px!important;margin:14px 0 25px!important;gap:9px!important}
body .section-toc span{color:var(--muted)!important;font-size:11px!important;letter-spacing:.7px}
body .section-toc a{background:var(--card)!important;color:var(--fg)!important;border:1px solid var(--border)!important;padding:7px 12px!important;border-radius:6px!important}
body .section-toc a:hover{border-color:var(--fg)!important;text-decoration:none}
body .pub .publication-status{display:inline-block!important;background:transparent!important;color:var(--muted)!important;border:0!important;border-radius:0!important;padding:0!important;margin:0 0 13px!important;font:700 11px/1.5 system-ui,sans-serif!important;letter-spacing:1px!important;text-transform:uppercase}
body .pub .links{gap:8px!important;margin:15px 0 18px!important}
body .pub .links a{display:inline-flex!important;align-items:center!important;min-height:37px!important;background:var(--raised)!important;color:var(--fg)!important;border:1px solid var(--border)!important;border-radius:6px!important;padding:8px 13px!important;text-decoration:none!important}
body .pub .links a:hover{border-color:var(--fg)!important;background:var(--card)!important}
body .publication-tabs button{background:var(--raised)!important;color:var(--fg)!important;border-color:var(--border)!important}
body .publication-tabs button[aria-selected="true"]{background:var(--ochre)!important;color:var(--btntext)!important;border-color:var(--ochre)!important}
body .publication-tab-panel{background:var(--raised)!important;color:var(--muted)!important;border-color:var(--border)!important}
body .pub .pub-intro strong{color:var(--fg)!important}
html[data-theme="light"] .pub .publication-status{color:#525B61!important}
html[data-theme="light"] .pub .links a{background:#F6F7F8!important;color:#272B2E!important;border-color:#D7DBDE!important}
html[data-theme="light"] .pub .links a:hover{background:#E9EBED!important;border-color:#787E84!important}
html[data-theme="light"] .publication-tabs button[aria-selected="true"]{color:#FFFFFF!important;background:#41474B!important}
html[data-theme="light"] .section-toc a{background:#FFFFFF!important;color:#272B2E!important}
@media(max-width:600px){body .section-toc{align-items:flex-start}body .section-toc span{width:100%}}


/* 2026 final readability pass: semantic tokens prevent dark pills in light mode. */
:root{--raised:#292929;--btntext:#111111}
html[data-theme="light"]{--raised:#F6F7F8;--btntext:#FFFFFF}
.tag,.publication-status{background:transparent!important;border:0!important;color:var(--muted)!important;box-shadow:none!important;padding:0!important;font:700 11px/1.5 system-ui,sans-serif!important;letter-spacing:.7px;text-transform:uppercase}
html[data-theme="light"] .tag,html[data-theme="light"] .publication-status{color:#525B61!important;background:transparent!important}
html[data-theme="light"] :is(.card h3,.card h4,.pub h3,.section h2,.section h3,.architecture-demo h4,.research-architecture h4,.head h1,.footer h2,.footer h3){color:#272B2E!important}
html[data-theme="light"] :is(.architecture-step,.arch-step,.publication-highlights summary,.research-details summary,.links a,.external-media-link){color:#272B2E!important;background:#F6F7F8!important;border-color:#D7DBDE!important}
html[data-theme="light"] .research-architecture,html[data-theme="light"] .architecture-demo{background:#FFFFFF!important;border-color:#D7DBDE!important}
html[data-theme="light"] :is(.architecture-description,.arch-info,.research-details p,.publication-highlights-body){color:#61676D!important;background:#F6F7F8!important}
html[data-theme="light"] :is(.architecture-step small,.diagram-hint){color:#61676D!important}
html[data-theme="light"] .architecture-step[aria-pressed="true"]{background:#E9EBED!important;color:#272B2E!important;border-color:#41474B!important}
/* Lightweight scholarly publications: no metric/chart tile grid or dashboard tabs. */
.pub{border-left:0!important;padding:24px!important}
.publication-highlights{margin-top:15px!important;border-top:1px solid var(--border)!important;padding-top:7px!important}
.publication-highlights summary{font:650 13px system-ui,sans-serif;color:var(--fg)!important;background:transparent!important;cursor:pointer;padding:10px 0!important}
.publication-highlights summary:hover{text-decoration:underline}
.publication-highlights-body{background:var(--raised)!important;border:1px solid var(--border);border-radius:7px;padding:15px 16px;color:var(--muted)!important}
.publication-highlights-body p{font-size:13px!important;line-height:1.8;margin:0 0 10px!important;color:var(--muted)!important;background:transparent!important;padding:0!important}
.publication-highlights-body p:last-child{margin-bottom:0!important}
.publication-highlights-body strong{color:var(--fg)!important}
html[data-theme="light"] .publication-highlights-body strong{color:#272B2E!important}
/* Genuine monochrome icons, theme-aware and keyboard accessible. */
.footer-social{display:flex;align-items:center;gap:9px}
.footer-social a.social-icon-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px;height:38px;padding:0!important;flex:none;color:var(--fg)!important;background:var(--card)!important;border:1px solid var(--border)!important;border-radius:7px;text-decoration:none!important}
.footer-social a.social-icon-link svg{width:19px;height:19px;display:block;flex:none;stroke:currentColor}
.footer-social a.social-icon-link:hover{background:var(--raised)!important;border-color:var(--ochre)!important}
.footer-social a.social-icon-link:focus-visible{outline:2px solid var(--ochre);outline-offset:3px}
@media(max-width:600px){.pub{padding:17px!important}.publication-highlights-body{padding:12px!important}}
