:root{--primary: #00D9FF;--primary-dark: #00B8D4;--accent: #FF006E;--accent-light: #FFB3D9;--success: #00FF88;--warning: #FFB800;--danger: #FF3333;--bg-light: #F8FAFC;--bg-darker: #0F1419;--text-primary: #0F1419;--text-secondary: #64748B;--border: #E2E8F0;--radius: 16px;--radius-lg: 24px}*{box-sizing:border-box}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease}body{font-family:Inter,-apple-system,system-ui,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,#0f1419,#1a1f2e,#0a0e18);color:var(--text-primary);margin:0;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;max-width:420px;display:flex;justify-content:center}@media (min-width: 769px){body{background:radial-gradient(ellipse at center,#1a1f2e,#0a0e18)}#root:before{content:"";position:absolute;width:440px;height:880px;background:linear-gradient(135deg,#1a1f2e,#0f1419);border-radius:50px;box-shadow:0 0 100px #00d9ff1a,inset 0 0 30px #ffffff08,0 20px 60px #000c;z-index:-1;pointer-events:none}}.app-root{width:100%;max-width:420px;height:100vh;height:100dvh;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:40px;box-shadow:0 20px 60px #0000004d,0 0 1px #00d9ff33;overflow:hidden;display:flex;flex-direction:column;border:12px solid #000;position:relative}.app-root:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:150px;height:24px;background:#000;border-radius:0 0 20px 20px;z-index:10}.app-header{display:flex;align-items:center;gap:12px;padding:32px 20px 16px;background:linear-gradient(90deg,rgba(0,217,255,.08),transparent)}.logo{width:48px;height:48px;border-radius:8px}.container{padding:0 0 80px;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;min-height:0}input,select,textarea{display:block;width:100%;padding:12px 16px;border-radius:12px;border:1px solid var(--border);background:#fff;outline:none;font-size:16px;font-family:inherit;transition:all .3s ease}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #00d9ff1a,inset 0 0 0 1px #00d9ff33;background:#fafbfc}button{cursor:pointer;border:0;padding:12px 16px;border-radius:12px;font-weight:600;font-family:inherit;font-size:14px;transition:all .3s ease;min-height:44px;-webkit-tap-highlight-color:transparent}button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}button:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;border:none;padding:12px 24px;box-shadow:0 4px 15px #00d9ff4d}.btn-primary:hover{box-shadow:0 8px 30px #00d9ff66}.btn-ghost{background:transparent;border:2px solid var(--border);color:var(--text-primary);padding:10px 16px}.btn-ghost:hover{background:var(--bg-light);border-color:var(--primary);color:var(--primary)}.test-credentials{background:transparent;color:var(--primary);font-weight:600;padding:8px;border-radius:8px;border:none}.test-credentials:hover{background:#00d9ff1a}.card{transition:all .3s ease;background:#fff;border:1px solid var(--border);border-radius:var(--radius)}.card:hover{transform:translateY(-8px);box-shadow:0 24px 48px #00000014;border-color:var(--primary)}.cta{display:inline-block;margin-top:12px;padding:12px 24px;background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);color:#fff;border-radius:12px;text-decoration:none;box-shadow:0 8px 20px #00d9ff4d;font-weight:600;transition:all .3s ease;min-height:44px;display:inline-flex;align-items:center}.cta:hover{transform:translateY(-3px);box-shadow:0 12px 30px #00d9ff66}.muted{color:var(--text-secondary);font-size:13px}.hero{background:linear-gradient(135deg,#00d9ff14,#ff006e0a);padding:24px;border-radius:var(--radius);margin-bottom:20px;border:1px solid rgba(0,217,255,.1)}.hero h2{font-family:Montserrat,Inter,sans-serif;margin:0 0 8px;font-size:20px;font-weight:700;background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cards{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.card h3{margin:0 0 6px;color:var(--text-primary)}.price{color:var(--primary);font-weight:700;font-size:16px}.book{margin-top:10px;padding:10px 16px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;border-radius:8px;border:none;cursor:pointer;font-weight:600;box-shadow:0 4px 12px #00d9ff33}.book:hover{box-shadow:0 6px 20px #00d9ff4d}.app-footer{text-align:center;padding:20px;color:var(--text-secondary)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f141999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100}.modal-content{background:linear-gradient(135deg,#fff,#f8fafc);padding:24px;border-radius:var(--radius-lg);max-width:520px;width:90%;max-height:80vh;overflow:auto;box-shadow:0 20px 60px #0000004d,inset 0 1px #ffffff80;border:1px solid rgba(0,217,255,.1)}.modal-content h3{font-family:Montserrat,sans-serif;color:var(--text-primary);font-size:20px;margin-bottom:16px}.modal-content form label{display:block;margin:12px 0 6px;font-weight:600;color:var(--text-primary);font-size:13px}.modal-content input,.modal-content textarea{margin-bottom:12px}.modal-content ul li{margin-bottom:12px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-light);transition:all .3s ease}.modal-content ul li:hover{border-color:var(--primary);background:#00d9ff0d}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.cancel{background:var(--bg-light);border:2px solid var(--border);padding:10px 16px;border-radius:10px;cursor:pointer;transition:all .3s ease}.cancel:hover{background:var(--border);border-color:var(--text-secondary)}.confirm{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border:none;padding:10px 16px;border-radius:10px;cursor:pointer;color:#fff;font-weight:600;box-shadow:0 4px 12px #00d9ff33}.confirm:hover{box-shadow:0 6px 20px #00d9ff4d}.auth-root,.onboarding-root{padding:20px;max-width:100%;margin:0 auto;display:flex;flex-direction:column;gap:16px}.auth-root input,.onboarding-root input,.auth-root select{font-size:16px}.auth-actions{display:flex;gap:12px;flex-wrap:wrap}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00d9ff4d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#00d9ff99}ul{list-style:none;padding:0;margin:0}@media (max-width: 768px){body{padding:0;background:linear-gradient(135deg,#fff,#f8fafc)}#root:before{display:none}.app-root{max-width:100%;border-radius:0;border:none;box-shadow:none;overflow-y:auto;overflow-x:hidden}.app-root:before{display:none}.container{padding-top:env(safe-area-inset-top);padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width: 480px){.cards{flex-direction:column}button{font-size:15px}input,select,textarea{font-size:16px}}@media (max-height: 500px) and (orientation: landscape){.container{padding-bottom:70px}}@media (hover: none) and (pointer: coarse){button:hover{transform:none}button:active{transform:scale(.98)}.card:hover{transform:none}}
