#lan-lobby{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(#08202bc9,#08202be8),url('story-journey-v2.png') center/cover;font-family:system-ui;color:#fff0cc;box-sizing:border-box;}
#lan-lobby[hidden]{display:none;}.lan-card{width:min(360px,100%);padding:20px;border:1px solid #c6a567;border-radius:16px;background:#102936ed;box-shadow:0 10px 30px #0006;box-sizing:border-box;}.lan-card h1{font:bold 27px Georgia;margin:0 0 14px;color:#ffe3ac;}.lan-card p{font:14px/1.5 system-ui;color:#d6e5df;}.lan-card label{display:block;font:14px system-ui;margin-top:16px;}.lan-card input{display:block;width:100%;margin:7px 0 12px;padding:11px;border:1px solid #7f927e;border-radius:8px;background:#061e28;color:#fff6da;box-sizing:border-box;font:16px system-ui;}.lan-card button,.lan-exit{border:1px solid #d8b36d;border-radius:8px;padding:10px 14px;background:linear-gradient(#b98c47,#795327);color:#fff1cd;font:700 14px system-ui;}.lan-card button{width:100%;}.lan-card button:disabled{opacity:.5;}.lan-card .lan-secondary{background:#193844;}.lan-divider{text-align:center;font:12px system-ui;margin:12px;color:#c0cbbb;}#lan-message{min-height:21px;}.lan-exit{position:absolute;top:calc(env(safe-area-inset-top) + 8px);left:5%;z-index:12;font-size:10px;padding:4px 8px;}
.lan-mode #match-pk .pk-lives,.lan-mode #match-pk .pk-session-actions,.lan-mode #match-pk .pk-language{display:none;}
.lan-mode #match-pk .pk-controls{left:9%;width:82%;grid-template-columns:1fr 1fr;}
.lan-mode #match-pk .pk-controls .pk-skill{padding:0;}
.lan-mode #match-pk .pk-resources{display:flex;align-items:center;justify-content:center;background:#0a2436d9;height:16%;top:82%;color:#ead59e;font:12px system-ui;}
.lan-mode #match-pk .pk-heading span:first-child{font-size:clamp(13px,4vw,20px);}
.lan-mode #match-pk .pk-fighter-name{font-size:clamp(9px,2.3vw,12px);overflow:hidden;text-overflow:ellipsis;}
.lan-mode #match-pk .pk-log{gap:3px;font:700 12px/1.3 system-ui;}
.lan-mode #match-pk .pk-stage-label{font-size:clamp(9px,2.6vw,13px);}
.lan-mode #match-pk .pk-board-frame{margin-top:auto;}
.lan-mode #match-pk .pk-result-box{font:14px system-ui;padding:16px;}.lan-mode #match-pk .pk-result-box button{font-size:16px;}
#match-pk .lan-notice{position:absolute;left:5%;top:30%;width:90%;z-index:20;text-align:center;pointer-events:none;font:900 clamp(24px,7vw,38px)/1.3 system-ui;color:#f33c28;-webkit-text-stroke:1px #ffe89f;paint-order:stroke fill;text-shadow:0 2px 3px #581b04,0 0 12px #ffd767;}
#match-pk .lan-notice small{display:block;font:700 13px system-ui;color:#ffe8ad;-webkit-text-stroke:0;text-shadow:0 1px 3px #000;}
#match-pk .lan-notice[hidden]{display:none;}
.lan-duel{position:absolute;inset:0;z-index:22;display:flex;align-items:center;justify-content:center;background:#0b243f90;}.lan-duel>div{padding:24px;border:1px solid #d8b36d;border-radius:12px;background:#102c3df2;color:#ffe1a8;font:700 22px Georgia;text-align:center;animation:lan-reveal .7s ease-out;}.lan-duel span{display:block;margin:12px;font:14px system-ui;color:#d5e4df;}.lan-duel b{font-size:42px;color:#ffdd8b;}@keyframes lan-reveal{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
#match-pk .lan-notice{font-size:clamp(28px,8vw,38px);font-weight:900;color:#ff432c;-webkit-text-stroke:1.5px #fff0bd;text-shadow:0 2px 2px #4a1704,0 0 4px #4a1704,0 0 14px #f3b144;filter:drop-shadow(0 2px 4px #061923);}
#match-pk .lan-notice small{width:fit-content;max-width:94%;box-sizing:border-box;margin:8px auto 0;padding:6px 10px;border:1px solid #dbb76c;border-radius:8px;background:#092734f2;color:#ffe5a1;font:800 clamp(14px,3.8vw,17px)/1.4 system-ui;-webkit-text-stroke:0;text-shadow:0 1px 2px #000;box-shadow:0 2px 7px #0008;}

.lan-duel .lan-duel-swords{position:relative;display:block;width:90px;height:90px;margin:16px auto 0;filter:drop-shadow(0 0 7px #ffce76);}
.lan-duel-swords i{position:absolute;inset:0;background:url('sword-viet-v2.png') center/contain no-repeat;transform:rotate(180deg);}
.lan-duel-swords i:last-child{transform:rotate(90deg);}

.lan-leave-confirm{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:20px;background:#07182380;box-sizing:border-box;}
.lan-leave-actions{display:flex;gap:10px;margin-top:20px;}.lan-leave-actions button{flex:1;width:auto;}
/* Keep the complete LAN header immediately above the board. */
.lan-mode #match-pk .pk-header-art{margin-top:auto;}
.lan-mode #match-pk .pk-board-frame{margin-top:0;}
.lan-mode .pk-header-art .lan-exit{top:10px;}
.lan-mode #match-pk .lan-chat-footer{gap:20px;}
.lan-mode #match-pk .pk-resources .lan-chat-toggle{padding:5px 14px;border:1px solid #c4a168;border-radius:8px;background:linear-gradient(#8c6c36,#514023);color:#fff0c3;font:700 12px system-ui;}
.lan-chat-panel{position:fixed;left:4%;right:4%;bottom:calc(env(safe-area-inset-bottom) + 12px);height:min(360px,60dvh);z-index:60;display:flex;flex-direction:column;padding:12px;border:1px solid #d4b46f;border-radius:14px;background:#102936fa;color:#fff0cc;box-shadow:0 6px 25px #0009;box-sizing:border-box;font:14px system-ui;}
.lan-chat-panel[hidden]{display:none;}.lan-chat-panel header{display:flex;align-items:center;justify-content:space-between;flex:none;gap:8px;}
.lan-chat-panel button{border:1px solid #c4a168;border-radius:7px;padding:7px 12px;background:linear-gradient(#a7803f,#725124);color:#fff1cd;font:700 12px system-ui;}
.lan-chat-messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:8px 0;}
.lan-chat-message{width:85%;padding:8px 10px;margin:6px 0;border:1px solid #567f82;border-radius:9px;background:#214653;box-sizing:border-box;overflow-wrap:anywhere;}
.lan-chat-message.own{margin-left:auto;border-color:#ac955b;background:#48442d;}.lan-chat-message b{font-size:11px;color:#ffe3a0;}.lan-chat-message p{margin:4px 0 0;white-space:pre-wrap;font:14px/1.4 system-ui;color:#fff5dc;}
.lan-chat-panel form{display:flex;flex:none;gap:8px;}.lan-chat-panel input{flex:1;min-width:0;border:1px solid #8d9d8f;border-radius:8px;padding:10px;background:#071f29;color:#fff0cc;font:16px system-ui;}.lan-chat-error{flex:none;min-height:16px;margin:4px 0 0;font-size:11px;color:#ffd6a6;}
.lan-mode #match-pk .lan-chat-footer>span{position:static;}
#match-pk .lan-player-chat{overflow-wrap:anywhere;white-space:normal;}
#match-pk .lan-player-chat-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
