:root{--ink:#0b0e14;--body-text:#4a5262;--muted:#7c8ba8;--faint:#9aa2b4;--blue:#1d4ed8;--blue-deep:#0b2a7a;--blue-soft:#dbe6ff;--blue-tint:#e6eefb;--green:#0a9e5c;--amber:#e07b12;--force:#e0563f;--velocity:#4c8fe0;--background:#f7f9fc;--foreground:var(--ink);--panel-bg:#fff;--grid:#0b0e141a;--hairline:#dfe4ee;--card-line:#e4e9f4;--glass-bg:#fff9;--glass-line:#fffffff2;--glass-shadow:0 24px 50px #3c5ab41f;--glass-radius:28px;--font-technical:var(--font-plex-mono), var(--font-plex-sans-kr), sans-serif;--font-display:var(--font-montserrat), var(--font-plex-sans-kr), sans-serif;--font-display-xl:var(--font-anton), var(--font-montserrat), sans-serif}html{scroll-behavior:smooth;height:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background-color:var(--background);background-image:radial-gradient(circle, var(--grid) 1px, transparent 1px);font-family:var(--font-plex-sans-kr), -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-size:26px 26px;flex-direction:column;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}.top-nav{border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:50;background:#ffffffa6;border-radius:999px;flex-shrink:0;align-items:center;gap:1.5rem;width:min(100% - 3rem,1440px);margin:1.1rem auto 0;padding:.85rem 1.75rem;display:flex;position:sticky;top:1.1rem;box-shadow:0 12px 30px #3c5ab41f}.nav-brand{font-family:var(--font-plex-mono);letter-spacing:.14em;color:var(--ink);white-space:nowrap;align-items:center;gap:.6rem;font-size:.8rem;font-weight:600;transition:opacity .15s;display:flex}.nav-brand:hover{opacity:.75}.nav-brand-orb{background:radial-gradient(circle at 30% 30%, #7fa6ff, var(--blue) 65%, var(--blue-deep));border-radius:50%;flex-shrink:0;width:12px;height:12px;box-shadow:0 0 12px #1d4ed866}.nav-cta{font-family:var(--font-plex-mono);letter-spacing:.06em;background:var(--blue);color:#fff;white-space:nowrap;border-radius:999px;flex-shrink:0;margin-left:auto;padding:.6rem 1.25rem;font-size:.8rem;font-weight:600;transition:background .15s,transform .1s}.nav-cta:hover{background:var(--blue-deep);color:#fff;transform:translateY(-1px)}.nav-status{font-family:var(--font-plex-mono);letter-spacing:.14em;color:var(--green);white-space:nowrap;flex-shrink:0;align-items:center;gap:.5rem;margin-left:auto;font-size:.68rem;font-weight:500;display:flex}.nav-status-dot{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #0a9e5c80}.nav-submenu a{font-family:var(--font-technical);font-weight:500;transition:opacity .15s,background .15s;position:relative}.nav-code{font-family:var(--font-plex-mono);letter-spacing:.06em;color:var(--blue);opacity:.9;font-size:.65rem;font-weight:600}.nav-parts{align-items:stretch;display:flex}.nav-part{align-items:stretch;display:flex;position:relative}.nav-part-trigger{height:100%;font-family:var(--font-plex-mono);letter-spacing:.06em;color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;margin:0;padding:.25rem .55rem;font-size:.8rem;font-weight:500;transition:color .15s;display:flex}.nav-part-trigger:hover{color:var(--blue)}.nav-part-caret{color:var(--blue);opacity:.7;margin-left:.15rem;font-size:.55rem;transition:transform .15s}.nav-part:hover .nav-part-caret,.nav-part:focus-within .nav-part-caret,.nav-part.open .nav-part-caret{transform:rotate(180deg)}.nav-part.active .nav-part-trigger{color:var(--blue)}.nav-part.active .nav-part-trigger:after{content:"";background:var(--blue);height:2px;position:absolute;bottom:-.15rem;left:.55rem;right:.55rem}.nav-submenu{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-line);opacity:0;visibility:hidden;z-index:60;background:#ffffffeb;border-radius:16px;flex-direction:column;gap:2px;min-width:230px;margin:0;padding:.4rem;list-style:none;transition:opacity .14s,transform .14s,visibility .14s;display:flex;position:absolute;top:calc(100% + .9rem);left:-.55rem;transform:translateY(-6px);box-shadow:0 18px 36px #1e3a8a29}.nav-part:last-child .nav-submenu{left:auto;right:-.55rem}.nav-part:after{content:"";height:1rem;position:absolute;top:100%;left:0;right:0}.nav-part:hover .nav-submenu,.nav-part:focus-within .nav-submenu,.nav-part.open .nav-submenu{opacity:1;visibility:visible;transform:none}.nav-submenu a{color:var(--ink);opacity:.82;white-space:nowrap;border-radius:10px;align-items:center;gap:.55rem;padding:.55rem .7rem;font-size:.88rem;display:flex}.nav-submenu a:hover{opacity:1;color:var(--ink);background:var(--blue-tint)}.nav-submenu a.active{opacity:1;background:var(--blue-soft)}.nav-submenu a.active:after{content:none}.nav-submenu a.active .nav-code{color:var(--blue-deep)}@media (prefers-reduced-motion:reduce){.nav-submenu,.nav-part-caret{transition:none}}.app-layout{width:100%;height:calc(100vh - 56px);scroll-margin-top:90px;display:flex}.simulator-mount-body .app-layout{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:18px;height:clamp(520px,74vh,760px);overflow:hidden}.controls-panel{border-right:1px solid var(--hairline);background:var(--panel-bg);flex-direction:column;flex-shrink:0;gap:1.1rem;width:300px;padding:1.75rem 1.5rem;display:flex;overflow-y:auto}.controls-panel h2{font-family:var(--font-plex-sans-kr);letter-spacing:-.01em;border-bottom:1px solid var(--hairline);margin-bottom:.25rem;padding-bottom:.85rem;font-size:1.05rem;font-weight:700}.controls-panel label{font-family:var(--font-technical);letter-spacing:.03em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 62%, transparent);flex-direction:column;gap:.4rem;font-size:.7rem;font-weight:600;display:flex}.controls-panel input,.controls-panel select{font-family:var(--font-plex-mono);font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:normal;border:1px solid var(--hairline);background:var(--background);color:var(--foreground);border-radius:3px;padding:.55rem .65rem;font-size:.95rem;font-weight:500}.controls-panel input:focus,.controls-panel select:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}.controls-panel .hint{font-family:var(--font-plex-sans-kr);text-transform:none;letter-spacing:normal;color:color-mix(in srgb, var(--foreground) 50%, transparent);font-size:.72rem;font-weight:400}.controls-panel button{font-family:var(--font-technical);letter-spacing:.05em;text-transform:uppercase;background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:999px;margin-top:.6rem;padding:.8rem;font-size:.9rem;font-weight:600;transition:background .15s,transform .1s;box-shadow:0 12px 26px #1d4ed847}.controls-panel button:before{content:"▶ "}.controls-panel button:disabled{opacity:.5;cursor:not-allowed}.controls-panel button:not(:disabled):hover{background:var(--blue-deep)}.controls-panel button:not(:disabled):active{transform:scale(.98)}.controls-panel .error{font-family:var(--font-technical);color:#d33;font-size:.8rem}.doppler-playback-controls{gap:.6rem;display:flex}.controls-panel .doppler-playback-button{font-family:var(--font-technical);letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--hairline);background:var(--background);color:var(--foreground);cursor:pointer;border-radius:3px;flex:1;margin-top:0;padding:.55rem;font-size:.85rem;font-weight:600;transition:background .15s,transform .1s}.controls-panel .doppler-playback-button:before{content:none}.controls-panel .doppler-playback-button:hover{background:color-mix(in srgb, var(--velocity) 14%, transparent)}.controls-panel .doppler-playback-button:active{transform:scale(.98)}.field-group{flex-direction:column;gap:.5rem;display:flex}.preset-button-row{gap:.5rem;display:flex}.preset-button{font-family:var(--font-technical);letter-spacing:.02em;text-transform:none;border:1px solid var(--hairline);background:var(--background);color:color-mix(in srgb, var(--foreground) 70%, transparent);cursor:pointer;border-radius:3px;flex:1;margin-top:0;padding:.5rem;font-size:.8rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.preset-button:before{content:none}.preset-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--velocity) 50%, var(--hairline))}.preset-button.active{background:color-mix(in srgb, var(--velocity) 16%, transparent);border-color:var(--velocity);color:var(--foreground)}.preset-button:disabled{opacity:.5;cursor:not-allowed}.scene-container{border:1px solid var(--card-line);background:var(--background);border-radius:14px;flex:1;min-width:0;margin:.75rem;position:relative;overflow:hidden}.stats-overlay{z-index:2;background:color-mix(in srgb, var(--panel-bg) 88%, transparent);border:1px solid var(--hairline);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:4px;flex-direction:column;gap:.5rem;width:250px;padding:1rem 1.1rem;font-size:.82rem;display:flex;position:absolute;top:1rem;right:1rem}.stats-overlay-row{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.stats-overlay-row span{font-family:var(--font-technical);letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.68rem;font-weight:600}.stats-overlay-row strong{font-family:var(--font-plex-mono);font-variant-numeric:tabular-nums;color:var(--velocity);font-weight:600}.gas-stats-note{border-top:1px solid var(--hairline);font-family:var(--font-plex-sans-kr);color:color-mix(in srgb, var(--foreground) 55%, transparent);margin-top:.5rem;padding-top:.5rem;font-size:.68rem;font-weight:400;line-height:1.45}.force-input-group{border:1px solid var(--hairline);border-radius:6px;flex-direction:column;gap:.6rem;padding:.75rem;display:flex}.force-equilibrium-badge{text-align:center;background:color-mix(in srgb, var(--velocity) 18%, transparent);color:var(--velocity);font-family:var(--font-technical);letter-spacing:.02em;border-radius:4px;padding:.55rem;font-size:.95rem;font-weight:700}.force-arrow-label{font-family:var(--font-technical);white-space:nowrap;text-shadow:0 0 4px #fff,0 0 4px #fff,0 0 8px #fff;align-items:baseline;gap:.3rem;font-size:.85rem;font-weight:700;display:inline-flex}.force-arrow-label-value{opacity:.8;font-size:.72rem;font-weight:500}.force-arrow-label-resultant{font-size:.9rem}.diagram-scene-light{--panel-bg:#fff;--hairline:#101a3324;--foreground:#1a1f2b;--velocity:#1f4fb0;background:var(--panel-bg)}.doppler-visual-column{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.doppler-visual-column .scene-container{flex:1;min-height:0;margin-bottom:0}.frequency-chart-panel{border:1px solid var(--hairline);background:var(--panel-bg);border-top:none;border-radius:0 0 4px 4px;flex-shrink:0;margin:0 .75rem .75rem;padding:.85rem 1rem .6rem}.frequency-chart-title{color:var(--foreground);opacity:.7;margin-bottom:.35rem;font-size:.78rem;font-weight:600}.frequency-chart-gridline{stroke:var(--hairline);stroke-width:1px}.frequency-chart-tick{fill:var(--foreground);opacity:.55;font-size:9px;font-family:var(--font-mono,monospace)}.frequency-chart-reference{stroke:var(--foreground);opacity:.35;stroke-width:1px;stroke-dasharray:3 3}.frequency-chart-reference-label{fill:var(--foreground);opacity:.5;font-size:9px;font-family:var(--font-mono,monospace)}.frequency-chart-line{stroke:var(--velocity);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.frequency-chart-end-ring{fill:var(--panel-bg);stroke:var(--velocity);stroke-width:2px}.frequency-chart-end-dot{fill:var(--velocity)}.frequency-chart-end-label{fill:var(--foreground);font-size:10px;font-weight:600;font-family:var(--font-mono,monospace)}.frequency-chart-crosshair{stroke:var(--foreground);opacity:.25;stroke-width:1px}.frequency-chart-hover-label{fill:var(--foreground);font-size:10px;font-weight:600;font-family:var(--font-mono,monospace)}.intro-scope{--background:#f6f9ff;--foreground:#0c1830;--panel-bg:#fff;--hairline:#101a331a;--intro-body:#46536e;--intro-accent-soft:#cfe0fb;--intro-accent:#3f7fe6;--intro-accent-strong:#2454c9;--intro-accent-deep:#0f2f8c;background-color:var(--background);color:var(--foreground);padding:5.5rem 2rem;position:relative;overflow:hidden}.intro-scope:before{content:"";background:radial-gradient(closest-side, color-mix(in srgb, var(--intro-accent) 22%, transparent) 0%, color-mix(in srgb, var(--intro-accent-soft) 14%, transparent) 55%, transparent 80%);pointer-events:none;z-index:0;width:1300px;height:800px;position:absolute;top:-25%;left:50%;translate:-50%}.intro-hero,.demo-showcase,.page-guide{z-index:1;position:relative}.intro-hero{align-items:center;gap:4.5rem;max-width:1180px;margin:0 auto;display:flex}.intro-hero-copy{flex:400px;min-width:0}.intro-eyebrow{font-family:var(--font-technical);letter-spacing:.1em;text-transform:uppercase;color:var(--intro-accent-strong);margin-bottom:1.4rem;font-size:.75rem;font-weight:600;display:inline-block}.intro-headline{letter-spacing:-.015em;-webkit-text-stroke:.4px currentColor;text-wrap:balance;margin-bottom:1rem;font-size:clamp(2.75rem,6vw,4.5rem);font-weight:700;line-height:1.15}.intro-headline-accent{color:var(--intro-accent-deep)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.intro-headline-accent{background:linear-gradient(100deg, var(--intro-accent-strong) 15%, var(--intro-accent-deep) 85%);color:#0000;-webkit-background-clip:text;background-clip:text}}.intro-subtext{color:var(--intro-body);max-width:46ch;margin-bottom:1.75rem;font-size:1rem;line-height:1.65}.intro-actions{flex-wrap:wrap;gap:.75rem;display:flex}.intro-cta{font-family:var(--font-technical);letter-spacing:.02em;background:linear-gradient(135deg, var(--intro-accent), var(--intro-accent-deep));color:#fff;box-shadow:0 12px 32px -8px color-mix(in srgb, var(--intro-accent-strong) 65%, transparent);border-radius:999px;align-items:center;padding:.85rem 1.5rem;font-size:.9rem;font-weight:600;transition:background .15s,box-shadow .2s,transform .1s;display:inline-flex}.intro-cta:hover{box-shadow:0 16px 38px -8px color-mix(in srgb, var(--intro-accent-strong) 75%, transparent)}.intro-cta:active{transform:scale(.98)}.intro-cta.secondary{color:var(--intro-accent-deep);border:1px solid var(--hairline);box-shadow:none;background:0 0}.intro-cta.secondary:hover{background:var(--intro-accent-soft)}.intro-hero-visual{flex:1.3 480px;min-width:0;position:relative}.hero-graphic{width:100%;height:auto;overflow:visible}.hero-graphic-field{fill:none;stroke:var(--hairline);stroke-width:1.5px}.hero-graphic-primary{fill:none;stroke:url(#trajectory-gradient);stroke-width:3.5px;stroke-linecap:round;filter:drop-shadow(0 0 10px color-mix(in srgb, var(--intro-accent) 65%, transparent)) drop-shadow(0 0 34px color-mix(in srgb, var(--intro-accent-deep) 45%, transparent))}.hero-graphic-point{fill:var(--intro-accent-deep);opacity:.7}.hero-graphic-marker{fill:var(--intro-accent-deep);offset-path:path("M20,300 Q240,20 460,300");animation:3.2s ease-in-out infinite alternate hero-marker-travel}@keyframes hero-marker-travel{0%{offset-distance:0%}to{offset-distance:100%}}@media (prefers-reduced-motion:reduce){.hero-graphic-marker{offset-distance:50%;animation:none}}.hero-data-chip{background:color-mix(in srgb, var(--panel-bg) 88%, transparent);border:1px solid var(--hairline);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--font-technical);font-variant-numeric:tabular-nums;color:var(--intro-accent-deep);border-radius:8px;padding:.35rem .6rem;font-size:.72rem;font-weight:600;position:absolute;top:18%;left:46%}@keyframes intro-rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.intro-eyebrow{animation:.6s cubic-bezier(.16,1,.3,1) both intro-rise-in}.intro-headline{animation:.6s cubic-bezier(.16,1,.3,1) 60ms both intro-rise-in}.intro-subtext{animation:.6s cubic-bezier(.16,1,.3,1) .14s both intro-rise-in}.intro-actions{animation:.6s cubic-bezier(.16,1,.3,1) .2s both intro-rise-in}.intro-hero-visual{animation:.7s cubic-bezier(.16,1,.3,1) .1s both intro-rise-in}@media (prefers-reduced-motion:reduce){.intro-eyebrow,.intro-headline,.intro-subtext,.intro-actions,.intro-hero-visual{opacity:1;animation:none;transform:none}}.demo-showcase{max-width:1180px;margin:7.5rem auto 0}.demo-showcase-title{margin-bottom:1.75rem;font-size:1.3rem;font-weight:700}.demo-card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;display:grid}.demo-card{border:1px solid var(--hairline);background:var(--panel-bg);color:inherit;border-radius:8px;padding:1.5rem;transition:border-color .15s,transform .15s,box-shadow .15s;display:block}.demo-card:hover{border-color:var(--intro-accent);box-shadow:0 16px 32px -14px color-mix(in srgb, var(--intro-accent) 40%, transparent);transform:translateY(-4px)}.demo-card-icon{fill:none;width:32px;height:32px;stroke:var(--intro-accent-deep);stroke-width:1.6px;stroke-linecap:round;margin-bottom:.85rem}.demo-card-code{font-family:var(--font-technical);letter-spacing:.06em;color:var(--intro-accent-deep);margin-bottom:.6rem;font-size:.7rem;font-weight:600;display:block}.demo-card h3{margin-bottom:.5rem;font-size:1.05rem;font-weight:700}.demo-card p{color:var(--intro-body);font-size:.88rem;line-height:1.55}.page-guide{flex-direction:column;gap:2.75rem;max-width:720px;margin:7.5rem auto 0;display:flex}.concept-guide h2,.usage-guide h2{margin-bottom:.85rem;font-size:1.15rem;font-weight:700}.concept-guide{border-left:3px solid var(--intro-accent-soft);padding-left:1.5rem}.concept-guide p{color:var(--intro-body);max-width:62ch;font-size:.97rem;line-height:1.75}.concept-guide code{font-family:var(--font-plex-mono);background:var(--intro-accent-soft);color:var(--intro-accent-deep);border-radius:3px;padding:.1rem .35rem;font-size:.9em}.usage-guide ol{counter-reset:usage-step;flex-direction:column;gap:1.1rem;padding-left:0;list-style:none;display:flex}.usage-guide li{color:var(--intro-body);counter-increment:usage-step;padding-left:2.75rem;font-size:.95rem;line-height:1.65;position:relative}.usage-guide li:before{content:counter(usage-step);background:var(--intro-accent-deep);color:#fff;width:1.75rem;height:1.75rem;font-family:var(--font-technical);border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:flex;position:absolute;top:0;left:0}.usage-guide li:not(:last-child):after{content:"";background:var(--hairline);width:2px;position:absolute;top:1.9rem;bottom:-1.1rem;left:.875rem}@media (max-width:720px){.intro-hero{flex-direction:column;align-items:flex-start;gap:2rem}.intro-hero-visual{order:-1;width:100%}.hero-data-chip{display:none}.demo-card-grid{grid-template-columns:1fr}}.double-slit-info-column{border-left:1px solid var(--hairline);background:var(--panel-bg);flex-direction:column;flex-shrink:0;gap:1rem;width:340px;padding:1.25rem 1.1rem;display:flex;overflow-y:auto}.double-slit-card{border:1px solid var(--hairline);background:color-mix(in srgb, var(--panel-bg) 92%, transparent);border-radius:6px;padding:1rem 1.1rem}.double-slit-card+.double-slit-card{margin-top:0}.double-slit-card-heading{font-family:var(--font-plex-sans-kr);margin-bottom:.6rem;font-size:.9rem;font-weight:700}.double-slit-card-heading:not(:first-child){border-top:1px solid var(--hairline);margin-top:1.1rem;padding-top:1rem}.double-slit-card-text{font-family:var(--font-plex-sans-kr);color:color-mix(in srgb, var(--foreground) 68%, transparent);margin-bottom:.4rem;font-size:.82rem;line-height:1.6}.double-slit-card code{font-family:var(--font-plex-mono);background:color-mix(in srgb, var(--velocity) 18%, transparent);color:var(--velocity);border-radius:3px;padding:.1rem .35rem;font-size:.85em}.double-slit-error{font-family:var(--font-technical);color:#ff8a80;font-size:.8rem}.double-slit-badge{text-align:center;font-family:var(--font-technical);letter-spacing:.01em;border-radius:4px;margin-bottom:.5rem;padding:.55rem;font-size:.92rem;font-weight:700}.double-slit-badge.bright{color:#f2c94c;background:#f2c94c33}.double-slit-badge.dark{background:color-mix(in srgb, var(--velocity) 20%, transparent);color:var(--velocity)}.double-slit-badge-note{font-family:var(--font-plex-sans-kr);color:color-mix(in srgb, var(--foreground) 62%, transparent);margin-bottom:.3rem;font-size:.78rem;line-height:1.55}.double-slit-slider-label{flex-direction:column;gap:.4rem;display:flex}.double-slit-slider-heading{font-family:var(--font-technical);letter-spacing:.03em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 62%, transparent);justify-content:space-between;align-items:center;font-size:.7rem;font-weight:600;display:flex}.double-slit-slider-value{font-family:var(--font-plex-mono);font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:normal;color:var(--foreground);align-items:center;gap:.4rem;display:inline-flex}.double-slit-swatch{border:1px solid var(--hairline);border-radius:50%;width:.85rem;height:.85rem;display:inline-block}.double-slit-controls-panel input[type=range]{appearance:none;background:var(--hairline);border-radius:2px;outline:none;width:100%;height:4px}.double-slit-controls-panel input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--velocity);border:2px solid var(--panel-bg);cursor:pointer;width:16px;height:16px;box-shadow:0 0 0 1px var(--hairline);border-radius:50%}.double-slit-controls-panel input[type=range]::-moz-range-thumb{background:var(--velocity);border:2px solid var(--panel-bg);cursor:pointer;width:16px;height:16px;box-shadow:0 0 0 1px var(--hairline);border-radius:50%}.double-slit-controls-panel input[type=range]:focus-visible{outline:2px solid var(--velocity);outline-offset:3px}.double-slit-jump-group{border:1px solid var(--hairline);border-radius:6px;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.double-slit-jump-label{font-family:var(--font-technical);letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.68rem;font-weight:600}.double-slit-jump-row{gap:.4rem;display:flex}.double-slit-jump-row button{letter-spacing:.01em;text-transform:none;background:var(--background);color:var(--foreground);border:1px solid var(--hairline);border-radius:4px;flex:1;margin-top:0;padding:.45rem .3rem;font-size:.72rem;font-weight:600}.double-slit-jump-row button:before{content:none}.double-slit-jump-row button:hover{border-color:var(--velocity);color:var(--velocity);background:var(--background)}.double-slit-toolbar{z-index:2;flex-wrap:wrap;align-items:center;gap:.5rem;display:flex;position:absolute;top:1rem;left:1rem}.double-slit-toolbar-group{border:1px solid var(--hairline);border-radius:999px;display:flex;overflow:hidden}.double-slit-toolbar button{font-family:var(--font-technical);letter-spacing:.01em;border:1px solid var(--hairline);background:color-mix(in srgb, var(--panel-bg) 85%, transparent);color:color-mix(in srgb, var(--foreground) 75%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;border-radius:999px;padding:.45rem .85rem;font-size:.72rem;font-weight:600}.double-slit-toolbar-group button{border:none;border-radius:0}.double-slit-toolbar-group button.active{background:var(--velocity);color:#fff}.double-slit-scale-note{z-index:2;font-family:var(--font-plex-sans-kr);color:color-mix(in srgb, var(--foreground) 55%, transparent);text-shadow:0 0 6px #0009;font-size:.72rem;position:absolute;bottom:.85rem;left:1rem}.double-slit-label{font-family:var(--font-technical);color:#f1ede4;white-space:nowrap;text-shadow:0 0 4px #000,0 0 4px #000,0 0 8px #000;font-size:.72rem;font-weight:700}.double-slit-label-accent{color:#f2c94c}.double-slit-wave-chart{width:100%;height:auto;margin:.4rem 0}.double-slit-wave-axis{stroke:var(--hairline);stroke-width:1px}.double-slit-wave-1{stroke:#e0563f;stroke-width:1.5px;opacity:.75}.double-slit-wave-2{stroke:#4c8fe0;stroke-width:1.5px;opacity:.75}.double-slit-wave-sum{stroke:#f2c94c;stroke-width:2.5px}.double-slit-wave-legend{font-family:var(--font-technical);flex-wrap:wrap;gap:.6rem .9rem;font-size:.68rem;display:flex}.double-slit-wave-legend-item{align-items:center;gap:.35rem;display:inline-flex}.double-slit-wave-legend-item:before{content:"";width:.75rem;height:2px;display:inline-block}.double-slit-wave-legend-item.wave1:before{background:#e0563f}.double-slit-wave-legend-item.wave2:before{background:#4c8fe0}.double-slit-wave-legend-item.sum:before{background:#f2c94c;height:3px}.double-slit-formula-steps{counter-reset:double-slit-step;flex-direction:column;gap:.9rem;padding-left:0;list-style:none;display:flex}.double-slit-formula-steps li{counter-increment:double-slit-step;padding-left:1.9rem;position:relative}.double-slit-formula-steps li:before{content:counter(double-slit-step);background:var(--velocity);color:#fff;width:1.35rem;height:1.35rem;font-family:var(--font-technical);border-radius:50%;justify-content:center;align-items:center;font-size:.68rem;font-weight:600;display:flex;position:absolute;top:.1rem;left:0}.double-slit-formula-step-title{margin-bottom:.25rem;font-size:.8rem;font-weight:700;display:block}.double-slit-formula-steps li code{font-family:var(--font-plex-mono);background:color-mix(in srgb, var(--velocity) 18%, transparent);color:var(--velocity);border-radius:3px;margin-bottom:.3rem;padding:.15rem .4rem;font-size:.78rem;display:inline-block}.double-slit-formula-steps li p{font-family:var(--font-plex-sans-kr);color:color-mix(in srgb, var(--foreground) 62%, transparent);font-size:.78rem;line-height:1.55}@media (max-width:1100px){.double-slit-info-column{width:300px}}.demo-tabs{width:100%}.demo-tab-bar{border-bottom:1px solid var(--hairline);gap:.25rem;padding:0 1.5rem;display:flex}.demo-tab{appearance:none;color:var(--foreground);cursor:pointer;font-family:var(--font-technical);letter-spacing:.04em;opacity:.6;background:0 0;border:none;border-bottom:2px solid #0000;padding:.75rem 1rem;font-size:.8rem;transition:opacity .15s,border-color .15s}.demo-tab:hover{opacity:.85}.demo-tab.active{border-bottom-color:var(--force);opacity:1}.demo-tab-panel{padding-top:1rem}.video-embed-poster,.video-embed-frame{aspect-ratio:16/9;border:1px solid var(--hairline);border-radius:8px;width:100%;max-width:960px;margin:0 auto;display:block}.video-embed-poster{appearance:none;background:var(--panel-bg);cursor:pointer;padding:0;position:relative;overflow:hidden}.video-embed-poster img{object-fit:cover;width:100%;height:100%;display:block}.video-embed-play{border-color:transparent transparent transparent var(--paper);z-index:1;border-style:solid;border-width:14px 0 14px 24px;position:absolute;inset:50% auto auto 50%;transform:translate(-40%,-50%)}.video-embed-poster:after{background:var(--force);content:"";opacity:.92;border-radius:50%;width:64px;height:64px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.video-embed-frame{border:0}.charge-positive{color:var(--force)}.charge-negative{color:var(--velocity)}.landing{color:var(--ink);background-color:var(--background);background-image:radial-gradient(circle, var(--grid) 1px, transparent 1px);background-size:26px 26px;position:relative;overflow:hidden}.landing-inner{max-width:1440px;margin:0 auto;padding:1.5rem 3rem 3.5rem}.landing-display{font-family:var(--font-display-xl);letter-spacing:0;text-align:center;color:var(--ink);margin:0;font-size:clamp(5rem,16vw,16rem);font-weight:400;line-height:.9}.landing-orbs{z-index:2;aspect-ratio:16/10;filter:drop-shadow(0 30px 45px #1236a447);width:min(760px,66vw);margin:clamp(-9rem,-9vw,-5rem) auto 0;position:relative}.landing-orbs>div,.landing-orbs canvas{width:100%;height:100%}.landing-orbs canvas{cursor:grab}.landing-orbs canvas:active{cursor:grabbing}.landing-toy-hint{z-index:3;text-align:center;font-family:var(--font-plex-mono), monospace;letter-spacing:.16em;color:var(--muted);margin:1.1rem 0 0;font-size:.65rem;position:relative}.landing-bottom{z-index:5;justify-content:space-between;align-items:flex-end;gap:2.5rem;padding-top:2.9rem;display:flex;position:relative}.landing-copy{max-width:34rem;animation:.7s cubic-bezier(.2,.7,.2,1) both landing-rise}.landing-eyebrow{font-family:var(--font-plex-mono), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:.9rem;font-size:.7rem;font-weight:600;display:inline-block}.landing-headline{font-family:var(--font-plex-sans-kr), sans-serif;letter-spacing:-.01em;word-break:keep-all;text-wrap:pretty;color:var(--ink);margin:0;font-size:clamp(1.15rem,1.8vw,1.35rem);font-weight:800;line-height:1.5}.landing-accent{color:var(--blue)}.landing-sub{color:var(--body-text);word-break:keep-all;text-wrap:pretty;max-width:min(46ch,100%);margin:.9rem 0 0;font-size:.95rem;line-height:1.75}.landing-rule{font-family:var(--font-plex-mono), monospace;color:var(--faint);letter-spacing:.3em;margin:.9rem 0 0;font-size:.75rem}.landing-actions{flex-shrink:0;align-items:center;gap:1.25rem;display:flex}.landing-cta-round{background:var(--blue);color:#fff;text-align:center;border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.35rem;width:158px;height:158px;transition:background .2s,transform .15s;display:flex;box-shadow:0 24px 46px #1d4ed859}.landing-cta-round:hover{background:var(--blue-deep);color:#fff;transform:scale(1.04)}.landing-cta-round:focus-visible{outline:2px solid var(--blue-deep);outline-offset:4px}.landing-cta-label{font-size:.95rem;font-weight:700}.landing-cta-arrow{font-family:var(--font-plex-mono), monospace;font-size:.9rem}.landing-cta{font-family:var(--font-plex-mono), monospace;background:var(--blue);color:#fff;border:1px solid #0000;border-radius:999px;align-items:center;padding:.85rem 1.5rem;font-size:.85rem;font-weight:600;transition:background .2s,transform .1s;display:inline-flex}.landing-cta.ghost{color:var(--ink);border-color:var(--hairline);box-shadow:none;background:0 0}.landing-cta.ghost:hover{color:var(--ink);background:#101a330a}.landing-cta:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@keyframes landing-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (max-width:900px){.landing-inner{padding:1rem 1.5rem 2.5rem}.landing-orbs{width:min(560px,88vw);margin-top:clamp(-5rem,-8vw,-2.5rem)}.landing-bottom{flex-direction:column;align-items:stretch;gap:1.75rem}.landing-actions{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.landing-copy{animation:none}}.demo-index-scope{--intro-accent:var(--blue);--intro-accent-deep:var(--blue-deep);--intro-body:var(--body-text);background:linear-gradient(180deg, var(--blue-tint) 0%, #f2f5fb 40%, var(--background) 100%);border-top:1px solid var(--hairline);color:var(--ink)}.charge-sphere-label{font-family:var(--font-technical);color:#fff;text-shadow:0 0 4px #000c,0 0 8px #0009;pointer-events:none;font-size:1.1rem;font-weight:700}.electric-field-tabs{border-bottom:1px solid var(--hairline);background:var(--background);gap:.25rem;padding:0 1.5rem;display:flex;overflow-x:auto}.electric-field-tabs button{font-family:var(--font-technical);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;color:color-mix(in srgb, var(--foreground) 55%, transparent);cursor:pointer;background:0 0;border:none;padding:.85rem 1rem;font-size:.78rem;font-weight:600;position:relative}.electric-field-tabs button:hover,.electric-field-tabs button.is-active{color:var(--foreground)}.electric-field-tabs button.is-active:after{content:"";background:var(--force);height:2px;position:absolute;bottom:0;left:1rem;right:1rem}.controls-panel input[type=range]{accent-color:var(--force);cursor:pointer;background:0 0;border:none;padding:0}.controls-panel label span{font-family:var(--font-plex-mono);color:var(--foreground);text-transform:none;letter-spacing:normal;font-size:.85rem;font-weight:600}.controls-panel label.checkbox-label{text-transform:none;font-family:var(--font-plex-sans-kr);color:var(--foreground);flex-direction:row;align-items:center;gap:.5rem;font-size:.82rem;font-weight:500}.controls-panel label.checkbox-label input[type=checkbox]{width:auto;accent-color:var(--force);cursor:pointer}.equipotential-label{font-family:var(--font-technical);color:#fff;text-shadow:0 0 3px #000000d9,0 0 6px #0009;pointer-events:none;font-size:.7rem;font-weight:600}.field-2d-inset{z-index:2;pointer-events:none;background:color-mix(in srgb, var(--panel-bg) 80%, transparent);border:1px solid var(--hairline);border-radius:4px;width:130px;height:130px;position:absolute;top:1rem;left:1rem}.field-2d-inset-svg{width:100%;height:100%}.field-2d-inset-equipotential{fill:none;stroke-width:1px;stroke-dasharray:3 3}.field-2d-inset-label{font-family:var(--font-plex-mono);fill:var(--foreground);opacity:.75;font-size:6px}.field-2d-inset-line{stroke-width:1px}.field-2d-inset-charge-symbol{font-family:var(--font-plex-mono);fill:var(--panel-bg);text-anchor:middle;dominant-baseline:central;font-size:8px;font-weight:700}.multi-charge-count-block{text-align:center;flex-direction:column;align-items:center;gap:.5rem;display:flex}.multi-charge-add-button{text-align:center;width:100%;font-family:var(--font-technical);letter-spacing:.02em;border:1px solid var(--hairline);background:var(--background);color:color-mix(in srgb, var(--foreground) 70%, transparent);cursor:pointer;border-radius:3px;padding:.55rem;font-size:.8rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.controls-panel label span.multi-charge-count-number{font-family:var(--font-plex-mono);color:var(--foreground);font-size:1.3rem;font-weight:700;line-height:1}.multi-charge-count-caption{font-family:var(--font-plex-sans-kr);text-transform:none;letter-spacing:normal;color:color-mix(in srgb, var(--foreground) 50%, transparent);margin:0;font-size:.72rem;font-weight:400}.multi-charge-add-button:hover:not(:disabled){border-color:var(--velocity);color:var(--foreground)}.multi-charge-add-button:disabled{opacity:.4;cursor:not-allowed}.multi-charge-scene{width:560px;height:560px;margin:1.5rem auto;position:relative}.multi-charge-svg{background:var(--panel-bg);width:100%;height:100%;display:block}.multi-charge-grid-line{stroke:var(--hairline);stroke-width:1px}.multi-charge-grid-arrowhead{fill:var(--hairline)}.multi-charge-marker{cursor:grab;stroke:var(--panel-bg);stroke-width:1.5px}.multi-charge-marker-label{font-family:var(--font-plex-mono);fill:var(--panel-bg);text-anchor:middle;dominant-baseline:central;pointer-events:none;font-size:9px;font-weight:700}.multi-charge-popup{z-index:3;background:var(--panel-bg);border:1px solid var(--hairline);border-radius:4px;flex-direction:column;gap:.5rem;min-width:160px;padding:.75rem .85rem;display:flex;position:absolute;transform:translate(-50%,-140%);box-shadow:0 10px 24px -12px #00000073}.multi-charge-popup label{font-family:var(--font-technical);letter-spacing:.03em;text-transform:uppercase;color:var(--foreground);flex-direction:column;gap:.3rem;font-size:.7rem;font-weight:600;display:flex}.multi-charge-popup-delete{border:1px solid var(--force);background:color-mix(in srgb, var(--force) 12%, transparent);color:var(--force);font-family:var(--font-technical);cursor:pointer;border-radius:3px;padding:.4rem .6rem;font-size:.75rem;font-weight:600}.multi-charge-popup-delete:hover:not(:disabled){background:color-mix(in srgb, var(--force) 20%, transparent)}.multi-charge-popup-delete:disabled{opacity:.4;cursor:not-allowed}.multi-charge-popup-note{font-family:var(--font-technical);color:color-mix(in srgb, var(--foreground) 60%, transparent);margin:0;font-size:.65rem}.potential-point-label{font-family:var(--font-technical);color:var(--foreground);background:color-mix(in srgb, var(--panel-bg) 85%, transparent);border:1px solid var(--hairline);border-radius:3px;padding:.1rem .4rem;font-size:.95rem;font-weight:700}.uniform-field-playback-controls{gap:.6rem;display:flex}.uniform-field-playback-button{font-family:var(--font-technical);letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--hairline);background:var(--background);color:var(--foreground);cursor:pointer;border-radius:3px;flex:1;margin-top:0;padding:.55rem;font-size:.85rem;font-weight:600;transition:background .15s,transform .1s}.uniform-field-playback-button:before{content:none}.uniform-field-playback-button:hover{background:color-mix(in srgb, var(--velocity) 14%, transparent)}.uniform-field-playback-button:active{transform:scale(.98)}.uniform-field-visual-column{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.uniform-field-visual-column .scene-container{flex:1;min-height:0;margin-bottom:0}.work-energy-chart-panel{border:1px solid var(--hairline);background:var(--panel-bg);border-top:none;border-radius:0 0 4px 4px;flex-shrink:0;margin:0 .75rem .75rem;padding:.85rem 1rem .6rem}.work-energy-chart-header{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.35rem;display:flex}.work-energy-chart-title{color:var(--foreground);opacity:.7;font-size:.78rem;font-weight:600}.work-energy-chart-legend{gap:.7rem;display:flex}.work-energy-chart-legend-item{font-size:.68rem;font-family:var(--font-technical);color:var(--foreground);opacity:.75;align-items:center;gap:.3rem;display:flex}.work-energy-chart-legend-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.work-energy-chart-legend-dot-work{background:var(--force)}.work-energy-chart-legend-dot-ke{background:var(--velocity)}.work-energy-chart-gridline{stroke:var(--hairline);stroke-width:1px}.work-energy-chart-tick{fill:var(--foreground);opacity:.55;font-size:9px;font-family:var(--font-mono,monospace)}.work-energy-chart-line-work{stroke:var(--force);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:5 4}.work-energy-chart-line-ke{stroke:var(--velocity);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.work-energy-chart-end-ring-work{fill:var(--panel-bg);stroke:var(--force);stroke-width:2px}.work-energy-chart-end-dot-work{fill:var(--force)}.work-energy-chart-end-ring-ke{fill:var(--panel-bg);stroke:var(--velocity);stroke-width:2px}.work-energy-chart-end-dot-ke{fill:var(--velocity)}.work-energy-chart-end-label{fill:var(--foreground);font-size:10px;font-weight:600;font-family:var(--font-mono,monospace)}.work-energy-chart-crosshair{stroke:var(--foreground);opacity:.25;stroke-width:1px}.work-energy-chart-hover-label{fill:var(--foreground);font-size:10px;font-weight:600;font-family:var(--font-mono,monospace)}.freefall-layout{--motion-vertical:var(--velocity);--motion-projectile:var(--force);--motion-horizontal:#199e7a}.freefall-visual-column{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow-y:auto}.freefall-visual-column .scene-container{flex:none;height:46vh;min-height:340px}.motion-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px;display:inline-block}.motion-swatch-vertical{background:var(--motion-vertical)}.motion-swatch-projectile{background:var(--motion-projectile)}.motion-swatch-horizontal{background:var(--motion-horizontal)}.motion-toggle-legend{font-family:var(--font-technical);letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.68rem;font-weight:600}.motion-toggle-row{flex-wrap:wrap}.motion-toggle{flex-direction:column;align-items:center;gap:.15rem;min-width:72px;font-size:.72rem;line-height:1.25;display:flex}.motion-toggle-mark{font-size:.95rem;font-weight:700}.motion-toggle-vertical.active{background:color-mix(in srgb, var(--motion-vertical) 16%, transparent);border-color:var(--motion-vertical)}.motion-toggle-projectile.active{background:color-mix(in srgb, var(--motion-projectile) 16%, transparent);border-color:var(--motion-projectile)}.motion-toggle-horizontal.active{background:color-mix(in srgb, var(--motion-horizontal) 16%, transparent);border-color:var(--motion-horizontal)}.motion-toggle-vertical:hover:not(:disabled){border-color:color-mix(in srgb, var(--motion-vertical) 50%, var(--hairline))}.motion-toggle-projectile:hover:not(:disabled){border-color:color-mix(in srgb, var(--motion-projectile) 50%, var(--hairline))}.motion-toggle-horizontal:hover:not(:disabled){border-color:color-mix(in srgb, var(--motion-horizontal) 50%, var(--hairline))}.freefall-layout .stats-overlay.motion-stats{background:color-mix(in srgb, var(--panel-bg) 50%, transparent);border-color:color-mix(in srgb, var(--hairline) 55%, transparent);gap:.45rem;width:auto;max-width:min(340px,100% - 2rem);padding:.7rem .8rem;transition:background .18s,border-color .18s}.freefall-layout .stats-overlay.motion-stats:hover,.freefall-layout .stats-overlay.motion-stats:focus-within{background:color-mix(in srgb, var(--panel-bg) 94%, transparent);border-color:var(--hairline)}@media (prefers-reduced-transparency:reduce){.freefall-layout .stats-overlay.motion-stats{background:var(--panel-bg);border-color:var(--hairline)}}.motion-stats-meta{font-family:var(--font-technical);font-variant-numeric:tabular-nums;white-space:nowrap;color:color-mix(in srgb, var(--foreground) 60%, transparent);flex-wrap:wrap;gap:.2rem .75rem;font-size:.68rem;display:flex}.motion-stats-table{border-collapse:collapse;width:100%;font-size:.76rem}.motion-stats-table th,.motion-stats-table td{text-align:right;white-space:nowrap;padding:.22rem 0 .22rem .6rem}.motion-stats-table thead th{border-bottom:1px solid var(--hairline);font-family:var(--font-technical);letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 55%, transparent);padding-bottom:.3rem;font-size:.62rem;font-weight:600}.motion-stats-table thead th small{text-transform:none;letter-spacing:0;opacity:.75;font-size:.9em;font-weight:400;display:block}.motion-stats-table tbody td{font-family:var(--font-plex-mono);font-variant-numeric:tabular-nums;color:var(--foreground);font-weight:600}.motion-stats-table .motion-stats-name{text-align:left;padding-left:0;font-weight:600}.motion-stats-table tbody .motion-stats-name{font-family:var(--font-plex-sans-kr);color:color-mix(in srgb, var(--foreground) 80%, transparent);font-size:.72rem;font-weight:500}.motion-stats-table tbody .motion-stats-name .motion-swatch{vertical-align:middle;margin-right:.35rem}.motion-chart-grid{flex-shrink:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:.75rem;display:grid}@media (max-width:1100px){.motion-chart-grid{grid-template-columns:minmax(0,1fr)}}.motion-chart{border:1px solid var(--hairline);background:var(--panel-bg);border-radius:4px;margin:0;padding:.7rem .85rem .4rem}.motion-chart-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.4rem;display:flex}.motion-chart-title{color:var(--foreground);font-size:.82rem;font-weight:600}.motion-chart-unit{font-family:var(--font-technical);letter-spacing:.04em;color:color-mix(in srgb, var(--foreground) 50%, transparent);font-size:.68rem}.motion-chart-legend{flex-wrap:wrap;gap:.2rem .9rem;margin:0 0 .3rem;padding:0;list-style:none;display:flex}.motion-chart-legend li{align-items:center;gap:.35rem;display:flex}.motion-chart-legend-label{color:color-mix(in srgb, var(--foreground) 65%, transparent);font-size:.7rem}.motion-chart-legend-value{font-family:var(--font-technical);font-variant-numeric:tabular-nums;color:var(--foreground);font-size:.74rem}.motion-chart-gridline{stroke:var(--hairline);stroke-width:1px}.motion-chart-axis{stroke:color-mix(in srgb, var(--foreground) 30%, transparent);stroke-width:1px}.motion-chart-tick{font-family:var(--font-technical);fill:color-mix(in srgb, var(--foreground) 50%, transparent);font-size:9px}.motion-chart-crosshair{stroke:color-mix(in srgb, var(--foreground) 35%, transparent);stroke-width:1px;stroke-dasharray:3 3}.motion-chart-line{stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.motion-chart-line-vertical{stroke:var(--motion-vertical)}.motion-chart-line-projectile{stroke:var(--motion-projectile)}.motion-chart-line-horizontal{stroke:var(--motion-horizontal)}.motion-chart-dot-ring{fill:var(--panel-bg)}.motion-chart-dot-vertical{fill:var(--motion-vertical)}.motion-chart-dot-projectile{fill:var(--motion-projectile)}.motion-chart-dot-horizontal{fill:var(--motion-horizontal)}.motion-analysis{flex-shrink:0;margin:0 .75rem .75rem}.motion-analysis-heading{font-family:var(--font-technical);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 55%, transparent);margin:0 0 .5rem;font-size:.7rem;font-weight:600}.motion-analysis-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;display:grid}.motion-analysis-card{border:1px solid var(--hairline);background:var(--panel-bg);border-radius:4px;flex-direction:column;gap:.5rem;padding:.85rem 1rem;display:flex}.motion-analysis-card-head{flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.motion-analysis-subtitle{color:color-mix(in srgb, var(--foreground) 50%, transparent);flex-basis:100%;font-size:.7rem}.motion-analysis-body,.motion-analysis-caveat{word-break:keep-all;margin:0;font-size:.82rem;line-height:1.65}.motion-analysis-caveat{border-left:2px solid color-mix(in srgb, var(--force) 45%, transparent);color:color-mix(in srgb, var(--foreground) 78%, transparent);padding-left:.6rem}.motion-analysis-formula{margin:0}.motion-analysis-formula code{font-family:var(--font-technical);color:var(--foreground);font-size:.78rem}.motion-concept-chips{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.motion-concept-chips li{border:1px solid var(--hairline);color:color-mix(in srgb, var(--foreground) 65%, transparent);border-radius:999px;padding:.15rem .5rem;font-size:.68rem}.refraction-layout{width:100%;display:grid}.refraction-scene-box{border:1px solid var(--hairline);background-color:#fff;background-image:linear-gradient(90deg,#171a210d 1px,#0000 1px),linear-gradient(#171a210d 1px,#0000 1px);background-size:32px 32px;border-radius:4px;min-width:0;position:relative;overflow:hidden}@media (prefers-color-scheme:dark){.refraction-scene-box{background-color:#12161d;background-image:linear-gradient(90deg,#f1ede40d 1px,#0000 1px),linear-gradient(#f1ede40d 1px,#0000 1px)}}.refraction-controls{border:1px solid var(--hairline);background:var(--panel-bg);border-radius:4px;flex-direction:column;gap:1rem;padding:1.25rem 1.25rem 1.1rem;display:flex}.refraction-controls h2{font-family:var(--font-plex-sans-kr);margin:0;font-size:1.12rem}.refraction-controls .hint{font-size:.86rem;line-height:1.6}.refraction-controls-grid{flex-direction:column;gap:1.05rem;display:flex}.refraction-scenarios{border-top:1px solid var(--hairline);grid-template-columns:1fr 1fr;gap:.4rem;margin-top:auto;padding-top:1rem;display:grid}.refraction-scenarios-heading{font-family:var(--font-technical);letter-spacing:.08em;text-transform:uppercase;opacity:.6;grid-column:1/-1;font-size:.78rem}.refraction-scenario-button{border:1px solid var(--hairline);background:var(--background);color:var(--foreground);cursor:pointer;text-align:left;border-radius:3px;flex-direction:column;gap:.1rem;padding:.45rem .55rem;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.refraction-scenario-button:hover{border-color:color-mix(in srgb, var(--foreground) 40%, transparent);background:color-mix(in srgb, var(--intro-accent-soft) 30%, var(--background))}.refraction-scenario-label{white-space:nowrap;font-size:.85rem}.refraction-scenario-hint{font-family:var(--font-technical);opacity:.65;font-size:.72rem}@media (prefers-reduced-motion:reduce){.refraction-scenario-button{transition:none}}.refraction-field{flex-direction:column;gap:.5rem;display:flex}.refraction-label{justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.92rem;display:flex}.refraction-value{font-family:var(--font-technical);opacity:.8;font-size:.88rem}.refraction-controls select,.refraction-controls input[type=number]{width:100%;color:var(--foreground);background:var(--background);border:1px solid var(--hairline);border-radius:3px;padding:.5rem .6rem;font-family:inherit;font-size:.95rem}.refraction-controls input[type=range]{width:100%;accent-color:var(--intro-accent-strong)}.refraction-swatch{vertical-align:-1px;border-radius:50%;width:.75rem;height:.75rem;margin-right:.35rem;display:inline-block}.refraction-info{flex-direction:column;gap:1.5rem;min-width:0;display:flex}.refraction-mode-toggle{z-index:2;gap:.25rem;display:flex;position:absolute;top:.6rem;left:.6rem}.refraction-mode-button{appearance:none;border:1px solid var(--hairline);background:var(--panel-bg);color:var(--foreground);cursor:pointer;font-family:var(--font-technical);opacity:.65;border-radius:3px;padding:.35rem .7rem;font-size:.72rem}.refraction-mode-button.active{opacity:1;border-color:color-mix(in srgb, var(--foreground) 45%, transparent)}.refraction-info-section{flex-direction:column;gap:.6rem;display:flex}.refraction-info-heading{font-family:var(--font-technical);letter-spacing:.09em;text-transform:uppercase;opacity:.55;margin:0;font-size:.78rem;font-weight:600}.refraction-readouts{flex-direction:column;display:flex}.refraction-readout{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:baseline;gap:.75rem;padding:.42rem 0;display:flex}.refraction-readout-label{opacity:.72;white-space:nowrap;font-size:.86rem}.refraction-readout-value{font-family:var(--font-technical);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.04rem}.refraction-readout.is-active .refraction-readout-value{color:var(--refraction-dense);font-weight:600}.refraction-readout.is-muted .refraction-readout-value{opacity:.5;font-size:.92rem}.refraction-spectrum-table{border-collapse:collapse;width:100%;font-family:var(--font-technical);font-variant-numeric:tabular-nums;font-size:.9rem}.refraction-spectrum-table th{opacity:.55;font-size:.78rem;font-weight:500}.refraction-spectrum-table th,.refraction-spectrum-table td{text-align:right;border-bottom:1px solid var(--hairline);white-space:nowrap;padding:.36rem .4rem}.refraction-spectrum-table th:first-child,.refraction-spectrum-table td:first-child{text-align:left;width:1.6rem}.refraction-spectrum-table .is-reflected td{opacity:.55}.refraction-spectrum-table .is-reflected td:last-child{color:var(--refraction-dense);opacity:.9}.refraction-notice{border-left:2px solid var(--hairline);opacity:.85;padding:.6rem .75rem;font-size:.85rem;line-height:1.6}.refraction-scene-label{font-family:var(--font-technical);white-space:nowrap;pointer-events:none;font-size:.84rem}@media (max-width:767px){.refraction-layout{grid-template-columns:1fr;gap:.75rem;padding:.75rem}.refraction-scene-box{order:-1;height:52dvh;min-height:280px}.refraction-controls input[type=range]{height:1.75rem}.refraction-controls select,.refraction-controls input[type=number]{min-height:2.5rem;font-size:1rem}.refraction-scene-label{font-size:.8rem}}@media (min-width:768px) and (max-width:1179px){.refraction-layout{grid-template-columns:1fr;gap:1rem;padding:1rem}.refraction-scene-box{order:-1;height:58dvh;min-height:380px}.refraction-controls-grid{grid-template-columns:1fr 1fr;gap:1rem 1.5rem;display:grid}.refraction-controls select,.refraction-controls input[type=number]{min-height:2.25rem}}@media (min-width:1180px){.refraction-layout{grid-template-columns:320px minmax(0,1fr) 300px;align-items:start;gap:.75rem;max-width:1720px;min-height:calc(100dvh - 56px);margin:0 auto;padding:.75rem;scroll-margin-top:56px}.refraction-scene-box{height:calc(100dvh - 56px - 1.5rem)}}.simulator-mount-body .refraction-layout{gap:.75rem;max-width:none;height:auto;min-height:0;margin:0;padding:0}.simulator-mount-body .refraction-scene-box{height:clamp(420px,62vh,640px)}.refraction-layout,.refraction-guide{--refraction-rare:#3f7d8c;--refraction-dense:#b8802e}.refraction-chip{border:1px solid var(--hairline);background:color-mix(in srgb, var(--panel-bg) 82%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);min-width:6.5rem;font-family:var(--font-technical);white-space:nowrap;border-radius:3px;flex-direction:column;gap:.25rem;padding:.4rem .55rem;line-height:1.2;display:flex}.refraction-chip-name{align-items:center;gap:.35rem;font-size:.88rem;font-weight:600;display:flex}.refraction-chip-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.refraction-chip-n{opacity:.75;font-size:.82rem}.refraction-chip-bar{background:var(--hairline);border-radius:2px;height:3px;display:block;overflow:hidden}.refraction-chip-bar-fill{border-radius:2px;height:100%;display:block}.refraction-guide .refraction-concept{border-left:3px solid var(--intro-accent-soft);grid-template-columns:minmax(0,1fr) 132px;align-items:start;gap:1.75rem;padding-left:1.5rem;display:grid}.refraction-guide .refraction-concept h2{margin-bottom:.85rem;font-size:1.15rem;font-weight:700;line-height:1.45}.refraction-guide .refraction-concept p{color:var(--intro-body);max-width:62ch;font-size:.97rem;line-height:1.75}.refraction-guide .refraction-concept p+p{margin-top:.9rem}.refraction-figure{border:1px solid var(--hairline);width:132px;height:96px;color:var(--intro-body);border-radius:3px;overflow:visible}.refraction-figure line,.refraction-figure path{stroke-linecap:round}.refraction-figure-text{font-family:var(--font-technical);fill:currentColor;opacity:.75;font-size:9px}.refraction-var{letter-spacing:.01em;font-family:inherit;font-style:italic}.refraction-eq{letter-spacing:.06em;color:var(--intro-accent-deep);border-left:2px solid var(--refraction-dense);margin:1.1rem 0;padding:.65rem 0 .65rem 1rem;font-family:inherit;font-size:1.05rem}@media (max-width:720px){.refraction-guide .refraction-concept{grid-template-columns:1fr;gap:1.1rem}.refraction-guide .refraction-concept-figure{order:-1}}.refraction-ray-name{font-family:var(--font-technical);letter-spacing:.04em;background:color-mix(in srgb, var(--panel-bg) 78%, transparent);opacity:.85;white-space:nowrap;pointer-events:none;border-radius:2px;padding:.15rem .4rem;font-size:.8rem}.refraction-chip-bar-fill{min-width:3px}.refraction-scene-label,.refraction-ray-name,.refraction-chip{-webkit-user-select:none;user-select:none}.pendulum-layout{--pendulum-1:var(--velocity);--pendulum-2:var(--force);--pendulum-3:#199e7a;--energy-kinetic:#b8770f;--energy-potential:#7b5ea7}.pendulum-visual-column{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow-y:auto}.pendulum-visual-column .scene-container{flex:none;height:44vh;min-height:320px}.pendulum-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px;display:inline-block}.pendulum-swatch-1{background:var(--pendulum-1)}.pendulum-swatch-2{background:var(--pendulum-2)}.pendulum-swatch-3{background:var(--pendulum-3)}.pendulum-swatch-kinetic{background:var(--energy-kinetic)}.pendulum-swatch-potential{background:var(--energy-potential)}.pendulum-swatch-total{background:var(--foreground)}.pendulum-bob-fieldset{border:1px solid var(--hairline);border-radius:4px;flex-direction:column;gap:.5rem;margin:0;padding:.6rem .7rem .7rem;display:flex}.pendulum-bob-fieldset legend{color:var(--foreground);align-items:center;gap:.4rem;padding:0 .3rem;font-size:.78rem;font-weight:600;display:flex}.controls-panel .pendulum-remove-button,.controls-panel .pendulum-add-button{border:1px solid var(--hairline);font-family:var(--font-plex-sans-kr);letter-spacing:normal;text-transform:none;color:color-mix(in srgb, var(--foreground) 70%, transparent);cursor:pointer;background:0 0;border-radius:3px;margin:0;padding:.2rem .5rem;font-size:.7rem;font-weight:500}.controls-panel .pendulum-remove-button:before,.controls-panel .pendulum-add-button:before{content:""}.controls-panel .pendulum-add-button{width:100%;padding:.5rem;font-size:.8rem}.controls-panel .pendulum-remove-button:not(:disabled):hover,.controls-panel .pendulum-add-button:not(:disabled):hover{border-color:color-mix(in srgb, var(--foreground) 40%, transparent);color:var(--foreground);background:0 0}.pendulum-charts{flex-direction:column;flex-shrink:0;gap:.75rem;margin:.75rem;display:flex}.pendulum-chart,.pendulum-energy-chart{border:1px solid var(--hairline);background:var(--panel-bg);border-radius:4px;margin:0;padding:.7rem .85rem .4rem}.pendulum-chart-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.4rem;display:flex}.pendulum-chart-title{color:var(--foreground);align-items:center;gap:.35rem;font-size:.82rem;font-weight:600;display:flex}.pendulum-chart-unit{font-family:var(--font-technical);letter-spacing:.04em;color:color-mix(in srgb, var(--foreground) 50%, transparent);font-size:.68rem}.pendulum-chart-legend{flex-wrap:wrap;gap:.2rem .9rem;margin:0 0 .3rem;padding:0;list-style:none;display:flex}.pendulum-chart-legend li{align-items:center;gap:.35rem;display:flex}.pendulum-chart-legend-label{color:color-mix(in srgb, var(--foreground) 65%, transparent);font-size:.7rem}.pendulum-chart-legend-value{font-family:var(--font-technical);font-variant-numeric:tabular-nums;color:var(--foreground);font-size:.74rem}.pendulum-chart-gridline{stroke:var(--hairline);stroke-width:1px}.pendulum-chart-axis{stroke:color-mix(in srgb, var(--foreground) 32%, transparent);stroke-width:1px}.pendulum-chart-tick{font-family:var(--font-technical);fill:color-mix(in srgb, var(--foreground) 50%, transparent);font-size:9px}.pendulum-chart-crosshair{stroke:color-mix(in srgb, var(--foreground) 35%, transparent);stroke-width:1px;stroke-dasharray:3 3}.pendulum-chart-line{stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.pendulum-chart-line-1{stroke:var(--pendulum-1)}.pendulum-chart-line-2{stroke:var(--pendulum-2)}.pendulum-chart-line-3{stroke:var(--pendulum-3)}.pendulum-chart-dot-ring{fill:var(--panel-bg)}.pendulum-chart-dot-1{fill:var(--pendulum-1)}.pendulum-chart-dot-2{fill:var(--pendulum-2)}.pendulum-chart-dot-3{fill:var(--pendulum-3)}.pendulum-energy-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;display:grid}.pendulum-energy-legend{gap:.2rem .75rem}.pendulum-energy-area{stroke:var(--panel-bg);stroke-width:2px}.pendulum-energy-area-kinetic{fill:color-mix(in srgb, var(--energy-kinetic) 72%, transparent)}.pendulum-energy-area-potential{fill:color-mix(in srgb, var(--energy-potential) 72%, transparent)}.pendulum-energy-total{stroke:var(--foreground);stroke-width:2px;stroke-linejoin:round}.pendulum-energy-note{color:color-mix(in srgb, var(--foreground) 62%, transparent);margin:.15rem 0 .35rem;font-size:.7rem;line-height:1.5}.pendulum-stats{min-width:250px}.pendulum-stats-meta{font-family:var(--font-technical);color:color-mix(in srgb, var(--foreground) 60%, transparent);flex-wrap:wrap;gap:.15rem .6rem;margin-bottom:.4rem;font-size:.66rem;display:flex}.pendulum-stats-table,.pendulum-comparison-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.pendulum-stats-table th,.pendulum-stats-table td{text-align:right;padding:.15rem .2rem;font-size:.72rem}.pendulum-stats-table thead th{color:color-mix(in srgb, var(--foreground) 55%, transparent);font-weight:500}.pendulum-stats-table thead th small{font-family:var(--font-technical);font-size:.58rem;display:block}.pendulum-stats-table td{font-family:var(--font-technical)}.pendulum-stats-name{text-align:left;align-items:center;gap:.3rem;display:flex}.pendulum-comparison,.pendulum-analysis{border:1px solid var(--hairline);background:var(--panel-bg);border-radius:4px;flex-shrink:0;margin:0 .75rem .75rem;padding:.9rem 1rem}.pendulum-section-heading{margin:0 0 .4rem;font-size:.9rem;font-weight:600}.pendulum-section-lead,.pendulum-section-note{color:color-mix(in srgb, var(--foreground) 72%, transparent);margin:0 0 .6rem;font-size:.78rem;line-height:1.6}.pendulum-section-note{margin:.6rem 0 0}.pendulum-table-scroll{overflow-x:auto}.pendulum-comparison-table th,.pendulum-comparison-table td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--hairline);padding:.3rem .45rem;font-size:.76rem}.pendulum-comparison-table thead th{color:color-mix(in srgb, var(--foreground) 55%, transparent);font-weight:500}.pendulum-comparison-table thead th small{font-family:var(--font-technical);font-size:.6rem;display:block}.pendulum-comparison-table tbody td{font-family:var(--font-technical)}.pendulum-comparison-table tbody th{text-align:left;align-items:center;gap:.3rem;display:flex}.pendulum-row-large-angle{background:color-mix(in srgb, var(--force) 8%, transparent)}.pendulum-analysis-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;display:grid}.pendulum-analysis-card{border:1px solid var(--hairline);border-radius:4px;padding:.7rem .8rem}.pendulum-analysis-card header{margin-bottom:.35rem;font-size:.8rem}.pendulum-analysis-card p{color:color-mix(in srgb, var(--foreground) 78%, transparent);margin:0 0 .4rem;font-size:.76rem;line-height:1.65}.pendulum-analysis-card p:last-child{margin-bottom:0}.pendulum-analysis-caveat{border-left:2px solid color-mix(in srgb, var(--force) 55%, transparent);padding-left:.5rem}.pendulum-concept-chips{flex-wrap:wrap;gap:.35rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.pendulum-concept-chips li{border:1px solid var(--hairline);color:color-mix(in srgb, var(--foreground) 70%, transparent);border-radius:999px;padding:.15rem .5rem;font-size:.68rem}.pendulum-chart svg,.pendulum-energy-chart svg{width:100%;height:auto;display:block}@keyframes aurora{0%{background-position:50%,50%}to{background-position:350%,350%}}.aurora-scope{isolation:isolate;position:relative}.aurora-layer{--aurora-white:repeating-linear-gradient(100deg, #fff 0%, #fff 7%, transparent 10%, transparent 12%, #fff 16%);--aurora:repeating-linear-gradient(100deg, #3b82f6 10%, #a5b4fc 15%, #93c5fd 20%, #ddd6fe 25%, #60a5fa 30%);z-index:0;pointer-events:none;opacity:.72;will-change:transform;filter:blur(10px)invert();background-image:var(--aurora-white), var(--aurora);background-position:50%,50%;background-size:300%,200%;position:absolute;inset:-10px;-webkit-mask-image:radial-gradient(at 100% 0,#000 25%,#0000 80%);mask-image:radial-gradient(at 100% 0,#000 25%,#0000 80%)}.aurora-layer:after{content:"";background-image:var(--aurora-white), var(--aurora);mix-blend-mode:difference;background-size:200%,100%;background-attachment:fixed;animation:60s linear infinite aurora;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.aurora-layer:after{animation:none}}.landing-inner{z-index:1;position:relative}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-line);border-radius:var(--glass-radius);box-shadow:var(--glass-shadow), inset 0 1px 0 #ffffffe6;position:relative}.glass-panel-head{font-family:var(--font-plex-mono), monospace;letter-spacing:.16em;color:var(--muted);border-bottom:1px solid #1d4ed81f;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.75rem;font-size:.68rem;font-weight:500;display:flex}.glass-panel-live{color:var(--green)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.demo-page{max-width:1440px;margin:0 auto;padding:2.5rem 3rem 0;position:relative}.demo-hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:2.75rem;padding:1rem 0 3.5rem;display:grid}.demo-hero-eyebrow{font-family:var(--font-plex-mono), monospace;letter-spacing:.2em;color:var(--blue);margin:0 0 1.25rem;font-size:.72rem}.demo-hero-display{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:0 0 1.9rem;font-size:clamp(3.4rem,7.6vw,6.9rem);font-weight:900;line-height:.98}.demo-hero-headline{letter-spacing:-.01em;word-break:keep-all;text-wrap:pretty;margin:0 0 1rem;font-size:clamp(1.3rem,2.2vw,1.625rem);font-weight:800;line-height:1.45}.demo-hero-accent{color:var(--blue)}.demo-hero-subtext{color:var(--body-text);word-break:keep-all;text-wrap:pretty;max-width:30rem;margin:0 0 2.1rem;font-size:.94rem;line-height:1.8}.demo-hero-actions{flex-wrap:wrap;align-items:center;gap:1.4rem;display:flex}.demo-hero-run{background:var(--blue);color:#fff;text-align:center;border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.25rem;width:140px;height:140px;transition:background .2s,transform .15s;display:flex;box-shadow:0 22px 42px #1d4ed852}.demo-hero-run:hover{background:var(--blue-deep);color:#fff;transform:scale(1.04)}.demo-hero-run:focus-visible{outline:2px solid var(--blue-deep);outline-offset:4px}.demo-hero-run-label{font-size:.875rem;font-weight:700}.demo-hero-run-sub{font-family:var(--font-plex-mono), monospace;letter-spacing:.1em;font-size:.68rem}.demo-hero-meta{font-family:var(--font-plex-mono), monospace;letter-spacing:.08em;color:var(--body-text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-line);background:#fff9;border-radius:18px;flex-direction:column;gap:.4rem;padding:1rem 1.25rem;font-size:.68rem;display:flex;box-shadow:0 10px 24px #3c5ab41a}.demo-hero-difficulty{align-items:center;gap:.5rem;display:inline-flex}.demo-hero-visual{min-width:0}.schematic{background:var(--glass-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-line);border-radius:var(--glass-radius);padding-bottom:1.1rem;position:relative;overflow:hidden;box-shadow:0 30px 60px #3c5ab426,inset 0 1px #ffffffe6}.schematic-figure{fill:none;stroke-linecap:round;width:100%;height:auto;display:block}.schematic-node{fill:var(--ink);stroke:none}.schematic-drop{stroke:#5a64788c;stroke-width:2px;stroke-dasharray:6 8}.schematic-arc{stroke:var(--blue);stroke-width:3px;stroke-dasharray:1 9;opacity:.85}.schematic-arc.swing{stroke:#9db0d6;stroke-width:2.5px;stroke-dasharray:2 8}.schematic-ground{stroke:#c3cde4;stroke-width:2px}.schematic-rod{stroke:var(--ink);stroke-width:2.5px}.schematic-rod.ghost{opacity:.2}.schematic-angle{stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:3 4}.schematic-ball{stroke:none}.schematic-ball.vertical{fill:#2f6bff}.schematic-ball.projectile{fill:#e04b1f}.schematic-ball.rest{fill:#2f6bff;opacity:.22}.schematic-ball.ghost{fill:#e04b1f;opacity:.28}.schematic-label{font-family:var(--font-plex-mono), monospace;letter-spacing:.1em;fill:var(--muted);stroke:none;font-size:12px}.schematic-label.accent{fill:var(--blue)}.schematic-vector{stroke:var(--blue);stroke-width:3px;fill:none}.schematic-vector.warm{stroke:#e04b1f}.schematic-vector.resultant{stroke-width:5px}.schematic-surface{stroke:#c3cde4;stroke-width:2.5px;fill:#ffffff8c}.schematic-tube{stroke:#9db0d6;stroke-width:3px;fill:none}.schematic-barrier{stroke:var(--ink);stroke-width:6px;stroke-linecap:butt}.schematic-dot{fill:#2f6bff;stroke:none}.schematic-dot.warm{fill:#e04b1f}.schematic-charge{stroke-width:2.5px}.schematic-charge.pos{fill:#e04b1f29;stroke:#e04b1f}.schematic-charge.neg{fill:#2f6bff29;stroke:#2f6bff}.schematic-sign{stroke:var(--ink);stroke-width:3.5px}.schematic-gauge{stroke:var(--blue);stroke-width:7px;stroke-linecap:round}.schematic-band{fill:var(--blue);opacity:.45;stroke:none}.schematic-band.bright{opacity:1}.schematic-pill{width:fit-content;font-family:var(--font-plex-mono), monospace;letter-spacing:.08em;color:var(--blue);background:var(--blue-soft);border-radius:999px;margin:0 auto;padding:.45rem .9rem;font-size:.75rem;font-weight:600;display:block}.schematic-readout{font-family:var(--font-plex-mono), monospace;color:var(--muted);justify-content:space-between;gap:.75rem;margin:1.25rem 1.5rem 0;font-size:.68rem;display:flex}.schematic-readout>div{gap:.35rem;display:flex}.schematic-readout dd{font-variant-numeric:tabular-nums;margin:0}.schematic-readout .accent,.schematic-readout .accent dd{color:var(--amber)}.theory-card{margin-bottom:2.75rem}.theory-card-body{grid-template-columns:1.2fr .8fr;gap:2.5rem;padding:2.1rem 1.75rem;display:grid}.theory-card-prose{color:#2a3242;word-break:keep-all;text-wrap:pretty;min-width:0;font-size:.97rem;line-height:1.95}.theory-card-prose .page-guide{max-width:none;margin:0;padding:0;display:block}.theory-card-prose .concept-guide,.theory-card-prose .usage-guide{box-shadow:none;background:0 0;border:none;border-radius:0;margin:0;padding:0}.theory-card-prose .usage-guide{border-top:1px solid #1d4ed81f;margin-top:1.75rem;padding-top:1.5rem}.theory-card-prose h2{font-size:.72rem;font-family:var(--font-plex-mono), monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 .9rem;font-weight:600}.theory-card-prose p{margin:0 0 .9rem}.theory-card-prose p:last-child{margin-bottom:0}.theory-card-prose ol{flex-direction:column;gap:.75rem;margin:0;padding-left:1.15rem;display:flex}.theory-card-prose li{padding-left:.25rem}.theory-card-prose li::marker{color:var(--blue);font-family:var(--font-plex-mono), monospace;font-size:.85em}.theory-card-prose .usage-guide ol{padding-left:1.35rem;list-style:decimal}.theory-card-prose .usage-guide li{padding-left:.25rem}.theory-card-prose .usage-guide li:before,.theory-card-prose .usage-guide li:after{content:none}.theory-card-prose strong{color:var(--ink);font-weight:700}.theory-card-prose code,.theory-card-prose em{color:var(--blue);background:var(--blue-soft);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:999px;padding:.12em .6em;font-size:.88em;font-style:normal}.theory-card-prose code{white-space:nowrap;display:inline-block}.theory-card-prose em{white-space:normal;word-break:keep-all}@font-face{font-family:Plex Mono Symbols;src:local(Menlo),local(Consolas),local(DejaVu Sans Mono),local(Liberation Mono),local(Courier New);unicode-range:U+370-3FF,U+2070-209F,U+2190-21FF,U+22??}.theory-formula-expr,.theory-card-prose code,.theory-card-prose em{font-family:"Plex Mono Symbols", var(--font-plex-mono), monospace}.theory-card-formulas{font-family:var(--font-plex-mono), monospace;flex-direction:column;gap:.65rem;display:flex}.theory-formula{background:#ffffffd9;border:1px solid #dbe1f0;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.15rem;display:flex}.theory-formula-label{letter-spacing:.14em;color:var(--muted);font-size:.62rem}.theory-formula-expr{color:var(--ink);font-size:1rem}.theory-formula.emphasis{background:var(--blue);border-color:var(--blue);box-shadow:0 12px 26px #1d4ed847}.theory-formula.emphasis .theory-formula-label{color:#ffffffb3}.theory-formula.emphasis .theory-formula-expr{color:#fff}.simulator-mount{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff80;margin-bottom:3rem}.simulator-mount-body{padding:1.5rem}.demo-nav-band{border-top:1px solid var(--hairline);flex-direction:column;display:flex}.demo-nav-link{color:var(--ink);justify-content:space-between;align-items:center;gap:1.5rem;padding:1.6rem .5rem;transition:background .18s,color .18s,padding .18s;display:flex}.demo-nav-link+.demo-nav-link{border-top:1px solid var(--hairline)}.demo-nav-link:hover{background:var(--blue);color:#fff;padding-left:1.5rem;padding-right:1.5rem}.demo-nav-kicker{font-family:var(--font-plex-mono), monospace;letter-spacing:.16em;opacity:.6;font-size:.68rem}.demo-nav-title{align-items:center;gap:1rem;display:flex}.demo-nav-name{word-break:keep-all;font-size:1.35rem;font-weight:800}.demo-nav-arrow{font-family:var(--font-plex-mono), monospace;font-size:1.25rem}.demo-nav-link.prev{flex-direction:row-reverse}@media (max-width:900px){.demo-page{padding:1.5rem 1.25rem 0}.demo-hero{grid-template-columns:minmax(0,1fr);gap:2rem;padding-bottom:2.5rem}.theory-card-body{grid-template-columns:minmax(0,1fr);gap:1.75rem;padding:1.5rem 1.25rem}.simulator-mount-body{padding:.75rem}.demo-nav-name{font-size:1.1rem}}.site-footer{background:var(--background);border-top:1px solid var(--hairline);margin-top:auto}.site-footer-inner{flex-wrap:wrap;align-items:center;gap:1.25rem;max-width:1440px;margin:0 auto;padding:1.625rem 3rem;display:flex}.site-footer-mark{font-family:var(--font-plex-mono), monospace;letter-spacing:.12em;color:var(--muted);font-size:.72rem}.site-footer-note{color:var(--faint);font-size:.8rem}.site-footer-orb{background:radial-gradient(circle at 30% 30%,#ff9d7e,#e04b1f 60%,#8f2405);border-radius:50%;width:10px;height:10px;margin-left:auto;box-shadow:0 4px 8px #e04b1f4d}@media (max-width:640px){.site-footer-inner{padding:1.25rem}}.theory-card-prose .refraction-concept h2{font-family:var(--font-plex-sans-kr), sans-serif;letter-spacing:-.01em;text-transform:none;color:inherit;margin:0 0 .7rem;font-size:1.02rem;font-weight:700}.standing-wave-layout{--standing-envelope:#4c8fe0;--standing-node:#e0563f;grid-template-columns:300px minmax(0,1fr);grid-template-areas:"controls stage""controls curve";align-items:start;gap:1.25rem;display:grid}.standing-wave-controls{grid-area:controls}.standing-wave-stage{grid-area:stage;position:relative}.standing-wave-curve{grid-area:curve;margin:0}@media (max-width:900px){.standing-wave-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"stage""controls""curve"}}.standing-wave-canvas{width:100%;height:46dvh;min-height:260px}.standing-wave-canvas>div{height:100%}.standing-wave-overlay{gap:.4rem;display:grid}.standing-wave-readout{justify-content:space-between;gap:1rem;display:flex}.standing-wave-readout-label{opacity:.7}.standing-wave-readout-value{font-family:var(--font-plex-mono), monospace}.standing-wave-badge{border:1px solid var(--hairline);border-radius:999px;justify-self:start;padding:.25rem .6rem;font-weight:700}.standing-wave-badge[data-resonant=true]{color:var(--standing-node);border-color:var(--standing-node)}.standing-wave-controls .control-row{grid-template-columns:1fr auto;align-items:center;gap:.35rem .75rem;display:grid}.standing-wave-controls .control-row input[type=range]{grid-column:1/-1}.standing-wave-controls .control-row output{font-family:var(--font-plex-mono), monospace;text-align:right;font-size:.85rem;font-weight:600}.standing-wave-controls .control-row-stacked{grid-template-columns:1fr;align-items:normal;gap:.5rem;display:grid}.standing-wave-controls .control-row-stacked>span{font-family:var(--font-plex-mono), monospace;color:var(--foreground);font-size:.85rem;font-weight:600}.standing-wave-controls .control-row-stacked input[type=number]{width:100%}.standing-wave-density-presets{flex-wrap:wrap;gap:.5rem;display:flex}.controls-panel .standing-wave-preset{font-family:var(--font-technical);letter-spacing:.02em;text-transform:none;border:1px solid var(--hairline);background:var(--background);color:color-mix(in srgb, var(--foreground) 70%, transparent);box-shadow:none;cursor:pointer;border-radius:3px;margin-top:0;padding:.5rem .7rem;font-size:.8rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.controls-panel .standing-wave-preset:before{content:none}.controls-panel .standing-wave-preset:not(:disabled):hover{border-color:color-mix(in srgb, var(--blue) 50%, var(--hairline));background:var(--background)}.controls-panel .standing-wave-preset[aria-pressed=true]{background:color-mix(in srgb, var(--blue) 16%, transparent);border-color:var(--blue);color:var(--foreground)}.standing-wave-curve svg{width:100%;height:auto}.standing-wave-grid{stroke:var(--hairline);stroke-width:1px}.standing-wave-axis{stroke:var(--foreground);stroke-width:1.2px;opacity:.55}.standing-wave-curve-line{fill:none;stroke:var(--standing-envelope);stroke-width:2.2px}.standing-wave-resonance-mark{stroke:var(--standing-node);stroke-width:1px;stroke-dasharray:3 4;opacity:.5}.standing-wave-cursor{stroke:var(--foreground);stroke-width:1.6px}.standing-wave-tick,.standing-wave-axis-label,.standing-wave-mode-label{fill:var(--foreground);opacity:.65;font-size:13px}.schematic-standing-envelope{fill:none;stroke:var(--standing-envelope,#4c8fe0);stroke-width:2px;opacity:.55}.schematic-node.standing{fill:var(--standing-node,#e0563f)}.standing-wave-slowdown{border-top:1px solid var(--hairline);opacity:.6;max-width:22rem;margin:.5rem 0 0;padding-top:.5rem;font-size:.72rem;line-height:1.5}.beats-layout{--beats-envelope:#4c8fe0;--beats-source-1:#1d4ed8;--beats-source-2:#e0563f;grid-template-columns:300px minmax(0,1fr);grid-template-areas:"controls stage""moments moments";align-items:start;gap:1.25rem;display:grid}.beats-controls{grid-area:controls}.beats-stage{grid-area:stage;gap:1rem;display:grid}.beats-moments{grid-area:moments}@media (max-width:900px){.beats-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"stage""controls""moments"}}.beats-controls .beats-row{grid-template-columns:1fr auto;align-items:center;gap:.35rem .75rem;display:grid}.beats-controls .beats-row input[type=range]{grid-column:1/-1}.beats-controls .beats-row output{font-family:var(--font-plex-mono), monospace;text-align:right;font-size:.85rem;font-weight:600}.beats-audio{border-top:1px solid var(--hairline);margin-top:1.1rem;padding-top:1rem}.controls-panel .beats-audio-button{width:100%;font-family:var(--font-technical);letter-spacing:.02em;text-transform:none;border:1px solid var(--hairline);background:var(--background);color:var(--foreground);box-shadow:none;cursor:pointer;border-radius:3px;margin-top:0;padding:.6rem .8rem;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s}.controls-panel .beats-audio-button:before{content:"♪ "}.controls-panel .beats-audio-button[aria-pressed=true]{background:color-mix(in srgb, var(--blue) 16%, transparent);border-color:var(--blue)}.controls-panel .beats-audio-button:disabled{opacity:.45;cursor:not-allowed}.beats-audio-note{opacity:.6;margin:.5rem 0 0;font-size:.72rem;line-height:1.5}.beats-chart,.beats-moment{margin:0}.beats-chart svg,.beats-moment svg{width:100%;height:auto}.beats-chart figcaption,.beats-moments h3{font-family:var(--font-technical);letter-spacing:.04em;text-transform:uppercase;opacity:.65;margin:0 0 .6rem;font-size:.8rem;font-weight:600}.beats-grid{stroke:var(--hairline);stroke-width:1px}.beats-axis{stroke:var(--foreground);stroke-width:1.2px;opacity:.5}.beats-limit{stroke:var(--hairline);stroke-width:1px;stroke-dasharray:3 4}.beats-envelope-band{fill:color-mix(in srgb, var(--beats-envelope,#4c8fe0) 14%, transparent);stroke:none}.beats-envelope-line{fill:none;stroke:var(--beats-envelope,#4c8fe0);stroke-width:1.6px;opacity:.75}.beats-wave{fill:none;stroke:var(--foreground);stroke-width:1.1px}.beats-source{fill:none;stroke-width:1.8px}.beats-source-1{stroke:var(--beats-source-1,#1d4ed8)}.beats-source-2{stroke:var(--beats-source-2,#e0563f)}.beats-tick,.beats-axis-label,.beats-moment-row-label{fill:var(--foreground);opacity:.6;font-size:12px}.beats-moment-row-label{font-family:var(--font-technical);letter-spacing:.04em}.beats-period-mark line{stroke:var(--beats-envelope,#4c8fe0);stroke-width:1.4px}.beats-period-label{fill:var(--beats-envelope,#4c8fe0);font-size:12px;font-weight:600}.beats-moments-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem;display:grid}.beats-moment figcaption{opacity:.75;margin:0 0 .5rem;font-size:.78rem;line-height:1.6}.beats-moment-badge{border:1px solid var(--hairline);opacity:1;border-radius:999px;margin-right:.5rem;padding:.15rem .5rem;font-weight:700;display:inline-block}.beats-moment-badge[data-constructive=true]{color:var(--beats-source-1,#1d4ed8);border-color:var(--beats-source-1,#1d4ed8)}.beats-moment-badge[data-constructive=false]{color:var(--beats-source-2,#e0563f);border-color:var(--beats-source-2,#e0563f)}.beats-moments-empty{opacity:.65;font-size:.85rem}.beats-overlay{border:1px solid var(--hairline);background:color-mix(in srgb, var(--panel-bg) 88%, transparent);border-radius:4px;flex-wrap:wrap;align-items:center;gap:.75rem 1.75rem;padding:.85rem 1.1rem;font-size:.82rem;display:flex}.beats-readout{align-items:baseline;gap:.5rem;display:flex}.beats-readout-label{opacity:.7}.beats-readout-value{font-family:var(--font-plex-mono), monospace}.beats-badge{border:1px solid var(--hairline);white-space:nowrap;border-radius:999px;padding:.25rem .6rem;font-weight:700}.beats-badge[data-tone=beat]{color:var(--beats-source-1,#1d4ed8);border-color:var(--beats-source-1,#1d4ed8)}.beats-badge[data-tone=far]{color:var(--beats-source-2,#e0563f);border-color:var(--beats-source-2,#e0563f)}.beats-note{border-top:1px solid var(--hairline);opacity:.65;flex-basis:100%;margin:0;padding-top:.6rem;font-size:.72rem;line-height:1.5}.schematic-beats-envelope{fill:none;stroke:#4c8fe0;stroke-width:2px;opacity:.55}.schematic-node.beats{fill:#e0563f}.kepler-shell{flex-direction:column;gap:1.25rem;scroll-margin-top:90px;display:flex}[data-body=mercury]{--body-color:#8a8178}[data-body=venus]{--body-color:#d99b3f}[data-body=earth]{--body-color:#2f7fd6}[data-body=mars]{--body-color:#c9502f}[data-body=jupiter]{--body-color:#b5793f}[data-body=saturn]{--body-color:#cbab5e}[data-body=uranus]{--body-color:#4fb3c4}[data-body=neptune]{--body-color:#3350c4}[data-body=pluto]{--body-color:#7d6f8f}[data-body=halley]{--body-color:#1f9e6e}.kepler-body-dot{background:var(--body-color,var(--blue));border-radius:50%;block-size:.62rem;inline-size:.62rem;margin-inline-end:.4rem;display:inline-block}.kepler-law-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.kepler-law-tab{text-align:start;border:1px solid var(--card-line);background:var(--panel-bg);cursor:pointer;border-radius:14px;flex-direction:column;gap:.25rem;padding:.9rem 1rem;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.kepler-law-tab:hover{border-color:color-mix(in srgb, var(--blue) 45%, var(--card-line))}.kepler-law-tab.is-active{border-color:var(--blue);background:var(--blue-tint);box-shadow:0 10px 24px #1d4ed824}.kepler-law-tab-ordinal{font-family:var(--font-technical);letter-spacing:.12em;color:var(--blue);font-size:.68rem;font-weight:700}.kepler-law-tab-name{color:var(--ink);font-size:.98rem;font-weight:700}.kepler-law-tab-summary{color:var(--body-text);font-size:.76rem;line-height:1.45}@media (max-width:780px){.kepler-law-tabs{grid-template-columns:minmax(0,1fr)}}.kepler-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.kepler-stage-column{flex-direction:column;gap:1.25rem;min-width:0;display:flex}@media (max-width:900px){.kepler-layout{grid-template-columns:minmax(0,1fr)}}.kepler-controls-panel{border:1px solid var(--card-line);border-radius:18px;width:auto;overflow:visible}.kepler-body-picker{border:none;margin:0;padding:0}.kepler-body-picker legend{font-family:var(--font-technical);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.55rem;padding:0;font-size:.7rem;font-weight:700}.kepler-body-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;display:grid}.controls-panel .kepler-body-button{font-family:var(--font-plex-sans-kr);letter-spacing:normal;text-transform:none;border:1px solid var(--hairline);background:var(--background);color:var(--foreground);box-shadow:none;cursor:pointer;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.1rem;margin-top:0;padding:.45rem .55rem;font-size:.8rem;font-weight:600;transition:border-color .15s,background .15s;display:flex}.controls-panel .kepler-body-button:before{content:none}.controls-panel .kepler-body-button:not(:disabled):hover{background:var(--panel-bg);border-color:var(--body-color,var(--blue))}.controls-panel .kepler-body-button.is-active:not(:disabled){border-color:var(--body-color,var(--blue));background:color-mix(in srgb, var(--body-color,var(--blue)) 12%, var(--panel-bg));box-shadow:inset 0 0 0 1px var(--body-color,var(--blue))}.kepler-body-name{align-items:center;display:flex}.kepler-body-sub{font-family:var(--font-technical);color:var(--muted);font-variant-numeric:tabular-nums;font-size:.62rem;font-weight:500}.kepler-slider-label{flex-direction:column;gap:.4rem;display:flex}.kepler-slider-heading{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.kepler-slider-value{font-family:var(--font-technical);color:var(--blue);font-variant-numeric:tabular-nums;font-weight:700}.kepler-exaggeration-badge{color:var(--body-text);background:var(--blue-tint);border:1px solid var(--blue-soft);border-radius:10px;margin:0;padding:.6rem .7rem;font-size:.74rem;line-height:1.55}.kepler-exaggeration-badge strong{font-family:var(--font-technical);color:var(--blue-deep);font-variant-numeric:tabular-nums}.kepler-playback{flex-direction:column;gap:.55rem;display:flex}.kepler-playback-row{gap:.5rem;display:flex}.kepler-speed-row{gap:.35rem;display:flex}.controls-panel .kepler-speed-button{font-family:var(--font-technical);letter-spacing:normal;text-transform:none;border:1px solid var(--hairline);background:var(--background);color:var(--foreground);box-shadow:none;cursor:pointer;border-radius:6px;flex:1;margin-top:0;padding:.4rem .2rem;font-size:.76rem;font-weight:600}.controls-panel .kepler-speed-button:before{content:none}.controls-panel .kepler-speed-button.is-active{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-deep)}.kepler-stage{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:18px;padding:.5rem}.kepler-orbit-svg{fill:none;stroke-linecap:round;width:100%;height:auto;display:block}.kepler-orbit-path{fill:none;stroke:var(--foreground);stroke-width:1.6px;opacity:.55}.kepler-axis{stroke:var(--foreground);stroke-width:1px;stroke-dasharray:4 5;opacity:.3}.kepler-axis-label,.kepler-apsis-label,.kepler-focus-label,.kepler-sector-label{font-family:var(--font-technical);letter-spacing:.06em;fill:var(--muted);stroke:none;font-size:12px}.kepler-focus-label.sun{fill:var(--amber);font-weight:600}.kepler-focal-ray{stroke-width:2.2px}.kepler-focal-ray.primary{stroke:var(--blue)}.kepler-focal-ray.secondary{stroke:var(--amber);stroke-dasharray:6 4}.kepler-ray-label{font-family:var(--font-technical);stroke:none;font-size:13px;font-weight:700}.kepler-ray-label.primary{fill:var(--blue)}.kepler-ray-label.secondary{fill:var(--amber)}.kepler-apsis{fill:var(--foreground);stroke:none;opacity:.55}.kepler-empty-focus{fill:var(--panel-bg);stroke:var(--amber);stroke-width:2px;stroke-dasharray:3 3}.kepler-sun{fill:var(--amber);stroke:none}.kepler-sun-glow{fill:var(--amber);opacity:.16;stroke:none}.kepler-planet{fill:var(--blue);stroke:var(--panel-bg);stroke-width:2px}.kepler-sector{stroke:none}.kepler-sector.perihelion,.kepler-sector.aphelion{fill:var(--blue);opacity:.2}.kepler-sector.trailing{fill:var(--amber);opacity:.42}.kepler-panel{flex-direction:column;gap:1.1rem;display:flex}.kepler-panel h3{color:var(--ink);margin:0 0 .35rem;font-size:.95rem;font-weight:700}.kepler-highlight,.kepler-fact-table,.kepler-note,.kepler-speed-meter,.kepler-inner-system{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:16px;padding:1.1rem 1.25rem}.kepler-sum-bar{border:1px solid var(--hairline);border-radius:6px;block-size:2.1rem;inline-size:100%;margin:.6rem 0 .7rem;display:flex;overflow:hidden}.kepler-sum-segment{min-inline-size:0;font-family:var(--font-technical);color:#fff;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:flex;overflow:hidden}.kepler-sum-segment.primary{background:var(--blue)}.kepler-sum-segment.secondary{background:var(--amber)}.kepler-sum-readout{color:var(--body-text);flex-wrap:wrap;gap:.4rem 1.1rem;margin:0;font-size:.8rem;display:flex}.kepler-sum-readout strong{font-family:var(--font-technical);color:var(--ink);font-variant-numeric:tabular-nums}.kepler-sum-readout .accent,.kepler-sum-readout .accent strong{color:var(--blue-deep);font-weight:700}.kepler-formula-strip{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.6rem;display:grid}.kepler-formula-strip>div{border:1px solid var(--blue-soft);background:var(--blue-tint);border-radius:12px;flex-direction:column;gap:.2rem;padding:.7rem .9rem;display:flex}.kepler-formula-label{font-family:var(--font-technical);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.62rem;font-weight:700}.kepler-formula-expr{font-family:var(--font-technical);color:var(--blue-deep);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:700}.kepler-fact-caption{color:var(--muted);margin:0 0 .7rem;font-size:.74rem}.kepler-fact-table dl,.kepler-inner-legend{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.5rem;margin:0;display:grid}.kepler-fact-table dl>div,.kepler-inner-legend>div{background:var(--background);border-radius:10px;flex-direction:column;gap:.15rem;padding:.55rem .7rem;display:flex}.kepler-fact-table dt,.kepler-inner-legend dt{color:var(--muted);align-items:center;font-size:.7rem;display:flex}.kepler-fact-table dd,.kepler-inner-legend dd{font-family:var(--font-technical);color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:.92rem;font-weight:700}.kepler-fact-table .accent,.kepler-inner-legend .is-selected{background:var(--blue-tint)}.kepler-fact-table .accent dd{color:var(--blue-deep)}.kepler-sector-compare{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.7rem;margin:.6rem 0 .7rem;display:grid}.kepler-sector-card{border:1px solid var(--card-line);background:var(--background);border-radius:12px;flex-direction:column;gap:.3rem;padding:.8rem .9rem;display:flex}.kepler-sector-card.perihelion,.kepler-sector-card.aphelion{border-color:color-mix(in srgb, var(--blue) 40%, var(--card-line))}.kepler-sector-card-title{color:var(--muted);font-size:.72rem}.kepler-sector-card-area{font-family:var(--font-technical);color:var(--blue-deep);font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:700}.kepler-sector-card dl{flex-wrap:wrap;gap:.2rem .9rem;margin:0;display:flex}.kepler-sector-card dl>div{color:var(--body-text);gap:.3rem;font-size:.72rem;display:flex}.kepler-sector-card dt{color:var(--muted)}.kepler-sector-card dd{font-family:var(--font-technical);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.kepler-sector-equals{font-family:var(--font-display);color:var(--blue);text-align:center;font-size:1.8rem;font-weight:700}@media (max-width:640px){.kepler-sector-compare{grid-template-columns:minmax(0,1fr)}}.kepler-speed-track{background:var(--background);border:1px solid var(--hairline);border-radius:999px;block-size:.85rem;inline-size:100%;margin:.5rem 0;position:relative;overflow:hidden}.kepler-speed-fill{background:linear-gradient(90deg, var(--velocity), var(--force));block-size:100%;display:block}.kepler-speed-mean-mark{background:var(--ink);opacity:.45;inline-size:2px;position:absolute;inset-block:0;inset-inline-start:50%}.kepler-speed-readout{color:var(--body-text);align-items:baseline;gap:.7rem;margin:0;font-size:.82rem;display:flex}.kepler-speed-readout strong{font-family:var(--font-technical);color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.05rem}.kepler-speed-hint{color:var(--muted);font-size:.74rem}.kepler-note ul{flex-direction:column;gap:.65rem;margin:0;padding-inline-start:1.1rem;display:flex}.kepler-note li{color:var(--body-text);font-size:.84rem;line-height:1.65}.kepler-note li::marker{color:var(--blue)}.kepler-note strong{color:var(--ink)}.kepler-note code{font-family:var(--font-technical);color:var(--blue-deep);background:var(--blue-tint);border-radius:4px;padding:.05rem .3rem;font-size:.86em}.kepler-third-law{flex-direction:column;gap:.8rem;display:flex}.kepler-chart-frame{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:18px;padding:.5rem}.kepler-third-law-svg{fill:none;stroke-linecap:round;width:100%;height:auto;display:block}.kepler-chart-grid{stroke:var(--hairline);stroke-width:1px}.kepler-chart-axis{stroke:var(--foreground);stroke-width:1.4px;opacity:.6}.kepler-chart-identity{stroke:var(--blue);stroke-width:2px;stroke-dasharray:7 5;opacity:.55}.kepler-chart-identity-label{font-family:var(--font-technical);fill:var(--blue);stroke:none;font-size:15px;font-weight:700}.kepler-chart-tick{font-family:var(--font-technical);fill:var(--muted);stroke:none;font-size:11px}.kepler-chart-axis-title{font-family:var(--font-technical);letter-spacing:.08em;fill:var(--body-text);stroke:none;font-size:12px}.kepler-chart-hit{fill:#0000;stroke:none;cursor:pointer}.kepler-chart-dot{fill:var(--body-color,var(--blue));stroke:var(--panel-bg);stroke-width:1.5px;pointer-events:none}.kepler-chart-point.is-selected .kepler-chart-dot{stroke:var(--ink);stroke-width:2.5px}.kepler-chart-point-label{font-family:var(--font-plex-sans-kr);fill:var(--muted);stroke:none;pointer-events:none;font-size:12px}.kepler-chart-point.is-selected .kepler-chart-point-label{fill:var(--ink);font-weight:700}.kepler-chart-caption{color:var(--body-text);margin:0;font-size:.8rem}.kepler-chart-caption code{font-family:var(--font-technical);color:var(--blue-deep)}.kepler-table-scroll{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:16px;overflow-x:auto}.kepler-table{border-collapse:collapse;width:100%;font-size:.8rem}.kepler-table caption{text-align:start;color:var(--muted);padding:.9rem 1rem .5rem;font-size:.78rem}.kepler-table th,.kepler-table td{text-align:end;white-space:nowrap;border-bottom:1px solid var(--hairline);padding:.5rem .85rem}.kepler-table thead th{font-family:var(--font-technical);letter-spacing:.06em;color:var(--muted);font-size:.7rem;font-weight:700}.kepler-table tbody th{text-align:start;color:var(--ink);font-weight:600}.kepler-table thead th:first-child{text-align:start}.kepler-table td{font-family:var(--font-technical);color:var(--body-text);font-variant-numeric:tabular-nums}.kepler-table .accent{color:var(--blue-deep);font-weight:700}.kepler-table tbody tr{cursor:pointer}.kepler-table tbody tr:hover{background:var(--background)}.kepler-table tbody tr.is-selected{background:var(--blue-tint)}.kepler-inner-system-svg{fill:none;width:100%;max-width:420px;height:auto;margin:.6rem auto .9rem;display:block}.kepler-inner-orbit{fill:none;stroke:var(--hairline);stroke-width:1px}.kepler-inner-dot{fill:var(--body-color,var(--blue));stroke:var(--panel-bg);stroke-width:1.5px}.kepler-inner-body.is-selected .kepler-inner-dot{stroke:var(--ink);stroke-width:2.5px}.kepler-inner-body.is-selected .kepler-inner-orbit{stroke:color-mix(in srgb, var(--ink) 35%, var(--hairline))}.kepler-inner-label{font-family:var(--font-plex-sans-kr);fill:var(--muted);stroke:none;font-size:11px}.kepler-inner-body.is-selected .kepler-inner-label{fill:var(--ink);font-weight:700}.schematic-kepler-orbit{fill:none;stroke:var(--ink);stroke-width:2px;opacity:.75}.schematic-kepler-axis{stroke:var(--ink);stroke-width:1px;stroke-dasharray:4 5;opacity:.3}.schematic-kepler-sector{fill:#1d4ed8;opacity:.25;stroke:none}.schematic-kepler-sun{fill:#e07b12;stroke:none}.schematic-kepler-empty-focus{fill:none;stroke:#e07b12;stroke-width:2px;stroke-dasharray:3 3}.schematic-node.kepler-planet{fill:#1d4ed8}.kepler-guide{flex-direction:column;gap:1.1rem;display:flex}.kepler-guide-lead,.kepler-guide-outro{color:var(--body-text);margin:0;font-size:.88rem;line-height:1.75}.kepler-guide-lead strong,.kepler-guide-outro strong{color:var(--ink)}.kepler-guide-outro code,.kepler-guide-lead code{font-family:var(--font-technical);color:var(--blue-deep);background:var(--blue-tint);border-radius:4px;padding:.05rem .3rem;font-size:.88em}.kepler-law-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;display:grid}.kepler-law-card{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:16px;flex-direction:column;gap:.3rem;padding:1rem 1.1rem 1.1rem;display:flex}.kepler-law-card h3{color:var(--ink);margin:0;font-size:.95rem;font-weight:700}.kepler-law-card-ordinal{font-family:var(--font-technical);letter-spacing:.12em;color:var(--blue);font-size:.66rem;font-weight:700}.kepler-law-card-statement{color:var(--ink);margin:0;font-size:.84rem;font-weight:600;line-height:1.6}.kepler-law-card-detail{color:var(--body-text);margin:0;font-size:.8rem;line-height:1.65}.kepler-law-card-formula{font-family:var(--font-technical);color:var(--blue-deep);background:var(--blue-tint);border-radius:999px;align-self:flex-start;margin-top:.35rem;padding:.28rem .6rem;font-size:.82rem;font-weight:700}.kepler-mini-figure{fill:none;width:100%;max-width:180px;height:auto;margin-bottom:.35rem;display:block}.kepler-mini-orbit{fill:none;stroke:var(--foreground);stroke-width:1.4px;opacity:.45}.kepler-mini-focus{fill:none;stroke:var(--amber);stroke-width:1.4px}.kepler-mini-sun{fill:var(--amber);stroke:none}.kepler-mini-planet{fill:var(--blue);stroke:none}.kepler-mini-ray{fill:none;stroke:var(--blue);stroke-width:1.6px}.kepler-mini-ray.dashed{stroke:var(--amber);stroke-dasharray:4 3}.kepler-mini-sector{fill:var(--blue);opacity:.22;stroke:none}.kepler-guide-steps{border:1px solid var(--card-line);background:var(--background);border-radius:16px;padding:1rem 1.2rem 1.1rem}.kepler-guide-steps h3{color:var(--ink);margin:0 0 .6rem;font-size:.9rem;font-weight:700}.kepler-guide-steps ul{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.kepler-guide-steps li{color:var(--body-text);align-items:baseline;gap:.6rem;font-size:.82rem;line-height:1.6;display:flex}.kepler-step-tag{font-family:var(--font-technical);letter-spacing:.06em;color:var(--blue-deep);background:var(--blue-soft);border-radius:999px;flex-shrink:0;padding:.15rem .5rem;font-size:.64rem;font-weight:700}.kepler-note-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.7rem;display:grid}.kepler-note-card{border:1px solid var(--hairline);background:var(--background);border-radius:12px;padding:.8rem .95rem .9rem}.kepler-note-card h4{color:var(--ink);margin:0 0 .3rem;font-size:.82rem;font-weight:700}.kepler-note-card p{color:var(--body-text);margin:0;font-size:.79rem;line-height:1.65}.kepler-note-card strong{color:var(--ink)}.kepler-note-card code{font-family:var(--font-technical);color:var(--blue-deep);background:var(--blue-tint);border-radius:4px;padding:.05rem .3rem;font-size:.88em}.kepler-scope-switch{border:1px solid var(--hairline);background:var(--background);border-radius:999px;gap:.3rem;margin-bottom:.6rem;padding:.22rem;display:inline-flex}.kepler-scope-button{font-family:var(--font-plex-sans-kr);color:var(--body-text);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.35rem .85rem;font-size:.78rem;font-weight:600;transition:background .15s,color .15s}.kepler-scope-button:hover{color:var(--ink)}.kepler-scope-button.is-active{color:#fff;background:var(--blue)}.kepler-basics{margin-top:0}.kepler-basics-body{flex-direction:column;gap:1.6rem;padding:1.5rem;display:flex}.kepler-basics-intro h2{color:var(--ink);margin:0 0 .6rem;font-size:1.15rem;font-weight:700}.kepler-basics-intro p{color:var(--body-text);margin:0 0 .6rem;font-size:.88rem;line-height:1.8}.kepler-basics-intro strong{color:var(--ink)}.kepler-basics-tip{color:var(--blue-deep);background:var(--blue-tint);border-radius:10px;padding:.55rem .8rem;font-size:.82rem}.kepler-basics-figure{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:16px;margin:0;padding:1rem 1rem .9rem}.kepler-basics-figure svg{fill:none;width:100%;max-width:760px;height:auto;margin:0 auto;display:block}.kepler-basics-figure figcaption{color:var(--body-text);text-align:center;margin-top:.6rem;font-size:.82rem;line-height:1.7}.kepler-basics-figure figcaption strong{color:var(--ink)}.kepler-basics-orbit{fill:none;stroke:var(--foreground);stroke-width:2px;opacity:.6}.kepler-basics-sun{fill:var(--amber);stroke:none}.kepler-basics-center{fill:var(--foreground);stroke:none;opacity:.6}.kepler-space-sky{fill:url(#kepler-sky-gradient)}.kepler-sky-stop-top{stop-color:#101841}.kepler-sky-stop-bottom{stop-color:#04060f}.kepler-space-star{fill:#e6ecff;stroke:none}.kepler-space-plane{fill:url(#kepler-plane-gradient);stroke:#4a63b8;stroke-width:1px;stroke-opacity:.35}.kepler-plane-stop-inner{stop-color:#33499b;stop-opacity:.34}.kepler-plane-stop-outer{stop-color:#33499b;stop-opacity:0}.kepler-space-orbit{fill:none;stroke-linecap:round}.kepler-space-orbit.far{stroke:#8fa6e8;stroke-width:1.6px;opacity:.38}.kepler-space-orbit.near{stroke:#d5e4ff;stroke-width:2.4px;opacity:.95}.kepler-space-axis{stroke:#9fb0e0;stroke-width:1px;stroke-dasharray:4 6;opacity:.3}.kepler-space-measure{stroke:#60a5fa;stroke-width:3.5px;stroke-linecap:round;opacity:.95}.kepler-space-measure.accent{stroke:#fbbf24}.kepler-space-radius{stroke:#fcd34d;stroke-width:1.2px;stroke-dasharray:3 4;opacity:.45}.kepler-space-label{font-family:var(--font-technical);letter-spacing:.04em;fill:#b9c6ea;stroke:none;font-size:13px}.kepler-space-label.title{fill:#7f8fbd;letter-spacing:.12em;font-size:12px}.kepler-space-label.measure{fill:#93c5fd;font-weight:700}.kepler-space-label.accent{fill:#fcd34d;font-weight:700}.kepler-space-label.sun{fill:#fcd34d;font-weight:600}.kepler-space-label.planet{fill:#bfdbfe;font-weight:600}.kepler-space-sun{fill:#fbbf24;stroke:none}.kepler-space-sun-glow{fill:url(#kepler-sun-gradient);stroke:none}.kepler-sun-stop-core{stop-color:#fff7d6;stop-opacity:.95}.kepler-sun-stop-mid{stop-color:#fbbf24;stop-opacity:.45}.kepler-sun-stop-edge{stop-color:#f59e0b;stop-opacity:0}.kepler-space-empty-focus{fill:none;stroke:#fcd34d;stroke-width:2px;stroke-dasharray:3 3;opacity:.8}.kepler-space-center{fill:#cbd5f5;stroke:none;opacity:.8}.kepler-space-apsis{fill:#cbd5f5;stroke:none;opacity:.7}.kepler-space-planet{fill:url(#kepler-planet-gradient);stroke:none}.kepler-planet-stop-lit{stop-color:#bfe0ff}.kepler-planet-stop-dark{stop-color:#1e3a8a}.kepler-eccentricity-scale h3,.kepler-term-cards h3{color:var(--ink);margin:0 0 .7rem;font-size:.95rem;font-weight:700}.kepler-eccentricity-row{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.7rem;display:grid}.kepler-eccentricity-item{border:1px solid var(--card-line);background:var(--panel-bg);text-align:center;border-radius:14px;margin:0;padding:.6rem .5rem .7rem}.kepler-eccentricity-item svg{fill:none;width:100%;max-width:150px;height:auto;margin:0 auto;display:block}.kepler-eccentricity-item figcaption{flex-direction:column;gap:.15rem;display:flex}.kepler-eccentricity-item strong{font-family:var(--font-technical);color:var(--blue-deep);font-size:.88rem}.kepler-eccentricity-item span{color:var(--muted);font-size:.74rem}.kepler-eccentricity-note{color:var(--body-text);margin:.7rem 0 0;font-size:.82rem;line-height:1.7}.kepler-eccentricity-note strong{color:var(--ink)}.kepler-term-cards dl{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.7rem;margin:0;display:grid}.kepler-term-cards dl>div{border:1px solid var(--hairline);background:var(--background);border-radius:12px;padding:.8rem .95rem .9rem}.kepler-term-cards dt{color:var(--ink);align-items:baseline;gap:.4rem;margin-bottom:.3rem;font-size:.85rem;font-weight:700;display:flex}.kepler-term-reading{font-family:var(--font-technical);color:var(--faint);font-size:.66rem;font-weight:500}.kepler-term-cards dd{color:var(--body-text);margin:0;font-size:.79rem;line-height:1.7}.kepler-basics-link{color:var(--blue-deep);background:var(--blue-tint);border:1px solid var(--blue-soft);border-radius:10px;padding:.5rem .7rem;font-size:.76rem;font-weight:600;line-height:1.5;transition:background .15s;display:block}.kepler-basics-link:hover{background:var(--blue-soft)}.controls-panel .kepler-all-toggle{width:100%;font-family:var(--font-plex-sans-kr);letter-spacing:normal;text-transform:none;border:1px solid var(--hairline);background:var(--background);color:var(--foreground);box-shadow:none;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.15rem;margin:0 0 .55rem;padding:.5rem .6rem;font-size:.82rem;font-weight:700;display:flex}.controls-panel .kepler-all-toggle:before{content:none}.controls-panel .kepler-all-toggle:not(:disabled):hover{border-color:var(--blue);background:var(--panel-bg)}.controls-panel .kepler-all-toggle.is-active:not(:disabled){border-color:var(--blue);background:color-mix(in srgb, var(--blue) 12%, var(--panel-bg));box-shadow:inset 0 0 0 1px var(--blue);color:var(--blue-deep)}.kepler-all-toggle-sub{color:var(--muted);font-size:.7rem;font-weight:500}.controls-panel .kepler-all-toggle.is-active:not(:disabled) .kepler-all-toggle-sub{color:var(--blue-deep)}.kepler-all-bodies{flex-direction:column;gap:.7rem;display:flex}.kepler-all-orbit{fill:none;stroke:var(--body-color,var(--foreground));stroke-width:1.2px;opacity:.5}.kepler-all-orbit.is-selected{stroke-width:2.4px;opacity:1}.kepler-all-sun{fill:var(--amber);stroke:none}.kepler-all-sun-glow{fill:var(--amber);stroke:none;opacity:.18}.kepler-all-planet{fill:var(--body-color,var(--foreground));stroke:none}.kepler-all-planet.is-selected{stroke:var(--background);stroke-width:2px}.kepler-all-label{font-family:var(--font-technical);letter-spacing:.02em;fill:var(--body-color,var(--muted));stroke:none;opacity:.75;font-size:11px}.kepler-all-label.is-selected{opacity:1;font-weight:700}.kepler-all-legend{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:.3rem .7rem;margin:0;padding:.6rem .7rem;list-style:none;display:grid}.kepler-all-legend li{color:var(--muted);align-items:baseline;gap:.35rem;font-size:.74rem;display:flex}.kepler-all-legend li.is-selected{color:var(--ink);font-weight:700}.kepler-all-legend-dot{background:var(--body-color,var(--foreground));border-radius:50%;flex:none;width:8px;height:8px}.kepler-all-legend-name{flex:auto}.kepler-all-legend-lap{font-family:var(--font-technical);color:var(--muted);font-size:.7rem}.kepler-sector-symbol{font-family:var(--font-technical);letter-spacing:.02em;fill:var(--blue-deep);stroke:none;font-size:17px;font-weight:700}.kepler-sector-equation{font-family:var(--font-technical);letter-spacing:.08em;fill:var(--blue-deep);stroke:none;font-size:19px;font-weight:700}.kepler-sector-equation-note{font-family:var(--font-plex-sans-kr);fill:var(--muted);stroke:none;font-size:12px}.kepler-all-hidden-note{color:var(--body-text);border:1px solid var(--card-line);background:var(--panel-bg);border-radius:10px;margin:0;padding:.55rem .7rem;font-size:.76rem;line-height:1.65}.kepler-all-hidden-note strong{color:var(--ink)}.gravity-link{margin-top:1.6rem}.gravity-link-body{flex-direction:column;gap:1.6rem;padding:1.4rem 1.5rem 1.6rem;display:flex}.gravity-intro h2{color:var(--ink);margin:0 0 .7rem;font-size:1.35rem}.gravity-intro p,.gravity-block-lead{color:var(--body-text);margin:0 0 .7rem;font-size:.92rem;line-height:1.85}.gravity-intro strong,.gravity-block-lead strong{color:var(--ink)}.gravity-headline-formula{text-align:center;margin:.9rem 0}.gravity-headline-formula code{font-family:var(--font-technical);letter-spacing:.06em;color:var(--blue-deep);background:0 0;padding:0;font-size:1.5rem;font-weight:700}.gravity-intro-bridge{border-left:3px solid var(--blue);background:color-mix(in srgb, var(--blue) 6%, var(--panel-bg));border-radius:0 8px 8px 0;padding:.7rem .9rem}.gravity-block h3{color:var(--ink);margin:0 0 .6rem;font-size:1.05rem}.gravity-derivation{counter-reset:gravity-step;border:1px solid var(--card-line);background:var(--panel-bg);border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.gravity-derivation li{counter-increment:gravity-step;grid-template-columns:1.6rem minmax(0,1fr);gap:.2rem .6rem;padding:.7rem .9rem;display:grid}.gravity-derivation li+li{border-top:1px solid var(--hairline)}.gravity-derivation li:before{content:counter(gravity-step);font-family:var(--font-technical);color:var(--muted);grid-row:1/span 2;padding-top:.2rem;font-size:.72rem}.gravity-step-expr{font-family:var(--font-technical);letter-spacing:.03em;color:var(--blue-deep);font-size:.95rem;font-weight:700;overflow-x:auto}.gravity-step-why{color:var(--muted);font-size:.82rem;line-height:1.7}.gravity-lab,.gravity-check{flex-direction:column;gap:.8rem;display:flex}.gravity-lab-controls{flex-wrap:wrap;align-items:flex-end;gap:.8rem;display:flex}.gravity-slider-label{flex-direction:column;gap:.35rem;display:flex}.gravity-lab-controls .gravity-slider-label{flex:260px}.gravity-slider-heading{color:var(--ink);justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.85rem;font-weight:700;display:flex}.gravity-slider-heading code{font-family:var(--font-technical);background:0 0;padding:0}.gravity-slider-value{font-family:var(--font-technical);color:var(--blue-deep);font-size:.85rem}.gravity-slider-ticks{gap:.35rem;display:flex}.gravity-tick{font-family:var(--font-technical);border:1px solid var(--hairline);background:var(--background);color:var(--muted);cursor:pointer;border-radius:999px;padding:.2rem .5rem;font-size:.72rem}.gravity-tick.is-active{border-color:var(--blue);color:var(--blue-deep);background:color-mix(in srgb, var(--blue) 10%, var(--panel-bg))}.gravity-playback-button{font-family:var(--font-technical);border:1px solid var(--hairline);background:var(--background);color:var(--foreground);cursor:pointer;border-radius:999px;padding:.45rem .9rem;font-size:.8rem}.gravity-playback-button:hover{border-color:var(--blue);color:var(--blue-deep)}.gravity-orbit-svg{fill:none;border:1px solid var(--card-line);background:var(--panel-bg);border-radius:12px;width:100%;max-width:620px;height:auto;margin:0 auto;display:block}.gravity-orbit-path{fill:none;stroke:var(--blue);stroke-width:1.4px;opacity:.75}.gravity-perihelion,.gravity-sun{fill:var(--amber);stroke:none}.gravity-sun-glow{fill:var(--amber);stroke:none;opacity:.16}.gravity-planet{fill:var(--blue-deep);stroke:var(--background);stroke-width:2px}.gravity-verdict{border:1px solid var(--amber);background:color-mix(in srgb, var(--amber) 8%, var(--panel-bg));color:var(--body-text);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;margin:0;padding:.7rem .9rem;font-size:.88rem;line-height:1.75;display:flex}.gravity-verdict.is-closed{border-color:var(--blue);background:color-mix(in srgb, var(--blue) 8%, var(--panel-bg))}.gravity-verdict strong{color:var(--ink)}.gravity-lab-note,.gravity-caveat{color:var(--muted);margin:0;font-size:.8rem;line-height:1.75}.gravity-lab-note code,.gravity-caveat code{font-family:var(--font-technical)}.gravity-caveat{border:1px dashed var(--hairline);border-radius:10px;padding:.7rem .9rem}.gravity-check-headline{grid-template-columns:1fr auto 1fr;align-items:center;gap:.6rem;display:grid}.gravity-check-side{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:12px;flex-direction:column;gap:.2rem;padding:.7rem .9rem;display:flex}.gravity-check-tag{font-family:var(--font-technical);letter-spacing:.08em;color:var(--muted);font-size:.68rem}.gravity-check-expr{font-family:var(--font-technical);color:var(--body-text);font-size:.8rem}.gravity-check-value{font-family:var(--font-technical);color:var(--blue-deep);font-size:1.25rem;font-weight:700}.gravity-check-equals{font-family:var(--font-technical);color:var(--blue);font-size:1.5rem;font-weight:700}.gravity-check-table{border-collapse:collapse;width:100%;font-size:.82rem}.gravity-check-table caption{caption-side:bottom;color:var(--muted);text-align:left;padding-top:.5rem;font-size:.78rem}.gravity-check-table caption code,.gravity-check-table th code{font-family:var(--font-technical)}.gravity-check-table th,.gravity-check-table td{text-align:right;border-bottom:1px solid var(--hairline);font-family:var(--font-technical);padding:.4rem .5rem}.gravity-check-table thead th{color:var(--muted);font-size:.72rem;font-weight:600}.gravity-check-table tbody th{color:var(--ink);font-weight:700}.gravity-check-table tbody tr.is-selected{background:color-mix(in srgb, var(--blue) 8%, transparent)}@media (max-width:640px){.gravity-check-headline{grid-template-columns:1fr}.gravity-check-equals{text-align:center}}.gravity-overview{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.84rem}.gravity-overview caption{font-family:var(--font-technical);letter-spacing:.1em;color:var(--muted);text-align:left;padding-bottom:.45rem;font-size:.7rem}.gravity-overview th,.gravity-overview td{text-align:left;vertical-align:top;border-bottom:1px solid var(--hairline);padding:.55rem .6rem;line-height:1.6}.gravity-overview thead th{font-family:var(--font-technical);letter-spacing:.06em;color:var(--muted);font-size:.7rem;font-weight:600}.gravity-overview tbody th{color:var(--ink);font-weight:700}.gravity-overview-law{font-family:var(--font-technical);background:color-mix(in srgb, var(--blue) 12%, var(--panel-bg));color:var(--blue-deep);border-radius:999px;margin-right:.4rem;padding:.05rem .4rem;font-size:.68rem;display:inline-block}.gravity-overview-where{font-family:var(--font-technical);color:var(--muted);white-space:nowrap;font-size:.74rem}.gravity-inverse-figure{margin:.9rem 0 0}.gravity-inverse-figure svg{fill:none;width:100%;max-width:560px;height:auto;margin:0 auto;display:block}.gravity-inverse-figure figcaption{color:var(--body-text);text-align:center;margin-top:.5rem;font-size:.82rem;line-height:1.75}.gravity-inverse-figure figcaption strong{color:var(--ink)}.gravity-cone{stroke:var(--amber);stroke-width:1px;stroke-dasharray:4 5;opacity:.5}.gravity-panel{fill:color-mix(in srgb, var(--blue) 10%, transparent);stroke:var(--blue);stroke-width:1.4px}.gravity-panel-grid{stroke:var(--blue);stroke-width:.8px;opacity:.45}.gravity-panel-distance,.gravity-panel-force,.gravity-panel-cells{font-family:var(--font-technical);stroke:none}.gravity-panel-distance{fill:var(--muted);font-size:12px}.gravity-panel-force{fill:var(--blue-deep);font-size:14px;font-weight:700}.gravity-panel-cells{fill:var(--muted);font-size:11px}.gravity-derivation-block{flex-direction:column;gap:.5rem;display:flex}.gravity-conclusion{border:1px solid var(--blue);background:color-mix(in srgb, var(--blue) 7%, var(--panel-bg));border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:.3rem .8rem;padding:.7rem .9rem;display:flex}.gravity-conclusion-expr{font-family:var(--font-technical);letter-spacing:.04em;color:var(--blue-deep);font-size:1.1rem;font-weight:700}.gravity-conclusion-text{color:var(--body-text);flex:260px;font-size:.84rem;line-height:1.7}.gravity-details{border:1px solid var(--card-line);background:var(--panel-bg);border-radius:12px;overflow:hidden}.gravity-details>summary{font-family:var(--font-technical);letter-spacing:.04em;color:var(--blue-deep);cursor:pointer;padding:.55rem .9rem;font-size:.78rem;list-style:none}.gravity-details>summary::-webkit-details-marker{display:none}.gravity-details>summary:before{content:"▸ "}.gravity-details[open]>summary:before{content:"▾ "}.gravity-details>summary:hover{background:color-mix(in srgb, var(--blue) 6%, transparent)}.gravity-details[open]>summary{border-bottom:1px solid var(--hairline)}.gravity-details .gravity-derivation{background:0 0;border:none;border-radius:0}.gravity-symbols{color:var(--muted);background:color-mix(in srgb, var(--blue) 4%, transparent);margin:0;padding:.55rem .9rem;font-size:.76rem;line-height:1.7}.gravity-symbols-tag{font-family:var(--font-technical);border:1px solid var(--hairline);color:var(--muted);border-radius:999px;margin-right:.4rem;padding:.05rem .4rem;font-size:.66rem;display:inline-block}.gravity-check-lead{margin-top:.9rem}@media (max-width:640px){.gravity-overview thead{display:none}.gravity-overview th,.gravity-overview td{border-bottom:none;padding:.2rem 0;display:block}.gravity-overview tbody tr{border-bottom:1px solid var(--hairline);padding:.6rem 0;display:block}.gravity-overview-where{white-space:normal}}.gravity-toggle{text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.2rem 1rem;width:100%;padding:1.1rem 1.5rem;display:grid}.gravity-toggle:hover{background:color-mix(in srgb, var(--blue) 5%, transparent)}.gravity-toggle-title{color:var(--ink);grid-column:1;font-size:1.3rem;font-weight:700}.gravity-toggle-sub{color:var(--body-text);grid-column:1;font-size:.86rem;line-height:1.7}.gravity-toggle-sub strong{color:var(--ink)}.gravity-toggle-action{font-family:var(--font-technical);white-space:nowrap;border:1px solid var(--blue);color:var(--blue-deep);background:color-mix(in srgb, var(--blue) 8%, var(--panel-bg));border-radius:999px;grid-area:1/2/span 2;padding:.4rem .9rem;font-size:.8rem}.gravity-toggle.is-open .gravity-toggle-action{border-color:var(--hairline);color:var(--muted);background:var(--background)}.gravity-toggle-hint{color:var(--muted);margin:0;padding:0 1.5rem 1.2rem;font-size:.8rem}@media (max-width:640px){.gravity-toggle{grid-template-columns:minmax(0,1fr)}.gravity-toggle-action{grid-area:auto/1;justify-self:start;margin-top:.5rem}}.gravity-verdict-metric{flex-direction:column;gap:.1rem;min-width:150px;display:flex}.gravity-verdict-label,.gravity-verdict-target{font-family:var(--font-technical);letter-spacing:.04em;color:var(--muted);font-size:.68rem}.gravity-verdict-number{font-family:var(--font-technical);color:var(--amber);font-size:1.7rem;font-weight:700;line-height:1.1}.gravity-verdict.is-closed .gravity-verdict-number{color:var(--blue-deep)}.gravity-verdict-text{flex:280px;margin:0;font-size:.86rem;line-height:1.75}.gravity-why{flex-direction:column;gap:.7rem;padding:.8rem .9rem;display:flex}.gravity-why p{color:var(--body-text);margin:0;font-size:.86rem;line-height:1.8}.gravity-why strong{color:var(--ink)}.gravity-why code{font-family:var(--font-technical)}.gravity-why-clocks{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.gravity-why-clocks li{background:color-mix(in srgb, var(--blue) 6%, transparent);color:var(--body-text);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.5rem .7rem;font-size:.84rem;line-height:1.7;display:flex}.gravity-why-tag{font-family:var(--font-technical);background:var(--panel-bg);color:var(--blue-deep);border-radius:999px;flex:none;padding:.1rem .5rem;font-size:.7rem}.gravity-why-formula{text-align:center}.gravity-why-formula code{color:var(--blue-deep);font-size:1.05rem;font-weight:700}.gravity-why-table{border-collapse:collapse;width:100%;font-size:.82rem}.gravity-why-table th,.gravity-why-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--hairline);padding:.4rem .5rem;line-height:1.6}.gravity-why-table th{font-family:var(--font-technical);color:var(--ink);white-space:nowrap;font-weight:700}.gravity-why-table td:first-of-type{white-space:nowrap}.gravity-why-table code{color:var(--blue-deep)}.theory-card-side{flex-direction:column;gap:1.6rem;min-width:0;display:flex}.theory-cases{flex-direction:column;gap:.6rem;display:flex}.theory-cases-title{font-size:.72rem;font-family:var(--font-plex-mono), monospace;letter-spacing:.16em;color:var(--muted);margin:0 0 .25rem;font-weight:600}.theory-case{background:#ffffffd9;border:1px solid #dbe1f0;border-radius:14px;overflow:hidden}.theory-case>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1.15rem;list-style:none;transition:background .15s;display:flex}.theory-case>summary::-webkit-details-marker{display:none}.theory-case>summary:hover{background:var(--blue-tint)}.theory-case>summary:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.theory-case-title{color:var(--ink);word-break:keep-all;text-wrap:pretty;align-items:center;gap:.55rem;font-size:.9rem;font-weight:600;display:flex}.theory-case-title:before{content:"";border-right:2px solid var(--blue);border-bottom:2px solid var(--blue);flex:none;width:7px;height:7px;transition:transform .18s;transform:rotate(-45deg)}.theory-case[open] .theory-case-title:before{transform:rotate(45deg)}.theory-case-tag{font-family:var(--font-plex-mono), monospace;letter-spacing:.14em;color:var(--muted);flex:none;font-size:.58rem}.theory-case-body{color:#2a3242;word-break:keep-all;text-wrap:pretty;padding:0 1.15rem 1.15rem;font-size:.88rem;line-height:1.85}.theory-case-body p{margin:0 0 .7rem}.theory-case-body p:last-child{margin-bottom:0}.theory-case-body strong{color:var(--blue-deep);font-weight:700}.theory-case-figure{background:var(--blue-tint);border-radius:10px;margin-bottom:.9rem;padding:.6rem .4rem}.case-wavefront{fill:none;stroke:var(--blue);stroke-width:1.6px;opacity:.5}.case-vehicle{fill:#fff;stroke:var(--blue);stroke-width:2px}.case-vehicle-mark{stroke:#e04b1f;stroke-width:2.5px;stroke-linecap:round}.case-wheel{fill:var(--ink);stroke:none}.case-person{fill:none;stroke:var(--ink);stroke-width:2.5px;stroke-linecap:round}.case-arrow{fill:none;stroke:var(--blue);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.case-arrow.warm{stroke:#e04b1f}.case-label{font-family:var(--font-plex-mono), monospace;letter-spacing:.08em;fill:var(--muted);stroke:none;font-size:12px}.case-label.accent{fill:var(--blue)}.case-label.warm{fill:#e04b1f}.case-wave{fill:none;stroke:var(--blue);stroke-width:2.5px;stroke-linecap:round}.case-wave.warm{stroke:#e04b1f}.case-star{fill:var(--amber);stroke:none;opacity:.9}.case-rule{stroke:#1d4ed81f;stroke-width:1px}@media (max-width:900px){.theory-card-side{gap:1.25rem}.theory-case-figure svg{max-width:420px;margin:0 auto}}:root{--bernoulli-high-pressure:#1d4ed8;--bernoulli-mid:#c8d2e4;--bernoulli-low-pressure:#e0563f;--bernoulli-lift:0 1px 2px #101a330a, 0 18px 36px -24px #101a3359}.bernoulli-visual-column{flex-direction:column;flex:1;gap:.75rem;min-width:0;padding:.75rem;display:flex}.bernoulli-visual-column .scene-container{min-height:380px;box-shadow:var(--bernoulli-lift);flex:1;margin:0}.bernoulli-controls .bernoulli-row{grid-template-columns:1fr auto;align-items:center;gap:.35rem .75rem;display:grid}.bernoulli-controls .bernoulli-row input[type=range]{accent-color:var(--blue);grid-column:1/-1}.bernoulli-controls .bernoulli-row output{font-family:var(--font-plex-mono), monospace;font-variant-numeric:tabular-nums;text-align:right;font-size:.85rem;font-weight:600}.bernoulli-controls .bernoulli-row .hint{grid-column:1/-1}.bernoulli-toggle-row{background:var(--blue-tint);border-radius:9px;gap:2px;margin-top:.35rem;padding:3px;display:flex}.controls-panel .bernoulli-toggle{font-family:var(--font-technical);letter-spacing:.01em;text-transform:none;color:color-mix(in srgb, var(--foreground) 62%, transparent);box-shadow:none;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;margin-top:0;padding:.45rem .3rem;font-size:.76rem;font-weight:600;transition:background .15s,color .15s,box-shadow .15s}.controls-panel .bernoulli-toggle:before{content:none}.controls-panel .bernoulli-toggle:not(:disabled):hover{background:color-mix(in srgb, var(--panel-bg) 60%, transparent);color:var(--foreground)}.controls-panel .bernoulli-toggle.is-active{background:var(--panel-bg);color:var(--blue-deep);box-shadow:0 1px 2px #101a331f}.bernoulli-playback{border-top:1px solid var(--hairline);gap:.5rem;margin-top:1.1rem;padding-top:1rem;display:flex}.controls-panel .bernoulli-playback-button{font-family:var(--font-technical);letter-spacing:.02em;text-transform:none;border:1px solid var(--hairline);background:var(--background);color:var(--foreground);box-shadow:none;cursor:pointer;border-radius:8px;flex:1;margin-top:0;padding:.55rem .8rem;font-size:.82rem;font-weight:600;transition:background .15s,border-color .15s}.controls-panel .bernoulli-playback-button:before{content:none}.controls-panel .bernoulli-playback-button:not(:disabled):hover{background:var(--blue-tint);border-color:color-mix(in srgb, var(--blue) 45%, var(--hairline));color:var(--foreground)}.bernoulli-label{font-family:var(--font-technical);letter-spacing:.02em;white-space:nowrap;color:var(--foreground);background:color-mix(in srgb, var(--panel-bg) 78%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid color-mix(in srgb, var(--hairline) 70%, transparent);pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:999px;padding:.18rem .55rem;font-size:.68rem;font-weight:600;display:inline-block}.bernoulli-label.is-quiet{-webkit-backdrop-filter:none;backdrop-filter:none;color:color-mix(in srgb, var(--foreground) 55%, transparent);background:0 0;border-color:#0000}.bernoulli-label.is-accent{color:var(--panel-bg);background:var(--blue);border-color:var(--blue);-webkit-backdrop-filter:none;backdrop-filter:none}.bernoulli-readout{border:1px solid var(--card-line);background:var(--panel-bg);box-shadow:var(--bernoulli-lift);border-radius:14px;flex-shrink:0;padding:.85rem 1.15rem .95rem}.bernoulli-readout-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.7rem;display:flex}.bernoulli-readout-eyebrow{font-family:var(--font-technical);letter-spacing:.16em;text-transform:uppercase;color:var(--blue);font-size:.62rem;font-weight:600}.bernoulli-readout-scope{font-family:var(--font-technical);color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.72rem;font-weight:600}.bernoulli-readout-figures{grid-template-columns:1fr 1fr;margin-top:.7rem;display:grid}.bernoulli-readout-figure{flex-direction:column;gap:.15rem;padding:0 1.15rem;display:flex}.bernoulli-readout-figure:first-child{padding-left:0}.bernoulli-readout-figure+.bernoulli-readout-figure{border-left:1px solid var(--hairline)}.bernoulli-readout-caption{font-family:var(--font-technical);letter-spacing:.06em;color:color-mix(in srgb, var(--foreground) 58%, transparent);font-size:.7rem;font-weight:600}.bernoulli-readout-number{font-family:var(--font-plex-mono), monospace;font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--foreground);font-size:clamp(1.7rem,3.6vw,2.35rem);font-weight:600;line-height:1.05}.bernoulli-readout-number em{font-family:var(--font-technical);letter-spacing:0;color:color-mix(in srgb, var(--foreground) 52%, transparent);margin-left:.22em;font-size:.85rem;font-style:normal;font-weight:600}.bernoulli-readout-detail{font-family:var(--font-plex-mono), monospace;font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--foreground) 52%, transparent);font-size:.74rem}.bernoulli-readout-verdict{border-top:1px solid var(--hairline);color:color-mix(in srgb, var(--foreground) 78%, transparent);margin:.8rem 0 0;padding-top:.7rem;font-size:.82rem;line-height:1.6}.bernoulli-readout-warning{color:var(--bernoulli-low-pressure);margin-top:.4rem;font-size:.76rem;display:block}.bernoulli-chart{border:1px solid var(--card-line);background:var(--panel-bg);box-shadow:var(--bernoulli-lift);border-radius:14px;flex-shrink:0;padding:.9rem 1.15rem .8rem}.bernoulli-chart svg{width:100%;max-width:660px;height:auto;margin:0 auto;display:block}.bernoulli-chart-plot{fill:color-mix(in srgb, var(--blue-tint) 45%, transparent);stroke:none}.bernoulli-chart-line{fill:none;stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.bernoulli-chart-dot{stroke:var(--panel-bg);stroke-width:1.5px}.bernoulli-chart-gridline{stroke:color-mix(in srgb, var(--foreground) 16%, transparent);stroke-width:1px;stroke-dasharray:2 3}.bernoulli-chart-marker{stroke:color-mix(in srgb, var(--blue) 55%, transparent);stroke-width:1px;stroke-dasharray:4 4}.bernoulli-chart-title,.bernoulli-chart-axis,.bernoulli-chart-marker-label{font-family:var(--font-technical);letter-spacing:.12em;text-transform:uppercase;fill:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:10.5px;font-weight:600}.bernoulli-chart-unit{letter-spacing:.06em;fill:color-mix(in srgb, var(--foreground) 38%, transparent)}.bernoulli-chart-marker-label{letter-spacing:.08em;fill:var(--blue)}.bernoulli-chart-tick{font-family:var(--font-plex-mono), monospace;text-anchor:end;fill:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:10px}.bernoulli-legend{font-family:var(--font-technical);letter-spacing:.06em;color:color-mix(in srgb, var(--foreground) 58%, transparent);justify-content:center;align-items:center;gap:.6rem;margin-top:.45rem;font-size:.68rem;font-weight:600;display:flex}.bernoulli-legend-bar{background:linear-gradient(to right, var(--bernoulli-high-pressure), var(--bernoulli-mid) 50%, var(--bernoulli-low-pressure));border-radius:999px;flex:0 220px;height:6px}.bernoulli-chart-note{text-align:center;color:color-mix(in srgb, var(--foreground) 66%, transparent);margin:.6rem 0 0;font-size:.78rem;line-height:1.6}@media (max-width:900px){.bernoulli-visual-column .scene-container{min-height:280px}.bernoulli-readout-figures{grid-template-columns:1fr;gap:.6rem}.bernoulli-readout-figure{padding:0}.bernoulli-readout-figure+.bernoulli-readout-figure{border-left:none;border-top:1px solid var(--hairline);padding-top:.6rem}}.flyer{--flyer-paper:#fff;--flyer-ink:#111;z-index:70;background:var(--flyer-paper);border:3px solid var(--flyer-ink);width:360px;box-shadow:5px 5px 0 var(--flyer-ink);transform-origin:100% 100%;animation:3s ease-in-out infinite flyer-wobble;position:fixed;bottom:16px;right:16px;transform:rotate(-1.2deg)}.flyer-body{all:unset;box-sizing:border-box;cursor:pointer;width:100%;color:var(--flyer-ink);white-space:nowrap;flex-direction:column;align-items:stretch;line-height:1.15;display:flex;overflow:hidden}.flyer-body:focus-visible{outline:3px solid var(--flyer-ink);outline-offset:3px}.flyer-top{background:var(--flyer-ink);align-items:center;gap:.4rem;padding:.25rem .5rem;display:flex}.flyer-burst{width:46px;height:46px;color:var(--flyer-ink);text-align:center;clip-path:polygon(50% 0%,61% 18%,82% 10%,79% 32%,100% 38%,84% 54%,96% 74%,74% 76%,70% 98%,52% 84%,33% 100%,27% 78%,4% 80%,14% 59%,0% 42%,19% 32%,14% 10%,37% 17%);background:#fff;flex:none;place-items:center;font-size:.85rem;line-height:.95;display:grid}.flyer-headline,.flyer-outline-title{isolation:isolate;color:#fff;-webkit-text-stroke:4px var(--flyer-ink);paint-order:stroke fill;position:relative}.flyer-start{color:var(--flyer-ink);text-align:center;background:#fff;border-radius:8px;flex:none;padding:.2rem .45rem;font-size:.72rem;line-height:1.1;animation:2.4s ease-in-out infinite flyer-pulse;box-shadow:2px 2px #888}.flyer-headline:before,.flyer-outline-title:before{content:attr(data-text);z-index:-1;-webkit-text-stroke:9px #fff;position:absolute;inset:0}.flyer-headline{text-align:center;letter-spacing:-.03em;flex:1;font-size:1.85rem;animation:.35s ease-out flyer-pop}.flyer-outline-title{-webkit-text-stroke:3px var(--flyer-ink)}.flyer-outline-title:before{-webkit-text-stroke:0;color:var(--flyer-ink);translate:2px 2px}.flyer-row{gap:.35rem;padding:.3rem .4rem 0;display:flex}.flyer-benefits{flex-direction:column;flex:1;align-items:center;gap:.08rem;min-width:0;display:flex}.flyer-benefits .flyer-outline-title{margin-bottom:.05rem;font-size:1.2rem}.flyer-benefit{letter-spacing:-.03em;font-size:.7rem}.flyer-benefit mark{background:var(--flyer-ink);color:#fff;padding:0 .12rem}.flyer-sammae{flex-direction:column;flex:none;align-items:stretch;width:128px;display:flex}.flyer-box-title{text-align:center;font-size:1.1rem}.flyer-sammae-box{background:var(--flyer-ink);color:#fff;border-radius:10px;flex-direction:column;padding:.3rem .4rem;font-size:.7rem;line-height:1.3;display:flex}.flyer-ask{background:var(--flyer-ink);color:#fff;text-align:center;text-overflow:ellipsis;border-radius:999px;margin:.3rem .4rem .35rem;padding:.2rem .5rem;font-size:.82rem;overflow:hidden}.flyer-ticker{background:var(--flyer-ink);color:#fff;padding:.25rem 0;font-size:.8rem;overflow:hidden}.flyer-ticker span{animation:22s linear infinite flyer-ticker;display:inline-block}.flyer-math{font-family:"Plex Mono Symbols", var(--font-plex-mono), monospace;letter-spacing:0;white-space:nowrap;font-weight:700}.flyer-radical{transform-origin:bottom;display:inline-block;transform:scaleY(1.18)}.flyer-radicand{border-top:.09em solid;margin-left:-.06em;padding:0 .1em 0 .05em;line-height:.92;display:inline-block}.flyer-close{z-index:3;color:#111;width:26px;height:26px;font:inherit;cursor:pointer;background:#fff;border:2px solid #111;border-radius:50%;font-size:1rem;line-height:1;position:absolute;top:-12px;right:-12px}@media (max-width:600px){.flyer{scale:.7}.flyer>.flyer-close{width:40px;height:40px;font-size:1.4rem;top:-18px;right:-18px}}.flyer-modal{color:#fff;word-break:keep-all;background:#0e0b26;border:4px solid #fff;border-radius:10px;outline:4px solid #0e0b26;width:min(1100px,100vw - 48px);max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:22px 28px 26px;overflow-y:auto;box-shadow:0 0 0 12px #fff,0 30px 60px #00000080}.flyer-modal::backdrop{background:#0e0b2699}.faith{flex-direction:column;gap:14px;display:flex;position:relative}.faith-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.faith-title{text-shadow:3px 3px #e8285a;margin:0;font-size:clamp(1.4rem,3.2vw,1.75rem);font-weight:700;line-height:1}.faith-tag{color:#ffd84a;margin-top:6px;font-size:.8rem}.faith-head-side{flex:none;align-items:center;gap:10px;display:flex}.faith-count{font-variant-numeric:tabular-nums;border:3px solid #fff;border-radius:6px;padding:6px 14px;font-size:1.1rem;font-weight:700}.faith-count.is-done{color:#ffd84a;border-color:#ffd84a}.faith-close{color:#fff;width:42px;height:42px;font:inherit;cursor:pointer;background:0 0;border:3px solid #fff;border-radius:6px;place-items:center;padding:0;font-size:1.5rem;font-weight:700;line-height:1;display:grid}.faith-close:hover,.faith-close:focus-visible{color:#0e0b26;background:#fff;outline:none}.faith-window{background:linear-gradient(#2b3fb8,#16206e);border:3px solid #fff;border-radius:6px;box-shadow:0 0 0 2px #0e0b26}.faith-arena{aspect-ratio:1036/417;background:#120c38;border:3px solid #fff;border-radius:6px;position:relative;overflow:hidden;container-type:inline-size}.faith-stage{width:100%;height:100%;display:block}.faith-hurt{opacity:0;pointer-events:none;background:#e8285a;position:absolute;inset:0}.faith-hud{flex-direction:column;gap:6px;padding:10px 14px;display:flex;position:absolute;top:12px}.faith-hud-guardian{width:min(280px,40%);left:12px}.faith-hud-enemy{width:min(320px,44%);right:12px}.faith-hud-name{white-space:nowrap;justify-content:space-between;align-items:center;gap:8px;font-size:.95rem;font-weight:700;display:flex}.faith-hud-guardian .faith-hud-name span{color:#7ff3ff}.faith-hud-enemy .faith-hud-name{justify-content:flex-start}.faith-stamp{background:#e8285a;padding:1px 6px;font-size:.7rem}.faith-hud-row{align-items:center;gap:8px;font-size:.75rem;display:flex}.faith-hud-label{color:#ffd84a}.faith-hearts{gap:3px;font-size:1.15rem;line-height:1;display:inline-flex}.faith-heart{color:#ff6b9a;display:inline-block}.faith-heart.is-lost{color:#3a3566}.faith-heart.is-breaking{color:#ff6b9a;animation:.9s steps(2,end) forwards faith-heart-break}@keyframes faith-heart-break{to{color:#3a3566}}.faith-hp{background:#0e0b26;border:2px solid #fff;flex:1;height:10px}.faith-hp-fill{background:#ff6b9a;height:100%;transition:width .35s steps(6,end);display:block}.faith-hp-text{font-variant-numeric:tabular-nums}.faith-bubble rect,.faith-bubble-tail{fill:#fff;stroke:#0e0b26;stroke-width:8px}.faith-bubble .faith-bubble-seam{stroke:none}.faith-bubble text{fill:#0e0b26;font-weight:700}.faith-bubble-taunt rect,.faith-bubble-taunt .faith-bubble-tail{fill:#0e0b26;stroke:#ffd84a}.faith-bubble-taunt .faith-bubble-seam{fill:#0e0b26}.faith-bubble-taunt text{fill:#ffd84a}.faith-damage{fill:#fff;stroke:#e8285a;stroke-width:14px;paint-order:stroke fill;font-weight:700}.faith-slash{fill:none;stroke:#fff;stroke-width:14px;stroke-linecap:square;stroke-dasharray:420;stroke-dashoffset:420px;opacity:0}.faith-shout{color:#ffd84a;white-space:nowrap;text-shadow:.08em .08em #e8285a;-webkit-text-stroke:2px #ffd84a;opacity:0;pointer-events:none;margin:0;font-size:clamp(1.6rem,7.3cqw,4.75rem);font-weight:700;line-height:1;position:absolute;top:50%;left:50%;translate:-50% -50%}.faith-shout-result{opacity:1;font-size:clamp(1.4rem,6cqw,4rem);animation:.4s steps(4,end) both flyer-pop;top:39%;left:50%}.faith-progress{background:#0e0b26;height:8px;position:absolute;bottom:0;left:0;right:0}.faith-progress span{background:linear-gradient(90deg,#ffd84a,#ff9a3c);height:100%;transition:width .4s steps(5,end);display:block}.faith-panel{grid-template-columns:minmax(0,1fr) 370px;gap:14px;min-height:15rem;display:grid}.faith-panel-ask,.faith-panel-hit,.faith-panel-miss{grid-template-columns:minmax(0,1fr) minmax(300px,420px)}.faith-message{flex-direction:column;gap:12px;padding:18px 22px;display:flex;position:relative}.faith-lead{text-wrap:pretty;font-size:clamp(1.1rem,2.3vw,1.4rem);font-weight:700;line-height:1.5}.faith-lead b{color:#ffd84a}.faith-sub{color:#cfd6ff;font-size:1.05rem}.faith-chip{color:#fff;background:#e8285a;padding:0 6px;font-weight:700}.faith-chip-ok{color:#0e0b26;background:#ffd84a}.faith-more{color:#ffd84a;animation:1s steps(2,end) infinite faith-blink;position:absolute;bottom:12px;right:18px}@keyframes faith-blink{50%{opacity:0}}.faith-qno{color:#ffd84a;font-size:.9rem}.faith-qno span{color:#cfd6ff;margin-left:6px}.faith-explain-head{color:#cfd6ff;align-items:baseline;gap:10px;font-size:.82rem;line-height:1.5;display:flex}.faith-explain-head mark{flex:none;padding:2px 8px;font-size:.88rem}.faith-explain{text-wrap:pretty;font-size:1.06rem;font-weight:700;line-height:1.65}.faith-explain b{color:#ffd84a}.faith-next{color:#ffd84a;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;align-self:flex-end;margin-top:auto;padding:4px 10px;font-size:.95rem;font-weight:700}.faith-next:disabled{visibility:hidden}.faith-next:not(:disabled):hover,.faith-next:focus-visible{color:#0e0b26;background:#fff;outline:none}.faith-menu{flex-direction:column;justify-content:center;gap:6px;padding:14px;display:flex}.faith-cmd{color:#fff;min-height:48px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:10px;padding:6px 12px;font-size:1.1rem;font-weight:700;line-height:1.35;display:flex}.faith-cmd:disabled{cursor:default}.faith-cmd-cursor{color:#e8285a;visibility:hidden;flex:none;width:16px}.faith-cmd:focus-visible,.faith-cmd.is-answer{color:#0e0b26;background:#fff;outline:none}.faith-cmd:focus-visible .faith-cmd-cursor,.faith-cmd.is-answer .faith-cmd-cursor{visibility:visible}@media (hover:hover){.faith-cmd:not(:disabled):hover{color:#0e0b26;background:#fff}.faith-cmd:not(:disabled):hover .faith-cmd-cursor{visibility:visible}}.faith-cmd-cta{color:#0e0b26;background:#fff;padding:14px 12px;font-size:1.15rem;animation:1.2s steps(2,end) infinite faith-cta-nudge}.faith-cmd-cta .faith-cmd-cursor{visibility:visible}@keyframes faith-cta-nudge{50%{translate:4px}}.faith-cmd.is-dim{opacity:.45}.faith-cmd.is-wrong{opacity:.75}.faith-cmd.is-wrong .faith-cmd-text{-webkit-text-decoration:line-through #e8285a;text-decoration:line-through #e8285a;text-decoration-thickness:3px}.faith-cmd-badge{color:#ffd84a;background:#0e0b26;flex:none;margin-left:auto;padding:2px 8px;font-size:.85rem}.faith-score{justify-content:space-between;gap:12px;font-size:1.1rem;font-weight:700;display:flex}.faith-score b{color:#ffd84a}.faith-rule{background:#ffffff4d;border:0;height:2px}.faith-title-line{color:#cfd6ff;align-items:baseline;gap:14px;font-size:1rem;display:flex}.faith-title-line b{color:#ffd84a;text-shadow:4px 4px #e8285a;font-size:clamp(2rem,5vw,3.1rem);line-height:1.1}.faith-result-line{font-size:1rem;font-weight:700}.faith-confetti{z-index:5;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}@media (max-width:720px){.faith-panel,.faith-panel-ask,.faith-panel-hit,.faith-panel-miss{grid-template-columns:minmax(0,1fr);min-height:0}.faith-message{min-height:7.5rem}.faith-hud{gap:3px;padding:6px 8px;top:8px}.faith-hud-guardian{left:8px}.faith-hud-enemy{right:8px}.faith-hud-name{font-size:.72rem}.faith-cmd{min-height:42px;font-size:1rem}}@media (max-width:600px){.flyer-modal{width:100%;max-width:none;height:100%;max-height:none;box-shadow:none;border:0;border-radius:0;outline:0;margin:0;padding:12px}.faith{gap:10px}.faith-tag{font-size:.68rem}.faith-count{padding:4px 8px;font-size:.9rem}.faith-close{width:36px;height:36px}.faith-arena{aspect-ratio:4/3;min-height:200px;max-height:46dvh}.faith-hud-guardian .faith-hud-name span,.faith-hp-text{display:none}.faith-shout{-webkit-text-stroke-width:1px}}@keyframes flyer-wobble{0%,to{transform:rotate(-2deg)}50%{transform:rotate(1deg)}}@keyframes flyer-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes flyer-pulse{0%,to{scale:1}50%{scale:1.08}}@keyframes flyer-ticker{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.flyer,.flyer-headline,.flyer-start,.flyer-ticker span,.faith-shout-result,.faith-cmd-cta,.faith-more,.faith-heart.is-breaking{animation:none}.faith-hp-fill,.faith-progress span{transition:none}}.fflab{--fflab-ink:#1b2233;--fflab-muted:#5b6680;--fflab-faint:#8a94ab;--fflab-line:#dfe5f0;--fflab-line-soft:#edf1f7;--fflab-chip-bg:#eef1f7;--fflab-chip-num:#dfe4ee;--fflab-option-line:#c3ccdc;--fflab-tint:#e8f0fe;--fflab-selected:#eef4ff;--fflab-strip:#dde5f1;--fflab-strip-edge:#c4d0e3;--fflab-track:#e3e9f4;--fflab-speed:#4a8fe0;--fflab-height:#f2c94c;--fflab-green:#22805a;--fflab-green-bg:#e3f5ec;--fflab-green-line:#bfe5d1;--fflab-amber:#9a5b00;--fflab-amber-bg:#fff3df;--fflab-amber-line:#f2d39b;--fflab-think-bg:#fffaf0;--fflab-think-line:#e8c766;--fflab-think-chip:#ffe9a8;--fflab-think-ink:#7a5b00;--fflab-live:#ff6b5b;--fflab-ruler-fill:#fff6d9;--fflab-ruler-edge:#e8d38f;--fflab-rig:#aab6cc;--fflab-ball-a:#4a8fe0;--fflab-ball-b:#f29a45;--fflab-ball-a-ink:#2c6cc4;--fflab-ball-b-ink:#c4691b;color:var(--fflab-ink);border:1px solid var(--fflab-line);word-break:keep-all;background-color:#f5f7fb;background-image:linear-gradient(#e7ecf5 1px,#0000 1px),linear-gradient(90deg,#e7ecf5 1px,#0000 1px);background-size:28px 28px;border-radius:24px;flex-direction:column;display:flex;overflow:hidden;container:fflab/inline-size}.fflab button{font-family:inherit}.fflab-header{border-bottom:1px solid var(--fflab-line);background:#fff;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;min-height:68px;padding:10px 24px;display:grid}.fflab-header-title{align-items:center;gap:14px;display:flex}.fflab-header-title>div{flex-direction:column;display:flex}.fflab-header-kicker{font:500 12px var(--font-technical);color:var(--fflab-faint)}.fflab-header-name{font-size:19px;font-weight:800}.fflab-icon-button{border:1px solid var(--fflab-line);width:40px;height:40px;color:var(--fflab-muted);cursor:pointer;background:#fff;border-radius:12px;font-size:20px}.fflab-icon-button:disabled{opacity:.4;cursor:default}.fflab-steps{gap:8px;display:flex}.fflab-step{background:var(--fflab-chip-bg);color:var(--fflab-faint);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:15px;font-weight:600;display:flex}.fflab-step-num{background:var(--fflab-chip-num);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;display:flex}.fflab-step.is-done{background:var(--fflab-tint);color:var(--blue);font-weight:700}.fflab-step.is-done .fflab-step-num{background:var(--blue);color:#fff;font-size:12px}.fflab-step.is-current{background:var(--blue);color:#fff;font-weight:700}.fflab-step.is-current .fflab-step-num{color:var(--blue);background:#fff}.fflab-help-button{border:1px solid var(--fflab-line);color:var(--fflab-muted);cursor:pointer;background:#fff;border-radius:12px;justify-self:end;padding:10px 16px;font-size:15px}.fflab-body{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px 24px;display:grid}@container fflab (min-width:820px){.fflab-body{grid-template-columns:minmax(0,1fr) clamp(300px,32cqw,400px)}}.fflab-main{flex-direction:column;min-width:0;display:flex;container:fflab-main/inline-size}.fflab-stage{border:1px solid var(--fflab-line);background:#fff;border-bottom:none;border-radius:20px 20px 0 0;height:clamp(380px,58dvh,640px);padding:12px;scroll-margin-top:88px;position:relative}.fflab-stage-canvas{background:linear-gradient(#fbfcff 0%,#eef3fb 70%,#e9eff8 100%);border-radius:12px;position:absolute;inset:12px;overflow:hidden}.fflab-stage-canvas>div{width:100%;height:100%}.fflab-stage-hint{border:1px solid var(--fflab-line);color:var(--fflab-muted);pointer-events:none;background:#ffffffd9;border-radius:999px;padding:5px 10px;font-size:12px;position:absolute;bottom:24px;left:24px}.fflab-status{background:var(--fflab-ink);color:#fff;pointer-events:none;border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:600;display:flex;position:absolute;bottom:24px;left:24px}.fflab-height-pill{background:var(--blue);color:#fff;font:600 12px var(--font-technical);white-space:nowrap;border-radius:999px;padding:3px 8px;display:inline-block;transform:translate(10px,-130%)}.fflab-strip{background:var(--fflab-strip);border-top:8px solid var(--fflab-strip-edge);border-radius:0 0 20px 20px;gap:14px;padding:18px;display:grid}.fflab-strip-1{grid-template-columns:repeat(3,minmax(0,1fr));min-height:190px}.fflab-strip-2{grid-template-columns:repeat(3,140px) minmax(0,1fr);min-height:270px}.fflab-strip-3{grid-template-columns:minmax(0,1fr) 220px;min-height:300px}.fflab-gauge,.fflab-strip-card{box-shadow:0 3px 0 var(--fflab-strip-edge);background:#fff;border-radius:14px}.fflab-gauge{flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:12px 0;display:flex}.fflab-gauge-label{color:var(--fflab-muted);font-size:13px;font-weight:700}.fflab-gauge-dial{width:96px;height:96px;position:relative}.fflab-gauge-dial svg{width:100%;height:100%}.fflab-gauge-track{fill:none;stroke:var(--fflab-track)}.fflab-gauge-fill{fill:none;transition:stroke-dashoffset 80ms linear}.fflab-gauge-time .fflab-gauge-fill{stroke:var(--blue)}.fflab-gauge-speed .fflab-gauge-fill{stroke:var(--fflab-speed)}.fflab-gauge-height .fflab-gauge-fill{stroke:var(--fflab-height)}.fflab-gauge-readout{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.fflab-gauge-readout b{font:600 20px var(--font-technical)}.fflab-gauge-readout span{color:var(--fflab-faint);font-size:11px}.fflab-strip-card{flex-direction:column;gap:10px;min-width:0;padding:16px 18px;display:flex}.fflab-strip-card-head{justify-content:space-between;align-items:center;display:flex}.fflab-strip-card-title{font-size:14px;font-weight:800}.fflab-strip-card-hint{color:var(--fflab-faint);font-size:12px}.fflab-record{gap:6px;padding:14px 16px}.fflab-record-row{font:500 13px var(--font-technical);border-radius:4px;grid-template-columns:1fr 1fr 1fr;padding:2px 8px;display:grid}.fflab-record-headrow{border-bottom:1.5px solid var(--fflab-option-line);color:var(--fflab-muted);border-radius:0;padding:4px 8px;font-family:inherit;font-size:12px;font-weight:700}.fflab-record-body{max-height:170px;position:relative;overflow-y:auto}.fflab-record-row.is-pending{color:#b4bccd}.fflab-record-row.is-current{background:var(--fflab-tint)}.fflab-charts{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px;min-width:0;display:grid}.fflab-chart-tabs{grid-column:1/-1;gap:6px;display:flex}.fflab-chart-tabs button{border:1px solid var(--fflab-strip-edge);color:var(--fflab-muted);cursor:pointer;background:#fff9;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}.fflab-chart-tabs button.is-active{border-color:var(--blue);color:var(--blue);background:#fff}.fflab-chart-card{padding:12px 14px 8px}.fflab-chart-card .motion-chart{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.fflab-charts-empty{text-align:center;color:var(--fflab-muted);justify-content:center;align-items:center;font-size:14px}.fflab-masslog-row{background:#f3f6fb;border-radius:10px;justify-content:space-between;align-items:center;padding:12px;font-size:14px;display:flex}.fflab-masslog-row b{font:600 20px var(--font-technical)}.fflab-masslog-verdict{margin-top:auto;font-size:13px;font-weight:700}.fflab-masslog-verdict.is-same{color:var(--fflab-green)}.fflab-masslog-verdict.is-diff{color:var(--fflab-amber)}.fflab-masslog-empty{color:var(--fflab-muted);margin-top:auto;font-size:13px;line-height:1.5}.fflab-side{flex-direction:column;gap:16px;min-width:0;display:flex}.fflab-card{border:1px solid var(--fflab-line);background:#fff;border-radius:20px;flex-direction:column;gap:12px;padding:20px 22px;display:flex}.fflab-card-grow{flex:1}.fflab-card-title{margin:0;font-size:17px;font-weight:800}.fflab-card-lead{text-wrap:pretty;margin:0;font-size:18px;font-weight:700;line-height:1.5}.fflab-card-lead-sm{font-size:16px}.fflab-card-sub{color:var(--fflab-muted);margin:0;font-size:14px;line-height:1.6}.fflab-card-kicker{align-items:center;gap:8px;display:flex}.fflab-card-kicker-hint{color:var(--fflab-faint);font-size:13px}.fflab-chip{background:var(--blue);color:#fff;border-radius:6px;align-self:flex-start;padding:4px 10px;font-size:13px;font-weight:800}.fflab-chip-soft{background:var(--fflab-tint);color:var(--blue)}.fflab-chip-think{background:var(--fflab-think-chip);color:var(--fflab-think-ink)}.fflab-choices{flex-direction:column;gap:10px;display:flex}.fflab-choices-md{gap:8px}.fflab-choice{border:1.5px solid var(--fflab-line);min-height:56px;color:var(--fflab-ink);text-align:left;cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:12px;padding:0 16px;font-size:16px;transition:border-color .15s,background .15s;display:flex}.fflab-choices-md .fflab-choice{border-radius:12px;gap:10px;min-height:48px;padding:0 14px;font-size:15px}.fflab-choice:hover:not(:disabled){border-color:var(--fflab-option-line)}.fflab-choice:disabled{opacity:.55;cursor:default}.fflab-choice-mark{border:1.5px solid var(--fflab-option-line);width:28px;height:28px;color:var(--fflab-muted);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;display:flex}.fflab-choices-md .fflab-choice-mark{width:24px;height:24px;font-size:12px}.fflab-choice.is-active{border:2px solid var(--blue);background:var(--fflab-selected);color:var(--blue);font-weight:700}.fflab-choice.is-active .fflab-choice-mark{border-color:var(--blue);background:var(--blue);color:#fff}.fflab-feedback{border-radius:10px;margin:0;padding:10px 12px;font-size:14px;line-height:1.55}.fflab-feedback.is-ok{background:var(--fflab-green-bg);color:var(--fflab-green)}.fflab-feedback.is-retry{background:var(--fflab-amber-bg);color:var(--fflab-amber)}.fflab-cond{flex:1;gap:16px}.fflab-var{flex-direction:column;gap:8px;display:flex}.fflab-var-head{align-items:center;gap:8px;display:flex}.fflab-tag{border-radius:6px;padding:3px 8px;font-size:12px;font-weight:700}.fflab-tag-iv{background:var(--blue);color:#fff}.fflab-tag-cv{color:var(--fflab-muted);background:#e3e7ef}.fflab-tag-dv{background:var(--fflab-green-bg);color:var(--fflab-green)}.fflab-var-name{font-size:15px;font-weight:700}.fflab-var-hint{color:var(--fflab-faint);font-size:13px}.fflab-var-note{color:var(--fflab-muted);margin:0;font-size:13px;line-height:1.5}.fflab-segment{background:var(--fflab-chip-bg);border-radius:14px;grid-template-columns:1fr 1fr .7fr;gap:8px;padding:4px;display:grid}.fflab-segment-option{height:48px;font:500 16px var(--font-technical);color:var(--fflab-muted);cursor:pointer;background:0 0;border:0;border-radius:10px}.fflab-segment-option.is-active{color:var(--blue);background:#fff;font-weight:600;box-shadow:0 1px 3px #00000014}.fflab-cond-rows{border:1px solid var(--fflab-line);border-radius:14px;flex-direction:column;display:flex}.fflab-cond-row{justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:4px 14px;font-size:15px;display:flex}.fflab-cond-row+.fflab-cond-row{border-top:1px solid var(--fflab-line-soft)}.fflab-cond-row>span:first-child{flex-direction:column;display:flex}.fflab-cond-row small{color:var(--fflab-faint);font-size:12px}.fflab-cond-row-sub{background:#fafbfd;padding-left:28px}.fflab-cond-row-solo{border:1px solid var(--fflab-line);border-radius:14px}.fflab-num{align-items:baseline;gap:6px;display:inline-flex}.fflab-num input,.fflab-select{font:700 15px var(--font-technical);color:var(--fflab-ink);background:#f5f7fb;border:1px solid #0000;border-radius:8px}.fflab-num input{text-align:right;width:5.5em;padding:6px 8px}.fflab-num input:focus,.fflab-select:focus{border-color:var(--blue);background:#fff;outline:none}.fflab-num-unit{min-width:2.6em;font:500 13px var(--font-technical);color:var(--fflab-muted)}.fflab-select{cursor:pointer;padding:6px 8px}.fflab-cond .field-group{border-top:1px solid var(--fflab-line-soft);padding-top:14px}.fflab-live{background:#f5f7fb;border-radius:12px;flex-direction:column;gap:6px;padding:12px;font-size:13px;display:flex}.fflab-live-title{font-size:13px;font-weight:800}.fflab-error{color:var(--force);margin:0;font-size:13px}.fflab-compare{gap:8px;padding:18px 20px}.fflab-compare.is-ok{background:var(--fflab-green-bg);border-color:var(--fflab-green-line)}.fflab-compare.is-diff{background:var(--fflab-amber-bg);border-color:var(--fflab-amber-line)}.fflab-compare-title{color:var(--fflab-muted);font-size:13px;font-weight:800}.fflab-compare.is-ok .fflab-compare-title{color:var(--fflab-green)}.fflab-compare.is-diff .fflab-compare-title{color:var(--fflab-amber)}.fflab-compare-body{margin:0;font-size:16px;line-height:1.5}.fflab-think{background:var(--fflab-think-bg);border:1.5px dashed var(--fflab-think-line)}.fflab-think-body{text-wrap:pretty;margin:0;font-size:16px;line-height:1.6}.fflab-think-action{border:1.5px solid var(--fflab-think-line);color:var(--fflab-think-ink);cursor:pointer;background:#fff;border-radius:999px;align-self:flex-start;padding:8px 14px;font-size:14px;font-weight:700}.fflab-think-formula{font:500 14px var(--font-technical);color:var(--fflab-think-ink);margin-top:auto}.fflab-details summary{color:var(--fflab-muted);cursor:pointer;font-size:14px;font-weight:700}.fflab-details .motion-analysis{margin-top:12px}.fflab-side-actions{flex-direction:column;gap:10px;margin-top:auto;display:flex}.fflab-playback{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fflab-outline-button{border:1.5px solid var(--fflab-option-line);height:60px;color:var(--fflab-ink);cursor:pointer;background:#fff;border-radius:999px;font-size:17px;font-weight:700}.fflab-outline-button.is-run{border-color:var(--blue);color:var(--blue)}.fflab-outline-button:disabled{opacity:.45;cursor:default}.fflab-cta{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:999px;height:60px;font-size:18px;font-weight:700;box-shadow:0 8px 20px #1d4ed840}.fflab-cta:disabled{box-shadow:none;cursor:default;background:#9fb3e4}.fflab-help{color:#1b2233;border:0;border-radius:20px;width:min(520px,100vw - 32px);margin:auto;padding:24px;box-shadow:0 24px 60px #1e325a40}.fflab-help::backdrop{background:#1b223359}.fflab-help h3{margin-bottom:12px;font-size:19px;font-weight:800}.fflab-help ol{flex-direction:column;gap:12px;margin:0 0 20px;padding:0;list-style:none;display:flex}.fflab-help li{background:#f5f7fb;border-radius:12px;padding:12px 14px}.fflab-help li.is-current{background:#e8f0fe}.fflab-help li p{color:#5b6680;margin-top:4px;font-size:14px;line-height:1.6}.fflab-help .fflab-cta{width:100%;height:52px;font-size:16px}@container fflab (max-width:819px){.fflab-side-actions{position:sticky;bottom:12px}}@container fflab-main (max-width:700px){.fflab-strip-1,.fflab-strip-2{grid-template-columns:repeat(3,minmax(0,1fr))}.fflab-strip-1>.fflab-strip-card,.fflab-strip-2>.fflab-strip-card{grid-column:1/-1}.fflab-strip-3,.fflab-charts{grid-template-columns:minmax(0,1fr)}}@container fflab (max-width:600px){.fflab-header{grid-template-columns:minmax(0,1fr) auto;padding:10px 14px}.fflab-steps{grid-area:2/1/auto/-1;justify-content:center}.fflab-step{padding:6px 10px;font-size:13px}.fflab-body{gap:12px;padding:12px}.fflab-stage{height:clamp(320px,55dvh,480px)}.fflab-strip{gap:10px;padding:12px}.fflab-gauge-dial{width:76px;height:76px}.fflab-gauge-readout b{font-size:16px}}.fflab-cond .hint{color:var(--fflab-faint);font-size:12px;line-height:1.5}.fflab-speed{border:1px solid var(--fflab-line);background:#ffffffe6;border-radius:999px;align-items:center;gap:4px;padding:4px;display:flex;position:absolute;bottom:24px;right:24px}.fflab-speed-label{color:var(--fflab-muted);padding:0 6px 0 8px;font-size:12px;font-weight:700}.fflab-speed button{min-width:44px;height:30px;font:600 13px var(--font-technical);color:var(--fflab-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 8px}.fflab-speed button.is-active{background:var(--blue);color:#fff}@container fflab (max-width:600px){.fflab-speed{inset:22px auto auto 22px}.fflab-stage-hint,.fflab-speed-label{display:none}}.fflab .motion-swatch-ball-a,.fflab-ball-name.is-a .fflab-ball-dot{background:var(--fflab-ball-a)}.fflab .motion-swatch-ball-b,.fflab-ball-name.is-b .fflab-ball-dot{background:var(--fflab-ball-b)}.fflab .motion-chart-line-ball-a{stroke:var(--fflab-ball-a)}.fflab .motion-chart-line-ball-b{stroke:var(--fflab-ball-b)}.fflab .motion-chart-dot-ball-a{fill:var(--fflab-ball-a)}.fflab .motion-chart-dot-ball-b{fill:var(--fflab-ball-b)}.fflab-ball-row{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:8px;display:grid}.fflab-ball-row .fflab-cond-row-solo{grid-column:1/-1}.fflab-ball-name{align-items:center;gap:6px;font-size:14px;font-weight:700;display:flex}.fflab-ball-dot{background:var(--fflab-ball-a);border-radius:50%;width:12px;height:12px}.fflab-ball-row .fflab-segment-option{height:40px;font-size:15px}.fflab-cond .fflab-ball-toggle{border:1.5px dashed var(--fflab-option-line);color:var(--fflab-muted);cursor:pointer;background:#fff;border-radius:999px;align-self:flex-start;padding:6px 12px;font-size:13px;font-weight:600}.fflab-cond .fflab-ball-toggle:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.fflab-gauge.is-dual .fflab-gauge-fill.is-a{stroke:var(--fflab-ball-a)}.fflab-gauge.is-dual .fflab-gauge-fill.is-b{stroke:var(--fflab-ball-b)}.fflab-gauge-dual-value{font:600 15px var(--font-technical);align-items:center;gap:4px;line-height:1.25;display:flex}.fflab-gauge-dual-value:before{content:"";border-radius:50%;width:7px;height:7px}.fflab-gauge-dual-value.is-a:before{background:var(--fflab-ball-a)}.fflab-gauge-dual-value.is-b:before{background:var(--fflab-ball-b)}.fflab-record.is-dual .fflab-record-row{grid-template-columns:.8fr repeat(4,1fr);font-size:12px}.fflab-record.is-dual .fflab-record-headrow .is-a{color:var(--fflab-ball-a-ink)}.fflab-record.is-dual .fflab-record-headrow .is-b{color:var(--fflab-ball-b-ink)}.fflab-record-unit{color:var(--fflab-faint);text-align:right;margin:0;font-size:11px}.fflab-height-pill.is-a:before,.fflab-height-pill.is-b:before{content:"";vertical-align:1px;border:1px solid #fff;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.fflab-height-pill.is-a:before{background:var(--fflab-ball-a)}.fflab-height-pill.is-b:before{background:var(--fflab-ball-b)}.fflab .tex .katex,.theory-formula-expr.tex .katex,.concept-guide .tex .katex,.usage-guide .tex .katex,.motion-analysis-formula .tex .katex{font-size:1.08em}.theory-formula-expr.tex .katex{font-size:1.25em}.fflab-feedback-tex{margin-top:6px}.fflab-feedback-tex .katex-display{text-align:left;margin:0}.fflab-think-formula .katex{font-size:1.3em}.fflab .motion-chart-line-ball-a{stroke-width:4.5px;stroke-opacity:.55}.fflab .motion-chart-line-ball-b{stroke-width:1.8px}.fflab-feedback-tex .katex-display>.katex{text-align:left}.fflab-gauge-dual-value{font-size:14px}@container fflab (min-width:601px){@container fflab-main (max-width:700px){.fflab-speed-label{display:none}}}.fflab-split-switch{color:var(--fflab-muted);cursor:pointer;align-items:center;gap:6px;margin-left:auto;font-size:13px;font-weight:600;display:inline-flex}.fflab-split-switch input{width:16px;height:16px;accent-color:var(--blue);cursor:pointer}.fflab-var-warn{background:var(--fflab-amber-bg);color:var(--fflab-amber);border-radius:10px;margin:0;padding:8px 10px;font-size:12px;line-height:1.5}.fflab-cond-rows.is-split .fflab-cond-row{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) minmax(0,1.05fr);gap:6px;padding:6px 10px;display:grid}.fflab-cond-rows.is-split .fflab-num input{width:100%;min-width:0;padding:6px}.fflab-cond-rows.is-split .fflab-num{grid-template-columns:minmax(0,1fr) auto;gap:3px;display:grid}.fflab-cond-rows.is-split .fflab-num-unit{min-width:0;font-size:11px}.fflab-cond-rows.is-split .fflab-select{width:100%;min-width:0;padding:6px 4px;font-size:13px}.fflab-gravity{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.fflab-cond-rows.is-split .fflab-gravity{align-items:stretch}.fflab-cond-splithead{min-height:0;padding-top:8px;padding-bottom:2px}.fflab-cond-splithead .fflab-ball-name{justify-content:center;font-size:12px}.fflab-var-head{flex-wrap:wrap;row-gap:6px}.fflab-tag,.fflab-split-switch{white-space:nowrap}.fflab-question{flex-direction:column;gap:10px;display:flex}.fflab-question.is-a,.fflab-question.is-b{border-left:3px solid var(--fflab-ball-a);padding-left:12px}.fflab-question.is-b{border-left-color:var(--fflab-ball-b)}.fflab-question+.fflab-question{margin-top:8px}.fflab-details-ball+.fflab-details-ball{margin-top:14px}.fflab-gauge-caption{color:var(--fflab-muted);background:#f3f6fb;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:11px;display:flex}.fflab-gauge-caption-label{font-weight:700}.fflab-gauge-caption b{font:600 12px var(--font-technical);color:var(--fflab-ink);align-items:center;gap:3px;display:inline-flex}.fflab-gauge-caption b.is-a:before,.fflab-gauge-caption b.is-b:before{content:"";background:var(--fflab-ball-a);border-radius:50%;width:6px;height:6px}.fflab-gauge-caption b.is-b:before{background:var(--fflab-ball-b)}.fflab-chart-tabs{flex-wrap:wrap}.fflab-stage-tools{align-items:center;gap:8px;display:flex;position:absolute;top:24px;right:26px}.fflab-zoom{border:1px solid var(--fflab-line);background:#ffffffe6;border-radius:999px;align-items:center;gap:2px;padding:3px;display:flex}.fflab-zoom button{min-width:30px;height:28px;color:var(--fflab-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 8px;font-size:16px;font-weight:700}.fflab-zoom button:hover:not(:disabled){background:var(--fflab-tint);color:var(--blue)}.fflab-zoom button:disabled{opacity:.35;cursor:default}.fflab-zoom .fflab-zoom-fit{font-size:12px}.fflab-zoom-level{text-align:center;min-width:34px;font:600 12px var(--font-technical);color:var(--fflab-ink)}@container fflab (max-width:600px){.fflab-stage-tools{top:auto;bottom:22px;right:22px}}.fflab-status.is-warn{background:var(--fflab-amber-bg);color:var(--fflab-amber);bottom:60px}.fflab-gauge-momentum .fflab-gauge-fill{stroke:var(--fflab-green)}.fflab-gauge-momentum .fflab-gauge-readout span{font-size:10px}.momentum-lab .fflab-segment.momentum-lab-segment{grid-template-columns:repeat(3,minmax(0,1fr))}.momentum-lab .momentum-lab-segment .fflab-segment-option{font-family:inherit;font-size:15px}.momentum-lab-ball{flex-direction:column;padding:10px 0 2px;display:flex}.momentum-lab-ball+.momentum-lab-ball{border-top:1px solid var(--fflab-line)}.momentum-lab-ball>.fflab-ball-name{padding:0 14px}.momentum-lab-ball .fflab-cond-row+.fflab-cond-row{border-top:1px solid var(--fflab-line-soft)}.momentum-lab-tag{color:#fff;font:600 12px var(--font-technical);white-space:nowrap;border-radius:999px;padding:3px 8px;display:inline-block}.momentum-lab-tag.is-a{background:var(--fflab-ball-a-ink)}.momentum-lab-tag.is-b{background:var(--fflab-ball-b-ink)}.momentum-lab-record .fflab-record-row{white-space:nowrap;grid-template-columns:1.25fr 1fr 1fr 1.1fr;gap:6px;font-size:12px}.momentum-lab-record .fflab-record-headrow i{font-style:normal}.momentum-lab-record .fflab-record-headrow .is-a{color:var(--fflab-ball-a-ink)}.momentum-lab-record .fflab-record-headrow .is-b{color:var(--fflab-ball-b-ink)}.fflab .motion-swatch-total{background:var(--fflab-ink)}.fflab .motion-chart-line-total{stroke:var(--fflab-ink);stroke-width:3px;stroke-dasharray:6 4}.fflab .motion-chart-dot-total{fill:var(--fflab-ink)}.momentum-bars{margin:0}.momentum-bars svg{width:100%;height:auto;display:block}.momentum-bar.is-a{fill:var(--fflab-ball-a)}.momentum-bar.is-b{fill:var(--fflab-ball-b)}.momentum-bar.is-sum{fill:var(--fflab-ink)}.momentum-bar-lost{fill:none;stroke:var(--fflab-faint);stroke-width:1.5px;stroke-dasharray:4 3}.momentum-bar-lost-label{font:600 11px var(--font-technical);fill:var(--fflab-amber)}.momentum-bar-value{font:600 12px var(--font-technical);fill:var(--fflab-ink)}.momentum-bar-group{fill:var(--fflab-muted);font-size:13px;font-weight:700}.momentum-bars-legend{color:var(--fflab-muted);align-items:center;gap:6px;margin:2px 0 0;font-size:12px;display:flex}.momentum-swatch{border-radius:2px;width:10px;height:10px;display:inline-block}.momentum-swatch.is-a{background:var(--fflab-ball-a)}.momentum-swatch.is-b{background:var(--fflab-ball-b)}.momentum-swatch.is-lost{border:1.5px dashed var(--fflab-faint)}.momentum-lab .fflab-masslog-row{gap:8px;padding:10px;font-size:13px}.momentum-lab .fflab-masslog-row b{white-space:nowrap;font-size:15px}.momentum-lab .fflab-stage{height:clamp(280px,42dvh,440px)}.force-lab{--force-f1:#e0563f;--force-f2:#4c8fe0;--force-f3:#3fae6b;--force-resultant:#1a1f2b}.fflab-gauge-force .fflab-gauge-fill{stroke:var(--force-resultant,#1a1f2b)}.force-lab .fflab-segment.force-lab-segment{grid-template-columns:1fr 1fr}.force-lab .force-lab-segment .fflab-segment-option{font-family:inherit;font-size:15px}.force-lab-force{grid-template-columns:44px minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px;min-height:52px;padding:4px 12px;display:grid}.force-lab-force+.force-lab-force{border-top:1px solid var(--fflab-line-soft)}.force-lab-force .fflab-num input{width:100%;min-width:0}.force-lab-force .fflab-num-unit{min-width:1.2em}.force-lab-force-name{align-items:center;gap:6px;font-size:15px;font-weight:800;display:inline-flex}.force-lab-force-name.is-f1 .fflab-ball-dot{background:var(--force-f1)}.force-lab-force-name.is-f2 .fflab-ball-dot{background:var(--force-f2)}.force-lab-force-name.is-f3 .fflab-ball-dot{background:var(--force-f3)}.force-lab-tiptail-card{gap:4px;padding:14px 18px}.force-lab-tiptail-card .force-tiptail svg{max-width:180px}.force-tiptail{margin:0}.force-tiptail svg{width:100%;max-width:260px;height:auto;margin:0 auto;display:block}.force-tiptail-fill{fill:var(--fflab-green-bg);stroke:none}.force-tiptail-origin{fill:#fff;stroke:var(--force-resultant);stroke-width:2px}.force-tiptail-label{font:700 14px var(--font-technical)}.force-tiptail-verdict{text-align:center;color:var(--fflab-amber);margin:4px 0 0;font-size:13px;font-weight:700}.force-tiptail-verdict.is-closed{color:var(--fflab-green)}.force-tiptail.is-compact .force-tiptail-verdict{font-size:12px}.force-lab-badge{background:var(--fflab-amber-bg);color:var(--fflab-amber);border:1px solid var(--fflab-amber-line)}.force-lab-badge.is-eq{background:var(--fflab-green-bg);color:var(--fflab-green);border-color:var(--fflab-green-line)}.force-lab-record .fflab-record-row{white-space:nowrap;grid-template-columns:.4fr .6fr .6fr .9fr .9fr .7fr;gap:4px;font-size:12px}.force-lab-state{color:var(--fflab-amber);font-weight:700}.force-lab-state.is-eq{color:var(--fflab-green)}.force-lab-charts{grid-template-rows:auto}.force-components table{border-collapse:collapse;width:100%;font:500 12px var(--font-technical)}.force-components th,.force-components td{text-align:right;white-space:nowrap;padding:5px 4px}.force-components thead th{color:var(--fflab-muted);border-bottom:1.5px solid var(--fflab-option-line);font-family:inherit;font-size:11px;font-weight:700}.force-components tbody th,.force-components tfoot th{text-align:left}.force-components tbody tr+tr td,.force-components tbody tr+tr th{border-top:1px solid var(--fflab-line-soft)}.force-components tfoot th,.force-components tfoot td{border-top:1.5px solid var(--fflab-option-line);font-weight:800}.force-components tfoot th{font-family:inherit;font-size:12px}.force-components-result{color:var(--fflab-muted);margin:10px 0 0;font-size:13px}.force-components-result b{font:700 15px var(--font-technical);color:var(--fflab-ink)}.force-components-formula{font:500 12px var(--font-technical);color:var(--fflab-faint);margin:0 0 4px}.fflab-gauge-angle .fflab-gauge-fill{stroke:var(--pendulum-1)}.fflab-gauge-count .fflab-gauge-fill{stroke:var(--fflab-green)}.fflab-gauge.is-dual .fflab-gauge-fill.is-p1{stroke:var(--pendulum-1)}.fflab-gauge.is-dual .fflab-gauge-fill.is-p2{stroke:var(--pendulum-2)}.fflab-gauge-dual-value.is-p1:before{background:var(--pendulum-1)}.fflab-gauge-dual-value.is-p2:before{background:var(--pendulum-2)}.pendulum-lab-bob{flex-direction:column;gap:6px;padding:10px 14px;display:flex}.pendulum-lab-bob+.pendulum-lab-bob{border-top:1px solid var(--fflab-line)}.pendulum-lab-bob-head{justify-content:space-between;align-items:center;display:flex}.pendulum-lab-bob-name{align-items:center;gap:6px;font-size:14px;font-weight:800;display:inline-flex}.pendulum-lab-bob-name .pendulum-swatch{border-radius:50%;width:12px;height:12px}.fflab .pendulum-lab-remove{border:1px solid var(--fflab-line);color:var(--fflab-muted);cursor:pointer;background:#fff;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.pendulum-lab-bob-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.pendulum-lab-bob-fields label{color:var(--fflab-muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.pendulum-lab-bob-fields .fflab-num input{width:100%;min-width:0}.pendulum-lab-bob-fields .fflab-num-unit{min-width:1.4em}.pendulum-lab .fflab-segment.pendulum-lab-segment{grid-template-columns:repeat(4,minmax(0,1fr))}.pendulum-lab .pendulum-lab-segment .fflab-segment-option{height:40px;font-family:inherit;font-size:14px}.pendulum-lab-damping{align-items:center;gap:8px;display:inline-flex}.pendulum-lab-damping .fflab-num input{width:4em}.pendulum-lab-record .fflab-record-row{white-space:nowrap;grid-template-columns:.6fr .7fr .7fr .6fr 1fr 1fr;gap:4px;font-size:12px}.pendulum-lab-wide{grid-column:1/-1}.pendulum-lab-energy{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.pendulum-lab .fflab-chart-card .pendulum-chart,.pendulum-lab .fflab-chart-card .pendulum-energy-chart{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.pendulum-t2l{margin:0}.pendulum-t2l svg{width:100%;max-width:520px;height:auto;margin:0 auto;display:block}.pendulum-t2l-fit{stroke:var(--fflab-ink);stroke-width:2px;stroke-dasharray:6 4}.pendulum-t2l-dot{stroke:#fff;stroke-width:1.5px}.pendulum-t2l-dot.is-p1{fill:var(--pendulum-1)}.pendulum-t2l-dot.is-p2{fill:var(--pendulum-2)}.pendulum-t2l-dot.is-p3{fill:var(--pendulum-3)}.pendulum-t2l-dot.is-excluded{fill:#fff;stroke:var(--fflab-faint);stroke-width:2px}.pendulum-t2l-axis-label{fill:var(--fflab-muted);font-size:11px}.pendulum-t2l-readout{color:var(--fflab-muted);text-align:center;margin:6px 0 0;font-size:13px;line-height:1.5}.pendulum-t2l-readout b{color:var(--fflab-ink)}.pendulum-t2l-note{color:var(--fflab-faint);justify-content:center;align-items:center;gap:6px;margin:4px 0 0;font-size:12px;display:flex}.pendulum-t2l-legend.is-excluded{border:2px solid var(--fflab-faint);border-radius:50%;width:10px;height:10px}.pendulum-lab-details .pendulum-comparison,.pendulum-lab-details .pendulum-analysis{margin-top:12px}.pendulum-lab-details .pendulum-analysis-grid{grid-template-columns:minmax(0,1fr)}.gas-lab{--gas-cold:#4c8fe0;--gas-hot:#e0563f}.gas-lab .fflab-gauge-force .fflab-gauge-readout span{white-space:nowrap;font-size:11px}.gas-lab .fflab-segment.gas-lab-segment{grid-template-columns:repeat(4,minmax(0,1fr))}.gas-lab .gas-lab-segment .fflab-segment-option{height:40px;font-size:14px}.gas-lab-slow{background:var(--fflab-amber-bg);color:var(--fflab-amber);border:1px solid var(--fflab-amber-line)}.gas-lab-colorkey{border:1px solid var(--fflab-line);color:var(--fflab-muted);pointer-events:none;background:#ffffffe6;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;top:24px;left:24px}.gas-lab-colorkey i{background:linear-gradient(90deg, var(--gas-cold), var(--gas-hot));border-radius:999px;width:56px;height:8px}@container fflab (max-width:600px){.gas-lab-colorkey{top:auto;bottom:22px;left:22px}}.gas-lab-record .fflab-record-row{white-space:nowrap;grid-template-columns:.4fr .7fr .7fr .5fr .9fr 1.3fr;gap:4px;font-size:12px}.gas-lab .fflab-masslog-row b{white-space:nowrap;font-size:14px}.gas-lab-hist-card{padding:12px 14px 10px}.gas-hist{margin:0}.gas-hist svg{width:100%;max-width:560px;height:auto;margin:0 auto;display:block}.gas-hist-bar.is-cold{fill:var(--gas-cold);opacity:.35}.gas-hist-bar.is-hot{fill:var(--gas-hot);opacity:.3}.gas-hist-curve{stroke-width:2.5px}.gas-hist-curve.is-cold{stroke:var(--gas-cold)}.gas-hist-curve.is-hot{stroke:var(--gas-hot)}.gas-hist-marker{stroke:var(--fflab-ink);stroke-width:1px;stroke-dasharray:3 3}.gas-hist-marker-label{font:600 10px var(--font-technical);fill:var(--fflab-ink)}.gas-hist-axis-label{fill:var(--fflab-muted);font-size:11px}.gas-hist-legend{color:var(--fflab-muted);flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:4px 0 0;padding:0;font-size:12px;list-style:none;display:flex}.gas-hist-legend li{align-items:center;gap:6px;display:inline-flex}.gas-hist-swatch{border-radius:3px;width:12px;height:12px}.gas-hist-swatch.is-cold{background:var(--gas-cold)}.gas-hist-swatch.is-hot{background:var(--gas-hot)}span.tex,.tex-glue{white-space:nowrap}.bt-page{--bt-blue:var(--blue);--bt-blue-deep:#0f2a9a;--bt-blue-line:#c9d3f5;--bt-blue-tint:#f2f5ff;--bt-rust:#b4532e;--bt-rust-deep:#7a3220;--bt-ink:#0c0f17;--bt-body:#4a5168;--bt-muted:#6b7186;--bt-faint:#8a90a3;--bt-line:#e3e7f0;--bt-line-strong:#d5dae6;--bt-soft:#f1f3f9;--bt-white:#fff;--bt-card-shadow:0 20px 60px #283c8c1a;--bt-orb:radial-gradient(circle at 35% 28%, #5f86ff, var(--bt-blue) 50%, var(--bt-blue-deep));--bt-orb-small:radial-gradient(circle at 35% 30%, #9db8ff, #2a55e0 45%, var(--bt-blue-deep));width:100%;max-width:1440px;color:var(--bt-ink);margin:0 auto;padding:2rem 2.5rem 3rem;position:relative;container-type:inline-size}.bt-page:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(700px 420px at 72% 0,#6eaac829,#0000 70%);height:420px;position:absolute;inset:0 0 auto}.bt-screen{flex-direction:column;gap:1.5rem;display:flex}.bt-eyebrow{font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;letter-spacing:.2em;color:var(--bt-blue);font-size:.875rem}.bt-eyebrow.is-small{letter-spacing:.18em;font-size:.8125rem}.bt-mini-label{font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;color:var(--bt-muted);font-size:.75rem;display:block}.bt-mini-label.is-soft{color:inherit;opacity:.85}.bt-anton{font-family:var(--font-anton), sans-serif;font-size:2rem;line-height:1}.bt-anton.is-xl{font-size:2.75rem}.bt-anton.is-md{font-size:1.25rem}.bt-mono-sm{font-family:var(--font-plex-mono), monospace;font-size:.8125rem}.bt-mono-md{font-family:var(--font-plex-mono), monospace;font-size:1rem}.bt-mono-xs{font-family:var(--font-plex-mono), monospace;color:var(--bt-muted);font-size:.75rem}.bt-mono-xs.is-blue{color:var(--bt-blue)}.bt-mono-xs.is-soft{color:inherit;opacity:.85}.bt-hint{color:var(--bt-muted);text-align:center;font-size:.8125rem}.bt-hint.is-warn{color:var(--bt-rust);font-weight:600}.bt-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;padding-top:1rem;display:flex}.bt-head-main{flex-direction:column;gap:.625rem;min-width:0;max-width:820px;display:flex}.bt-head-title{flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem;display:flex}.bt-ch-num{font-family:var(--font-anton), sans-serif;font-size:clamp(3rem,6cqw,5.25rem);line-height:.9}.bt-ch-title{letter-spacing:-.02em;word-break:keep-all;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem;margin:0;font-size:clamp(1.75rem,3cqw,2.5rem);font-weight:800;display:flex}.bt-head-intro{max-width:640px;color:var(--bt-body);text-wrap:pretty;word-break:keep-all;margin:0;font-size:1.0625rem;line-height:1.6}.bt-verdict{font-family:var(--font-anton), sans-serif;font-size:clamp(3.5rem,6.6cqw,6rem);font-weight:400;line-height:.9}.bt-verdict.is-hit{color:var(--bt-blue)}.bt-verdict.is-miss{color:var(--bt-rust)}.bt-verdict-text{font-size:clamp(1.5rem,2.5cqw,2.25rem)}.bt-head-side{flex-direction:column;align-items:flex-end;gap:1rem;display:flex}.bt-track{gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.bt-track-step{text-align:left;white-space:nowrap;width:112px;font:inherit;color:var(--bt-faint);cursor:pointer;background:0 0;border:none;flex-direction:column;gap:.5rem;padding:0;font-size:.8125rem;display:flex}.bt-track-step:disabled{cursor:default}.bt-track-step.is-done{color:var(--bt-body)}.bt-track-step.is-current{color:var(--bt-ink);font-weight:700}.bt-track-step:not(:disabled):hover .bt-track-label{color:var(--bt-blue)}.bt-track-bar{background:#dce1ec;border-radius:3px;height:6px;display:block;position:relative;overflow:hidden}.bt-track-step.is-current .bt-track-bar{background:var(--bt-blue-line)}.bt-track-fill{background:var(--bt-blue);position:absolute;inset:0 auto 0 0}.bt-track-num{font-family:var(--font-plex-mono), monospace}.bt-track-step.is-done .bt-track-num,.bt-track-step.is-current .bt-track-num{color:var(--bt-blue)}.bt-ammo,.bt-count-pill{background:var(--bt-white);border-radius:999px;align-items:center;gap:.875rem;height:52px;padding:0 1.375rem;display:flex;box-shadow:0 8px 24px #283c8c0f}.bt-count-pill{font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;font-size:.875rem;font-weight:600}.bt-ammo,.bt-count-pill{white-space:nowrap}.bt-ammo-label{color:var(--bt-body);font-size:.875rem;font-weight:600}.bt-ammo-icons{gap:2px;display:flex}.bt-banana-icon{border-radius:50%;width:24px;height:24px;transform:rotate(-20deg);box-shadow:inset 0 -3px #ffe58a,inset 0 -6px #f4c11a,inset 0 -7px #b9780a}.bt-banana-icon.is-used{opacity:.22}.bt-ammo-count{font-family:var(--font-plex-mono), monospace;font-size:.9375rem;font-weight:600}.bt-param-chips{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.bt-param{background:var(--bt-white);font-family:var(--font-plex-mono), monospace;border-radius:999px;padding:.625rem 1rem;font-size:.875rem}.bt-main{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:1.25rem;display:grid}@container (max-width:1000px){.bt-main{grid-template-columns:minmax(0,1fr)}.bt-head-side{align-items:flex-start}}@container (max-width:640px){.bt-track{flex-wrap:wrap}.bt-track-step{width:92px;font-size:.75rem}}.bt-stage{border:1px solid var(--bt-white);background:#e8f1ee;border-radius:28px;width:100%;position:relative;overflow:hidden;box-shadow:0 20px 60px #283c8c1f;container-type:inline-size}.bt-stage-canvas,.bt-stage-canvas>div{inset:0;width:100%!important;height:100%!important;position:absolute!important}.bt-stage-overlay{--bt-px:calc(100cqw / var(--bt-view-w));pointer-events:none;font-size:calc(var(--bt-px) * 13);position:absolute;inset:0}.bt-stage-labels{position:absolute;inset:0}.bt-stage-overlay>*,.bt-stage-labels>*{white-space:nowrap;position:absolute}.bt-guide-label{padding:calc(var(--bt-px) * 1) calc(var(--bt-px) * 6);font-family:var(--font-plex-mono), monospace;font-size:calc(var(--bt-px) * 11);color:#4a5a5c;background:#ffffffb3;border-radius:999px;font-weight:500}.bt-dist-label{width:calc(var(--bt-px) * 48);text-align:center;font-family:var(--font-plex-mono), monospace;font-size:calc(var(--bt-px) * 11);color:#4a5a5c;font-weight:500}.bt-chip-row{gap:calc(var(--bt-px) * 8);align-items:center;display:flex}.bt-chip{align-items:center;gap:calc(var(--bt-px) * 8);padding:calc(var(--bt-px) * 7) calc(var(--bt-px) * 12);font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;font-size:calc(var(--bt-px) * 13);color:var(--bt-ink);background:#ffffffe6;border-radius:999px;font-weight:600;display:inline-flex}.bt-page .katex{font-size:1.08em}.bt-chip.is-math,.bt-chip.is-mono,.bt-chip.is-light{font-weight:400}.bt-chip.is-dark{background:var(--bt-ink);color:var(--bt-white)}.bt-chip.is-live{background:var(--bt-rust);color:var(--bt-white);font-family:var(--font-plex-sans-kr), sans-serif;font-weight:700}.bt-live-dot{width:calc(var(--bt-px) * 8);height:calc(var(--bt-px) * 8);background:var(--bt-white);border-radius:50%}.bt-chip.is-customer{left:calc(var(--bt-px) * 20);top:calc(var(--bt-px) * 248);background:#ffffffeb}.bt-chip.is-clear-tag{left:calc(var(--bt-px) * 20);top:calc(var(--bt-px) * 20);background:#ffffffeb}.bt-aim-tag{padding:calc(var(--bt-px) * 3) calc(var(--bt-px) * 8);border-radius:calc(var(--bt-px) * 6);font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;font-size:calc(var(--bt-px) * 13);color:var(--bt-blue);background:#ffffffd9;font-weight:600;transform:rotate(-23deg)}.bt-angle-tag{font-family:var(--font-plex-mono), monospace;font-size:calc(var(--bt-px) * 13);font-weight:600}.bt-coord-tag,.bt-land-tag,.bt-t-tag{padding:calc(var(--bt-px) * 3) calc(var(--bt-px) * 8);border-radius:calc(var(--bt-px) * 6);font-family:var(--font-plex-mono), monospace;font-size:calc(var(--bt-px) * 12);color:var(--bt-blue);background:#ffffffe6;font-weight:600}.bt-land-tag{background:var(--bt-white);color:var(--bt-rust-deep)}.bt-t-tag{background:var(--bt-ink);color:var(--bt-white)}.bt-bubble{padding:calc(var(--bt-px) * 12) calc(var(--bt-px) * 16);border-radius:calc(var(--bt-px) * 18) calc(var(--bt-px) * 18) calc(var(--bt-px) * 4) calc(var(--bt-px) * 18);background:var(--bt-white);font-size:calc(var(--bt-px) * 15);font-weight:700;line-height:1.45;box-shadow:0 8px 24px #283c8c1f}.bt-bubble.is-anchored{transform:translate(-100%,-100%)}.bt-bubble.is-right{border-radius:calc(var(--bt-px) * 18) calc(var(--bt-px) * 4) calc(var(--bt-px) * 18) calc(var(--bt-px) * 18);font-size:calc(var(--bt-px) * 17);font-weight:800}.bt-bubble.is-big{padding:calc(var(--bt-px) * 10) calc(var(--bt-px) * 16);font-size:calc(var(--bt-px) * 20);font-weight:800}.bt-bubble.is-intro{left:calc(var(--bt-px) * 28);top:calc(var(--bt-px) * 44);font-size:calc(var(--bt-px) * 16)}.bt-bubble.is-clear{left:calc(var(--bt-px) * 44);top:calc(var(--bt-px) * 120);padding:calc(var(--bt-px) * 12) calc(var(--bt-px) * 18);font-size:calc(var(--bt-px) * 18);font-weight:800}.bt-shout{padding:calc(var(--bt-px) * 8) calc(var(--bt-px) * 16);border-radius:calc(var(--bt-px) * 18) calc(var(--bt-px) * 18) calc(var(--bt-px) * 18) calc(var(--bt-px) * 4);background:var(--bt-rust);color:var(--bt-white);font-size:calc(var(--bt-px) * 24);font-weight:900;transform:rotate(-6deg)}.bt-drop-label{gap:calc(var(--bt-px) * 4);flex-direction:column;display:flex}.bt-drop-label.is-monkey{align-items:flex-end}.bt-drop-value{padding:calc(var(--bt-px) * 5) calc(var(--bt-px) * 10);border-radius:calc(var(--bt-px) * 8);background:var(--bt-rust);color:var(--bt-white);font-family:var(--font-plex-mono), monospace;font-size:calc(var(--bt-px) * 13);font-weight:600}.bt-drop-label.is-monkey .bt-drop-value{background:var(--bt-blue)}.bt-drop-caption{font-size:calc(var(--bt-px) * 12);color:var(--bt-rust-deep);font-weight:600}.bt-drop-label.is-monkey .bt-drop-caption{color:var(--bt-blue-deep)}.bt-panel{border:1px solid var(--bt-white);box-shadow:var(--bt-card-shadow);background:#ffffffd9;border-radius:28px;flex-direction:column;gap:1.25rem;padding:1.625rem;display:flex}.bt-slider{flex-direction:column;gap:.625rem;display:flex}.bt-slider.is-disabled{opacity:.45}.bt-slider-head{justify-content:space-between;align-items:baseline;display:flex}.bt-slider-label{font-size:.9375rem;font-weight:700}.bt-slider-track{height:28px;position:relative}.bt-slider-rail,.bt-slider-fill{border-radius:3px;height:6px;position:absolute;top:11px;left:0}.bt-slider-rail{background:#dfe4ef;right:0}.bt-slider-track.is-blue .bt-slider-fill{background:var(--bt-blue)}.bt-slider-track.is-rust .bt-slider-fill{background:var(--bt-rust)}.bt-slider-thumb{pointer-events:none;border-radius:50%;width:28px;height:28px;position:absolute;top:0}.bt-slider-track.is-blue .bt-slider-thumb{background:var(--bt-orb-small);box-shadow:0 4px 10px #1a47d659}.bt-slider-track.is-rust .bt-slider-thumb{background:radial-gradient(circle at 35% 30%, #e0a084, var(--bt-rust) 50%, var(--bt-rust-deep));box-shadow:0 4px 10px #b4532e59}.bt-slider-track input,.bt-scrub input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.bt-slider-track input:disabled{cursor:not-allowed}:is(.bt-slider-track:has(input:focus-visible) .bt-slider-thumb,.bt-scrub:has(input:focus-visible) .bt-scrub-thumb){outline:3px solid var(--blue-soft);outline-offset:2px}.bt-slider-ticks{font-family:var(--font-plex-mono), monospace;color:var(--bt-faint);justify-content:space-between;font-size:.6875rem;display:flex}.bt-slider-note{color:var(--bt-muted);font-size:.75rem}.bt-gravity{background:var(--bt-soft);border-radius:18px;flex-direction:column;gap:.75rem;padding:.875rem 1.125rem;display:flex}.bt-gravity-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.bt-gravity-name{flex-direction:column;gap:2px;display:flex}.bt-gravity-zoo{font-size:.875rem;font-weight:700}.bt-gravity-value{white-space:nowrap}.bt-zoo-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:.375rem;display:grid}.bt-zoo-chip{border:1.5px solid var(--bt-line-strong);background:var(--bt-white);font:inherit;color:var(--bt-ink);cursor:pointer;border-radius:999px;padding:.5rem 0;font-size:.875rem;font-weight:700}.bt-zoo-chip.is-on{border-color:var(--bt-ink);background:var(--bt-ink);color:var(--bt-white)}.bt-zoo-chip:disabled{cursor:default;opacity:.6}.bt-toggle-row{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:0;display:flex}.bt-toggle-text{flex-direction:column;gap:2px;display:flex}.bt-toggle-title{font-size:.9375rem;font-weight:700}.bt-toggle-sub{color:var(--bt-muted);font-size:.8125rem}.bt-switch{background:#cfd5e3;border-radius:999px;flex:none;width:54px;height:30px;transition:background .15s;position:relative}.bt-switch.is-on{background:var(--bt-blue)}.bt-switch-knob{background:var(--bt-white);border-radius:50%;width:24px;height:24px;transition:left .15s;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #0003}.bt-switch.is-on .bt-switch-knob{left:27px}.bt-divider{background:#e6e9f2;height:1px}.bt-throw{flex-direction:column;align-items:center;gap:.75rem;display:flex}.bt-goal{border:1.5px dashed var(--bt-blue-line);word-break:keep-all;border-radius:14px;align-self:stretch;margin:0;padding:.75rem 1rem;font-size:.875rem;font-weight:600}.bt-goal .bt-mini-label{color:var(--bt-blue);margin-bottom:.25rem}.bt-big-button{background:var(--bt-orb);width:150px;height:150px;color:var(--bt-white);font:inherit;cursor:pointer;border:none;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;font-size:1.125rem;transition:transform .15s;display:flex;box-shadow:0 18px 40px #1a47d659}.bt-big-button:hover{transform:scale(1.03)}.bt-big-button:focus-visible{outline:4px solid var(--blue-soft);outline-offset:4px}.bt-big-button-label{font-size:1.75rem;font-weight:800}.bt-big-button-label.is-mid{font-size:1.5rem}.bt-big-button-label.is-small{text-align:center;word-break:keep-all;padding:0 1rem;font-size:1.25rem}.bt-big-button.is-busy{box-shadow:none;color:var(--bt-muted);cursor:default;background:#e3e7f0}.bt-big-button.is-busy:hover{transform:none}.bt-big-button.is-refill{background:radial-gradient(circle at 35% 28%, #e0a084, var(--bt-rust) 50%, var(--bt-rust-deep));box-shadow:0 18px 40px #b4532e4d}.bt-pill-button,.bt-ghost-button{height:56px;font:inherit;cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.875rem;font-size:1rem;font-weight:600;display:inline-flex}.bt-pill-button{background:var(--bt-blue);color:var(--bt-white);border:none}.bt-pill-button:disabled{cursor:not-allowed;background:#9aa3b8}.bt-pill-button.is-flex{flex:1;padding:0 1rem}.bt-pill-button.is-wide{width:100%;margin-top:.375rem}.bt-ghost-button{border:1.5px solid var(--bt-line-strong);background:var(--bt-white);color:var(--bt-ink);flex:1;padding:0 1rem}.bt-ghost-button:hover{border-color:var(--bt-ink)}.bt-modal-backdrop{z-index:100;background:#0c0f1780;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.bt-modal{background:var(--bt-white);width:min(880px,100%);color:var(--bt-ink);border-radius:32px;flex-direction:column;gap:1.75rem;margin:auto;padding:2.5rem 2.75rem;display:flex;box-shadow:0 40px 100px #0a0f2859}.bt-modal-head{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.bt-modal-titles{flex-direction:column;gap:.625rem;display:flex}.bt-modal-title{letter-spacing:-.02em;word-break:keep-all;margin:0;font-size:clamp(1.4rem,3vw,2rem);font-weight:800;line-height:1.3}.bt-modal-close{background:var(--bt-soft);width:44px;height:44px;color:var(--bt-muted);cursor:pointer;border:none;border-radius:50%;flex:none;font-size:1.25rem}.bt-pred-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.875rem;display:grid}@media (max-width:640px){.bt-pred-grid{grid-template-columns:minmax(0,1fr)}.bt-modal{padding:1.5rem}}.bt-pred-card{border:2px solid var(--bt-line);background:var(--bt-white);font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:22px;flex-direction:column;gap:.75rem;padding:1rem 1rem 1.25rem;display:flex;position:relative}.bt-pred-card.is-on{border-color:var(--bt-blue);background:var(--bt-blue-tint)}.bt-pred-svg{background:#eef2f2;border-radius:14px;width:100%;height:auto;display:block}.bt-pred-aim{stroke:var(--bt-blue);stroke-width:2.5px;stroke-dasharray:7 6}.bt-pred-hand{fill:var(--bt-ink)}.bt-pred-monkey{fill:#8a4c24}.bt-pred-target{fill:none;stroke:var(--bt-blue);stroke-width:2px}.bt-pred-title{font-size:1.25rem;font-weight:800}.bt-pred-sub{color:var(--bt-muted);font-size:.875rem}.bt-pred-check{background:var(--bt-blue);width:28px;height:28px;color:var(--bt-white);opacity:0;border-radius:50%;justify-content:center;align-items:center;font-size:.9375rem;font-weight:800;display:flex;position:absolute;top:14px;right:14px}.bt-pred-card.is-on .bt-pred-check{opacity:1}.bt-why{flex-direction:column;gap:.75rem;display:flex}.bt-why-title{font-size:1rem;font-weight:700}.bt-why-list{flex-wrap:wrap;gap:.5rem;display:flex}.bt-why-chip{border:1.5px solid var(--bt-line-strong);background:var(--bt-white);font:inherit;color:var(--bt-ink);cursor:pointer;border-radius:999px;padding:.625rem 1.125rem;font-size:.9375rem;font-weight:600}.bt-why-chip.is-on{border-color:var(--bt-ink);background:var(--bt-ink);color:var(--bt-white)}.bt-modal-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;padding-top:.25rem;display:flex}.bt-replay{flex-direction:column;gap:1rem;min-width:0;display:flex}.bt-playbar{border:1px solid var(--bt-white);background:#ffffffe0;border-radius:22px;align-items:center;gap:1.25rem;padding:.875rem 1.25rem;display:flex}@container (max-width:640px){.bt-playbar{flex-wrap:wrap;gap:.75rem}.bt-scrub{flex-basis:100%;order:3}}.bt-play{background:var(--bt-orb);cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.bt-icon-play{border-left:16px solid var(--bt-white);border-top:10px solid #0000;border-bottom:10px solid #0000;width:0;height:0;margin-left:4px}.bt-icon-pause{border-left:5px solid var(--bt-white);border-right:5px solid var(--bt-white);width:16px;height:18px}.bt-rates{gap:4px;display:flex}.bt-rate{font-family:var(--font-plex-mono), monospace;color:var(--bt-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.4375rem .625rem;font-size:.8125rem;font-weight:600}.bt-rate.is-on{background:var(--bt-ink);color:var(--bt-white)}.bt-scrub{flex:1;min-width:160px;height:44px;position:relative}.bt-scrub-rail,.bt-scrub-fill{border-radius:2px;height:4px;position:absolute;top:20px;left:0}.bt-scrub-rail{background:#dfe4ef;right:0}.bt-scrub-fill{background:var(--bt-blue)}.bt-scrub-tick{background:#9aa3b8;width:1.5px;height:6px;position:absolute;top:30px}.bt-scrub-thumb{background:var(--bt-white);border:4px solid var(--bt-blue);pointer-events:none;border-radius:50%;width:20px;height:20px;position:absolute;top:12px}.bt-scrub-end{font-family:var(--font-plex-mono), monospace;color:var(--bt-muted);font-size:.6875rem;position:absolute;top:-2px}.bt-scrub-end.is-start{left:0}.bt-scrub-end.is-stop{right:0}.bt-scrub-now{text-align:right;width:90px;font-family:var(--font-plex-mono), monospace;font-size:.9375rem;font-weight:600}.bt-analysis{flex-direction:column;gap:1rem;display:flex}.bt-card{border:1px solid var(--bt-white);background:#ffffffe0;border-radius:24px;flex-direction:column;gap:.75rem;padding:1.25rem 1.375rem;display:flex}.bt-card-head{justify-content:space-between;align-items:center;display:flex}.bt-card-title{font-size:.9375rem;font-weight:700}.bt-chart{flex-direction:column;gap:.75rem;margin:0;display:flex}.bt-chart-svg{width:100%;height:auto;display:block}.bt-chart-grid{fill:none;stroke:var(--bt-line);stroke-width:1px}.bt-chart-axis{fill:none;stroke:var(--bt-ink);stroke-width:1.5px}.bt-chart-now{stroke:var(--bt-ink);stroke-width:1px;stroke-dasharray:3 3}.bt-chart-banana,.bt-chart-monkey{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.bt-chart-banana{stroke:var(--bt-rust)}.bt-chart-monkey{stroke:var(--bt-blue)}.bt-chart-hit{fill:var(--bt-white);stroke:var(--bt-ink);stroke-width:2.5px}.bt-chart-tick{font-family:var(--font-plex-mono), monospace;fill:var(--bt-muted);font-size:10px}.bt-chart-legend{gap:1rem;font-size:.8125rem;font-weight:600;display:flex}.bt-legend{align-items:center;gap:6px;display:flex}.bt-legend:before{content:"";border-radius:2px;width:16px;height:3px}.bt-legend.is-banana:before{background:var(--bt-rust)}.bt-legend.is-monkey:before{background:var(--bt-blue)}.bt-legend-note{color:var(--bt-muted);margin-left:auto}.bt-card.is-table{gap:.625rem;font-size:.875rem}.bt-moment{grid-template-columns:1fr auto auto;align-items:baseline;gap:.5rem .875rem;display:grid}.bt-moment-head{text-align:right;font-size:.75rem;font-weight:700}.bt-moment-head.is-banana{color:var(--bt-rust-deep)}.bt-moment-head.is-monkey{color:var(--bt-blue-deep)}.bt-moment-num{font-family:var(--font-plex-mono), monospace;text-align:right}.bt-moment-key{font-weight:700}.bt-moment-num.is-banana{color:var(--bt-rust);font-weight:600}.bt-moment-num.is-monkey{color:var(--bt-blue);font-weight:600}.bt-card.is-discovery{background:radial-gradient(circle at 20% 0%, #3a66f0, var(--bt-blue) 55%, var(--bt-blue-deep));color:var(--bt-white);border:none;gap:.5rem}.bt-discovery{text-wrap:pretty;word-break:keep-all;margin:0;font-size:1rem;font-weight:600;line-height:1.6}.bt-discovery-pred{word-break:keep-all;border-top:1px solid #ffffff4d;margin:.25rem 0 0;padding-top:.5rem;font-size:.875rem;line-height:1.5}.bt-actions{gap:.625rem;display:flex}.bt-intro-head{flex-direction:column;gap:.625rem;padding-top:1.5rem;display:flex}.bt-intro-title{letter-spacing:-.03em;word-break:keep-all;margin:0;font-size:clamp(2.25rem,4.5cqw,3.5rem);font-weight:800;line-height:1.1}.bt-intro-grid,.bt-clear-grid{grid-template-columns:minmax(0,1fr) 520px;gap:1.25rem;display:grid}@container (max-width:1000px){.bt-intro-grid,.bt-clear-grid{grid-template-columns:minmax(0,1fr)}}.bt-cert{background:var(--bt-white);box-shadow:var(--bt-card-shadow);border-radius:28px;flex-direction:column;gap:1.75rem;padding:2.75rem 3rem;display:flex;position:relative}.bt-cert:before{content:"";border:1.5px dashed var(--bt-blue-line);pointer-events:none;border-radius:18px;position:absolute;inset:14px}@container (max-width:640px){.bt-cert{padding:2rem 1.5rem}}.bt-cert-top{justify-content:space-between;align-items:center;display:flex}.bt-cert-no{font-family:var(--font-plex-mono), monospace;color:var(--bt-faint);font-size:.8125rem}.bt-cert-body{flex-direction:column;gap:1.125rem;display:flex}.bt-cert-title{letter-spacing:-.03em;font-size:clamp(2.75rem,5cqw,4.25rem);font-weight:900;line-height:1}.bt-cert-name{align-items:flex-end;gap:1rem;display:flex}.bt-cert-name-label{padding-bottom:.5rem;font-size:1.25rem;font-weight:700}.bt-cert-name-input{border:none;border-bottom:2px solid var(--bt-ink);min-width:0;max-width:360px;font:inherit;color:var(--bt-ink);background:0 0;border-radius:0;flex:1;padding:0 4px 8px;font-size:1.625rem;font-weight:700}.bt-cert-name-input::placeholder{color:#b5bccb}.bt-cert-name-input:focus{border-bottom-color:var(--bt-blue);outline:none}.bt-cert-text{color:#2e3448;text-wrap:pretty;word-break:keep-all;max-width:600px;margin:0;font-size:1.1875rem;line-height:1.7}.bt-cert-course{flex-direction:column;gap:.75rem;display:flex}.bt-cert-chapters{grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}@container (max-width:640px){.bt-cert-chapters{grid-template-columns:repeat(2,minmax(0,1fr))}}.bt-cert-chapters li{background:var(--bt-soft);border-radius:16px;flex-direction:column;gap:4px;padding:.875rem;display:flex}.bt-cert-chapters li.is-done{background:var(--bt-blue-tint)}.bt-cert-ch-num{font-family:var(--font-plex-mono), monospace;color:var(--bt-blue);font-size:.8125rem;font-weight:600}.bt-cert-ch-title{word-break:keep-all;font-size:.875rem;font-weight:700}.bt-cert-foot{justify-content:space-between;align-items:flex-end;padding-top:.5rem;display:flex}.bt-cert-issuer{flex-direction:column;gap:4px;display:flex}.bt-cert-issuer-label{color:var(--bt-muted);font-size:.8125rem}.bt-cert-issuer-name{font-size:1.125rem;font-weight:800}.bt-cert-seal-slot{text-align:center;width:110px;height:110px;color:var(--bt-faint);border:2px dashed #c3c9d6;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;line-height:1.5;display:flex}.bt-intro-side{flex-direction:column;gap:1.25rem;display:flex}.bt-customer{background:var(--bt-white);box-shadow:var(--bt-card-shadow);border-radius:28px;flex-direction:column;display:flex;overflow:hidden}.bt-customer-scene .bt-stage,.bt-clear-scene .bt-stage{box-shadow:none;border:none;border-radius:0}.bt-customer-body{flex-direction:column;gap:.875rem;padding:1.5rem 1.75rem 1.75rem;display:flex}.bt-customer-name{font-size:1.5rem;font-weight:800}.bt-customer-stats{grid-template-columns:auto 1fr;align-items:center;gap:.625rem 1.25rem;margin:0;font-size:.9375rem;display:grid}.bt-customer-stats dt{color:var(--bt-muted)}.bt-customer-stats dd{margin:0}.bt-dots{font-family:var(--font-plex-mono), monospace;letter-spacing:.2em;color:var(--bt-rust)}.bt-customer-skill{font-weight:600}.bt-start{border:1px solid var(--bt-white);background:#ffffffd9;border-radius:28px;align-items:center;gap:1.5rem;padding:1.25rem 1.5rem;display:flex}.bt-start-text{color:var(--bt-body);text-wrap:pretty;word-break:keep-all;margin:0;font-size:.9375rem;line-height:1.6}.bt-meeting{grid-template-columns:minmax(0,1fr) 440px;align-items:start;gap:1.25rem;display:grid}@container (max-width:1000px){.bt-meeting{grid-template-columns:minmax(0,1fr)}}.bt-claims{flex-direction:column;gap:.875rem;margin:0;padding:0;list-style:none;display:flex}.bt-claim{border:2px solid var(--bt-white);cursor:pointer;background:#ffffffb3;border-radius:28px;grid-template-columns:120px minmax(0,1fr);gap:1.375rem;padding:1.25rem 1.5rem 1.25rem 1.25rem;display:grid;box-shadow:0 14px 40px #283c8c14}.bt-claim.is-active{border-color:var(--bt-blue);background:var(--bt-white)}.bt-claim.is-wrong{border-color:var(--bt-rust)}.bt-claim.is-right{border-color:var(--green)}@container (max-width:640px){.bt-claim{grid-template-columns:minmax(0,1fr)}.bt-claim-who{flex-direction:row;justify-content:flex-start}.bt-claim-who .bt-keeper-tile{width:64px;height:64px}}.bt-claim-who{flex-direction:column;align-items:center;gap:.5rem;display:flex}.bt-keeper-tile{border-radius:24px;width:120px;height:120px;position:relative;overflow:hidden}.bt-keeper-tile.is-0{background:#dfeaf0}.bt-keeper-tile.is-1{background:#efe6dc}.bt-keeper-tile.is-2{background:#e6e2f0}.bt-claim-name{font-size:.875rem;font-weight:800}.bt-claim-role{color:var(--bt-muted);margin-top:-6px;font-size:.75rem}.bt-claim-body{flex-direction:column;gap:.875rem;min-width:0;display:flex}.bt-claim-said{align-items:flex-start;gap:.75rem;display:flex}.bt-claim-num{font-family:var(--font-plex-mono), monospace;color:var(--bt-blue);flex:none;padding-top:1rem;font-size:.8125rem;font-weight:600}.bt-claim-text{background:var(--bt-soft);font:inherit;color:var(--bt-ink);text-align:left;text-wrap:pretty;word-break:keep-all;cursor:pointer;border:none;border-radius:4px 22px 22px;flex:1;padding:.875rem 1.25rem;font-size:1.1875rem;font-weight:700;line-height:1.5}.bt-claim-answer{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.bt-verdict-toggle{background:var(--bt-soft);border-radius:999px;flex:none;gap:4px;padding:4px;display:flex}.bt-verdict-chip{background:var(--bt-white);font:inherit;color:var(--bt-body);cursor:pointer;border:none;border-radius:999px;padding:.5rem 1rem;font-size:.875rem;font-weight:700}.bt-verdict-chip.is-ok{background:var(--bt-blue);color:var(--bt-white)}.bt-verdict-chip.is-no{background:var(--bt-rust);color:var(--bt-white)}.bt-claim-ev-label{color:var(--bt-muted);flex:none;font-size:.8125rem}.bt-claim-card,.bt-claim-slot{border-radius:14px;flex:1;min-width:200px;font-size:.875rem}.bt-claim-card{background:var(--bt-blue);color:var(--bt-white);word-break:keep-all;align-items:center;gap:.625rem;padding:.625rem .875rem;font-weight:600;display:flex}.bt-claim-slot{color:var(--bt-faint);border:1.5px dashed #c3c9d6;padding:.75rem .875rem}.bt-claim-feedback{color:var(--bt-rust-deep);word-break:keep-all;margin:0;font-size:.875rem;font-weight:600;line-height:1.5}.bt-cards{border:1px solid var(--bt-white);box-shadow:var(--bt-card-shadow);background:#ffffffd9;border-radius:28px;flex-direction:column;gap:.875rem;padding:1.5rem;display:flex}.bt-cards-head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.bt-ev-card{border:2px solid var(--bt-white);background:var(--bt-white);font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:20px;align-items:flex-start;gap:.875rem;padding:1rem 1.125rem;display:flex;position:relative;box-shadow:0 6px 18px #283c8c0f}.bt-ev-card.is-used{background:var(--bt-blue-tint)}.bt-ev-card.is-mine{border-color:var(--bt-blue)}.bt-ev-key{background:var(--bt-orb-small);width:40px;height:40px;color:var(--bt-white);font-family:var(--font-anton), sans-serif;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.bt-ev-body{flex-direction:column;gap:.375rem;padding-top:2px;display:flex}.bt-ev-text{text-wrap:pretty;word-break:keep-all;font-size:.9375rem;font-weight:600;line-height:1.5}.bt-ev-tag{background:var(--bt-blue);color:var(--bt-white);font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;border-radius:6px;align-self:flex-start;padding:3px 8px;font-size:.6875rem;font-weight:600}.bt-clear-grid{padding-top:2rem}.bt-clear-main{flex-direction:column;gap:2rem;display:flex}.bt-clear-hero{flex-wrap:wrap;align-items:center;gap:2.25rem;display:flex}.bt-seal{border:5px solid var(--bt-rust);width:200px;height:200px;box-shadow:inset 0 0 0 6px var(--bt-white), inset 0 0 0 8px var(--bt-rust);color:var(--bt-rust);border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;display:flex;transform:rotate(-12deg)}.bt-seal-top{font-family:var(--font-plex-mono), monospace;letter-spacing:.2em;font-size:.6875rem;font-weight:600}.bt-seal-main{letter-spacing:-.02em;font-size:1.875rem;font-weight:900}.bt-seal-date{font-family:var(--font-plex-mono), monospace;font-size:.75rem;font-weight:600}.bt-clear-titles{flex-direction:column;gap:.625rem;display:flex}.bt-clear-word{font-family:var(--font-anton), sans-serif;color:var(--bt-blue);margin:0;font-size:clamp(4rem,7.2cqw,6.5rem);font-weight:400;line-height:.9}.bt-clear-sub{letter-spacing:-.02em;word-break:keep-all;font-size:clamp(1.5rem,2.2cqw,2rem);font-weight:800}.bt-learned{background:var(--bt-white);box-shadow:var(--bt-card-shadow);border-radius:28px;flex-direction:column;gap:4px;margin:0;padding:.75rem 1.75rem;list-style:none;display:flex}.bt-learned li{grid-template-columns:56px minmax(0,1fr);align-items:baseline;gap:1rem;padding:1.125rem 0;display:grid}.bt-learned li+li{border-top:1px solid #e6e9f2}.bt-learned-num{font-family:var(--font-anton), sans-serif;color:var(--bt-blue);font-size:2rem}.bt-learned-text{text-wrap:pretty;word-break:keep-all;font-size:1.1875rem;font-weight:600;line-height:1.55}.bt-clear-scene{border:1px solid var(--bt-white);border-radius:28px;align-self:start;overflow:hidden;box-shadow:0 20px 60px #283c8c1f}.bt-clear-foot{grid-template-columns:minmax(0,1fr) 520px;gap:1.25rem;display:grid}@container (max-width:1000px){.bt-clear-foot{grid-template-columns:minmax(0,1fr)}}.bt-next-mission{background:radial-gradient(circle at 15% 0%, #3a66f0, var(--bt-blue) 55%, var(--bt-blue-deep));color:var(--bt-white);border-radius:28px;align-items:center;gap:1.75rem;padding:1.5rem 1.75rem;display:flex}.bt-next-text{flex-direction:column;gap:6px;display:flex}.bt-next-name{letter-spacing:-.02em;font-size:2.125rem;font-weight:800}.bt-next-soon{opacity:.8;font-size:.875rem}.bt-next-arrow{background:var(--bt-white);width:96px;height:96px;color:var(--bt-blue);opacity:.55;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-left:auto;font-size:1.75rem;font-weight:800;display:flex}.bt-clear-actions{align-items:center;gap:.625rem;display:flex}@media (max-width:640px){.bt-page{padding:1rem 1rem 2rem}.bt-start{text-align:center;flex-direction:column}}.nav-submenu-divider{font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;letter-spacing:.12em;color:var(--muted);align-items:center;gap:.5rem;margin:.35rem .7rem .15rem;font-size:.65rem;font-weight:600;display:flex}.nav-submenu-divider:before,.nav-submenu-divider:after{content:"";background:var(--hairline);flex:1;height:1px}.nav-code.is-game{color:var(--amber)}.bt-howto{border:1px solid var(--bt-white);box-shadow:var(--bt-card-shadow);background:#ffffffd9;border-radius:28px;flex-direction:column;gap:1.25rem;padding:1.75rem 1.875rem 1.625rem;display:flex}.bt-howto-head{flex-direction:column;gap:.375rem;display:flex}.bt-howto-title{font-family:var(--font-anton), sans-serif;letter-spacing:.01em;color:var(--bt-ink);margin:0;font-size:1.75rem;line-height:1.1}.bt-howto-lead{color:var(--bt-body);text-wrap:pretty;word-break:keep-all;margin:0;font-size:.9375rem;line-height:1.6}.bt-howto-stage{width:100%}.bt-howto-tag{padding:calc(var(--bt-px) * 4) calc(var(--bt-px) * 9);border-radius:calc(var(--bt-px) * 7);font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;font-size:calc(var(--bt-px) * 13);color:var(--bt-ink);box-shadow:0 calc(var(--bt-px) * 2) calc(var(--bt-px) * 8) #14235a1a;background:#ffffffeb;font-weight:600;line-height:1.25}.bt-howto-tag.is-aim{color:var(--bt-blue);transform:rotate(-23deg)}.bt-howto-tag.is-angle,.bt-howto-tag.is-speed{color:var(--bt-rust-deep)}.bt-howto-tag.is-target{color:var(--bt-blue-deep)}.bt-howto-chip{padding:calc(var(--bt-px) * 6) calc(var(--bt-px) * 12);background:var(--bt-blue);font-family:var(--font-plex-mono), var(--font-plex-sans-kr), monospace;font-size:calc(var(--bt-px) * 12);letter-spacing:.08em;color:var(--bt-white);border-radius:999px;font-weight:600}.bt-howto-steps{counter-reset:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:.875rem;margin:0;padding:0;list-style:none;display:grid}@container (max-width:820px){.bt-howto-steps{grid-template-columns:minmax(0,1fr)}}.bt-howto-step{background:var(--bt-blue-tint);border:1px solid var(--bt-blue-line);border-radius:20px;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);gap:.25rem .75rem;padding:1rem 1.125rem;display:grid}.bt-howto-step-n{font-family:var(--font-anton), sans-serif;color:var(--bt-blue);grid-row:1/span 2;align-self:start;font-size:1.5rem;line-height:1}.bt-howto-step-title{color:var(--bt-ink);word-break:keep-all;font-size:.9375rem;font-weight:700}.bt-howto-step-body{color:var(--bt-body);text-wrap:pretty;word-break:keep-all;font-size:.875rem;line-height:1.6}.bt-howto-foot{color:var(--bt-muted);text-wrap:pretty;word-break:keep-all;margin:0;font-size:.875rem;line-height:1.65}.bt-howto-foot b{color:var(--bt-blue);font-weight:600}@container (max-width:640px){.bt-howto{border-radius:22px;padding:1.375rem 1.25rem}.bt-howto-title{font-size:1.5rem}}.lc{--lc-ink:#1d2433;--lc-light-top:#fff;--lc-light-left:#e4e9f2;--lc-light-right:#ccd4e2;--lc-metal-top:#eef1f6;--lc-metal-left:#cfd6e2;--lc-metal-right:#aab4c6;--lc-dark-top:#4b5467;--lc-dark-left:#353d4e;--lc-dark-right:#262d3b;--lc-belt:#3a4254;--lc-belt-side:#232937;--lc-line:#9aa4b8;color:var(--ink);font-family:var(--font-pretendard), var(--font-plex-sans-kr), system-ui, sans-serif;word-break:keep-all;position:relative}.lc-tone-mechanics{--tone:#4c6ef5}.lc-tone-wave{--tone:#15aabf}.lc-tone-electromagnetism{--tone:#7950f2}.lc-tone-advanced{--tone:#20c997}.lc-wide{grid-template:"head stage""panel stage"1fr/minmax(0,22rem) minmax(0,1fr);gap:1.5rem 2.5rem;max-width:1440px;margin:0 auto;padding:5rem 3rem 5.5rem;display:grid}.lc-head{flex-direction:column;grid-area:head;align-self:end;gap:.9rem;display:flex}.lc-stage{grid-area:stage;align-self:center}.lc-panel{flex-direction:column;grid-area:panel;gap:1.1rem;display:flex}.lc-eyebrow,.lc-card-code,.lc-engrave{font-family:var(--font-plex-mono), ui-monospace, monospace}.lc-eyebrow{letter-spacing:.16em;color:var(--muted);margin:0;font-size:.72rem}.lc-heading{letter-spacing:-.03em;margin:0;font-size:2.4rem;font-weight:800;line-height:1.18}.lc-legend{color:var(--body-text);flex-wrap:wrap;gap:.4rem 1rem;margin:0;padding:0;font-size:.82rem;list-style:none;display:flex}.lc-legend li,.lc-card-part{align-items:center;gap:.4rem;display:inline-flex}.lc-legend-ring{border:2px solid var(--tone);background:#fff;border-radius:50%;width:.72rem;height:.72rem}.lc-card{border:1px solid var(--glass-line);background:var(--glass-bg);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(14px);border-radius:20px;flex-direction:column;gap:.6rem;padding:1.35rem 1.4rem 1.4rem;display:flex}.lc-card-meta{color:var(--body-text);flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin:0;font-size:.8rem;display:flex}.lc-card-code{letter-spacing:.08em;color:var(--blue);font-size:.78rem;font-weight:600}.lc-difficulty{gap:3px;display:inline-flex}.lc-difficulty span{background:var(--hairline);border-radius:50%;width:6px;height:6px}.lc-difficulty span.is-on{background:var(--blue)}.lc-card-title{letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:750}.lc-card-desc{min-height:3.2em;color:var(--body-text);margin:0;font-size:.95rem;line-height:1.6}.lc-card-link{background:var(--blue);color:#fff;border-radius:999px;align-self:flex-start;align-items:center;gap:.45rem;margin-top:.35rem;padding:.7rem 1.15rem;font-size:.92rem;font-weight:650;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.lc-card-link:hover{background:var(--blue-deep)}.lc-card-link:focus-visible{outline:3px solid var(--blue-soft);outline-offset:3px}.lc-controls{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.lc-control{border:1px solid var(--card-line);width:2.1rem;height:2.1rem;color:var(--muted);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s;display:inline-flex;box-shadow:0 1px 3px #1e3a8a14}.lc-control:hover{color:var(--blue);border-color:#c9d7f5}.lc-control:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.lc-control svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:.9rem;height:.9rem}.lc-control svg .lc-fill{fill:currentColor;stroke:none}.lc-note{color:var(--muted);flex-basis:100%;margin:.4rem 0 0;font-size:.8rem}.lc-stage{aspect-ratio:1000/600;outline:none;width:100%;position:relative;container-type:inline-size}.lc-bench{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.lc-bench-shadow{fill:#1e2d5a29;filter:blur(16px)}.lc-bench-top{fill:#fbfcfe;stroke:#d9dfea;stroke-width:1.5px}.lc-bench-left{fill:#e3e8f1}.lc-bench-right{fill:#cbd3e1}.lc-bench-led{stroke:var(--blue);stroke-width:2px;stroke-linecap:round;opacity:.55}.lc-bench-grid line{stroke:var(--lc-line);stroke-width:.8px;opacity:.22}.lc-bench-inset{fill:none;stroke:#d3dae6;stroke-width:1.4px}.lc-screw{fill:var(--lc-metal-top);stroke:var(--lc-metal-right);stroke-width:1.4px}.lc-screw-slot{stroke:var(--lc-metal-right);stroke-width:1.4px}.lc-engrave{letter-spacing:.24em;fill:#a3adbf;font-size:11px;font-weight:600}.lc-belt,.lc-belt-side,.lc-belt-slats,.lc-rail{fill:none;stroke-linejoin:round}.lc-belt{stroke:var(--lc-belt)}.lc-belt-side{stroke:var(--lc-belt-side)}.lc-belt-slats{stroke:#555e72;stroke-dasharray:2 9}.lc-rail{stroke:#c3cad8}.lc-samples{pointer-events:none;position:absolute;inset:0}.lc-sample{--x:-10;--y:-10;width:3.4cqw;transform:translate(calc(var(--x) * 1cqw - 50%), calc(var(--y) * 1cqw - 66%));transition:opacity .3s;position:absolute;top:0;left:0}.lc-sample-box{width:100%;height:auto;display:block;overflow:visible}.lc-sample-top{fill:#f4f6fa}.lc-sample-left{fill:#d5dbe6}.lc-sample-right{fill:#b3bccc}.lc-sample-top,.lc-sample-left,.lc-sample-right{stroke:#1d243340;stroke-width:.5px;stroke-linejoin:round}.lc-sample-light{fill:var(--blue)}.lc-modebar{z-index:3000;align-items:center;gap:.5rem;display:flex;position:absolute;bottom:0;left:50%;translate:-50%}.lc-modes{border:1px solid var(--glass-line);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border-radius:12px;gap:3px;padding:4px;display:flex;box-shadow:0 4px 14px #1e3a8a14}.lc-modes button{color:var(--body-text);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:.55rem .9rem;font-size:.82rem;font-weight:600;transition:background .2s,color .2s}.lc-modes button:hover{color:var(--ink);background:#1d4ed80f}.lc-modes button[aria-pressed=true]{background:var(--blue);color:#fff}.lc-modes button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.lc-track{margin:0;padding:0;list-style:none;position:absolute;inset:0}.lc-slot{display:contents}.lc-item{--x:50;--y:50;--dx:0;--dy:0;--spread:0;width:19cqw;color:inherit;cursor:pointer;transform:translate(calc((var(--x) + var(--dx) * var(--spread)) * 1cqw - 50%), calc((var(--y) + var(--dy) * var(--spread)) * 1cqw - 75.76%));-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;transition:transform .7s cubic-bezier(.2,.8,.2,1);position:absolute;top:0;left:0}.lc-stage.is-spread .lc-item{--spread:1}.lc-item:focus-visible{outline:none}.lc-item:focus-visible .lc-ring{stroke:var(--blue);stroke-width:3.4px}.lc-apparatus{width:100%;height:auto;transition:transform .45s cubic-bezier(.2,.8,.2,1);display:block;overflow:visible}.lc-item:hover .lc-apparatus,.lc-item:focus-visible .lc-apparatus{transform:translateY(-4%)}.lc-label{opacity:0;pointer-events:none;flex-direction:column;align-items:center;transition:opacity .25s;display:flex;position:absolute;bottom:88%;left:50%;translate:-50%}.lc-label-card{border:1px solid var(--blue-soft);white-space:nowrap;color:var(--ink);background:#ffffffeb;border-radius:8px;align-items:center;gap:.45rem;padding:.35rem .65rem;font-size:.78rem;font-weight:650;display:inline-flex;box-shadow:0 4px 14px #1e3a8a1a}.lc-label-code{font-family:var(--font-plex-mono), ui-monospace, monospace;color:var(--blue);font-size:.68rem}.lc-label-stem{background:linear-gradient(var(--blue-soft), #1d4ed800);width:1px;height:1.1rem}.lc-stage.is-spread .lc-label,.lc-item.is-active .lc-label,.lc-item:hover .lc-label,.lc-item:focus-visible .lc-label{opacity:1}.lc-light .lc-f-top{fill:var(--lc-light-top)}.lc-light .lc-f-left{fill:var(--lc-light-left)}.lc-light .lc-f-right{fill:var(--lc-light-right)}.lc-metal .lc-f-top{fill:var(--lc-metal-top)}.lc-metal .lc-f-left{fill:var(--lc-metal-left)}.lc-metal .lc-f-right{fill:var(--lc-metal-right)}.lc-dark .lc-f-top{fill:var(--lc-dark-top)}.lc-dark .lc-f-left{fill:var(--lc-dark-left)}.lc-dark .lc-f-right{fill:var(--lc-dark-right)}.lc-box polygon,.lc-box path,.lc-box ellipse{stroke:#1d243329;stroke-width:.5px;stroke-linejoin:round}.lc-pedestal-shadow{fill:#141e3c21;filter:blur(2.5px)}.lc-ring{fill:none;stroke:var(--tone);stroke-width:2.4px;transition:stroke .25s}.lc-ring-inner{fill:none;stroke:#e3e8f1;stroke-width:.8px}.lc-ring-pulse{fill:none;stroke:var(--blue);stroke-width:2.6px;opacity:calc(var(--glow,0) * .9)}.lc-item.is-active .lc-ring{stroke-width:3.4px}.lc-ball-body{fill:var(--lc-metal-top);stroke:#1d243333;stroke-width:.5px}.lc-ball-shine{fill:#fff;opacity:.75}.lc-accent .lc-ball-body,.lc-ball-body.lc-accent{fill:var(--blue);stroke:var(--blue-deep)}.lc-sun .lc-ball-body{fill:#f6f3ea;stroke:#d8d2c2}.lc-tick{stroke:var(--lc-ink);stroke-width:.6px;opacity:.55}.lc-guide{fill:none;stroke:var(--lc-line);stroke-width:.7px;stroke-dasharray:1.5 2}.lc-string{stroke:var(--lc-ink);stroke-width:.8px}.lc-pivot{fill:var(--lc-dark-top)}.lc-drop-shadow{fill:#1d243338;transform-box:fill-box;transform-origin:50%}.lc-wheel{fill:var(--lc-dark-left)}.lc-wheel-hub{fill:var(--lc-metal-top)}.lc-cone{fill:#5d6679;stroke:var(--lc-dark-right);stroke-width:.6px}.lc-cone-core{fill:var(--lc-dark-right)}.lc-wave{fill:none;stroke:var(--blue);stroke-width:1.3px}.lc-aperture{fill:var(--blue)}.lc-beam{stroke:var(--blue);stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:3 2}.lc-slit{stroke:var(--lc-dark-right);stroke-width:1.3px}.lc-ray{stroke:var(--blue);stroke-width:.6px;opacity:.35}.lc-fringe{stroke:var(--blue);stroke-width:1.2px;stroke-linecap:round}.lc-fringe-0{opacity:.95}.lc-fringe-1{opacity:.6}.lc-fringe-2{opacity:.35}.lc-fringe-3{opacity:.15}.lc-sign{fill:var(--lc-ink);font-family:var(--font-plex-mono), monospace;font-weight:700}.lc-field{stroke:var(--lc-line);stroke-width:.7px;stroke-dasharray:2 2}.lc-orbit{fill:none;stroke:var(--lc-line);stroke-width:.8px}.lc-sweep{fill:var(--blue);opacity:.12}.lc-drop{animation:2.6s infinite lc-drop}@keyframes lc-drop{0%,14%{opacity:1;animation-timing-function:cubic-bezier(.55,0,1,.45);transform:translateY(0)}48%{opacity:1;transform:translateY(44px)}74%{opacity:1;transform:translateY(44px)}84%{opacity:0;transform:translateY(44px)}85%{opacity:0;transform:translateY(0)}to{opacity:1;transform:translateY(0)}}.lc-drop-shadow{animation:2.6s infinite lc-drop-shadow}@keyframes lc-drop-shadow{0%,14%{opacity:.4;animation-timing-function:cubic-bezier(.55,0,1,.45);transform:scale(.45)}48%,74%{opacity:1;transform:scale(1)}84%,85%{opacity:0;transform:scale(1)}to{opacity:.4;transform:scale(.45)}}.lc-swing{transform-box:view-box;transform-origin:0 0;animation:1.9s cubic-bezier(.37,0,.63,1) infinite alternate lc-swing}@keyframes lc-swing{0%{transform:rotate(-24deg)}to{transform:rotate(24deg)}}.lc-wave{transform-box:view-box;transform-origin:0 0;opacity:0;animation:2.4s linear infinite lc-wave}.lc-wave-1{animation-delay:-.8s}.lc-wave-2{animation-delay:-1.6s}@keyframes lc-wave{0%{opacity:.9;transform:translate(0)scale(.12)}to{opacity:0;transform:translate(-9px)scale(1)}}.lc-beam{animation:.6s linear infinite lc-beam}@keyframes lc-beam{to{stroke-dashoffset:-5px}}.lc-fringes{animation:2.2s ease-in-out infinite alternate lc-glow}@keyframes lc-glow{0%{opacity:.55}to{opacity:1}}.lc-charge{animation:2.4s infinite lc-charge}@keyframes lc-charge{0%{opacity:0;transform:translate(0)}10%{opacity:1;animation-timing-function:cubic-bezier(.5,0,1,.6);transform:translate(0)}78%{opacity:1;transform:translate(14px,7px)}92%,to{opacity:0;transform:translate(14px,7px)}}.lc-osc-x{animation:9s infinite lc-osc-x}.lc-osc-y{animation:9s infinite lc-osc-y}@keyframes lc-osc-x{0%,to{transform:translateX(var(--amp));animation-timing-function:cubic-bezier(.37,0,.63,1)}50%{transform:translateX(calc(var(--amp) * -1));animation-timing-function:cubic-bezier(.37,0,.63,1)}}@keyframes lc-osc-y{0%,to{transform:translateY(var(--amp));animation-timing-function:cubic-bezier(.37,0,.63,1)}50%{transform:translateY(calc(var(--amp) * -1));animation-timing-function:cubic-bezier(.37,0,.63,1)}}@media (max-width:1100px){.lc-wide{grid-template-columns:minmax(0,1fr);grid-template-areas:"head""stage""panel";padding:4rem 2rem 4.5rem}.lc-head{text-align:center;align-items:center}.lc-panel{justify-self:center;width:min(100%,34rem)}.lc-stage{margin-bottom:1rem}.lc-controls{justify-content:center}.lc-note{text-align:center}}@media (max-width:768px){.lc-wide{row-gap:1.25rem;padding:3rem 0 3.5rem}.lc-head{padding:0 16px}.lc-heading{font-size:1.75rem}.lc-panel{padding:0 16px}.lc-stage{aspect-ratio:auto;container-type:normal}.lc-bench,.lc-samples,.lc-modebar{display:none}.lc-track{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;background:linear-gradient(#c3cad8, #c3cad8) left 0 bottom 93px / 100% 3px no-repeat, repeating-linear-gradient(90deg, var(--lc-belt) 0 15px, #535c70 15px 17px) left 0 bottom 59px / 100% 34px no-repeat, linear-gradient(var(--lc-belt-side), var(--lc-belt-side)) left 0 bottom 53px / 100% 6px no-repeat;background-attachment:local;gap:.5rem;padding:2.6rem calc(50% - 72px) 2.4rem;display:flex;position:relative;inset:auto;overflow-x:auto}.lc-track::-webkit-scrollbar{display:none}.lc-slot{scroll-snap-align:center;flex:none;display:block}.lc-item{width:144px;transition:none;display:block;position:relative;transform:none;z-index:auto!important}.lc-label{opacity:1;bottom:90%}.lc-label-stem{height:.5rem}}@media (prefers-reduced-motion:reduce){.lc .lc-anim,.lc-apparatus,.lc-item,.lc-card-link{transition:none!important;animation:none!important}.lc .lc-wave{opacity:.5}.lc .lc-wave-0{transform:scale(.35)}.lc .lc-wave-1{transform:translate(-3px)scale(.65)}.lc .lc-wave-2{transform:translate(-6px)scale(.95)}.lc .lc-osc-x{transform:translateX(var(--rest))}.lc .lc-osc-y{transform:translateY(var(--rest))}.lc .lc-drop-shadow{opacity:.4;transform:scale(.45)}}
