.challenge-starter,.challenge-home-callout{border:1px solid #687b46;background:#202d18;border-radius:14px;padding:22px;margin:0 0 20px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.challenge-starter>div,.challenge-home-callout>div{flex:1;min-width:200px}.challenge-starter strong{font-size:19px}.challenge-starter p,.challenge-home-callout p{font-size:15px;line-height:1.6;color:#c0cbb5;margin:8px 0 0}.challenge-home-callout{margin:0 0 28px}.challenge-home-callout h2{font-size:29px;margin:8px 0}.challenge-home-callout .primary{flex-shrink:0}.challenge-panel{border:1px solid #677d46;background:#1c2516;border-radius:16px;padding:24px;margin-bottom:22px;min-width:0}.challenge-panel-top{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}.challenge-panel h2{font-size:25px;margin:9px 0 12px;line-height:1.3}.challenge-panel .puzzle-select{max-width:100%}.challenge-objective{color:#e4f1d2;font-weight:700;line-height:1.7;margin:12px 0}.challenge-note{color:#b1bea4;font-size:13px;line-height:1.65;margin:10px 0;overflow-wrap:anywhere}.challenge-code{display:block;color:var(--lime);font-size:13px;letter-spacing:.06em;overflow-wrap:anywhere;margin:14px 0 10px}.challenge-link,.challenge-name,.challenge-import input,.challenge-join input{box-sizing:border-box;width:100%;min-width:0;border:1px solid #536642;border-radius:8px;background:#12180e;color:#f4f6ee;font:16px 'DM Sans',Arial,sans-serif;padding:12px;min-height:46px}.challenge-link{font-size:12px;color:#a9bd98;overflow:hidden;text-overflow:ellipsis}.challenge-actions{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap;margin:14px 0}.challenge-actions button{white-space:normal;min-height:44px}.challenge-name-label{display:block;font-size:13px;font-weight:700;margin:20px 0 8px}.challenge-name{max-width:300px}.challenge-time{border-top:1px solid #405335;padding-top:18px;margin-top:20px}.challenge-time strong{font:700 clamp(38px,5vw,54px) 'Space Grotesk',Arial,sans-serif;color:var(--lime);font-variant-numeric:tabular-nums;display:block;margin-top:4px;line-height:1.2}.challenge-feedback{color:#d4e5bd;font-size:14px;line-height:1.65;margin:8px 0}.challenge-feedback:empty{display:none}.challenge-gate{text-align:center;max-width:480px;padding:12px 0}.challenge-gate h2{font-size:28px;margin:14px 0;line-height:1.25}.challenge-gate p{font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:24px}.challenge-gate .primary{white-space:normal;min-height:50px}.challenge-compare{border-top:1px solid #405335;margin-top:20px;padding-top:14px}.challenge-compare summary{cursor:pointer;color:var(--lime);line-height:1.5;font-weight:700;padding:8px 0}.challenge-import{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0}.challenge-import input{flex:1;min-width:150px}.challenge-import button{min-height:46px}.challenge-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:16px 0;font-size:14px}.challenge-table th,.challenge-table td{padding:12px 8px;border-bottom:1px solid #405335;vertical-align:top;line-height:1.5;text-align:left;overflow-wrap:anywhere}.challenge-table th:nth-child(1){width:32%}.challenge-table th:nth-child(2){width:44%}.challenge-table th:nth-child(3){width:24%}.challenge-table tbody th{font-weight:500}.challenge-table thead{color:#b4c7a3}.challenge-result{border:1px solid #8cae5c;border-radius:12px;background:#26371d;padding:20px;margin:20px 0}.challenge-result h3{font-size:30px;line-height:1.3;margin:12px 0}.challenge-medal{font-weight:700;color:var(--lime);line-height:1.6}.challenge-hub-intro{max-width:800px}.challenge-hub-intro h1{font-size:clamp(34px,5vw,55px);line-height:1.1;letter-spacing:-1px}.challenge-hub-intro>p{font-size:18px;line-height:1.8;color:#c2cbb9}.challenge-join{padding:24px;margin:28px 0 40px;border:1px solid var(--line);background:var(--panel);border-radius:12px}.challenge-join label{display:block;font-size:19px;font-weight:700;margin-bottom:14px}.challenge-join>div{display:flex;gap:12px;flex-wrap:wrap}.challenge-join input{flex:1;min-width:180px}.challenge-join button{min-height:46px}.challenge-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:26px 0 44px}.challenge-hub-card{background:var(--panel);border:1px solid #4b5c3c;border-radius:14px;padding:24px;min-width:0;display:flex;flex-direction:column}.challenge-hub-card h2{font-size:24px;line-height:1.3;margin:8px 0}.challenge-hub-card .hub-copy{color:var(--muted);font-size:15px;line-height:1.65;margin:8px 0 20px}.challenge-hub-card .puzzle-select-label{justify-content:space-between;gap:10px}.hub-glyph{height:66px;color:var(--lime);font:700 30px 'Space Grotesk',Arial,sans-serif;display:flex;align-items:center}.hub-goal{font-size:14px;color:#d0dfc0;line-height:1.7;flex:1;margin:18px 0 22px}.challenge-create{text-align:center;display:block;white-space:normal}.challenge-explainer{border-top:1px solid var(--line);padding:28px 0 44px;max-width:860px}.challenge-explainer h2{font-size:27px;line-height:1.3}.challenge-explainer li,.challenge-explainer p{color:#bdc7b1;font-size:16px;line-height:1.8}.challenge-explainer li{margin-bottom:12px}.challenge-panel button:focus-visible,.challenge-panel input:focus-visible,.challenge-panel select:focus-visible,.challenge-join input:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
@media(max-width:1000px){.challenge-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.challenge-invite{border-top:1px solid #405335;padding-top:12px;margin:14px 0}.challenge-invite summary{color:var(--lime);font-weight:700;font-size:14px;cursor:pointer;padding:6px 0;line-height:1.5}.challenge-person{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:18px;align-items:center;margin-top:18px}.challenge-person .challenge-name-label{margin:0 0 8px}.challenge-person .challenge-time{border:0;padding:0;margin:0}.challenge-person .challenge-time strong{font-size:42px}.challenge-start{width:100%;min-height:48px;margin:8px 0 16px;white-space:normal}.challenge-live-strip{position:sticky;top:10px;z-index:12;display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid #758f51;border-radius:10px;background:#1e2b17;padding:12px 18px;margin-bottom:12px;box-shadow:0 5px 20px #0005}.challenge-live-strip span{font-size:13px;line-height:1.5;color:#c4d4b5}.challenge-live-strip strong{font:700 28px 'Space Grotesk',Arial,sans-serif;color:var(--lime);font-variant-numeric:tabular-nums;white-space:nowrap}.challenge-panel.is-playing .challenge-person,.challenge-panel.is-playing>#challenge-timer-note{display:none}.board:has(+ #status){scroll-margin-top:90px}
@media(max-width:650px){.challenge-panel{padding:18px 14px}.challenge-panel h2{font-size:23px}.challenge-panel-top{gap:10px}.challenge-gate h2{font-size:25px}.challenge-starter,.challenge-home-callout{padding:20px;gap:14px}.challenge-starter .primary,.challenge-home-callout .primary{width:100%;text-align:center;white-space:normal}.challenge-hub-grid{grid-template-columns:1fr;gap:16px}.challenge-hub-card{padding:22px}.challenge-join{padding:20px}.challenge-name{max-width:100%}.challenge-actions .primary{width:100%;text-align:center}.challenge-table{font-size:12px}.challenge-table th,.challenge-table td{padding:10px 5px}.challenge-result{padding:16px}.challenge-result h3{font-size:25px}.challenge-home-callout h2{font-size:26px}}
@media(max-width:650px){.challenge-person{grid-template-columns:minmax(0,1fr) 100px;gap:12px}.challenge-person .challenge-time strong{font-size:32px}.challenge-person .daily-small-label{font-size:9px}.challenge-name{padding:10px;font-size:15px}.challenge-live-strip{top:6px;padding:10px 12px}.challenge-live-strip span{font-size:12px}.challenge-live-strip strong{font-size:25px}}
