:root{color-scheme:dark;font-family:Georgia,'Times New Roman',serif;color:#f3e9d5;background:#0b0c12}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body{margin:0;min-height:100dvh;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at top,#1e3030,#0b0c12 70%)}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:3px solid #8ef0dc;outline-offset:3px}button:disabled{cursor:default}button,canvas{-webkit-tap-highlight-color:transparent}#theatre{position:relative;width:min(100vw,177.7778dvh,1600px);aspect-ratio:16/9;overflow:hidden;container-type:inline-size;background:#142422;box-shadow:0 0 100px #000;border:1px solid #526552}canvas{display:block;width:100%;height:100%;touch-action:none}.hud{position:absolute;inset:0 0 auto;display:flex;align-items:center;gap:2.2cqw;height:10.5%;padding:0 2.7%;background:linear-gradient(#101c20f5,#152624ea);border-bottom:1px solid #a7834a;box-shadow:0 5px 25px #0008}.brand{margin-right:auto;white-space:nowrap}.eyebrow{display:block;font:600 .7cqw/1.4 system-ui,sans-serif;letter-spacing:.23em;color:#c29f66}.brand strong{display:block;font-size:2.1cqw;font-weight:normal;letter-spacing:.09em;color:#efd7a8}.prototype{font:500 .55cqw system-ui;letter-spacing:.1em;color:#aea0b4;margin-left:.7cqw;border:1px solid #665267;border-radius:3px;padding:.22cqw}.counter{display:flex;gap:.65cqw;align-items:center}.counter .symbol{font-size:2.5cqw;color:#f1c86e}.counter b{font:700 1.8cqw system-ui,sans-serif;display:block;line-height:1}.counter small{display:block;font:600 .55cqw system-ui,sans-serif;letter-spacing:.08em;margin-top:.4cqw;color:#b5aaa1}.health .symbol{color:#bcdbb4}.wave{min-width:11cqw}.wave>span{display:block;font-size:1.3cqw;letter-spacing:.1em;color:#d8c5ed}.wave small{font:.7cqw system-ui;color:#aba2b5;display:block;margin-top:.35cqw}.tools{display:flex;gap:.35cqw}.tools button{border:1px solid #5e4a39;background:#242027;border-radius:.6cqw;width:2.8cqw;height:2.8cqw;font:1.3cqw system-ui}.tools button:hover{background:#45374c}.tools button.active{color:#b7ecd8;border-color:#b7ecd8}.bottom{position:absolute;bottom:0;left:0;width:100%;height:19%;padding:1% 3% 1.1%;display:grid;grid-template-columns:1fr 9cqw;grid-template-rows:1.25cqw 1fr;gap:.5cqw 1.4cqw;background:linear-gradient(#101219ef,#101219);border-top:1px solid #967449;box-shadow:0 -8px 40px #0008}.deck-label{display:flex;justify-content:space-between;align-items:center;font:600 .64cqw system-ui;letter-spacing:.14em;color:#cbb48b}.deck-label #hint{font-weight:400;letter-spacing:0;color:#b9b1bf}.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:.6cqw;min-height:0}.card{position:relative;display:grid;grid-template-columns:44% 56%;align-items:center;overflow:hidden;text-align:left;border:1px solid #69543e;border-radius:.55cqw;background:linear-gradient(145deg,#312b38,#171924);padding:0;transition:border-color .15s,background .15s,transform .15s}.card:hover{background:linear-gradient(145deg,#493b4e,#22232e);border-color:#e8c889}.card.selected{border:2px solid #9de1cd;background:linear-gradient(145deg,#34473e,#22282e);box-shadow:0 0 18px #70e2cc25;transform:translateY(-.25cqw)}.card.unaffordable{opacity:.48}.portrait{position:relative;width:100%;height:100%;overflow:hidden}.portrait img{position:absolute;width:400%;height:300%;max-width:none;object-fit:fill;pointer-events:none}.card-copy{z-index:1;padding:.5cqw .2cqw}.card strong{display:block;font-size:1.1cqw;color:#efe0c7}.card small{display:block;font:.56cqw system-ui;color:#b8acbf;margin:.4cqw 0 .55cqw;white-space:nowrap}.card b{font:700 .9cqw system-ui;color:#f3cd75}.key{position:absolute;top:.4cqw;left:.4cqw;font:.55cqw system-ui;color:#b5a6ac}.fear-box{grid-column:2;grid-row:1/3}.fear-box button{width:100%;height:100%;position:relative;overflow:hidden;border:1px solid #806797;border-radius:.8cqw;background:radial-gradient(ellipse at top,#433454,#1f192b);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.35cqw}.fear-box button>span:not(.moon){font:700 .7cqw system-ui;letter-spacing:.2em}.moon{font-size:3.2cqw;line-height:1;color:#d4b6ff;text-shadow:0 0 20px #b28bfd}.fear-box small{font:.57cqw system-ui;color:#c5b3d6}.fear-box i{position:absolute;bottom:0;left:0;height:.4cqw;background:#cfa1ff;width:0;transition:width .2s}.fear-box button.ready{box-shadow:0 0 25px #c896fd70;border-color:#dec2ff}.announcement{position:absolute;top:12%;left:50%;transform:translateX(-50%);pointer-events:none;text-align:center;opacity:0;transition:opacity .2s;background:#14121aeb;border:1px solid #b18d56;border-radius:6px;padding:.7cqw 2cqw;font-size:1.2cqw;white-space:nowrap;color:#f0d5a3}.announcement.show{opacity:1}.actionbar{position:absolute;top:14%;left:50%;transform:translateX(-50%);align-items:center;gap:.7cqw;border:1px solid #b0915d;border-radius:.6cqw;background:#17151feb;padding:.6cqw .8cqw;font-size:1cqw;box-shadow:0 5px 20px #0009}.actionbar:not([hidden]){display:flex}.actionbar button{padding:.5cqw .8cqw;border:1px solid #645269;background:#332938;border-radius:.4cqw;font:.8cqw system-ui}.overlay{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(90deg,#100e18e8,#100e188a,#100e18cc);backdrop-filter:blur(3px)}[hidden]{display:none!important}.panel{text-align:center;width:48%;padding:2.3cqw 3cqw;border:1px solid #96734c;border-radius:1.2cqw;background:radial-gradient(ellipse at top,#253b35f5,#101b20f5);box-shadow:0 20px 90px #000b;position:relative}.panel:before{content:'✦';position:absolute;left:50%;top:-1cqw;transform:translateX(-50%);color:#e6c18b;background:#211a25;padding:0 1cqw}.panel>.eyebrow{font-size:.8cqw}.panel h1{font-size:6.3cqw;line-height:.9;letter-spacing:-.04em;font-weight:normal;margin:1.6cqw 0;color:#f2dfbb;text-shadow:0 3px 0 #765137}.panel h1 em{font-weight:normal;font-style:italic;color:#d6b7ee}.panel p{font:1.05cqw/1.7 system-ui;color:#ccc0ce;margin:1.2cqw 0}.intro-notes{display:flex;gap:1.1cqw;justify-content:center;font:.69cqw system-ui;color:#d9c7a6;margin:1.7cqw 0}.primary{width:100%;background:linear-gradient(135deg,#edcf94,#c69b61);color:#281d25;border:1px solid #ffdfac;border-radius:.45cqw;padding:1.2cqw;font:800 .95cqw system-ui;letter-spacing:.12em;box-shadow:0 4px 0 #775635;display:flex;justify-content:center;gap:2cqw}.primary:hover{filter:brightness(1.1)}.prototype-note{display:block;margin-top:1.3cqw;color:#918496;font:.54cqw system-ui;letter-spacing:.1em}.compact{width:44%}.compact h2{font-weight:normal;font-size:2.6cqw;margin:1.3cqw 0}.secondary{margin-top:1.2cqw;background:none;border:0;color:#b7a6bb;font:.85cqw system-ui;text-decoration:underline}.instructions{text-align:left;margin:1cqw 0 1.8cqw}.instructions p{font-size:.9cqw;margin:.65cqw 0;line-height:1.55}.instructions b{color:#f3d5a3}.result{display:flex;flex-direction:column;gap:.5cqw;margin:1.5cqw;font-family:system-ui}.result b{font-size:2cqw;color:#efd09a}.result span{font-size:.8cqw;color:#b1a1bb}.rotate{display:none} @media(max-width:1000px){.hud{gap:1.3cqw}.brand strong{font-size:2cqw}.prototype{display:none}.tools button{width:3.7cqw;height:3.7cqw;font-size:1.7cqw}.eyebrow{font-size:.8cqw}.counter small{font-size:.65cqw}.wave small{font-size:.8cqw}.card strong{font-size:1.4cqw}.card small{font-size:.7cqw}.card b{font-size:1.15cqw}.key{display:none}.deck-label{font-size:.8cqw}.panel p{font-size:1.4cqw}.panel>.eyebrow{font-size:1cqw}.primary{font-size:1.2cqw;padding:1.5cqw}.intro-notes{font-size:.9cqw}.prototype-note{font-size:.7cqw}.compact{width:55%}.instructions p{font-size:1.15cqw}.actionbar{font-size:1.3cqw}.actionbar button{font-size:1.2cqw;padding:.8cqw}.announcement{font-size:1.5cqw}.fear-box small{font-size:.7cqw}}@media(orientation:portrait) and (max-width:900px){#theatre{visibility:hidden}.rotate{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px;background:radial-gradient(ellipse at top,#33243d,#11121b);z-index:20}.rotate>span{font-size:75px;color:#d5b4f4}.rotate h2{font-size:28px;font-weight:normal;color:#efd2a2}.rotate p{font:15px/1.8 system-ui;color:#b9a9c3}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(max-width:1000px) and (orientation:landscape){
 .tools button{min-width:34px;min-height:34px;font-size:17px}
 .hud{padding-inline:2%;gap:1cqw}.brand .eyebrow{font-size:7px;letter-spacing:.12em}
 .brand strong{font-size:max(14px,2cqw)}.counter b{font-size:max(15px,1.8cqw)}.counter small{font-size:7px;letter-spacing:0}
 .wave>span{font-size:10px}.wave small{font-size:8px}.wave{min-width:10cqw}
 .bottom{grid-template-rows:12px 1fr;padding-top:5px;padding-bottom:5px}.deck-label{font-size:8px;letter-spacing:.04em}.deck-label #hint{font-size:9px}
 .card strong{font-size:12px}.card b{font-size:11px}.card small{display:none}.card-copy{padding:3px 1px}.card b{display:block;margin-top:5px}
 .fear-box button>span:not(.moon){font-size:8px;letter-spacing:.08em}.fear-box small{font-size:7px}.moon{font-size:25px}
 .panel{width:58%;padding:16px 22px}.panel>.eyebrow{font-size:9px}.panel p{font-size:12px}.primary{font-size:11px;min-height:38px;padding:10px}.prototype-note{font-size:7px}.intro-notes{font-size:8px}
 .compact{width:65%}.compact h2{font-size:23px}.secondary{font-size:11px;min-height:30px}.instructions p{font-size:11px;line-height:1.4;margin:6px 0}.result span{font-size:10px}.result b{font-size:20px}
 .actionbar{font-size:11px}.actionbar button{font-size:11px;min-height:34px;padding:6px 9px}.announcement{font-size:12px}
}

.animation-link{display:block;margin-top:1.3cqw;color:#cbb4e2;font:clamp(10px,.8cqw,14px) system-ui;text-decoration:none}.animation-link:hover{color:#f1d5a9}
