/* V1 additions share the original jade / warm ivory palette. */
.net-menu{margin-top:12px}.net-menu>label{font-size:10px;color:var(--muted);display:inline-block;margin-right:10px}.net-menu>input{width:calc(100% - 65px);height:33px}
.net-menu input,.net-shell input,.net-shell select{font:inherit;color:#e4ecd4;background:#102c30;border:1px solid #637e6f;border-radius:5px;padding:10px 12px;min-width:0;user-select:text}
.net-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.net-entry-grid button{height:57px;font-size:14px;margin-top:10px;background:#183732c7}.net-entry-grid small{display:block;font-size:9px;font-weight:400;color:#87a59b;margin-top:5px}
.menu-panel{max-height:calc(100vh - 155px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#496d5d transparent;top:51%;transform:translateY(-50%);padding:3px 8px 8px 0}
.menu-panel h1{font-size:55px;margin:12px 0}.menu-panel .menu-description{margin:12px 0 20px}.menu-panel .difficulty-description{margin:8px 0 12px}.menu-panel .start-button{height:58px}.menu-panel .menu-controls{margin-top:15px}
.net-layer{position:absolute;inset:0;z-index:45;background:#06181edb;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px}
.net-shell{width:min(800px,100%);max-height:calc(100vh - 48px);overflow:auto;background:linear-gradient(135deg,#203e39,#0c232b);border:1px solid #74937b7a;border-radius:14px;padding:26px 30px;box-shadow:0 18px 80px #0007}
.net-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.net-header h2{font-size:28px;margin:10px 0}.net-header .eyebrow{font-size:9px;letter-spacing:2px}
#netStatus{font-size:11px;color:#9cbaa8;margin:3px 0 15px}#netError{background:#71494270;color:#ffe0cb;border:1px solid #bc877570;border-radius:6px;padding:12px;font-size:12px;line-height:1.7}
.net-toolbar,.net-form-actions{display:flex;gap:10px;align-items:center}.net-toolbar input{flex:1;width:0}.net-toolbar button{width:auto;flex-shrink:0;padding:0 18px;height:40px;min-height:40px;margin:0}
.net-room-list{margin:18px 0;display:grid;gap:12px}.net-room-row{display:flex;justify-content:space-between;align-items:center;gap:15px;border:1px solid #52776677;background:#0b242945;border-radius:9px;padding:16px 18px}
.net-room-row strong{font-size:15px}.net-room-row small{display:block;color:#a7b9a7;font-size:11px;margin:7px 0}.net-room-row code{font-size:10px;color:#749589}.net-room-row button{width:88px;flex-shrink:0;margin:0}
.net-empty{text-align:center;padding:44px 16px;background:#0d25284d;border:1px dashed #5a786955;border-radius:9px}.net-empty h3{font-size:20px;font-weight:500}.net-empty p,.net-note{font-size:11px;color:#9ab3a3;line-height:1.9}.net-note{margin:18px 0 0}
#netMatching{text-align:center;padding:16px 0 10px}#netMatching h3{font-size:23px;font-weight:500;margin:12px 0}#matchingSeconds{font:40px Georgia,serif;color:#dce4b3}#netMatching p{color:#aebea5;font-size:12px}#cancelMatchBtn{max-width:210px}
.match-orbit{width:90px;height:90px;border-radius:50%;border:1px solid #a3c39255;display:grid;place-items:center;color:#bddba4;font-size:38px;margin:8px auto 20px;box-shadow:0 0 0 10px #829f7320;animation:orbit 3s linear infinite}@keyframes orbit{to{transform:rotate(360deg)}}
.net-shell form>label{display:block;font-size:12px;color:#c1d2ba;margin:18px 0}.net-shell form>label>input:not([type=checkbox]),.net-shell form>label>select{width:100%;display:block;margin-top:8px;min-height:41px}.net-shell form>label small{font-size:10px;color:#91ab99}.net-shell .net-check{display:flex;align-items:center;gap:8px;font-size:11px}.net-check input{accent-color:#c0d39d}
.net-form-actions{margin-top:24px}.net-form-actions button{margin:0;height:44px;min-height:44px}.net-shell input:focus-visible,.net-shell select:focus-visible,.net-menu input:focus-visible{outline:2px solid #cde8b1;outline-offset:3px}
#roomSummary h3{font-size:22px;line-height:1.5;margin:13px 0 7px;overflow-wrap:anywhere}#roomSummary p{font-size:11px;color:#94b0a1}.net-seats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.net-seat{display:flex;align-items:center;gap:12px;background:#112e2b;border:1px solid #56796488;border-radius:10px;padding:18px 14px;flex-wrap:wrap}.seat-number{font:24px Georgia,serif;color:#d0d7a6;border:1px solid #8ba37866;border-radius:50%;display:grid;place-items:center;width:36px;height:36px;flex-shrink:0}.net-seat>div{flex:1;min-width:110px}.net-seat strong{font-size:13px;overflow-wrap:anywhere}.net-seat small{display:block;font-size:10px;margin-top:7px;color:#91b59c}.net-seat button{margin:0;padding:5px;flex-basis:100%}
.net-room-actions{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:10px;align-items:center}.net-room-actions button{margin:0;min-height:44px}.net-messages{margin:22px 0 12px;padding:12px;background:#071e2680;border-radius:6px;min-height:64px;max-height:150px;overflow:auto}.net-messages p{font-size:11px;line-height:1.7;color:#a1b8a8;margin:5px 0;overflow-wrap:anywhere}.net-messages b{font-weight:600;color:#d4dfbb}
#inviteUrl{width:100%;margin:12px 0}.net-connection{position:absolute;left:50%;top:109px;transform:translateX(-50%);z-index:14;font-size:10px;color:#bad0b7;background:#0b222bbf;padding:5px 10px;border:1px solid #76938040;border-radius:20px;pointer-events:none}.v1-site-return{position:absolute;left:32px;top:78px;z-index:15;font-size:10px;color:#b2c7b0;background:#10262dbd;border:1px solid #75907855;border-radius:5px;padding:6px 9px}
.score-name b{font:inherit;overflow:hidden;text-overflow:ellipsis;max-width:104px}.score-name{gap:6px}.result-health{overflow-wrap:anywhere;line-height:1.8}
@media(max-height:760px){.menu-panel{max-height:calc(100vh - 125px);top:54%}.menu-panel h1{font-size:39px;margin:7px 0}.menu-panel .menu-tagline{font-size:14px}.menu-panel .menu-description{font-size:11px;margin:8px 0 12px}.menu-panel .difficulty-selector button{padding:8px 0}.menu-panel .menu-controls{margin-top:10px}.net-shell{padding:19px 24px}.net-header h2{font-size:23px}}
@media(max-width:680px){.net-layer{padding:10px}.net-shell{max-height:calc(100vh - 20px);padding:20px 16px}.net-seats{grid-template-columns:1fr}.net-room-actions{grid-template-columns:1fr 1fr}.net-room-actions .text-button{grid-column:1/-1}.net-toolbar{flex-wrap:wrap}.net-toolbar input{min-width:140px}.menu-panel{padding-right:0;max-height:calc(100vh - 150px)}.v1-site-return{left:17px;top:20px}.net-connection{top:95px}.score-name b{max-width:90px}}
@media(prefers-reduced-motion:reduce){.match-orbit{animation:none}}

.net-shell [hidden]{display:none!important}
