:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#13251e;background:#f4f7f4}*{box-sizing:border-box}body{margin:0}a{color:inherit}.topbar{background:#102c20;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:16px max(24px,calc((100vw - 1180px)/2));gap:20px}.brand{text-decoration:none;font-size:1.25rem;font-weight:800;letter-spacing:-.03em}.topbar-right{display:flex;align-items:center;gap:18px;font-size:.9rem}.topbar form{margin:0}.link-button{border:0;background:none;color:#b4eec9;cursor:pointer;font:inherit}.shell{max-width:1180px;margin:0 auto;padding:36px 24px 70px}.page-head{display:flex;justify-content:space-between;margin-bottom:25px}h1{font-size:2.2rem;line-height:1.1;letter-spacing:-.04em;margin:8px 0 10px}h2{font-size:1.08rem;letter-spacing:-.02em;margin:0 0 20px}.eyebrow{color:#0b8d4b;text-transform:uppercase;font-weight:800;font-size:.72rem;letter-spacing:.12em;margin:0}.muted{color:#637469;line-height:1.5;margin:0}.card{background:#fff;border:1px solid #dce6dc;border-radius:16px;padding:25px;box-shadow:0 4px 18px rgba(18,50,30,.04)}.dashboard-stack{display:grid;gap:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.stack{display:grid;gap:14px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:grid;gap:7px;font-size:.86rem;font-weight:650;color:#33483b}input,select{width:100%;border:1px solid #cbdacf;border-radius:9px;padding:11px 12px;background:#fff;color:#17271c;font:inherit;min-width:0}input:focus,select:focus{outline:2px solid #45b475;outline-offset:1px}.button{border:0;border-radius:10px;background:#147a42;color:#fff;font:inherit;font-weight:750;padding:12px 16px;cursor:pointer}.button:hover{background:#0e6535}.alert{border-radius:10px;padding:13px 16px;font-weight:600}.success{background:#e6f7eb;color:#15613a}.error{background:#fff0ee;color:#a3322a}.error-text{color:#a3322a}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;padding:13px 12px;border-bottom:1px solid #e7ece8}th{color:#66766b;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}tr:last-child td{border-bottom:0}.login-card{width:min(100%,430px);margin:10vh auto;padding:34px}.login-card h1{font-size:1.8rem}.login-card .stack{margin-top:26px}.match-note{margin-bottom:22px}.match-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(300px,2fr);gap:22px;padding:18px 0;border-top:1px solid #e7ece8}.match-row strong{font-size:1rem}.match-url-form{display:flex;align-items:end;gap:10px}.match-url-form label{flex:1}.match-url-form .button{white-space:nowrap}@media(max-width:700px){.form-grid,.two-cols,.match-row{grid-template-columns:1fr}.match-url-form{flex-direction:column;align-items:stretch}.shell{padding:24px 16px 50px}.topbar{padding:14px 16px}.topbar-right span{display:none}.card{padding:20px}h1{font-size:1.8rem}}
.watch-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:20px;align-items:start}.watch-grid .card{min-width:0}.match-chat h2{margin:0 0 6px}.match-chat .muted{margin:0 0 12px}.chat-identity{font-weight:700;color:#145c31}.chat-name-form,.chat-send-form{display:grid;gap:7px}.chat-name-form label,.chat-send-form label{font-size:.8rem;font-weight:700}.chat-inline{display:flex;gap:8px}.chat-inline input{flex:1;min-width:0;border:1px solid #cbd8cf;border-radius:9px;padding:10px;font:inherit}.chat-inline .button{padding:9px 12px}.chat-messages{height:340px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #e0e8e1;border-radius:10px;background:#fbfdfb;margin:14px 0;padding:12px}.chat-message{padding:8px 0;border-bottom:1px solid #e8eee8;overflow-wrap:anywhere}.chat-message:last-child{border-bottom:0}.chat-message-heading{display:flex;justify-content:space-between;gap:10px;font-size:.82rem}.chat-message-heading time{color:#758177;white-space:nowrap}.chat-message p{margin:4px 0 0;white-space:pre-wrap}.chat-emojis{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:10px}.chat-emojis button{border:0;border-radius:7px;background:#edf5ee;padding:5px 8px;font-size:1.1rem;cursor:pointer}.match-chat #chat-status{min-height:1.2em;margin:8px 0 0}@media(max-width:900px){.watch-grid{grid-template-columns:1fr}}
.gateway-fields[hidden]{display:none}
