:root{font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e9e3d9;background:#090b0e;font-synthesis:none;--gold:#c6a879;--goldBright:#ebc58d;--line:rgba(197,165,117,.18);--mute:#918b86;--dark:#100f10}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;padding:0;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.36}input{outline:none}button:focus-visible,input:focus-visible{outline:2px solid #d4b27a;outline-offset:3px}.app-shell{position:relative;width:100%;height:100%;min-height:500px;isolation:isolate;overflow:hidden;background:#07090b}.world-canvas{position:absolute;inset:0;z-index:0}.world-canvas canvas{outline:none}.screen-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 66% 48%,transparent 12%,rgba(2,3,4,.2) 63%,rgba(4,5,7,.48) 100%),linear-gradient(90deg,rgba(6,7,10,.97) 0%,rgba(7,8,10,.92) 22%,rgba(7,8,10,.56) 40%,transparent 65%)}.app-shell--in-game .screen-vignette{background:radial-gradient(ellipse at 50% 48%,transparent 42%,rgba(2,3,4,.33) 93%),linear-gradient(90deg,rgba(4,5,7,.55),transparent 24%,transparent 73%,rgba(4,5,7,.55));pointer-events:none}.topbar{position:absolute;z-index:15;top:0;left:0;right:0;height:84px;padding:0 clamp(20px,3.3vw,56px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(210,186,149,.1);background:linear-gradient(180deg,#07080bb8,#07080b14);pointer-events:none}.topbar>*{pointer-events:auto}.wordmark{display:flex;align-items:center;gap:12px;border:0;background:none;padding:0;text-align:left}.mark-icon{width:46px;height:46px;border:1px solid rgba(216,183,128,.46);display:grid;place-items:center;color:var(--goldBright);position:relative;transform:rotate(45deg);box-shadow:0 0 25px #b3784117 inset}.mark-icon svg{transform:rotate(-45deg)}.mark-dot{position:absolute;right:-2px;bottom:-2px;width:5px;height:5px;background:#e6b77e}.wordmark-copy{display:flex;flex-direction:column;gap:1px;margin-left:3px}.wordmark-copy strong{font-family:"Noto Serif SC",serif;font-size:22px;letter-spacing:.34em;color:#eee2ca;font-weight:700;white-space:nowrap}.wordmark-copy small{font-family:Georgia,serif;font-size:9px;letter-spacing:.23em;color:#a38b70;white-space:nowrap}.topbar-center{display:flex;align-items:center;gap:20px;color:#796f68;letter-spacing:.27em;font-family:Georgia,serif;font-size:10px;opacity:.9}.topbar-sigil{font-size:13px;color:#b39871}.topbar-actions{display:flex;align-items:center;gap:12px}.header-link,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;background:transparent;color:#aba39a;transition:color .18s,background .18s}.header-link{font-size:12px;letter-spacing:.09em;padding:12px}.icon-button{width:38px;height:38px;border:1px solid rgba(182,154,119,.15);border-radius:3px;position:relative}.header-link:hover,.icon-button:hover{color:#f1d5a7;background:#be9f6817}.tiny-status{position:absolute;right:4px;top:4px;width:5px;height:5px;background:#d9a66d;border-radius:50%}.landing-panel{position:absolute;z-index:7;left:clamp(30px,6.2vw,118px);top:clamp(110px,16.6vh,175px);width:min(510px,40vw);max-height:calc(100% - 135px);overflow-y:auto;scrollbar-width:none;padding:0 8px 12px 0}.landing-panel::-webkit-scrollbar{display:none}.landing-eyebrow,.rules-eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.18em;font-weight:600;color:#c29b6e;font-family:Georgia,Noto Sans SC,sans-serif}.animated-red-dot{width:7px;height:7px;border-radius:50%;background:#ad5145;box-shadow:0 0 0 3px #b4433a26,0 0 19px #bd4d41;animation:glow 2s infinite}.eyebrow-num{margin-left:auto;color:#766451}.hero-ornament{font-family:"Noto Serif SC",serif;letter-spacing:.7em;color:#6e5d4b;font-size:11px;margin-top:28px}.hero-title{font-family:"Noto Serif SC",serif;font-size:clamp(85px,8vw,136px);line-height:1.1;letter-spacing:.07em;color:#f0e7d9;margin:5px 0 0;font-weight:900;text-shadow:0 9px 40px #000}.hero-title span{color:#cbb492}.hero-title i{font-style:normal;color:#8a3430;font-size:.7em;margin-left:-.12em}.hero-en{font-family:Georgia,Times New Roman,serif;font-size:13px;letter-spacing:.25em;color:#a8987f;margin:8px 0 31px}.hero-en span{color:#bc5247;margin:0 7px}.hero-rule{width:245px;height:1px;background:linear-gradient(90deg,#c3a679,rgba(209,182,140,.16),transparent);margin-bottom:25px}.hero-statement{font-family:"Noto Serif SC",serif;font-weight:600;font-size:clamp(19px,1.78vw,26px);line-height:1.75;margin:0 0 17px;color:#eee3d4;letter-spacing:.045em}.hero-statement em{font-style:normal;color:#caa77f}.hero-description{font-size:12px;color:#aba39a;line-height:2.15;letter-spacing:.065em;margin:0 0 27px}.intro-actions{max-width:395px}.input-label{font-family:Georgia,Noto Sans SC,sans-serif;font-size:10px;color:#8e7c66;letter-spacing:.16em;display:block;margin-bottom:9px}.name-input{display:block;width:100%;height:42px;background:#181717e0;border:1px solid rgba(204,169,117,.18);padding:0 14px;color:#e9dfce;font-size:13px;transition:border-color .2s}.name-input:focus,.join-line input:focus{border-color:#af895b}.name-input::placeholder,.join-line input::placeholder,.chat-compose input::placeholder{color:#726b67}.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 17px;font-size:12px;font-weight:600;letter-spacing:.07em;transition:background .2s,transform .2s,border-color .2s;white-space:nowrap}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(115deg,#c4a472,#b58e58);color:#211a16;border-color:#c4a472;box-shadow:0 5px 30px #b7884b1f}.btn-primary:not(:disabled):hover{background:#ddba81}.btn-outline{border:1px solid rgba(205,173,128,.3);background:#131415bf;color:#dec9aa}.btn-outline:not(:disabled):hover{background:#c1a37829}.btn-create{width:100%;height:49px;margin-top:12px;justify-content:space-between;padding:0 18px}.btn-create span{flex:1;text-align:center}.join-line{display:flex;gap:9px;margin-top:10px}.join-line input{min-width:0;flex:1;background:#181717d9;border:1px solid rgba(204,169,117,.18);color:#e0d0b3;padding:0 12px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.join-line .btn{padding:11px 13px}.btn-solo{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border:none;background:none;color:#b49f82;padding:17px 10px;font-size:12px;transition:color .2s}.btn-solo:hover{color:#f3d29f}.landing-metrics{display:flex;justify-content:space-between;border-top:1px solid rgba(205,173,128,.16);max-width:400px;margin-top:19px;padding-top:20px}.landing-metric{display:grid;grid-template-rows:18px 23px 18px;justify-items:center;gap:1px;color:#c0a780}.landing-metric strong{font-family:Georgia,serif;font-size:18px;color:#e6d5bd;letter-spacing:.035em}.landing-metric small{font-size:10px;color:#8a8177;letter-spacing:.1em}.showcase-info{position:absolute;right:clamp(22px,3.3vw,60px);bottom:94px;z-index:5;text-align:right;pointer-events:none;font-family:Georgia,Noto Sans SC,sans-serif;color:#b9aa95;font-size:11px;letter-spacing:.15em}.showcase-tick{display:inline-block;background:#bd5c49;border-radius:50%;width:6px;height:6px;margin-right:10px;box-shadow:0 0 11px #b74b42}.showcase-info>div:not(.showcase-rule){font-family:Noto Sans SC,sans-serif;letter-spacing:.04em;color:#86817e;margin-top:10px}.showcase-info b{font-weight:400;color:#ab8565;padding:0 4px}.showcase-rule{height:1px;margin-top:21px;margin-left:auto;width:214px;background:linear-gradient(90deg,transparent,rgba(216,179,119,.48))}.showcase-info strong{display:block;font-size:21px;letter-spacing:.045em;font-weight:400;margin-top:9px;color:#d0b58c}.showcase-info strong small{font-size:9px;color:#847b72;letter-spacing:.18em}.landing-bottom{position:absolute;bottom:0;left:0;right:0;z-index:5;min-height:35px;padding:10px 3.3vw;border-top:1px solid rgba(205,171,122,.08);display:flex;justify-content:space-between;gap:10px;color:#6d6863;font-family:Georgia,Noto Sans SC,sans-serif;font-size:8px;letter-spacing:.12em;pointer-events:none}.glass-panel{background:linear-gradient(135deg,#161617f0,#0d0f11e0);border:1px solid rgba(196,161,113,.16);box-shadow:0 15px 60px #00000052,inset 0 1px #e2b97d0b;backdrop-filter:blur(17px)}.session-bar{position:absolute;z-index:8;top:100px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:14px;white-space:nowrap;background:#0d0e11e6;border:1px solid rgba(204,170,118,.25);padding:10px 14px;color:#c1b9ac;font-size:11px;letter-spacing:.04em;box-shadow:0 10px 35px #0005}.session-status{display:flex;align-items:center;gap:8px;color:#d0ba8d;font-family:Georgia,sans-serif;font-size:10px;letter-spacing:.13em}.connection-circle{width:7px;height:7px;border-radius:50%;box-shadow:0 0 10px currentColor}.session-separator{width:1px;height:18px;background:#cdaa7138}.session-title{font-size:12px;color:#e3d9c9}.session-code{font-family:monospace;background:#c8a86b17;padding:5px 8px;color:#c8a876;font-size:13px;letter-spacing:.12em}.session-bar button{border:none;background:transparent;color:#d4bb98;display:flex;align-items:center;gap:6px;font-size:11px}.players-panel{position:absolute;top:165px;left:clamp(18px,2vw,32px);z-index:7;width:256px;padding:16px 16px 14px}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#cab18b;font-family:Georgia,Noto Sans SC,sans-serif;font-size:10px;letter-spacing:.14em}.panel-header>span:first-child{display:flex;align-items:center;gap:7px}.soft-badge{display:inline-flex;align-items:center;padding:4px 7px;font-size:10px;font-family:Noto Sans SC,sans-serif;letter-spacing:0;color:#c6b397;background:#bfa16f1a;border:1px solid rgba(191,161,111,.13);white-space:nowrap}.soft-badge--accent{color:#e7a495;background:#c04a3921;border-color:#c04a3936}.player-list{margin-top:13px}.player-row{display:flex;align-items:center;gap:11px;border-top:1px solid rgba(199,167,117,.1);padding:10px 0;position:relative}.player-row--turn:before{content:"";position:absolute;left:-16px;top:8px;bottom:8px;width:2px;background:#c7a573;box-shadow:0 0 10px #bc956a}.player-row--dead{opacity:.42}.player-avatar{width:34px;height:34px;display:grid;place-items:center;flex-shrink:0;border:1px solid rgba(184,164,137,.23);background:#b9aa9214;color:#abbbba}.player-avatar--hako{color:#dd8575;background:#a73f3821;border-color:#b24a4559}.player-copy{min-width:0;flex:1}.player-copy strong{display:block;font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#e2d5c1}.player-copy small{display:block;font-size:10px;color:#87847f;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.you-tag{display:inline-block;margin-left:5px;font-size:9px;color:#bda579;font-weight:400}.player-indicators{color:#7a6c63}.turn-ping{width:6px;height:6px;background:#d7a570;display:block;border-radius:50%;box-shadow:0 0 9px #d7a570}.player-footer{border-top:1px solid rgba(205,176,125,.13);display:flex;justify-content:space-between;padding-top:12px;gap:8px}.small-stat{display:flex;gap:8px;align-items:center;color:#bda985}.small-stat>div{display:flex;flex-direction:column;gap:2px}.small-stat small{font-size:9px;color:#8e8881}.small-stat strong{font-size:12px;font-weight:600;color:#e1d0b9}.lobby-section{border-top:1px solid var(--line);padding-top:14px}.lobby-illustration{text-align:center;padding:19px 0 14px}.lobby-illustration-icon{width:51px;height:51px;border:1px solid rgba(194,156,107,.35);margin:auto;display:grid;place-items:center;color:#c1a57e;transform:rotate(45deg)}.lobby-illustration-icon svg{transform:rotate(-45deg)}.lobby-illustration h3{font-family:"Noto Serif SC",serif;font-size:16px;margin:23px 0 7px}.lobby-illustration p{color:#968e84;font-size:11px;line-height:1.9}.full{width:100%;margin-top:9px}.lobby-hint{text-align:center;font-size:11px;color:#aaa095}.right-panel{position:absolute;z-index:7;top:165px;right:clamp(18px,2vw,32px);bottom:32px;width:320px;display:flex;flex-direction:column}.objectives{padding:16px 16px 15px;border-bottom:1px solid var(--line)}.muted-small{color:#8e8073;font-size:10px;letter-spacing:.03em}.goal-card{display:flex;gap:10px;margin-top:19px;align-items:flex-start}.goal-icon{display:grid;place-items:center;width:32px;height:32px;background:#c99a5a21;color:#d1a973;flex-shrink:0}.goal-icon--purple{color:#a6a2b7;background:#7270952b}.goal-icon--danger{color:#ca8d79;background:#ae473529}.goal-body{flex:1;min-width:0}.goal-body strong{font-size:11px;color:#e7dbca;font-weight:500}.goal-body p{font-size:10px;color:#8e8781;line-height:1.7;margin:4px 0 7px}.goal-card>b{font-size:12px;font-family:Georgia,serif;color:#cbb390;font-weight:400}.progress-track{height:3px;background:#3e3530}.progress-track>div{height:100%;background:#c9a776;transition:width .5s}.progress-track.purple>div{background:#a8a1c6}.progress-track.danger>div{background:#c8816d}.activity-head{padding:13px 16px 0}.activity-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line)}.activity-tabs button{display:flex;align-items:center;gap:7px;position:relative;padding:0 4px 11px;background:none;border:none;color:#88817c;font-size:11px}.activity-tabs button.active{color:#d5b98f}.activity-tabs button.active:after{content:"";position:absolute;bottom:-1px;height:2px;left:0;right:0;background:#cba675}.activity-tabs button span{padding:1px 4px;border-radius:6px;background:#3a3029;font-size:9px}.activity-scroll{flex:1;overflow-y:auto;padding:13px 17px;min-height:90px;scrollbar-color:#514434 transparent;scrollbar-width:thin}.event-row{display:flex;gap:10px;position:relative;padding-bottom:14px}.event-line{position:absolute;left:5px;top:14px;bottom:-2px;width:1px;background:#483d33}.event-row:last-of-type .event-line{display:none}.event-ornament{width:12px;flex-shrink:0;color:#947e63;font-family:Georgia,serif;font-size:15px;line-height:17px;position:relative;z-index:1;background:#18191b;text-align:center}.event-row--danger .event-ornament,.event-row--death .event-ornament{color:#d17968}.event-row--loot .event-ornament{color:#d6b987}.event-row p{font-size:11px;line-height:1.65;margin:0 0 3px;color:#b6a99b}.event-row--death p,.event-row--danger p{color:#d3a197}.event-row--loot p{color:#dec7a0}.event-row small{font-family:monospace;color:#696560;font-size:9px}.chat-entry{margin-bottom:14px}.chat-entry strong{color:#d8c09d;font-size:11px;font-weight:600}.chat-entry time{font-size:10px;color:#77716d;margin-left:8px}.chat-entry p{font-size:11px;line-height:1.6;margin:5px 0 0;color:#bfb6aa}.empty-chat{font-size:12px;line-height:2.1;text-align:center;color:#938779;margin-top:45px}.empty-chat small{color:#706a63}.chat-compose{height:42px;margin:0 14px 6px;display:flex;border:1px solid rgba(186,151,99,.2);background:#0a0b0c8c}.chat-compose input{padding:0 11px;min-width:0;flex:1;border:0;background:none;color:#efe0ce;font-size:11px}.chat-compose button{border:0;background:transparent;padding:0 13px;color:#d0b086}.tip-line{font-size:10px;color:#8f7967;padding:7px 14px 12px}.tip-line span{color:#b9a47c;padding-right:5px}.location-panel{position:absolute;z-index:6;left:clamp(18px,2vw,32px);bottom:80px;width:265px;min-height:124px;padding:13px 14px}.location-head{display:flex;align-items:center;gap:6px;color:#bfa580;font-family:Georgia,Noto Sans SC,sans-serif;font-size:10px;letter-spacing:.12em}.location-head span{flex:1}.location-head button{background:none;border:none;color:#b2a18b;padding:0}.location-panel h3{display:flex;align-items:center;justify-content:space-between;font-family:"Noto Serif SC",serif;font-size:17px;font-weight:600;margin:10px 0 5px;letter-spacing:.04em}.location-panel h3 small{font-family:Georgia,serif;font-size:13px;font-weight:400;color:#776b60}.location-panel p{font-size:10px;line-height:1.65;color:#9c948b;margin:0;min-height:32px}.location-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:8px;border-top:1px solid var(--line);color:#80776e;font-size:10px}.location-footer span,.location-footer button{display:flex;align-items:center;gap:5px}.location-footer button{border:0;background:none;color:#d5b38a;font-size:10px;padding:3px}.action-dock{position:absolute;z-index:7;bottom:26px;left:50%;transform:translate(-50%);width:min(670px,calc(100vw - 710px));min-width:510px;background:linear-gradient(135deg,#181717f5,#0c0e10f7);border:1px solid rgba(204,169,119,.26);box-shadow:0 15px 55px #0008;padding:14px 15px 10px}.action-dock-head{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding-bottom:11px;color:#d7bd96}.action-dock-head strong{font-size:12px;font-weight:500;letter-spacing:.04em}.action-dock-head>span:last-child{margin-left:auto;font-size:10px;color:#8b8073}.action-pulse{width:6px;height:6px;border-radius:50%;background:#c9a26e;box-shadow:0 0 13px #c9a26e}.action-buttons{display:flex;gap:8px;padding:12px 0}.skill-button{display:flex;flex:1;min-width:0;align-items:center;flex-direction:column;justify-content:center;gap:3px;background:#b7986b0d;border:1px solid rgba(194,162,116,.16);padding:9px 7px;min-height:84px;transition:background .2s,border-color .2s}.skill-button:hover:not(:disabled){background:#b5895a2e;border-color:#c39e6763}.skill-button>div{color:#d3ac79;margin-bottom:2px}.skill-button strong{font-size:11px;color:#e0ceae;font-weight:500}.skill-button small{font-size:9px;color:#8d8070;white-space:nowrap}.skill-button--danger>div{color:#bd726b}.end-turn{display:flex;align-items:center;justify-content:center;gap:3px;background:#bfa06929;border:1px solid rgba(195,164,111,.32);padding:7px 9px;color:#dbbf91;white-space:nowrap;font-size:11px;min-width:89px}.end-turn:hover:not(:disabled){background:#caa46647}.inventory-row{border-top:1px solid var(--line);display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding-top:9px;color:#aa9980;font-size:10px}.inventory-row>span:first-child{margin-right:2px}.inventory-row .no-items,.inventory-row small{color:#776c62;font-size:10px}.game-bottom-left{position:absolute;left:clamp(18px,2vw,32px);bottom:21px;z-index:7;display:flex;align-items:center;gap:16px;color:#77706a;font-size:10px}.game-bottom-left button{display:flex;align-items:center;gap:5px;border:none;background:none;color:#a28c74;font-size:11px;padding:4px}.game-bottom-left button:hover{color:#dfb985}.chest-tooltip{white-space:nowrap;background:#14100de6;border:1px solid #9b7956;padding:5px 8px;font-size:10px;color:#f3d0a0;letter-spacing:.08em}.chest-tooltip small{font-family:monospace;color:#957e61;font-size:9px;margin-left:6px}.room-label{white-space:nowrap;padding:4px 8px;color:#cec1ac;font-size:11px;font-weight:600;letter-spacing:.05em;text-shadow:0 1px 4px #000,0 2px 8px #000;background:#110e0e91;border:1px solid rgba(203,169,120,.25)}.room-label span{color:#c39c70;font-family:Georgia,serif;font-size:9px}.room-label--here{border-color:#80a7a2;color:#e4e8dc;background:#1a3537b3}.figure-name{white-space:nowrap;background:#151719ba;border:1px solid #c4a97c66;padding:3px 6px;font-size:9px;color:#eadac1}.ending-modal{position:absolute;z-index:10;top:50%;left:50%;transform:translate(-50%,-50%);width:min(510px,calc(100vw - 34px));padding:35px 38px 39px;text-align:center;background:linear-gradient(135deg,#1c1413fa,#0c0d0ffa);border:1px solid rgba(206,164,106,.5);box-shadow:0 0 110px 30px #000b}.ending-crest{margin:0 auto 22px;color:#d9b080}.ending-eyebrow{font-family:Georgia,serif;color:#ad916f;letter-spacing:.2em;font-size:10px}.ending-modal h2{font-family:"Noto Serif SC",serif;letter-spacing:.09em;font-size:31px;margin:15px 0}.ending-modal p{color:#aba095;font-size:13px;margin-bottom:25px}.ending-buttons{display:flex;justify-content:center;gap:12px}.toast{position:absolute;z-index:30;top:92px;right:30px;display:flex;align-items:center;gap:9px;padding:12px 13px;border:1px solid rgba(205,170,110,.35);background:#25221fee;color:#d8c4a3;max-width:min(430px,calc(100vw - 30px));font-size:12px;box-shadow:0 15px 35px #0009}.toast>span{display:grid;place-items:center;color:#ba9d69}.toast--error{border-color:#b3504587;color:#eac4b9}.toast--error>span{color:#d78f7c}.toast button{margin-left:auto;border:none;background:none;color:#8c837c;padding:0;display:grid;place-items:center}.overlay{position:absolute;inset:0;z-index:40;display:grid;place-items:center;background:#050609c4;backdrop-filter:blur(9px);overflow-y:auto;padding:20px}.rules-dialog{width:min(740px,100%);max-height:calc(100vh - 40px);overflow-y:auto;position:relative;padding:30px 35px 34px;background:linear-gradient(145deg,#211c1a,#141719);border:1px solid rgba(202,164,117,.4);box-shadow:0 22px 80px #000c}.rules-close{position:absolute;right:22px;top:23px;border:0;background:none;color:#bcab93}.rules-dialog h2{font-family:"Noto Serif SC",serif;font-size:30px;margin:14px 0}.rules-intro{font-size:12px;line-height:1.95;color:#a9a099;max-width:650px}.rules-intro strong{font-weight:500;color:#e8c797}.rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 27px;margin:26px 0}.rules-grid>div{border-top:1px solid rgba(206,166,113,.24);padding-top:12px}.rules-num{font-family:Georgia,serif;font-size:11px;letter-spacing:.12em;color:#b79a70}.rules-grid h3{font-family:"Noto Serif SC",serif;font-size:16px;font-weight:600;margin:8px 0}.rules-grid p{font-size:11px;line-height:1.85;color:#a59b90;margin:0}.mobile-panel-toggle{display:none}@keyframes glow{50%{box-shadow:0 0 0 5px #b4433a12,0 0 23px #c5443b}}@media(max-width:1300px){.topbar-center{display:none}.landing-panel{top:120px;width:42vw}.hero-title{font-size:105px}.right-panel{width:290px}.players-panel{width:242px}.action-dock{width:520px;min-width:520px;left:52%}.location-panel{width:243px}}@media(max-width:1080px){.topbar{height:70px}.topbar-center{display:none}.screen-vignette{background:linear-gradient(90deg,#050608f7,#060709e3 38%,#04050736 77%)}.landing-panel{left:5vw;width:50vw;top:105px}.hero-title{font-size:clamp(80px,12vw,118px)}.showcase-info{font-size:9px}.players-panel{top:130px;width:210px}.right-panel{top:130px;width:250px}.session-bar{top:82px}.action-dock{left:50%;width:min(480px,50vw);min-width:0}.action-dock .skill-button small{display:none}.location-panel{bottom:85px;width:210px}.game-bottom-left>span{display:none}.goal-card{gap:6px}.goal-body strong{font-size:10px}.goal-body p{font-size:9px}}@media(max-width:760px){html,body,#root{overflow:hidden}.topbar{height:68px;padding:0 15px}.mark-icon{width:34px;height:34px}.mark-icon svg{width:19px}.wordmark-copy strong{font-size:17px}.wordmark-copy small{font-size:7px}.topbar-actions{gap:4px}.header-link span{display:none}.header-link{padding:8px}.icon-button{width:30px;height:32px}.topbar-actions .icon-button:nth-last-child(2){display:none}.landing-panel{top:95px;left:23px;right:23px;width:auto;max-height:calc(100vh - 116px);background:linear-gradient(90deg,#050709d4,#0507091f);padding-right:6px}.hero-ornament{margin-top:18px}.hero-title{font-size:clamp(73px,20vw,105px)}.hero-en{font-size:10px;margin:5px 0 23px}.hero-statement{font-size:19px}.hero-description{font-size:11px}.intro-actions{max-width:395px}.landing-metrics{margin-top:6px;padding-top:12px}.landing-bottom,.showcase-info{display:none}.screen-vignette{background:linear-gradient(90deg,#050709e3,#050709b8 65%,#05070957)}.app-shell--in-game .screen-vignette{background:linear-gradient(0deg,rgba(5,6,8,.66),transparent 50%,rgba(5,6,8,.4))}.session-bar{top:75px;gap:6px;max-width:calc(100vw - 26px);overflow:hidden;padding:8px}.session-status{font-size:8px}.session-title{font-size:10px;max-width:145px;overflow:hidden;text-overflow:ellipsis}.session-code{font-size:10px}.session-separator{display:none}.session-bar button{font-size:9px}.players-panel{top:119px;left:10px;width:160px;padding:10px}.panel-header{font-size:8px;letter-spacing:.01em}.player-row{padding:6px 0;gap:6px}.player-avatar{width:27px;height:27px}.player-avatar svg{width:15px}.player-copy strong{font-size:10px}.player-copy small{font-size:8px}.player-footer{display:none}.lobby-illustration{padding:9px 0}.lobby-illustration h3{font-size:13px}.lobby-illustration p{font-size:10px}.lobby-section .btn{font-size:10px;padding:9px 5px}.right-panel{display:none;right:9px;top:119px;bottom:166px;width:min(294px,calc(100vw - 40px))}.right-panel--open{display:flex}.location-panel{left:10px;bottom:166px;min-height:0;width:min(220px,52vw);padding:9px}.location-panel h3{font-size:13px}.location-panel p{font-size:9px;min-height:0}.location-footer{display:none}.action-dock{left:10px;right:10px;bottom:14px;transform:none;width:auto;min-width:0;padding:8px}.action-dock-head{padding-bottom:7px}.action-dock-head strong{font-size:10px}.action-buttons{padding:7px 0;gap:4px}.skill-button{padding:5px 3px;min-height:56px}.skill-button>div{margin:0}.skill-button svg{width:17px}.skill-button strong{font-size:9px}.end-turn{min-width:56px;font-size:9px;padding:5px}.end-turn svg{width:13px}.inventory-row{font-size:9px;padding-top:6px}.inventory-row .soft-badge{font-size:9px;padding:2px 4px}.game-bottom-left{bottom:148px;left:10px}.game-bottom-left button{font-size:9px}.mobile-panel-toggle{display:flex;align-items:center;gap:5px;position:absolute;z-index:10;bottom:164px;right:10px;font-size:10px;background:#292522e8;color:#d3bc99;border:1px solid var(--line);padding:7px}.rules-dialog{padding:24px}.rules-grid{grid-template-columns:1fr;gap:12px}.rules-dialog h2{font-size:25px}.ending-modal{padding:25px 15px}.ending-modal h2{font-size:25px}}@media(max-height:720px)and (min-width:761px){.landing-panel{top:96px}.hero-ornament{margin-top:13px}.hero-title{font-size:86px}.hero-en{margin-bottom:18px}.hero-rule{margin-bottom:13px}.hero-statement{font-size:20px;margin-bottom:8px}.hero-description{margin-bottom:12px}.landing-metrics{margin-top:8px;padding-top:10px}.players-panel,.right-panel{top:139px}.location-panel{bottom:72px}.action-dock{bottom:13px}.right-panel{bottom:14px}}.edition-settings{display:grid;gap:9px;margin:12px 0;padding:12px;background:#121416e8;border:1px solid #a7886050;color:#d8bea0}.edition-settings>strong{font:11px Georgia,serif;letter-spacing:.13em;color:#dcbd8a}.edition-settings>label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#c0ab90;font-size:10px}.edition-settings select{min-width:0;max-width:72%;background:#22201f;color:#e0cab1;border:1px solid #8e714e70;font-size:10px;padding:5px 3px}.edition-settings .option-check{justify-content:flex-start;cursor:pointer}.edition-settings input[type=checkbox]{accent-color:#bc9163;width:13px;height:13px}.edition-settings small{font-size:9px;line-height:1.55;color:#867b70}.lore-subpanel{display:grid;grid-template-columns:1fr auto;gap:5px;margin-top:10px;padding:9px;border:1px solid #c79b6240;color:#bd9c71;font-size:11px}.lore-subpanel small{grid-column:1/-1;color:#83786b;font-size:9px}.action-dock--v2{width:min(690px,calc(100vw - 570px));min-width:460px;max-height:min(45vh,340px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#654f36 transparent}.action-dock--v2 .inventory-row{line-height:1.7}.noise-console{padding:12px 0 4px}.noise-heading{display:flex;justify-content:space-between;gap:8px;color:#d3b792;font-size:11px;margin-bottom:10px}.noise-heading span:last-child{color:#928373;font-size:10px}.noise-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.noise-card{height:76px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;background:repeating-linear-gradient(45deg,#242021,#242021 7px,#2e2423 8px 9px);border:1px solid #9f7950a8;color:#d9b38a;position:relative;transition:transform .16s,border-color .16s}.noise-card:hover:not(:disabled){transform:translateY(-3px);border-color:#e1bc82}.noise-card--open{background:linear-gradient(120deg,#3a3128,#1b1a1a);color:#e1d2b6;opacity:.78}.noise-card strong{font:30px Georgia,serif}.noise-card small{font-size:9px;white-space:nowrap}.noise-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px}.noise-foot .btn{padding:7px;font-size:10px}.noise-foot small{color:#84786d;font-size:9px;line-height:1.5}.tower-game{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:7px 3px}.tower-game>label{display:flex;flex:1;min-width:80px;flex-direction:column;gap:8px;color:#ad9679;font-size:10px}.tower-game input{width:100%;accent-color:#b28b61}.tower-visual{display:flex;flex-direction:column-reverse;justify-content:flex-start;align-items:center;gap:0;height:126px;width:100px;padding-bottom:3px;position:relative}.tower-pedestal{width:95px;height:5px;background:#725d43;box-shadow:0 0 10px #a88e6355}.tower-disc{width:64px;height:15px;border-radius:50%;background:radial-gradient(ellipse at 35% 25%,#d2bca0,#6d5945);border:2px solid #4d3829;box-shadow:0 3px 9px #0008;flex-shrink:0;transform-origin:center center}.tower-disc--ghost{background:#b7796688;border-style:dashed}.tower-game>.btn{padding:9px;font-size:10px}.interrupt-panel{padding:14px 3px;display:grid;gap:10px;color:#d5b089;font-size:12px}.interrupt-panel>div{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:#ab9988;font-size:11px}.interrupt-panel .btn{padding:7px}.dock-note{color:#bda78b;line-height:1.8;font-size:11px;flex:1}.hako-console{display:grid;gap:10px;padding:11px 0}.hako-controls{display:flex;gap:7px;flex-wrap:wrap}.hako-controls .btn{flex:1;font-size:10px;padding:8px 5px}.hako-powers{display:grid;gap:8px}.hako-powers>strong{font-size:11px;font-weight:500;color:#bba17c}.hako-powers>div{display:flex;flex-wrap:wrap;gap:5px}.power-card,.set-power button,.minion-controls button,.item-chip{background:#30271e;border:1px solid #80603d8a;color:#e1c6a0;padding:6px 8px;font-size:10px;transition:background .15s}.power-card:hover:not(:disabled),.set-power button:hover:not(:disabled),.item-chip:hover:not(:disabled){background:#644a31}.power-card span{margin-right:8px;font-size:8px;color:#a97965}.set-power{display:inline-flex;gap:2px}.set-power button{background:#382421;border-color:#9a5d4a}.item-chip{padding:5px 8px}.minion-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:10px;color:#ad9883}.safe-dialog{padding:35px;width:min(430px,calc(100vw - 35px));display:grid;gap:16px}.safe-dialog h2{font:27px "Noto Serif SC",serif;margin:0;color:#ead7b7}.safe-dialog p{font-size:12px;line-height:1.8;color:#ada092}.safe-dialog input{font:28px Georgia,serif;letter-spacing:1.2em;width:100%;background:#0b0b0e;padding:12px;color:#ddc395;text-align:center;border:1px solid #986d46}.safe-buttons{display:flex;gap:10px;justify-content:flex-end}@media(max-width:1300px){.action-dock--v2{width:480px;min-width:0;left:51%}}@media(max-width:1080px){.action-dock--v2{width:min(440px,48vw);left:51%}.noise-card{height:60px}.noise-card small{font-size:8px}}@media(max-width:760px){.action-dock--v2{left:8px;right:8px;bottom:12px;max-height:min(44vh,310px);width:auto;max-width:none;min-width:0;padding:9px}.noise-card{height:58px}.noise-cards{gap:3px}.noise-foot small{display:none}.hako-controls .btn{min-width:100px}.action-dock--v2 .action-dock-head strong{font-size:10px}.edition-settings{padding:8px;gap:6px}.edition-settings select{max-width:66%}.edition-settings>label{font-size:9px}.edition-settings>strong{font-size:9px}.safe-dialog{padding:20px}.safe-buttons{flex-wrap:wrap}}.item-transfer select,.minion-move-control select{border:1px solid rgba(219,198,160,.28);border-radius:5px;background:#171513;color:#e4dac9;font:inherit;font-size:12px;padding:7px 9px;max-width:200px;outline-color:#b6935e}.item-transfer button{font-size:12px}.minion-move-control{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;margin:4px 5px 4px 0}.minion-move-control>span{font-size:12px;color:#e3d5bf}.minion-move-control button{background:#47302c;color:#f3d9bb;border:1px solid rgba(237,191,151,.35);border-radius:5px;padding:6px 10px;cursor:pointer}.minion-move-control button:disabled{opacity:.4;cursor:not-allowed}.starter-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:260px;overflow:auto;padding:3px 2px 7px}.starter-choice{display:flex!important;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;min-height:102px;text-align:left;border-radius:8px;padding:12px!important;background:linear-gradient(150deg,#423122,#171714)!important;border-color:#cda8704d!important;box-shadow:inset 0 0 21px #bd753312}.starter-choice:hover{background:linear-gradient(150deg,#6a442c,#24201a)!important;transform:translateY(-1px)}.starter-choice strong{font:15px "Noto Serif SC",serif;color:#efd9b6}.starter-choice small{line-height:1.5;font-size:10px;color:#bdb0a0}.public-starter{max-width:94px;font-size:9px;color:#d9b88a;line-height:1.45;white-space:normal}.starter-owned{flex-wrap:wrap;align-items:center}.starter-owned small{line-height:1.55;color:#a89b8d;flex-basis:100%}.starter-target{background:#211b19;color:#f1dcc0;border:1px solid #8b6946;border-radius:6px;padding:5px 7px;max-width:170px;font-size:11px}@media(max-width:800px){.starter-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:180px}.starter-choice{min-height:86px}.public-starter{max-width:65px;font-size:8px}}.tower-disc--red{background:linear-gradient(125deg,#b62834,#f48174 48%,#6d1322)!important;border-color:#ff8d84!important;box-shadow:0 2px 12px #d62b388c!important}.starter-own-entry{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0;padding:4px 6px;border:1px solid rgba(201,165,113,.12);border-radius:8px;background:#c9a5710b}.starter-own-entry small{flex-basis:100%;line-height:1.5;color:#a89b8d}.player-row .public-starter{overflow-wrap:anywhere;max-width:140px}
