@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;700;800&family=Noto+Sans+KR:wght@400;500;700&display=swap");:root{--page-background:radial-gradient(circle at 12% 18%,rgba(191,219,254,0.55),transparent 42%),radial-gradient(circle at 88% 6%,rgba(186,230,253,0.45),transparent 36%),#f3f6ff;--page-background-solid:#f3f6ff;--surface-base:rgba(255,255,255,0.9);--surface-elevated:#ffffff;--surface-muted:#f4f8ff;--surface-contrast:#0f172a;--text-strong:#0f172a;--text-muted:#475569;--text-subtle:#64748b;--text-inverse:#f8fafc;--border-strong:#ccd6e8;--border-soft:#dde7f8;--accent:#2563eb;--accent-strong:#1d4ed8;--accent-secondary:#0f766e;--shadow-soft:0 14px 30px rgba(15,23,42,0.08);--color-background:var(--page-background-solid);--color-text-strong:var(--text-strong);--color-text-muted:var(--text-muted);--color-text-subtle:var(--text-subtle);--color-border-strong:var(--border-strong);--color-accent:var(--accent)}html[data-theme=dark]{--page-background:radial-gradient(circle at 16% 16%,rgba(37,99,235,0.24),transparent 48%),radial-gradient(circle at 86% 4%,rgba(20,184,166,0.2),transparent 42%),#040812;--page-background-solid:#040812;--surface-base:rgba(10,18,32,0.84);--surface-elevated:#0f172a;--surface-muted:#111f35;--surface-contrast:#0b1120;--text-strong:#e2e8f0;--text-muted:#94a3b8;--text-subtle:#8fa1ba;--text-inverse:#f8fafc;--border-strong:#334155;--border-soft:#1f3252;--accent:#60a5fa;--accent-strong:#3b82f6;--accent-secondary:#2dd4bf;--shadow-soft:0 16px 30px rgba(2,6,23,0.5)}*{box-sizing:border-box}body,html{min-height:100%}html{scroll-behavior:smooth;scroll-padding-top:98px}body{margin:0;color:var(--text-strong);font-family:Outfit,Noto Sans KR,sans-serif;background:var(--page-background);line-height:1.5;transition:background-color .25s ease,color .25s ease}button,input,textarea{font:inherit}@media (max-width:700px){html{scroll-padding-top:160px}}:root{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-primary-950:#172554;--color-secondary-50:#f0fdfa;--color-secondary-100:#ccfbf1;--color-secondary-200:#99f6e4;--color-secondary-300:#5eead4;--color-secondary-400:#2dd4bf;--color-secondary-500:#14b8a6;--color-secondary-600:#0d9488;--color-secondary-700:#0f766e;--color-secondary-800:#115e59;--color-secondary-900:#134e4a;--color-secondary-950:#042f2e;--color-neutral-50:#f9fafb;--color-neutral-100:#f3f4f6;--color-neutral-200:#e5e7eb;--color-neutral-300:#d1d5db;--color-neutral-400:#9ca3af;--color-neutral-500:#6b7280;--color-neutral-600:#4b5563;--color-neutral-700:#374151;--color-neutral-800:#1f2937;--color-neutral-900:#111827;--color-neutral-950:#030712;--color-success-50:#f0fdf4;--color-success-100:#dcfce7;--color-success-200:#bbf7d0;--color-success-300:#86efac;--color-success-400:#4ade80;--color-success-500:#22c55e;--color-success-600:#16a34a;--color-success-700:#15803d;--color-success-800:#166534;--color-success-900:#14532d;--color-warning-50:#fffbeb;--color-warning-100:#fef3c7;--color-warning-200:#fde68a;--color-warning-300:#fcd34d;--color-warning-400:#fbbf24;--color-warning-500:#f59e0b;--color-warning-600:#d97706;--color-warning-700:#b45309;--color-warning-800:#92400e;--color-warning-900:#78350f;--color-error-50:#fef2f2;--color-error-100:#fee2e2;--color-error-200:#fecaca;--color-error-300:#fca5a5;--color-error-400:#f87171;--color-error-500:#ef4444;--color-error-600:#dc2626;--color-error-700:#b91c1c;--color-error-800:#991b1b;--color-error-900:#7f1d1d;--color-background-primary:#ffffff;--color-background-secondary:#f8fafc;--color-background-tertiary:#f1f5f9;--color-background-muted:#f9fafb;--color-text-primary:#0f172a;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-text-disabled:#cbd5e1;--color-text-inverse:#ffffff;--color-border-light:#e2e8f0;--color-border-default:#cbd5e1;--color-border-strong:#94a3b8;--font-family-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-family-mono:"JetBrains Mono","Fira Code",Consolas,monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--spacing-0:0rem;--spacing-px:1px;--spacing-0-5:0.125rem;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--spacing-32:8rem;--radius-none:0;--radius-sm:0.125rem;--radius-base:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-base:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--shadow-2xl:0 25px 50px -12px rgba(0,0,0,0.25);--shadow-inner:inset 0 2px 4px 0 rgba(0,0,0,0.06);--duration-instant:0ms;--duration-fast:150ms;--duration-normal:200ms;--duration-slow:300ms;--duration-slower:500ms;--easing-default:cubic-bezier(0.4,0,0.2,1);--easing-in:cubic-bezier(0.4,0,1,1);--easing-out:cubic-bezier(0,0,0.2,1);--easing-in-out:cubic-bezier(0.4,0,0.2,1);--easing-bounce:cubic-bezier(0.68,-0.55,0.265,1.55);--color-primary:var(--color-primary-600);--color-primary-hover:var(--color-primary-700);--color-primary-pressed:var(--color-primary-800);--color-accent:var(--color-primary-600);--color-text-strong:var(--color-text-primary);--color-text-muted:var(--color-text-secondary);--color-border-strong:var(--color-border-strong)}@media (prefers-color-scheme:dark){:root{--color-background-primary:#0f172a;--color-background-secondary:#1e293b;--color-background-tertiary:#334155;--color-background-muted:#1e293b;--color-text-primary:#f8fafc;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--color-text-disabled:#475569;--color-text-inverse:#0f172a;--color-border-light:#334155;--color-border-default:#475569;--color-border-strong:#64748b}}:root{--viewport-offset:98px;--shell-inline:clamp(12px,2vw,20px)}.site-shell{position:relative;max-width:1120px;margin:0 auto;padding:16px var(--shell-inline) 40px}.topbar{display:flex;justify-content:space-between;gap:8px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-base);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:-webkit-sticky;position:sticky;top:10px;z-index:20;overflow:visible}.brand,.topbar{align-items:center}.brand{display:inline-flex;text-decoration:none;font-weight:700;font-size:.92rem;letter-spacing:.02em;color:var(--text-strong)}.topbar-controls{display:flex;align-items:center;gap:8px}.mobile-menu-toggle{display:none;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:0 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-elevated);color:var(--text-strong);cursor:pointer}.mobile-menu-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mobile-menu-toggle-text{font-size:.78rem;font-weight:700;letter-spacing:.03em}.mobile-menu-toggle-icon{display:inline-flex;flex-direction:column;justify-content:center;gap:3px;width:14px}.mobile-menu-toggle-icon span{width:100%;height:2px;border-radius:999px;background:currentColor;transition:transform .2s ease,opacity .2s ease}.mobile-menu-toggle.is-open .mobile-menu-toggle-icon span:first-child{transform:translateY(5px) rotate(45deg)}.mobile-menu-toggle.is-open .mobile-menu-toggle-icon span:nth-child(2){opacity:0}.mobile-menu-toggle.is-open .mobile-menu-toggle-icon span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}.mobile-menu-backdrop{display:none}.topnav{display:flex;align-items:center;gap:6px}.topnav a{text-decoration:none;color:var(--text-muted);font-size:.85rem;font-weight:600;padding:7px 10px;border-radius:999px;transition:background-color .2s ease,color .2s ease}.topnav a:hover{background:rgba(148,163,184,.16);color:var(--text-strong)}.nav-download-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:33px;padding:0 11px;border-radius:999px;border:1px solid var(--accent-strong);background:var(--accent-strong);color:#ffffff;font-size:.8rem;font-weight:700;transition:background-color .2s ease}.nav-download-btn:hover{background:var(--accent)}.theme-switch{position:relative;display:inline-flex;align-items:center;gap:7px;min-width:88px;height:33px;padding:3px 10px 3px 4px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface-elevated);color:var(--text-strong);cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.theme-switch-thumb{width:22px;height:22px;border-radius:999px;background:linear-gradient(140deg,#facc15,#f59e0b);box-shadow:0 4px 8px rgba(124,45,18,.2);transition:transform .2s ease,background-color .2s ease}.theme-switch.is-dark .theme-switch-thumb{transform:translateX(1px);background:linear-gradient(140deg,#2563eb,#0f172a)}.theme-switch-text{font-size:.74rem;font-weight:700;letter-spacing:.04em}.theme-switch:hover{border-color:var(--accent)}.theme-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lang-switch{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;min-width:116px;border:1px solid var(--border-strong);border-radius:999px;padding:3px;background:var(--surface-elevated);box-shadow:inset 0 1px 0 rgba(255,255,255,.22);isolation:isolate}.lang-switch-indicator{position:absolute;top:3px;left:3px;z-index:0;width:calc((100% - 6px) / 2);height:calc(100% - 6px);border-radius:999px;background:var(--text-strong);box-shadow:0 6px 14px rgba(15,23,42,.24);transition:transform .24s ease}.lang-switch.is-fr .lang-switch-indicator{transform:translateX(100%)}.lang-btn{position:relative;z-index:1;border:none;border-radius:999px;min-width:56px;height:32px;background:transparent;color:var(--text-muted);font-size:.74rem;letter-spacing:.06em;font-weight:800;cursor:pointer;transition:color .2s ease}.lang-btn:hover{color:var(--text-strong)}.lang-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lang-btn.is-active{color:#ffffff}.back-to-top{position:fixed;right:clamp(12px,2vw,24px);bottom:clamp(12px,2.4vw,24px);z-index:42;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border-strong);border-radius:999px;height:40px;padding:0 12px 0 9px;background:var(--surface-elevated);color:var(--text-strong);box-shadow:var(--shadow-soft);cursor:pointer;transition:transform .2s ease,border-color .2s ease,background-color .2s ease}.back-to-top:hover{transform:translateY(-2px);border-color:var(--accent)}.back-to-top:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.back-to-top-icon{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:999px;background:var(--accent-strong);color:#ffffff;font-size:.9rem;line-height:1}.back-to-top-text{font-size:.75rem;font-weight:700;letter-spacing:.03em}.site-main{margin-top:14px;display:grid;grid-gap:12px;gap:12px;perspective:1400px}.demo-main{margin-top:12px}.demo-section{gap:14px}.demo-description{margin:0;max-width:760px;color:var(--text-muted);font-size:.94rem;line-height:1.5}.viewport-panel{height:auto;min-height:0;overflow:visible}.hero{display:grid;grid-template-columns:1.3fr .7fr;grid-gap:14px;gap:14px;align-items:center;border:none;border-radius:0;background:transparent;padding:12px 4px;box-shadow:none;margin-inline:0}.hero-content{position:relative}.hero-kicker{margin:0;text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);font-size:.72rem;font-weight:700}.hero h1{margin:10px 0;font-size:clamp(2rem,3.8vw,3.35rem);line-height:1.1;letter-spacing:-.02em;color:var(--text-strong)}.hero-description{margin:0;max-width:640px;font-size:.98rem;line-height:1.52;color:var(--text-muted)}.hero-actions{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}.cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:12px;min-height:44px;padding:0 16px;font-weight:700;transition:background-color .2s ease,color .2s ease}.cta--primary{border:1px solid var(--accent-strong);background:var(--accent-strong);color:#ffffff}.cta--primary:hover{background:var(--accent)}.cta--ghost{border:1px solid var(--border-strong);background:transparent;color:var(--text-muted)}.cta--ghost:hover{background:rgba(148,163,184,.16)}.cta--download{border:1px solid var(--accent-secondary);background:var(--accent-secondary);color:#ffffff}.cta--download:hover{background:#115e59}.hero-metrics{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.hero-metrics article{border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-elevated);padding:10px;transform-style:preserve-3d;will-change:transform,opacity}.hero-metrics h3{margin:0;font-size:.73rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.hero-metrics p{margin:6px 0 0;color:var(--text-strong);line-height:1.45;font-size:.9rem}.hero-side-card{align-self:stretch;border:1px solid var(--border-soft);border-left:4px solid var(--accent-strong);border-radius:18px;background:var(--surface-elevated);color:var(--text-strong);padding:14px;display:grid;align-content:start;grid-gap:10px;gap:10px}.side-label{margin:0;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-strong)}.hero-side-card h2{margin:0;line-height:1.3;font-size:1.18rem}.hero-side-card ul{margin:0;padding-left:18px;display:grid;grid-gap:7px;gap:7px;color:var(--text-muted);line-height:1.45}.section{border:1px solid var(--border-soft);border-radius:24px;background:var(--surface-elevated);box-shadow:var(--shadow-soft);padding:18px;display:grid;align-content:start}.section-head{display:grid;grid-gap:4px;gap:4px;margin-bottom:12px}.section-kicker{margin:0;font-size:.73rem;text-transform:uppercase;letter-spacing:.09em;color:var(--color-accent);font-weight:700}.section-head h2{margin:0;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.2}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.section--features{background:var(--surface-contrast);border-color:var(--border-strong);color:var(--text-inverse)}.section--features .section-kicker{color:#93c5fd}.section--features .section-head h2{color:var(--text-inverse)}.feature-card{border:1px solid #2f4468;border-radius:16px;background:rgba(8,16,34,.62);padding:12px;transform-style:preserve-3d;will-change:transform,opacity}.feature-card span{display:inline-block;border-radius:999px;padding:4px 8px;background:rgba(148,163,184,.24);color:#bfdbfe;font-size:.72rem;font-weight:700}.feature-card h3{margin:8px 0 6px;font-size:1.02rem;color:var(--text-inverse)}.feature-card p{margin:0;line-height:1.5;color:#bfcbde}.section--content{background:var(--surface-muted);border-color:var(--border-soft)}.section--content .section-kicker{color:#ca8a04}.section--content .section-head h2{color:var(--text-strong)}.workflow-list{margin:0;padding:0;list-style:none;display:grid;grid-gap:8px;gap:8px;counter-reset:workflow}.workflow-list li{counter-increment:workflow;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-elevated);padding:11px 12px 11px 46px;position:relative;line-height:1.48;color:var(--text-muted);transform-style:preserve-3d;will-change:transform,opacity}.workflow-list li:before{content:counter(workflow);position:absolute;left:12px;top:11px;width:22px;height:22px;border-radius:999px;background:var(--accent-strong);color:#ffffff;display:grid;place-items:center;font-size:.8rem;font-weight:700}.video-showcase{border-radius:26px;border:1px solid var(--border-strong);background:var(--surface-contrast);color:var(--text-inverse);padding:18px;display:grid;align-content:center}.video-shell{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:14px;gap:14px;align-items:center}.video-copy h2{margin:6px 0 8px;font-size:clamp(1.45rem,2.2vw,1.95rem);line-height:1.2;color:var(--text-inverse)}.video-copy p{margin:0;line-height:1.48;color:#c3d2e4}.video-kicker{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:#93c5fd}.video-frame-wrap{border:1px solid #365075;border-radius:18px;overflow:hidden;background:#000000;min-height:248px;transform-style:preserve-3d;will-change:transform,opacity}.video-frame{width:100%;height:100%;min-height:248px;border:none;display:block}.video-fallback{margin:0;min-height:248px;display:grid;place-items:center;text-align:center;padding:16px;color:#c3d2e4}.section--workspace{background:var(--surface-muted);border-color:var(--border-soft);overflow:auto}.section--workspace .section-kicker{color:#1d4ed8}.site-footer{margin-top:0;margin-inline:0;border:1px solid var(--border-strong);border-radius:18px;background:var(--surface-contrast);color:#c2d0e2;padding:12px 14px;display:grid;grid-template-columns:1.1fr .9fr 1fr;grid-gap:10px;gap:10px}.site-footer h3,.site-footer h4{margin:0;color:var(--text-inverse)}.site-footer p{margin:5px 0 0;line-height:1.35;font-size:.9rem}.site-footer a{display:block;margin-top:6px;color:#93c5fd;text-decoration:none;font-size:.9rem}.site-footer a:hover{text-decoration:underline}.workspace-card{border:1px solid var(--border-strong);border-radius:20px;background:var(--surface-elevated);box-shadow:var(--shadow-soft);padding:16px;display:grid;grid-gap:14px;gap:14px}.workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.workspace-title{margin:0;font-size:1.3rem}.workspace-subtitle{margin:6px 0 0;color:var(--text-muted);font-size:.94rem}.mode-chip{border-radius:999px;font-size:.78rem;font-weight:700;padding:7px 12px;border:1px solid transparent;white-space:nowrap}.mode-chip--idle{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.mode-chip--live{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.mode-chip--mock{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.connection-card{border:1px solid var(--border-strong);border-radius:14px;background:var(--surface-elevated);padding:12px}.connection-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.connection-title{margin:0;font-size:.95rem}.connection-message{margin:10px 0;color:var(--text-muted);font-size:.89rem}.status-pill{border-radius:999px;padding:5px 10px;font-size:.75rem;font-weight:700;border:1px solid transparent}.status-pill--connected{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.status-pill--auth-required{background:#fffbeb;border-color:#fde68a;color:#92400e}.status-pill--offline{background:#f1f5f9;border-color:#cbd5e1;color:#334155}.status-pill--error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.token-field{display:grid;grid-gap:7px;gap:7px}.field-label{font-size:.86rem;font-weight:600}.field-input{width:100%;border-radius:10px;border:1px solid var(--border-strong);padding:10px 12px;background:var(--surface-elevated);color:var(--text-strong);transition:border-color .2s ease,box-shadow .2s ease}.field-input:focus-visible{outline:none;border-color:rgba(45,107,255,.75);box-shadow:0 0 0 3px rgba(45,107,255,.16)}.field-help{margin:0;font-size:.82rem;color:var(--text-subtle)}.upload-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:1.15fr .85fr}.upload-card{border:1px solid var(--border-strong);border-radius:14px;padding:12px;background:var(--surface-elevated)}.upload-dropzone{display:grid;justify-items:center;grid-gap:6px;gap:6px;border:2px dashed rgba(43,116,255,.35);border-radius:12px;padding:16px 12px;cursor:pointer;background:var(--surface-muted);transition:border-color .2s ease}.upload-dropzone:hover{border-color:rgba(43,116,255,.65)}.upload-dropzone strong{color:var(--text-strong);font-size:1.03rem}.upload-dropzone span{color:var(--text-muted);font-size:.83rem}.upload-dropzone input{display:none}.file-name,.step-status{margin:10px 0 0;font-size:.85rem;color:var(--text-muted)}.action-row{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.button{border:none;border-radius:10px;min-height:40px;padding:0 14px;font-weight:700;cursor:pointer;transition:background-color .2s ease}.button:disabled{cursor:not-allowed;opacity:.45}.button--primary{background:var(--accent-strong);color:#ffffff}.button--primary:hover{background:var(--accent)}.button--secondary{background:var(--accent-secondary);color:#ffffff}.button--secondary:hover{background:#115e59}.button--ghost{background:transparent;color:var(--text-muted)}.button--ghost,.preview-card{border:1px solid var(--border-strong)}.preview-card{border-radius:14px;min-height:220px;overflow:hidden;background:var(--surface-muted);display:grid;place-items:center}.preview-image{width:100%;height:100%;object-fit:cover}.preview-placeholder{text-align:center;color:var(--text-subtle);padding:18px;line-height:1.45;font-size:.88rem}.banner{border-radius:10px;margin:0;padding:10px 12px;font-size:.88rem;border:1px solid transparent}.banner--info{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.banner--error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.banner--success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.result-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr 1fr}.result-panel{border:1px solid var(--border-strong);border-radius:14px;padding:12px;background:var(--surface-elevated);display:grid;grid-gap:10px;gap:10px}.panel-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.panel-header h3{margin:0;font-size:.96rem}.panel-header span{font-size:.82rem;color:var(--text-muted)}.text-editor{width:100%;min-height:190px;border:1px solid var(--border-strong);border-radius:10px;padding:11px;line-height:1.55;resize:vertical;background:var(--surface-elevated);color:var(--text-strong)}.text-editor:focus-visible{outline:none;border-color:rgba(43,116,255,.8);box-shadow:0 0 0 3px rgba(43,116,255,.15)}.score-track{height:11px;border-radius:999px;background:rgba(148,163,184,.24);overflow:hidden}.score-fill{height:100%;border-radius:999px;background:var(--accent-secondary);transition:width .35s ease}.metric-line{margin:0;color:var(--text-muted);font-size:.86rem}.corrected-box{border:1px solid var(--border-soft);border-radius:10px;background:var(--surface-muted);padding:10px;line-height:1.55;white-space:pre-wrap}.suggestion-list{margin:0;padding-left:18px;display:grid;grid-gap:7px;gap:7px;color:var(--text-muted);font-size:.89rem}.empty-message{margin:0;font-size:.9rem;color:var(--text-subtle)}@media (max-width:1080px){.viewport-panel{height:auto;min-height:0;overflow:visible}.feature-grid,.hero,.hero-metrics,.site-footer,.video-shell{grid-template-columns:1fr}}@media (max-width:940px){.result-grid,.upload-grid{grid-template-columns:1fr}.preview-card{min-height:200px}}@media (max-width:700px){:root{--viewport-offset:128px;--shell-inline:12px}.site-shell{padding:14px var(--shell-inline) 32px}.topbar{flex-wrap:nowrap;align-items:center;gap:8px;padding:10px 12px;border-radius:16px}.mobile-menu-toggle{display:inline-flex;min-height:34px;padding:0 10px;gap:6px}.mobile-menu-toggle-text{font-size:.72rem;letter-spacing:.02em}.mobile-menu-backdrop{position:absolute;inset:0;z-index:15;display:block;border:0;background:rgba(15,23,42,.18);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.mobile-menu-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}.topbar-controls{position:absolute;top:calc(100% + 8px);left:auto;right:0;width:min(244px,calc(100vw - 36px));max-width:100%;display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:6px;border:1px solid var(--border-strong);border-radius:14px;background:var(--surface-base);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px) scale(.99);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:26}.topbar-controls.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}.topnav{width:100%;flex-direction:column;align-items:stretch;gap:2px;overflow:visible}.topnav a{display:inline-flex;align-items:center;justify-content:flex-start;width:100%;min-height:28px;padding:3px 6px;line-height:1.2;text-align:left;white-space:normal;font-size:.8rem}.lang-switch,.nav-download-btn,.theme-switch{width:100%;min-width:0}.nav-download-btn{min-height:28px;font-size:.72rem;padding:0 7px}.theme-switch{justify-content:flex-start;min-height:28px;min-width:0;padding:1px 8px 1px 3px}.theme-switch-text{font-size:.68rem}.theme-switch-thumb{width:18px;height:18px}.lang-switch{min-width:0;padding:2px}.lang-switch-indicator{top:2px;left:2px;width:calc((100% - 4px) / 2);height:calc(100% - 4px)}.lang-btn{min-width:0;height:28px;font-size:.68rem}.back-to-top{width:40px;padding:0;justify-content:center}.back-to-top-text{display:none}.section,.site-footer,.video-showcase,.workspace-card{border-radius:18px;padding:14px}.hero{border-radius:0;padding:6px 2px}.video-fallback,.video-frame,.video-frame-wrap{min-height:220px}.workspace-header{align-items:flex-start}.action-row,.workspace-header{flex-direction:column}.button,.cta{width:100%}}@media (max-width:480px){:root{--viewport-offset:136px}.theme-switch-text{font-size:.7rem}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}