:root{--steel-0: #0d0e11;--steel-1: #15171c;--steel-2: #1d2027;--steel-3: #262a33;--steel-4: #313641;--bevel-hi: rgba(255, 255, 255, .065);--bevel-lo: rgba(0, 0, 0, .6);--bone: #d8cdb2;--bone-2: #b9ad90;--parch: #cdc1a3;--ink: #e6e0d0;--ink-dim: #9a937e;--ink-mut: #73705f;--blood: #a8241f;--blood-2: #c63a2b;--blood-deep: #5f1411;--rust: #b65a2b;--hazard: #d6a316;--paper-ink: #211a0f;--stamp: "Black Ops One", system-ui, sans-serif;--gothic: "Pirata One", "Black Ops One", serif;--stencil: "Stardos Stencil", monospace;--body: "Oswald", system-ui, sans-serif}html{-webkit-text-size-adjust:100%}body{margin:0;background-color:var(--steel-1);background-image:radial-gradient(120% 80% at 50% -10%,#20242c 0%,transparent 55%),radial-gradient(100% 60% at 50% 110%,#0a0b0e 0%,transparent 55%),repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 2px,transparent 2px 5px),linear-gradient(180deg,#16181d,#101216);color:var(--ink);font-family:var(--body);font-weight:300;font-size:17px;line-height:1.6;letter-spacing:.2px;-webkit-font-smoothing:antialiased}body a{color:inherit}::selection{background:var(--blood);color:#fff}.stencil{font-family:var(--stencil)}.haz{background-image:repeating-linear-gradient(45deg,var(--hazard) 0 15px,#131418 15px 30px);box-shadow:inset 0 1px #ffffff26,inset 0 -2px 4px #00000080}.eyebrow{font-family:var(--stencil);font-weight:700;font-size:12px;letter-spacing:4px;text-transform:uppercase;color:var(--blood-2)}.label{font-family:var(--stencil);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-mut)}.plate{position:relative;background:linear-gradient(180deg,var(--steel-3) 0%,var(--steel-2) 18%,var(--steel-2) 82%,#181b21 100%);border:1px solid #0c0d10;border-top-color:var(--steel-4);box-shadow:inset 0 1px 0 var(--bevel-hi),inset 0 -3px 8px var(--bevel-lo),0 6px 18px #00000073}.plate.rivets:before{content:"";position:absolute;inset:7px;pointer-events:none;border-radius:2px;background-image:radial-gradient(circle at 50% 50%,#4a4f5b 0 28%,#15171b 42%,transparent 58%),radial-gradient(circle at 50% 50%,#4a4f5b 0 28%,#15171b 42%,transparent 58%),radial-gradient(circle at 50% 50%,#4a4f5b 0 28%,#15171b 42%,transparent 58%),radial-gradient(circle at 50% 50%,#4a4f5b 0 28%,#15171b 42%,transparent 58%);background-repeat:no-repeat;background-size:11px 11px;background-position:left top,right top,left bottom,right bottom;opacity:.9}.parchment{background:radial-gradient(120% 140% at 0% 0%,#ddd2b6,#cabd9d 55%,#b6a886);color:var(--paper-ink);border:1px solid #6a5c3e;box-shadow:inset 0 0 40px #785a2859,0 6px 18px #00000080}.stamp-h{font-family:var(--stamp);text-transform:uppercase;color:var(--ink);letter-spacing:1px;line-height:1}.gothic{font-family:var(--gothic);font-weight:400}.scan{position:fixed;inset:0;pointer-events:none;z-index:60;overflow:hidden;background:repeating-linear-gradient(0deg,rgba(0,0,0,.16) 0 1px,transparent 1px 3px);mix-blend-mode:multiply;opacity:.5}.vig{position:fixed;inset:0;pointer-events:none;z-index:59;box-shadow:inset 0 0 220px #000000bf}.wrap{max-width:1080px;margin:0 auto;padding:0 20px 90px;position:relative;z-index:2}.classbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-family:var(--stencil);font-weight:700;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#14151a;padding:8px 16px;margin-top:0;line-height:1.55;background:var(--hazard);border-bottom:2px solid #0c0d10;box-shadow:inset 0 1px #ffffff38,inset 0 -2px 4px #0006}.classbar .sn{margin-left:auto;color:#14151a;opacity:.8;letter-spacing:1px}.topband{height:15px;border-top:3px solid #0c0d10}header.hero{margin-top:22px}.hero-grid{display:grid;grid-template-columns:132px 1fr;gap:26px;align-items:center;padding:26px 28px}.crest{width:132px;height:132px;color:var(--bone);filter:drop-shadow(0 3px 4px rgba(0,0,0,.6))}.crest .ring2{color:var(--blood-2)}.desig{margin-bottom:8px}h1.name{font-family:var(--stamp);font-size:clamp(40px,8.5vw,82px);line-height:.92;letter-spacing:1px;color:var(--ink);margin:6px 0 0;text-shadow:0 2px 0 #000,0 0 26px rgba(168,36,31,.25)}.rankline{margin-top:12px;font-family:var(--gothic);font-size:clamp(20px,2.6vw,28px);color:var(--bone)}.rankline .sep{color:var(--blood-2);margin:0 8px}.creed{margin-top:16px;font-size:18px;font-weight:300;color:var(--ink);max-width:60ch}.creed b{color:var(--bone);font-weight:500}.vitals{margin-top:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #0c0d10}.vital{padding:13px 18px;border-right:1px solid #0c0d10;border-left:1px solid rgba(255,255,255,.03)}.vital:first-child{border-left:0}.vital:last-child{border-right:0}.vital .k{font-family:var(--stencil);font-size:10px;letter-spacing:2px;color:var(--ink-mut);text-transform:uppercase}.vital .v{margin-top:4px;font-size:15px;color:var(--bone);font-weight:400}.vital .v.live{color:var(--hazard)}.vox{display:flex;flex-wrap:wrap;gap:9px;padding:16px 28px 4px}.voxchan{font-family:var(--stencil);font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--ink);text-decoration:none;padding:8px 13px;background:linear-gradient(180deg,var(--steel-3),var(--steel-2));border:1px solid #0c0d10;border-top-color:var(--steel-4);box-shadow:inset 0 1px 0 var(--bevel-hi),0 2px 5px #0006;display:inline-flex;align-items:center;gap:8px;transition:color .12s,border-color .12s}.voxchan:hover{color:var(--hazard);border-color:var(--blood)}.voxchan .b{width:7px;height:7px;background:var(--blood-2);transform:rotate(45deg)}.wrap section{margin-top:40px}.shead{display:flex;align-items:stretch;gap:0}.shead .tab{background:var(--blood);color:#f3e7d6;font-family:var(--stamp);text-transform:uppercase;font-size:clamp(16px,2.3vw,22px);letter-spacing:1px;padding:11px 20px 9px;border:1px solid #0c0d10;box-shadow:inset 0 1px #ffffff2e,inset 0 -3px 8px #00000080;display:inline-flex;align-items:center;gap:12px;white-space:nowrap}.shead .tab .num{font-family:var(--stencil);font-weight:700;color:#e9c39a;opacity:.85}.shead .rail{flex:1}.shead .rail.haz{border:1px solid #0c0d10;border-left:0}.shead .meta{font-family:var(--stencil);font-size:11px;letter-spacing:2px;color:var(--ink-mut);text-transform:uppercase;align-self:center;padding-left:16px;white-space:nowrap}.assess{margin-top:18px;padding:30px 34px;position:relative}.assess .dropcap:first-letter{font-family:var(--gothic);font-size:76px;line-height:.7;float:left;margin:6px 12px 0 0;color:var(--blood-deep)}.assess p{margin:0 0 14px;font-weight:400}.assess p:last-of-type{margin-bottom:0}.assess .seal-watermark{position:absolute;right:18px;bottom:12px;width:120px;height:120px;color:#5f14112e;pointer-events:none}.marks-label{margin:26px 0 12px}.marks{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mark{background:#211a0f12;border:1px solid #8a7a55;border-left:4px solid var(--blood);padding:12px 15px;font-size:15px;line-height:1.45;color:var(--paper-ink);font-weight:400;display:flex;gap:11px}.mark .runemark{flex:none;font-family:var(--stamp);color:var(--blood)}.mark b{font-weight:600}.sanctioned{margin-top:26px;padding-top:16px;border-top:1px dashed #8a7a55;font-family:var(--stencil);font-size:12.5px;letter-spacing:.5px;color:#4f4226}.sanctioned .k{color:var(--blood-deep);font-weight:700}.metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px}.metric{padding:22px 18px 18px;border-right:1px solid #0c0d10;text-align:center;position:relative}.metric:last-child{border-right:0}.metric .big{font-family:var(--stamp);font-size:clamp(34px,5vw,50px);line-height:1;color:var(--bone);text-shadow:0 2px 0 #000}.metric .big .s{color:var(--blood-2)}.metric .cap{margin-top:12px;font-family:var(--stencil);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-dim);line-height:1.45}.tours{margin-top:18px;display:flex;flex-direction:column;gap:14px}.tour{padding:0;overflow:hidden}.tour .top{display:grid;grid-template-columns:58px 1fr auto;gap:0 18px;align-items:center;padding:14px 20px;border-bottom:1px solid #0c0d10;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}.tour .rn{font-family:var(--stamp);font-size:26px;color:var(--blood-2);text-align:center;text-shadow:0 2px 0 #000}.tour .ti .theatre{font-family:var(--gothic);font-size:22px;color:var(--bone);line-height:1.1}.tour .ti .realrole{font-family:var(--stencil);font-size:11.5px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-dim);margin-top:4px}.tour .ti .realrole .rk{color:var(--blood-2)}.tour .when{text-align:right;font-family:var(--stencil);font-size:11px;letter-spacing:1px;color:var(--ink-mut);text-transform:uppercase;line-height:1.5}.tour .when b{display:block;color:var(--bone);font-weight:700}.tour .body{padding:14px 20px 18px}.tour ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}.tour li{position:relative;padding-left:22px;font-size:15.5px;font-weight:300;color:var(--ink)}.tour li:before{content:"";position:absolute;left:2px;top:9px;width:8px;height:8px;background:var(--blood);transform:rotate(45deg);box-shadow:0 0 0 1px #000}.tour li b{color:var(--bone);font-weight:500}.wargear{margin-top:14px;display:flex;flex-wrap:wrap;gap:7px}.gear{font-family:var(--stencil);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--ink);padding:4px 10px;border:1px solid #0c0d10;background:linear-gradient(180deg,var(--steel-3),var(--steel-1));box-shadow:inset 0 1px 0 var(--bevel-hi)}.tour.active .top{background:linear-gradient(180deg,#a8241f38,#a8241f0d)}.tour.active{box-shadow:inset 0 0 0 1px var(--blood-deep),inset 0 1px 0 var(--bevel-hi),inset 0 -3px 8px var(--bevel-lo),0 6px 18px #00000073}.activetag{font-family:var(--stencil);font-weight:700;font-size:10px;letter-spacing:1.5px;color:#14151a;background:var(--hazard);padding:3px 8px;margin-left:10px;vertical-align:3px;display:inline-block;box-shadow:0 1px 2px #00000080}.tour.earlier .body{padding:16px 20px;font-size:15px;color:var(--ink-dim)}.tour.earlier b{color:var(--bone)}.disc{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.dcard{padding:18px 20px}.dcard .glabel{font-family:var(--stencil);font-weight:700;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--blood-2);margin-bottom:4px}.dcard .gsub{font-family:var(--stencil);font-size:10px;letter-spacing:1px;color:var(--ink-mut);text-transform:uppercase;margin-bottom:14px}.tiles{display:flex;flex-wrap:wrap;gap:7px}.tile{font-family:var(--stencil);font-size:12.5px;letter-spacing:.5px;color:var(--ink);background:#00000047;border:1px solid #0c0d10;border-top-color:#ffffff0d;padding:5px 11px;white-space:nowrap}.tile:hover{color:var(--hazard);border-color:var(--blood)}.duo{margin-top:18px;display:grid;grid-template-columns:1.3fr 1fr;gap:14px}.block{padding:20px 22px}.block h3{font-family:var(--stamp);text-transform:uppercase;font-size:16px;letter-spacing:1px;color:var(--bone);margin:0 0 14px}.schola .deg{font-family:var(--gothic);font-size:20px;color:var(--bone);line-height:1.15}.schola .sub{font-size:15px;color:var(--ink-dim);margin-top:8px;font-weight:400}.schola .yr{margin-top:12px;font-family:var(--stencil);font-size:12px;letter-spacing:1px;color:var(--blood-2);text-transform:uppercase}.tongue{margin-bottom:16px}.tongue:last-child{margin-bottom:0}.tongue .tr{display:flex;justify-content:space-between;align-items:baseline}.tongue .n{font-size:16px;color:var(--bone)}.tongue .lv{font-family:var(--stencil);font-size:11px;letter-spacing:1px;color:var(--ink-mut);text-transform:uppercase;white-space:nowrap}.gauge{height:9px;margin-top:8px;background:#0006;border:1px solid #0c0d10;overflow:hidden}.gauge>span{display:block;height:100%;background:repeating-linear-gradient(90deg,var(--blood-2) 0 7px,var(--blood-deep) 7px 10px)}.petition{margin-top:50px;padding:34px 30px;text-align:center}.petition .gothic{font-size:clamp(26px,5vw,44px);color:var(--bone);line-height:1.05}.petition .gothic .r{color:var(--blood-2)}.petition .sub{margin-top:14px;font-size:16px;color:var(--ink-dim)}.petition .sub a{color:var(--hazard);text-decoration:none;border-bottom:1px solid currentColor}.colophon{margin-top:30px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-family:var(--stencil);font-size:10.5px;letter-spacing:1px;color:var(--ink-mut);text-transform:uppercase}.colophon a{color:var(--ink-mut);cursor:pointer}body:not(.sworn) .lockable{filter:grayscale(.65) brightness(.62) contrast(.95)}body.stamping .lockable{animation:unlock .8s ease forwards}@keyframes unlock{0%{filter:grayscale(.65) brightness(.62) contrast(.95)}to{filter:none}}#oath{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:radial-gradient(60% 60% at 50% 45%,#0a0b0ed1,#060709f5);cursor:pointer;text-align:center;padding:20px}body.sworn #oath{opacity:0;visibility:hidden;pointer-events:none}body.stamping #oath{animation:dismiss .6s ease .15s forwards}@keyframes dismiss{0%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}#oath .prompt{max-width:560px}#oath .classified{font-family:var(--stencil);font-weight:700;letter-spacing:5px;color:var(--blood-2);font-size:13px;text-transform:uppercase}#oath .otitle{font-family:var(--gothic);font-size:clamp(30px,6vw,52px);color:var(--bone);margin:14px 0 6px;line-height:1.05}#oath .oath-text{font-size:17px;color:var(--ink-dim);font-style:italic;max-width:44ch;margin:10px auto 0}.sealbtn{position:relative;width:210px;height:210px;margin:26px auto 8px;display:grid;place-items:center;color:var(--blood-2)}.sealbtn .ink{position:absolute;inset:0}.sealbtn .hint{position:absolute;bottom:-2px;left:50%;transform:translate(-50%);font-family:var(--stencil);font-weight:700;font-size:12px;letter-spacing:3px;color:var(--hazard);text-transform:uppercase;white-space:nowrap}.sealbtn:hover{color:var(--blood)}.sealbtn .pulse{position:absolute;inset:18px;border:2px solid var(--blood-2);border-radius:50%;animation:pulsering 2.2s ease-out infinite;opacity:0}@keyframes pulsering{0%{transform:scale(.7);opacity:.6}to{transform:scale(1.25);opacity:0}}#brand{position:fixed;z-index:90;top:90px;right:26px;width:150px;height:150px;color:var(--blood);pointer-events:none;opacity:0;transform:rotate(-14deg) scale(2.6);filter:drop-shadow(0 4px 8px rgba(0,0,0,.6));mix-blend-mode:normal}body.stamping #brand{animation:slam .5s cubic-bezier(.2,.9,.3,1) forwards}body.sworn #brand{opacity:.92;transform:rotate(-14deg) scale(1)}@keyframes slam{0%{opacity:0;transform:rotate(-26deg) scale(2.6)}62%{opacity:1;transform:rotate(-12deg) scale(.92)}78%{transform:rotate(-15deg) scale(1.04)}to{opacity:.92;transform:rotate(-14deg) scale(1)}}#flash{position:fixed;inset:0;z-index:95;background:#fff;opacity:0;pointer-events:none}body.stamping #flash{animation:flash .5s ease-out forwards}@keyframes flash{0%{opacity:0}8%{opacity:.5}to{opacity:0}}body.stamping .wrap{animation:shake .42s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-3px,2px)}40%{transform:translate(4px,-2px)}60%{transform:translate(-3px,-1px)}80%{transform:translate(2px,2px)}}#shock{position:fixed;z-index:94;top:90px;right:26px;width:150px;height:150px;border:3px solid var(--blood-2);border-radius:50%;opacity:0;pointer-events:none;box-shadow:0 0 24px #c63a2b80}body.stamping #shock{animation:shock .6s ease-out}@keyframes shock{0%{transform:scale(.2);opacity:.85}to{transform:scale(2.3);opacity:0}}body.activated .wrap>*{animation:rise .6s cubic-bezier(.2,.7,.3,1) both}body.activated .wrap>*:nth-child(1){animation-delay:.02s}body.activated .wrap>*:nth-child(2){animation-delay:.12s}body.activated .wrap>*:nth-child(3){animation-delay:.22s}body.activated .wrap>*:nth-child(4){animation-delay:.32s}body.activated .wrap>*:nth-child(5){animation-delay:.42s}body.activated .wrap>*:nth-child(6){animation-delay:.52s}body.activated .wrap>*:nth-child(7){animation-delay:.6s}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}body.lit .wrap>*{opacity:1!important}.tour.active .activetag{animation:warnblink 1.5s steps(1) infinite}@keyframes warnblink{0%,55%{opacity:1}55.01%,to{opacity:.32}}.vital .v.live{animation:livepulse 2.4s ease-in-out infinite}@keyframes livepulse{0%,to{text-shadow:0 0 0 rgba(214,163,22,0)}50%{text-shadow:0 0 12px rgba(214,163,22,.6)}}.scan:after{content:"";position:absolute;left:0;right:0;top:-160px;height:160px;background:linear-gradient(180deg,transparent,rgba(150,170,190,.05) 60%,rgba(150,170,190,.1),transparent);animation:sweep 7.5s linear infinite}@keyframes sweep{0%{transform:translateY(0)}to{transform:translateY(120vh)}}body.sworn:not(.stamping) #brand{animation:sealglow 3.2s ease-in-out infinite}@keyframes sealglow{0%,to{filter:drop-shadow(0 3px 5px rgba(0,0,0,.6))}50%{filter:drop-shadow(0 3px 5px rgba(0,0,0,.6)) drop-shadow(0 0 9px rgba(198,58,43,.7))}}@media(prefers-reduced-motion:reduce){.sealbtn .pulse,body.stamping #brand,body.stamping #flash,body.stamping .wrap,body.stamping #shock,body.stamping #oath,body.stamping .lockable,body.activated .wrap>*,.tour.active .activetag,.vital .v.live,.scan:after,body.sworn:not(.stamping) #brand{animation:none!important}}@media(max-width:720px){.hero-grid{grid-template-columns:1fr;justify-items:center;text-align:center;gap:14px}.creed{text-align:left}.vitals{grid-template-columns:1fr 1fr}.vital:nth-child(2){border-right:0}.vital:nth-child(1),.vital:nth-child(2){border-bottom:1px solid #0c0d10}.metrics{grid-template-columns:1fr 1fr}.metric:nth-child(2){border-right:0}.metric:nth-child(1),.metric:nth-child(2){border-bottom:1px solid #0c0d10}.marks,.disc,.duo{grid-template-columns:1fr}.tour .top{grid-template-columns:40px 1fr}.tour .when{grid-column:2;text-align:left;margin-top:6px}#brand{width:96px;height:96px;top:70px;right:12px}}@media print{@page{margin:12mm}body{background:#fff!important;color:#1a1a1a}.scan,.vig,#oath,#brand,#flash,.no-print{display:none!important}body:not(.sworn) .lockable{filter:none!important}.plate,.parchment{box-shadow:none!important;break-inside:avoid}.wrap section,.tour{break-inside:avoid}}
