:root{--night:#071e2a;--panel:#102f3c;--panel2:#143a47;--gold:#dcb66d;--cream:#fff1cc;--muted:#a3b7bd;--line:#b38b4438;--ink:#162e38;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--night);color:#f5f2e7;font-family:Arial,Helvetica,sans-serif}body{font-size:14px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid #ffe2a0;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif}h2{font-size:27px;line-height:1.12;letter-spacing:-.5px;margin-bottom:14px}p{line-height:1.6}svg{flex-shrink:0}input{width:100%;background:#071f2a;color:#fff7e7;border:1px solid #9db6be45;border-radius:10px;padding:14px 15px;outline:none;transition:border .2s;margin-bottom:18px}input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #dcb66d15}input::placeholder{color:#77939d}label{display:block;font-size:12px;color:#d7e2df;letter-spacing:.25px;margin-bottom:8px}hr{height:1px;border:0;background:var(--line);margin:22px 0}.muted{color:var(--muted)}.tiny{font-size:12px;line-height:1.6}.center{text-align:center}.full{width:100%}.stack{display:grid;gap:9px}.eyebrow{font-family:Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:1.8px;color:var(--gold);line-height:1.5;margin-bottom:13px}.button{border:1px solid transparent;min-height:44px;border-radius:9px;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600;line-height:1.3;transition:transform .17s,box-shadow .17s,background .17s}.button:not(:disabled):hover{transform:translateY(-1px)}.button.gold{background:linear-gradient(135deg,#f1d393,#d5aa61 55%,#bc8a45);color:#2c261c;border-color:#ffe7b1;box-shadow:inset 0 1px #fff6d2,0 4px 0 #6a4828,0 8px 20px #0003}.button.gold:not(:disabled):hover{box-shadow:inset 0 1px #fff6d2,0 5px 0 #6a4828,0 10px 25px #d5aa6124}.button.secondary{background:#143744;color:#e9ebdf;border-color:#a8c6cb36}.button.secondary:hover{background:#1d4857}.button.danger{color:#f5c5b7;border-color:#be725c77;background:#6e373a33}.icon-button{width:38px;height:38px;border:1px solid #afc9c326;border-radius:50%;background:transparent;color:#d8d6c2;display:grid;place-items:center}.icon-button:hover{color:#fff2c5;border-color:#b9a46c}.topbar{height:78px;padding:0 4.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:10;background:#071e2aed}.brand{display:flex;align-items:center;gap:12px;font-family:Georgia,serif;font-size:21px;font-weight:bold;letter-spacing:2.5px;color:#f3dfad}.brand-mark{display:grid;place-items:center;width:39px;height:43px;border:1px solid #bd9958;border-radius:9px 9px 18px 18px;background:linear-gradient(160deg,#234954,#09202e);font-size:24px;box-shadow:inset 0 0 0 3px #0b2634}.brand small{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:2px;font-weight:400;color:#a6bdbe;margin-top:5px}.top-actions{display:flex;gap:13px;align-items:center}.connection{color:#9bb8b7;font-size:11px;display:flex;align-items:center;gap:7px}.connection i,.pulse-dot{width:6px;height:6px;border-radius:50%;background:#80c6aa;display:inline-block;box-shadow:0 0 10px #80c6aa88}.connection.offline i{background:#e9b868}.room-pill{display:flex;align-items:center;gap:10px;border:1px solid #c7a15d66;background:#15313b;color:#f5dc9d;padding:9px 13px;border-radius:8px;font-family:monospace;font-size:15px;letter-spacing:2px}.landing{min-height:100svh;overflow:hidden}.landing-main{max-width:1680px;min-height:calc(100svh - 78px);margin:auto;position:relative;display:grid;grid-template-columns:1fr 425px;gap:8%;align-items:center;padding:65px 7% 100px}.landing-art{position:absolute;inset:0;background-image:linear-gradient(90deg,#071e2aea 4%,#071e2a64 45%,#071e2a48),linear-gradient(0deg,#071e2a 0%,transparent 32%,#071e2a20),url('/assets/winter.webp');background-size:cover;background-position:52% 44%;opacity:.9;z-index:0;pointer-events:none}.landing-main::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 44% 50%,transparent 20%,#071e2a65 100%);z-index:0}.hero-copy,.entry-panel,.landing-footer{position:relative;z-index:1}.hero-copy .eyebrow{font-size:10px;display:flex;align-items:center;gap:12px;letter-spacing:2px}.hero-copy .eyebrow span{width:29px;height:1px;background:var(--gold)}.hero-copy h1{font-size:clamp(72px,7.1vw,112px);font-weight:400;line-height:.98;letter-spacing:-4px;color:#fff5df;margin:27px 0 25px;text-shadow:0 4px 18px #071e2a9c}.hero-copy h1 em{font-style:normal;color:#e7bf72;text-shadow:0 2px 0 #503c1d,0 8px 30px #8c612633}.hero-description{font-family:Georgia,serif;font-size:19px;line-height:1.65;color:#d4e0dd;max-width:400px}.hero-facts{display:flex;gap:25px;flex-wrap:wrap;margin:28px 0}.hero-facts span{display:flex;align-items:center;gap:8px;color:#c7d6d1;font-size:11px}.hero-facts svg{color:#dcb66d}.sketch-link{display:inline-flex;align-items:center;gap:8px;color:#c6d2c9;font-size:11px;border:0;border-bottom:1px solid #c5b28255;padding:0 0 7px;background:transparent}.entry-panel{background:linear-gradient(140deg,#153745f5,#0a2633f9);border:1px solid #b48a485c;box-shadow:0 26px 90px #0006,inset 0 1px #d6c69a22;border-radius:17px;padding:30px 31px;backdrop-filter:blur(14px)}.entry-panel::before,.turn-panel::before{content:'';width:48px;height:3px;background:#d8b778;position:absolute;top:-2px;left:calc(50% - 24px);border-radius:5px;box-shadow:0 0 18px #d8b77855}.panel-stars{display:flex;justify-content:center;gap:12px;align-items:center;color:#c8a968;font-size:15px;margin-bottom:18px}.panel-stars span{font-size:8px;letter-spacing:1.8px;color:#b5c9c7}.entry-panel h2{text-align:center;font-size:25px;color:#f6e9c9;margin-bottom:23px}.tabs{display:flex;background:#071f2b;border-radius:9px;padding:4px;gap:3px;margin-bottom:23px}.tabs button{flex:1;border:0;padding:10px 5px;background:transparent;color:#92adb4;font-size:12px;border-radius:6px}.tabs button.active{background:#244756;color:#f5e4bc;box-shadow:0 2px 8px #0003}.house-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:20px}.house-picker button{background:#0c2835;border:1px solid #385663;border-radius:9px;padding:9px 1px;color:#9eb9bc;min-height:65px}.house-picker button.chosen{border-color:var(--house);background:color-mix(in srgb,var(--house) 14%,#0c2835);box-shadow:0 0 0 1px color-mix(in srgb,var(--house) 25%,transparent)}.house-picker button span{font-size:23px}.house-picker button small{display:block;font-size:8px;margin-top:6px}.code-input{text-transform:uppercase;letter-spacing:7px;text-align:center;font-family:monospace;font-size:21px}.entry-submit{margin-top:2px}.entry-note{font-size:10px;color:#8eadaf;text-align:center;margin:19px 0 0;line-height:1.6}.resume-link{display:flex;align-items:center;gap:7px;justify-content:center;margin:16px auto 0;background:none;border:0;color:#d8c18e;font-size:12px}.landing-footer{position:absolute;bottom:26px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#86a1a5;letter-spacing:.4px}.landing-footer span{font-size:18px;color:#8c7648}.snow{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}.snow i{position:absolute;top:-10px;left:14%;width:3px;height:3px;border-radius:50%;background:#e7f3e799;box-shadow:160px 80px #fff5,370px 40px #fff5,520px 140px #fff5,800px 20px #fff5;animation:snow 19s linear infinite}.snow i:nth-child(2){left:42%;animation-delay:-7s;animation-duration:24s}.snow i:nth-child(3){left:64%;animation-delay:-13s;animation-duration:17s}.snow i:nth-child(4){left:3%;animation-delay:-4s;animation-duration:31s}.snow i:nth-child(5){left:82%;animation-delay:-3s;animation-duration:27s}@keyframes snow{to{transform:translate(-100px,850px)}}.in-game{min-height:100vh;background:radial-gradient(ellipse at 20% 20%,#183b4766,transparent 55%),#071e2a}.in-game .topbar{padding:0 27px;height:70px}.game-main{max-width:1800px;margin:auto;padding:22px 25px;display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:21px;align-items:start}.table-column{min-width:0}.player-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:17px}.player-card{background:#102e3a;border:1px solid #43657544;border-radius:12px;padding:11px;display:flex;align-items:center;gap:10px;position:relative;min-height:92px;transition:border .2s}.player-card.active{border-color:var(--house);background:linear-gradient(120deg,color-mix(in srgb,var(--house) 12%,#102e3a),#102e3a);box-shadow:0 0 22px color-mix(in srgb,var(--house) 10%,transparent)}.crest{height:40px;width:37px;display:grid;place-items:center;flex-shrink:0;background:linear-gradient(130deg,color-mix(in srgb,var(--house) 30%,#162f39),#0b2330);border:1px solid var(--house);border-radius:9px 9px 15px 15px;font-size:21px;box-shadow:inset 0 0 0 2px #112a35}.player-info{min-width:0;flex:1}.player-info>strong{display:flex;gap:5px;align-items:center;font-size:12px;color:#e9e5d3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:7px}.player-info>strong small{font-size:8px;color:#96adaf;font-weight:normal}.player-info>span{display:flex;align-items:center;gap:4px;font-size:11px;color:#dfbd76}.player-pos{color:#88a8b1;margin-left:auto;font-size:9px}.seals{display:flex;align-items:center;gap:4px;margin-top:5px;font-size:11px}.seals i{font-style:normal;color:#42616e;font-size:9px}.seals i.collected{color:#e5bd66;text-shadow:0 0 5px #d9b15b88}.seals>span{display:flex;gap:2px;align-items:center;font-size:9px;color:#9baac1;margin-left:4px}.seals b{font-size:8px;color:#d7a49b;font-weight:normal;margin-left:auto}.turn-star{position:absolute;right:8px;top:-7px;color:var(--house);font-size:18px}.empty-seat{border:1px dashed #536e7040;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;color:#587780;font-size:10px}.board-shell{position:relative;border:1px solid #b18e4d87;border-radius:13px;overflow:hidden;background:#0f303b;box-shadow:0 10px 35px #0005}.board-title{height:35px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#133943,#153340);font-size:9px;color:#cfbd91;letter-spacing:1.4px;border-bottom:1px solid #9c803c66}.board-title>span{display:flex;gap:7px;align-items:center}.board-title>span+span{font-family:monospace;letter-spacing:.3px;color:#abc4c4}.board-viewport{width:100%;max-height:calc(100vh - 265px);min-height:260px;overflow:auto;cursor:grab;touch-action:none;scrollbar-width:thin;scrollbar-color:#8c7952 #15313b}.board-viewport:active{cursor:grabbing}.board-canvas{position:relative;min-width:100%;isolation:isolate}.board-image{display:block;width:100%;height:auto;user-select:none;pointer-events:none}.cell-hotspot{position:absolute;transform:translate(-50%,-50%);width:3.4%;aspect-ratio:1;border-radius:50%;background:transparent;border:0;z-index:2}.cell-hotspot:hover,.cell-hotspot.selected{box-shadow:0 0 0 2px #fff0ba,0 0 20px #ffd87b99;background:#ffd97b33}.pawn{position:absolute;transform:translate(-50%,-81%);z-index:4;width:34px;height:36px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50% 50% 40% 40%;border:2px solid var(--house);background:radial-gradient(circle at 33% 20%,#fffbea,#c2ac76 64%,#695732);box-shadow:0 5px 0 color-mix(in srgb,var(--house) 70%,#122a35),0 9px 10px #0008,inset 0 1px #fff;transition:left .18s linear,top .18s linear;cursor:pointer}.pawn>span{font-size:21px;line-height:1}.pawn small{position:absolute;top:40px;font-size:8px;background:#082333e8;padding:3px 5px;border:1px solid var(--house);border-radius:4px;color:white;white-space:nowrap}.pawn.current{box-shadow:0 5px 0 var(--house),0 9px 10px #0007,0 0 0 5px #fff1b655,0 0 22px var(--house)}.map-tools{position:absolute;bottom:11px;right:11px;display:flex;gap:4px;align-items:center;background:#0c2636e8;padding:4px;border:1px solid #c6ab6866;border-radius:8px;z-index:5;backdrop-filter:blur(8px)}.map-tools button{border:0;background:transparent;color:#f1ddad;width:29px;height:29px;display:grid;place-items:center;border-radius:4px}.map-tools button:hover{background:#345464}.map-tools .focus-button{width:auto;padding:0 9px;font-size:10px;border-left:1px solid #77845e55;border-radius:0}.inspect-card{position:absolute;bottom:12px;left:12px;background:#fff0cf;color:#27383c;border:2px solid #be9959;border-radius:9px;padding:14px 28px 13px 15px;width:270px;box-shadow:0 6px 22px #0005;z-index:5}.inspect-card .eyebrow{color:#846136;font-size:9px}.inspect-card strong{display:block;font-family:Georgia,serif;font-size:18px;margin-top:5px}.inspect-card p{font-size:12px;margin:7px 0 0}.close-small{position:absolute;right:7px;top:7px;background:transparent;border:0;color:#634e33}.below-map{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:17px}.deck-piles{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;align-content:start}.deck-pile{min-height:72px;text-align:left;padding:11px 9px;background:linear-gradient(140deg,#223746,#102a39);border:1px solid #b293514f;border-radius:10px;box-shadow:0 3px 0 #0b1d2b,0 4px 0 1px #7f71452e;color:#d4d2bd;display:flex;align-items:center;gap:9px}.deck-pile>span{height:35px;min-width:25px;display:grid;place-items:center;font-family:Georgia,serif;color:#d1b06d;border:1px solid #b0984e77;border-radius:6px;font-size:20px}.deck-pile.encounters{background:linear-gradient(120deg,#3e2f46,#172e3c)}.deck-pile.riddles{background:linear-gradient(120deg,#1b4147,#112f3b)}.deck-pile.spells{background:linear-gradient(120deg,#2b374f,#142b3a)}.deck-pile strong{display:block;font-size:10px;font-weight:500}.deck-pile small{display:block;font-size:8px;color:#859eaa;margin-top:6px}.spell-hand{background:#102d3966;border:1px solid #62797633;border-radius:10px;padding:11px 13px;min-height:93px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:10px;color:#c3cbbd;margin-bottom:11px}.section-heading>span{display:flex;gap:6px;align-items:center}.section-heading>small{font-size:8px;color:#708d98}.hand-empty{margin-bottom:3px;font-size:10px}.hand-cards{display:flex;gap:7px}.hand-card{flex:1;min-width:0;border:1px solid #77694566;background:linear-gradient(140deg,#283c4c,#14313d);border-radius:7px;color:#b5c7cc;text-align:left;padding:9px 8px;min-height:76px;position:relative}.hand-card>span{display:block;color:#b09b6b;font-size:16px;line-height:1}.hand-card>strong{display:block;font-family:Georgia,serif;font-size:11px;line-height:1.3;margin-top:6px}.hand-card>small{display:block;color:#97d1bb;font-size:7px;margin-top:7px}.hand-card.usable{border-color:#b99c5b;background:linear-gradient(140deg,#30483f,#12323c);box-shadow:0 0 14px #dcb66d0d}.game-sidebar{min-width:0;display:flex;flex-direction:column;gap:16px}.turn-panel{background:linear-gradient(145deg,#163847,#0e2a38);border:1px solid #b69a5457;border-radius:13px;padding:23px 22px;position:relative;min-height:330px;box-shadow:0 10px 25px #0002}.turn-panel h2{font-size:26px;line-height:1.15;color:#f5e6c3}.turn-panel>.muted{font-size:12px}.turn-panel .button{font-size:12px;margin-top:7px}.turn-panel .stack .button{margin-top:0}.turn-panel .stack{margin-top:19px}.turn-panel form label{font-size:11px;margin-top:18px}.turn-panel form input{margin-bottom:5px;font-size:14px}.turn-panel .tiny{margin-bottom:0;margin-top:13px;font-size:10px}.die{width:97px;height:100px;margin:30px auto 31px;position:relative;transform:rotate(-9deg);filter:drop-shadow(0 12px 12px #0005);perspective:400px}.die::before{content:'';position:absolute;inset:0;border-radius:17px;background:#9a7541;transform:translate(5px,8px);border:1px solid #b99653}.die-face{position:absolute;inset:0;background:linear-gradient(145deg,#fff9e7,#ede3c9 70%,#cfb98c);border:2px solid #e1c896;border-radius:16px;box-shadow:inset 3px 3px 3px #fff,inset -3px -3px 3px #cdb481;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:14px;gap:6px}.dot{display:block;border-radius:50%;opacity:0}.dot.on{opacity:1;background:radial-gradient(circle at 30% 28%,#284653,#081e2a);box-shadow:inset 0 2px 2px #0008,0 1px #fff}.rolling{animation:roll .85s ease-in-out}@keyframes roll{0%{transform:rotate(-9deg) translateY(0)}20%{transform:rotate(100deg) translateY(-15px)}55%{transform:rotate(220deg) translateY(-5px)}75%{transform:rotate(320deg) translateY(-9px)}100%{transform:rotate(351deg) translateY(0)}}.number-label{display:inline-block;border:1px solid #c1a56766;border-radius:5px;padding:5px 8px;background:#b6924d18;color:#e6ca8d;font-size:10px;letter-spacing:1px;margin-bottom:17px}.parchment{position:relative;color:#3f392b;border:1px solid #cfb779;background:radial-gradient(ellipse at 30% 20%,#fff4d3,#e5cca0);border-radius:9px;padding:18px 17px;box-shadow:inset 0 0 15px #92602c1f,0 3px 0 #9b743e33;margin:18px 0}.parchment::before,.parchment::after{content:'✦';position:absolute;font-size:9px;color:#ad8844;top:6px;left:8px}.parchment::after{top:auto;left:auto;right:8px;bottom:5px}.parchment p{font-family:Georgia,serif;font-size:15px;line-height:1.6;margin:0}.big-seal,.round-check{height:66px;width:66px;display:grid;place-items:center;margin:1px 0 22px;border:1px solid #d0a76188;border-radius:50%;color:#f2d48a;background:radial-gradient(ellipse at 35% 20%,#345159,#17323e);box-shadow:inset 0 0 0 5px #0e2c3a,0 0 0 1px #d0a76133}.round-check{color:#a9d7bd;border-color:#73b79655}.bonus{color:#edcf8a;background:#cb9b4521;border:1px solid #d5ae5b33;border-radius:7px;padding:9px 12px;font-size:12px!important;margin:15px 0}.waiting-symbol{height:62px;width:62px;display:grid;place-items:center;background:#c8a45d12;color:#dfbf7f;border:1px solid #d8b97545;border-radius:15px;margin-bottom:25px}.room-code-big{font-family:monospace;font-size:35px;color:#f3dca0;text-align:center;letter-spacing:8px;padding:23px 3px 22px}.waiting-note{font-family:Georgia,serif;text-align:center;color:#d6c598;font-size:15px;margin:10px 0}.spectating{display:flex;align-items:center;gap:7px;background:#071f2c55;border:1px solid #6c969435;border-radius:7px;padding:9px;font-size:10px;color:#a9c7c5;margin-bottom:20px}.spectating .pulse-dot{width:5px;height:5px;animation:pulse 2s infinite}@keyframes pulse{50%{opacity:.35}}.journal{background:#0b2633;border:1px solid #6f8d8a25;border-radius:11px;padding:17px 15px}.journal-list{max-height:280px;overflow:auto;scrollbar-width:thin;scrollbar-color:#325260 transparent}.journal-entry{display:grid;grid-template-columns:5px 1fr auto;gap:8px;margin:12px 0;align-items:start}.journal-entry p{font-size:10px;color:#8daab1;line-height:1.5;margin:0}.journal-entry time{font-family:monospace;font-size:8px;color:#526f7a;line-height:1.7}.log-dot{display:block;width:4px;height:4px;margin-top:5px;background:#5c7b83;border-radius:50%}.journal-entry.magic .log-dot,.journal-entry.victory .log-dot{background:#d7b26a}.journal-entry.magic p,.journal-entry.victory p{color:#c6bc93}.journal-entry:first-child p{color:#cbd8d2}.journal-entry.dice .log-dot{background:#8eafc7}.error-box{background:#8b464b26;border:1px solid #cc80836b;color:#f0c2ba;border-radius:8px;padding:11px 13px;font-size:12px;line-height:1.5;margin:15px 0 5px;position:relative}.error-box button{border:0;background:transparent;color:#f5c8b6;float:right;margin-left:5px}.card-art{display:block;width:100px;height:90px;object-fit:contain;float:right;margin:0 -5px 8px 8px}.phoenix-small{height:130px;width:100%;object-fit:contain;margin:-6px 0 15px}.victory-phoenix{width:100%;height:170px;object-fit:contain;filter:drop-shadow(0 0 30px #ffb14c22);margin-bottom:15px}.hint{font-family:Georgia,serif;font-style:italic;color:#ded4b8;font-size:13px;padding-left:12px;border-left:2px solid #c2a36c}.answer-reveal{background:#77a48515;border:1px solid #8db39244;border-radius:8px;padding:11px 13px;margin:18px 0;color:#c7dac9}.answer-reveal strong{display:block;letter-spacing:1px;text-transform:uppercase;font-size:9px;color:#9ac4a9}.answer-reveal p{font-size:13px;margin:7px 0 0}.number-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}.number-choices button{height:55px;border:1px solid #b79b5a99;background:#d6b5741a;color:#f8dfaa;font-family:Georgia,serif;font-size:26px;border-radius:9px}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#02121bd6;backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:22px;overflow:auto}.modal{position:relative;background:linear-gradient(140deg,#193d4c,#0b2835);border:1px solid #caa56388;border-radius:17px;padding:35px;max-width:550px;width:100%;max-height:90svh;overflow:auto;box-shadow:0 30px 120px #0007}.modal h2{color:#f0dab1;font-size:31px;line-height:1.2;padding-right:12px}.modal .muted{font-size:13px}.modal-close{position:absolute;top:13px;right:13px;width:32px;height:32px;display:grid;place-items:center;border:1px solid #91b2b13b;border-radius:50%;background:#0a263580;color:#cbd8d1}.rules-list{padding-left:21px;margin:24px 0}.rules-list li{color:#a9c2c6;font-size:13px;line-height:1.7;padding:0 0 15px 4px}.rules-list strong{color:#e6dcbb}.sketch-modal{max-width:480px}.sketch-modal>img{width:100%;max-height:52svh;object-fit:contain;background:#071e2a;border-radius:8px;margin:8px 0 15px}.spell-modal{max-width:420px;text-align:center}.spell-glyph{color:#e4c784;margin:4px 0 18px}.spell-modal h2{padding-right:0}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1800px){.landing-main{padding-left:9%;padding-right:9%;grid-template-columns:1fr 460px}.hero-copy h1{font-size:120px}}@media(max-width:1150px){.landing-main{gap:5%;padding-left:5%;padding-right:5%;grid-template-columns:1fr 390px}.entry-panel{padding:27px}.hero-copy h1{font-size:84px}.hero-description{font-size:17px}.game-main{padding:17px 15px;gap:15px;grid-template-columns:minmax(0,1fr) 285px}.turn-panel{padding:21px 18px}.player-card{padding:9px 7px;gap:6px}.crest{width:29px;height:35px;font-size:18px}.player-pos{display:none}.player-info>strong{font-size:10px}.below-map{grid-template-columns:1fr}.deck-pile{min-height:62px}.spell-hand{min-height:80px}.in-game .topbar{padding:0 19px}.board-viewport{max-height:calc(100vh - 255px)}}@media(max-width:850px){.topbar{height:69px;padding:0 5%}.brand{font-size:18px;gap:9px}.brand small{font-size:7px;letter-spacing:1.2px}.brand-mark{width:34px;height:38px}.landing-main{min-height:calc(100svh - 69px);padding:47px 7% 95px;gap:38px;grid-template-columns:1fr;align-items:start}.landing-art{background-position:42% center;background-image:linear-gradient(180deg,#071e2a10,#071e2aa0 36%,#071e2a 85%),linear-gradient(90deg,#071e2aaa,transparent),url('/assets/winter.webp')}.hero-copy{max-width:490px}.hero-copy h1{font-size:78px;letter-spacing:-3px;line-height:1.0;margin-top:20px}.hero-description{font-size:17px;max-width:370px}.hero-facts{margin:22px 0 20px;gap:22px}.entry-panel{max-width:490px;width:100%;justify-self:center;padding:28px}.landing-footer{font-size:8px;bottom:23px}.landing-footer span,.landing-footer span+*{display:none}.game-main{grid-template-columns:1fr;padding:14px 11px}.game-sidebar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:13px}.turn-panel{min-height:280px}.turn-panel h2{font-size:24px}.board-viewport{max-height:65vh;min-height:250px}.below-map{grid-template-columns:1fr 1fr}.player-card{min-height:80px}.connection{display:none}.top-actions{gap:8px}.room-pill{padding:8px 10px;font-size:13px}.topbar .icon-button{height:33px;width:33px}.journal-list{max-height:370px}.in-game .brand small{font-size:6px}.in-game .brand{font-size:16px;letter-spacing:1.5px}.in-game .brand-mark{width:29px;height:33px;font-size:20px}.in-game .topbar{height:64px;padding:0 13px}}@media(max-width:540px){.hero-copy .eyebrow{font-size:8px;letter-spacing:1.5px}.hero-copy h1{font-size:69px}.hero-description{font-size:16px}.landing-main{padding:40px 6% 100px;gap:30px}.hero-facts span{font-size:10px}.entry-panel{padding:25px 22px}.entry-panel h2{font-size:24px}.house-picker button small{font-size:7px}.game-sidebar{display:flex}.journal{max-height:235px}.journal-list{max-height:170px}.player-strip{gap:6px;margin-bottom:11px}.player-card{flex-direction:column;text-align:center;padding:7px 3px;gap:5px;min-height:104px}.crest{height:30px;width:28px;font-size:18px}.player-info{width:100%}.player-info>strong{display:block;margin-bottom:5px;font-size:9px;max-width:74px;white-space:nowrap}.player-info>strong small{margin-left:3px;font-size:7px}.player-info>span{justify-content:center;font-size:10px}.seals{justify-content:center;margin-top:4px;gap:2px}.seals>span{margin-left:2px;font-size:8px}.seals b{display:none}.empty-seat{flex-direction:column;text-align:center;font-size:8px;padding:7px 4px;gap:5px}.board-title{font-size:7px;height:31px;letter-spacing:.7px;padding:0 10px}.board-title svg{width:12px}.board-viewport{min-height:220px;max-height:55vh}.below-map{grid-template-columns:1fr;gap:11px;margin-top:12px}.deck-pile{min-height:57px}.deck-pile strong{font-size:10px}.deck-pile small{font-size:8px}.spell-hand{padding:12px}.turn-panel{padding:24px;min-height:0}.turn-panel h2{font-size:27px}.turn-panel>.muted{font-size:13px}.turn-panel .button{min-height:46px;font-size:13px}.turn-panel .parchment p{font-size:16px}.turn-panel .tiny{font-size:11px}.map-tools{right:7px;bottom:7px;gap:1px}.map-tools button{width:26px;height:26px}.map-tools .focus-button{font-size:9px;padding:0 6px}.pawn{width:26px;height:28px;border-width:1.5px}.pawn>span{font-size:17px}.pawn small{top:30px;font-size:6px;padding:2px 3px}.inspect-card{width:230px;left:7px;bottom:46px}.modal{padding:28px 22px}.modal h2{font-size:26px}.modal-backdrop{padding:14px}.brand small{font-size:6px;letter-spacing:1px}.room-pill{letter-spacing:1px;gap:6px}.top-actions .icon-button{width:30px;height:30px}.in-game .brand{font-size:14px}.in-game .brand-mark{display:none}.top-actions{gap:5px}.connection{display:none}.sketch-link{font-size:10px}.landing-footer{display:block;line-height:1.8;max-width:230px}.hand-card>strong{font-size:12px}.hand-card>small{font-size:8px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
