:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#15392f;background:#f3f7f4;line-height:1.5}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;background:#176b57;color:white;padding:calc(12px + env(safe-area-inset-top)) max(18px,calc((100vw - 1060px)/2)) 12px}.brand{font-weight:850;letter-spacing:.16em;color:white;text-decoration:none;font-size:15px}header button{color:#176b57}main{max-width:1060px;margin:auto;padding:18px 16px 60px}.hero{padding:16px 2px 24px}.hero h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.03em;line-height:1.15;margin:8px 0 14px}.hero p{max-width:760px}.hero.compact{padding-bottom:10px}.eyebrow{color:#347763;font-size:12px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.card{padding:20px;border:1px solid #d7e4dc;background:white;border-radius:18px;margin:0 0 16px;box-shadow:0 5px 20px #15392f04}h2{font-size:21px;line-height:1.3;margin:0 0 12px}h3{font-size:17px;margin:0 0 10px}p{margin:8px 0 14px}.muted{color:#687c73;font-size:14px}button,.button{border:1px solid #b9d1c5;background:#f8fbf9;color:#176b57;border-radius:12px;font:inherit;font-size:15px;font-weight:700;min-height:44px;padding:10px 14px;cursor:pointer;display:inline-block;text-decoration:none}button:disabled{opacity:.45;cursor:default}.primary{background:#176b57;color:white;border-color:#176b57}.danger{background:#fff5f3;color:#9c372e;border-color:#ebc5bd}.full{width:100%}input,select,textarea{width:100%;border:1px solid #c6d8ce;border-radius:10px;padding:11px;font:inherit;font-size:16px;background:white;color:#15392f}label{display:block;margin-bottom:15px}label>span{display:block;font-size:14px;font-weight:650;margin-bottom:6px}.check{display:flex;align-items:flex-start;gap:10px}.check input{width:20px;height:20px;margin:3px 0;flex-shrink:0}.check span{font-size:13px;font-weight:400}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.actions,.top-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.badge{background:#e6f1ea;border-radius:20px;padding:4px 10px;white-space:nowrap;font-size:13px}.status{font-size:13px;color:#587064;margin:6px 0 14px}.error{padding:13px 15px;background:#fff1eb;border:1px solid #ebc8b7;border-radius:12px;color:#923c28;margin:10px 0}.court-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.court{background:#f1f7f3;border:1px solid #d5e5db;border-radius:14px;padding:16px}.court .team{font-size:18px;font-weight:700;overflow-wrap:anywhere}.court .versus{font-size:12px;color:#81958b;margin:6px 0}.court button{margin-top:14px}.court.is-mine{border:2px solid #176b57}.my-card{border:2px solid #176b57;background:#f9fcfa}.my-status{font-size:20px;font-weight:700}.queue{padding-left:24px;margin:8px 0}.queue li{padding:8px;border-bottom:1px solid #edf2ef}.queue li small{display:block;color:#71867a}.queue li.is-mine{background:#e8f4ec;border-radius:8px}.roster-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 0;border-bottom:1px solid #edf2ef}.roster-row strong{overflow-wrap:anywhere}.roster-row small{display:block;color:#71867a}.roster-row .actions{grid-column:1/-1;margin:0}.roster-row button{font-size:13px;min-height:40px;padding:8px 11px}.recent-row{padding:10px 0;border-bottom:1px solid #edf2ef;font-size:14px;overflow-wrap:anywhere}details summary{font-size:17px;font-weight:750;cursor:pointer;line-height:1.4}details[open]>summary{margin-bottom:15px}dialog{border:1px solid #d2e1d7;border-radius:20px;width:min(94vw,430px);padding:20px;max-height:90vh;overflow:auto;color:#15392f}dialog::backdrop{background:#102b2355}#qrCanvas{max-width:100%;height:auto;display:block;margin:10px auto}#qrHint{font-size:14px;overflow-wrap:anywhere}.recent-room{display:block;color:#176b57;text-decoration:none;padding:12px 0;border-bottom:1px solid #edf2ef}.recent-room small{display:block;color:#74867c}@media(min-width:760px){#home .card{max-width:700px;margin-left:auto;margin-right:auto}#home .hero{max-width:700px;margin:auto}}@media(max-width:420px){.card{padding:16px}.top-actions button{flex:1;font-size:14px;padding:10px}.two{gap:8px}.actions button{flex-grow:1}}@media print{header,button,#joinCard,#ownerTools,#organizerAccess,#handoffIncoming,.top-actions{display:none!important}main{max-width:none}.card{break-inside:avoid;box-shadow:none}}

.header-nav{display:flex;align-items:center;gap:8px}.header-nav .button{white-space:nowrap}.header-nav button,.header-nav .button{padding:8px 11px;font-size:14px}@media(max-width:420px){header{padding-left:14px;padding-right:14px}.brand{font-size:12px;letter-spacing:.1em}.header-nav{gap:5px}.header-nav button,.header-nav .button{font-size:13px;padding:8px}}
.optional-details{margin:12px 0 18px}.optional-details summary,.player-detail-editor summary{font-size:14px;font-weight:600}.player-detail-editor{grid-column:1/-1}.player-detail-editor .two{margin-top:12px}.player-detail-editor label{margin-bottom:8px}#namePreview{overflow-wrap:anywhere}#home>.onsite-activity-list{max-width:700px;margin:16px auto}.onsite-session-link strong{overflow-wrap:anywhere}

.plan-round{border-top:1px solid #d7e4dc;padding:12px 0}.plan-round p{font-size:14px;overflow-wrap:anywhere}.recap-media-item{padding:12px 0;border-bottom:1px solid #d7e4dc}.recap-media-item img,.recap-media-item video{display:block;max-width:100%;max-height:320px;border-radius:10px}#recapPublicStory{white-space:pre-wrap;overflow-wrap:anywhere}#recapContribute,#recapManage{margin-top:18px}#recapFiles{font-size:14px}#scheduleRounds{max-width:120px}@media print{#rotationSettings,#recapContribute,#recapManage,#identityStatus,#profileLinkCard,#endSession,#myCard,#queueSection,#roomView>section:last-of-type{display:none!important}}

@media print{#onsiteRecap,#profileClaimReview{display:none!important}}

#qrCanvas{width:min(100%,320px);height:auto;image-rendering:pixelated;background:white}#saveQR{text-align:center;display:block;margin:10px 0;text-decoration:none}
