/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:Arial,Helvetica,sans-serif;--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}.lowercase{text-transform:lowercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--background:#07131b;--foreground:#edf0e7;--card:#0d202a;--card-foreground:#edf0e7;--popover:#0d202a;--popover-foreground:#edf0e7;--primary:#d8aa68;--primary-foreground:#132029;--secondary:#18313b;--secondary-foreground:#edf0e7;--muted:#17303a;--muted-foreground:#91a5aa;--accent:#1c3942;--accent-foreground:#edf0e7;--destructive:#f18a75;--border:#ffffff24;--input:#ffffff30;--ring:#dbad71;--radius:.35rem}*{box-sizing:border-box}html{min-width:320px}body{color:#edf0e7;background:#07131b;margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.42;cursor:not-allowed}:is(button:focus-visible,input:focus-visible){outline-offset:3px;outline:2px solid #e6be83}.app-shell{background:radial-gradient(circle at 15% -30%,#1b3b46 0,#0000 40%),#07131b;min-height:100vh}.topbar{background:#091820ed;border-bottom:1px solid #ffffff23;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(20px,4vw,70px);display:flex}.brand{color:#f5e5c7;letter-spacing:.12em;align-items:center;gap:12px;font-family:Georgia,serif;font-size:21px;font-weight:700;display:flex}.brand-mark{color:#e9c58a;border:1px solid #bb9665;place-items:center;width:37px;height:37px;font-size:28px;line-height:1;display:grid}.brand small{letter-spacing:.23em;color:#9bb2b7;border-left:1px solid #4e6569;margin-left:3px;padding-left:13px;font:600 10px Arial}.top-actions{align-items:center;gap:14px;display:flex}.room-pill{background:#162b34;border:1px solid #68818475;border-radius:4px;align-items:center;gap:11px;padding:6px 6px 6px 14px;display:flex}.room-pill span{letter-spacing:.15em;color:#a7bcc0;font-size:10px}.room-pill strong{letter-spacing:.17em;color:#f3d09a;font-size:15px}.room-pill button,.icon-button{color:#e5decd;background:#ffffff14;border:0;border-radius:3px;place-items:center;min-width:34px;height:32px;display:grid}.icon-button{border:1px solid #ffffff25}.muted{opacity:.45}.entry{grid-template-columns:minmax(0,1.6fr) minmax(345px,.72fr);max-width:1500px;min-height:calc(100vh - 72px);margin:auto;display:grid}.cover{background:url(/fjordfall-cover-art.webp) 50%/cover no-repeat;min-height:650px;position:relative;overflow:hidden}.cover-shade{background:linear-gradient(90deg,#07131bbf 0,#06121b35 56%,#07131b55 100%),linear-gradient(#0000 63%,#06141dd9);position:absolute;inset:0}.cover-copy{text-shadow:0 3px 18px #03131b;padding-right:20px;position:absolute;top:15%;left:7%}.eyebrow{letter-spacing:.19em;color:#d6af78;margin:0 0 12px;font-size:12px;font-weight:700}.cover h1{letter-spacing:.055em;color:#fff3dc;text-shadow:0 8px 25px #07131b;margin:0;font:700 clamp(58px,7vw,117px)/.95 Georgia,Times New Roman,serif}.cover-line{color:#f4e4ca;margin:23px 0 0;font:italic clamp(20px,2vw,30px) Georgia,serif}.cover-bottom{letter-spacing:.19em;color:#e2d4ba;border-top:1px solid #e7dfc47a;justify-content:space-between;padding-top:17px;font-size:11px;font-weight:700;display:flex;position:absolute;bottom:35px;left:7%;right:5%}.cover-bottom span{color:#e0b576;font-size:19px}.join-panel{background:linear-gradient(150deg,#122d36,#081720 72%);border-left:1px solid #809b996b;flex-direction:column;justify-content:center;padding:clamp(30px,5vw,76px) clamp(28px,4vw,67px);display:flex}.panel-heading{margin-bottom:40px}.ornament{color:#d8aa68;font-size:26px}.panel-heading .eyebrow{margin:14px 0}.panel-heading h2,.side-panel h2{color:#f6ebd6;margin:0 0 10px;font:400 clamp(31px,3vw,42px) Georgia,serif}.panel-heading p:last-child{color:#b8c9c7;margin:0;font-size:16px;line-height:1.5}.join-panel label{color:#d5b784;letter-spacing:.18em;margin:0 0 10px;font-size:11px;font-weight:700}.join-panel input{color:#fff4db;background:#071821;border:1px solid #708d8b6b;border-radius:3px;width:100%;height:52px;padding:0 16px;font-size:16px}.join-panel input::placeholder{color:#708d91}.primary-button{color:#0a1c24;background:#ddae6c;border:1px solid #f2cb91;border-radius:3px;justify-content:space-between;align-items:center;height:54px;margin-top:16px;padding:0 18px;font-weight:800;display:flex}.primary-button span{font-size:25px;font-weight:400}.primary-button:hover:enabled{background:#efc88a}.divider{text-align:center;color:#91a6a7;letter-spacing:.12em;margin:34px 0 28px;font-size:11px;font-weight:700;position:relative}.divider:before{content:"";border-top:1px solid #ffffff30;position:absolute;top:50%;left:0;right:0}.divider span{background:#0b2029;padding:0 13px;position:relative}.join-line{gap:8px;display:flex}.join-line input{letter-spacing:.17em;flex:1;min-width:0}.join-line button{color:#f6e3c4;white-space:nowrap;background:#263b40;border:1px solid #b7a883;border-radius:3px;padding:0 18px;font-size:14px;font-weight:700}.join-line button:hover:enabled{background:#39515a}.error{color:#ffad9c;margin:15px 0 0;font-size:14px}.tiny-note{color:#a8b9b7;align-items:center;gap:8px;margin:30px 0 0;font-size:13px;line-height:1.5;display:flex}.game-layout{grid-template-columns:minmax(0,1fr) 335px;max-width:1600px;min-height:calc(100vh - 72px);margin:auto;display:grid}.play-column{min-width:0;padding:30px clamp(16px,3vw,48px) 40px}.chapter-line{justify-content:space-between;align-items:center;min-height:110px;margin-bottom:17px;display:flex}.chapter-line h1{color:#fff2d7;margin:0 0 6px;font:400 clamp(30px,3.7vw,52px) Georgia,serif}.chapter-line p:last-child{color:#abc1c3;margin:0;font-size:15px}.chapter-sep{color:#709092;margin:0 10px}.stage-count{color:#d3a76c;white-space:nowrap;font:46px Georgia,serif}.stage-count small{color:#829ba0;font:16px Arial}.arena{isolation:isolate;aspect-ratio:1.75;border:1px solid #78919583;width:100%;min-height:380px;max-height:680px;transition:background 1s;position:relative;overflow:hidden;box-shadow:0 25px 65px #010b11b9,inset 0 0 90px #06131c}.arena:before{content:"";z-index:-1;opacity:.5;background:repeating-linear-gradient(110deg,#0000 0 75px,#ffffff08 76px 77px),radial-gradient(circle at 52% 51%,#ffffff0b 0 1px,#0000 2px) 0 0/30px 30px;position:absolute;inset:0}.arena:after{content:"";pointer-events:none;background:linear-gradient(#06151d81,#0000 25% 75%,#0817219c),radial-gradient(at 50% 48%,#0000 37%,#06131ca8 100%);position:absolute;inset:0}.arena.isles{background:radial-gradient(at 25% 40%,#577268 0 14%,#0000 15%),radial-gradient(at 65% 57%,#627869 0 23%,#0000 24%),linear-gradient(155deg,#163e4b,#256273 50%,#0b3444)}.arena.falls{background:radial-gradient(at 20% 60%,#777d75 0 15%,#0000 16%),radial-gradient(at 68% 42%,#627c77 0 26%,#0000 27%),linear-gradient(135deg,#52798b,#acc0bb 55%,#314f60)}.arena.sea{background:radial-gradient(at 25% 70%,#3b6262 0 12%,#0000 13%),radial-gradient(at 69% 51%,#487174 0 19%,#0000 20%),repeating-linear-gradient(170deg,#1c6071 0 29px,#225669 30px 56px,#164455 57px 78px)}.arena.deep{background:radial-gradient(at 35%,#3b746c 0 15%,#0000 16%),radial-gradient(at 73% 55%,#32665f 0 19%,#0000 20%),linear-gradient(140deg,#0a3549,#166c70 55%,#0a2c42)}.arena.dragon{background:radial-gradient(at 37% 70%,#64585a 0 24%,#0000 25%),radial-gradient(at 73% 43%,#6c5149 0 27%,#0000 28%),linear-gradient(135deg,#263c4d,#795658 65%,#2e323e)}.terrain{filter:blur(1px);border:2px solid #dfd8b530;border-radius:48%;position:absolute;transform:rotate(-14deg);box-shadow:0 0 36px #001b2988}.terrain-a{width:34%;height:31%;top:29%;left:8%}.terrain-b{width:40%;height:38%;top:33%;right:8%}.terrain-c{width:17%;height:14%;bottom:12%;left:43%}.falls .terrain,.dragon .terrain{border-style:dashed}.sea .terrain,.deep .terrain{border-color:#78dcd44f}.map-rune{color:#dece9a5c;font:48px Georgia;position:absolute;transform:rotate(-10deg)}.rune-a{top:53%;left:15%}.rune-b{top:19%;right:13%}.arena-corner{z-index:3;color:#efe7cf8c;letter-spacing:.2em;font-size:10px;font-weight:700;position:absolute}.top-left{top:19px;left:20px}.bottom-right{font-size:17px;bottom:16px;right:20px}.arena-corner span{color:#b7c5c0a1}.player-token,.monster,.npc{z-index:4;white-space:nowrap;flex-direction:column;align-items:center;display:flex;position:absolute;transform:translate(-50%,-50%)}.player-helm{border:2px solid var(--player-color);width:42px;height:42px;color:var(--player-color);background:#122731;border-radius:50%;place-items:center;font:27px Georgia;display:grid;box-shadow:0 0 0 5px #0a1a206b,0 8px 18px #07141b}.player-token.self .player-helm{color:#fff5da;background:#795e3a;box-shadow:0 0 0 6px #efc17d48,0 0 20px #e6b56b}.player-token small,.monster small,.npc small{color:#fff0d6;letter-spacing:.035em;text-shadow:0 1px 3px #000;background:#07171dd9;border-radius:2px;margin-top:7px;padding:4px 7px;font-size:12px;font-weight:700}.npc{z-index:2;left:34%}.npc-one{top:65%}.npc-two{top:35%;left:41%}.npc span{color:#f5d399;background:#283f47;border:1px solid #d0ba82;border-radius:50%;place-items:center;width:35px;height:35px;font-size:20px;display:grid}.npc small{color:#c8d6c7;font-size:10px}.monster{z-index:3}.monster-aura{border:2px solid #f0a1668c;border-radius:50%;width:100px;height:100px;animation:2.5s infinite pulse;position:absolute;top:-21px;box-shadow:0 0 40px #e98b55aa,inset 0 0 25px #e7945f77}.monster-glyph{color:#f7c598;background:#54392f;border:2px solid #edb07d;border-radius:50%;place-items:center;width:59px;height:59px;font:39px Georgia;display:grid;box-shadow:0 0 26px #e98158}.monster-4 .monster-glyph{background:#6a332a;width:78px;height:78px;font-size:57px}.monster-4 .monster-aura{width:132px;height:132px;top:-28px}.monster small{color:#ffdbab;text-transform:uppercase;letter-spacing:.1em}.victory{z-index:5;text-align:center;color:#f4ddae;background:#091a22d9;border:1px solid #d9ad74;width:min(400px,80%);padding:28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 60px #031017}.victory span{font-size:33px}.victory h2{margin:6px;font:44px Georgia}.victory p{color:#d1ded8;font-size:15px}@keyframes pulse{50%{opacity:.5}}.under-arena{border-bottom:1px solid #ffffff24;justify-content:space-between;align-items:center;gap:20px;padding:18px 4px;display:flex}.battle-status{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.status-icon{color:#ffcc9b;background:#7b4b33;flex:none;place-items:center;width:37px;height:37px;display:grid}.battle-status strong{color:#f7e8cc;font:17px Georgia}.battle-status small{letter-spacing:.14em;color:#b9a18a;margin-top:4px;font-size:10px;display:block}.health-track{background:#543e39;border-radius:10px;width:min(210px,25%);height:8px;margin-left:12px;overflow:hidden}.health-track span{background:linear-gradient(90deg,#ad6147,#e7a574);height:100%;transition:width .25s;display:block}.battle-status b{color:#e8bd86;white-space:nowrap;font-size:13px}.control-bar{gap:20px;display:flex}.key-hint{align-items:center;gap:3px;display:flex}.key-hint kbd{color:#cfddd7;text-align:center;background:#233942;border:1px solid #71868a;border-radius:3px;min-width:21px;height:23px;padding:0 4px;font-size:11px;font-weight:700;line-height:21px}.key-hint span{color:#9ab0b2;letter-spacing:.09em;margin-left:5px;font-size:10px}.touch-controls{justify-content:space-between;align-items:end;margin-top:20px;display:flex}.dpad{flex-direction:column;align-items:center;gap:4px;display:flex}.dpad>div{gap:4px;display:flex}.dpad button,.attack-button{color:#f2dbc0;background:#243c44;border:1px solid #8da4a263;border-radius:4px;place-items:center;width:43px;height:40px;display:grid}.dpad button:hover,.attack-button:hover{background:#36535b}.attack-button{letter-spacing:.08em;background:#815235;border-color:#e0a978;gap:10px;width:auto;height:52px;padding:0 23px;font-weight:800;display:flex}.side-panel{background:#0e222b;border-left:1px solid #ffffff26;flex-direction:column;min-width:0;display:flex}.side-section{border-bottom:1px solid #ffffff20;padding:28px 26px}.side-title{color:#c8a779;letter-spacing:.15em;justify-content:space-between;align-items:center;margin-bottom:19px;font-size:11px;font-weight:700;display:flex}.side-panel h2{margin-bottom:7px;font-size:27px}.side-sub{color:#9eb4b5;margin:0 0 24px;font-size:13px;line-height:1.5}.side-sub strong{color:#e1bc87;letter-spacing:.09em}.crew-list{flex-direction:column;gap:5px;display:flex}.crew-row{background:#ffffff09;align-items:center;gap:12px;padding:10px 8px;display:flex}.crew-row.offline{opacity:.5}.crew-avatar{background:#19333c;border:1px solid #ffffff38;flex:none;place-items:center;width:33px;height:33px;font:24px Georgia;display:grid}.crew-row>div{flex:1;min-width:0}.crew-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.crew-row small{color:#a4b8ba;margin-top:3px;font-size:12px;display:block}.live-dot{background:#9fd3a3;border-radius:50%;width:7px;height:7px;box-shadow:0 0 7px #9fd3a3}.live-dot.idle{box-shadow:none;background:#788c8d}.invite-button{color:#eed1a5;background:0 0;border:1px solid #a18b6e;justify-content:center;align-items:center;gap:8px;width:100%;height:39px;margin-top:17px;font-size:13px;font-weight:700;display:flex}.invite-button:hover{background:#ffffff13}.quest-section{padding-top:25px}.quest-list{margin:18px 0 0;padding:0;list-style:none}.quest-list li{color:#789094;align-items:center;gap:14px;padding:8px 0 15px;display:flex;position:relative}.quest-list li:not(:last-child):after{content:"";background:#51646a;width:1px;position:absolute;top:37px;bottom:-4px;left:15px}.quest-index{border:1px solid #50646b;flex:none;place-items:center;width:31px;height:31px;font-size:11px;font-weight:700;display:grid}.quest-list strong{color:#a4b1af;font-size:13px;display:block}.quest-list small{letter-spacing:.07em;font-size:10px}.quest-list .current .quest-index{color:#0a1820;background:#b48956;border-color:#e4b775}.quest-list .current strong,.quest-list .done strong{color:#f2e4cb}.quest-list .done .quest-index{color:#a4d4b1;border-color:#729c84}.allies{color:#d9b982;gap:12px;padding:22px 26px;display:flex}.allies>span{font-size:23px}.allies strong{letter-spacing:.13em;font-size:11px}.allies p{color:#a9c0bf;margin:5px 0;font-size:13px;line-height:1.45}.side-footer{color:#8da6a8;border-top:1px solid #ffffff20;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding:19px 26px;font-size:12px;display:flex}.side-footer button{color:#e2bd89;white-space:nowrap;background:0 0;border:0;text-decoration:underline}.toast{z-index:10;color:#0c1d25;text-align:center;background:#e7bc82;max-width:90vw;padding:13px 22px;font-size:14px;font-weight:700;position:fixed;bottom:27px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0009}@media (max-width:1100px){.entry{grid-template-columns:1.2fr 1fr}.brand small{display:none}.game-layout{grid-template-columns:minmax(0,1fr) 285px}.side-section{padding:22px 16px}.control-bar{display:none}.arena{min-height:330px}}@media (max-width:760px){.topbar{height:62px;padding:0 15px}.brand{gap:8px;font-size:17px}.brand-mark{width:31px;height:31px;font-size:23px}.entry{flex-direction:column;display:flex}.cover{background-position:50%;min-height:330px}.cover-copy{top:18%;left:7%}.cover h1{font-size:55px}.cover-line{margin-top:13px;font-size:18px}.cover-bottom{font-size:9px;bottom:18px}.join-panel{padding:29px 24px 35px}.panel-heading{margin-bottom:27px}.divider{margin:25px 0}.game-layout{flex-direction:column;display:flex}.play-column{padding:17px 14px}.chapter-line{min-height:90px}.chapter-line h1{font-size:30px}.stage-count{font-size:31px}.arena{aspect-ratio:1.25;min-height:300px}.player-helm{width:34px;height:34px;font-size:22px}.monster-glyph{width:49px;height:49px;font-size:30px}.monster-aura{width:82px;height:82px;top:-16px}.monster-4 .monster-glyph{width:62px;height:62px}.monster-4 .monster-aura{width:105px;height:105px;top:-20px}.player-token small,.monster small{font-size:10px}.under-arena{padding:15px 0}.battle-status{gap:8px}.health-track{width:20%;margin-left:0}.side-panel{border-top:1px solid #ffffff32;border-left:0}.side-section{padding:24px}.quest-list{grid-template-columns:repeat(2,1fr);gap:0 14px;display:grid}.quest-list li:after{display:none}}@media (max-width:430px){.room-pill span{display:none}.room-pill{gap:5px;padding-left:8px}.cover h1{font-size:46px}.cover{min-height:285px}.arena{min-height:280px}.chapter-line p:last-child{font-size:13px}.quest-list{grid-template-columns:1fr}.top-left{font-size:8px}.battle-status b{font-size:11px}}@media (prefers-reduced-motion:reduce){.monster-aura{animation:none}*{scroll-behavior:auto!important}}.lobby-layout{grid-template-columns:minmax(0,1.3fr) minmax(355px,.75fr);max-width:1500px;min-height:calc(100vh - 72px);margin:auto;display:grid}.lobby-art{background:url(/fjordfall-cover-art.webp) 50%/cover;min-height:650px;position:relative}.lobby-art-copy{z-index:1;text-shadow:0 2px 12px #000;position:absolute;bottom:9%;left:7%;right:7%}.lobby-art-copy h1{color:#fff3da;margin:0 0 12px;font:400 clamp(42px,5vw,75px) Georgia,serif}.lobby-art-copy p:not(.eyebrow){color:#e7dbc9;font-size:18px}.lobby-art-copy .invite-button{background:#0b2428bb;width:220px}.lobby-panel{background:linear-gradient(150deg,#15333d,#081720 80%);border-left:1px solid #809b996b;padding:clamp(25px,4vw,58px)}.lobby-panel h2{color:#f6e7ce;margin:8px 0 10px;font:400 36px Georgia,serif}.lobby-intro{color:#b3c7c5;font-size:15px;line-height:1.5}.lobby-roster{border-top:1px solid #ffffff2b;max-height:320px;margin:25px 0 17px;overflow:auto}.lobby-player{border-bottom:1px solid #ffffff1c;align-items:center;gap:12px;padding:9px 3px;display:flex}.lobby-player strong{color:#f7e9d0;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;overflow:hidden}.lobby-player small{letter-spacing:.1em;color:#d7b27e;font-size:10px}.ready-button{color:#eed3a8;background:#263b40;border:1px solid #a8906b;width:100%;height:43px;font-weight:700}.mode-controls{gap:9px;margin:27px 0;display:grid}.mode-controls label{letter-spacing:.15em;color:#d1ab78;margin-top:7px;font-size:11px;font-weight:700}.mode-controls select{color:#f8e7ca;background:#0a1d25;border:1px solid #73908a;border-radius:2px;width:100%;height:45px;padding:0 12px;font-size:15px}.mode-controls select:disabled{opacity:.6}.lobby-panel .primary-button{width:100%}.waiting{color:#cbb99a;margin:20px 0;font:italic 17px Georgia}.leave-link{color:#c8b396;background:0 0;border:0;margin:20px 0 0;padding:0;font-size:13px;text-decoration:underline;display:block}.player-token.downed .player-helm{color:#ffb49f;background:#542c30;border-color:#ff9a86;box-shadow:0 0 0 5px #401c2499}.player-token.downed small{color:#ffb8a9}.rune-gate{z-index:3;white-space:nowrap;flex-direction:column;align-items:center;display:flex;position:absolute;transform:translate(-50%,-50%)}.rune-gate span{color:#e6ffed;background:#2a83787a;border:3px solid #a9e6d2;border-radius:45% 45% 10% 10%;place-items:center;width:64px;height:80px;font:48px Georgia;animation:2s infinite pulse;display:grid;box-shadow:0 0 27px #91ffe2}.rune-gate small{color:#e1f8df;background:#071a1bd9;margin-top:7px;padding:4px;font-size:10px;font-weight:700}.victory button{color:#10242b;background:#bd905b;border:1px solid #efca93;margin-top:13px;padding:12px 15px;font-size:12px;font-weight:800}.touch-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.touch-actions>button:not(.attack-button){color:#e7f4dc;background:#294a50;border:1px solid #a4c4b2;border-radius:3px;height:44px;padding:0 11px;font-size:12px;font-weight:700}.touch-actions>button:disabled{opacity:.4}@media (max-width:900px){.lobby-layout{flex-direction:column;display:flex}.lobby-art{min-height:360px}.lobby-panel{padding:30px 24px}.lobby-art-copy h1{font-size:45px}}@media (max-width:530px){.lobby-art{min-height:250px}.lobby-art-copy h1{font-size:33px}.lobby-art-copy p:not(.eyebrow){font-size:14px}.touch-controls{align-items:center}.touch-actions{max-width:180px}.touch-actions>button{flex:1}.touch-actions .attack-button{justify-content:center;width:100%;height:47px}.lobby-panel h2{font-size:30px}}.combat-hud{z-index:6;color:#f4e5c7;pointer-events:none;background:#071923db;border:1px solid #c3aa77a8;width:181px;padding:9px 11px;position:absolute;top:13px;right:14px;box-shadow:0 8px 24px #00101b88}.hud-label,.hud-points{letter-spacing:.05em;align-items:center;gap:5px;font-size:10px;font-weight:800;display:flex}.hud-label b{color:#f7c794;white-space:nowrap;margin-left:auto}.hud-track,.roster-health,.token-health{background:#352c32;border-radius:8px;overflow:hidden}.hud-track{height:8px;margin:7px 0}.hud-track span,.roster-health span,.token-health span{background:linear-gradient(90deg,#9bd4ae,#dbf0b9);height:100%;transition:width .25s;display:block}.hud-points{color:#f8c77e}.hud-points span{color:#a7c1bd}.token-health{width:60px;height:5px;margin-top:4px;box-shadow:0 1px 5px #061019}.enemy-health{background:#321b20;width:78px;height:7px}.enemy-health span{background:linear-gradient(90deg,#d77055,#ffd28a)}.token-hp{color:#f8e6c4;text-shadow:0 1px 3px #000;background:#071923b9;border-radius:2px;margin-top:2px;padding:2px 4px;font-size:10px;line-height:1}.impact-burst{z-index:8;color:#fff7cf;text-shadow:0 2px 5px #6d1c19,0 0 15px #ff5c2e;pointer-events:none;white-space:nowrap;flex-direction:column;align-items:center;font:900 29px Georgia,serif;animation:1.4s ease-out both hit-float;display:flex;position:absolute;transform:translate(-50%,-115%)}.impact-burst small{letter-spacing:.18em;color:#ffcb79;font:800 10px Arial,sans-serif}.impact-burst.enemy-impact{color:#ffb2a0;text-shadow:0 2px 5px #4f0d16,0 0 15px #fb4a3f}.impact-burst.enemy-impact small{color:#ffd7c3}@keyframes hit-float{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}20%{opacity:1;transform:translate(-50%,-125%)scale(1.15)}to{opacity:0;transform:translate(-50%,-240%)scale(1)}}.dpad p{color:#a9c0be;letter-spacing:.11em;align-self:flex-start;margin:0 0 6px;font-size:10px;font-weight:800}.dpad button{touch-action:manipulation;position:relative}.dpad button small{color:#e8bd8a;font-size:9px;position:absolute;bottom:1px;right:3px}.dpad button:disabled,.touch-actions button:disabled{opacity:.42;cursor:not-allowed}.touch-actions kbd{color:#ffebcf;border:1px solid #e0d6bf79;border-radius:3px;padding:2px 4px;font-size:10px}.touch-actions>button:not(.attack-button){justify-content:center;align-items:center;gap:6px;min-width:128px;display:flex}.touch-actions>button span{font-size:22px;line-height:1}.touch-actions .attack-button{justify-content:center;min-width:132px}.touch-controls{touch-action:manipulation}.roster-health{height:4px;margin-top:5px}.crew-row>div .roster-health{width:100%}.results-card{background:linear-gradient(135deg,#213b3b,#10242d 55%,#29332d);border:1px solid #c8a5778c;margin-top:20px;padding:20px 22px 16px;box-shadow:0 15px 40px #0310179a}.results-heading{border-bottom:1px solid #dfc79b4a;justify-content:space-between;align-items:center;gap:15px;padding-bottom:13px;display:flex}.results-heading .eyebrow{margin:0 0 4px}.results-heading h2{color:#fff0d0;align-items:center;gap:9px;margin:0;font:28px Georgia,serif;display:flex}.results-heading h2 svg{color:#e8bd71}.results-heading>strong{letter-spacing:.1em;color:#f9c778;white-space:nowrap;font-size:13px}.results-list{max-height:360px;overflow:auto}.results-row{border-bottom:1px solid #cde1d824;grid-template-columns:35px minmax(0,1fr) 170px 85px;align-items:center;gap:10px;padding:11px 6px;display:grid}.results-row.my-result{background:#efbd7640}.results-row .rank{color:#ffd27d;text-align:center;font:23px Georgia,serif}.results-row strong{color:#f2e5ca;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.results-row small{color:#aac2bf}.results-row b{color:#f9d397;text-align:right}.score-note{color:#a7bdba;margin:11px 0 0;font-size:11px;line-height:1.5}@media (max-width:760px){.combat-hud{width:146px;padding:7px;top:9px;right:9px}.hud-label,.hud-points{font-size:9px}.hud-points span{display:none}.token-health{width:49px}.results-heading h2{font-size:23px}.results-heading>strong{font-size:11px}.results-row{grid-template-columns:30px minmax(0,1fr) 65px;gap:7px}.results-row small{grid-area:2/2;margin-top:-8px}.results-row b{grid-area:1/3/3;font-size:12px}.results-card{padding:16px 12px}.touch-actions>button:not(.attack-button){min-width:0}}@media (max-width:430px){.touch-actions{gap:5px;max-width:191px}.touch-actions>button:not(.attack-button){height:39px;padding:0 5px;font-size:11px}.touch-actions kbd{font-size:9px}.dpad button{width:40px;height:39px}.combat-hud{width:129px}.hud-label b{font-size:9px}.results-heading{flex-direction:column;align-items:start;gap:7px}}@media (prefers-reduced-motion:reduce){.impact-burst{opacity:1;animation:none}}.cover{background-color:#06141d;background-size:contain}@media (min-width:761px){html,body{height:100%;overflow:hidden}.app-shell{height:100dvh;min-height:0;overflow:hidden}.entry,.lobby-layout,.game-layout{height:calc(100dvh - 72px);min-height:0}.cover,.lobby-art{min-height:0}.game-layout{overflow:hidden}.play-column{flex-direction:column;min-height:0;padding:14px clamp(16px,2.2vw,34px);display:flex}.chapter-line{flex:none;min-height:72px;margin-bottom:10px}.chapter-line h1{font-size:clamp(28px,3vw,42px)}.arena{aspect-ratio:auto;flex:1;min-height:280px;max-height:none}.under-arena{flex:none;padding:10px 4px}.touch-controls{flex:none;margin-top:10px}.dpad button{width:38px;height:34px}.attack-button{height:44px}.touch-actions>button:not(.attack-button){height:38px}.side-panel{height:100%;overflow:hidden}.side-section{padding:16px 20px}.side-title{margin-bottom:10px}.side-panel h2{font-size:23px}.side-sub{margin-bottom:12px}.crew-row{padding:7px 6px}.invite-button{margin-top:10px}.quest-section{padding-top:14px}.quest-list{margin-top:9px}.quest-list li{padding:5px 0 9px}.quest-list li:not(:last-child):after{top:34px;bottom:-2px}.allies{padding:11px 20px}.side-footer{padding:10px 20px}}.longship-passage{z-index:12;color:#fff1cf;text-align:center;text-shadow:0 2px 12px #00141d;pointer-events:none;background:radial-gradient(circle at 50% 62%,#2e7881dd,#061824f2 72%);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;animation:2.6s both longship-passage;display:flex;position:absolute;inset:0}.longship-passage:before,.longship-passage:after{content:"";background:repeating-radial-gradient(at 50% 100%,#a9e6df99 0 5px,#4d9eaa77 6px 14px,#0000 15px 28px);height:22%;animation:1.1s ease-in-out infinite alternate longship-wave;position:absolute;bottom:8%;left:-15%;right:-15%}.longship-passage:after{opacity:.55;animation-delay:-.55s;bottom:0}.longship-mark{z-index:1;filter:drop-shadow(0 10px 13px #00131c);font-size:clamp(70px,12vw,140px);animation:2.6s ease-in-out both longship-sail;position:relative}.longship-passage strong,.longship-passage small{z-index:1;position:relative}.longship-passage strong{letter-spacing:.13em;font:700 clamp(24px,4vw,48px) Georgia,serif}.longship-passage small{color:#bce7df;letter-spacing:.06em;max-width:640px;font-size:clamp(11px,1.5vw,16px)}.arena.dragon-phase-1{box-shadow:inset 0 0 70px #d98f4552}.arena.dragon-phase-2{box-shadow:inset 0 0 90px #75caff70}.arena.dragon-phase-3{box-shadow:inset 0 0 110px #ef553177}.monster-4.dragon-phase-1 .monster-aura{border-color:#ffbd6d;box-shadow:0 0 35px #ff8a39}.monster-4.dragon-phase-2 .monster-aura{border-color:#9edfff;animation-duration:.75s;box-shadow:0 0 42px #5cc9ff}.monster-4.dragon-phase-3 .monster-aura{border-color:#ff8a68;animation-duration:.45s;box-shadow:0 0 52px #ff3c21}.monster-4.dragon-phase-2 .monster-glyph{color:#d8f6ff;text-shadow:0 0 18px #5ed7ff}.monster-4.dragon-phase-3 .monster-glyph{color:#ffe0c4;text-shadow:0 0 22px #ff4b28}@keyframes longship-passage{0%{opacity:0}12%,78%{opacity:1}to{opacity:0}}@keyframes longship-sail{0%{transform:translate(-45vw)rotate(-6deg)}50%{transform:translate(0)rotate(3deg)}to{transform:translate(45vw)rotate(-4deg)}}@keyframes longship-wave{to{transform:translateY(9px)scaleX(1.06)}}@media (prefers-reduced-motion:reduce){.longship-passage,.longship-mark,.longship-passage:before,.longship-passage:after{animation:none}}
