.duel-home{display:block;margin:10px auto;padding:10px;border:1px solid #b49c72;border-radius:4px;color:#f5e6c9;text-decoration:none;background:#35545a;max-width:300px;font-size:14px}.duel-paper{background:#f1e4c6;padding:14px;border:1px solid #b29a71;margin:12px 0}.duel-paper h1{font-size:26px;margin:0 0 10px}.duel-paper p{font-size:13px;line-height:1.65}.duel-paper textarea{box-sizing:border-box;width:100%;min-height:80px;resize:vertical;font-size:14px;background:#fff7df;color:#382f25;border:1px solid #a7936d;padding:9px}.duel-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.duel-actions button{flex:1;min-height:42px}.duel-summary{font-size:13px;line-height:1.7;overflow-wrap:anywhere}.duel-round{padding:10px;border-top:1px dashed #aa946d}.duel-survivors{display:flex;gap:4px;flex-wrap:wrap}.duel-survivors img{height:48px;width:36px;object-fit:contain}.duel-survivors span{display:flex;align-items:center;font-size:12px}.duel-stage{background:linear-gradient(#263b44c9,#263b44c9),url('assets/arena.webp') center/cover;color:#fff1ce;border:4px solid #b09b75;padding:8px}.duel-stage .duel-team{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px}.duel-stage .duel-cell{min-height:70px;text-align:center;background:#f8edcf18;font-size:12px}.duel-cell img{height:64px;width:65px;object-fit:contain;display:block;margin:auto}.duel-stage p{min-height:38px}.duel-box{display:inline-block;border:1px solid #bca374;padding:3px;margin:3px;font-size:12px}.duel-top{margin-bottom:8px}#duel-app .recruit-tools{display:none}#duel-app .budget-note{font-size:12px}#duel-app .actor-actions button[disabled]{opacity:.45}#duel-app .shop-toolbar{flex-wrap:wrap}#duel-app [hidden]{display:none!important}.duel-replay-controls{display:flex;gap:5px}.duel-replay-controls button{flex:1}.duel-code{max-height:130px}#duel-app.actor-open{padding-bottom:52vh}.duel-paper input{width:100%;box-sizing:border-box;min-height:42px}@media(max-width:350px){.duel-paper{padding:10px}.duel-paper h1{font-size:23px}.duel-actions{gap:4px}.duel-cell img{height:53px}} 
.duel-lobby{text-align:center;padding:25px 16px 22px}.duel-lobby h1{font-family:PaperTheatreSerif,serif;font-size:32px}.lobby-cast{display:flex;align-items:end;justify-content:center;height:145px;margin:15px 0}.lobby-cast img{height:130px;width:24%;object-fit:contain;filter:drop-shadow(1px 4px 2px #715b4355)}.lobby-cast img:nth-child(2n){height:112px;transform:rotate(4deg)}.duel-lobby>p{font-size:15px;line-height:1.9}.duel-lobby>small{display:block;margin-top:20px;color:#7b684a;font-size:11px}.invite-input{text-align:left;margin-top:20px;padding-top:18px;border-top:1px dashed #b69b70}.invite-input label{font-size:13px}.invite-input textarea{margin:9px 0}.share-sheet{width:min(420px,calc(100vw - 24px));max-height:88dvh;margin:auto;padding:28px 20px 20px;background:linear-gradient(130deg,#fbefd6,#e9d6ad);color:#3f3426;border:1px solid #b39466;border-radius:7px;box-shadow:0 18px 60px #10212688;overflow:auto;text-align:center}.share-sheet::backdrop{background:#142b34b3;backdrop-filter:blur(3px)}.share-sheet .share-close{position:sticky;display:block;margin:0 0 12px auto;top:0;min-height:44px;padding:9px 13px;font-size:14px;color:#5e4b32;background:#f5e6c5;border:1px solid #b39466;box-shadow:0 2px 0 #b39466;z-index:1}.share-sheet h2{font-family:PaperTheatreSerif,serif;font-size:26px;line-height:1.5;margin:12px 0 6px}.share-sheet .eyebrow{font-size:10px;letter-spacing:2px;color:#886b45}.invite-cast{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:18px 0;padding:12px 0;border-block:1px dashed #baa178}.invite-actor{min-width:0}.invite-actor img{height:75px;width:100%;object-fit:contain;filter:drop-shadow(1px 3px 1px #69533b44)}.invite-actor span{display:block;font-size:10px;margin-top:5px;color:#6b583f}.share-copy{font-size:13px;line-height:1.8;color:#79664c;margin:15px 0 20px}.share-sheet .primary{min-height:46px;font-size:15px}.share-sheet>div>button:not(.primary){margin-top:8px;min-height:40px;font-size:12px;width:100%}.share-sheet small{font-size:10px;color:#8b7759;display:block;margin-top:18px}.manual-code{margin-top:15px;padding-top:12px;border-top:1px solid #c5ae85;text-align:left}.manual-code summary{cursor:pointer;font-size:11px;color:#8b7656;text-align:center}.manual-code textarea{width:100%;min-height:85px;margin-top:10px;padding:9px;background:#fff8e8;border:1px solid #c2aa7f;color:#6e5c42;resize:vertical;box-sizing:border-box;font:11px/1.6 monospace;overflow-wrap:anywhere}#share-status{font-size:12px;line-height:1.6;color:#3d685d;margin:9px 0;min-height:0}#share-qr:empty{display:none}#share-qr{margin-top:12px}@media(max-width:350px){.share-sheet{padding:24px 15px 16px}.share-sheet h2{font-size:23px}.invite-actor img{height:62px}.share-copy{font-size:12px}.duel-lobby{padding:20px 12px}.lobby-cast{height:125px}.lobby-cast img{height:114px}.lobby-cast img:nth-child(2n){height:100px}}

.invite-actor{background:transparent;border:0;padding:0;box-shadow:none;min-width:0;min-height:44px}.invite-actor small{display:block;font-size:10px}.received-invite{border:1px solid #b49c72;padding:10px;margin:12px 0}.received-invite h2{font-size:19px}.pending-note,.preview-note{font-size:12px!important;line-height:1.6!important}.saved-invite{display:flex;gap:5px;justify-content:center;margin:8px}.duel-paper h2{font-size:20px}.duel-lobby .invite-cast{margin:10px 0}.share-sheet .invite-cast{margin:10px 0}.share-sheet .share-copy{margin:5px 0 12px}.share-sheet h2{margin-top:0}.share-sheet textarea{max-width:100%;overflow-wrap:anywhere}.duel-stage button{background:transparent;color:inherit;border:0;padding:0}.share-sheet #manual-invite{font-size:13px}
.duel-speech{font-weight:bold;font-size:18px!important;color:#fff0bf;background:#35545a;padding:10px;border:1px solid #b49c72;border-radius:5px}

/* PK-CLOSE-UI-01: page navigation stays separate from invitation dismissal. */
.duel-nav{margin:0 0 12px}.duel-nav a{display:inline-flex;align-items:center;min-height:44px;padding:9px 13px;border:1px solid #b49c72;border-radius:3px;background:#f4e7ca;color:#40352c;text-decoration:none;font-size:14px;box-shadow:0 2px 0 #614e36}
