 /* Royal Luxe override — Thmanyah + unified noir-champagne system (loads after new-ui.css) */
 @font-face{font-family:'Thmanyah Serif Display';src:url('/static/fonts/thmanyah-serif-display-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
 @font-face{font-family:'Thmanyah Serif Display';src:url('/static/fonts/thmanyah-serif-display-Black.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}
 @font-face{font-family:'Thmanyah Serif Text';src:url('/static/fonts/thmanyah-serif-text-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
 @font-face{font-family:'Thmanyah Serif Text';src:url('/static/fonts/thmanyah-serif-text-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
 @font-face{font-family:'Thmanyah Serif Text';src:url('/static/fonts/thmanyah-serif-text-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
 @font-face{font-family:'Thmanyah Sans';src:url('/static/fonts/thmanyah-sans-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
 @font-face{font-family:'Thmanyah Sans';src:url('/static/fonts/thmanyah-sans-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
 :root{
 --f-display:'Thmanyah Serif Display',serif;
 --f-body:'Thmanyah Serif Text',serif;
 --f-ui:'Thmanyah Sans',sans-serif;
 --noir:#0A0C0F;--graphite:#12161A;--graphite-2:#1A2129;--line:rgba(201,162,39,.28);
 --champagne:#C9A227;--champagne-soft:#EAD9A0;--champagne-deep:#8A6D14;
 --ivory:#F2ECDB;--stone:#B9B39E;--stone-dim:#8F8A76;
 --emerald:#16A34A;--amber:#D97706;--ruby:#DC2626;
 }
 body{font-family:var(--f-body);color:var(--ivory);background-color:var(--noir);
 background-image:radial-gradient(1200px 520px at 50% -8%,rgba(201,162,39,.14),transparent 62%),radial-gradient(950px 700px at 90% 112%,rgba(22,60,44,.5),transparent 62%),radial-gradient(820px 600px at 6% 104%,rgba(201,162,39,.07),transparent 60%),repeating-linear-gradient(0deg,rgba(255,255,255,.014) 0 1px,transparent 1px 5px),repeating-linear-gradient(90deg,rgba(255,255,255,.014) 0 1px,transparent 1px 5px);
 background-attachment:fixed}
 body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;
 box-shadow:inset 0 0 220px rgba(0,0,0,.62);}
 ::selection{background:rgba(201,162,39,.45);color:#141005}
 button,.btn,.nav-tab,.chip,.fld{font-family:var(--f-ui)}
 h1,h2,.gate-title,.sheet-head h2,.brand h1,.engraved{font-family:var(--f-display)}
 :focus-visible{outline:2px solid var(--champagne);outline-offset:3px;border-radius:8px}
 ::-webkit-scrollbar{width:11px;height:11px}
 ::-webkit-scrollbar-track{background:#0A0C0F}
 ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#8a6d14,#c9a227);border-radius:99px;border:2px solid #0A0C0F}
 #gate{background:radial-gradient(1000px 520px at 50% 14%,rgba(201,162,39,.16),transparent 62%),radial-gradient(760px 760px at 50% 115%,rgba(22,60,44,.4),transparent 60%),#07090B;}
 .gate-frame.gate-official{max-width:660px;background:rgba(12,15,18,.86);backdrop-filter:blur(10px);border:1px solid rgba(201,162,39,.6);border-radius:14px;padding:40px 46px 30px;box-shadow:0 34px 90px rgba(0,0,0,.65),0 6px 22px rgba(0,0,0,.5);animation:gateIn .9s cubic-bezier(.16,1,.3,1) both}
 @keyframes gateIn{from{opacity:0;transform:translateY(18px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
 .gate-crest{width:158px;height:158px;box-shadow:0 0 70px rgba(201,162,39,.35),0 10px 30px rgba(0,0,0,.6)}
 .gate-kicker{font-family:var(--f-ui);color:var(--champagne-soft);letter-spacing:.5px;font-size:15px}
 .gate-title{font-weight:900;font-size:clamp(32px,5.4vw,50px);line-height:1.8;color:var(--champagne);text-wrap:balance}
 .gate-sub{font-size:18px;color:var(--stone)}
 .gate-docno{font-family:var(--f-ui)}
 #gate-enter{font-family:var(--f-ui);min-height:58px;padding:13px 72px;border-radius:12px;font-size:20px}
 /* ---- Header royal ---- */
 .topbar{background:linear-gradient(180deg,#161C20,#0A0C0F);border-bottom:1px solid rgba(201,162,39,.5);box-shadow:0 10px 30px rgba(0,0,0,.5);padding:14px 30px}
 .brand h1{font-weight:900;font-size:23px;color:var(--ivory);letter-spacing:.2px}
 .brand p{font-family:var(--f-ui);font-size:13px;color:var(--stone)}
 .crest{box-shadow:0 0 26px rgba(201,162,39,.4),0 4px 12px rgba(0,0,0,.5)}
 .court-seal{font-family:var(--f-ui);color:var(--champagne-soft);background:rgba(201,162,39,.1)}
 /* ---- Floating plates: one luxe-dark world ---- */
 .plate{color:var(--ivory);background:linear-gradient(180deg,#161C22,#0E1216);border:1px solid rgba(201,162,39,.32);outline:none;border-radius:15px;box-shadow:0 24px 60px rgba(0,0,0,.55),0 6px 18px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.07);transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .3s}
 .plate:hover{transform:translateY(-3px);border-color:rgba(201,162,39,.6);box-shadow:0 34px 80px rgba(0,0,0,.65),0 10px 26px rgba(0,0,0,.5),0 0 0 1px rgba(201,162,39,.12),inset 0 1px 0 rgba(255,255,255,.09)}
 .plate::before{inset:8px;border:1px solid rgba(201,162,39,.14);border-radius:10px}
 .engraved{color:var(--ivory);font-weight:900;text-shadow:none}
 .engraved .latin{font-family:var(--f-ui);color:var(--champagne-soft);border-color:rgba(201,162,39,.5);background:rgba(201,162,39,.1)}
 .sheet-head{background:linear-gradient(180deg,#182028,#0C0F13);border:1px solid rgba(201,162,39,.4);border-radius:15px;box-shadow:0 24px 60px rgba(0,0,0,.55),0 6px 18px rgba(0,0,0,.45)}
 .sheet-head h2{font-weight:900;color:var(--champagne)}
 .sheet-head p{color:var(--stone);font-size:15px}
 .courtnav{background:linear-gradient(180deg,#151B21,#0C0F13);box-shadow:0 24px 60px rgba(0,0,0,.55),0 6px 18px rgba(0,0,0,.45)}
 .nav-tab{min-height:56px;font-size:16px}
 /* ---- Stats dark ---- */
 .stats{padding:0;overflow:hidden}
 .stat b{font-family:'JetBrains Mono',monospace;color:var(--ivory)}
 .stat.gold b{color:var(--champagne)}
 .stat span{font-family:var(--f-ui);color:var(--stone);font-size:13px}
 .stat+.stat::before{background:rgba(201,162,39,.25)}
 /* ---- Result cards floating dark + 4 states ---- */
 .result-card{background:linear-gradient(180deg,#171E25,#10151A);border:1px solid rgba(201,162,39,.25);border-radius:13px;color:var(--ivory);box-shadow:0 16px 40px rgba(0,0,0,.5),0 4px 12px rgba(0,0,0,.4);transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .3s}
 .result-card:hover{transform:translateY(-3px);border-color:rgba(201,162,39,.55);box-shadow:0 26px 60px rgba(0,0,0,.6),0 8px 20px rgba(0,0,0,.45)}
 .result-card h4{font-family:var(--f-display);font-weight:700}
 .result-subtitle,.metric-top,.role-tags-title,.result-rank-line{color:var(--stone)}
 .result-rank-line .rank-next{color:var(--champagne-soft)}
 .result-card.card-royal-ready{background:linear-gradient(180deg,#0F2418,#0C1A12);border:1px solid rgba(22,163,74,.6);border-top:3px solid #16A34A}
 .result-card.card-royal-watch{background:linear-gradient(180deg,#241A0C,#1A1208);border:1px solid rgba(217,119,6,.6);border-top:3px solid #D97706}
 .result-card.card-royal-risk{background:linear-gradient(180deg,#260F0D,#1A0B0A);border:1px solid rgba(220,38,38,.6);border-top:3px solid #DC2626}
 .completion-chip{font-family:var(--f-ui)}
 .completion-chip.ready{color:#4ADE80;border-color:#16A34A;background:rgba(22,163,74,.14)}
 .completion-chip.watch{color:#FBBF24;border-color:#D97706;background:rgba(217,119,6,.14)}
 .completion-chip.risk{color:#FCA5A5;border-color:#DC2626;background:rgba(220,38,38,.14)}
 .completion-chip.plain{color:var(--stone);border-color:#64748b;background:rgba(100,116,139,.16)}
 .completion-chip.full{color:#4ADE80;border-color:#16A34A;background:rgba(22,163,74,.14)}
 .completion-chip.warn{color:#FCA5A5;border-color:#DC2626;background:rgba(220,38,38,.14)}
 .meta-chip{font-family:'JetBrains Mono',monospace;color:var(--stone);background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
 .role-tag{font-family:var(--f-ui)}
 .role-tag.taken{color:#fff;background:#16A34A;border-color:#15803d}
 .role-tag.required{color:#fff;background:#DC2626;border-color:#991b1b}
 .role-tag.optional{color:#FBBF24;background:rgba(217,119,6,.16);border-color:#D97706}
 .role-legend{color:var(--stone);font-family:var(--f-ui)}
 .metric-box{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}
 .metric-number,.metric-percent{font-family:'JetBrains Mono',monospace;color:var(--ivory)}
 .missing-box{color:#FCA5A5;background:rgba(220,38,38,.1);border-color:rgba(220,38,38,.5)}
 .note-chip,.role-tags-group,.message-link{color:var(--stone);background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
 .message-link{font-family:'JetBrains Mono',monospace;color:var(--champagne-soft);border-color:rgba(201,162,39,.5)}
 .message-link:hover{background:rgba(201,162,39,.16)}
 .employment-details summary{color:var(--champagne-soft);font-family:var(--f-ui)}
 .employment-recruit-row{border-top-color:rgba(255,255,255,.12)}
 .recruit-date{font-family:'JetBrains Mono',monospace;color:var(--stone-dim)}
 .empty-state{color:var(--stone)}
 .empty-state-badge{color:var(--stone);border-color:rgba(255,255,255,.25)}
 .chip{font-family:var(--f-ui);color:var(--champagne-soft);background:rgba(201,162,39,.12);border-color:rgba(201,162,39,.5)}
 .results-count{font-family:'JetBrains Mono',monospace;color:var(--stone);background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
 .results-section-header h3{font-family:var(--f-display);color:var(--ivory)}
 /* ---- Fields + buttons ---- */
 .fld{color:var(--stone)}
 textarea,input[type=text],input:not([type]),input[type=date]{background:#0C1014;color:var(--ivory);border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 2px 6px rgba(0,0,0,.5)}
 textarea:focus,input:focus{outline:2px solid var(--champagne);outline-offset:1px}
 textarea[dir=ltr],input[dir=ltr]{font-family:'JetBrains Mono',monospace}
 .ledger-lines{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14)}
 .ledger-lines dt{color:var(--stone)}
 .ledger-lines dd{color:var(--ivory)}
 .btn{min-height:48px;border-radius:10px}
 .btn-royal{background:linear-gradient(180deg,#E3C964,#B08D1F);color:#241A05;border-color:#6d5610}
 .btn-plate{background:rgba(201,162,39,.12);color:var(--champagne-soft);border-color:rgba(201,162,39,.5)}
 .btn-plate:hover:not(:disabled){background:rgba(201,162,39,.22)}
 .btn-ghostdark{color:var(--stone);border-color:rgba(255,255,255,.25)}
 .status-pill{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.16);color:var(--ivory)}
 .status-pill.connected{background:rgba(22,163,74,.14);border-color:rgba(22,163,74,.6)}
 .status-pill.connecting{background:rgba(217,119,6,.14);border-color:rgba(217,119,6,.6)}
 .audit textarea{font-family:var(--f-body);background:#0C1014;color:var(--ivory)}
 @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
 /* ===== Bolder pass (impeccable 4.5.0): entry wow, surfaces from the subject world ===== */
 body{background-image:radial-gradient(1300px 560px at 50% -10%,rgba(201,162,39,.17),transparent 62%),radial-gradient(1000px 720px at 88% 112%,rgba(22,60,44,.55),transparent 62%),radial-gradient(860px 620px at 6% 104%,rgba(201,162,39,.08),transparent 60%)}
 #gate{background:radial-gradient(1050px 560px at 50% 12%,rgba(201,162,39,.2),transparent 62%),radial-gradient(800px 800px at 50% 116%,rgba(22,60,44,.45),transparent 60%),#07090B}
 .gate-kicker{display:none}
 .gate-crest{width:170px;height:170px;box-shadow:0 0 90px rgba(201,162,39,.45),0 14px 34px rgba(0,0,0,.65)}
 .gate-frame.gate-official{border-top:2px solid rgba(234,217,160,.7);box-shadow:0 40px 100px rgba(0,0,0,.7),0 8px 26px rgba(0,0,0,.55)}
 .gate-stamp{font-size:14px;padding:3px 18px;box-shadow:0 4px 14px rgba(0,0,0,.5)}
.plate{background:linear-gradient(180deg,#171E25,#0D1116)}
.sheet-head{background:linear-gradient(180deg,#1A232C,#0B0E12)}

/* =====================================================================
   LUXE 2.0 — luminous metal, woven ground, monumental type
   (impeccable: bolder — amplify the noir-champagne world the surface
   already owns; no new colour, no new font, no new primitive)
   ===================================================================== */

/* ---- Ground: woven fabric grain + satin sheen (the subject's own world) ---- */
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.85;
 background-image:
  radial-gradient(circle at 1px 1px, rgba(255,255,255,.05) 1px, transparent 1.6px),
  radial-gradient(circle at 1px 1px, rgba(201,162,39,.055) 1px, transparent 1.6px),
  linear-gradient(118deg, transparent 38%, rgba(234,217,160,.055) 50%, transparent 62%);
 background-size:5px 5px, 11px 11px, 100% 100%;
 background-position:0 0, 4px 5px, 0 0;
 background-repeat:repeat, repeat, no-repeat}
body{background-color:#06080A;
 background-image:radial-gradient(1250px 580px at 50% -12%, rgba(201,162,39,.22), transparent 60%),
  radial-gradient(1020px 760px at 92% 114%, rgba(18,52,38,.58), transparent 62%),
  radial-gradient(840px 640px at 4% 104%, rgba(201,162,39,.10), transparent 60%)}

/* ---- Browser surfaces belong to the palette ---- */
::placeholder{color:#8B8570;opacity:1}
textarea,input{caret-color:var(--champagne)}
.stat b,.metric-number,.metric-percent,.ledger-lines dd,.brand p span{font-variant-numeric:tabular-nums}
.message-link{text-underline-offset:3px}

/* ---- Header: royal letterhead ---- */
.topbar{padding:15px 30px;background:linear-gradient(180deg,#181F26,#0A0C0F 84%);
 border-bottom:1px solid rgba(201,162,39,.52);
 box-shadow:0 14px 38px rgba(0,0,0,.62)}
.topbar::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;
 background:linear-gradient(90deg,transparent,rgba(234,217,160,.9),transparent)}
.topbar::after{content:'';position:absolute;left:22px;right:22px;bottom:-6px;height:1px;
 background:linear-gradient(90deg,transparent,rgba(201,162,39,.45),transparent)}
.brand h1{font-weight:900;font-size:25px;color:#F6F1E2;text-shadow:0 1px 0 rgba(0,0,0,.65)}
.crest{width:58px;height:58px;padding:3px;
 background:conic-gradient(from 210deg,#8a6d14,#f2e6b6,#c9a227,#e6d59a,#8a6d14);
 box-shadow:0 0 30px rgba(201,162,39,.5),0 6px 16px rgba(0,0,0,.6)}
.court-seal{background:rgba(201,162,39,.12);border-color:rgba(201,162,39,.6);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}

/* ---- Plates: polished metal plaques, edge declared once as a bevel ---- */
.plate{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,0) 34%),
  linear-gradient(180deg,#1A232B,#0C1014);
 border:1px solid rgba(201,162,39,.4);border-radius:16px;
 box-shadow:0 30px 74px rgba(0,0,0,.62),0 10px 26px rgba(0,0,0,.45),
  inset 0 1px 0 rgba(255,255,255,.12),inset 0 -1px 0 rgba(0,0,0,.55)}
.plate:hover{transform:translateY(-4px);border-color:rgba(201,162,39,.7);
 box-shadow:0 40px 96px rgba(0,0,0,.7),0 14px 34px rgba(0,0,0,.5),
  0 0 0 1px rgba(201,162,39,.16),inset 0 1px 0 rgba(255,255,255,.15)}
.plate::before{inset:7px;border:1px solid rgba(201,162,39,.18);border-radius:11px}
.engraved{font-weight:900}
.engraved .latin{letter-spacing:4px}

/* ---- Hero sheet: monumental ---- */
.sheet-head{padding:26px 30px;border-radius:16px;background:linear-gradient(180deg,#1C252E,#0A0D11)}
.sheet-head::before{left:6%;right:6%;height:2px;
 background:linear-gradient(90deg,transparent,rgba(234,217,160,.85),transparent)}
.sheet-head h2{font-size:30px;font-weight:900;letter-spacing:.2px}
.sheet-head h2,.gate-title,.engraved,.result-card h4{text-wrap:balance}

/* ---- Stats: monumental numerals ---- */
.stats{background:linear-gradient(180deg,#171F26,#0C1014)}
.stat{padding:20px 8px 16px}
.stat b{font-family:var(--f-display);font-weight:900;font-size:clamp(32px,5.6vw,44px);
 line-height:1;color:#F6F1E2}
.stat.gold b{color:var(--champagne);text-shadow:0 0 28px rgba(201,162,39,.4)}
.stat+.stat::before{top:14px;bottom:14px;
 background:linear-gradient(180deg,transparent,rgba(201,162,39,.4),transparent)}

/* ---- Nav: champagne plaque instead of a side stripe ---- */
.nav-tab{border-radius:11px;min-height:58px;color:#CFC9B4}
.nav-tab svg{filter:drop-shadow(0 0 6px rgba(201,162,39,.45))}
.nav-tab.active{background:linear-gradient(180deg,rgba(201,162,39,.24),rgba(201,162,39,.07));
 border-color:rgba(201,162,39,.65);color:#FBF6E6;font-weight:700;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 8px 22px rgba(0,0,0,.45)}

/* ---- Result cards: metal, one state colour each ---- */
.result-card{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0) 40%),
  linear-gradient(180deg,#171E25,#0F1419);border-radius:14px;border-color:rgba(201,162,39,.28)}
.result-card h4{font-weight:900}

/* ---- Gate: official double frame + luminous crest ---- */
#gate{background:radial-gradient(1100px 580px at 50% 8%, rgba(201,162,39,.22), transparent 60%),
  radial-gradient(900px 900px at 50% 118%, rgba(18,52,38,.5), transparent 62%), #06080A}
.gate-frame.gate-official{position:relative;max-width:680px;border-radius:18px;padding:44px 50px 34px;
 background:linear-gradient(180deg,rgba(18,22,27,.92),rgba(9,11,14,.95));
 border:1px solid rgba(201,162,39,.65);
 box-shadow:0 44px 110px rgba(0,0,0,.72),0 10px 30px rgba(0,0,0,.55)}
.gate-frame.gate-official::after{content:'';position:absolute;inset:-9px;border-radius:23px;
 border:1px solid rgba(201,162,39,.3);pointer-events:none}
.gate-crest{position:relative;width:176px;height:176px;padding:4px;overflow:hidden;
 background:conic-gradient(from 210deg,#8a6d14,#f6ebc2,#c9a227,#f6ebc2,#8a6d14);
 box-shadow:0 0 100px rgba(201,162,39,.5),0 16px 40px rgba(0,0,0,.7)}
.gate-title{letter-spacing:-.01em}
#gate-enter{box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 12px 34px rgba(0,0,0,.55),
 0 0 42px rgba(201,162,39,.32)}

/* ---- Motion: one authored moment per screen ---- */
body.entered .plate,body.entered .courtnav,
body.entered .main .plate:nth-child(2),body.entered .main .plate:nth-child(3){animation:none}
body.entered .main .sheet-head{animation:heroIn .85s cubic-bezier(.16,1,.3,1) both}
@keyframes heroIn{from{opacity:0;transform:translateY(12px);
 clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}
body.entered .main .sheet-head::before{transform-origin:center;
 animation:ruleDraw 1.1s cubic-bezier(.16,1,.3,1) .7s both}
@keyframes ruleDraw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){
 body.entered .main .sheet-head,body.entered .main .sheet-head::before,
 .gate-frame.gate-official{animation:none!important}}

/* =====================================================================
   LUXE 2.1 — polished silver plaques on the woven noir ground.
   The brief's own words: "luxury fabric as the ground, cards like shiny,
   solid pieces of silver". Dark letterhead + banner stay dark for
   hierarchy; every content surface is metal, declared once as a bevel.
   ===================================================================== */

/* ---- Plates: brushed silver, lit top edge, grounded shadow ---- */
.plate{color:#20242A;border-radius:16px;
 background:linear-gradient(155deg,#FDFCF8 0%,#E3E5E9 24%,#F6F6F4 44%,#C6C9D0 62%,#EDEEF1 80%,#D0D3D9 100%);
 border:1px solid rgba(255,255,255,.9);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -2px 4px rgba(48,54,64,.22),
  0 26px 60px rgba(0,0,0,.58),0 8px 20px rgba(0,0,0,.42)}
.plate:hover{transform:translateY(-4px);border-color:#fff;
 box-shadow:inset 0 1px 0 #fff,inset 0 -2px 4px rgba(48,54,64,.22),
  0 38px 90px rgba(0,0,0,.66),0 12px 30px rgba(0,0,0,.5),0 0 0 1px rgba(201,162,39,.4)}
.plate::before{inset:7px;border:1px solid rgba(120,124,132,.4);border-radius:11px}
.engraved{color:#2A2F36;font-weight:900;text-shadow:0 1px 0 rgba(255,255,255,.85)}
.engraved .latin{color:#8A6D14;border-color:rgba(138,109,20,.55);background:rgba(255,255,255,.55)}

/* ---- Banner stays dark: the royal letterhead over the silver tray ---- */
.sheet-head{background:linear-gradient(180deg,#1B2A22,#0A0E0C);border:1px solid rgba(201,162,39,.45);
 box-shadow:0 26px 60px rgba(0,0,0,.6),0 8px 20px rgba(0,0,0,.45)}
.sheet-head h2{color:#E6D59A}
.sheet-head p{color:#B9B39E}

/* ---- Stats on silver ---- */
.stats{background:linear-gradient(155deg,#FDFCF8 0%,#E3E5E9 24%,#F6F6F4 44%,#C6C9D0 62%,#EDEEF1 80%,#D0D3D9 100%)}
.stat b{color:#2A2F36;text-shadow:0 1px 0 rgba(255,255,255,.85)}
.stat.gold b{color:#8A6D14;text-shadow:0 1px 0 rgba(255,255,255,.85)}
.stat span{color:#5D646C}
.stat+.stat::before{background:rgba(90,95,105,.42)}

/* ---- Records: ivory paper in the tray, flat by design ---- */
.result-card{color:#20242A;border-radius:11px;background:#FCFBF7;
 border:1px solid rgba(60,66,74,.28);box-shadow:none}
.result-card:hover{transform:translateY(-2px);border-color:#8A6D14;
 box-shadow:0 12px 26px rgba(0,0,0,.28)}
.result-card h4{color:#20242A;font-weight:900}
.result-subtitle,.metric-top,.role-tags-title,.result-rank-line{color:#5D646C}
.result-rank-line .rank-current{color:#20242A}
.result-rank-line .rank-next{color:#166534}
.result-card.card-royal-ready{background:linear-gradient(180deg,#EDF8F1,#D9EEDF);border-color:#15803D;border-top:3px solid #16A34A}
.result-card.card-royal-watch{background:linear-gradient(180deg,#FCF6E6,#F3E5BC);border-color:#B45309;border-top:3px solid #D97706}
.result-card.card-royal-risk{background:linear-gradient(180deg,#FCEBE8,#F4D4D0);border-color:#B91C1C;border-top:3px solid #DC2626}
.result-card.card-royal-ready:hover{border-color:#16A34A}
.result-card.card-royal-watch:hover{border-color:#D97706}
.result-card.card-royal-risk:hover{border-color:#DC2626}

/* ---- Chips, tags, metrics on silver ---- */
.completion-chip.full{color:#166534;border-color:#16A34A;background:rgba(22,163,74,.12)}
.completion-chip.warn{color:#991B1B;border-color:#DC2626;background:rgba(220,38,38,.1)}
.completion-chip.ready{color:#166534;border-color:#16A34A;background:rgba(22,163,74,.12)}
.completion-chip.watch{color:#92400E;border-color:#D97706;background:rgba(217,119,6,.12)}
.completion-chip.risk{color:#991B1B;border-color:#DC2626;background:rgba(220,38,38,.1)}
.completion-chip.plain{color:#475569;border-color:#64748B;background:rgba(100,116,139,.12)}
.meta-chip{color:#3C4249;background:rgba(40,45,55,.1);border-color:rgba(40,45,55,.32)}
.role-tag.taken{color:#fff;background:#16A34A;border-color:#15803D}
.role-tag.required{color:#fff;background:#DC2626;border-color:#991B1B}
.role-tag.optional{color:#92400E;background:rgba(217,119,6,.14);border-color:#D97706}
.role-legend{color:#5D646C}
.metric-box{background:rgba(255,255,255,.6);border-color:rgba(40,45,55,.25)}
.metric-number,.metric-percent{color:#20242A}
.missing-box{color:#8F2B23;background:rgba(143,43,35,.08);border-color:#B06A5F}
.note-chip,.role-tags-group{color:#3C4249;background:rgba(255,255,255,.6);border-color:rgba(40,45,55,.3)}
.message-link{color:#16281F;border-color:#16281F;background:rgba(255,255,255,.55)}
.message-link:hover{background:rgba(255,255,255,.9)}
.employment-details summary{color:#16281F}
.employment-recruit-row{border-top-color:rgba(40,45,55,.3)}
.recruit-date{color:#5D646C}
.empty-state{color:var(--stone)}
.empty-state-badge{color:var(--stone);border-color:rgba(255,255,255,.25)}
.plate .empty-state{color:#5D646C}
.plate .empty-state-badge{color:#3C4249;border-color:rgba(40,45,55,.35)}
.chip{color:#16281F;background:rgba(255,255,255,.55);border-color:#16281F}
/* These two live in BOTH worlds: on the noir ground (جرد الأفراد) and inside
   a silver tray (الكلية العسكرية). Default to the ground, scope the tray. */
.results-count{color:var(--stone);background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.2)}
.results-section-header h3{color:#F2ECDB}
.plate .results-count{color:#3C4249;background:rgba(40,45,55,.1);border-color:rgba(40,45,55,.3)}
.plate .results-section-header h3{color:#2A2F36}

/* ---- Controls on silver ---- */
.fld{color:#3C4249}
.fld small{color:#7A8189}
textarea,input[type=text],input:not([type]),input[type=date]{background:#FBFAF6;color:#20242A;
 border-color:rgba(40,45,55,.4);box-shadow:inset 0 2px 5px rgba(40,45,55,.12)}
textarea:focus,input:focus{outline:2px solid #16281F;outline-offset:1px}
.ledger-lines{background:rgba(255,255,255,.55);border-color:rgba(40,45,55,.25)}
.ledger-lines dt{color:#5D646C}
.ledger-lines dd{color:#20242A}
.status-pill{background:rgba(255,255,255,.55);border-color:rgba(40,45,55,.3);color:#20242A}
.status-pill.connected{background:#DDE8D8;border-color:#4C7A55}
.status-pill.connecting{background:#F0E3B8;border-color:#A5851F}
.btn-plate{background:rgba(255,255,255,.45);color:#16281F;border-color:#16281F}
.btn-plate:hover:not(:disabled){background:rgba(255,255,255,.8)}
.btn-ghostdark{color:#3C4249;border-color:rgba(40,45,55,.45)}
.btn-ghostdark:hover:not(:disabled){border-color:#8A6D14}
.audit textarea{background:#FBFAF6;color:#20242A}
.progress{background:rgba(40,45,55,.2)}

/* Actions that live directly on the noir ground (not inside a plate) */
.tab-content .btn-plate{background:rgba(201,162,39,.14);color:var(--champagne-soft);
 border-color:rgba(201,162,39,.55)}
.tab-content .btn-plate:hover:not(:disabled){background:rgba(201,162,39,.26)}

/* ---- Entry hand-off: the gate clears out first, then the board arrives ----
   (no double-exposure of both screens mid-transition) */
#gate{transition:opacity .45s cubic-bezier(.4,0,.2,1),visibility .45s,
 transform .45s cubic-bezier(.4,0,.2,1),filter .45s cubic-bezier(.4,0,.2,1)}
body.entered #gate{opacity:0;visibility:hidden;pointer-events:none;
 transform:scale(1.02);filter:blur(7px)}
#dashboard{opacity:0;transition:opacity .5s cubic-bezier(.4,0,.2,1) .4s}
body.entered #dashboard{opacity:1}
body.entered .main .sheet-head{animation-delay:.4s}
