:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#edf4f5;background:#101c25;line-height:1.55;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}header,footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px max(20px,calc((100vw - 1120px)/2));background:#152732;flex-wrap:wrap}header{border-bottom:1px solid #34505c}a{color:#a9e2df;text-underline-offset:4px}a:hover{color:#fff}.brand{font-weight:800;letter-spacing:.12em;text-decoration:none;color:#f3c777}.brand span{display:block;font-size:.7rem;letter-spacing:.04em;color:#b2c9ce}nav{display:flex;gap:20px;flex-wrap:wrap}main{padding:40px 20px;min-height:75vh}.card{max-width:680px;margin:0 auto 24px;padding:clamp(20px,4vw,38px);border:1px solid #36525e;border-radius:16px;background:#172b37;box-shadow:0 12px 40px #0002}h1{font-size:clamp(1.8rem,5vw,2.6rem);line-height:1.15;margin:10px 0 22px}h2{font-size:1.25rem}h3{margin-bottom:6px}.eyebrow{color:#f3c777;font-weight:700;letter-spacing:.12em;font-size:.75rem}.notice{border-left:3px solid #f3c777;background:#233843;padding:14px 18px}.muted,.small,footer{color:#b4c9cf}.small{font-size:.9rem}form{display:grid;gap:18px}label{display:grid;gap:7px;font-weight:600}input,textarea,select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #63808b;background:#0e202b;border-radius:6px;color:inherit;font:inherit}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #f3c777;outline-offset:3px}.check{display:flex;align-items:flex-start;gap:12px;font-size:.94rem;font-weight:400}.check input{width:24px;height:24px;min-height:24px;flex:0 0 24px;margin-top:2px;accent-color:#66cdc6}button,.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:10px 20px;border:1px solid #78d5cf;border-radius:7px;background:#78d5cf;color:#10252d;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:#a0e6df;color:#10252d}button:disabled{opacity:.45;cursor:default}.secondary{background:#223d4b;color:#e7f3f5;border-color:#668793}.actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.admin{max-width:1000px;margin:auto}.admin .card{max-width:none}.filters{grid-template-columns:1fr 1fr auto;align-items:end}.tester{border-top:1px solid #3d5965;margin-top:24px;padding-top:12px;overflow-wrap:anywhere}.tester .actions{gap:8px}.tester button{padding:8px 12px}.tag{font-size:.8rem;color:#f3c777}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#0d202b;padding:16px;border-radius:8px;font-size:.85rem}footer{font-size:.85rem}@media(max-width:540px){main{padding:24px 12px}header,footer{padding:18px}nav{gap:14px;font-size:.9rem}.filters{grid-template-columns:1fr}.card{padding:20px}.actions .button{width:100%}}
.approval-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:20px 0}
.approval-count{display:flex;flex-direction:column;gap:3px;min-width:0;padding:14px 12px;border:1px solid #63808b;border-radius:9px;background:#10242f;color:#e7f3f5;text-decoration:none;font-size:.85rem;overflow-wrap:anywhere}
.approval-count strong{font-size:1.7rem;line-height:1.2}
.approval-count[aria-current="page"]{outline:3px solid #f3c777;outline-offset:2px}
.approval-count:hover{filter:brightness(1.15)}
.approval-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:1px solid;border-radius:7px;font-weight:750;font-size:.95rem;white-space:nowrap}
.approval-approved{background:#173e31;border-color:#7bd6a3;color:#c5f9db}
.approval-pending{background:#42351b;border-color:#e6b958;color:#ffe4a6}
.approval-declined{background:#47272d;border-color:#db8b96;color:#ffd4db}
.approval-revoked{background:#373241;border-color:#b9a4ca;color:#e9dcf5}
.admin .tester{border:1px solid #4e6b78;border-left:5px solid #63808b;border-radius:10px;background:#10242f;padding:20px;margin-top:16px}
.admin .tester-approved{border-left-color:#7bd6a3}.admin .tester-pending{border-left-color:#e6b958}.admin .tester-declined{border-left-color:#db8b96}.admin .tester-revoked{border-left-color:#b9a4ca}
.tester-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.tester-heading h3{margin:0;font-size:1.2rem}.tester-heading>div{min-width:0}.tester-contact{margin:5px 0;color:#c6d8dc}
.tester-access{border-top:1px solid #3d5965;padding-top:12px}.access-ready{color:#b5efcf}.access-warning{color:#ffe4a6}
@media(max-width:760px){.approval-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:540px){.approval-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admin .tester{padding:16px}.tester-heading{gap:10px}.approval-badge{white-space:normal}}
:root{--feedback-line:#3d5965}
.feedback-board{max-width:1000px;margin:auto;overflow-wrap:anywhere}
.feedback-thread{max-width:760px;margin:auto;overflow-wrap:anywhere}
.feedback-thread .card,.feedback-board .card{max-width:none}
.feedback-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.feedback-heading h1{margin-bottom:10px}
.feedback-filters{grid-template-columns:minmax(180px,2fr) minmax(140px,1fr) minmax(140px,1fr) auto;align-items:end;margin:28px 0}
.feedback-list{display:grid;gap:16px;margin:24px 0}
.feedback-report{margin:0;padding:24px}
.feedback-report h2{font-size:1.25rem;margin:14px 0 10px;line-height:1.35}
.feedback-report h2 a{text-decoration:none}
.feedback-report h2 a:hover{text-decoration:underline}
.feedback-report p:last-child{margin-bottom:0}
.feedback-excerpt{color:#c6d8dc;white-space:pre-line}
.feedback-tags{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.feedback-status,.feedback-private{font-size:.8rem;font-weight:700;border:1px solid #718f9b;border-radius:6px;padding:3px 10px;background:#233d4b;color:#edf4f5}
.status-investigating{color:#ffe2a5;border-color:#ad8a48;background:#413827}
.status-planned{color:#cdd6ff;border-color:#7c88b9;background:#2b354f}
.status-fixed{color:#b5efcf;border-color:#6baf8f;background:#1e4034}
.feedback-private{background:#3b3041;border-color:#a58bb3;color:#ecd6f5}
.feedback-text{white-space:pre-wrap;overflow-wrap:anywhere}
.feedback-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.feedback-audience{border:1px solid #63808b;border-radius:8px;padding:16px;display:grid;gap:16px;min-width:0}
.feedback-audience legend{padding:0 8px;font-weight:700}
.feedback-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.feedback-metadata{margin:24px 0;color:#b4c9cf;font-size:.9rem}
.feedback-metadata summary{cursor:pointer;min-height:44px;display:list-item;align-content:center}
.feedback-metadata dl{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:10px}
.feedback-metadata dd{margin:0;overflow-wrap:anywhere}
.feedback-support{border-top:1px solid var(--feedback-line);padding-top:12px;margin-top:24px}
.feedback-support form{display:inline-grid}
.feedback-status-form{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:20px}
.feedback-reply{border-top:1px solid var(--feedback-line);padding:18px 0}
.feedback-reply form{margin-top:16px;justify-items:start}
.feedback-owner-reply{border-left:3px solid #f3c777;padding-left:16px}
.feedback-hidden-reply{border:1px dashed #a58bb3;padding:16px}
.feedback-reply-form{border-top:1px solid var(--feedback-line);padding-top:24px;margin-top:24px}
.feedback-reply-form p{margin:0}
.feedback-pagination{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:24px 0}
@media(max-width:760px){.feedback-filters{grid-template-columns:1fr 1fr}.feedback-filters label:first-child{grid-column:1/-1}}
@media(max-width:540px){.feedback-fields,.feedback-filters,.feedback-status-form{grid-template-columns:1fr}.feedback-heading>.button{width:100%}.feedback-metadata dl{grid-template-columns:1fr}.feedback-metadata dd{margin-bottom:12px}.feedback-pagination{font-size:.9rem}.feedback-report{padding:20px}}

/* Keep diagnostic date filters inside the review card on desktop and phones. */
.diagnostics{max-width:1000px}.diagnostic-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.diagnostic-filters label,.diagnostic-filters input{min-width:0}.diagnostic-filters .actions{grid-column:1/-1}
@media(max-width:540px){.diagnostic-filters{grid-template-columns:minmax(0,1fr)}}

/* The public launch menu loads only the website; games open on selection. */
.brand{display:flex;flex-direction:column;justify-content:center;min-height:48px}
header nav a,footer a{display:inline-flex;align-items:center;min-height:48px}
.home{max-width:880px;margin:0 auto}
.home-intro{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:28px;margin-bottom:28px}
.home-intro-copy{min-width:0}
.home-intro h1{margin-bottom:14px}
.home-intro-copy>p:last-child{color:#b4c9cf;margin:0}
.home-art{position:relative;height:210px;overflow:hidden;border:1px solid #63808b;border-radius:14px;background:#172b37}
/* Frame the ball cluster from the unmodified opening-screen still. */
.home-court{display:block;width:100%;height:100%;object-fit:cover;object-position:78% 50%;transform:scale(2);transform-origin:76% 50%}
.home-coin{position:absolute;left:14px;bottom:12px;width:96px;height:96px;filter:drop-shadow(0 4px 6px #0005)}
.home-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.home-action{display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:150px;padding:26px;border:1px solid #63808b;border-radius:14px;background:#172b37;color:#edf4f5;text-decoration:none;overflow-wrap:anywhere}
.home-action h2{margin:0;font-size:1.3rem;line-height:1.3}
.home-action p{margin:0;color:#b4c9cf}
.home-action:hover{background:#203b49;border-color:#a9e2df;color:#fff}
.home-action-primary{background:#78d5cf;border-color:#78d5cf;color:#10252d}
.home-action-primary p{color:#163c46}
.home-action-primary:hover{background:#a0e6df;border-color:#a0e6df;color:#10252d}
.home-links{display:flex;flex-wrap:wrap;column-gap:26px;row-gap:4px;margin-top:24px}
.home-links a{display:inline-flex;align-items:center;min-height:48px}
@media(max-width:600px){.home-intro{grid-template-columns:minmax(0,1fr);gap:18px}.home-art{height:130px}.home-coin{left:10px;bottom:10px;width:74px;height:74px}.home-actions{grid-template-columns:minmax(0,1fr);gap:14px}.home-action{min-height:132px;padding:22px}.home-links{column-gap:20px}}
