:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f7fb;color:#0f172a}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#f8fbff,#eef4fc)}.page-header{width:100%;max-width:1280px;margin:0 auto;padding:24px 20px 16px}.eyebrow{font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:#2563eb;margin-bottom:.5rem}h1{font-size:clamp(2rem,2.5vw,2.75rem);margin:0;line-height:1.05}.subtitle{margin-top:.75rem;color:#475569;font-size:1rem}.iframe-container{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:0 20px 24px}.practice-iframe{width:100%;min-height:calc(100vh - 220px);border:1px solid rgba(15,23,42,.12);border-radius:20px;box-shadow:0 28px 80px #0f172a14}.page-footer{width:100%;padding:20px;text-align:center;color:#64748b;font-size:.95rem;border-top:1px solid rgba(15,23,42,.08);background:#fff}.loading-shell,.error-shell{min-height:100vh;display:grid;place-items:center;background:#f8fbff}.status-card{max-width:420px;width:100%;padding:28px;border-radius:24px;background:#fff;box-shadow:0 24px 64px #0f172a14;text-align:center}.status-card h2{margin:0 0 12px;font-size:1.5rem}.status-card p{margin:0;color:#475569;line-height:1.65}.status-error{border:1px solid #f87171}
