:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;--bg-app: #050507;--bg-panel: #101014;--bg-card: #18181e;--bg-card-hover: #202029;--primary: #3b82f6;--primary-glow: rgba(59, 130, 246, .5);--secondary: #8b5cf6;--accent: #06b6d4;--text-main: #ffffff;--text-muted: #9ca3af;--text-dim: #6b7280;--border-color: #2e2e36;--border-light: #3f3f4a;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-glow: 0 0 20px var(--primary-glow);--transition: .3s cubic-bezier(.25, .8, .25, 1)}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;background-color:var(--bg-app);color:var(--text-main);overflow-x:hidden}#root{width:100%;min-height:100vh;display:flex;flex-direction:column}a{font-weight:500;color:var(--primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text-main)}button{border-radius:var(--radius-sm);border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--bg-card);cursor:pointer;transition:border-color var(--transition),background-color var(--transition),transform .1s}button:hover{border-color:var(--primary);background-color:var(--bg-card-hover)}button:active{transform:scale(.98)}a.primary,a.secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6em 1.2em;font-weight:500;border-radius:var(--radius-sm);text-decoration:none;transition:box-shadow var(--transition),border-color var(--transition),transform .1s}.primary{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:#fff;border:none;box-shadow:0 4px 14px #0076ff63}.primary:hover{box-shadow:0 6px 20px #0076ff3b;transform:translateY(-1px)}.container{max-width:1200px;margin:0 auto;padding:0 2rem;width:100%}.glass-panel{background:#ffffff08;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.05);box-shadow:0 8px 32px #0000005e}.text-gradient{background:-webkit-linear-gradient(315deg,#42d392 25%,#647eff);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-blue{background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.app-container{width:100%;min-height:100vh;position:relative;background-image:radial-gradient(circle at 10% 20%,rgba(59,130,246,.1) 0%,transparent 20%),radial-gradient(circle at 90% 80%,rgba(139,92,246,.15) 0%,transparent 25%)}.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:1rem 0;transition:all .3s ease;border-bottom:1px solid rgba(255,255,255,.05)}.navbar.compact-nav{background:#0a0a0ccc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:.75rem 0}.nav-content{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:700;color:var(--text-main);cursor:pointer}.logo-icon{color:var(--primary)}.nav-links{display:flex;gap:2rem;align-items:center}.nav-links a,.back-link{color:var(--text-secondary);font-size:.95rem;transition:color .2s;text-decoration:none}.nav-links a:hover,.back-link:hover{color:var(--text-main)}.back-link{display:flex;align-items:center;gap:.5rem}.nav-button{padding:.5rem 1.25rem;font-size:.9rem;border-radius:var(--radius-full);background:#ffffff1a;color:#fff}.nav-button:hover{background:#fff3}.hero-section{padding-top:140px;padding-bottom:100px;min-height:90vh;display:flex;align-items:center}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-text h1{font-size:3.5rem;margin-bottom:1.5rem;letter-spacing:-.02em}.hero-subtitle{font-size:1.25rem;color:var(--text-muted);margin-bottom:2.5rem;max-width:500px;line-height:1.6}.hero-actions{display:flex;gap:1rem}.big-btn{padding:.8rem 2rem;font-size:1.1rem;border-radius:var(--radius-md)}.hero3d-actions{display:flex;flex-wrap:wrap;gap:1rem}.nav-links{gap:.75rem}.nav-links .nav-site-link.is-ghost{background:transparent;border-color:var(--border-light)}@media(max-width:600px){.nav-links .nav-site-link.is-ghost{display:none}}.course-section{padding:6rem 0 2rem}.course-features{list-style:none;margin:0 0 2.5rem;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.course-features li{display:grid;gap:.35rem}.course-features svg{color:var(--primary);margin-bottom:.25rem}.course-features span{color:var(--text-muted);line-height:1.55}.course-modules{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem}.course-modules li{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:.85rem;row-gap:.15rem;padding:.9rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border-color)}.course-modules li.is-soon{opacity:.55}.course-module-num{grid-row:span 2;display:grid;place-items:center;width:34px;height:34px;font-weight:700;color:var(--primary);background:#3b82f61f;border-radius:10px}.course-modules small{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-muted)}.course-cta{margin-top:2.5rem;text-align:center}.secondary.big-btn{background:transparent;border:1px solid var(--border-light);color:var(--text-main)}.secondary.big-btn:hover{border-color:var(--text-main)}.hero-visual{position:relative;height:400px;display:flex;align-items:center;justify-content:center}.visual-circle{position:absolute;border-radius:50%;filter:blur(60px);opacity:.6}.glow-1{width:300px;height:300px;background:var(--primary);top:-20px;right:-20px;animation:pulse 6s infinite alternate}.glow-2{width:200px;height:200px;background:var(--secondary);bottom:-40px;left:40px;animation:pulse 8s infinite alternate-reverse}.visual-mockup{position:relative;width:100%;max-width:500px;height:300px;border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden;z-index:10;transition:transform .3s}.visual-mockup:hover{transform:translateY(-5px)}.mockup-header{height:36px;background:#0003;display:flex;align-items:center;padding:0 1rem;gap:8px;border-bottom:1px solid rgba(255,255,255,.05)}.dot{width:10px;height:10px;border-radius:50%}.red{background:#ef4444}.yellow{background:#f59e0b}.green{background:#10b981}.mockup-body{flex:1;padding:1.5rem;position:relative;display:flex;flex-direction:column;justify-content:center}.wave-line{height:2px;width:100%;background:linear-gradient(90deg,transparent,var(--accent),transparent);margin-bottom:1.5rem;opacity:.7;animation:waveMove 3s infinite linear}.wave-line.delay-1{animation-delay:.5s;width:80%}.wave-line.delay-2{animation-delay:1s;width:90%}.spectrum-bars{display:flex;align-items:flex-end;gap:10px;height:60px;margin-top:auto;justify-content:center}.bar{width:12px;background:var(--primary);border-radius:4px 4px 0 0;opacity:.8;animation:barBounce 1.5s infinite ease-in-out}.bar:nth-child(2){animation-delay:.2s;background:var(--secondary)}.bar:nth-child(3){animation-delay:.4s}.bar:nth-child(4){animation-delay:.1s;background:var(--accent)}.bar:nth-child(5){animation-delay:.5s}.apps-section{padding:6rem 0;background:#0003}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:2.5rem;margin-bottom:1rem}.section-header p{color:var(--text-muted);font-size:1.1rem}.apps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.apps-group-title{font-size:1.2rem;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--glass-border, rgba(148, 163, 184, .2))}.app-card{border-radius:var(--radius-lg);overflow:hidden;transition:transform .3s,box-shadow .3s;background:var(--bg-card);border:1px solid var(--border-color)}.app-card:hover{transform:translateY(-8px);border-color:var(--primary);box-shadow:var(--shadow-glow)}.app-preview{height:180px;background:#0f0f13;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.app-info{padding:1.5rem;position:relative}.app-badge{position:absolute;top:-12px;right:1.5rem;background:var(--primary);color:#fff;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:var(--radius-full);box-shadow:0 2px 4px #0003}.app-badge.coming-soon{background:var(--bg-secondary);color:var(--text-muted);border:1px solid var(--border-light)}.app-info h3{font-size:1.25rem;margin-bottom:.5rem}.app-info p{font-size:.9rem;color:var(--text-muted);margin-bottom:1.5rem;line-height:1.5}.full-width{width:100%}@keyframes pulse{0%{transform:scale(1);opacity:.4}to{transform:scale(1.1);opacity:.6}}@keyframes waveMove{0%{transform:translate(-10%);opacity:0}50%{opacity:1}to{transform:translate(10%);opacity:0}}@keyframes barBounce{0%,to{transform:scaleY(1)}50%{transform:scaleY(.5)}}.container{width:100%;max-width:1400px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-16{gap:4rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.pt-24{padding-top:6rem}.pt-32{padding-top:8rem}.pb-12{padding-bottom:3rem}.pb-20{padding-bottom:5rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.mt-24{margin-top:6rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.w-4{width:1rem}.h-4{height:1rem}.w-10{width:2.5rem}.h-10{height:2.5rem}.w-full{width:100%}.h-full{height:100%}.text-center{text-align:center}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.font-medium{font-weight:500}.font-bold{font-weight:700}.font-mono{font-family:monospace}.text-white{color:#fff}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-muted{color:var(--text-muted)}.block{display:block}.hidden,.lg\:block{display:none}.lg\:hidden{display:block}.grid{display:grid}.grid-cols-12{grid-template-columns:repeat(12,1fr)}.col-span-12{grid-column:span 12 / span 12}.flex-1{flex:1}.shadow-sm{box-shadow:0 1px 2px #0000000d}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@media(min-width:1024px){.lg\:block{display:block}.lg\:hidden{display:none}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:col-span-4{grid-column:span 4 / span 4}.lg\:col-span-8{grid-column:span 8 / span 8}.lg\:col-span-9{grid-column:span 9 / span 9}}@media(max-width:1024px){.analyzer-page .container{max-width:100%;padding-left:1rem;padding-right:1rem}}.bg-black\/20{background-color:#0003}.bg-black\/30{background-color:#0000004d}.bg-black\/40{background-color:#0006}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:12px}.rounded-full{border-radius:9999px}.border{border:1px solid transparent}.border-gray-600{border-color:#4b5563}.border-gray-700{border-color:#374151}.border-gray-800{border-color:#1f2937}.absolute{position:absolute}.relative{position:relative}.top-1\/2{top:50%}.right-4{right:1rem}.left-4{left:1rem}.-translate-y-1\/2{transform:translateY(-50%)}.pointer-events-none{pointer-events:none}.cursor-pointer{cursor:pointer}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.transition-all{transition:all .2s ease}.transition-colors{transition:color .2s ease,background-color .2s ease,border-color .2s ease}input[type=range]{-webkit-appearance:none;appearance:none;background:transparent}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:16px;width:16px;border-radius:50%;background:var(--primary);cursor:pointer;margin-top:-6px;box-shadow:0 0 10px #3b82f680}input[type=range]::-webkit-slider-runnable-track{width:100%;height:4px;cursor:pointer;background:#374151;border-radius:2px}select{appearance:none;padding-right:2.5rem}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-links{display:flex;gap:2rem}.hover\:text-white:hover{color:#fff}.site-footer{margin-top:auto;padding:3.5rem 0 1.5rem;background:radial-gradient(1200px 200px at 50% 0%,rgba(59,130,246,.08),transparent 70%),var(--bg-panel);border-top:1px solid var(--border-color)}.site-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem}.site-footer-brand{max-width:340px}.site-footer-logo{display:flex;align-items:center;gap:.6rem;font-weight:700;font-size:1.05rem;color:var(--text-main);margin-bottom:.9rem}.site-footer-logo-icon{color:var(--primary)}.site-footer-tagline{color:var(--text-muted);font-size:.875rem;line-height:1.6}.site-footer-heading{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:1rem}.site-footer-list{list-style:none;display:flex;flex-direction:column;gap:.7rem}.site-footer-list a{color:var(--text-muted);font-weight:400;font-size:.875rem;transition:color var(--transition)}.site-footer-list a:hover{color:var(--text-main)}.site-footer-contact{display:inline-flex;align-items:center;gap:.4rem}.site-footer-site{display:inline-flex;align-items:center;gap:.45rem;margin-top:1rem;padding:.5rem .9rem;font-size:.85rem;font-weight:600;color:var(--text-main);background:#3b82f61f;border:1px solid rgba(59,130,246,.35);border-radius:999px;transition:background var(--transition),border-color var(--transition)}.site-footer-site:hover{background:#3b82f638;border-color:var(--primary)}.site-footer-email{color:var(--text-dim);font-size:.8rem;-webkit-user-select:all;user-select:all}.nav-site-link{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .95rem;font-size:.875rem;font-weight:600;color:var(--text-main);background:#3b82f61f;border:1px solid rgba(59,130,246,.35);border-radius:999px;text-decoration:none;transition:background var(--transition),border-color var(--transition)}.nav-site-link:hover{background:#3b82f638;border-color:var(--primary)}.site-footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.site-footer-bottom p{color:var(--text-dim);font-size:.8rem}.site-footer-top{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .9rem;font-size:.8rem;font-weight:500;color:var(--text-muted);background:#ffffff08;border:1px solid var(--border-color);border-radius:var(--radius-full)}.site-footer-top:hover{color:var(--text-main);border-color:var(--primary);background:#3b82f61a}@media(max-width:768px){.site-footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.site-footer-brand{grid-column:1 / -1;max-width:none}}@media(max-width:480px){.site-footer-grid{grid-template-columns:1fr}}.cookie-banner-overlay{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);width:90%;max-width:600px;z-index:9999;animation:slideUp .5s ease-out}.cookie-banner{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;background:#101016f0;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 40px #0006}.cookie-content{display:flex;gap:1rem;align-items:flex-start}.cookie-icon{background:#3b82f633;color:var(--primary);padding:.75rem;border-radius:12px;flex-shrink:0}.cookie-text h3{font-size:1.1rem;margin-bottom:.25rem}.cookie-text p{font-size:.9rem;color:var(--text-muted);line-height:1.4}.cookie-actions{display:flex;gap:1rem;justify-content:flex-end}.small-btn{padding:.5rem 1rem;font-size:.85rem}.text-link{color:var(--primary);text-decoration:underline}.max-w-4xl{max-width:56rem}.mx-auto{margin-left:auto;margin-right:auto}.list-disc{list-style-type:disc}.ml-6{margin-left:1.5rem}.space-y-2>*+*{margin-top:.5rem}.border-t{border-top-width:1px}@keyframes slideUp{0%{transform:translate(-50%,100%);opacity:0}to{transform:translate(-50%);opacity:1}}body:has(.daq-page[data-theme=light]) .cookie-banner{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid rgba(15,23,42,.1);border-radius:16px;box-shadow:0 1px 2px #0f172a0f,0 24px 48px -16px #0f172a47}body:has(.daq-page[data-theme=light]) .cookie-icon{background:#4f46e51a;color:#4f46e5}body:has(.daq-page[data-theme=light]) .cookie-text h3{color:#0f172a}body:has(.daq-page[data-theme=light]) .cookie-text p{color:#475569}body:has(.daq-page[data-theme=light]) .cookie-text .text-link{color:#4338ca}body:has(.daq-page[data-theme=light]) .cookie-actions .primary{box-shadow:0 4px 14px #4f46e54d}body:has(.daq-page[data-theme=light]) .cookie-actions .secondary{background:#fff;color:#0f172a;border:1px solid rgba(15,23,42,.18)}body:has(.daq-page[data-theme=light]) .cookie-actions .secondary:hover{background:#f1f5f9;border-color:#4f46e5}@media(max-width:640px){.cookie-banner-overlay{bottom:1rem}.cookie-content{flex-direction:row}.cookie-actions{width:100%}.cookie-actions button{flex:1}}.hero3d-section{position:relative;width:100%;height:100vh;min-height:640px;display:flex;align-items:center;overflow:hidden}.hero3d-canvas{position:absolute;inset:0;z-index:0}.hero3d-overlay{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 70% 80% at 30% 50%,rgba(5,8,18,.88) 30%,transparent 80%),linear-gradient(to bottom,rgba(5,8,18,.5) 0%,transparent 30%,transparent 70%,rgba(5,8,18,.7) 100%)}.hero3d-content{position:relative;z-index:2;max-width:580px;padding-top:80px}.hero3d-badge{display:inline-flex;align-items:center;gap:8px;background:#3b82f61f;border:1px solid rgba(59,130,246,.3);border-radius:999px;padding:6px 14px;font-size:.78rem;color:#93c5fd;letter-spacing:.03em;margin-bottom:1.5rem}.hero3d-badge-dot{width:7px;height:7px;border-radius:50%;background:#22d3ee;box-shadow:0 0 8px #22d3ee;animation:pulseDot 2s infinite}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}.hero3d-title{font-size:clamp(2.4rem,5vw,4rem);font-weight:800;line-height:1.1;letter-spacing:-.03em;margin-bottom:1.4rem;color:#f1f5f9}.hero3d-subtitle{font-size:clamp(1rem,1.5vw,1.2rem);color:#94a3b8;line-height:1.65;margin-bottom:2.2rem}.hero3d-cta{padding:.85rem 2.2rem;font-size:1rem;border-radius:var(--radius-md);box-shadow:0 0 30px #3b82f659;transition:box-shadow .3s,transform .2s}.hero3d-cta:hover{box-shadow:0 0 50px #3b82f699;transform:translateY(-2px)}.hero3d-stats{display:flex;align-items:center;gap:1.5rem;margin-top:3rem}.hero3d-stat{display:flex;flex-direction:column;gap:2px}.hero3d-stat-value{font-size:1.6rem;font-weight:700;color:#e2e8f0;line-height:1}.hero3d-stat-label{font-size:.72rem;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.hero3d-stat-divider{width:1px;height:36px;background:#ffffff1a}.hero3d-scroll-hint{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:6px;color:#475569;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;animation:fadeInUp 1s ease 1.5s both}.hero3d-scroll-mouse{width:22px;height:34px;border:2px solid #334155;border-radius:11px;display:flex;justify-content:center;padding-top:5px}.hero3d-scroll-wheel{width:4px;height:8px;background:#475569;border-radius:2px;animation:scrollWheel 1.8s infinite}@keyframes scrollWheel{0%{transform:translateY(0);opacity:1}80%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.hero3d-content>*{animation:heroFadeIn .8s ease both}.hero3d-content>*:nth-child(1){animation-delay:.1s}.hero3d-content>*:nth-child(2){animation-delay:.25s}.hero3d-content>*:nth-child(3){animation-delay:.4s}.hero3d-content>*:nth-child(4){animation-delay:.55s}.hero3d-content>*:nth-child(5){animation-delay:.7s}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.hero3d-section{align-items:flex-end;padding-bottom:3rem}.hero3d-overlay{background:#050812bf}.hero3d-content{max-width:100%;padding-top:100px}.hero3d-stats{gap:1rem}}.analyzer-main{padding-top:56px;padding-bottom:.5rem;min-height:100vh}.analyzer-page-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.75rem 1.5rem .6rem;max-width:1500px;margin:0 auto;flex-wrap:wrap}.analyzer-page-title{font-size:1.15rem;font-weight:800;letter-spacing:-.03em;margin-bottom:.1rem}.analyzer-page-sub{font-size:.78rem;color:#64748b;max-width:520px;line-height:1.4}.analyzer-params-strip{display:flex;align-items:center;gap:.6rem;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:.5rem .95rem;flex-shrink:0}.analyzer-param{display:flex;flex-direction:column;align-items:center;gap:2px}.analyzer-param-label{font-size:.65rem;color:#475569;text-transform:uppercase;letter-spacing:.1em;font-family:monospace}.analyzer-param-value{font-size:.8rem;font-family:monospace;color:#e2e8f0;font-weight:600}.analyzer-param-divider{width:1px;height:28px;background:#ffffff12}.analyzer-layout{display:grid;grid-template-columns:272px 1fr;gap:1rem;padding:0 1.5rem 1rem;max-width:1500px;margin:0 auto;align-items:start}.analyzer-sidebar{display:flex;flex-direction:column;gap:.8rem;position:sticky;top:66px;max-height:calc(100vh - 74px)}.analyzer-sidebar>.shaft-card{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.analyzer-charts{display:flex;flex-direction:column;gap:.7rem;min-width:0}.analyzer-chart-card{background:#ffffff06;border:1px solid rgba(255,255,255,.07);border-radius:16px;overflow:hidden;transition:border-color .25s}.analyzer-chart-card:hover{border-color:#ffffff1f}.analyzer-chart-header{display:flex;align-items:center;justify-content:space-between;padding:.55rem 1rem .45rem;border-bottom:1px solid rgba(255,255,255,.05)}.analyzer-chart-title{display:flex;align-items:center;gap:8px;font-size:.72rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.12em}.analyzer-chart-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px currentColor}.analyzer-chart-controls{display:flex;align-items:center;gap:.6rem}.analyzer-badge-mono{font-size:.72rem;font-family:monospace;color:#64748b;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:6px;padding:3px 8px}.analyzer-reset-btn{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#60a5fa;background:#3b82f614;border:1px solid rgba(59,130,246,.25);border-radius:6px;padding:4px 10px;cursor:pointer;transition:background .2s}.analyzer-reset-btn:hover{background:#3b82f62e}.analyzer-canvas-wrap{position:relative;width:100%;display:block}.analyzer-canvas-wrap canvas{display:block;width:100%!important}.analyzer-chart-footer{display:flex;align-items:center;justify-content:space-between;padding:.35rem 1rem .4rem;font-size:.66rem;color:#475569;border-top:1px solid rgba(255,255,255,.04);flex-wrap:wrap;gap:.4rem}.analyzer-chart-footer kbd{display:inline-block;background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:4px;padding:1px 5px;font-family:monospace;font-size:.65rem;color:#94a3b8;margin-right:2px}.analyzer-harmonic-btn{font-size:.68rem;font-family:monospace;font-weight:700;color:#818cf8;background:#6366f114;border:1px solid rgba(99,102,241,.2);border-radius:5px;padding:2px 7px;cursor:pointer;margin-left:4px;transition:background .2s}.analyzer-harmonic-btn:hover{background:#6366f133}.shaft-card{background:#ffffff06;border:1px solid rgba(255,255,255,.07);border-radius:16px;overflow:hidden}.shaft-header{display:flex;align-items:center;gap:8px;padding:.6rem 1.2rem .45rem;font-size:.72rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid rgba(255,255,255,.05)}.shaft-canvas{width:100%;height:175px;display:block}.shaft-legend{display:flex;gap:1rem;padding:.4rem 1rem;border-top:1px solid rgba(255,255,255,.05)}.shaft-legend-row{display:flex;align-items:center;gap:5px;font-size:.68rem;color:#64748b}.shaft-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.shaft-dot.red{background:#ef4444;box-shadow:0 0 5px #ef4444}.shaft-dot.blue{background:#3b82f6;box-shadow:0 0 5px #3b82f6}.shaft-rpm{display:flex;align-items:baseline;gap:4px;padding:.3rem 1rem .5rem;justify-content:center}.shaft-rpm-value{font-size:1.3rem;font-weight:700;font-family:monospace;color:#e2e8f0}.shaft-rpm-unit{font-size:.65rem;color:#475569;text-transform:uppercase;letter-spacing:.08em}.shaft-rpm-sep{color:#334155;font-size:.9rem;margin:0 2px}.shaft-speed-control{padding:.55rem 1rem .7rem;border-top:1px solid rgba(255,255,255,.05)}.shaft-sources{padding:.55rem 1rem .7rem;border-top:1px solid rgba(255,255,255,.05);gap:.35rem}.shaft-check{display:flex;align-items:center;gap:.6rem;cursor:pointer;padding:.28rem .1rem;-webkit-user-select:none;user-select:none}.shaft-check input{width:15px;height:15px;accent-color:#8b5cf6;cursor:pointer;flex-shrink:0}.shaft-check-text{display:flex;align-items:center;justify-content:space-between;flex:1;font-size:.8rem;color:#cbd5e1}.shaft-check-order{font-family:monospace;font-size:.68rem;color:#818cf8;background:#818cf81f;border:1px solid rgba(129,140,248,.25);border-radius:5px;padding:.1rem .35rem}.analyzer-control-card{background:#ffffff06;border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:1.2rem;display:flex;flex-direction:column;gap:1.4rem}.analyzer-control-title{font-size:.66rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.12em;padding-bottom:.4rem;border-bottom:1px solid rgba(255,255,255,.06)}.analyzer-control-group{display:flex;flex-direction:column;gap:.7rem}.analyzer-control-label-row{display:flex;align-items:center;justify-content:space-between}.analyzer-control-label{font-size:.68rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.analyzer-control-value{font-size:.72rem;font-family:monospace;color:#818cf8;background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:5px;padding:2px 8px}.analyzer-fmax-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.analyzer-fmax-btn{padding:6px 4px;font-size:.72rem;font-weight:700;font-family:monospace;border-radius:8px;border:1px solid;cursor:pointer;transition:all .2s;text-align:center}.analyzer-fmax-btn.active{background:#6366f12e;border-color:#6366f1;color:#e0e7ff;box-shadow:0 0 12px #6366f133}.analyzer-fmax-btn:not(.active){background:#ffffff08;border-color:#ffffff14;color:#475569}.analyzer-fmax-btn:not(.active):hover{border-color:#fff3;color:#94a3b8}.analyzer-select{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.09);border-radius:8px;padding:7px 32px 7px 12px;font-size:.8rem;color:#e2e8f0;cursor:pointer;transition:border-color .2s;appearance:none}.analyzer-select:hover{border-color:#fff3}.analyzer-range{width:100%;height:4px;-webkit-appearance:none;appearance:none;background:linear-gradient(to right,#6366f1 0%,#6366f1 var(--fill, 0%),rgba(255,255,255,.1) var(--fill, 0%),rgba(255,255,255,.1) 100%);border-radius:2px;outline:none;cursor:pointer}.analyzer-range::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#818cf8;box-shadow:0 0 8px #6366f199;cursor:pointer;transition:transform .15s}.analyzer-range::-webkit-slider-thumb:hover{transform:scale(1.25)}@media(max-width:900px){.analyzer-layout{grid-template-columns:1fr}.analyzer-sidebar{position:static;display:block;max-height:none}.analyzer-page-header{flex-direction:column}}.daq-page{--daq-bg: #070b14;--daq-surface: #0d1422;--daq-surface-2: #131c2e;--daq-border: rgba(148, 163, 184, .12);--daq-border-strong: rgba(148, 163, 184, .26);--daq-text: #e5ecf6;--daq-muted: #94a3b8;--daq-dim: #6b7a92;--daq-accent: #6366f1;--daq-accent-text: #a5b4fc;--daq-accent-soft: rgba(99, 102, 241, .16);--daq-wave: #60a5fa;--daq-spec: #34d399;--daq-tip-bg: rgba(9, 14, 26, .94);--daq-shadow: inset 0 1px 0 rgba(255, 255, 255, .03), 0 24px 48px -32px rgba(0, 0, 0, .9);--daq-glow-1: rgba(59, 130, 246, .14);--daq-glow-2: rgba(139, 92, 246, .12);--daq-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--text-main: var(--daq-text);--text-muted: var(--daq-muted);--text-dim: var(--daq-dim);--border-color: var(--daq-border);--bg-panel: var(--daq-surface);width:100%;min-height:100vh;display:flex;flex-direction:column;color:var(--daq-text);color-scheme:dark;background:radial-gradient(900px 500px at 8% -5%,var(--daq-glow-1),transparent 70%),radial-gradient(800px 500px at 100% 30%,var(--daq-glow-2),transparent 70%),var(--daq-bg);transition:background-color .3s,color .3s}.daq-page[data-theme=light]{--daq-bg: #eef2f7;--daq-surface: #ffffff;--daq-surface-2: #f1f5f9;--daq-border: rgba(15, 23, 42, .08);--daq-border-strong: rgba(15, 23, 42, .18);--daq-text: #0f172a;--daq-muted: #475569;--daq-dim: #64748b;--daq-accent: #4f46e5;--daq-accent-text: #4338ca;--daq-accent-soft: rgba(79, 70, 229, .1);--daq-wave: #2563eb;--daq-spec: #059669;--daq-tip-bg: rgba(255, 255, 255, .97);--daq-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 16px 32px -24px rgba(15, 23, 42, .3);--daq-glow-1: rgba(59, 130, 246, .1);--daq-glow-2: rgba(139, 92, 246, .07);color-scheme:light}.daq-page button{font:inherit;cursor:pointer}.daq-page :focus-visible{outline:2px solid var(--daq-accent);outline-offset:2px}.daq-nav{position:fixed;inset:0 0 auto;z-index:1000;height:56px;background:color-mix(in srgb,var(--daq-bg) 78%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);border-bottom:1px solid var(--daq-border)}.daq-nav-inner{max-width:1560px;height:100%;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:14px}.daq-nav-back{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;color:var(--daq-muted);text-decoration:none;transition:color .2s}.daq-nav-back:hover{color:var(--daq-text)}.daq-nav-sep{width:1px;height:18px;background:var(--daq-border-strong)}.daq-nav-title{font-weight:700;font-size:.9rem}.daq-theme-btn{margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:7px 12px;font-size:.8rem;font-weight:600;color:var(--daq-text);background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:999px;transition:border-color .2s,transform .2s}.daq-theme-btn:hover{border-color:var(--daq-border-strong);background:var(--daq-surface-2)}.daq-theme-btn:active{transform:scale(.97)}.daq-main{width:100%;max-width:1560px;margin:0 auto;padding:84px 24px 40px;flex:1}.daq-hero{display:grid;grid-template-columns:1fr auto;align-items:end;gap:24px;margin-bottom:20px}.daq-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--daq-accent-text);margin-bottom:6px}.daq-title{font-size:clamp(1.6rem,2.6vw,2.25rem);line-height:1.1;font-weight:800;letter-spacing:-.03em;text-wrap:balance}.daq-title span{background:linear-gradient(90deg,#3b82f6,#8b5cf6 55%,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent}.daq-sub{margin-top:8px;max-width:60ch;font-size:.95rem;line-height:1.55;color:var(--daq-muted);text-wrap:pretty}.daq-kpis{display:flex;gap:12px}.daq-kpi{min-width:190px;display:flex;flex-direction:column;gap:4px;padding:12px 16px;background:var(--daq-surface);border:1px solid var(--daq-border);border-radius:14px;box-shadow:var(--daq-shadow)}.daq-kpi-label,.daq-field-label{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--daq-dim)}.daq-kpi-value{font-family:var(--daq-mono);font-size:1.6rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.daq-kpi-value.is-colored{color:var(--c);transition:color .4s}.daq-kpi-value small{margin-left:6px;font-size:.72rem;font-weight:600;color:var(--daq-dim)}.daq-kpi-sub{font-size:.75rem;color:var(--daq-muted)}.daq-iso{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin:4px 0 2px}.daq-iso span{position:relative;height:16px;font-size:.6rem;font-weight:800;display:grid;place-items:center;color:#ffffffe6;border-radius:4px;opacity:.35;transition:opacity .3s}.daq-iso span.is-active{opacity:1}.daq-iso [data-zone=A]{background:#22c55e}.daq-iso [data-zone=B]{background:#84cc16}.daq-iso [data-zone=C]{background:#f59e0b}.daq-iso [data-zone=D]{background:#ef4444}.daq-iso i{position:absolute;top:-4px;bottom:-4px;width:3px;margin-left:-1.5px;background:var(--daq-text);border-radius:2px;box-shadow:0 0 0 2px var(--daq-surface);transition:left .3s}.daq-grid{display:grid;grid-template-columns:minmax(400px,5fr) 7fr;gap:16px;align-items:start}.daq-col{display:flex;flex-direction:column;gap:16px;min-width:0}.daq-card{position:relative;background:var(--daq-surface);border:1px solid var(--daq-border);border-radius:16px;box-shadow:var(--daq-shadow)}.daq-card-head,.daq-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--daq-border)}.daq-card-title,.daq-chart-title{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:700;letter-spacing:-.01em}.daq-chart-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.daq-chart-title small{font-size:.75rem;font-weight:500;color:var(--daq-dim)}.daq-dot{width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 22%,transparent)}.daq-pill{font-family:var(--daq-mono);font-size:.72rem;color:var(--daq-muted);padding:3px 8px;background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:6px;white-space:nowrap;font-variant-numeric:tabular-nums}.daq-page .daq-btn-ghost{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;font-size:.72rem;font-weight:600;white-space:nowrap;color:var(--daq-accent-text);background:var(--daq-accent-soft);border:1px solid color-mix(in srgb,var(--daq-accent) 25%,transparent);border-radius:8px;transition:border-color .2s,background .2s;animation:daq-reveal .2s ease-out}.daq-page .daq-btn-ghost:hover{border-color:var(--daq-accent);background:color-mix(in srgb,var(--daq-accent) 22%,transparent)}.daq-page .daq-btn-ghost svg{transition:transform .3s}.daq-page .daq-btn-ghost:hover svg{transform:rotate(-90deg)}.daq-stage{overflow:hidden}.daq-stage-canvas{position:relative;height:clamp(340px,34vw,460px);border-radius:15px 15px 0 0;overflow:hidden}.daq-stage-canvas canvas{display:block;cursor:grab;touch-action:pan-y}.daq-stage-canvas canvas:active{cursor:grabbing}.daq-stage-hud,.daq-stage-legend{position:absolute;left:12px;right:12px;display:flex;flex-wrap:wrap;gap:6px;pointer-events:none}.daq-stage-hud{top:12px}.daq-stage-legend{top:44px}.daq-stage-hint{position:absolute;top:calc(clamp(340px,34vw,460px) - 34px);right:12px;display:inline-flex;align-items:center;gap:6px;font-size:.72rem;color:var(--daq-muted);pointer-events:none}.daq-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;font-size:.7rem;font-weight:600;color:var(--daq-text);background:color-mix(in srgb,var(--daq-surface) 80%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--daq-border);border-radius:999px}.daq-stage-hud .daq-chip-btn{pointer-events:auto;cursor:pointer;margin-left:auto;font-family:inherit}.daq-chip-btn:hover{border-color:var(--daq-border-strong)}.daq-chip-btn.is-on{color:var(--daq-accent-text);border-color:var(--daq-accent)}.daq-chip-src i{width:7px;height:7px;border-radius:50%;background:var(--c)}.daq-live-dot{width:7px;height:7px;border-radius:50%;background:#ef4444;animation:daq-pulse 1.4s ease-in-out infinite}@keyframes daq-pulse{0%,to{opacity:1;box-shadow:0 0 #ef444480}50%{opacity:.6;box-shadow:0 0 0 4px #ef444400}}.daq-scene-tip{position:absolute;z-index:2;transform:translate(14px,-50%);display:flex;flex-direction:column;gap:2px;padding:8px 10px;background:var(--daq-tip-bg);border:1px solid var(--daq-border-strong);border-radius:10px;box-shadow:0 12px 28px -12px #00000080;pointer-events:none;white-space:nowrap}.daq-scene-tip-label{font-size:.8rem;font-weight:700}.daq-scene-tip-src{font-size:.72rem;font-weight:600;color:var(--c)}.daq-speed{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:14px 16px;border-top:1px solid var(--daq-border)}.daq-speed-read{display:flex;flex-direction:column;gap:2px}.daq-speed-value{font-family:var(--daq-mono);font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.daq-speed-value small{font-size:.7rem;color:var(--daq-dim)}.daq-speed-value em{font-style:normal;font-size:.75rem;font-weight:500;color:var(--daq-muted);margin-left:4px}.daq-range{width:100%;height:6px;appearance:none;-webkit-appearance:none;border-radius:999px;background:linear-gradient(to right,var(--daq-accent) var(--fill, 0%),var(--daq-surface-2) var(--fill, 0%));box-shadow:inset 0 0 0 1px var(--daq-border);cursor:pointer}.daq-range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--daq-accent);box-shadow:0 2px 8px #00000059;transition:transform .15s}.daq-range::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#fff;border:4px solid var(--daq-accent)}.daq-range:hover::-webkit-slider-thumb{transform:scale(1.12)}.daq-seg{display:inline-flex;padding:3px;gap:2px;background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:10px}.daq-seg button{padding:6px 10px;font-family:var(--daq-mono);font-size:.75rem;font-weight:600;color:var(--daq-muted);background:transparent;border:0;border-radius:7px;white-space:nowrap;transition:background .2s,color .2s}.daq-seg button:hover{color:var(--daq-text)}.daq-seg button.is-active{color:#fff;background:var(--daq-accent);box-shadow:0 4px 12px -4px var(--daq-accent)}.daq-switch{appearance:none;-webkit-appearance:none;position:relative;flex-shrink:0;width:34px;height:20px;border-radius:999px;background:var(--daq-border-strong);cursor:pointer;transition:background .2s}.daq-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .2s cubic-bezier(.3,1.4,.6,1)}.daq-switch:checked{background:var(--c, var(--daq-accent))}.daq-switch:checked:after{transform:translate(14px)}.daq-source-list{list-style:none;padding:6px;margin:0;display:grid;gap:2px}.daq-source{border-radius:10px;border:1px solid transparent;transition:background .2s,border-color .2s}.daq-source:hover,.daq-source.is-hl{background:color-mix(in srgb,var(--c) 8%,transparent)}.daq-source.is-on{border-color:color-mix(in srgb,var(--c) 30%,transparent);background:color-mix(in srgb,var(--c) 6%,transparent)}.daq-source.is-on.is-hl{background:color-mix(in srgb,var(--c) 14%,transparent)}.daq-source-main{display:flex;align-items:center;gap:12px;padding:10px;cursor:pointer}.daq-source-name{flex:1;font-size:.875rem;font-weight:600}.daq-source-tag{font-family:var(--daq-mono);font-size:.7rem;font-weight:700;color:var(--c);padding:2px 7px;border-radius:6px;background:color-mix(in srgb,var(--c) 14%,transparent)}.daq-source-opts{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:0 10px 12px 56px;animation:daq-reveal .25s ease-out}@keyframes daq-reveal{0%{opacity:0;transform:translateY(-4px)}}.daq-source-level,.daq-stepper{display:flex;align-items:center;gap:8px;font-size:.72rem;color:var(--daq-muted)}.daq-source-level{flex:1;min-width:180px}.daq-source-level .daq-range{--daq-accent: var(--c);flex:1;height:5px}.daq-source-level b,.daq-stepper b{font-family:var(--daq-mono);font-size:.75rem;color:var(--daq-text);min-width:3.2ch;text-align:right;font-variant-numeric:tabular-nums}.daq-stepper b{text-align:center;min-width:2.4ch}.daq-stepper button{width:24px;height:24px;display:grid;place-items:center;color:var(--daq-text);background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:7px}.daq-stepper button:hover:not(:disabled){border-color:var(--c);color:var(--c)}.daq-stepper button:disabled{opacity:.35;cursor:not-allowed}.daq-acq{padding:14px 16px;display:grid;gap:14px}.daq-acq-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 20px}.daq-field{display:flex;flex-direction:column;gap:6px}.daq-toggle-row{display:flex;align-items:center;gap:8px;height:35px;font-size:.8rem;color:var(--daq-muted);cursor:pointer}.daq-live-btn{margin-left:auto;display:inline-flex;align-items:center;gap:8px;height:35px;padding:0 14px;font-size:.8rem;font-weight:600;color:var(--daq-text);background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:10px}.daq-live-btn:hover{border-color:var(--daq-border-strong)}.daq-live-btn.is-paused{color:#fff;background:var(--daq-accent);border-color:transparent}.daq-stats{display:grid;grid-template-columns:repeat(5,1fr);margin:0;background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:12px}.daq-stat{padding:8px 12px;display:flex;flex-direction:column;gap:1px}.daq-stat+.daq-stat{border-left:1px solid var(--daq-border)}.daq-stat dt{font-family:var(--daq-mono);font-size:.7rem;font-weight:700;color:var(--daq-accent-text)}.daq-stat dd{margin:0;font-family:var(--daq-mono);font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.daq-stat small{font-size:.68rem;color:var(--daq-dim);white-space:nowrap}.daq-alert{display:flex;align-items:flex-start;gap:8px;padding:9px 12px;font-size:.8rem;line-height:1.45;color:var(--daq-muted);background:var(--daq-accent-soft);border-radius:10px;animation:daq-reveal .25s ease-out}.daq-alert svg{flex-shrink:0;margin-top:2px;color:var(--daq-accent-text)}.daq-alert b{color:var(--daq-text)}.daq-alert.is-warn{background:#f59e0b1f}.daq-alert.is-warn svg{color:#f59e0b}.daq-plot{position:relative;padding:4px 4px 0;touch-action:pan-y;cursor:crosshair;-webkit-user-select:none;user-select:none}.daq-plot.is-dragging{cursor:grabbing}.daq-plot canvas{display:block;width:100%}.daq-sel{position:absolute;top:4px;bottom:0;background:color-mix(in srgb,var(--daq-wave) 15%,transparent);border:1px solid var(--daq-wave);pointer-events:none}.daq-chart-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:8px 16px 10px;font-size:.72rem;color:var(--daq-dim)}.daq-chart-foot kbd{font-family:var(--daq-mono);font-size:.68rem;padding:1px 5px;color:var(--daq-muted);background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:4px}.daq-tip{position:absolute;z-index:3;min-width:210px;max-width:280px;transform:translate(16px);padding:10px 12px;display:grid;gap:4px;background:var(--daq-tip-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--daq-border-strong);border-radius:12px;box-shadow:0 18px 40px -16px #0000008c;pointer-events:none}.daq-tip.is-flipped{transform:translate(calc(-100% - 16px))}.daq-tip-row{display:flex;justify-content:space-between;gap:16px;font-size:.75rem;color:var(--daq-muted)}.daq-tip-row b{font-family:var(--daq-mono);font-weight:600;color:var(--daq-text);font-variant-numeric:tabular-nums}.daq-tip-src{display:flex;align-items:center;gap:7px;margin-bottom:4px;padding-bottom:7px;border-bottom:1px solid var(--daq-border);font-size:.82rem;font-weight:700}.daq-tip-src i{width:9px;height:9px;border-radius:3px;background:var(--c);box-shadow:0 0 10px var(--c)}.daq-tip-src em{margin-left:auto;font-style:normal;font-family:var(--daq-mono);font-size:.72rem;color:var(--c)}.daq-tip-src.is-empty{color:var(--daq-muted);font-weight:600}.daq-tip-src.is-empty i{background:var(--daq-border-strong);box-shadow:none}.daq-tip-note,.daq-tip-warn{margin-top:4px;font-size:.72rem;line-height:1.45;color:var(--daq-muted);white-space:normal}.daq-tip-warn{color:#d97706}@media(max-width:1180px){.daq-grid{grid-template-columns:1fr}.daq-hero{grid-template-columns:1fr;align-items:start}.daq-stage-canvas{height:clamp(320px,52vw,480px)}.daq-stage-hint{top:calc(clamp(320px,52vw,480px) - 34px)}}@media(max-width:720px){.daq-main{padding:72px 12px 24px}.daq-nav-inner{padding:0 12px}.daq-theme-btn span{display:none}.daq-kpis{flex-direction:column}.daq-speed{grid-template-columns:1fr}.daq-stats{grid-template-columns:repeat(3,1fr)}.daq-stat:nth-child(4){border-left:0}.daq-stat:nth-child(n+4){border-top:1px solid var(--daq-border)}.daq-source-opts{padding-left:10px}.daq-live-btn{margin-left:0}}.lsn-main{max-width:1200px;display:flex;flex-direction:column;gap:28px}.lsn-hero .daq-sub{max-width:68ch;font-size:1.05rem}.lsn-prose{max-width:72ch;line-height:1.7;color:var(--daq-muted);text-wrap:pretty}.lsn-prose h2,.lsn-h2{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:1.3rem;font-weight:750;letter-spacing:-.02em;color:var(--daq-text)}.lsn-prose p+p{margin-top:10px}.lsn-prose>*+h2{margin-top:28px}.lsn-prose b{color:var(--daq-text)}.lsn-prose ul{padding-left:1.2em;display:grid;gap:6px;margin:10px 0}.lsn-h2 svg{color:var(--daq-accent-text)}.lsn-lab{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.lsn-plot{cursor:default}.lsn-chart-split{border-top:1px solid var(--daq-border)}.lsn-stats{grid-template-columns:repeat(4,1fr);margin:4px 16px 16px}.lsn-pill-warn{color:#f87171;border-color:#f8717159}.lsn-legend{display:flex;align-items:center;gap:4px 12px;flex-wrap:wrap;justify-content:flex-end;font-size:.72rem;color:var(--daq-dim)}.lsn-legend .lsn-key{margin-left:6px}.lsn-key{display:inline-block;width:14px;height:3px;margin-right:6px;vertical-align:middle;border-radius:2px;background:var(--c)}.lsn-controls{position:sticky;top:72px;display:grid;gap:12px;padding-bottom:14px}.lsn-controls>.lsn-ctrl-pair{margin:0 16px}.lsn-ctrl-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lsn-controls>.lsn-ctrl,.lsn-controls>.lsn-hint{margin:0 16px}.lsn-fieldset{display:grid;gap:12px;margin:0 16px;padding:0;border:0;min-width:0;transition:opacity .2s}.lsn-fieldset:disabled{opacity:.4}.lsn-ctrl{display:grid;gap:8px}.lsn-ctrl-row{display:flex;justify-content:space-between;align-items:center}.lsn-ctrl-hint{margin-top:-2px;font-size:.75rem;line-height:1.35;color:var(--daq-dim)}.lsn-toggle .lsn-ctrl-hint{display:block;margin-top:2px;font-weight:400}.lsn-ctrl .daq-seg{justify-self:start}.lsn-hint{margin-top:-8px;font-size:.78rem;color:var(--daq-dim)}.lsn-toggle{display:flex;align-items:center;gap:10px;font-size:.85rem;font-weight:600;cursor:pointer}.lsn-lab-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:10px}.lsn-lab-head .lsn-h2{margin:0}.lsn-quest{display:flex;align-items:center;gap:12px 16px;min-height:48px;margin-bottom:10px;padding:6px 8px 6px 14px;font-size:.85rem;line-height:1.45;color:var(--daq-dim);background:var(--daq-surface);border:1px dashed var(--daq-border-strong);border-radius:12px}.lsn-quest.is-on{color:var(--daq-muted);border-style:solid;border-color:color-mix(in srgb,var(--daq-accent) 45%,transparent);background:var(--daq-accent-soft)}.lsn-quest{flex-wrap:wrap}.lsn-quest-text{flex:1 1 320px;display:grid;gap:8px;padding:4px 0}.lsn-quest p{text-wrap:pretty}.lsn-quest-answer{padding-top:8px;color:var(--daq-text);border-top:1px dashed color-mix(in srgb,var(--daq-accent) 45%,transparent)}.lsn-quest b{color:var(--daq-text)}.lsn-quest-tools{display:flex;gap:6px;flex-shrink:0;align-self:flex-start}.lsn-quest{position:relative}.lsn-quest-text{flex-basis:100%}.lsn-quest-tools{position:absolute;top:6px;right:8px}.lsn-quest-gap{float:right;width:236px;height:30px;margin-left:12px}@media(max-width:720px){.lsn-quest-tools{position:static}.lsn-quest-gap{display:none}}.lsn-quest-stack{display:grid}.lsn-quest-stack>*{grid-area:1 / 1}.lsn-quest .is-off{visibility:hidden}.lsn-quest .daq-btn-ghost{animation:none}.lsn-quest .daq-btn-ghost:hover svg{transform:none}.lsn-table-wrap{overflow-x:auto}.lsn-table{width:100%;border-collapse:collapse;font-size:.88rem;line-height:1.5}.lsn-table th{text-align:left;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--daq-dim)}.lsn-table th,.lsn-table td{padding:10px 12px;border-bottom:1px solid var(--daq-border);vertical-align:top}.lsn-table td:last-child{font-family:var(--daq-mono);white-space:nowrap}.lsn-table.is-text td:last-child{font-family:inherit;white-space:normal}.lsn-table.is-text td:first-child{white-space:nowrap}.lsn-calc{display:flex;flex-wrap:wrap;align-items:end;gap:16px 24px;padding:16px;max-width:72ch;margin-top:-12px}.lsn-calc input,.lsn-calc select{width:120px;padding:7px 10px;font:inherit;font-family:var(--daq-mono);font-size:.85rem;color:var(--daq-text);background:var(--daq-surface-2);border:1px solid var(--daq-border-strong);border-radius:8px}.lsn-calc-out{display:grid;gap:2px;font-family:var(--daq-mono);font-size:.8rem;color:var(--daq-muted)}.lsn-calc-out b{font-size:1.4rem;color:var(--daq-accent-text)}.lsn-calc-out small{color:var(--daq-dim)}@media(max-width:900px){.lsn-lab{grid-template-columns:1fr}.lsn-controls{position:static}.lsn-stats{grid-template-columns:repeat(2,1fr)}.lsn-stats .daq-stat:nth-child(3){border-left:0}.lsn-stats .daq-stat:nth-child(n+3){border-top:1px solid var(--daq-border)}}.lsn-hero .daq-sub a{color:var(--daq-accent-text)}.crs-count{margin-top:12px;font-family:var(--daq-mono);font-size:.8rem;color:var(--daq-dim)}.crs-rules{margin-bottom:16px;padding:14px 20px;font-size:.9rem}.crs-rules summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:600}.crs-rules summary svg{color:var(--daq-accent-text)}.crs-rules ul{margin:10px 0 0;padding-left:20px;display:grid;gap:6px;line-height:1.55;color:var(--daq-muted)}.crs-rules b{color:var(--daq-text)}.crs-rules li svg{vertical-align:-2px}.crs-pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:16px;align-items:stretch}.crs-plan{display:flex;flex-direction:column;gap:10px;padding:22px;font-size:.88rem}.crs-plan>p{color:var(--daq-muted);line-height:1.55;text-wrap:pretty}.crs-plan .crs-btn{justify-content:center;margin-top:auto}.crs-plan-tag{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--daq-accent-text)}.daq-page .crs-plan-price{font-size:2rem;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--daq-text)}.crs-plan-price small{margin-left:6px;font-size:.85rem;font-weight:600;letter-spacing:0;color:var(--daq-dim)}.crs-plan-ok{display:inline-flex;align-items:center;gap:6px;margin-top:auto;font-weight:700;color:#10b981}.crs-plan.is-featured{border-color:transparent;background:linear-gradient(var(--daq-surface),var(--daq-surface)) padding-box,linear-gradient(135deg,#3b82f6,#8b5cf6 55%,#ec4899) border-box;box-shadow:var(--daq-shadow),0 18px 50px -20px #8b5cf68c}.crs-plan.is-featured .crs-plan-price{background:linear-gradient(90deg,#3b82f6,#8b5cf6 55%,#ec4899);-webkit-background-clip:text;background-clip:text;color:transparent}.crs-plan.is-featured .crs-plan-price small{-webkit-text-fill-color:var(--daq-dim)}@media(min-width:760px){.crs-plan.is-featured{transform:translateY(-6px)}}.crs-module-done{margin-left:auto;flex-shrink:0}.crs-modules{list-style:none;margin:0;padding:0;display:grid;gap:16px}.crs-module-head{display:flex;align-items:flex-start;gap:16px;padding:18px 20px}.crs-module-head h2{font-size:1.1rem;font-weight:750;letter-spacing:-.02em}.crs-module-head p{margin-top:4px;max-width:72ch;font-size:.9rem;line-height:1.55;color:var(--daq-muted)}.crs-num{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;font-family:var(--daq-mono);font-weight:700;color:var(--daq-accent-text);background:var(--daq-accent-soft);border-radius:10px}.crs-soon{margin-left:auto;flex-shrink:0;padding:3px 9px;font-size:.7rem;font-weight:600;color:var(--daq-dim);border:1px solid var(--daq-border-strong);border-radius:999px}.crs-lessons{list-style:none;margin:0;padding:0 12px 12px 64px;display:grid;gap:2px}.crs-lesson{display:flex;align-items:center;gap:14px;padding:10px 12px;color:var(--daq-dim);border-radius:10px}.crs-lesson svg{margin-left:auto;flex-shrink:0}.crs-lesson-num{width:2.5em;font-family:var(--daq-mono);font-size:.8rem}.crs-lesson-text{display:grid;gap:1px}.crs-lesson-text b{font-size:.9rem;font-weight:600}.crs-lesson-text small{font-size:.8rem}button.crs-lesson{width:100%;border:0;font:inherit;text-align:left}.crs-lesson.is-open{color:var(--daq-text);text-decoration:none;background:var(--daq-accent-soft);transition:background .2s}.crs-lesson.is-open:hover{background:color-mix(in srgb,var(--daq-accent) 24%,transparent)}.crs-lesson.is-open small{color:var(--daq-muted)}.crs-lesson.is-open svg,.crs-lesson.is-open .crs-lesson-num{color:var(--daq-accent-text)}.crs-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 20px;font-size:.8rem;color:var(--daq-dim);border-top:1px solid var(--daq-border)}.crs-tools a{font-weight:600;color:var(--daq-accent-text)}@media(max-width:720px){.crs-module-head{flex-wrap:wrap}.crs-soon{margin-left:52px}.crs-lessons{padding-left:12px}}.lsn-ctrl .daq-seg{flex-wrap:wrap}.lsn-steps{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lsn-prose h2+.lsn-steps{margin-top:20px}.lsn-steps li{position:relative;display:flex;flex-direction:column;gap:6px;padding:16px;font-size:.88rem;line-height:1.55;color:var(--daq-muted)}.lsn-steps li b{color:var(--daq-text)}.lsn-steps li a{color:var(--daq-accent-text)}.lsn-steps li small{margin-top:auto;font-size:.75rem;color:var(--daq-accent-text)}.lsn-steps li+li:before{content:"→";position:absolute;left:-14px;top:50%;transform:translate(-50%,-50%);color:var(--daq-dim)}.lsn-steps.is-list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.lsn-steps.is-list li+li:before{display:none}.lsn-src-table{width:calc(100% - 32px);margin:4px 16px 16px;border-collapse:collapse;font-size:.8rem}.lsn-src-table th{text-align:left;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--daq-dim);padding:6px 8px}.lsn-src-table td{padding:6px 8px;border-top:1px solid var(--daq-border);font-variant-numeric:tabular-nums}.lsn-src-table td:not(:first-child){font-family:var(--daq-mono);white-space:nowrap}.lsn-src-table td i{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:2px;background:var(--c)}.lsn-src-table tr.is-dim td{color:var(--daq-dim)}@media(max-width:900px){.lsn-steps{grid-template-columns:1fr}.lsn-steps li+li:before{display:none}}.daq-page.is-paged{height:100dvh;min-height:0;overflow:hidden}.pg-main{flex:1;min-height:0;display:flex;flex-direction:column;padding-top:56px}.pg{flex:1;min-height:0;display:flex;flex-direction:column}.pg-track{flex:1;min-height:0;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}.pg-track::-webkit-scrollbar{display:none}.pg-page{flex:0 0 100%;min-width:0;overflow-y:auto;scroll-snap-align:start;scroll-snap-stop:always}.pg-inner{max-width:1280px;min-height:100%;margin:0 auto;padding:24px 32px;display:flex;flex-direction:column;justify-content:center;gap:24px}.is-paged .lsn-controls{top:16px}.pg-nav{display:flex;align-items:center;justify-content:center;gap:16px;padding:10px 24px;border-top:1px solid var(--daq-border);background:color-mix(in srgb,var(--daq-bg) 85%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.pg-dots{display:flex;align-items:center;gap:6px}.daq-page .pg-dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:var(--daq-border-strong);transition:width .25s,background .25s}.daq-page .pg-dots button.is-active{width:24px;background:var(--daq-accent)}.pg-label{min-width:16ch;font-size:.8rem;color:var(--daq-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pg-label b{font-family:var(--daq-mono);color:var(--daq-text);margin-right:6px}.daq-page .pg-arrow{display:grid;place-items:center;flex-shrink:0;box-sizing:border-box;width:40px;height:40px;padding:0;color:var(--daq-text);background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:50%;transition:border-color .2s,opacity .2s}.daq-page .pg-arrow:hover:not(:disabled){border-color:var(--daq-accent)}.daq-page .pg-arrow:disabled{opacity:.35;cursor:default}.daq-page .pg-arrow:active:not(:disabled){transform:scale(.94)}.lsn-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:40px;align-items:center}.lsn-split>div:first-child{display:flex;flex-direction:column;gap:24px}.lsn-wide{max-width:none}.lsn-lab--wide-side{grid-template-columns:minmax(0,1fr) 340px}.lsn-controls .lsn-stats{grid-template-columns:repeat(3,1fr);margin:0 16px}.lsn-controls .lsn-stats .daq-stat{padding:8px 10px;min-width:0}.lsn-controls .daq-stat small{white-space:normal}.lsn-controls .lsn-src-table{width:calc(100% - 32px);margin:0 16px;font-size:.76rem}.lsn-controls .lsn-src-table th,.lsn-controls .lsn-src-table td{padding:4px 6px}.lsn-controls .lsn-src-table td small{display:inline;margin-left:6px}.lsn-src-table td small{display:block;font-family:var(--daq-mono);font-size:.7rem;color:var(--daq-dim)}.lsn-shapes{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.lsn-shapes figure{margin:0;padding:12px 12px 10px}.lsn-shapes svg{display:block;width:100%;height:auto}.lsn-shapes figcaption{margin-top:6px;font-size:.8rem;font-weight:600;text-align:center}.lsn-shapes .lsn-hint{grid-column:1 / -1;margin:0;text-align:center}.lsn-shape-fill{fill:var(--daq-accent-soft)}.lsn-shape-line{fill:none;stroke:#f59e0b;stroke-width:2;stroke-linejoin:round}.lsn-shape-axis{stroke:var(--daq-border-strong)}.lsn-units{padding:16px 0 12px}.lsn-units h3{padding:0 16px 6px;font-size:.95rem}.lsn-units .lsn-hint{margin:8px 16px 0}.lsn-takeaways{list-style:none;padding:0!important;display:grid!important;grid-template-columns:repeat(3,1fr);gap:16px!important;counter-reset:tk}.lsn-takeaways li{counter-increment:tk;padding:18px 18px 18px 56px;position:relative;color:var(--daq-text);background:var(--daq-surface);border:1px solid var(--daq-border);border-radius:16px;box-shadow:var(--daq-shadow)}.lsn-takeaways li:before{content:counter(tk);position:absolute;left:16px;top:16px;display:grid;place-items:center;width:26px;height:26px;font-family:var(--daq-mono);font-size:.8rem;font-weight:700;color:var(--daq-accent-text);background:var(--daq-accent-soft);border-radius:50%}.lsn-takeaways li.lsn-takeaway-cta{counter-increment:none;padding:0;display:grid;background:var(--daq-accent-soft);border-color:color-mix(in srgb,var(--daq-accent) 35%,transparent)}.lsn-takeaways li.lsn-takeaway-cta:before{display:none}.lsn-takeaway-cta a{display:flex;align-items:center;justify-content:center;gap:8px;padding:18px;font-weight:700;color:var(--daq-accent-text);text-decoration:none}.lsn-summary-card{padding:20px 24px}.lsn-end-link{margin-top:8px;text-decoration:none}.lsn-summary-card ul{gap:8px}@media(max-height:760px){.pg-inner{padding-top:12px;padding-bottom:12px;gap:16px}}@media(max-width:1000px){.lsn-split{grid-template-columns:1fr;gap:24px}.lsn-lab--wide-side,.lsn-takeaways{grid-template-columns:1fr}}@media(max-width:720px){.pg-label{display:none}.pg-inner{padding:20px 12px 32px;justify-content:flex-start}}.osc-row{display:flex;align-items:stretch;gap:4px;padding:0 4px}.osc-scene{flex:0 0 auto;width:auto;max-width:30%;align-self:center;padding:8px 0 8px 8px;box-sizing:border-box}.osc-trace{flex:1;min-width:0}.lsn-lab.is-fill{align-items:stretch}.osc-fill{display:flex;flex-direction:column}.osc-fill .osc-row{flex:1}.osc-fill .osc-trace canvas{position:absolute;top:4px;left:4px;width:calc(100% - 8px)}.osc-ground{stroke:var(--daq-text);stroke-width:3;stroke-linecap:round}.osc-rest{stroke:var(--daq-border-strong);stroke-width:1.5;stroke-dasharray:5 5}.osc-spring{fill:none;stroke:var(--daq-muted);stroke-width:2.5;stroke-linejoin:round}.osc-mass{fill:var(--daq-accent)}.osc-mass-label{fill:#fff;font:700 12px var(--daq-mono)}.osc-pedestal{fill:var(--daq-surface-2);stroke:var(--daq-border-strong);stroke-width:1.5}.osc-disc{fill:var(--daq-surface-2);stroke:var(--daq-muted);stroke-width:2.5}.osc-spoke{stroke:var(--daq-muted);stroke-width:3;stroke-linecap:round}.osc-hub{fill:var(--daq-muted)}.osc-sensor{fill:var(--daq-wave)}.osc-ingredients{display:grid;grid-template-columns:1fr 1fr;gap:12px}.osc-ingredients .daq-card{padding:16px;font-size:.88rem;line-height:1.5;color:var(--daq-muted)}.osc-ingredients .daq-card>b{display:block;margin-bottom:4px;font-size:.95rem;color:var(--daq-text)}.osc-formula{display:grid;gap:6px;align-content:center;background:var(--daq-accent-soft)!important}.osc-formula>span{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--daq-accent-text)}.osc-formula b{font-family:var(--daq-mono);font-size:1.15rem;color:var(--daq-text);display:flex;align-items:center;gap:6px}.osc-formula small{color:var(--daq-dim)}.osc-frac{display:inline-grid;text-align:center;font-size:.8em;line-height:1.1}.osc-frac span:first-child{border-bottom:1.5px solid currentColor}.osc-figure{margin:0;padding:16px}.osc-figure svg{display:block;width:100%;height:auto}.osc-wave{fill:none;stroke:var(--daq-wave);stroke-width:3}.osc-annot line{stroke:var(--daq-accent-text);stroke-width:1.5}.osc-annot text{fill:var(--daq-accent-text);font:600 13px var(--daq-mono);paint-order:stroke;stroke:var(--daq-surface);stroke-width:5px;stroke-linejoin:round}.osc-axis{fill:var(--daq-dim);font:12px var(--daq-mono)}.osc-figure figcaption{margin-top:8px;font-size:.85rem;color:var(--daq-muted);text-align:center}.osc-units{padding:12px 0}.osc-units .lsn-hint{margin:8px 16px 0}@media(max-width:720px){.osc-row{flex-direction:column}.osc-scene{max-width:none;align-self:center}.osc-ingredients{grid-template-columns:1fr}}.lsn-controls .lsn-stats.is-2{grid-template-columns:repeat(2,1fr)}.lsn-stats.is-2 .daq-stat:nth-child(3){border-left:0}.lsn-stats.is-2 .daq-stat:nth-child(n+3){border-top:1px solid var(--daq-border)}.amp-rms{stroke:#a855f7;stroke-width:1.5;stroke-dasharray:6 4}.amp-rms-label{fill:#a855f7;font:600 13px var(--daq-mono);paint-order:stroke;stroke:var(--daq-surface);stroke-width:5px;stroke-linejoin:round}.daq-page .crs-signin{margin-left:0}.crs-full{margin-left:auto;flex-shrink:0;padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:700;color:var(--daq-accent-text);border:1px solid color-mix(in srgb,var(--daq-accent) 40%,transparent)}.crs-full+svg,.crs-done+svg{margin-left:0!important}.crs-done{color:#10b981!important}.crs-students td:not(:first-child){white-space:nowrap}.crs-students a{color:inherit}.crs-student-link{display:grid;gap:2px;text-decoration:none}.crs-student-link:hover b{text-decoration:underline}.crs-student-link small,.crs-status small{color:var(--daq-dim)}.crs-student-module{margin-top:16px;padding:16px 8px 4px}.crs-student-module h2{padding:0 12px 4px;font-size:1rem;font-weight:700}.crs-students tr.is-unvisited td{color:var(--daq-dim)}.crs-status{display:grid;gap:1px}.crs-status.is-done{display:flex;align-items:center;gap:4px;color:#10b981}.crs-status.is-open{color:var(--daq-accent-text)}.crs-retos{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px}.crs-reto{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 4px;border-radius:6px;font:600 .72rem var(--daq-mono);color:var(--daq-dim);border:1px dashed var(--daq-border)}.crs-reto.is-seen{color:#fff;background:#10b981;border:1px solid #10b981}.crs-retos small{color:var(--daq-dim);font-size:.72rem}.crs-gate{max-width:520px;margin:12vh auto 0;padding:32px;display:grid;justify-items:center;gap:12px;text-align:center}.crs-gate>svg{color:var(--daq-accent-text)}.crs-gate h1{font-size:1.35rem;font-weight:750;letter-spacing:-.02em;text-wrap:balance}.crs-gate p{color:var(--daq-muted);line-height:1.6;text-wrap:pretty}.crs-gate-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}.daq-page .crs-btn{display:inline-flex;align-items:center;padding:10px 18px;border-radius:10px;font-size:.9rem;font-weight:700;text-decoration:none;color:#fff;background:var(--daq-accent);border:1px solid transparent;cursor:pointer}.crs-pay{max-width:1100px;margin:12px auto 0;padding:10px 16px;border-radius:10px;font-size:.9rem;text-align:center;color:var(--daq-text);background:var(--daq-surface-2);border:1px solid var(--daq-border)}.crs-pay.is-toast{position:fixed;top:72px;left:50%;z-index:1001;translate:-50%;margin:0;box-shadow:0 12px 30px #0000004d}.daq-page .crs-btn:disabled{opacity:.6;cursor:default}.daq-page .crs-btn.is-ghost{color:var(--daq-text);background:var(--daq-surface-2);border-color:var(--daq-border)}.daq-page .crs-btn:hover{filter:brightness(1.08)}.msr-scene{display:block;width:100%;max-height:100%;padding:4px 12px 0;box-sizing:border-box}.osc-figure .msr-scene{padding:0}.msr-fin{stroke:var(--daq-border-strong);stroke-width:2}.msr-point circle{fill:var(--daq-surface);stroke:var(--daq-border-strong);stroke-width:1.5}.msr-point text{fill:var(--daq-muted);font:700 11px var(--daq-mono)}.msr-point.is-on circle{fill:var(--daq-accent);stroke:var(--daq-accent)}.msr-point.is-on text{fill:#fff}.msr-sensor{fill:#f59e0b;stroke:var(--daq-surface);stroke-width:1.5}.msr-dot{fill:var(--daq-surface)}.msr-ring{fill:none;stroke:#f59e0b;stroke-width:1.5;opacity:.7}.msr-sketch{display:block;width:calc(100% - 32px);height:92px;margin:0 16px}.msr-cable{fill:none;stroke:var(--daq-dim);stroke-width:2.5;stroke-linecap:round}.msr-stud{fill:var(--daq-muted)}.msr-thread{stroke:var(--daq-surface);stroke-width:1.5}.msr-rod{stroke:var(--daq-muted);stroke-width:4;stroke-linecap:round}.msr-key-true{--c: var(--daq-text);height:2px!important}.msr-mounts td:nth-child(2){font-family:var(--daq-mono);white-space:nowrap}.msr-mounts td:last-child{font-family:inherit;white-space:normal}.msr-grid{width:calc(100% - 32px);margin:0 16px;border-collapse:separate;border-spacing:4px;font-family:var(--daq-mono);font-size:.8rem}.msr-grid th{font-size:.68rem;font-weight:700;color:var(--daq-dim);text-align:center}.msr-grid thead th:first-child{text-align:left;font-family:inherit;letter-spacing:.08em;text-transform:uppercase}.msr-grid td{padding:0}.daq-page .msr-grid button{width:100%;padding:5px 0;font:inherit;font-weight:700;color:var(--daq-text);cursor:pointer;background:rgba(239,68,68,var(--h));border:1.5px solid transparent;border-radius:6px}.daq-page .msr-grid button.is-on{border-color:var(--daq-accent);box-shadow:0 0 0 2px var(--daq-accent-soft)}.msr-grid-hint{margin:2px 16px 0;font-size:.72rem}.sev-gauge{display:block;width:100%;padding:4px 16px 0;box-sizing:border-box}.sev-zone-letter{fill:#fff;font:700 13px var(--daq-mono)}.sev-needle{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.sev-needle path{fill:var(--daq-text)}.sev-needle line{stroke:var(--daq-text);stroke-width:2.5}.sev-needle text{fill:var(--daq-text);font:700 13px var(--daq-mono)}.sev-verdict{margin:0 16px 12px;padding:8px 12px;font-size:.85rem;color:var(--daq-muted);border-left:3px solid var(--c);background:color-mix(in srgb,var(--c) 10%,transparent);border-radius:0 8px 8px 0}.sev-verdict b{color:var(--daq-text)}.sev-table th i{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:2px;background:var(--c)}.sev-table td:nth-child(n+3){font-family:var(--daq-mono);white-space:nowrap}.sev-zones{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.sev-zones li{padding:10px 14px;font-size:.85rem;line-height:1.5;color:var(--daq-muted);border-left:3px solid var(--c);background:color-mix(in srgb,var(--c) 10%,transparent);border-radius:0 8px 8px 0}.sev-zones b{display:block;color:var(--daq-text)}.mnt-key-fail{--c: #ef4444}.mnt-key-waste{--c: var(--daq-border-strong)}.mnt-compare{list-style:none;margin:4px 16px 16px;padding:0;display:grid;gap:6px;font-size:.78rem}.mnt-compare li{display:grid;grid-template-columns:82px 1fr 52px;align-items:center;gap:8px;color:var(--daq-muted)}.mnt-compare li i{display:block;height:8px;border-radius:4px;background:var(--daq-border-strong);transition:width .35s}.mnt-compare li b{font-family:var(--daq-mono);text-align:right}.mnt-compare li.is-on{color:var(--daq-text)}.mnt-compare li.is-on i{background:var(--daq-accent)}@media(max-width:900px){.sev-zones{grid-template-columns:repeat(2,1fr)}}.msr-top{display:grid;grid-template-columns:minmax(0,1fr) 236px;align-items:center;gap:8px;padding:8px 16px 12px 4px}.msr-top .msr-scene{padding:0}.msr-side{display:grid;gap:8px}.msr-side .lsn-ctrl{padding:0}.msr-side .msr-grid,.msr-side .msr-grid-hint{width:100%;margin:0}.sev-class{display:flex;flex-wrap:wrap;gap:8px}.sev-class .daq-seg button{padding:4px 10px;font-size:.72rem}@media(max-width:720px){.msr-top{grid-template-columns:1fr}}.daq-chart .mnt-compare{grid-template-columns:repeat(3,1fr);gap:8px 20px;margin:0 16px 14px}@media(max-width:720px){.daq-chart .mnt-compare{grid-template-columns:1fr}}.osc-annot path,.osc-annot circle{stroke:var(--daq-accent-text);stroke-width:1.5}.msr-annot-dot{fill:var(--daq-accent-text)}.mkt{display:grid;gap:10px;font-size:.9rem;line-height:1.5;color:inherit}.mkt-title{font-size:1.05rem;font-weight:700}.mkt-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.mkt-check input{margin-top:3px;width:16px;height:16px;accent-color:#6366f1;flex-shrink:0}.mkt-note{font-size:.8rem;opacity:.7}.mkt-note a{color:#6366f1}.mkt-actions{display:flex;align-items:center;gap:12px;font-size:.8rem}.mkt-btn{padding:8px 16px;border:0;border-radius:8px;font:inherit;font-weight:700;color:#fff;background:#6366f1;cursor:pointer}.mkt-btn:hover{filter:brightness(1.08);background:#6366f1}.mkt-btn:disabled{opacity:.6;cursor:wait}.mkt-dialog{margin:auto;width:min(440px,calc(100vw - 32px));padding:24px;border:1px solid var(--daq-border);border-radius:16px;color:var(--daq-text);background:var(--daq-surface);box-shadow:0 24px 60px #00000059;font-size:.92rem;line-height:1.55}.mkt-dialog::backdrop{background:#0508128c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mkt-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;padding:0;color:var(--daq-muted);background:transparent;border:0;border-radius:8px;cursor:pointer}.mkt-close:hover{color:var(--daq-text);background:var(--daq-surface-2)}.mkt-dialog h2{padding-right:32px;margin-bottom:8px;font-size:1.2rem;font-weight:750;letter-spacing:-.02em}.mkt-dialog p+p{margin-top:8px}.mkt-dialog .mkt-actions{margin-top:18px;justify-content:flex-end}.mkt-dialog .mkt-btn{flex:1}.mkt-error{color:#ef4444;font-size:.82rem}.legal{max-width:860px}.legal-card{padding:24px 28px;display:grid;gap:12px;font-size:.95rem;line-height:1.7;color:var(--daq-muted)}.legal-card h2{font-size:1.1rem;font-weight:750;letter-spacing:-.02em;color:var(--daq-text)}.legal-card b{color:var(--daq-text)}.legal-link-btn{padding:0;border:0;background:none;font:inherit;color:var(--daq-accent);text-decoration:underline;cursor:pointer}.legal-card ul{display:grid;gap:6px;padding-left:20px}.legal-card a,.legal .daq-sub a{color:var(--daq-accent-text)}.legal-table tbody th{font-size:.85rem;letter-spacing:0;text-transform:none;font-weight:700;color:var(--daq-text);white-space:nowrap}.legal-table td:last-child{font-family:inherit;white-space:normal}@media(max-width:720px){.legal-card{padding:20px}}.lsn-reto-seen{margin-left:4px;vertical-align:-1px;color:#10b981}.lsn-spec-pair{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.lsn-spec-pair>div+div{border-left:1px solid var(--daq-border)}@media(max-width:720px){.lsn-spec-pair{grid-template-columns:1fr}.lsn-spec-pair>div+div{border-left:0;border-top:1px solid var(--daq-border)}}.lsn-split--top{align-items:start}.lsn-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;max-width:110ch}.lsn-cols p+p{margin-top:0}.lsn-route ul{list-style:none;margin:0;padding:4px 16px 16px;display:grid;gap:14px}.lsn-route li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;align-items:end}.lsn-route small{display:block;font-family:var(--daq-mono);font-size:.7rem;color:var(--daq-dim)}.lsn-route-name b,.lsn-route-time b{display:block;color:var(--daq-text)}.lsn-route-time{text-align:right}.lsn-route-time b{font-family:var(--daq-mono);font-size:1.1rem;color:var(--daq-accent-text)}.lsn-route-bar{grid-column:1 / -1;grid-row:2;height:8px;background:var(--daq-surface-2);border-radius:4px;overflow:hidden}.lsn-route-bar i{display:block;height:100%;min-width:4px;background:var(--daq-accent);border-radius:4px}@media(max-width:1000px){.lsn-cols{grid-template-columns:1fr;gap:10px}}.qz-list{list-style:none;display:grid;gap:16px;margin:24px 0;padding:0}.qz-q{padding:20px 24px;display:grid;gap:12px}.qz-q fieldset{display:grid;gap:6px;margin:0;padding:0;border:0;min-width:0}.qz-q legend{margin-bottom:8px;font-weight:650;line-height:1.45;text-wrap:pretty}.qz-q label{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;border:1px solid var(--daq-border);cursor:pointer;line-height:1.4}.qz-q fieldset:enabled label:has(input:checked){border-color:var(--daq-accent);background:var(--daq-accent-soft)}.qz-q fieldset:disabled label{cursor:default}.qz-q label.is-right{border-color:#10b981;background:color-mix(in srgb,#10b981 14%,transparent)}.qz-q label.is-wrong{border-color:#ef4444;background:color-mix(in srgb,#ef4444 12%,transparent)}.qz-q input{flex-shrink:0;accent-color:var(--daq-accent)}.qz-q .lsn-quest-answer{font-size:.9rem;line-height:1.5;color:var(--daq-muted);border-top-color:var(--daq-border)}.qz-q .lsn-quest-answer{display:grid;gap:6px}.qz-q .lsn-quest-answer b{color:var(--daq-text)}.qz-see{display:inline-flex;align-items:center;gap:6px;justify-self:start;font-weight:600;color:var(--daq-accent-text);text-decoration:none}.qz-see:hover{text-decoration:underline}.daq-page .qz-submit{justify-self:start}.qz-result{padding:24px;display:grid;justify-items:center;gap:8px;text-align:center}.qz-result h2{font-size:1.5rem;font-weight:750;font-family:var(--daq-mono)}.qz-result.is-pass h2{color:#10b981}.wf-pick canvas{cursor:crosshair;touch-action:manipulation}.ph-heavy{fill:#ef4444}.ph-high{fill:var(--daq-accent)}.ph-beam{stroke:#f59e0b;stroke-width:1.5;stroke-dasharray:3 3}.ph-key-heavy{--c: #ef4444}.ph-key-high{--c: var(--daq-accent)}.ph-machine{display:block;width:100%;height:auto;padding:4px 12px 8px;box-sizing:border-box}.ph-3d{position:relative;height:clamp(320px,38vw,480px);overflow:hidden;border-bottom:1px solid var(--daq-border)}.ph-3d canvas{display:block;touch-action:none;cursor:grab}.ph-3d-num{position:absolute;left:0;top:0;pointer-events:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font:700 12px var(--daq-mono);color:#0b1220;background:#f59e0b;box-shadow:0 1px 4px #00000059}.ph-3d-hint{position:absolute;left:10px;bottom:8px;font-size:.7rem;color:var(--daq-dim);pointer-events:none}.modal-beam{display:block;width:100%;height:auto;max-height:112px;padding:6px 12px 0;box-sizing:border-box}.modal-bar{fill:var(--daq-muted)}.modal-tick{stroke:var(--daq-surface);stroke-width:1.5}.modal-beam .osc-axis.is-on{fill:var(--daq-wave);font-weight:700}.modal-tap{animation:modal-tap .3s ease-in-out}@keyframes modal-tap{0%{transform:translateY(-14px)}45%{transform:translateY(0)}to{transform:translateY(-14px)}}.modal-beam g{transform-box:view-box}.modal-shapes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:4px 16px 10px}.modal-shape{margin:0}.modal-shape svg{display:block;width:100%;height:auto;background:var(--daq-surface-2);border-radius:6px}.modal-shape figcaption{font-size:.72rem;color:var(--daq-muted);text-align:center;margin-top:3px}.modal-true{fill:none;stroke:var(--daq-border-strong);stroke-width:1.5;stroke-dasharray:4 3}.modal-meas{fill:none;stroke:var(--daq-wave);stroke-width:2;stroke-linejoin:round}.modal-dot{fill:var(--daq-wave)}.modal-ref{fill:#f59e0b}@media(max-width:720px){.modal-shapes{grid-template-columns:repeat(2,minmax(0,1fr))}}.ods-3d{height:clamp(360px,42vw,540px)}.ods-hover{position:absolute;left:0;top:0;pointer-events:none;padding:3px 8px;border-radius:6px;white-space:nowrap;font-size:.72rem;color:var(--daq-text);background:var(--daq-surface);border:1px solid var(--daq-border-strong);box-shadow:0 2px 8px #0000004d}.ods-hover[hidden]{display:none}.ods-tag{position:absolute;left:0;top:0;pointer-events:none;padding:1px 6px;border-radius:6px;font:700 11px var(--daq-mono);color:#0b1220;background:#22d3ee;box-shadow:0 1px 4px #00000059}.ph-bubble{fill:var(--daq-surface-2);stroke:var(--daq-border-strong);stroke-width:1.5}.ph-tail{stroke:var(--daq-wave);stroke-width:3.5;stroke-linecap:round}.ph-amp{fill:var(--daq-text);font:600 12px var(--daq-mono)}.ph-deg{fill:var(--daq-dim);font:11px var(--daq-mono)}.ph-num{fill:var(--daq-text);font:700 13px var(--daq-mono)}.ph-row{fill:var(--daq-dim);font:700 12px var(--daq-mono)}.ph-actions{margin:0 16px}.lsn-controls>.ph-hint{margin:0 16px 16px}.lsn-split>.osc-formula{padding:16px;align-self:center}.sdof-damper{fill:none;stroke:var(--daq-muted);stroke-width:2.5;stroke-linejoin:round}.sdof-figure{margin:0}.crit-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:8px;padding:4px 8px 0}.crit-row.is-compact{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.crit-scene{display:block;width:100%;padding:8px 0;box-sizing:border-box}.crit-housing{fill:none;stroke:var(--daq-border-strong);stroke-width:1.5;stroke-dasharray:2 4}.crit-orbit{fill:none;stroke:var(--daq-wave);stroke-width:1.5;stroke-dasharray:4 3}.crit-g{fill:var(--daq-surface);stroke:var(--daq-text);stroke-width:2}.crit-center{stroke:var(--daq-text);stroke-width:1.5}.crit-key-g{--c: var(--daq-text)}.crit-key-orbit{--c: var(--daq-wave)}.lsn-controls>.crit-actions{display:flex;gap:8px;margin:0 16px}@media(max-width:720px){.crit-row,.crit-row.is-compact{grid-template-columns:1fr}}.beam-scene{display:block;width:100%;height:auto;padding:8px 12px 0;box-sizing:border-box}.beam-line{fill:none;stroke:var(--daq-accent);stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.beam-line.is-thin{stroke-width:5}.beam-rest{stroke:var(--daq-border-strong);stroke-width:1.5;stroke-dasharray:5 5}.beam-support{fill:var(--daq-surface-2);stroke:var(--daq-muted);stroke-width:2}.beam-node{fill:var(--daq-surface);stroke:#f87171;stroke-width:2.5}.beam-hit{animation:beam-hit .5s ease-out}@keyframes beam-hit{40%{transform:translateY(-36px)}}.bump-chart{position:relative}.bump-empty{position:absolute;inset:0 0 24px 40px;display:grid;place-items:center;margin:0;color:var(--daq-muted);font-size:.95rem;pointer-events:none}.bump-side{display:grid;gap:14px}.bump-sliders{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bump-row{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:24px;padding:8px 16px 12px}.bump-sketch{display:block;width:100%;height:auto}.bump-strip{display:grid;gap:8px}.bump-strip-row{display:grid;grid-template-columns:60px 1fr;align-items:center;gap:8px}.bump-cells{display:grid;grid-template-columns:repeat(20,1fr);gap:3px}.bump-cells i,.bump-key{display:block;height:16px;border-radius:3px;background:var(--daq-surface-2);border:1px solid var(--daq-border)}.bump-cells i.is-done,.bump-key.is-done{background:var(--daq-border-strong)}.bump-cells i.is-hit{border-color:#f59e0b}.bump-cells i.is-hit.is-done,.bump-key.is-hit{background:#f59e0b;border-color:#f59e0b}.bump-key{display:inline-block;width:12px;height:10px;margin:0 5px -1px 0}.bump-metal-hi{stop-color:#8796a8}.bump-metal-lo{stop-color:#475569}.bump-edge{stroke:#334155;stroke-width:1.5;stroke-linejoin:round}.bump-rib{stroke:#475569;stroke-width:5;stroke-linecap:round}.bump-shield{fill:#64748b;stroke:#334155;stroke-width:1.5}.bump-cap{fill:#94a3b8;stroke:#334155;stroke-width:1.5}.bump-shaft{fill:#cbd5e1;stroke:#334155;stroke-width:1.5}.bump-key{fill:#334155}.bump-bolt{fill:#1e293b}.bump-mount{fill:#1f2937}.bump-plate{fill:var(--daq-border-strong)}.bump-hatch{stroke:var(--daq-border-strong);stroke-width:1.5}.bump-cable{fill:none;stroke:var(--daq-text);stroke-width:1.5;opacity:.55}.bump-handle{stroke:#92400e;stroke-width:5;stroke-linecap:round}.bump-head{fill:#475569;stroke:#1e293b;stroke-width:1.5}.bump-tip.is-hard{fill:#e2e8f0;stroke:#64748b}.bump-tip.is-medium{fill:#ef4444}.bump-tip.is-soft{fill:#111827}.bump-sketch g{transform-box:view-box}.bump-tap{animation:bump-tap .36s ease-in-out}@keyframes bump-tap{45%{transform:translate(var(--dx),var(--dy))}}.bump-rock{transform-origin:130px 140px;animation:bump-rock .4s ease-in-out .14s}@keyframes bump-rock{15%{transform:rotate(-3deg)}45%{transform:rotate(1.8deg)}75%{transform:rotate(-.8deg)}}.bump-bounce{animation:bump-bounce .4s linear .14s}@keyframes bump-bounce{8%{transform:translateY(3.5px)}22%{transform:translateY(-2.6px)}36%{transform:translateY(1.9px)}50%{transform:translateY(-1.3px)}64%{transform:translateY(.8px)}78%{transform:translateY(-.4px)}90%{transform:translateY(.2px)}}.bump-run{transform-origin:130px 140px;animation:bump-run var(--rev) ease-in-out infinite alternate}@keyframes bump-run{0%{transform:rotate(-1deg)}to{transform:rotate(1deg)}}.bump-spin{transform-origin:130px 80px;animation:bump-spin var(--rev) linear infinite}@keyframes bump-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.bump-run,.bump-spin,.bump-rock,.bump-bounce{animation:none}}@media(max-width:720px){.bump-chart{position:relative}.bump-empty{position:absolute;inset:0 0 24px 40px;display:grid;place-items:center;margin:0;color:var(--daq-muted);font-size:.95rem;pointer-events:none}.bump-row{grid-template-columns:1fr}.bump-sketch{max-width:240px;margin:0 auto}}.contact-form{padding:24px 28px;display:grid;gap:18px}.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-field{display:grid;gap:6px}.contact-field>span{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--daq-muted)}.contact-field>span b{color:var(--daq-accent-text)}.contact-field input,.contact-field textarea{width:100%;box-sizing:border-box;padding:11px 14px;font:inherit;font-size:.95rem;color:var(--daq-text);background:var(--daq-surface-2);border:1px solid var(--daq-border-strong);border-radius:10px;resize:vertical;transition:border-color .2s,box-shadow .2s}.contact-field input::placeholder,.contact-field textarea::placeholder{color:var(--daq-dim)}.contact-field input:focus,.contact-field textarea:focus{outline:none;border-color:var(--daq-accent);box-shadow:0 0 0 3px var(--daq-accent-soft)}.contact-field small{justify-self:end;font-size:.72rem;color:var(--daq-dim)}.contact-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}.contact-actions small{flex:1 1 260px;font-size:.78rem;line-height:1.5;color:var(--daq-dim)}.contact-actions small a{color:var(--daq-accent-text)}.contact-error{margin:0;padding:10px 14px;border-radius:10px;font-size:.88rem;color:#f87171;background:#f871711a;border:1px solid rgba(248,113,113,.3)}.daq-page[data-theme=light] .contact-error{color:#b91c1c;background:#dc262612;border-color:#dc262640}.daq-page .contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:190px;padding:13px 26px;font:inherit;font-size:.95rem;font-weight:700;letter-spacing:.01em;color:#fff;cursor:pointer;background:linear-gradient(135deg,#4f46e5,#7c3aed);border:0;border-radius:12px;box-shadow:0 1px #ffffff26 inset,0 8px 20px -6px #4f46e58c;transition:transform .15s,box-shadow .2s,filter .2s}.daq-page .contact-submit:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08);box-shadow:0 1px #ffffff26 inset,0 12px 26px -8px #4f46e5a6}.daq-page .contact-submit:active:not(:disabled){transform:translateY(0)}.daq-page .contact-submit:focus-visible{outline:3px solid var(--daq-accent-soft);outline-offset:2px}.daq-page .contact-submit:disabled{cursor:progress;opacity:.75}.contact-arrow{transition:transform .2s}.contact-submit:hover .contact-arrow{transform:translate(3px)}@media(max-width:640px){.daq-page .contact-submit{width:100%}}.contact-spin{animation:contact-spin 1s linear infinite}@keyframes contact-spin{to{transform:rotate(360deg)}}.contact-done{padding:36px 28px;display:grid;justify-items:center;gap:10px;text-align:center;color:var(--daq-muted)}.contact-done>svg{color:#10b981}.contact-done h2{margin:0;font-size:1.3rem;color:var(--daq-text)}.contact-done p{margin:0 0 8px}@media(max-width:640px){.contact-row{grid-template-columns:1fr}}.ivx-main{flex:none;height:max(100svh,640px);display:flex;flex-direction:column;padding:70px 24px 16px}.ivx-hero{margin-bottom:14px;flex:none}.ivx-hero .daq-sub{margin-top:4px}.ivx-hero .daq-kpi{min-width:0;padding:10px 14px}.ivx-grid{flex:1;min-height:0;display:grid;grid-template-columns:340px minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:14px}.ivx-side,.ivx-views{display:flex;flex-direction:column;gap:14px;min-height:0}.ivx-side{overflow:auto;scrollbar-width:thin}.ivx-speed{grid-template-columns:1fr auto;gap:10px 12px;padding:12px 14px 14px;border-top:0}.ivx-speed .daq-range{grid-column:1 / -1}.ivx-sources .daq-source-main{padding:8px 10px}.ivx-sources .daq-source-opts{padding:0 10px 10px 56px;gap:6px 14px}.ivx-sources .daq-source-level{min-width:0;flex-basis:100%}.ivx-sources .daq-source-level b{min-width:62px;text-align:right}.ivx-hint{flex-basis:100%;margin:0;font-size:.72rem;line-height:1.4;color:var(--daq-dim)}.ivx-card{display:flex;flex-direction:column;min-height:0;overflow:hidden}.ivx-phasor{flex:4}.ivx-fourier{flex:6}.ivx-card .daq-chart-head{padding:9px 14px}.ivx-card .daq-chart-title{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap}.ivx-card .daq-chart-title small{overflow:hidden;text-overflow:ellipsis}.ivx-card .daq-chip-btn{cursor:pointer;font-size:.7rem}.ivx-card .daq-chart-tools{flex-wrap:nowrap;flex-shrink:0}.ivx-canvas{position:relative;flex:1;min-height:0}.ivx-canvas canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.ivx-canvas.is-3d{cursor:grab;touch-action:pan-y}.ivx-canvas.is-3d:active{cursor:grabbing}.ivx-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 14px;border-top:1px solid var(--daq-border)}.ivx-caption{margin:0;font-size:.78rem;line-height:1.45;color:var(--daq-muted);text-wrap:pretty}.ivx-caption b{color:var(--daq-text)}.ivx-drag{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;color:var(--daq-dim);white-space:nowrap}@media(max-height:700px)and (min-width:1101px){.ivx-hint{display:none}}@media(max-width:1100px){.ivx-main{height:auto}.ivx-grid{grid-template-columns:1fr;grid-template-rows:none}.ivx-side{order:2;overflow:visible}.ivx-phasor{flex:none;height:300px}.ivx-fourier{flex:none;height:460px}.ivx-hero{grid-template-columns:1fr}}@media(max-width:720px){.ivx-main{padding:68px 12px 20px}.ivx-hero .daq-kpis{flex-direction:row;flex-wrap:wrap}.ivx-hero .daq-kpi{flex:1 1 140px}.ivx-card .daq-chart-head{flex-wrap:wrap}.ivx-card .daq-chart-tools{flex-wrap:wrap;flex-shrink:1;justify-content:flex-start}.ivx-card .daq-chart-title small{display:none}.ivx-phasor{height:240px}.ivx-fourier{height:400px}.ivx-drag{display:none}}.brg-scene{position:relative;padding-top:48px;border-radius:15px 15px 0 0}.brg-scene canvas{display:block;width:100%}.brg-slow{gap:2px;padding:2px 3px 2px 9px;pointer-events:auto}.brg-slow>span{margin-right:4px;color:var(--daq-muted)}.brg-slow button{padding:2px 7px;font-family:var(--daq-mono);font-size:.68rem;font-weight:700;color:var(--daq-muted);background:transparent;border:0;border-radius:999px;transition:background .2s,color .2s}.brg-slow button:hover{color:var(--daq-text)}.brg-slow button.is-active{color:#fff;background:var(--daq-accent)}.daq-stage-hud .brg-slow+.daq-chip-btn{margin-left:auto}.brg-kpi-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin:4px 0 2px}.brg-kpi-bar span{height:6px;border-radius:3px;background:var(--daq-surface-2);box-shadow:inset 0 0 0 1px var(--daq-border);transition:background .3s}.brg-kpi-bar span.is-on{background:var(--s);box-shadow:0 0 10px -2px var(--s)}.brg-steps{position:relative;display:grid;grid-template-columns:repeat(4,1fr);padding:16px 12px 6px}.brg-steps-track{position:absolute;top:31px;left:calc(12.5% + 12px);right:calc(12.5% + 12px);height:3px;border-radius:2px;background:var(--daq-surface-2)}.brg-steps-track i{position:absolute;inset:0;border-radius:2px;background:linear-gradient(90deg,#22c55e,#eab308 33%,#f97316 66%,#ef4444);clip-path:inset(0 calc(100% - var(--p)) 0 0);transition:clip-path .4s cubic-bezier(.3,1,.5,1)}.brg-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;padding:0 4px 6px;background:transparent;border:0;color:var(--daq-muted)}.brg-step-dot{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-family:var(--daq-mono);font-size:.85rem;font-weight:800;color:var(--daq-muted);background:var(--daq-surface-2);border:2px solid var(--daq-border-strong);transition:all .25s}.brg-steps .brg-step,.brg-steps .brg-step:hover{background:transparent;border:0;border-radius:12px}.brg-steps .brg-step:hover .brg-step-label{color:var(--daq-text)}.brg-step:hover .brg-step-dot{border-color:var(--s);color:var(--s);background:color-mix(in srgb,var(--s) 10%,var(--daq-surface))}.brg-step.is-past .brg-step-dot{color:var(--s);border-color:color-mix(in srgb,var(--s) 60%,transparent);background:color-mix(in srgb,var(--s) 12%,var(--daq-surface))}.brg-step.is-active .brg-step-dot{color:#fff;background:var(--s);border-color:var(--s);box-shadow:0 0 0 5px color-mix(in srgb,var(--s) 22%,transparent),0 6px 18px -4px var(--s);transform:scale(1.08)}.brg-step-label{font-size:.75rem;font-weight:600}.brg-step.is-active .brg-step-label{color:var(--daq-text)}.brg-stage-body{padding:4px 16px 14px;display:grid;gap:8px;animation:daq-reveal .25s ease-out}.brg-stage-desc{font-size:.85rem;line-height:1.5;color:var(--daq-muted);text-wrap:pretty}.brg-stage-look{display:flex;gap:8px;align-items:flex-start;padding:9px 12px;font-size:.8rem;line-height:1.45;color:var(--daq-muted);background:color-mix(in srgb,var(--c) 10%,transparent);border:1px solid color-mix(in srgb,var(--c) 25%,transparent);border-radius:10px}.brg-stage-look svg{flex-shrink:0;margin-top:2px;color:var(--c)}.brg-stage-look b{color:var(--daq-text)}.brg-muted{margin-left:4px;font-family:var(--daq-mono);font-size:.7rem;font-weight:700;color:var(--c, var(--daq-dim))}.brg-unbalance{margin:6px 6px 0;padding:10px 10px 12px;display:grid;gap:8px;border-radius:10px;background:var(--daq-surface-2)}.brg-unbalance-head{display:flex;align-items:center;gap:10px}.brg-unbalance-dot{width:10px;height:10px;margin:0 12px 0 10px;border-radius:50%;background:#f43f5e;box-shadow:0 0 10px #f43f5e}.brg-unbalance .daq-source-level{padding-left:42px}.brg-defect-info{padding:0 12px 12px 56px;display:grid;gap:6px;animation:daq-reveal .25s ease-out}.brg-defect-info p{font-size:.76rem;line-height:1.5;color:var(--daq-muted);text-wrap:pretty}.brg-formula{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-family:var(--daq-mono);font-size:.72rem}.brg-formula code{color:var(--c);font-weight:700}.brg-formula span{color:var(--daq-dim)}.brg-geo{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 16px;padding:14px 16px 12px}.brg-geo-step{justify-content:space-between}.brg-geo-step>span{flex:1}.brg-geo-step b{min-width:6ch}.brg-orders{margin:0 16px 16px}.brg-orders .daq-stat dd{font-size:.88rem}.brg-hz{font-size:.68rem;font-weight:600;color:var(--daq-dim)}.brg-freq{position:relative;cursor:help;outline:none;transition:background .2s}.brg-freq:first-child{border-radius:12px 0 0 12px}.brg-freq:last-child{border-radius:0 12px 12px 0}.brg-freq:hover,.brg-freq:focus{background:color-mix(in srgb,var(--c) 10%,transparent)}.brg-freq-tip{position:absolute;z-index:5;bottom:calc(100% + 8px);left:0;width:250px;padding:10px 12px;display:grid;gap:4px;background:var(--daq-tip-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--daq-border-strong);border-radius:12px;box-shadow:0 18px 40px -16px #0000008c;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .15s,transform .15s}.brg-freq.is-right .brg-freq-tip{left:auto;right:0}.brg-freq:hover .brg-freq-tip,.brg-freq:focus .brg-freq-tip{opacity:1;transform:none}.brg-freq-tip b{font-size:.8rem}.brg-freq-tip p{font-size:.74rem;line-height:1.4;color:var(--daq-muted);white-space:normal}.brg-freq-tip code{font-family:var(--daq-mono);font-size:.72rem;color:var(--daq-muted);white-space:normal}.brg-freq-tip code:first-of-type{margin-top:2px;color:var(--daq-text)}.brg-freq-tip .is-calc{color:var(--daq-text)}.brg-freq-tip .is-result{font-weight:700;color:var(--c)}.brg-geo-note{display:flex;flex-wrap:wrap;gap:4px 14px;margin:-6px 16px 14px;font-size:.7rem;color:var(--daq-dim)}.brg-geo-note code{font-family:var(--daq-mono);color:var(--daq-muted)}.brg-geo-note span{flex-basis:100%}.brg-charts .daq-chart{transition:opacity .2s}.brg-charts.is-pending .daq-chart{opacity:.75}.brg-view-hint{margin:10px 16px 0;font-size:.78rem;line-height:1.45;color:var(--daq-muted);text-wrap:pretty}.brg-unbalance-note{padding-left:42px;font-size:.72rem;color:var(--daq-dim)}.brg-unbalance-note b{font-family:var(--daq-mono);color:var(--daq-muted)}.daq-source-level b.brg-unit-val{min-width:7.5ch}.brg-readout{display:flex;flex-wrap:wrap;gap:6px 22px;margin:2px 16px 0;padding:8px 12px;font-family:var(--daq-mono);font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums;background:var(--daq-surface-2);border:1px solid var(--daq-border);border-radius:10px}.brg-readout em{margin-right:7px;font-style:normal;font-family:Inter,system-ui,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--daq-dim)}.brg-readout span:last-child{margin-left:auto;font-weight:600;color:var(--daq-muted)}.brg-seg-sm{padding:2px;border-radius:8px}.brg-seg-sm button{padding:3px 9px;font-family:inherit;font-size:.72rem;border-radius:6px}.brg-legend{display:inline-flex;flex-wrap:wrap;gap:6px 12px}.brg-legend>span,.brg-legend-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--daq-mono);font-size:.7rem}.brg-legend i{width:8px;height:8px;border-radius:2px;background:var(--c)}.brg-legend-btn{padding:2px 8px;color:var(--daq-text);background:color-mix(in srgb,var(--c) 10%,transparent);border:1px solid color-mix(in srgb,var(--c) 30%,transparent);border-radius:999px;transition:border-color .2s,background .2s}.brg-legend-btn:hover{border-color:var(--c);background:color-mix(in srgb,var(--c) 18%,transparent)}@media(max-width:720px){.brg-geo{grid-template-columns:1fr}.brg-step-label{font-size:.68rem}.brg-defect-info{padding-left:12px}.brg-unbalance .daq-source-level{padding-left:0}}.bal-page{--bg: #070b14;--surface: #0d1422;--surface-2: #131c2e;--border: rgba(148, 163, 184, .12);--border-strong: rgba(148, 163, 184, .26);--text: #e5ecf6;--muted: #94a3b8;--dim: #6b7a92;--accent: #2dd4bf;--ok: #34d399;--warn: #fbbf24;--bad: #f87171;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;min-height:100vh;background:var(--bg);color:var(--text)}.bal-page button{font:inherit;cursor:pointer}.bal-page button:disabled{cursor:not-allowed}.bal-page :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bal-muted{color:var(--dim);font-size:.82rem}.bal-nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;padding:12px 24px;background:#070b14d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.bal-nav-back{display:inline-flex;align-items:center;gap:6px;color:var(--muted);text-decoration:none;font-size:.85rem}.bal-nav-back:hover{color:var(--text)}.bal-nav-sep{width:1px;height:18px;background:var(--border-strong)}.bal-nav-title{font-weight:700;font-size:.9rem}.bal-main{max-width:1440px;margin:0 auto;padding:24px}.bal-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:16px}.bal-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.bal-hero h1{font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:800;letter-spacing:-.02em;line-height:1.15;text-wrap:balance}.bal-hero h1 span{color:var(--warn)}.bal-sub{margin-top:8px;max-width:68ch;color:var(--muted);font-size:.92rem;line-height:1.55}.bal-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.bal-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;font-size:.82rem;font-weight:600;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:10px}.bal-btn:hover:not(:disabled){border-color:var(--accent)}.bal-btn.is-primary{background:#0f766e;border-color:#14b8a6;color:#fff}.bal-btn:disabled{opacity:.45}.bal-seg{display:inline-flex;padding:3px;gap:3px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:10px}.bal-seg button{height:28px;padding:0 12px;font-size:.78rem;font-weight:600;color:var(--muted);background:transparent;border:0;border-radius:7px}.bal-seg button.is-active{color:var(--text);background:color-mix(in srgb,var(--accent) 22%,var(--surface))}.bal-icon-btn{display:grid;place-items:center;width:30px;height:30px;padding:0;border-radius:8px;color:var(--muted);background:transparent;border:1px solid var(--border)}.bal-guide{display:flex;gap:12px;align-items:baseline;padding:12px 16px;margin-bottom:16px;min-height:calc(2.6rem + 24px);align-items:center;background:color-mix(in srgb,var(--accent) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:12px;font-size:.9rem;line-height:1.45}.bal-guide b{flex-shrink:0;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.bal-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;align-items:start}.bal-col{display:flex;flex-direction:column;gap:16px;min-width:0}@media(max-width:1100px){.bal-grid{grid-template-columns:1fr}}.bal-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden}.bal-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--border)}.bal-card-head h2{font-size:.85rem;font-weight:700}.bal-card-foot{min-height:calc(3 * .78rem * 1.5 + 20px);padding:10px 14px;border-top:1px solid var(--border);font-size:.78rem;color:var(--dim);line-height:1.5}.bal-pill{font-family:var(--mono);font-size:.72rem;color:var(--muted);padding:3px 8px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px}.bal-pill.is-bad{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 40%,transparent)}.bal-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.bal-tools button{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 10px;font-size:.75rem;font-weight:600;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.bal-tools button.is-active{color:var(--text);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface-2))}.bal-rotor{display:block;width:100%;max-height:560px;background:radial-gradient(circle at 50% 50%,#111a2c,#0a101c 70%);-webkit-user-select:none;user-select:none}.bal-rotor.tool-laser,.bal-rotor.tool-tape,.bal-rotor.tool-mass,.bal-rotor.tool-remove{cursor:crosshair}.bal-disc{fill:#1c2638;stroke:#33435e;stroke-width:2}.bal-blade{fill:#24314a;stroke:#33435e}.bal-zero{fill:var(--warn)}.bal-zero-hint{fill:var(--warn);font:600 13px var(--mono);text-anchor:middle}.bal-hole{fill:#070b14;stroke:#4b5d7a;stroke-width:1.5}.bal-rim{fill:none;stroke:#3b4d6b;stroke-width:18}.bal-tick{stroke:#8798b3;stroke-width:1.2}.bal-hole-label{fill:#8798b3;font:600 11px var(--mono);text-anchor:middle;dominant-baseline:middle}.bal-mass rect{fill:#f59e0b;stroke:#fde68a;stroke-width:1.5}.bal-mass text{fill:#fde68a;font:700 12px var(--mono);text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:#0a101c;stroke-width:3px}.bal-hub{fill:#64748b;stroke:#94a3b8;stroke-width:2}.bal-tape{fill:#f8fafc;stroke:#cbd5e1}.bal-dir{fill:none;stroke:#64748b;stroke-width:2}.bal-dir-label{fill:#64748b;font:600 11px var(--mono)}.bal-sensor-mark circle{fill:#38bdf8}.bal-sensor-mark text{fill:#7dd3fc;font:600 11px var(--mono);text-anchor:middle}.bal-beam{stroke:#ef4444;stroke-width:1.5;filter:drop-shadow(0 0 3px #ef4444)}.bal-beam.is-bad{stroke-dasharray:4 5;opacity:.6}.bal-laser{fill:#334155;stroke:#ef4444;stroke-width:1.5}.bal-laser-label{fill:#fca5a5;font:600 11px var(--mono);text-anchor:middle}.bal-range circle{fill:none;stroke:#ef4444;stroke-dasharray:3 6;opacity:.45}.bal-range text{fill:#fca5a5;font:600 10px var(--mono);text-anchor:middle;opacity:.8}.bal-guard circle{stroke:#94a3b8;stroke-width:2;opacity:.9}.bal-guard text{fill:#cbd5e1;font:600 12px var(--mono);text-anchor:middle}.bal-stage{position:relative}.bal-inset{position:absolute;top:10px;right:10px;width:230px;z-index:2;background:#0a101ce0;border:1px solid var(--border-strong);border-radius:12px;overflow:hidden;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:width .2s}.bal-inset.is-big{width:min(420px,calc(100% - 20px))}.bal-inset-head{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 4px 4px 10px;font-size:.66rem;color:var(--dim)}.bal-inset-head .bal-icon-btn{width:26px;height:26px;border-radius:7px}.bal-inset-head .bal-icon-btn:hover{color:var(--text);border-color:var(--accent);background:var(--surface-2)}.bal-inset .bal-rotor{background:transparent}.bal-3d{position:relative;height:clamp(440px,42vw,600px);background:#0a101c;overflow:hidden}.bal-3d canvas{display:block;touch-action:none}.bal-3d-tip{position:absolute;transform:translate(12px,-50%);pointer-events:none;white-space:nowrap;padding:4px 8px;font-size:.72rem;font-weight:600;color:var(--text);background:#090e1aeb;border:1px solid var(--border-strong);border-radius:6px}.bal-3d-tip.is-act{border-color:var(--accent);color:#f8fafc}.bal-3d-hint{position:absolute;left:10px;bottom:8px;font-size:.7rem;color:var(--dim);pointer-events:none}.bal-state{font:700 .7rem var(--mono);letter-spacing:.06em;padding:3px 8px;border-radius:6px;border:1px solid var(--border-strong);color:var(--muted)}.bal-state.is-run{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,transparent)}.bal-state.is-safe{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.bal-rpm{display:flex;align-items:baseline;gap:8px}.bal-rpm small{font-size:.7rem;color:var(--dim);text-transform:uppercase;letter-spacing:.08em}.bal-rpm b{font:800 1.6rem var(--mono);font-variant-numeric:tabular-nums}.bal-explain{display:flex;gap:8px;align-items:flex-start;font-size:.8rem;line-height:1.5;color:var(--muted)}.bal-explain svg{flex-shrink:0;margin-top:2px;color:var(--warn)}.bal-explain b{color:var(--text)}.bal-explain.is-plain{flex-direction:column;gap:4px}.bal-explain.is-plain svg{display:inline;vertical-align:-2px;margin:0}.bal-explain ul{padding-left:18px;display:grid;gap:2px}.bal-cta{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;font-weight:800!important;color:#fff;border-radius:12px;border:1px solid rgba(255,255,255,.15)}.bal-cta.is-lock{background:#b91c1c}.bal-cta.is-start{background:#15803d}.bal-cta:hover{filter:brightness(1.1)}.bal-seq{display:grid;gap:8px}.bal-seq-count{font:600 .68rem var(--mono);color:var(--dim);text-transform:uppercase;letter-spacing:.06em}.bal-seq-step{display:flex;gap:10px;align-items:flex-start;min-height:64px;color:var(--text);animation:bal-step-in .25s ease}.bal-seq-step svg{flex-shrink:0;margin-top:2px;color:var(--warn)}.bal-seq-step div{display:grid;gap:2px}.bal-seq-step b{font-size:.9rem}.bal-seq-step small{font-size:.74rem;line-height:1.4;color:var(--muted)}.bal-seq-bar{height:3px;background:#1f2937;border-radius:2px;overflow:hidden}.bal-seq-bar span{display:block;height:100%;background:var(--ok);transition:width .3s}@keyframes bal-step-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.bal-spin{animation:bal-spin 1s linear infinite;color:var(--warn)}@keyframes bal-spin{to{transform:rotate(360deg)}}.bal-device{position:relative;padding-top:12px}.bal-ports{position:absolute;top:0;left:0;right:0;height:12px;display:flex;justify-content:center;gap:40px;pointer-events:none;z-index:1}.bal-port{position:relative;align-self:flex-end;width:18px;height:7px;border-radius:3px 3px 0 0;background:linear-gradient(90deg,#6b7280,#e5e7eb 45%,#6b7280)}.bal-port.is-usb{width:14px;height:4px;border-radius:1px 1px 0 0;background:#111827;box-shadow:inset 0 0 0 1px #4b5563}.bal-port b{position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);font:700 .45rem var(--mono);letter-spacing:.08em;color:#6b7686;white-space:nowrap}.bal-port.is-on:before{content:"";position:absolute;bottom:100%;left:3px;right:3px;height:12px;border-radius:2px 2px 0 0;background:linear-gradient(90deg,#111827,#4b5563 45%,#111827);-webkit-mask:linear-gradient(transparent,#000 60%);mask:linear-gradient(transparent,#000 60%)}.bal-port.is-on.is-tacho:before{background:linear-gradient(90deg,#7c2d12,#f97316 45%,#7c2d12)}.bal-case{position:relative;padding:16px;background:linear-gradient(180deg,#2e3644,#222935 55%,#1a1f28);border:1px solid #3c4553;border-radius:30px 30px 38px 38px;box-shadow:inset 0 1px #ffffff14,inset 0 -10px 24px #00000059,0 26px 50px -26px #000000f2}.bal-bump{position:absolute;width:54px;height:54px;border:8px solid #0f4c48;pointer-events:none}.bal-bump.is-tl{top:-2px;left:-2px;border-right:none;border-bottom:none;border-radius:30px 0 0}.bal-bump.is-tr{top:-2px;right:-2px;border-left:none;border-bottom:none;border-radius:0 30px 0 0}.bal-bump.is-bl{bottom:-2px;left:-2px;border-right:none;border-top:none;border-radius:0 0 0 38px}.bal-bump.is-br{bottom:-2px;right:-2px;border-left:none;border-top:none;border-radius:0 0 38px}.bal-device-top{display:flex;justify-content:space-between;align-items:center;padding:0 10px 10px}.bal-brand{display:grid;font:900 .9rem var(--mono);letter-spacing:.18em;color:#e2e8f0}.bal-brand small{font:600 .55rem var(--mono);letter-spacing:.08em;color:#7b8594;text-transform:uppercase}.bal-leds{display:flex;gap:10px}.bal-leds>span{display:grid;justify-items:center;gap:3px;font:700 .5rem var(--mono);color:#7b8594}.bal-led{width:7px;height:7px;border-radius:50%;background:#2a313b;box-shadow:inset 0 1px 1px #0009}.bal-led.is-on{background:var(--ok);box-shadow:0 0 8px var(--ok)}.bal-led.is-busy{background:var(--warn);box-shadow:0 0 8px var(--warn)}.bal-bezel{padding:9px;background:#0a0c10;border-radius:14px;box-shadow:inset 0 2px 8px #000000e6,0 1px #ffffff12}.bal-screen{position:relative;height:496px;display:flex;flex-direction:column;overflow:hidden;background:#0b1424;border-radius:4px;color:#dbe4f0;font-family:var(--mono);font-size:.78rem}.bal-screen:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.07),transparent 38%)}.bal-status-bar{display:flex;justify-content:space-between;align-items:center;padding:3px 8px;background:#020617;font-size:.62rem;color:#8a96a8}.bal-screen-head{padding:4px 8px;background:linear-gradient(180deg,#0f766e,#115e59);color:#f0fdfa;font-weight:800;letter-spacing:.06em}.bal-screen-body{flex:1;min-height:0;overflow-y:auto;padding:8px 10px;display:flex;flex-direction:column;gap:8px}.bal-screen-icons{display:flex;align-items:center;gap:6px;color:#475569}.bal-screen-icons .is-ok{color:#5eead4}.bal-msgline{height:calc(2.6em + 6px);padding:3px 8px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.64rem;line-height:1.3;color:#9fb0c6;background:#0f1a2c;border-top:1px solid rgba(148,163,184,.15)}.bal-msgline.is-ok{color:#6ee7b7}.bal-msgline.is-warn{color:#fcd34d}.bal-msgline.is-danger{color:#fecaca;background:#3b1219}.bal-violations{color:var(--bad);font-size:.62rem}.bal-screen .bal-log{height:auto;display:flex;flex-direction:column;gap:6px;padding:8px 10px;font-size:.7rem}.bal-softkeys{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:3px;background:#020617}.bal-softkeys span{min-height:20px;display:grid;place-items:center;font:800 .56rem var(--mono);color:#f8fafc;background:#1e3a5f;border-radius:3px;text-align:center;line-height:1.1}.bal-softkeys span.is-off{color:#4b5b70;background:#101b2c}.bal-softkeys span:empty{background:transparent}.bal-checks{list-style:none;display:grid;gap:5px}.bal-checks li:before{content:"○ ";color:#475569}.bal-checks li.is-ok:before{content:"✓ ";color:#5eead4}.bal-checks li.is-warn:before{content:"! ";color:var(--warn)}.bal-live{display:grid;gap:4px}.bal-live-row{display:flex;align-items:baseline;gap:6px}.bal-live-row small{color:#7c8ba1;font-size:.7rem}.bal-live-row b{font-size:1.5rem;font-weight:800;color:#f8fafc;font-variant-numeric:tabular-nums}.bal-live-row .bal-phase{margin-left:auto;color:#c4b5fd}.bal-status{font-size:.7rem;font-weight:800;letter-spacing:.06em;color:var(--warn)}.bal-status.is-ok{color:#5eead4}.bal-progress{height:4px;background:#94a3b81f;border-radius:2px}.bal-progress span{display:block;height:100%;background:#5eead4;border-radius:2px;transition:width .25s linear}.bal-stored{display:grid;gap:2px;font-size:.74rem;font-weight:700}.bal-form{display:grid;gap:8px}.bal-form label{display:flex;justify-content:space-between;align-items:center;gap:8px}.bal-form input{width:96px;height:30px;padding:0 8px;font:700 1rem var(--mono);color:#f8fafc;background:#020617;border:1px solid #334155;border-radius:6px;text-align:right}.bal-note{font-size:.7rem;color:#8a9bb3;line-height:1.45}.bal-warn{display:flex;gap:6px;align-items:flex-start;font-size:.72rem;color:var(--warn);line-height:1.4}.bal-okmsg{display:flex;gap:6px;align-items:center;font-weight:800;color:#5eead4}.bal-result{display:grid;gap:6px}.bal-kv{display:flex;justify-content:space-between;gap:8px;font-size:.72rem}.bal-kv span{color:#7c8ba1}.bal-kv.is-warn b{color:var(--warn)}.bal-big{padding:8px;border:1px solid rgba(94,234,212,.35);border-radius:6px;display:grid;gap:2px}.bal-big small{font-size:.66rem;color:#7c8ba1}.bal-big b{font-size:1.35rem;color:#f8fafc}.bal-big.is-warn{border-color:#fbbf2466}.bal-split{display:grid;gap:2px;font-size:.74rem}.bal-split div{display:flex;justify-content:space-between}.bal-split span{color:#7c8ba1}.bal-polar{width:170px;align-self:center;margin-top:auto}.bal-polar circle,.bal-polar>line{fill:none;stroke:#94a3b824}.bal-polar text{fill:#64748b;font-size:7px;text-anchor:middle}.bal-polar .bal-polar-scale{text-anchor:start}.bal-polar g line{stroke:currentColor;stroke-width:2}.bal-polar g circle{fill:currentColor;stroke:none}.bal-polar g.is-live{color:#e0f2fe;opacity:.55}.bal-polar g.is-live line{stroke-width:1;stroke-dasharray:2 2}.bal-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin:10px 9px 0}.bal-keys button{justify-self:center;width:72%;height:26px;padding:0;font:700 .55rem var(--mono);color:#9aa4b1;background:linear-gradient(180deg,#4b5360,#2d333c);border:1px solid #5b6470;border-radius:9px/12px;box-shadow:0 3px #0c0f13,inset 0 1px #ffffff24}.bal-keys button:not(:disabled){cursor:pointer}.bal-keys button:hover:not(:disabled){color:#e2e8f0}.bal-keys button:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #0c0f13}.bal-keys button:disabled{cursor:default}.bal-pad{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:12px;padding:0 10px;pointer-events:none}.bal-grille{justify-self:start;width:46px;height:22px;background:repeating-linear-gradient(90deg,#0c0f13 0 3px,transparent 3px 6px);border-radius:4px;opacity:.8}.bal-dpad{position:relative;width:66px;height:66px;border-radius:50%;background:linear-gradient(180deg,#3f4752,#262c34);border:1px solid #535c68;box-shadow:0 3px #0c0f13}.bal-dpad i{position:absolute;width:0;height:0;border:5px solid transparent}.bal-dpad i:nth-child(1){top:5px;left:28px;border-bottom-color:#8b95a3}.bal-dpad i:nth-child(2){bottom:5px;left:28px;border-top-color:#8b95a3}.bal-dpad i:nth-child(3){left:5px;top:28px;border-right-color:#8b95a3}.bal-dpad i:nth-child(4){right:5px;top:28px;border-left-color:#8b95a3}.bal-dpad b{position:absolute;inset:18px;display:grid;place-items:center;border-radius:50%;font:800 .55rem var(--mono);color:#cbd5e1;background:linear-gradient(180deg,#535c69,#343b45);border:1px solid #636c78}.bal-power{justify-self:end;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:.8rem;color:var(--ok);background:linear-gradient(180deg,#3f4752,#262c34);border:1px solid #535c68;box-shadow:0 2px #0c0f13}.bal-log{list-style:none;line-height:1.45}.bal-log li{padding-left:10px;border-left:2px solid var(--border-strong);color:var(--muted)}.bal-log li.is-ok{border-color:var(--ok)}.bal-log li.is-warn{border-color:var(--warn);color:#fde68a}.bal-log li.is-danger{border-color:var(--bad);color:#fecaca;background:#ef444414;padding:4px 8px 4px 10px;border-radius:0 6px 6px 0}.bal-overlay{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:16px;background:#02060ecc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.bal-modal{width:min(680px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-strong);border-radius:16px;color:var(--text)}.bal-modal.is-warn{border-color:color-mix(in srgb,var(--warn) 55%,transparent)}.bal-modal header,.bal-modal footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px}.bal-modal header{border-bottom:1px solid var(--border)}.bal-modal footer{border-top:1px solid var(--border);flex-wrap:wrap}.bal-modal h2{display:flex;align-items:center;gap:8px;font-size:1rem}.bal-modal.is-warn h2 svg{color:var(--warn)}.bal-modal-body{padding:16px;overflow-y:auto;display:grid;gap:12px;font-size:.88rem;line-height:1.55}.bal-modal-body h3{font-size:.85rem;margin-top:4px}.bal-modal-body ul{padding-left:18px}.bal-rules{display:grid;gap:8px;padding-left:20px}.bal-rules b{color:var(--warn)}.bal-check{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.bal-check input{width:16px;height:16px;accent-color:#14b8a6}.bal-table{width:100%;border-collapse:collapse;font-size:.8rem}.bal-table th,.bal-table td{padding:6px 8px;text-align:left;border-bottom:1px solid var(--border)}.bal-table th{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--dim)}.bal-table td:nth-child(n+3){font-family:var(--mono);font-variant-numeric:tabular-nums}.bal-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bal-report-grid div{display:grid;gap:2px;padding:10px;background:var(--surface-2);border-radius:10px}.bal-report-grid small{font-size:.7rem;color:var(--dim)}.bal-report-grid b{font-family:var(--mono)}.bal-report-grid .is-zone{color:var(--c)}.bal-good{color:var(--ok)}.bal-bad{color:var(--bad)}.bal-checks .bal-ref{display:grid;gap:5px}.bal-ref div{display:flex;gap:4px}.bal-ref button{flex:1;padding:3px 0;font:600 .68rem var(--mono);color:#9fb0c6;background:#020617;border:1px solid #334155;border-radius:5px;cursor:pointer}.bal-ref button.is-on{color:#020617;background:#5eead4;border-color:#5eead4}.bal-checks .bal-ref:before{content:none}.bal-ref small{font-size:.68rem;color:#8a9bb3}.bal-safety{position:absolute;top:10px;left:10px;z-index:2;width:270px;background:#0a101ce6;border:1px solid var(--border-strong);border-radius:12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:10px 12px;display:grid;gap:8px}.bal-safety-head{display:flex;align-items:center;justify-content:space-between}.bal-safety .bal-rpm b{font-size:1.3rem}.bal-safety-body{height:136px;display:flex;flex-direction:column;justify-content:space-between;gap:8px}.bal-safety-body>.bal-seq{flex:1;align-content:space-between}.bal-safety .bal-explain{font-size:.74rem;line-height:1.4}.bal-safety .bal-explain.is-plain ul{padding-left:16px;gap:0;font-size:.7rem;line-height:1.35}.bal-safety .bal-cta{height:40px;font-size:.82rem}.bal-safety .bal-seq-step{min-height:0}.bal-mass-form{display:grid;gap:10px}.bal-mass-form label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:600}.bal-mass-form input{width:120px;height:38px;padding:0 10px;font:700 1.1rem var(--mono);text-align:right;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:8px}.vw{flex:1;min-height:0;display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px;width:100%;max-width:1560px;margin:0 auto;padding:16px 24px}.vw-side{display:flex;flex-direction:column;min-height:0}.vw-tree,.vw-tree ul{list-style:none;margin:0;padding:0}.vw-tree{flex:1;min-height:0;overflow-y:auto;padding:8px}.daq-page .vw-node{width:100%;display:flex;align-items:center;gap:7px;padding:6px 8px 6px calc(8px + var(--d) * 14px);font-size:.82rem;font-weight:600;color:var(--daq-text);text-align:left;background:transparent;border:0;border-radius:8px;transition:background .15s}.daq-page .vw-node:hover{background:var(--daq-surface-2)}.daq-page .vw-node.is-active{background:var(--daq-accent-soft);color:var(--daq-accent-text)}.vw-node.is-point{font-family:var(--daq-mono);font-size:.78rem;font-weight:500}.vw-node-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vw-node em{font-style:normal;font-family:var(--daq-mono);font-size:.72rem;color:var(--daq-dim);font-variant-numeric:tabular-nums}.vw-caret{flex-shrink:0;color:var(--daq-dim);transition:transform .15s}.vw-caret.is-open{transform:rotate(90deg)}.vw-zone{display:inline-block;flex-shrink:0;width:9px;height:9px;border-radius:50%;background:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 20%,transparent)}.vw-side-note{margin:0;padding:10px 16px 14px;font-size:.72rem;line-height:1.45;color:var(--daq-dim);border-top:1px solid var(--daq-border)}.vw-content{display:flex;flex-direction:column;gap:12px;min-height:0;min-width:0}.vw-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.vw-bar-title{display:flex;align-items:center;gap:10px;flex:1 1 220px;min-width:0}.vw-bar-title b{display:block;font-size:.95rem}.vw-bar-title small{display:block;font-size:.75rem;color:var(--daq-muted)}.daq-seg button:disabled{opacity:.35;cursor:not-allowed}.vw-routes{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.75rem;color:var(--daq-dim)}.vw-routes span{margin-right:4px;font-weight:600}.daq-page .vw-routes button{padding:4px 10px;font-family:var(--daq-mono);font-size:.72rem;color:var(--daq-muted);background:var(--daq-surface);border:1px solid var(--daq-border);border-radius:999px}.daq-page .vw-routes button:hover{color:var(--daq-text);border-color:var(--daq-border-strong)}.daq-page .vw-routes button.is-active{color:var(--daq-accent-text);background:var(--daq-accent-soft);border-color:var(--daq-accent)}.vw-chart{flex:1;min-height:0;display:flex;flex-direction:column}.vw-plot{flex:1;min-height:220px;padding:4px}.vw-plot canvas{position:absolute;inset:4px;width:calc(100% - 8px)}.vw-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--daq-border)}.vw-stat{display:grid;gap:2px;padding:8px 14px;border-left:1px solid var(--daq-border)}.vw-stat:first-child{border-left:0}.vw-stat span{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--daq-dim)}.vw-stat b{font-family:var(--daq-mono);font-size:.9rem;font-variant-numeric:tabular-nums}.vw-stat small{font-family:var(--daq-mono);font-size:.7rem;color:var(--daq-muted)}.vw-empty{display:flex;align-items:center;justify-content:center;gap:10px;padding:48px 24px;color:var(--daq-muted);font-size:.85rem;text-align:center}.vw-spin{animation:vw-spin .9s linear infinite}@keyframes vw-spin{to{transform:rotate(360deg)}}.vw-overview{display:flex;flex-direction:column;min-height:0}.vw-table-wrap{flex:1;min-height:0;overflow:auto}.vw-table{width:100%;border-collapse:collapse;font-size:.82rem}.vw-table th,.vw-table td{padding:10px 16px;text-align:left;border-bottom:1px solid var(--daq-border);white-space:nowrap}.vw-table th{position:sticky;top:0;z-index:1;background:var(--daq-surface);font-size:.72rem;color:var(--daq-muted)}.vw-table th small,.vw-table td small{display:block;font-weight:500;font-size:.7rem;color:var(--daq-dim)}.vw-table td b{font-family:var(--daq-mono)}.vw-table tbody tr{cursor:pointer;transition:background .15s}.vw-table tbody tr:hover{background:var(--daq-surface-2)}.vw-table td .vw-zone{margin-right:9px}.vw-num{font-family:var(--daq-mono);font-variant-numeric:tabular-nums}.vw-table td.is-empty{color:var(--daq-dim)}.vw-delta{display:inline-flex;align-items:center;gap:2px;margin-left:8px;font-family:var(--daq-mono);font-size:.7rem}.vw-delta.is-up{color:#f59e0b}.vw-delta.is-down{color:var(--daq-spec)}.vw-legend{justify-content:flex-start}.vw-legend span{display:inline-flex;align-items:center;gap:6px}@media(max-width:600px){.vw-table td small{display:none}.vw-table th,.vw-table td{padding:10px}}@media(max-width:900px){.daq-page.is-paged:has(.vw){height:auto;overflow:visible}.vw{grid-template-columns:1fr;padding:12px}.vw-tree{max-height:220px}.vw-plot{min-height:300px}.vw-chart .daq-chart-head,.vw-overview .daq-chart-head{flex-wrap:wrap}.vw-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.vw-stat:nth-child(4){border-left:0}.vw-stat:nth-child(n+4){border-top:1px solid var(--daq-border)}}
