/* The same Midnight Scientific Luxury tokens as the shared public site. */
@font-face{font-family:'EMS Manrope';src:url('/fonts/Manrope-variable.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:'EMS Inter';src:url('/fonts/InterVariable-Latin-experiment.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F}
:root{
  color-scheme:dark;
  --midnight:#091522;--slate:#14283a;--porcelain:#f5f7f6;
  --ice:#68b6c6;--champagne:#d6b178;
  --text:#f4f7f8;--muted:#b9c8d1;--field-border:#6c8898;
  --line:#365366;--danger:#ffb4ab;
  --font-heading:'EMS Manrope',Manrope,'Noto Sans',system-ui,sans-serif;
  --font-body:'EMS Inter',Inter,'Noto Sans','Noto Sans Arabic','Noto Sans Devanagari',system-ui,sans-serif;
}
*{box-sizing:border-box}
html{min-inline-size:320px}
body{margin:0;background:var(--midnight);color:var(--text);font:400 1rem/1.65 var(--font-body);-webkit-font-smoothing:antialiased}
body:lang(zh){font-family:'EMS Inter','PingFang SC','Microsoft YaHei','Noto Sans CJK SC',system-ui,sans-serif}
body:lang(hi){font-family:'EMS Inter','Noto Sans Devanagari','Nirmala UI',system-ui,sans-serif}
body:lang(ar){font-family:'EMS Inter','Noto Sans Arabic',Tahoma,system-ui,sans-serif}
main{max-inline-size:52rem;margin-inline:auto;padding:clamp(1.25rem,5vw,3.5rem) clamp(1rem,4vw,2rem) 3rem}
.header-tools{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-block-end:2rem}
.home-link{display:inline-flex;align-items:center;gap:.6rem;min-block-size:44px;font-weight:650;text-underline-offset:.25em}
[dir=rtl] .home-arrow{transform:rotate(180deg)}
.language-control{min-inline-size:11rem;max-inline-size:100%}
.language-control label{margin:0 0 .3rem;font-size:.85rem;color:var(--muted)}
.language-control select{min-block-size:44px;padding-block:.55rem}
small{color:var(--champagne);font-size:.76rem;font-weight:650;letter-spacing:.1em}
h1,h2,h3{font-family:var(--font-heading);font-weight:700;letter-spacing:-.025em;text-wrap:balance;color:var(--porcelain)}
:lang(zh) :is(h1,h2,h3){font-family:'EMS Manrope','PingFang SC','Microsoft YaHei','Noto Sans CJK SC',system-ui,sans-serif}
:lang(hi) :is(h1,h2,h3){font-family:'EMS Manrope','Noto Sans Devanagari','Nirmala UI',system-ui,sans-serif}
:lang(ar) :is(h1,h2,h3){font-family:'EMS Manrope','Noto Sans Arabic',Tahoma,system-ui,sans-serif;letter-spacing:0}
:lang(ar) small{letter-spacing:0}
h1{font-size:clamp(2.15rem,5.8vw,3.5rem);line-height:1.12;margin-block:1rem 1.25rem;max-inline-size:20ch}
h2{font-size:clamp(1.4rem,3.5vw,1.85rem);line-height:1.3;margin-block:0 1rem}
p{margin-block:0 1.25rem;max-inline-size:72ch;color:var(--muted)}
header>p{font-size:1.125rem}
a{color:var(--ice);text-underline-offset:.2em;text-decoration-thickness:.08em;overflow-wrap:anywhere}
a:hover{color:var(--champagne)}
nav{display:flex;gap:.65rem;flex-wrap:wrap;margin-block:2rem 1.25rem}
section{background:var(--slate);border:1px solid var(--line);padding:clamp(1.25rem,4vw,2.25rem);border-radius:16px}
label{display:block;font-weight:550;margin-block:1.25rem .4rem}
input:not([type=checkbox]),textarea,select{
  inline-size:100%;min-block-size:48px;max-inline-size:100%;
  background:var(--midnight);color:var(--text);border:1px solid var(--field-border);
  border-radius:10px;padding:.75rem;font:inherit;text-align:start;
}
textarea{resize:vertical;min-block-size:9rem}
::placeholder{color:var(--muted);opacity:1}
button,a.button{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  min-block-size:48px;max-inline-size:100%;padding:.7rem 1.1rem;
  border:1px solid var(--ice);border-radius:10px;background:var(--ice);color:var(--midnight);
  font:650 1rem/1.35 var(--font-body);text-align:center;text-decoration:none;cursor:pointer;
}
nav button{background:transparent;color:var(--ice)}
nav button[aria-pressed=true]{background:var(--ice);color:var(--midnight)}
button:disabled{background:var(--slate);color:var(--muted);border-color:var(--field-border);cursor:not-allowed}
:where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--champagne);outline-offset:4px}
input[type=checkbox]{inline-size:1.25rem;block-size:1.25rem;flex:0 0 1.25rem;margin:.3rem 0 0;accent-color:var(--ice)}
.check{display:flex;align-items:flex-start;gap:.75rem;min-block-size:44px;font-size:.94rem;font-weight:400;cursor:pointer}
.consent{padding:1rem;border:1px solid var(--line);border-radius:10px;background:var(--midnight);color:var(--muted);margin-block:1.5rem}
.notice,footer{font-size:.875rem;color:var(--muted)}
#privacyLink{display:inline-block;margin-block-end:1.5rem}
#send{display:flex;inline-size:100%;margin-block-start:.25rem}
#captcha{margin-block:1.25rem;max-inline-size:100%}
#result,.feedback{white-space:pre-wrap;overflow-wrap:anywhere}
#result:not(:empty){margin-block-start:1.5rem;padding:1rem;border:1px solid var(--ice);border-radius:10px;background:var(--midnight);color:var(--text)}
#result:empty{display:none}
footer{border-block-start:1px solid var(--line);margin-block-start:2rem;padding-block-start:1.25rem;max-inline-size:72ch}
/* Administration uses the same visual system without changing its actions. */
#stats{padding:1rem;border:1px solid var(--line);border-radius:10px;background:var(--slate)}
#search{margin-block-end:1.5rem}
.engagement-item{padding:1.25rem;border:1px solid var(--line);border-radius:12px;background:var(--midnight)}
.engagement-item+.engagement-item{margin-block-start:1.5rem}
.engagement-item small{display:block;margin-block-end:.75rem;overflow-wrap:anywhere}
.engagement-item p{overflow-wrap:anywhere}
.engagement-item textarea{min-block-size:6rem}
details{margin-block:1.25rem;padding-block:.5rem;border-block:1px solid var(--line)}
summary{min-block-size:44px;padding-block:.55rem;color:var(--ice);cursor:pointer}
details[open]>summary{margin-block-end:.75rem}
.actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-block:1.25rem .75rem}
.actions button{flex:1 1 10rem}
.actions .delete{background:transparent;color:var(--danger);border-color:var(--danger)}
.feedback{display:block;color:var(--muted)}
#more{margin-block-start:1.5rem}
[hidden]{display:none!important}
button:not(:disabled):hover,a.button:hover{background:var(--porcelain);border-color:var(--porcelain);color:var(--midnight)}
nav button:not([aria-pressed=true]):hover,.actions .delete:hover{background:var(--slate);color:var(--porcelain)}
@media(max-width:480px){
  .header-tools{align-items:stretch}
  .language-control{inline-size:100%}
  nav{display:grid;grid-template-columns:minmax(0,1fr)}
  nav button,nav a.button{inline-size:100%}
  .engagement-item{padding:1rem}
}
@media(max-width:380px){
  main{padding-inline:.5rem}
  section{padding-inline:1rem}
  #captcha{margin-inline:-1rem;max-inline-size:calc(100% + 2rem)}
}
@media(prefers-reduced-motion:no-preference){
  a,button,input,textarea,select{transition:background-color .18s ease,color .18s ease,border-color .18s ease}
}
@media(forced-colors:active){
  button,a.button,input,textarea,select,section,.engagement-item{border-color:ButtonText}
  :where(a,button,input,textarea,select,summary):focus-visible{outline-color:Highlight}
}

