*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{height:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#eee;min-height:100vh;min-height:-webkit-fill-available}.container{width:100%;max-width:500px;margin:0 auto;padding:16px;padding-top:env(safe-area-inset-top,16px);padding-bottom:env(safe-area-inset-bottom,16px);min-height:100vh;display:flex;flex-direction:column}h1{text-align:center;font-size:1.5rem;font-weight:700;margin-bottom:16px;color:#00d9ff}.video-container{position:relative;width:100%;aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:#000;box-shadow:0 8px 32px #0000004d}video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}canvas{display:none}.video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000b3}.overlay-icon{font-size:3rem;margin-bottom:8px}.overlay-text{font-size:1rem;color:#9ca3af}.status{padding:16px;border-radius:12px;text-align:center;font-size:1.1rem;font-weight:600;margin:16px 0;background:#2d2d44;transition:all .3s ease}.status.success{background:linear-gradient(135deg,#065f46,#047857);color:#6ee7b7}.status.error{background:linear-gradient(135deg,#7f1d1d,#991b1b);color:#fca5a5}.status.info{background:linear-gradient(135deg,#1e3a5f,#1e40af);color:#93c5fd}.status.recording{background:linear-gradient(135deg,#701a75,#86198f);color:#f5d0fe;animation:pulse 1s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.challenge-box{background:linear-gradient(135deg,#16213e,#1e3a5f);border:2px solid #00d9ff;border-radius:16px;padding:20px;text-align:center;margin-bottom:16px}.challenge-type{font-size:1.3rem;font-weight:700;color:#00d9ff}.timer{font-size:3rem;font-weight:700;color:#f472b6;margin-top:8px;font-variant-numeric:tabular-nums}.buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:14px 8px;border:none;border-radius:12px;font-size:.85rem;font-weight:600;cursor:pointer;background:#374151;color:#fff;transition:all .2s ease;touch-action:manipulation}.btn-icon{font-size:1.5rem}.btn:active:not(:disabled){transform:scale(.95)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#1d4ed8,#2563eb)}.btn-success{background:linear-gradient(135deg,#047857,#059669)}.result-box{background:linear-gradient(135deg,#16213e,#1e3a5f);border-radius:12px;padding:16px;margin-bottom:16px}.result-header{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:8px;color:#00d9ff}.result-icon{font-size:1.5rem}.result-message{font-size:1rem;color:#9ca3af;word-break:break-word}.logs{background:#0f0f1a;border-radius:12px;overflow:hidden;margin-top:auto}.logs-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-weight:600;color:#6b7280;cursor:pointer;-webkit-user-select:none;user-select:none}.logs-toggle{font-size:.8rem}.logs-content{max-height:150px;overflow-y:auto;padding:0 16px 12px}.log-item{font-family:SF Mono,Monaco,Courier New,monospace;font-size:.75rem;padding:4px 0;border-bottom:1px solid #1f1f2e;color:#6b7280;word-break:break-all}@media (max-width: 380px){.container{padding:12px}h1{font-size:1.25rem}.status{font-size:1rem;padding:12px}.challenge-type{font-size:1.1rem}.timer{font-size:2.5rem}.btn{padding:12px 6px;font-size:.75rem}.btn-icon{font-size:1.25rem}}@media (min-width: 768px){.container{padding:24px;justify-content:center}h1{font-size:2rem;margin-bottom:24px}.video-container{border-radius:20px}.status{font-size:1.25rem;padding:20px;margin:20px 0}.challenge-type{font-size:1.5rem}.buttons{gap:16px}.btn{padding:18px 12px;font-size:1rem;border-radius:14px}.btn-icon{font-size:1.75rem}}@media (prefers-color-scheme: light){body{background:linear-gradient(135deg,#f0f4f8,#e2e8f0);color:#1a202c}.container{background:transparent}h1{color:#0ea5e9}.status{background:#e2e8f0;color:#475569}.status.success{background:#d1fae5;color:#065f46}.status.error{background:#fee2e2;color:#991b1b}.status.info{background:#dbeafe;color:#1e40af}.status.recording{background:#fae8ff;color:#86198f}.challenge-box{background:#fff;border-color:#0ea5e9}.challenge-type{color:#0ea5e9}.btn{background:#64748b}.btn-primary{background:linear-gradient(135deg,#2563eb,#3b82f6)}.btn-success{background:linear-gradient(135deg,#059669,#10b981)}.result-box{background:#fff}.result-header{color:#0ea5e9}.logs{background:#f1f5f9}.logs-header{color:#64748b}.log-item{border-color:#e2e8f0;color:#64748b}}@supports (padding: max(0px)){.container{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}}
