[hidden]{display:none!important}.tp-main{position:relative;z-index:1;width:min(1400px,calc(100% - 32px));margin:0 auto 40px}.tp-header{margin:12px auto 16px}.tp-header h1{font-size:1.85rem;letter-spacing:2px}.tp-header p{font-size:.9rem}.tp-logo{width:220px;height:240px;object-fit:contain}.tp-rules,.tp-exit{position:fixed;right:20px;top:18px;z-index:60;border-radius:30px}.tp-exit{border-color:var(--accent-red);color:#ffb0a7}body.in-game .tp-rules{display:none}body.in-game .tp-header{margin:18px auto 12px}body.in-game .tp-header h1{font-size:1.25rem}body.in-game .tp-header p,body.in-game .tp-logo{display:none}.tp-auth{max-width:600px;margin:auto;padding:24px;text-align:center}.tp-auth h2{color:var(--accent-gold);margin-bottom:20px}.tp-auth label{display:block;margin-bottom:8px}.tp-auth>input{width:100%}.tp-auth>button{width:100%;margin-top:12px}.tp-rooms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.tp-room{display:flex;justify-content:space-between;gap:12px;letter-spacing:0;text-transform:none;padding:12px}.tp-room.selected{border-color:var(--btn-slate-border-hover);box-shadow:0 0 10px rgba(102,116,130,.4)}.tp-room span:last-child{color:var(--accent-gold);font-size:.85rem}.tp-match{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;margin-bottom:16px;gap:12px}.tp-match h2{font-size:1.4rem;margin-top:4px}.tp-match #room-label{font-size:.78rem;color:var(--text-muted)}.tp-clock{display:flex;gap:18px;align-items:center;flex-shrink:0}.tp-clock strong{font-size:2rem;color:var(--accent-gold);font-variant-numeric:tabular-nums;font-weight:400;min-width:65px;text-align:right}.tp-clock .urgent{color:#ff9b88}.tp-clock span{font-size:.85rem;color:#bbb3a3}.tp-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}.tp-work{padding:22px;min-height:400px}.tp-muted{color:#b3aca1;font-size:.85rem;line-height:1.5;margin:10px 0 16px}.tp-sidebar{display:grid;gap:16px}.tp-sidebar .panel{padding:18px}.tp-sidebar h3{font-size:1.1rem;color:var(--accent-gold);margin-bottom:12px}.tp-sidebar label{display:block;margin:14px 0 6px;font-size:.85rem}.tp-sidebar input,.tp-sidebar select{width:100%;padding:9px;border:1px solid var(--border-color);background:#100e0e;color:var(--text-main);font:inherit}.tp-sidebar button{width:100%;margin-top:12px}.tp-person{display:flex;justify-content:space-between;gap:8px;padding:9px 0;border-bottom:1px solid #292622;font-size:.9rem;overflow-wrap:anywhere}.tp-person span:first-child{min-width:0}.tp-person.is-me{color:var(--accent-gold)}.tp-person small{color:#b2b3ae;text-align:right;font-size:.72rem}.tp-person.is-ready small{color:#a4d5b1}.tp-actions{display:flex;gap:8px;flex-wrap:wrap}.tp-actions button{flex:1}.tp-flow{display:flex;justify-content:center;gap:15px;align-items:center;flex-wrap:wrap;margin:44px 0 26px;color:var(--accent-gold);font-size:1.25rem}.tp-flow b{font-weight:400;color:#8b857b}#waiting{text-align:center;line-height:1.7;max-width:620px;margin:auto}#waiting h3{font-size:1.4rem;margin-bottom:18px}#waiting p{font-size:.95rem;color:#c7c0b4;margin:12px 0}.tp-previous{margin-bottom:20px}.tp-previous p{font-size:1.35rem;line-height:1.5;color:#f0e3c4;overflow-wrap:anywhere;border-left:3px solid var(--accent-gold);padding:14px 20px;background:rgba(211,173,95,.05);white-space:pre-wrap}.tp-previous canvas{width:100%;max-width:680px;display:block;margin:auto;border:1px solid #746343}.tp-previous h3{font-size:.85rem;color:#b8afa0;margin-bottom:10px}#text-task label{display:block;margin-bottom:10px;color:var(--accent-gold)}#answer{width:100%;resize:vertical;min-height:120px;border:1px solid #4b4336;background:#121111;color:#eee8dc;padding:16px;font:1.15rem/1.5 var(--font-body);border-radius:4px}.tp-text-foot{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:12px}.tp-text-foot span{color:#b8afa0;font-size:.8rem}.tp-text-foot button{font-size:.8rem}.tp-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 12px}.tp-tools button{font-size:.78rem;padding:8px 10px;text-transform:none;letter-spacing:0}.tp-tools button[aria-pressed=true]{border-color:var(--accent-gold);color:var(--accent-gold)}.tp-colors{display:flex;gap:5px;flex-wrap:wrap}.tp-tools .tp-swatch{background:var(--swatch);width:28px;height:28px;min-width:28px;border:2px solid #78716a;border-radius:50%;padding:0;box-shadow:none}.tp-tools .tp-swatch[aria-pressed=true]{outline:2px solid #d3ad5f;outline-offset:2px;border-color:#fff}.tp-custom-color{font-size:0;display:block}.tp-custom-color input{width:32px;height:30px;padding:0;border:0;background:none;cursor:pointer}.tp-brush{display:flex;align-items:center;gap:5px;font-size:.75rem;color:#b9b1a6}.tp-brush input{width:75px;accent-color:var(--accent-gold)}.tp-brush output{width:18px}#drawing{display:block;width:100%;height:auto;background:white;touch-action:none;border:2px solid #746343;cursor:crosshair;box-shadow:0 8px 28px #0006}.tp-canvas-help{font-size:.75rem}.tp-submit-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:22px;flex-wrap:wrap}#draft-status{font-size:.78rem;color:#b9b1a6}.tp-primary:not(:disabled){background:linear-gradient(var(--btn-red-1),var(--btn-red-2));border-color:var(--btn-red-border);color:white}.tp-ready{text-align:center;padding:70px 20px}.tp-ready>span{font-size:3.5rem;color:#a4d5b1}.tp-ready h3{margin:16px 0;font-size:1.5rem}.tp-ready p,#spectating p{color:#b9b1a6;line-height:1.6}.tp-album-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.tp-album-heading h3{color:var(--accent-gold);font-size:1.25rem}.tp-album-heading select{max-width:100%;padding:8px;color:#eee;background:#161311;border:1px solid #554633;font:inherit}.tp-entry{padding:16px 0 20px;border-top:1px solid #3f3525}.tp-entry h4{font-weight:400;font-size:.85rem;color:#b5aa99;margin-bottom:12px}.tp-entry p{font-size:1.2rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.tp-entry canvas{width:100%;height:auto;border:1px solid #746343;display:block}.tp-result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.tp-library{max-width:700px}.tp-saved{border-top:1px solid #413726;padding:16px 0}.tp-saved h3{font-size:1rem;margin-bottom:12px}.tp-saved .tp-actions button{font-size:.8rem}.modal-content p{line-height:1.6;margin:14px 0}#status{font-size:.9rem;min-height:2.5em;padding:15px 0;color:#d5c6a9}#status.is-error{color:#ffaca0}button:focus-visible,canvas:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent-gold);outline-offset:3px}
@media(max-width:900px){.tp-layout{grid-template-columns:1fr}.tp-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-work{padding:18px}}
@media(max-width:600px){.tp-main{width:calc(100% - 20px)}.tp-header{margin-top:58px}.tp-logo{width:150px;height:165px}.tp-header h1{font-size:1.35rem;letter-spacing:1px}.tp-header p{font-size:.8rem}.tp-rules,.tp-exit{top:10px;right:10px;font-size:.8rem}.tp-auth{padding:18px}.tp-rooms{gap:8px}.tp-room{padding:10px 8px;font-size:.85rem}.tp-match{padding:12px}.tp-match h2{font-size:1.1rem}.tp-clock{gap:8px;flex-direction:column;align-items:end}.tp-clock strong{font-size:1.5rem}.tp-clock span{font-size:.72rem}.tp-sidebar{grid-template-columns:1fr}.tp-work{padding:12px;min-height:300px}.tp-tools{gap:7px}.tp-brush{margin-left:3px}.tp-submit-row button{width:100%}.tp-flow{gap:10px;font-size:1rem}.tp-previous p{font-size:1.1rem;padding:12px}.tp-ready{padding:35px 12px}.tp-result-actions button{flex:1;font-size:.8rem}body.in-game .tp-header{margin-top:58px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Keep the deadline and submit action visible while drawing. */
.tp-match{position:static}.tp-submit-row{padding:10px 12px;background:#0c0a0bf5;border:1px solid #3a3023;border-radius:5px}#drawing{width:min(100%,87vh);margin-inline:auto}.tp-library select{padding:9px;background:#161311;color:#eee;border:1px solid #554633;font:inherit}

/* Use the same typography and controls as the existing games. */
button.tp-room{font-family:var(--font-body);font-size:1rem;align-items:center;border-radius:6px;background:rgba(10,5,5,.7);border-color:var(--border-color)}
button.tp-room.selected,button.tp-room.selected:hover{border-color:var(--accent-gold);background:rgba(211,173,95,.12);box-shadow:inset 3px 0 var(--accent-gold),0 0 10px rgba(211,173,95,.18)}
.tp-room.selected .room-name{color:#f1d79f}.tp-room .room-seats{white-space:nowrap}
.tp-match h2{font-family:var(--font-body);letter-spacing:0}.tp-tools button{font-family:var(--font-body)}
.tp-rules{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:50px;font-size:.75rem;box-shadow:0 4px 14px rgba(0,0,0,.7)}
body.in-game .tp-header{padding:0 140px}body.in-game button:not(.global-exit-btn):not(.tp-swatch):not(.feedback-fab){font-size:.85rem}
@media(max-width:720px){.tp-rules{top:10px;right:10px;padding:0;width:44px;height:44px;justify-content:center}.tp-rules .rules-label{display:none}body.in-game .tp-header{padding:0 12px;margin-top:68px}}
@media(max-width:520px){.tp-rooms{grid-template-columns:1fr;max-height:260px;overflow-y:auto}button.tp-room{padding:10px 12px}}
