:root{--bg: #000000;--bg-card: #111827;--fg: #e2e8f0;--muted: #94a3b8;--accent: #38bdf8;--accent-strong: #0ea5e9;--success: #4ade80;--danger: #f87171;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased}body{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.page{max-width:640px;margin:0 auto;padding:1.25rem}h1{font-size:1.5rem;margin:0 0 .5rem}h2{font-size:1.15rem;margin:0 0 .5rem}p{line-height:1.45;color:var(--fg)}.muted{color:var(--muted);font-size:.9rem}input[type=text],input[type=search],select{width:100%;padding:.85rem 1rem;font-size:1rem;background:var(--bg-card);color:var(--fg);border:1px solid #334155;border-radius:.6rem;outline:none}input[type=text]:focus,select:focus{border-color:var(--accent)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%2394a3b8' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.25rem;padding-right:2.5rem}button.primary,button.secondary{display:inline-block;width:100%;padding:.95rem 1rem;font-size:1.05rem;font-weight:600;border-radius:.6rem;border:none;cursor:pointer;transition:transform .05s ease,background .15s ease}button.primary{background:var(--accent-strong);color:#002030}button.primary:hover{background:var(--accent)}button.primary:active{transform:translateY(1px)}button.primary[disabled]{background:#475569;color:#cbd5e1;cursor:not-allowed}button.secondary{background:#334155;color:var(--fg);margin-top:.5rem}button.secondary:hover{background:#475569}.card{background:var(--bg-card);border:1px solid #334155;border-radius:.75rem;padding:1.25rem;margin:1rem 0}.banner{padding:.75rem 1rem;border-radius:.5rem;margin:.75rem 0}.banner.error{background:#f871711f;color:#fecaca;border:1px solid rgba(248,113,113,.4)}.banner.info{background:#38bdf81a;color:#bae6fd;border:1px solid rgba(56,189,248,.3)}.banner.success{background:#4ade801f;color:#bbf7d0;border:1px solid rgba(74,222,128,.4)}.hint-card{margin:1rem 0}.hint-image-wrap{position:relative;width:100%;aspect-ratio:4 / 3;background:#0b1220;border-radius:.75rem;overflow:hidden}.hint-image-wrap img{width:100%;height:100%;object-fit:cover;display:block;filter:blur(18px) brightness(.65) saturate(.25);transition:filter .35s ease}.hint-image-wrap img.peek{filter:blur(8px) brightness(.85) saturate(.65)}.hint-image-wrap img.reveal{filter:blur(0px) brightness(1) saturate(1)}.hint-answer{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000bf;color:#fff;padding:.6rem 1rem;border-radius:.5rem;font-size:1.1rem;font-weight:700;text-align:center;max-width:90%}.hint-tip{color:var(--muted);font-size:.95rem;line-height:1.45;margin:.6rem 0 0;font-style:italic}.hint-image-wrap .label{position:absolute;bottom:.5rem;left:.5rem;background:#0f172ab3;color:#e2e8f0;padding:.2rem .5rem;font-size:.75rem;border-radius:.3rem;letter-spacing:.04em;text-transform:uppercase}.hint-image-wrap .hint-reveal{position:absolute;top:.5rem;right:.5rem;background:#0f172abf;color:var(--accent);border:1px solid rgba(56,189,248,.35);border-radius:.4rem;padding:.35rem .7rem;font-size:.8rem;font-weight:600;cursor:pointer;max-width:calc(100% - 1rem);text-align:right;line-height:1.2}.hint-image-wrap .hint-reveal:hover{background:#0f172ae6}.setup-form>.muted{margin-bottom:1rem}.workbook-upload-list{display:flex;flex-direction:column;gap:.85rem}.workbook-upload-row{display:grid;grid-template-columns:minmax(10rem,.8fr) minmax(0,1.2fr);gap:1rem;align-items:center;padding:.85rem;background:#0b1220;border:1px solid #26364b;border-radius:.6rem}.workbook-upload-copy{display:flex;flex-direction:column;gap:.25rem}.workbook-upload-copy label{color:var(--fg);font-size:.95rem;font-weight:600}.workbook-upload-copy a{color:var(--accent);font-size:.8rem;width:fit-content}.workbook-upload-row input[type=file]{min-width:0;width:100%;color:var(--muted);font-size:.85rem}.workbook-upload-row input[type=file]::file-selector-button{margin-right:.65rem;padding:.55rem .75rem;color:var(--fg);background:#334155;border:0;border-radius:.45rem;cursor:pointer}.google-signin{display:flex;justify-content:center;min-height:44px;margin:1rem 0}.google-signin.disabled{opacity:.6;pointer-events:none}.setup-options{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0;padding:1rem;background:#0b1220;border:1px solid #26364b;border-radius:.6rem}@media (max-width: 560px){.workbook-upload-row{grid-template-columns:1fr;gap:.65rem}}@media (prefers-color-scheme: light){.hint-image-wrap .hint-reveal{background:#0f172a8c;color:#e0f2fe;border-color:#38bdf880}}.stop-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.stop-count{font-size:.95rem;color:var(--muted);letter-spacing:.05em;text-transform:uppercase}.stop-name{font-size:1.25rem;font-weight:700}.toast{position:fixed;left:50%;bottom:1.5rem;transform:translate(-50%);background:#0b1220;border:1px solid #334155;color:var(--fg);padding:.7rem 1rem;border-radius:.6rem;box-shadow:0 8px 24px #0006;z-index:50;max-width:90vw;text-align:center}.toast.error{border-color:#f8717199}.toast.success{border-color:#4ade8099}.spinner{width:1.1rem;height:1.1rem;border:2px solid #94a3b8;border-top-color:transparent;border-radius:50%;display:inline-block;vertical-align:-.15rem;margin-right:.5rem;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.row{display:flex;gap:.5rem;align-items:center}.row.between{justify-content:space-between}.toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:var(--fg)}.toggle input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:var(--accent-strong)}.answer-list{padding-left:1.25rem;margin:.75rem 0 0;line-height:1.6}.answer-list li{margin-bottom:.75rem}.location-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.75rem;max-height:24rem;overflow:auto}.location-item{display:flex;align-items:center;gap:.75rem;padding:.6rem;background:#0b1220;border:1px solid #334155;border-radius:.5rem}.location-info{flex:1 1 auto;min-width:0}.location-info strong{display:block;margin-bottom:.15rem}.location-photo{display:flex;flex-direction:column;align-items:center;gap:.4rem;flex-shrink:0;width:5.5rem}.location-photo img{width:5rem;height:5rem;object-fit:cover;border-radius:.4rem;border:1px solid #334155}.location-name-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.photo-badge{font-size:.7rem;font-weight:700;padding:.15rem .4rem;border-radius:.25rem;white-space:nowrap}.photo-badge.ok{background:#4ade8026;color:var(--success)}.photo-badge.missing{background:#f871711f;color:var(--danger)}.thumb-button{position:relative;display:block;background:transparent;border:none;padding:0;margin:0;cursor:pointer;border-radius:.4rem}.thumb-button:hover{opacity:.9}.preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.preview-modal{max-width:90vw;max-height:90vh;text-align:center}.preview-modal img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:.5rem;background:#0b1220}.bulk-upload{border:1px dashed #475569;border-radius:.6rem;padding:1rem;background:#0b1220;margin-bottom:.75rem}.bulk-upload .row{gap:.75rem;align-items:flex-start;flex-wrap:wrap}.bulk-upload input[type=file]{display:none}.bulk-upload label{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1rem;background:#334155;color:var(--fg);border-radius:.4rem;cursor:pointer;font-size:.95rem}.bulk-upload label:hover{background:#475569}.bulk-upload label.disabled{opacity:.6;cursor:not-allowed}.bulk-status{font-size:.85rem;color:var(--muted);flex:1 1 auto}.location-photo .no-photo{width:5rem;height:5rem;display:flex;align-items:center;justify-content:center;border:1px dashed #334155;border-radius:.4rem;font-size:.75rem;text-align:center}.location-error{color:var(--danger);font-size:.8rem;margin-top:.25rem}.hunt-list{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.5rem}.hunt-button{width:100%;text-align:left;background:#0b1220;border:1px solid #334155;border-radius:.5rem;padding:.75rem;color:var(--fg);cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.hunt-button:hover{border-color:var(--accent)}.hunt-area{font-weight:700}.hunt-item{display:flex;align-items:center;gap:.5rem}.hunt-item .hunt-button{flex:1 1 auto}.hunt-delete{width:auto;margin:0;font-size:.85rem;padding:.55rem .75rem}.logout-btn{width:auto;margin:0}.team-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.team-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#0b1220;border:1px solid #334155;border-radius:.4rem}.team-item strong{font-weight:600}.team-item .muted{font-size:.8rem}button.danger{background:#f8717126;color:var(--danger);border:1px solid rgba(248,113,113,.4)}button.danger:hover{background:#f8717140}.tip-list{margin:.25rem 0 0;padding-left:1rem;font-size:.85rem;color:var(--muted)}.tip-list li{margin-bottom:.15rem}.tip-badge{display:inline-block;background:#38bdf826;color:var(--accent);font-size:.7rem;font-weight:700;padding:.1rem .35rem;border-radius:.25rem;margin-right:.3rem;text-transform:uppercase}.tip-more{width:auto;margin:.5rem 0 0}.tip-more:disabled{background:#334155;color:#94a3b8;cursor:not-allowed}.team-stats-list{display:flex;flex-direction:column;gap:.75rem}.team-stat-card{background:#0b1220;border:1px solid #334155;border-radius:.6rem;padding:.75rem}.team-stat-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.team-stat-summary{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.stat-pill{font-size:.8rem;font-weight:700;padding:.25rem .55rem;border-radius:.35rem;white-space:nowrap;background:#38bdf81f;color:var(--accent)}.stat-pill.penalty{background:#f871711f;color:var(--danger)}.team-stat-details{margin-top:.75rem;overflow-x:auto}.team-stat-table{width:100%;border-collapse:collapse;font-size:.9rem}.team-stat-table th,.team-stat-table td{padding:.45rem .35rem;border-bottom:1px solid #334155;text-align:left}.team-stat-table th{color:var(--muted);font-weight:600}.team-status{font-size:.8rem;font-weight:700;padding:.15rem .35rem;border-radius:.3rem;text-transform:uppercase}.team-status.verified{background:#4ade8026;color:var(--success)}.team-status.skipped{background:#fbbf2426;color:#fbbf24}.team-status.rejected{background:#f8717126;color:var(--danger)}.team-status.pending{background:#94a3b826;color:var(--muted)}.penalty-badge{display:inline-block;margin-top:.5rem;padding:.25rem .5rem;background:#f871711f;color:var(--danger);border:1px solid rgba(248,113,113,.3);border-radius:.4rem;font-size:.8rem;font-weight:600}.submission-thumb{display:flex;align-items:center;gap:.75rem;margin-top:.75rem;padding:.5rem;background:#0b1220;border:1px solid #334155;border-radius:.5rem}.submission-thumb img{width:4.5rem;height:4.5rem;object-fit:cover;border-radius:.4rem;flex-shrink:0}.submission-thumb .submission-status{font-size:.8rem;font-weight:700;padding:.15rem .4rem;border-radius:.25rem;white-space:nowrap}.submission-status.ok{background:#4ade8026;color:var(--success)}.submission-status.bad{background:#f8717126;color:var(--danger)}.submission-thumb .muted{font-size:.8rem;line-height:1.35;flex:1 1 auto}.tab-bar{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:1px solid #334155}.tab-bar button{background:transparent;border:none;color:var(--muted);padding:.5rem .75rem;cursor:pointer;font-weight:600;border-bottom:2px solid transparent;margin-bottom:-1px}.tab-bar button.active{color:var(--accent);border-bottom-color:var(--accent)}.tab-bar button:hover{color:var(--fg)}.submissions-list{display:flex;flex-direction:column;gap:1rem}.submission-card{background:#0b1220;border:1px solid #334155;border-radius:.6rem;padding:.75rem}.submission-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem}.submission-image-link{display:block;margin:.75rem 0;border-radius:.5rem;overflow:hidden;border:1px solid #334155}.submission-image-link img{width:100%;max-height:320px;object-fit:contain;display:block;background:#000}.submission-detail{font-size:.9rem;color:var(--muted);margin-top:.35rem;line-height:1.4}.task-card{text-align:center}.task-card h2{margin-bottom:.25rem}.task-card .muted{color:var(--fg);font-size:1rem;margin-bottom:1rem}.task-preview{width:100%;aspect-ratio:3 / 4;background:#0b1220;border-radius:.75rem;overflow:hidden;margin:.75rem 0;border:1px solid #334155}.task-preview img{width:100%;height:100%;object-fit:contain;display:block}.copyable{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#0b1220;padding:.4rem .6rem;border-radius:.4rem;border:1px solid #334155;word-break:break-all}@media (prefers-color-scheme: light){:root{--bg: #000000;--bg-card: #111827;--fg: #e2e8f0;--muted: #94a3b8}.hint-image-wrap .label{background:#0f172ab3;color:#f1f5f9}.hint-image-wrap .hint-reveal{background:#0f172aeb;color:#f0f9ff;border-color:#38bdf880}}.oracle-card{padding:0;overflow:hidden;text-align:left}.oracle-header{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;border-bottom:1px solid #334155;background:#0b1220f5}.oracle-header>div:nth-child(2){display:grid;flex:1}.oracle-header span{color:#94a3b8;font-size:.75rem}.oracle-mark,.oracle-avatar{display:grid;place-items:center;flex:0 0 auto;width:2.15rem;height:2.15rem;border-radius:50%;color:#0b1220;background:linear-gradient(135deg,#fbbf24,#38bdf8);font-weight:900}.oracle-online:before{content:"";display:inline-block;width:.45rem;height:.45rem;margin-right:.3rem;border-radius:50%;background:#4ade80}.oracle-thread{display:flex;flex-direction:column;gap:.85rem;max-height:58vh;overflow-y:auto;padding:1rem;background:radial-gradient(circle at top left,rgba(56,189,248,.08),transparent 35%),#080e1a}.oracle-message-row{display:flex;align-items:flex-end;gap:.5rem}.oracle-message-row.player{justify-content:flex-end}.oracle-bubble{max-width:min(82%,34rem);padding:.75rem .9rem;border:1px solid #334155;border-radius:1rem 1rem 1rem .25rem;background:#111c2f;box-shadow:0 8px 20px #00000029}.oracle-message-row.player .oracle-bubble{border-color:#38bdf873;border-radius:1rem 1rem .25rem;background:#0c4a6e}.oracle-bubble.accepted{border-color:#4ade8099}.oracle-bubble.rejected{border-color:#f8717199}.oracle-bubble.challenge{max-width:min(90%,38rem);border-color:#fbbf246b}.oracle-bubble small{display:block;margin-bottom:.35rem;color:#7dd3fc;font-weight:700}.oracle-bubble p{margin:0;line-height:1.5;white-space:pre-wrap}.oracle-bubble .quest-flavour{margin:.45rem 0 .65rem;color:#fbbf24}.oracle-bubble .task-heading{margin-bottom:.55rem}.oracle-submission-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;margin-top:.65rem}.oracle-submission-images img{display:block;width:100%;max-height:220px;object-fit:cover;border-radius:.55rem;border:1px solid rgba(255,255,255,.18)}.oracle-composer{padding:1rem;border-top:1px solid #334155;background:#0f172a}.oracle-composer h3{margin:0 0 .75rem}.oracle-send{margin-top:.85rem}@media (max-width: 640px){.oracle-thread{max-height:52vh;padding:.75rem}.oracle-bubble{max-width:88%}.oracle-bubble.challenge{max-width:calc(100% - 2.65rem)}.oracle-submission-images{grid-template-columns:1fr}}.onboarding-page{max-width:920px}.onboarding-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:1rem}.onboarding-heading h1,.onboarding-card h2,.task-heading h2{margin:0}.eyebrow{margin:0 0 .25rem;color:#38bdf8;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.onboarding-progress{min-width:110px;padding:.75rem 1rem;border:1px solid rgba(56,189,248,.35);border-radius:14px;text-align:center;background:#0f172ab3}.onboarding-progress strong{display:block;color:#f8fafc;font-size:1.5rem}.onboarding-progress span{color:#94a3b8;font-size:.75rem}.biometric-note{line-height:1.55}.banner.warning{background:#f59e0b1f;border-color:#f59e0b61;color:#fde68a}.roster-onboarding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}.member-tile{width:100%;display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:.75rem;padding:.6rem;text-align:left;color:#e2e8f0;background:#0f172aa6;border:1px solid #334155;border-radius:14px}.member-tile:hover,.member-tile.active{border-color:#38bdf8;transform:none}.member-tile.complete{background:#0e749024}.member-tile:disabled{cursor:not-allowed;opacity:.65}.member-tile.complete:disabled{opacity:1}.member-tile img,.member-initial{width:56px;height:56px;border-radius:12px;object-fit:cover;background:#1e293b}.member-initial{display:grid;place-items:center;color:#7dd3fc;font-size:1.4rem;font-weight:800}.member-tile strong,.member-tile small{display:block}.member-tile small{margin-top:.2rem;color:#94a3b8}.member-state{color:#22c55e;font-size:1.25rem}.onboarding-card{margin-top:1rem}.onboarding-card-title{align-items:center;margin-bottom:1rem}.secondary.compact{width:auto;margin:0;padding:.55rem .8rem}.onboarding-card fieldset{margin:0 0 1rem;padding:0;border:0}.onboarding-card legend{margin-bottom:.6rem;color:#cbd5e1;font-weight:700}.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.role-option{min-height:112px;padding:.85rem;text-align:left;color:#e2e8f0;background:#0f172a;border:1px solid #334155;border-radius:12px}.role-option strong,.role-option span,.role-option small{display:block}.role-option span{margin-top:.35rem;color:#94a3b8;font-size:.82rem;line-height:1.35}.role-option small{margin-top:.45rem;color:#7dd3fc}.role-option.selected{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf829}.role-option:disabled{cursor:not-allowed;opacity:.42}.role-option.selected:disabled{opacity:.75}.role-warrior.selected,.role-badge.role-warrior{border-color:#fb923c;color:#fdba74}.role-assassin.selected,.role-badge.role-assassin{border-color:#38bdf8;color:#7dd3fc}.role-envoy.selected,.role-badge.role-envoy{border-color:#c084fc;color:#d8b4fe}.role-wizard.selected,.role-badge.role-wizard{border-color:#60a5fa;color:#93c5fd}.selfie-panel{display:grid;grid-template-columns:minmax(0,240px) 1fr;gap:1rem;align-items:center;margin:1rem 0}.selfie-panel img,.selfie-placeholder{width:100%;aspect-ratio:4 / 3;border-radius:14px;object-fit:cover;background:#0f172a;border:1px dashed #475569}.selfie-placeholder{display:grid;place-content:center;gap:.25rem;padding:1rem;text-align:center;color:#cbd5e1}.selfie-placeholder small{color:#64748b}.consent-check{display:flex;gap:.65rem;align-items:flex-start;margin:1rem 0;color:#cbd5e1;line-height:1.45}.consent-check input{-webkit-appearance:checkbox;-moz-appearance:auto;appearance:auto;flex:0 0 1.4rem;width:1.4rem;height:1.4rem;min-width:1.4rem;margin:.1rem 0 0;accent-color:#38bdf8;background:#fff;border:2px solid #7dd3fc;opacity:1;color-scheme:light}.onboarding-sequence strong{display:block;margin-bottom:.25rem}.onboarding-success{margin-top:1rem}.onboarding-next-step{margin:.75rem 0 0;text-align:center}.onboarding-retry-actions{gap:.65rem;margin-top:.75rem}.onboarding-retry-actions button{margin:0}.task-heading{align-items:center;margin-bottom:.5rem}.role-badge{padding:.3rem .6rem;border:1px solid currentColor;border-radius:999px;font-size:.75rem;font-weight:800}.quest-flavour{margin:.25rem 0 .75rem;color:#fbbf24;font-family:Georgia,serif;font-style:italic}.face-verification-panel{margin:1rem 0;padding:.9rem;border:1px solid rgba(56,189,248,.35);border-radius:12px;background:#0e74901a}.face-verification-panel p{margin:.35rem 0 .65rem}.face-verification-panel label{display:block;margin-bottom:.35rem;color:#cbd5e1;font-size:.8rem}@media (max-width: 640px){.onboarding-heading{align-items:flex-start}.roster-onboarding-grid,.role-grid,.selfie-panel{grid-template-columns:1fr}.selfie-panel img,.selfie-placeholder{max-width:none}}.image-section+.image-section{margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid #334155}.image-section h3{margin:0 0 .35rem}.file-button{position:relative;display:inline-flex;justify-content:center;align-items:center;cursor:pointer}.file-button.disabled{cursor:wait;opacity:.65}.file-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.quest-reference-list{max-height:none}.reference-count{position:absolute;right:-.25rem;bottom:-.25rem;padding:.1rem .35rem;border-radius:999px;background:var(--accent-strong);color:#06111f;font-size:.7rem;font-weight:800}.quest-answer{display:grid;gap:.35rem;margin:.85rem 0}.quest-reference-panel{display:grid;gap:.5rem;margin:1rem 0}.quest-reference{width:100%;max-height:320px;object-fit:contain;border-radius:12px;background:#0b1220;border:1px solid #334155}.quest-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}.quest-photo-slot{display:grid;gap:.5rem;padding:.75rem;border:1px solid #334155;border-radius:12px;background:#0f172a}.submission-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:.75rem 0}.submission-photo-grid span{display:block;padding:.25rem;color:#cbd5e1;text-align:center}@media (max-width: 640px){.quest-photo-grid,.submission-photo-grid{grid-template-columns:1fr}}.demo-button{width:auto;margin:0 0 .4rem;border-color:#f59e0b;color:#fbbf24}.demo-copy{margin-top:0;font-size:.82rem}n .oracle-card{display:flex;flex-direction:column;min-height:min(76vh,720px)}.oracle-thread{flex:1 1 auto;min-height:280px}.oracle-composer{position:sticky;bottom:0;z-index:2;padding:.65rem}.oracle-composer-row{display:flex;align-items:center;gap:.5rem;min-height:3.25rem;padding:.38rem;border:1px solid #334155;border-radius:1.7rem;background:#080e1a}.oracle-chat-input{flex:1;min-width:0;margin:0;padding:.7rem .35rem;border:0;outline:0;background:transparent;box-shadow:none;color:#f8fafc}.oracle-chat-input:disabled{border:0;background:transparent;color:#94a3b8;opacity:1;-webkit-text-fill-color:#94a3b8}.oracle-chat-input:disabled::placeholder{color:#94a3b8;opacity:1;-webkit-text-fill-color:#94a3b8}.oracle-chat-input:focus{border:0;box-shadow:none}.oracle-composer-status{flex:1;min-width:0;padding:0 .35rem;color:#94a3b8;font-size:.9rem}.oracle-icon-button,.oracle-action-button,.oracle-photo-draft button{display:grid;place-items:center;flex:0 0 auto;padding:0;border:0;border-radius:50%}.oracle-icon-button{width:2.55rem;height:2.55rem;color:#7dd3fc;background:transparent}.oracle-icon-button:disabled{color:#64748b;background:transparent;cursor:not-allowed;opacity:.45}.oracle-icon-button:hover{background:#38bdf81f}.oracle-action-button{width:2.75rem;height:2.75rem;color:#06131f;background:#38bdf8}.oracle-icon-button svg,.oracle-action-button svg,.oracle-camera-label svg{width:1.35rem;height:1.35rem;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.oracle-action-button:disabled{opacity:.42;cursor:not-allowed}.oracle-photo-draft{position:relative;width:5.5rem;margin:0 0 .55rem .4rem}.oracle-photo-draft img{display:block;width:5.5rem;height:5.5rem;object-fit:cover;border:1px solid #475569;border-radius:.8rem}.oracle-photo-draft button{position:absolute;top:-.35rem;right:-.35rem;width:1.45rem;height:1.45rem;color:#fff;background:#334155;font-size:.8rem}.oracle-inline-control,.oracle-field-grid{margin:0 0 .65rem}.oracle-inline-control{display:flex;align-items:center;gap:.65rem;padding:0 .35rem}.oracle-inline-control label{color:#cbd5e1;font-size:.8rem;font-weight:700}.oracle-inline-control select{flex:1;margin:0}.oracle-field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.oracle-field-grid label{display:grid;gap:.25rem;color:#cbd5e1;font-size:.75rem;font-weight:700}.oracle-field-grid select{margin:0;min-width:0}.oracle-attachments{margin:0 0 .65rem;max-height:40vh;overflow-y:auto}.oracle-camera-label{display:flex;justify-content:center;align-items:center;gap:.4rem;padding:.55rem;border:1px solid #475569;border-radius:999px;color:#7dd3fc;cursor:pointer}.oracle-camera-label input{display:none}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.markdown-message p{margin:0;line-height:1.55;white-space:normal}.markdown-message p+p{margin-top:.45rem}.markdown-message h3,.markdown-message h4,.markdown-message h5{margin:.2rem 0 .45rem;color:#f8fafc}.markdown-message strong{color:#f8fafc}.markdown-message code{padding:.1rem .3rem;border-radius:.3rem;background:#0206178c;color:#fde68a}.markdown-message a{color:#7dd3fc}.markdown-message blockquote{margin:.4rem 0;padding-left:.65rem;border-left:3px solid #38bdf8;color:#cbd5e1}.markdown-gap{height:.5rem}.markdown-list-item{display:grid;grid-template-columns:1.25rem 1fr;gap:.2rem;line-height:1.5}@media (max-width: 640px){.oracle-card{min-height:calc(100dvh - 8.5rem)}.oracle-thread{max-height:none}.oracle-field-grid{grid-template-columns:1fr}}.player-share-panel{display:grid;grid-template-columns:minmax(180px,220px) 1fr;gap:1.25rem;align-items:center;margin-top:1rem;padding:1rem;border:1px solid #334155;border-radius:16px;background:#0f172a8c}.player-share-qr{display:grid;place-items:center;min-height:180px;padding:.65rem;border-radius:12px;background:#fff}.player-share-qr img{display:block;width:100%;height:auto}.player-share-details h3{margin:0 0 .35rem}.player-share-details .copyable{margin-top:.75rem}.player-share-actions{gap:.65rem;margin-top:.75rem;flex-wrap:wrap}.player-share-actions button,.player-share-actions .button-link{width:auto;margin:0}.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}@media (max-width: 640px){.player-share-panel{grid-template-columns:1fr}.player-share-qr{width:min(100%,240px);justify-self:center}}.sequential-photo-step{grid-template-columns:minmax(0,1fr)}.sequential-photo-progress{display:flex;justify-content:space-between;gap:.75rem;color:#cbd5e1}.sequential-photo-progress span{color:#7dd3fc}.sequential-photo-step .quest-photo-slot{max-width:28rem;width:100%;justify-self:center}.accepted-photo-list{display:flex;flex-wrap:wrap;gap:.45rem}.accepted-photo-list span{padding:.3rem .55rem;border:1px solid #0e7490;border-radius:999px;color:#67e8f9;background:#0e749026;font-size:.8rem}