.footer-language-links{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-block:1.5rem}

/* Private aggregate report; keep public form layout unchanged. */
.admin-report{margin-block:1.5rem}
.report-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.report-form label{margin:0}
.report-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.65rem}
.report-actions button:not(:first-child){background:transparent;color:var(--ice)}
#report-feedback{margin-block:1rem}
.report-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-block:1rem 1.5rem}
.report-metrics>div{padding:1rem;background:var(--midnight);border:1px solid var(--line);border-radius:10px;min-inline-size:0}
.report-metrics dt{font-weight:650;color:var(--porcelain);line-height:1.4}
.report-metrics dd{margin:0;font:700 1.8rem/1.5 var(--font-heading);color:var(--ice)}
.report-metrics p{margin:0;font-size:.82rem;line-height:1.6}
.report-metrics small{display:block;margin-block-start:.5rem;letter-spacing:0;font-size:.78rem}
.report-table{overflow:auto;max-inline-size:100%;margin-block:1.25rem;overscroll-behavior:contain}
.report-table table{border-collapse:collapse;inline-size:100%;font-size:.85rem}
.report-table caption{text-align:start;color:var(--porcelain);font-weight:650;margin-block-end:.5rem}
.report-table th,.report-table td{text-align:start;padding:.6rem;border-block-end:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
.report-table thead th{color:var(--ice);font-weight:650}
.report-table tbody th{font-weight:500}
.admin-report li{margin-block:.7rem;color:var(--muted);font-size:.88rem}
@media(max-width:560px){.report-form,.report-metrics{grid-template-columns:minmax(0,1fr)}.report-actions{flex-direction:column}}


/* The public dialogue form follows the site's quieter editorial rhythm. */
main:has(#interactionNav) { max-inline-size: 54rem; padding-block-start: clamp(1.5rem, 4vw, 3.5rem); }
main:has(#interactionNav) header h1 { font-weight: 500; letter-spacing: -.04em; margin-block: 1.5rem 1rem; }
main:has(#interactionNav) header > p { max-inline-size: 48ch; font-size: clamp(1.05rem, 2vw, 1.25rem); }
#interactionNav { gap: .5rem; padding-block-end: 1rem; border-block-end: 1px solid var(--line); }
#interactionNav button { font-size: .9rem; border-color: transparent; border-radius: 8px; }
#interactionNav button[aria-pressed=true] { background: #203e50; color: var(--text); border-color: #658496; }
#engagement-panel { padding: clamp(1rem, 3vw, 2rem) 0; border: 0; border-radius: 0; background: transparent; }
#engagement-panel h2 { font-weight: 500; line-height: 1.3; }
#engagement-panel #intro { color: var(--muted); font-size: .95rem; }
#engagement-panel label:not(.check) { margin-block-start: 1.5rem; font-size: .9rem; }
#engagement-panel :is(input:not([type=checkbox]),textarea,select) { background: var(--slate); box-shadow: none; }
#engagement-panel .consent { border-inline: 0; border-radius: 0; padding: 1rem 0; background: transparent; }
#engagement-panel .notice { font-size: .8rem; line-height: 1.7; }
#engagement-panel #send { margin-block-start: 1rem; }
:lang(ar) main:has(#interactionNav) header h1 { letter-spacing: 0; }
@media(max-width:560px) { #interactionNav { display: grid; grid-template-columns: minmax(0,1fr); } #interactionNav button { justify-content: flex-start; text-align: start; } }


/* The private evaluation surface uses space for comparable parts, not the public form. */
.admin-main{max-inline-size:88rem}
.admin-main>nav{padding-block-end:1rem;border-block-end:1px solid var(--line)}
.admin-main .admin-report{background:transparent;padding:clamp(1rem,2.6vw,2rem);margin-block:1.5rem 2.5rem}
.admin-main .report-disclosure{border:0;margin-block:.75rem 0;padding:0}
.admin-main .report-form{grid-template-columns:repeat(2,minmax(0,16rem));align-items:end}
.admin-main .report-actions{flex-wrap:wrap}
.report-usage{padding-block:1rem 1.5rem;border-block-end:1px solid var(--line);margin-block-end:2rem}
.report-usage h3{font-size:clamp(1.3rem,2.6vw,1.8rem);margin-block:.5rem 1rem}
.report-usage>p{font-size:.875rem}
.report-coverage{color:var(--champagne);font-weight:600}
.report-missing{border-inline-start:3px solid var(--champagne);padding:1rem;background:var(--midnight)}
.admin-main .report-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-main .report-table{scrollbar-gutter:stable}
.admin-main .report-table:focus-visible{outline:3px solid var(--champagne);outline-offset:3px}
.admin-main .report-table td:not(:first-child){font-variant-numeric:tabular-nums}
.report-usage .report-table table{min-inline-size:40rem}
.report-usage .report-table tbody th{min-inline-size:11rem}
@media(max-width:800px){.admin-main .report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.admin-main .report-form,.admin-main .report-metrics{grid-template-columns:minmax(0,1fr)}.admin-main .admin-report{padding-inline:.85rem}.admin-main .report-actions{align-items:stretch}}

/* Compact private overview: expose the first comparison figures earlier. */
.admin-main{padding-block-start:clamp(1rem,2.5vw,2rem)}
.admin-main>h1{font-size:clamp(1.8rem,3.6vw,2.8rem);margin-block:.6rem .65rem}
.admin-main>p{max-inline-size:95ch;font-size:.94rem;margin-block-end:.75rem}
.admin-main>nav{margin-block:1rem;gap:.5rem}
.admin-main>nav :is(button,a.button){min-block-size:44px;padding:.55rem .85rem;font-size:.88rem}
.admin-main .admin-report>p{max-inline-size:110ch;font-size:.87rem;margin-block-end:.6rem}
.admin-main .report-disclosure>summary{font-size:.9rem;min-block-size:40px;padding-block:.35rem}
.admin-main #report-results>p{font-size:.8rem;margin-block:.75rem 0}
.report-usage{padding-block:.5rem 1rem}
.report-usage>p{max-inline-size:110ch;line-height:1.5;margin-block:.45rem}
.report-usage h3{margin-block:.25rem .6rem}
.admin-main .report-metrics{margin-block:.75rem 1.1rem}
.admin-main .report-metrics>div{padding:.85rem}
.cloud-archive{margin-block:1.5rem}
.cloud-archive h3{font-size:1.15rem;margin-block:.5rem}
.cloud-archive>p,.cloud-archive #cloud-archive-status p{font-size:.88rem}
#cloud-archive-feedback{margin-block:1rem 0;font-size:.82rem}
