:root{--color-navy-900: #0f172a;--color-navy-800: #1e293b;--color-purple-500: #7c6cff;--color-purple-700: #5b4dcc;--color-lavender-100: #eef0ff;--color-bg: #f8fafc;--color-text-muted: #64748b;--color-border: #cbd5e1;--color-success: #86efac;--color-warning: #fbbf24;--color-danger-bg: #e2e8f0;--color-danger-text: #0f172a;--color-danger-border: rgba(15, 23, 42, .18);--color-danger-strong: #1e293b;--gradient-primary: linear-gradient(90deg, #5b4dcc 0%, #7c6cff 100%);--gradient-hero: linear-gradient(135deg, #0f172a 0%, #1e293b 45%, #5b4dcc 100%);--shadow-card: 0 14px 34px rgba(15, 23, 42, .08);--shadow-purple: 0 14px 28px rgba(91, 77, 204, .24);--radius-card: 22px;--radius-control: 16px;color:var(--color-navy-900);background:var(--color-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100dvh;background:radial-gradient(circle at top left,rgba(124,108,255,.12),transparent 28rem),linear-gradient(180deg,#ffffff 0,var(--color-bg) 18rem);-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}input,select{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-navy-900);font-size:16px;height:56px;outline:none;padding:0 16px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;width:100%}textarea{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-navy-900);font-size:16px;min-height:120px;outline:none;padding:14px 16px;resize:vertical;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;width:100%}input:focus{border-color:var(--color-purple-500);box-shadow:0 0 0 4px #7c6cff2e}select:focus,textarea:focus{border-color:var(--color-purple-500);box-shadow:0 0 0 4px #7c6cff2e}input::placeholder,textarea::placeholder{color:#94a3b8}input[type=range]{appearance:none;background:transparent;cursor:pointer;height:32px;padding:0}input[type=range]::-webkit-slider-runnable-track{background:var(--color-lavender-100);border-radius:999px;height:8px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-purple-500);border:4px solid #fff;border-radius:50%;box-shadow:0 2px 8px #00000029;height:24px;margin-top:-8px;width:24px}input[type=range]::-moz-range-track{background:var(--color-lavender-100);border-radius:999px;height:8px}input[type=range]::-moz-range-thumb{background:var(--color-purple-500);border:4px solid #fff;border-radius:50%;box-shadow:0 2px 8px #00000029;height:16px;width:16px}.mobile-app{min-height:100dvh;padding-bottom:28px}.app-bar{align-items:center;background:#ffffffeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(15,23,42,.08);display:flex;height:72px;justify-content:space-between;left:0;padding:0 20px;position:fixed;top:0;width:100%;z-index:10}.brand-mark{align-items:center;color:var(--color-purple-700);display:inline-flex;gap:8px;font-size:1.25rem;font-weight:900;letter-spacing:0;min-width:0}.brand-button{align-self:center;background:transparent;border-radius:14px;height:54px;justify-content:center;max-width:min(58vw,230px);padding:0}.brand-logo{display:block;border-radius:12px;height:48px;max-width:min(58vw,230px);object-fit:cover;object-position:center;transform:translateY(2px);width:206px}.header-actions{align-items:center;display:inline-flex;gap:8px;position:relative}.avatar-button{align-items:center;background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.28);border-radius:999px;color:var(--color-purple-700);display:inline-flex;height:34px;justify-content:center;width:34px}.account-menu-wrap{position:relative}.account-menu{background:#fff;border:1px solid var(--color-border);border-radius:18px;box-shadow:0 18px 46px #0f172a29;display:grid;gap:6px;min-width:164px;padding:8px;position:absolute;right:0;top:calc(100% + 10px);z-index:30}.account-menu button{align-items:center;background:var(--color-bg);border-radius:12px;color:var(--color-navy-900);display:flex;font-weight:850;gap:8px;min-height:42px;padding:0 12px;text-align:left;width:100%}.account-menu button:hover,.account-menu button:focus-visible{background:var(--color-lavender-100)}.help-list{display:grid;gap:10px}.help-list p{background:var(--color-bg);border:1px solid rgba(124,108,255,.18);border-radius:16px;color:var(--color-text-muted);line-height:1.45;margin:0;padding:12px}.modal-backdrop{align-items:center;background:#0f172a7a;display:flex;inset:0;justify-content:center;overscroll-behavior:contain;overflow:hidden;padding:20px;position:fixed;touch-action:none;z-index:30}.modal-backdrop.confirm-backdrop{z-index:80}.admin-modal{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:0 24px 70px #0f172a3d;display:grid;gap:18px;max-height:min(780px,calc(100dvh - 40px));max-width:420px;overscroll-behavior:contain;overflow:auto;padding:18px;touch-action:pan-y;width:100%}.template-create-modal{max-width:520px}.wide-admin-modal{max-width:860px}.detail-modal{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:0 24px 70px #0f172a3d;display:grid;gap:18px;max-height:min(780px,calc(100dvh - 40px));max-width:760px;overscroll-behavior:contain;overflow:auto;padding:18px;touch-action:pan-y;width:100%}.confirm-modal{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:0 24px 70px #0f172a3d;display:grid;gap:18px;max-width:440px;padding:18px;width:100%}.success-burst{align-items:center;animation:success-pop 1.8s ease both;background:#fff;border:1px solid rgba(134,239,172,.7);border-radius:22px;box-shadow:0 18px 48px #0f172a29;color:#006c49;display:grid;gap:8px;justify-items:center;left:50%;min-width:210px;padding:18px;position:fixed;top:84px;transform:translate(-50%);z-index:90}.success-burst span{align-items:center;background:var(--color-success);border-radius:999px;color:#002113;display:inline-flex;height:58px;justify-content:center;width:58px}.success-burst strong{color:var(--color-navy-900)}.success-burst small{color:var(--color-text-muted);font-weight:800}.game-complete-burst{animation:game-complete-pop 3.2s ease both;border-color:var(--color-warning);box-shadow:0 28px 80px #5b4dcc47;gap:10px;min-width:min(340px,calc(100vw - 40px));overflow:hidden;padding:24px 28px;top:50%}.game-complete-burst:before,.game-complete-burst:after{background:radial-gradient(circle,var(--color-purple-500) 0 3px,transparent 4px),radial-gradient(circle,var(--color-success) 0 4px,transparent 5px),radial-gradient(circle,var(--color-warning) 0 3px,transparent 4px);background-position:0 0,28px 18px,52px 4px;background-size:72px 44px;content:"";inset:0;opacity:.55;pointer-events:none;position:absolute}.game-complete-burst:after{animation:confetti-drift 3.2s ease both;transform:rotate(180deg)}.game-complete-burst>*{position:relative;z-index:1}.game-complete-burst span{background:var(--color-warning);color:var(--color-navy-900);height:72px;width:72px}.game-complete-burst strong{font-size:1.35rem}@keyframes success-pop{0%{opacity:0;transform:translate(-50%,-14px) scale(.88)}18%,78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-10px) scale(.96)}}@keyframes game-complete-pop{0%{opacity:0;transform:translate(-50%,-42%) scale(.76) rotate(-2deg)}16%{opacity:1;transform:translate(-50%,-50%) scale(1.08) rotate(1deg)}26%,82%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}to{opacity:0;transform:translate(-50%,-54%) scale(.94)}}@keyframes confetti-drift{0%{background-position:0 -24px,28px -6px,52px -20px}to{background-position:0 44px,28px 62px,52px 48px}}.modal-heading{align-items:start;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto}.modal-heading h2{color:var(--color-navy-900);font-size:1.35rem;line-height:1.2;margin:0 0 3px}.modal-heading p{color:var(--color-text-muted);line-height:1.4;margin:0}.close-button{align-items:center;background:var(--color-lavender-100);border-radius:999px;color:var(--color-purple-700);display:inline-flex;height:36px;justify-content:center;width:36px}.app-shell{margin:0 auto;max-width:448px;padding:104px 20px 0}.hero{background:var(--gradient-hero);border-radius:28px;box-shadow:0 24px 58px #0f172a2e;margin-bottom:22px;overflow:hidden;padding:24px;position:relative;text-align:left}.hero:after{background:linear-gradient(90deg,transparent,rgba(124,108,255,.42),transparent);content:"";height:2px;inset:auto 24px 18px;position:absolute}.hero h1{color:#fff;font-size:2rem;font-weight:800;letter-spacing:0;line-height:1.18;margin:0 0 8px}.hero p{color:#ffffffc7;font-size:1.08rem;line-height:1.5;margin:0}.toast{background:var(--color-navy-900);border-radius:16px;box-shadow:0 16px 34px #0f172a2e;color:#fff;font-weight:700;left:50%;padding:11px 14px;position:fixed;top:76px;transform:translate(-50%);white-space:nowrap;z-index:20}.toast-error{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);box-shadow:0 16px 34px #0f172a29;color:var(--color-danger-text);white-space:normal;width:min(420px,calc(100vw - 32px))}.toast-success{background:var(--color-navy-900)}.panel{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:18px}.landing-card{display:grid;gap:18px;margin-bottom:24px}.create-card{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#7c6cff80,#0f172a14) border-box;border-color:transparent}.card-title{align-items:center;display:flex;gap:12px}.card-title h2{color:var(--color-navy-900);font-size:1.35rem;line-height:1.25;margin:0}.icon-tile{align-items:center;border-radius:14px;display:inline-flex;height:40px;justify-content:center;width:40px}.icon-tile.blue{background:var(--color-lavender-100);color:var(--color-purple-700)}.icon-tile.green{background:#86efac3d;color:#006c49}.icon-tile.danger{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger-strong)}.challenge-range{display:grid;gap:10px}.range-label,.range-caps,.section-heading,.game-meta{align-items:center;display:flex;justify-content:space-between}.range-label span,.range-caps span{color:var(--color-text-muted);font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.range-label strong{background:var(--gradient-primary);border-radius:999px;color:#fff;font-size:1.25rem;line-height:1;min-width:48px;padding:8px 12px;text-align:center}.primary-action,.soft-action,.upload-button{align-items:center;border-radius:var(--radius-control);display:inline-flex;font-weight:750;gap:8px;justify-content:center;min-height:52px;transition:box-shadow .18s ease,transform .18s ease,background .18s ease,border-color .18s ease;width:100%}.primary-action{background:var(--gradient-primary);box-shadow:var(--shadow-purple);color:#fff}.primary-action:hover,.primary-action:focus-visible,.upload-button:hover,.upload-button:focus-visible{box-shadow:0 18px 34px #5b4dcc4d;transform:translateY(-1px)}.soft-action{background:#fff;border:1px solid rgba(124,108,255,.36);color:var(--color-purple-700)}.soft-action:hover,.soft-action:focus-visible,.text-inline-button:hover,.text-inline-button:focus-visible,.soft-mini-button:hover,.soft-mini-button:focus-visible{background:var(--color-lavender-100);border-color:#7c6cff80}.danger-action{background:linear-gradient(90deg,var(--color-navy-800) 0%,var(--color-navy-900) 100%);box-shadow:0 14px 28px #0f172a33;color:#fff}.primary-action:disabled,.soft-action:disabled,.game-control-button:disabled,.soft-mini-button:disabled{cursor:not-allowed;background:var(--color-lavender-100);border:1px solid var(--color-border);box-shadow:none;color:#94a3b8;opacity:1}.spin-icon{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.primary-action:active,.soft-action:active,.text-action:active{transform:scale(.98)}.text-action{background:transparent;border-radius:var(--radius-control);color:var(--color-purple-700);font-weight:750;min-height:44px;width:100%}.text-action.danger{background:#fff;border:1px solid rgba(124,108,255,.42);box-shadow:0 10px 22px #5b4dcc1a;color:var(--color-purple-700);display:inline-flex;align-items:center;justify-content:center;margin-top:4px;padding:0 16px}.text-action.danger:hover,.text-action.danger:focus-visible{background:var(--color-lavender-100);border-color:var(--color-purple-500);box-shadow:0 14px 28px #5b4dcc29}.input-label{color:var(--color-text-muted);display:grid;font-size:.75rem;font-weight:800;gap:8px;letter-spacing:.05em;text-transform:uppercase}.storage-note{color:var(--color-text-muted);font-size:.86rem;line-height:1.4;margin:-4px 0 0}.form-stack{display:grid;gap:14px}.admin-stat{align-items:center;background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.18);border-radius:18px;display:flex;justify-content:space-between;padding:14px}.admin-stat span{color:var(--color-text-muted);font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.admin-stat strong{color:var(--color-navy-900);font-size:1.4rem}.admin-tree,.admin-team-list,.admin-member-list{display:grid;gap:10px}.admin-dashboard{display:grid;gap:14px}.admin-toolbar,.admin-edit-row{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto}.admin-edit-row{grid-template-columns:minmax(0,1fr) auto auto}.admin-toolbar{align-items:center}.admin-action-row{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto}.admin-action-row .soft-action{min-height:44px;padding:0 18px;width:auto}.admin-select-wrap{align-items:center;background:linear-gradient(180deg,#fff 0%,var(--color-lavender-100) 100%);border:1px solid rgba(124,108,255,.34);border-radius:16px;box-shadow:0 12px 24px #0f172a0f;display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:52px;overflow:hidden;padding:0 14px 0 16px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.admin-select-wrap:focus-within{border-color:var(--color-purple-500);box-shadow:0 0 0 4px #7c6cff29,0 14px 28px #5b4dcc1f;transform:translateY(-1px)}.admin-select-wrap select{appearance:none;background:transparent;border:0;color:var(--color-navy-900);cursor:pointer;font:inherit;font-size:1rem;font-weight:800;min-height:50px;outline:0;padding:0 10px 0 0;width:100%}.admin-select-wrap svg{color:var(--color-purple-700);pointer-events:none}.admin-error{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:12px;color:var(--color-danger-text);font-weight:750;margin:0;padding:10px 12px}.admin-status{border-radius:10px;font-weight:800;margin:0;padding:10px 12px}.admin-status.loading{background:var(--color-lavender-100);color:var(--color-navy-900)}.admin-status.success{background:#86efac42;color:#006c49}.search-label span{align-items:center;background:var(--color-bg);border-radius:12px;display:grid;grid-template-columns:auto minmax(0,1fr);padding-left:14px}.search-label svg{color:var(--color-text-muted)}.search-label input{background:transparent}.admin-game,.admin-team{border:1px solid rgba(124,108,255,.18);border-radius:18px;display:grid;gap:10px;padding:12px}.admin-team{background:var(--color-lavender-100)}.admin-row,.admin-member,.confirm-actions{align-items:center;display:flex;gap:10px;justify-content:space-between}.compact-label{min-width:0}.compact-label input,.compact-label select{height:44px}.admin-row strong,.admin-member span{color:var(--color-navy-900);display:block;font-weight:850}.admin-row span{color:var(--color-text-muted);display:block;font-size:.82rem;line-height:1.35;margin-top:2px}.admin-member{background:#fff;border:1px solid rgba(124,108,255,.22);border-radius:16px;padding:7px 8px 7px 12px}.admin-member .compact-label{flex:1 1 auto}.delete-button{align-items:center;background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:999px;color:var(--color-danger-strong);display:inline-flex;flex:0 0 auto;height:36px;justify-content:center;width:36px}.soft-icon-button{align-items:center;background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.3);border-radius:999px;color:var(--color-purple-700);display:inline-flex;flex:0 0 auto;height:40px;justify-content:center;width:40px}.delete-button.small{height:30px;width:30px}.stat-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:24px}.stat-card{aspect-ratio:1;border-radius:var(--radius-card);display:flex;flex-direction:column;justify-content:space-between;padding:16px}.green-stat{background:linear-gradient(135deg,#86efacb8,#eef0ffe0);color:#002113}.blue-stat{background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.24);color:var(--color-purple-700)}.stat-card strong{display:block;font-size:1.5rem;line-height:1.2}.stat-card span{color:var(--color-text-muted);display:block;font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.game-layout{display:grid;gap:16px}.game-main-column{display:grid;gap:10px}.active-card{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#7c6cff57,#0f172a14) border-box;border-color:transparent;overflow:visible;position:relative}.active-card:before{background:var(--gradient-primary);border-radius:999px;content:"";height:5px;left:18px;position:absolute;right:18px;top:-1px}.active-card>*{position:relative;z-index:1}.game-meta{gap:10px;flex-wrap:wrap;margin-bottom:16px}.game-meta span,.section-heading span{color:var(--color-text-muted);font-size:.82rem;font-weight:800}.copy-button{align-items:center;background:#86efac3d;border:1px solid rgba(134,239,172,.62);border-radius:999px;color:#006c49;display:inline-flex;font-weight:800;gap:6px;min-height:34px;padding:0 10px}.game-control-bar{align-items:center;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));position:relative;z-index:5}.game-control-button{align-items:center;background:var(--gradient-primary);border:0;border-radius:var(--radius-control);box-shadow:var(--shadow-purple);color:#fff;display:inline-flex;height:54px;justify-content:center;min-width:0;padding:0 18px;transition:box-shadow .18s ease,transform .18s ease;width:100%}.game-control-button:hover,.game-control-button:focus-visible{box-shadow:0 18px 34px #5b4dcc4d;transform:translateY(-1px)}.game-control-bar>.game-control-button,.game-menu-wrap{width:100%}.game-menu-wrap{min-width:0;position:relative}.game-menu-wrap .game-control-button{display:flex;width:100%}.game-menu{background:#fff;border:1px solid var(--color-border);border-radius:18px;box-shadow:0 16px 38px #0f172a29;display:grid;gap:6px;min-width:156px;padding:8px;position:absolute;right:0;top:calc(100% + 8px);z-index:20}.game-menu button{background:var(--color-bg);border-radius:12px;color:var(--color-navy-900);font-weight:850;min-height:42px;padding:0 12px;text-align:left}.game-menu button:hover,.game-menu button:focus-visible{background:var(--color-lavender-100)}.game-menu-empty{color:var(--color-text-muted);font-size:.82rem;font-weight:850;padding:10px 12px}.role-badge,.status-badge,.captain-badge,.captain-inline{align-items:center;border-radius:999px;display:inline-flex;font-weight:850;gap:5px}.role-badge{background:#fbbf2433;color:#6b4b00;font-size:.75rem;padding:7px 10px}.status-badge{background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.22);color:var(--color-purple-700);font-size:.75rem;padding:7px 10px}.captain-badge{background:#fbbf2433;color:#6b4b00;font-size:.82rem;justify-self:start;margin:-2px 0 10px;padding:7px 10px}.game-timer,.waiting-card{background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.24);border-radius:18px;display:grid;gap:8px;margin-bottom:14px;padding:14px}.game-timer{background:linear-gradient(135deg,#eef0fff5,#fffffffa),var(--color-lavender-100);justify-items:center}.game-timer span{color:var(--color-text-muted);font-size:.75rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.game-timer strong{color:var(--color-navy-900);font-size:2rem;line-height:1}.waiting-card h2{color:var(--color-navy-900);font-size:1.35rem;margin:0}.waiting-card p{color:var(--color-text-muted);line-height:1.45;margin:0}.progress-ring{align-items:center;background:radial-gradient(#fff 57%,transparent 58%),conic-gradient(var(--color-purple-500) var(--progress),var(--color-lavender-100) 0);box-shadow:0 12px 28px #5b4dcc26;border-radius:999px;display:grid;height:118px;justify-items:center;margin:18px auto;place-content:center;width:118px}.progress-ring span{font-size:2rem;font-weight:900;line-height:1}.progress-ring small{color:var(--color-text-muted);font-weight:800}.eyebrow{color:var(--color-purple-700);font-size:.75rem;font-weight:850;letter-spacing:.05em;margin:0 0 8px;text-transform:uppercase}.challenge-card,.complete-state,.empty-state{display:grid;gap:12px}.challenge-card{background:linear-gradient(#fff,#fff) padding-box,var(--gradient-primary) border-box;border:1px solid transparent;border-radius:20px;margin-top:14px;padding:16px;position:relative}.challenge-card:before{background:var(--gradient-primary);border-radius:999px;content:"";height:4px;left:16px;position:absolute;right:16px;top:-2px}.pending-photo-card{border:1px solid rgba(124,108,255,.18);border-radius:18px;display:grid;gap:12px;overflow:hidden}.pending-photo-card img{display:block;height:auto;width:100%}.pending-photo-actions{display:grid;gap:10px;padding:0 12px 12px}.challenge-card h2,.complete-state h2,.empty-state h2,.section-heading h2{color:var(--color-navy-900);margin:0}.challenge-card h2{font-size:1.9rem;line-height:1.08}.challenge-card p,.complete-state p,.empty-state p,.photo-card p,.quiet{color:var(--color-text-muted);line-height:1.45;margin:0}.challenge-pill{border-radius:999px;color:#fff;font-size:.75rem;font-weight:900;justify-self:start;padding:7px 10px}.challenge-pill.blue{background:var(--gradient-primary)}.challenge-pill.green{background:#047857}.challenge-pill.yellow{background:#92400e}.upload-button{background:var(--gradient-primary);box-shadow:var(--shadow-purple);color:#fff;cursor:pointer}.light-upload{background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.34);box-shadow:none;color:var(--color-purple-700)}.upload-button input{display:none}.complete-state svg,.empty-state svg{color:var(--color-purple-700)}.scoreboard,.gallery,.standalone-panel,.history-panel{margin-top:16px}.scoreboard{background:#fffffff5}.game-action-stack{display:grid;gap:8px;margin-top:10px}.history-toggle{align-items:center;background:transparent;color:var(--color-navy-900);display:flex;font-weight:850;justify-content:space-between;min-height:36px;padding:0;width:100%}.history-toggle svg{color:var(--color-text-muted);transition:transform .18s ease}.history-toggle svg.chevron-open{transform:rotate(180deg)}.history-toggle strong{background:var(--color-lavender-100);border-radius:999px;color:var(--color-purple-500);min-width:32px;padding:5px 9px}.history-list,.challenge-history-list,.history-detail-block{display:grid;gap:10px;margin-top:14px}.history-item{align-items:center;background:var(--color-bg);border:1px solid rgba(124,108,255,.18);border-radius:16px;color:var(--color-navy-900);display:flex;justify-content:space-between;padding:12px;text-align:left}.history-item span{font-weight:900}.history-item small{color:var(--color-text-muted);font-weight:800}.history-item .live-history-badge{background:var(--color-lavender-100);border-radius:999px;color:var(--color-purple-700);font-size:.72rem;letter-spacing:.08em;padding:5px 9px;text-transform:uppercase}.section-heading{gap:12px}.team-list{display:grid;gap:10px;margin-top:14px}.team-card{align-items:center;background:#fff;border:1px solid rgba(124,108,255,.18);border-radius:18px;cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:12px;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.team-card:hover,.team-card:focus-visible{border-color:#7c6cff75;box-shadow:0 12px 26px #0f172a14;transform:translateY(-1px)}.team-card.selected{border-color:var(--color-purple-500);box-shadow:inset 4px 0 0 var(--color-purple-500)}.team-card h3{margin:0 0 4px}.team-card p{color:var(--color-text-muted);margin:0}.team-card span{align-items:center;color:var(--color-purple-700);display:grid;font-weight:900;gap:5px;justify-items:end;white-space:nowrap}.team-card span strong{align-items:center;display:inline-flex;gap:5px}.team-card span small{color:var(--color-text-muted);font-size:.72rem;font-weight:850}.photo-grid{display:grid;gap:12px;margin-top:14px}.modal-photo-grid{margin-top:0}.photo-card{border:1px solid rgba(124,108,255,.18);border-radius:18px;overflow:hidden}.photo-card img{display:block;height:auto;width:100%}.photo-card div{display:grid;gap:4px;padding:12px}.photo-card span{color:var(--color-purple-700);font-weight:850}.history-detail-block h3{color:var(--color-navy-900);margin:0}.tight-member-list{margin-top:0}.captain-inline{background:#fbbf2433;color:#6b4b00;font-size:.68rem;margin-left:6px;padding:3px 6px}.history-challenge-card{border:1px solid rgba(124,108,255,.18);border-radius:18px;display:grid;gap:10px;padding:12px}.history-challenge-card strong{color:var(--color-navy-900)}.history-challenge-card p{color:var(--color-text-muted);line-height:1.45;margin:4px 0 0}.compact-photo-card{background:#fff}.photo-meta-row{align-items:center;display:flex;gap:10px;justify-content:space-between;padding:10px 12px}.download-link{align-items:center;background:var(--color-lavender-100);border-radius:999px;color:var(--color-purple-700);display:inline-flex;font-size:.82rem;font-weight:850;gap:6px;padding:8px 10px;text-decoration:none}.not-complete{background:var(--color-bg);border:1px dashed var(--color-border);border-radius:999px;color:var(--color-text-muted);font-weight:850;justify-self:start;padding:7px 10px}.empty-inline{align-items:center;background:var(--color-bg);border:1px dashed var(--color-border);border-radius:18px;color:var(--color-text-muted);display:flex;gap:10px;margin-top:14px;padding:14px}.empty-inline p{margin:0}.members-card{margin-top:16px}.member-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.member-chip{background:#86efac3d;border:1px solid rgba(134,239,172,.62);border-radius:999px;color:#006c49;font-weight:800;padding:8px 12px}.site-footer{color:var(--color-text-muted);display:grid;font-size:.82rem;gap:4px;margin:24px auto 0;max-width:448px;padding:0 20px 24px;text-align:center}.site-footer span:first-child{color:var(--color-purple-700);font-weight:900}.inline-fields{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.split-form{border-top:1px solid rgba(124,108,255,.18);margin-top:4px;padding-top:16px}.segmented-control{background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.28);border-radius:16px;display:grid;gap:4px;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px}.segmented-control button{background:transparent;border-radius:12px;color:var(--color-text-muted);font-weight:850;min-height:42px}.segmented-control button.active{background:var(--gradient-primary);box-shadow:0 10px 20px #5b4dcc2e;color:#fff}.toggle-row{align-items:center;background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.28);border-radius:16px;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr);padding:12px}.toggle-row input{accent-color:var(--color-purple-500);height:22px;width:22px}.toggle-row span{display:grid;gap:2px}.toggle-row strong{color:var(--color-navy-900);font-size:.92rem}.toggle-row small{color:var(--color-text-muted);font-weight:750;line-height:1.35}.welcome-hero{background:var(--gradient-hero);border-radius:28px;box-shadow:0 24px 58px #0f172a2e;color:#fff;display:grid;gap:18px;margin-bottom:24px;overflow:hidden;padding:24px;position:relative}.welcome-hero:after{background:linear-gradient(90deg,transparent,rgba(124,108,255,.55),transparent);content:"";height:2px;inset:auto 24px 18px;position:absolute}.welcome-auth-card{margin-bottom:24px}.welcome-hero h1{color:#fff;font-size:2.25rem;letter-spacing:0;line-height:1.05;margin:0 0 10px}.welcome-hero p{color:#ffffffc7;line-height:1.45;margin:0}.walkthrough-section{display:grid;gap:52px;margin:0 auto 36px;max-width:560px;padding:28px 0 12px;text-align:center}.walkthrough-header{display:grid;gap:12px;justify-items:center}.walkthrough-header h2{color:var(--color-navy-900);font-size:clamp(2rem,9vw,3.25rem);font-weight:900;letter-spacing:0;line-height:1.02;margin:0}.walkthrough-header p{color:var(--color-text-muted);font-size:1.08rem;line-height:1.5;margin:0;max-width:420px}.walkthrough-list{display:grid;gap:64px}.walkthrough-step{align-items:center;display:grid;gap:28px;justify-items:center}.walkthrough-step img{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;box-shadow:0 22px 48px #0f172a29;display:block;height:auto;max-width:min(100%,340px);object-fit:contain;width:100%}.walkthrough-copy{display:grid;gap:10px;max-width:420px}.walkthrough-copy h3{color:var(--color-navy-900);font-size:clamp(1.55rem,7vw,2.1rem);font-weight:900;letter-spacing:0;line-height:1.1;margin:0}.walkthrough-copy p{color:var(--color-text-muted);font-size:1rem;line-height:1.5;margin:0}@supports (animation-timeline: view()){.walkthrough-step{animation:walkthrough-rise both;animation-range:entry 12% cover 34%;animation-timeline:view()}}@keyframes walkthrough-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.fake-shot{align-content:end;aspect-ratio:.72;background:#fffffff0;border:1px solid rgba(255,255,255,.28);border-radius:18px;box-shadow:0 12px 30px #0f172a29;display:grid;gap:4px;padding:10px}.fake-shot.accent{background:var(--color-lavender-100)}.fake-shot strong{color:var(--color-navy-900);font-size:.85rem}.fake-shot span{color:var(--color-text-muted);font-size:.72rem;font-weight:750}.text-inline-button,.soft-mini-button{align-items:center;background:var(--color-lavender-100);border:1px solid rgba(124,108,255,.28);border-radius:999px;color:var(--color-purple-700);display:inline-flex;font-weight:850;gap:6px;min-height:36px;padding:0 12px}.soft-mini-button{justify-self:end}.challenge-heading-row,.loading-row{align-items:center;display:flex;gap:10px;justify-content:space-between}.loading-row{justify-content:start}.template-challenge-row{background:var(--color-bg);border:1px solid rgba(124,108,255,.18);border-radius:16px;display:grid;gap:4px;padding:10px}.template-editor-block{border:1px solid rgba(124,108,255,.18);border-radius:16px;padding:12px}.create-list-button{justify-content:center;width:100%}.create-template-button{font-size:1.02rem;justify-content:center;min-height:58px;width:100%}.modal-actions{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.nested-section-heading{border-top:1px solid rgba(124,108,255,.18);padding-top:14px}.nested-list{display:grid;gap:10px}.nested-list-item{align-items:center;background:var(--color-bg);border:1px solid rgba(124,108,255,.18);border-radius:16px;color:var(--color-navy-900);display:flex;gap:12px;justify-content:space-between;min-height:52px;padding:12px;text-align:left;width:100%}.nested-list-item span{font-weight:900;min-width:0}.nested-list-item small{color:var(--color-text-muted);flex:0 0 auto;font-weight:800}.details-chevron{color:var(--color-purple-700);flex:0 0 auto;transition:transform .18s ease}.details-chevron.sideways{transform:rotate(-90deg)}.option-editor,.option-group{display:grid;gap:10px}.option-group{background:var(--color-bg);border:1px solid rgba(124,108,255,.18);border-radius:16px;padding:10px}.option-group summary{align-items:center;color:var(--color-navy-900);cursor:pointer;display:flex;font-weight:900;justify-content:space-between}.option-values{display:flex;flex-wrap:wrap;gap:8px}.option-value-chip{align-items:center;background:#fff;border:1px solid rgba(124,108,255,.26);border-radius:999px;color:var(--color-navy-900);display:inline-flex;font-weight:800;gap:6px;padding:7px 8px 7px 12px}.option-value-chip button{align-items:center;background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:999px;color:var(--color-danger-strong);display:inline-flex;height:22px;justify-content:center;width:22px}.challenge-preview{background:#fff;border:1px solid rgba(124,108,255,.18);border-radius:18px;display:grid;gap:10px;padding:14px}.challenge-preview h3,.challenge-preview p{margin:0}.challenge-preview h3{color:var(--color-navy-900);font-size:1.3rem;line-height:1.15}.challenge-preview p{color:var(--color-text-muted);line-height:1.45}.challenge-preview small{color:var(--color-text-muted);font-weight:850}.template-challenge-row strong{color:var(--color-navy-900)}.template-challenge-row span,.template-challenge-row p{color:var(--color-text-muted);line-height:1.35;margin:0}.text-response{background:var(--color-bg);border:1px solid rgba(124,108,255,.18);border-radius:16px;color:var(--color-navy-900);font-weight:750;padding:12px}.page-admin{margin-left:auto;margin-right:auto}.template-route-button{align-items:center;background:#fff;border:1px solid rgba(124,108,255,.28);border-radius:var(--radius-control);box-shadow:var(--shadow-card);color:var(--color-purple-700);display:inline-flex;font-weight:850;gap:10px;justify-content:center;margin-bottom:16px;min-height:56px;width:100%}.type-category-group{background:var(--color-bg);border:1px solid rgba(124,108,255,.18);border-radius:16px;display:grid;gap:10px;padding:10px}.type-category-group summary{align-items:center;color:var(--color-navy-900);cursor:pointer;display:flex;font-weight:900;justify-content:space-between}.type-category-group .nested-list{margin-top:10px}.type-category-group:not([open])>summary .details-chevron,.option-group:not([open])>summary .details-chevron{transform:rotate(-90deg)}@media(min-width:760px){.app-shell{max-width:960px}.game-layout,.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-card,.stat-grid,.standalone-panel{margin-left:auto;margin-right:auto;max-width:448px}}
