@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_644b18d3-module__OMceWG__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_644b18d3-module__OMceWG__variable{--font-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/bfd813093b8ca1bb-s.p.12n410yjpb..9.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/acc5f86302586f33-s.0kxbxiu5l4e4k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/f304c3cf3765fb5f-s.059ctrjp3m~x9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/bfd813093b8ca1bb-s.p.12n410yjpb..9.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/acc5f86302586f33-s.0kxbxiu5l4e4k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/f304c3cf3765fb5f-s.059ctrjp3m~x9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/bfd813093b8ca1bb-s.p.12n410yjpb..9.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/acc5f86302586f33-s.0kxbxiu5l4e4k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/f304c3cf3765fb5f-s.059ctrjp3m~x9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/bfd813093b8ca1bb-s.p.12n410yjpb..9.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/acc5f86302586f33-s.0kxbxiu5l4e4k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/f304c3cf3765fb5f-s.059ctrjp3m~x9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/bfd813093b8ca1bb-s.p.12n410yjpb..9.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/acc5f86302586f33-s.0kxbxiu5l4e4k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/f304c3cf3765fb5f-s.059ctrjp3m~x9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai Fallback;src:local(Arial);ascent-override:99.79%;descent-override:42.32%;line-gap-override:0.0%;size-adjust:106.33%}.noto_sans_thai_1b4486fa-module__Ex1T_a__className{font-family:Noto Sans Thai,Noto Sans Thai Fallback;font-style:normal}.noto_sans_thai_1b4486fa-module__Ex1T_a__variable{--font-thai:"Noto Sans Thai", "Noto Sans Thai Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--navy-950:#060f1d;--navy-900:#0b1f3a;--navy-800:#12355b;--navy-700:#174b7a;--navy-600:#1f5f96;--blue-700:#1d4fd8;--blue-600:#2563eb;--blue-500:#3b82f6;--blue-400:#60a5fa;--blue-100:#dbeafe;--indigo-600:#4f46e5;--indigo-500:#6366f1;--violet-600:#7c3aed;--violet-500:#8b5cf6;--sky-500:#0ea5e9;--white:#fff;--background:#f6f8fb;--surface:#fff;--surface-muted:#f1f5f9;--surface-raised:#fff;--surface-navy:#0b1f3a;--ink:#0b1628;--ink-soft:#334155;--muted:#5f6f82;--subtle:#8391a4;--line:#d8e2ee;--line-strong:#b8c6d8;--focus:#3b82f6;--success:#0f766e;--success-bg:#e6f6f2;--warning:#b26a00;--warning-bg:#fff5d6;--danger:#b42318;--danger-bg:#fff0ed;--info-bg:#eaf2ff;--shadow-xs:0 1px 2px #0715260a;--shadow-sm:0 1px 3px #0715260f, 0 1px 2px #0715260a;--shadow-md:0 10px 30px #0b1f3a12, 0 3px 8px #0b1f3a0a;--shadow-lg:0 22px 52px #0b1f3a1a, 0 4px 12px #0b1f3a0d;--shadow-glow:0 8px 28px #3b82f638;--shadow-glow-soft:0 4px 20px #6366f11f;--radius-xs:4px;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-xl:20px;--gradient-hero:radial-gradient(ellipse 80% 60% at 20% 0%, #3b82f629, transparent 60%), radial-gradient(ellipse 60% 50% at 80% 10%, #8b5cf624, transparent 60%), radial-gradient(ellipse 70% 60% at 50% 100%, #6366f11a, transparent 70%);--gradient-cta:linear-gradient(135deg, var(--blue-600) 0%, var(--indigo-600) 55%, var(--violet-600) 100%);--gradient-card:linear-gradient(180deg, #fff9, #fff0);--gradient-text:linear-gradient(135deg, #1e40af 0%, #4f46e5 50%, #7c3aed 100%);--font-sans:var(--font-jakarta,"Plus Jakarta Sans"), var(--font-thai,"Noto Sans Thai"), Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "IBM Plex Mono", ui-monospace, Menlo, monospace}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--background);color:var(--ink);font-family:var(--font-sans);letter-spacing:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}button,input,select,textarea,summary,.btn,.project-card,.kpi-card,.feature-item,.case-item{transition:border-color .2s,background-color .2s,color .2s,box-shadow .2s,transform .2s}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,a:focus-visible{outline-offset:2px;border-radius:var(--radius-sm);outline:3px solid #3b82f652}h1,h2,h3,h4,p{margin:0}h1{color:var(--navy-950);letter-spacing:-.015em;font-size:28px;font-weight:800;line-height:1.18}h2{color:var(--navy-950);letter-spacing:-.01em;font-size:18px;font-weight:800;line-height:1.25}h3{color:var(--navy-950);letter-spacing:-.005em;font-size:15px;font-weight:800;line-height:1.35}@keyframes spin{to{transform:rotate(360deg)}}@keyframes orb-drift{0%,to{transform:translate(0,0)scale(1)}50%{transform:translateY(-20px)scale(1.05)}}.spin{animation:.9s linear infinite spin}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.shell{max-width:1280px;margin:0 auto;padding:28px}.centered-shell{justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.brand{color:var(--navy-700);letter-spacing:-.005em;align-items:center;gap:10px;font-size:14px;font-weight:800;display:inline-flex}.brand-mark{background:var(--gradient-cta);border-radius:var(--radius);box-shadow:var(--shadow-glow-soft);color:var(--white);justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.eyebrow{color:var(--blue-700);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.muted{color:var(--muted)}.confirm-overlay{z-index:1000;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;background:#0b16288c;border:0;width:100%;padding:0;position:absolute;inset:0}.confirm-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1;width:100%;max-width:480px;animation:.14s cubic-bezier(.2,.9,.3,1) confirm-pop;position:relative}@keyframes confirm-pop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.confirm-head{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:grid}.confirm-icon{border-radius:var(--radius);justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.confirm-icon-danger{background:var(--danger-bg);color:var(--danger)}.confirm-icon-neutral{background:var(--info-bg);color:var(--blue-700)}.confirm-title{color:var(--navy-950);align-self:center;margin:0;font-size:16px;font-weight:700;line-height:1.3}.confirm-close{border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:28px;height:28px;margin-top:4px;transition:background-color .12s,color .12s;display:inline-flex}.confirm-close:hover{background:var(--surface-muted);color:var(--navy-700)}.confirm-body{color:var(--ink-soft);gap:10px;padding:16px 20px;font-size:13.5px;line-height:1.55;display:grid}.confirm-body p{margin:0}.confirm-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.btn-danger{background:var(--danger);border-color:var(--danger);color:var(--white);box-shadow:0 6px 18px #b4231840}.btn-danger:hover:not(:disabled){background:#9a1d12;border-color:#9a1d12;transform:translateY(-1px);box-shadow:0 8px 22px #b4231852}.btn-danger:active:not(:disabled){transform:translateY(0)}.gradient-text{background:var(--gradient-text);color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);min-width:0;padding:22px;position:relative;overflow:hidden}.panel-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.panel-title{gap:4px;display:grid}.panel-icon{border-radius:var(--radius);color:var(--indigo-600);background:linear-gradient(135deg,#3b82f61f,#8b5cf61f);border:1px solid #6366f12e;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}label{color:var(--muted);align-content:start;gap:7px;margin-top:12px;font-size:13px;font-weight:700;display:grid}input,select,textarea{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);outline:none;width:100%;min-height:42px;padding:11px 12px;line-height:1.4}select{appearance:none;background-color:var(--surface,#fff);box-shadow:var(--shadow-xs);cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 14 14' fill='none' stroke='%235f6f82' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><polyline points='3 5.25 7 9 11 5.25'/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:36px;font-weight:600;transition:border-color .16s,box-shadow .16s,background-color .16s}select:hover{border-color:var(--line-strong,#b8c6d8)}input[type=checkbox]{appearance:none;background:var(--white);border:1.5px solid var(--line-strong);cursor:pointer;vertical-align:middle;border-radius:5px;flex-shrink:0;width:18px;height:18px;min-height:0;padding:0;transition:background-color .14s,border-color .14s,box-shadow .14s;display:inline-block;position:relative}input[type=checkbox]:hover{border-color:var(--blue-700)}input[type=checkbox]:checked{background:var(--blue-700);border-color:var(--blue-700)}input[type=checkbox]:checked:after{content:"";border-bottom:2px solid #fff;border-right:2px solid #fff;width:4.5px;height:9px;position:absolute;top:1.5px;left:5px;transform:rotate(45deg)}input[type=checkbox]:focus-visible{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #3b82f638}input[type=checkbox]:disabled{background:var(--surface-muted);border-color:var(--line);cursor:not-allowed;opacity:.6}input[type=radio]{appearance:auto;accent-color:var(--blue-700);cursor:pointer;background:0 0;border:0;border-radius:0;flex-shrink:0;width:16px;height:16px;min-height:0;padding:0}input[type=radio]:focus{box-shadow:0 0 0 3px #3b82f640}input[type=password]{letter-spacing:.06em;height:42px}input[type=password]::placeholder{letter-spacing:normal}input:hover,select:hover,textarea:hover{border-color:var(--line-strong)}input:focus,select:focus,textarea:focus{border-color:var(--focus);box-shadow:0 0 0 4px #3b82f626}textarea{resize:vertical;min-height:96px;line-height:1.55}select{appearance:none;background-color:var(--surface,#fff);box-shadow:var(--shadow-xs);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 14 14' fill='none' stroke='%235f6f82' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><polyline points='3 5.25 7 9 11 5.25'/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:36px;font-weight:600;transition:border-color .16s,box-shadow .16s,background-color .16s}select:disabled{background-color:var(--surface-muted);color:var(--muted);cursor:not-allowed;opacity:.75}select option{background:var(--white);color:var(--ink);font-weight:500}.btn{border-radius:var(--radius);letter-spacing:-.005em;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 16px;font-weight:700;display:inline-flex}.btn-primary{background:var(--gradient-cta);box-shadow:var(--shadow-glow);color:var(--white);border-color:#0000}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 30px #3b82f652}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-dark{background:var(--navy-900);border-color:var(--navy-900);color:var(--white);background-image:radial-gradient(80% 100% at 50% 0,#6366f138,#0000 65%);box-shadow:0 6px 20px #0b1f3a38}.btn-dark:hover:not(:disabled){background:var(--navy-800);border-color:var(--navy-800);transform:translateY(-1px);box-shadow:0 10px 26px #0b1f3a4d}.btn-dark:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--white);border-color:var(--line-strong);color:var(--navy-800)}.btn-secondary:hover:not(:disabled){background:var(--info-bg);border-color:var(--blue-400);color:var(--blue-700)}.btn-outline,a.btn-outline{background:var(--surface-muted);border-color:var(--line);color:var(--navy-800);text-decoration:none}.btn-outline:hover:not(:disabled):not(.disabled),a.btn-outline:hover:not(.disabled){background:var(--info-bg);border-color:var(--blue-400);color:var(--blue-700)}.btn-outline:disabled,.btn-outline.disabled,a.btn-outline.disabled,a.btn-outline[aria-disabled=true]{cursor:not-allowed;opacity:.55;pointer-events:none}.btn-ghost{color:var(--navy-700);background:0 0;border:0;min-height:32px;padding:4px 8px}.btn-ghost:hover{color:var(--blue-600)}.btn-danger{background:var(--white);color:var(--danger);border-color:#ffc5bd}.btn-danger:hover:not(:disabled){background:var(--danger-bg)}.btn-full{width:100%}.badge{letter-spacing:.01em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex-shrink:0;justify-content:center;place-self:center start;align-items:center;gap:4px;width:max-content;height:22px;padding:0 10px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.badge-low{background:var(--success-bg);color:var(--success)}.badge-medium{background:var(--warning-bg);color:var(--warning)}.badge-high,.badge-failed,.badge-error{background:var(--danger-bg);color:var(--danger)}.badge-passed{background:var(--success-bg);color:var(--success)}.badge-blocked{background:var(--warning-bg);color:var(--warning)}.badge-not_run,.badge-draft,.badge-info{background:var(--info-bg);color:var(--blue-700)}.badge-running{background:var(--info-bg);color:var(--blue-700);align-items:center;gap:6px;display:inline-flex}.badge-neutral{background:var(--surface-muted);color:var(--muted)}.badge-accent{color:var(--indigo-600);background:linear-gradient(135deg,#6366f124,#8b5cf624)}.notice{border-radius:var(--radius);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.notice-error{background:var(--danger-bg);color:var(--danger);border:1px solid #ffc5bd}.notice-info{background:var(--info-bg);color:var(--navy-800);border:1px solid #c2d5f7}.notice-warning{background:var(--warning-bg);color:var(--warning);border:1px solid #f7d680}.readiness-banner{flex-direction:row;margin-bottom:16px}.readiness-banner-icon{flex-shrink:0;margin-top:1px}.readiness-banner-body{flex-direction:column;gap:8px;width:100%;display:flex}.readiness-banner-headline{margin:0;font-weight:600}.readiness-check-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.readiness-check{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.readiness-check-text{flex:240px}.readiness-check-body{opacity:.85}.readiness-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.readiness-dot-blocker{background:var(--danger)}.readiness-dot-warning{background:var(--warning)}.readiness-dot-suggestion{background:var(--focus)}.readiness-cta{border-radius:var(--radius-sm);color:inherit;cursor:pointer;font:inherit;background:0 0;border:1px solid;flex-shrink:0;align-items:center;gap:2px;padding:3px 8px;font-weight:600;text-decoration:none;display:inline-flex}.readiness-cta:hover{opacity:.78}.empty-state{background:radial-gradient(ellipse 60% 50% at 50% 0%, #6366f10d, transparent 70%), var(--surface-muted);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:180px;padding:32px 24px;display:flex}.empty-state strong{color:var(--navy-950);font-size:15px}.empty-state-icon{border-radius:var(--radius);color:var(--indigo-600);background:linear-gradient(135deg,#3b82f629,#8b5cf629);justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}details[open]{border-color:var(--blue-400)}summary{color:var(--navy-900);cursor:pointer;padding:12px 14px;font-size:13px;font-weight:800;list-style:none}summary::-webkit-details-marker{display:none}pre{background:var(--navy-950);color:#cde2ff;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-height:420px;margin:0;padding:16px;font-size:12px;line-height:1.6;overflow:auto}code{background:var(--surface-muted);border-radius:var(--radius-xs);color:var(--indigo-600);font-family:var(--font-mono);padding:1px 6px;font-size:.92em}.toast-stack{z-index:100;pointer-events:none;flex-direction:column;gap:10px;width:min(520px,100vw - 32px);display:flex;position:fixed;top:28px;left:50%;transform:translate(-50%)}.toast{--toast-accent:var(--indigo-600);--toast-accent-soft:#1d4fd814;color:var(--navy-900);pointer-events:auto;background:#fff;border:1px solid #0b1f3a14;border-radius:12px;align-items:stretch;gap:0;padding:0;animation:.26s cubic-bezier(.22,1,.36,1) toast-slide-in;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #0b1f3a0a,0 8px 24px #0b1f3a14,0 24px 64px #0b1f3a1f}.toast:before{background:var(--toast-accent);content:"";width:3px;position:absolute;top:0;bottom:0;left:0}.toast:after{background:var(--toast-accent);content:"";opacity:.35;transform-origin:0;height:2px;animation:4.5s linear forwards toast-progress;position:absolute;bottom:0;left:0;right:0}.toast-error:after{animation-duration:6s}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-error{--toast-accent:#d93922;--toast-accent-soft:#d939221a}.toast-success{--toast-accent:#0f766e;--toast-accent-soft:#0f766e1a}.toast-info{--toast-accent:#1d4fd8;--toast-accent-soft:#1d4fd81a}.toast>svg{background:var(--toast-accent-soft);color:var(--toast-accent);border-radius:8px;flex-shrink:0;width:32px;height:32px;margin:16px 0 16px 16px;padding:7px}.toast strong{color:var(--navy-900);letter-spacing:-.01em;font-size:14px;font-weight:600;line-height:1.4;display:block}.toast span{color:var(--muted);margin-top:3px;font-size:13px;line-height:1.55;display:block}.toast>.flex-1{padding:14px 8px 16px 14px}@media (max-width:680px){.shell{padding:18px}.toast-stack{width:auto;top:12px;left:12px;right:12px;transform:none}}.toast-dismiss-btn{color:var(--muted);border-radius:6px;align-self:flex-start;width:28px;height:28px;min-height:0;margin:12px 12px 0 0;padding:0;transition:background-color .12s,color .12s}.toast-dismiss-btn:hover{color:var(--navy-900);background:#0b1f3a0f}.landing-mock-url{color:var(--muted);font-family:var(--font-mono);margin-left:10px;font-size:11px}.landing-mock-analyzing{color:var(--muted);margin-top:10px;font-size:12px}.landing-mock-progress-inner-82{width:82%}.landing-section-flush{padding-top:0}.landing-cta-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.landing-footer-icon{vertical-align:-2px;margin-right:6px}.landing-step-flow-arrow{color:var(--indigo-500)}.landing-stack-label{color:var(--navy-950);font-size:13px}.error-page-panel,.not-found-panel{width:100%;max-width:520px}.not-found-panel{text-align:center}.error-page-icon{color:var(--danger)}.error-page-body{color:var(--muted);font-size:14px;line-height:1.55}.error-page-digest{color:var(--subtle);font-family:var(--font-mono);margin-top:8px;font-size:11px}.error-page-cta{margin-top:16px}.not-found-title{margin-top:6px}.not-found-body{color:var(--muted);margin-top:10px;font-size:14px;line-height:1.55}.not-found-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}.panel-actions{align-items:center;gap:8px;display:flex}.modal-card-wide{max-width:640px}.form-row-2{grid-template-columns:1.2fr 1fr 1fr;gap:12px;display:grid}@media (max-width:640px){.form-row-2{grid-template-columns:1fr}}.case-row-delete{width:24px;height:24px;color:var(--text-muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex}.case-row-delete:hover,.case-row-delete:focus-visible{background:var(--surface-muted);color:var(--danger-600,#c53030);outline:none}.mt-12{margin-top:12px}.mt-14{margin-top:14px}.byo-tabbar{background:var(--surface-muted);border-radius:8px;gap:4px;margin:8px 0 16px;padding:4px;display:flex}.byo-tabbar .tab-button{flex:1;padding:6px 10px}.upload-file-input{display:none}.byo-preview-notes{background:var(--surface-muted);border-radius:8px;margin-bottom:12px;padding:10px 12px}.byo-preview-list{gap:10px;max-height:320px;margin-top:8px;padding-right:4px;display:grid;overflow-y:auto}.byo-preview-card{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:12px 14px}.byo-preview-card-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.byo-preview-title{background:0 0;border:1px solid #0000;border-radius:6px;flex:1;min-height:0;padding:4px 6px;font-size:14px;font-weight:600}.byo-preview-title:focus{border-color:var(--border);background:var(--surface-muted);outline:none}.byo-preview-meta{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.byo-preview-steps{color:var(--text-body);margin:6px 0 6px 18px;padding:0;font-size:13px}.byo-preview-steps li{margin-bottom:2px}.byo-preview-expected{color:var(--text-body);margin-top:8px;font-size:13px}.text-body{color:var(--text-body);font-size:14px}.text-hint{color:var(--text-muted);margin:0;font-size:13px;line-height:1.45}.text-error{color:var(--danger-600,#c53030);font-size:13px}.settings-stack{gap:12px;display:grid}.settings-field{gap:6px;min-width:0;display:grid}.settings-label{color:var(--navy-900);font-size:13px;font-weight:800}.settings-input{background:var(--white);border:1px solid var(--line);color:var(--navy-900);font:inherit;border-radius:8px;width:100%;min-height:38px;padding:8px 10px}select.settings-input,select.app-select{background-color:var(--surface,#fff);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 14 14' fill='none' stroke='%235f6f82' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><polyline points='3 5.25 7 9 11 5.25'/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:36px}.settings-input:focus{border-color:var(--blue-400);outline:none;box-shadow:0 0 0 3px #3d82f624}.qahub-select__control{background:var(--surface,#fff);border:1px solid var(--line);border-radius:var(--radius,10px);box-shadow:var(--shadow-xs);color:var(--ink,#0b1628);cursor:pointer;align-items:center;height:42px;min-height:42px;line-height:1.2;transition:border-color .16s,box-shadow .16s,background .16s;display:flex}.qahub-select__control:hover{border-color:var(--line-strong,#b8c6d8)}.qahub-select__control--is-focused,.qahub-select__control--is-focused:hover,.qahub-select__control--menu-is-open{border-color:var(--focus,#3b82f6);box-shadow:0 0 0 3px #3b82f629}.qahub-select__control--is-disabled{background:var(--surface-muted,#f1f5f9);border-color:var(--line);box-shadow:none;color:var(--muted);cursor:not-allowed}.qahub-select__value-container{box-sizing:border-box;flex:1;align-items:center;gap:6px;min-width:0;height:100%;padding:0 12px;display:flex;overflow:hidden}.qahub-select__single-value{color:var(--ink,#0b1628);text-overflow:ellipsis;white-space:nowrap;align-self:stretch;align-items:center;margin:0;font-size:13.5px;font-weight:600;line-height:1.2;display:flex;overflow:hidden}.qahub-select__placeholder{color:var(--muted);align-self:stretch;align-items:center;margin:0;font-size:13.5px;font-weight:600;line-height:1.2;display:flex}.qahub-select__input-container{color:var(--navy-900);align-items:center;min-width:2px;height:100%;margin:0;font-size:13.5px;line-height:1.2;display:flex}.qahub-select__value-container input{box-shadow:none;color:inherit;cursor:inherit;font:inherit;background:0 0;border:0;outline:none;height:auto;min-height:0;margin:0;padding:0;line-height:1}.qahub-select__value-container input[aria-readonly=true]{width:auto}.qahub-select__value-container input:focus{box-shadow:none;border-color:#0000;outline:none}.qahub-select__indicators{align-self:stretch;align-items:center;height:100%;display:flex}.qahub-select__indicator-separator{display:none}.qahub-select__dropdown-indicator{color:var(--muted);justify-content:center;align-items:center;min-width:40px;height:100%;line-height:0;transition:color .16s;display:flex}.qahub-select__dropdown-indicator svg{transform-box:fill-box;transform-origin:50%;flex-shrink:0;width:18px;height:18px;transition:transform .16s;display:block}.qahub-select__control--menu-is-open .qahub-select__dropdown-indicator{color:var(--navy-700)}.qahub-select__control--menu-is-open .qahub-select__dropdown-indicator svg{transform:rotate(180deg)}@keyframes qahub-select-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.qahub-select__menu{background:var(--surface,#fff);border:1px solid var(--line);border-radius:var(--radius-lg,14px);box-shadow:var(--shadow-lg);z-index:60;margin-top:6px;animation:.14s qahub-select-menu-in;overflow:hidden}.qahub-select__menu-list{max-height:248px;padding:6px;overflow-y:auto}.qahub-select__menu-list::-webkit-scrollbar{width:11px}.qahub-select__menu-list::-webkit-scrollbar-thumb{background:var(--line-strong,#b8c6d8);background-clip:padding-box;border:3px solid #0000;border-radius:999px}.qahub-select__option{color:var(--ink-soft,#334155);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:13.5px;font-weight:600;line-height:1.3;transition:background .12s,color .12s;display:flex}.qahub-select__option:not(:last-child){margin-bottom:1px}.qahub-select__option--is-focused{background:var(--info-bg,#eaf2ff);color:var(--ink,#0b1628)}.qahub-select__option--is-selected{background:var(--info-bg,#eaf2ff);color:var(--blue-600,#2563eb);font-weight:700}.qahub-select__option--is-selected.qahub-select__option--is-focused{background:var(--blue-100,#dbeafe)}.qahub-select__option--is-selected:after{color:var(--blue-600,#2563eb);content:"✓";font-size:12px;font-weight:800}.qahub-select__option--is-disabled{color:var(--muted);cursor:not-allowed;opacity:.62}.qahub-select__no-options-message{color:var(--muted);padding:8px;font-size:12.5px}.app-select-compact .qahub-select__control{height:32px;min-height:32px}.app-select-compact .qahub-select__value-container{padding:0 9px}.app-select-compact .qahub-select__single-value,.app-select-compact .qahub-select__placeholder,.app-select-compact .qahub-select__input-container,.app-select-compact .qahub-select__option{font-size:12.5px}.app-select-compact .qahub-select__dropdown-indicator{min-width:32px}.app-select-compact .qahub-select__dropdown-indicator svg{width:16px;height:16px}.llm-routing-list{gap:0;margin-top:14px;display:grid}.llm-routing-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.2fr) minmax(240px,.9fr);gap:12px;padding:16px 0;display:grid}.llm-routing-copy{gap:6px;min-width:0;display:grid}.llm-routing-default{align-self:start}.llm-routing-details{grid-column:1/-1}@media (max-width:760px){.llm-routing-row{grid-template-columns:1fr}}.step-card-fills{background:var(--surface-muted);font-size:12px;font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, monospace);border-radius:6px;margin:6px 0 4px;padding:6px 8px;line-height:1.6;list-style:none}.step-card-fills li{flex-wrap:wrap;align-items:baseline;gap:4px;display:flex}.step-card-fill-label{color:var(--text-body);font-weight:600}.step-card-fill-eq{color:var(--text-muted)}.step-card-fill-value{color:var(--text-body);word-break:break-all}.step-card-fill-source{color:var(--text-muted);font-size:11px}.step-card-note{background:var(--warn-50,#fff7ed);border-left:3px solid var(--warn-500,#f59e0b);color:var(--text-body);border-radius:4px;margin:6px 0 4px;padding:6px 8px;font-size:12px}.code-block{background:var(--surface-muted,#f8fafc);border:1px solid var(--border,#e5e7eb);border-radius:8px;margin-top:8px;padding:10px 0;font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;overflow-x:auto}.code-line{white-space:pre;align-items:baseline;min-height:1.6em;display:flex}.code-line-number{text-align:right;min-width:4ch;color:var(--text-muted,#94a3b8);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;background:var(--surface-muted,#f8fafc);z-index:1;flex:none;padding:0 12px 0 8px;position:sticky;left:0}.code-line-number.code-gutter-wide{min-width:6ch}.agent-transcript{flex-direction:column;gap:14px;padding-top:8px;display:flex}.agent-transcript-case{border:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);border-radius:8px;overflow:hidden}.agent-transcript-case-head{background:var(--surface-muted,#f8fafc);border-bottom:1px solid var(--border,#e5e7eb);justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;display:flex}.agent-transcript-list{margin:0;padding:0;list-style:none}.agent-transcript-row{border-bottom:1px solid var(--border,#f1f5f9);padding:10px 14px;font-size:12.5px;line-height:1.55}.agent-transcript-row:last-child{border-bottom:none}.agent-transcript-row-ok{border-left:3px solid var(--success-500,#22c55e)}.agent-transcript-row-error,.agent-transcript-row-refused,.agent-transcript-row-failed{border-left:3px solid var(--danger-500,#ef4444)}.agent-transcript-row-uncertain{border-left:3px solid var(--warn-500,#f59e0b)}.agent-transcript-row-passed{border-left:3px solid var(--success-500,#22c55e)}.agent-transcript-row-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.agent-transcript-turn-no{color:var(--text-muted,#94a3b8);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.agent-transcript-action{text-transform:uppercase;letter-spacing:.04em;color:var(--text-body);font-size:11px;font-weight:600}.agent-transcript-target{color:var(--text-muted);font-size:12px}.agent-transcript-outcome{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;margin-left:auto;padding:1px 6px;font-size:11px}.agent-transcript-outcome-ok,.agent-transcript-outcome-passed{color:var(--success-700,#15803d);background:#22c55e1f}.agent-transcript-outcome-error,.agent-transcript-outcome-failed,.agent-transcript-outcome-refused{color:var(--danger-700,#b91c1c);background:#ef44441f}.agent-transcript-outcome-uncertain{color:var(--warn-700,#b45309);background:#f59e0b24}.agent-transcript-line{color:var(--text-body);margin:2px 0}.agent-transcript-line code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.agent-transcript-nav code{background:var(--surface-muted,#f1f5f9);border-radius:4px;padding:1px 6px}.agent-transcript-arrow{color:var(--text-muted);margin:0 6px}.agent-transcript-note{background:var(--surface-muted,#f8fafc);color:var(--text-body);border-radius:4px;margin:6px 0 0;padding:6px 8px;font-size:12px}.agent-transcript-note-a11y{flex-direction:column;gap:6px;display:flex}.agent-transcript-note-text{color:var(--text-muted);letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.a11y-finding{background:var(--surface,#fff);border:1px solid var(--border-subtle,#e5e7eb);border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;display:flex}.a11y-finding.a11y-finding-ignored{opacity:.6;background:var(--surface-muted,#f8fafc)}.a11y-finding-sev{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;flex-shrink:0;align-items:center;padding:1px 7px;font-size:10px;font-weight:700;display:inline-flex}.a11y-finding-sev-critical{background:var(--danger-50,#fef2f2);color:var(--danger-700,#b91c1c)}.a11y-finding-sev-serious{background:var(--warning-50,#fffbeb);color:var(--warning-700,#b45309)}.a11y-finding-sev-moderate{background:var(--accent-50,#eef2ff);color:var(--accent-700,#4338ca)}.a11y-finding-sev-minor{background:var(--surface-muted,#f1f5f9);color:var(--text-muted)}.a11y-finding-rule{background:var(--surface-muted,#f1f5f9);color:var(--text-body);border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:11px;font-weight:600}.a11y-finding-desc{min-width:0;color:var(--text-body);flex:200px;font-size:12px}.a11y-finding-ignore{flex-shrink:0;padding:3px 8px;font-size:11px}.a11y-finding-ignored-label{color:var(--text-muted);flex-shrink:0;align-items:center;gap:4px;font-size:11px;font-style:italic;display:inline-flex}.agent-transcript-skill-token{background:var(--accent-50,#eef2ff);color:var(--accent-700,#4338ca);border-radius:4px;padding:1px 6px;font-size:11px}.skill-grid{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:900px){.skill-grid{grid-template-columns:repeat(2,1fr)}}.skill-card .panel-details{margin-top:8px}.skill-trigger-list{flex-direction:column;gap:6px;margin:0;padding:6px 0 0;font-size:13px;list-style:none;display:flex}.skill-trigger-list li{flex-wrap:wrap;align-items:baseline;gap:4px;display:flex}.skill-trigger-token{background:var(--surface-muted,#f1f5f9);border-radius:4px;margin-right:2px;padding:1px 6px;font-size:12px}.skill-list{margin:6px 0 0;padding:0;font-size:13px;list-style:inside}.skill-list li{margin-bottom:4px}.skill-addendum{background:var(--surface-muted,#f8fafc);border:1px solid var(--border,#e5e7eb);white-space:pre-wrap;color:var(--text-body);border-radius:6px;max-height:200px;margin:6px 0 0;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;overflow:auto}.byo-skill-editor{border:1px solid var(--border,#e5e7eb);resize:vertical;border-radius:6px;width:100%;min-height:280px;margin-top:8px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.55}.byo-marketplace-list{gap:10px;max-height:360px;margin-top:10px;padding-right:4px;display:grid;overflow-y:auto}.byo-marketplace-card{border:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.byo-marketplace-card h3{margin:0 0 4px;font-size:14px}.byo-marketplace-card p.text-body{margin:0 0 6px;font-size:13px}.byo-marketplace-card .text-hint{flex-wrap:wrap;align-items:center;gap:4px;margin:4px 0 0;display:flex}.byo-marketplace-card a{color:var(--accent-700,#4338ca);align-items:center;gap:4px;font-size:12px;display:inline-flex}.byo-browse-controls{align-items:center;gap:8px;margin-top:8px;display:flex}.byo-browse-controls .settings-input{flex:auto}.byo-browse-list{gap:8px;max-height:320px;margin-top:10px;padding-right:4px;display:grid;overflow-y:auto}.byo-browse-row{border:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.byo-browse-row input[type=checkbox]{margin-top:3px}.byo-browse-row-body{flex-direction:column;gap:4px;font-size:13px;display:flex}.byo-browse-row-folder{color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.skill-card-controls{border-bottom:1px solid var(--border,#f1f5f9);align-items:center;gap:10px;margin:0 0 8px;padding:6px 0 10px;display:flex}.skill-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-muted);align-items:center;gap:8px;margin-top:0;font-size:12px;display:inline-flex}.skill-toggle input[type=checkbox]{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skill-toggle-knob{background:var(--border,#cbd5e1);border-radius:999px;width:34px;height:18px;transition:background .12s;display:inline-block;position:relative}.skill-toggle-knob:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .14s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000026}.skill-toggle.on .skill-toggle-knob{background:var(--success-500,#22c55e)}.skill-toggle.on .skill-toggle-knob:before{transform:translate(16px)}.skill-toggle.on .skill-toggle-label{color:var(--success-700,#15803d);font-weight:600}.skill-toggle input:disabled+.skill-toggle-knob{opacity:.5}.skill-delete-btn{width:24px;height:24px;color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;margin-bottom:2px;padding:0;transition:background .12s,color .12s;display:inline-flex}.skill-delete-btn:hover:not(:disabled),.skill-delete-btn:focus-visible:not(:disabled){background:var(--surface-muted,#f1f5f9);color:var(--danger-600,#c53030);outline:none}.skill-delete-btn:disabled{opacity:.5;cursor:not-allowed}.skill-card-controls .skill-delete-btn{margin-left:auto}.subpanel{border:1px solid var(--surface-border,#e2e8f0);background:var(--surface-muted,#f8fafc);border-radius:10px;flex-direction:column;gap:12px;margin-top:8px;padding:16px;display:flex}.subpanel-header{flex-direction:column;gap:4px;display:flex}.subpanel-title{color:var(--text-body,#1f2937);letter-spacing:.02em;margin:0;font-size:14px;font-weight:600}.subpanel-hint{color:var(--text-muted,#94a3b8);margin:0;font-size:12px}.documents-field{flex-direction:column;gap:10px;display:flex}.documents-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.documents-input{display:none}.documents-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.documents-row{border:1px solid var(--surface-border,#e2e8f0);background:var(--surface-card,#fff);border-radius:8px;align-items:flex-start;gap:12px;padding:10px 12px;display:flex}.documents-row-meta{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.documents-row-name{color:var(--text-body,#1f2937);word-break:break-word;font-weight:600}.documents-row-sub{color:var(--text-muted,#94a3b8);font-size:12px}.documents-row-note{color:var(--warning-700,#b45309);font-size:12px}.btn-icon-danger{width:28px;height:28px;color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.btn-icon-danger:hover:not(:disabled),.btn-icon-danger:focus-visible:not(:disabled){background:var(--surface-muted,#f1f5f9);color:var(--danger-600,#c53030);outline:none}.btn-icon-danger:disabled{opacity:.5;cursor:not-allowed}.code-line-content{color:var(--text-body,#1f2937);white-space:pre;font-family:inherit;font-size:inherit;line-height:inherit;flex:auto;padding-right:14px}.panel-details{margin-top:12px}.panel-details>summary{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:6px;padding:8px 10px;font-size:13px;font-weight:600;display:flex}.panel-details>summary:hover{background:var(--surface-muted,#f1f5f9)}.panel-details[open]>summary{margin-bottom:4px}.api-case-list{flex-direction:column;gap:14px;display:flex}.api-case{background:var(--surface-card);border:1px solid var(--line);border-radius:8px;position:relative;overflow:hidden;box-shadow:0 14px 36px #0f172a0f}.api-case:before{content:"";background:var(--line);height:3px;display:block}.api-case-passed{border-color:#16a34a52}.api-case-failed{border-color:#dc262652}.api-case-blocked{border-color:#b4530952}.api-case-passed:before{background:var(--success)}.api-case-failed:before{background:var(--danger)}.api-case-blocked:before{background:var(--warning)}.api-case-head{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:14px 16px;display:flex}.api-case-icon-passed{color:var(--success-700)}.api-case-icon-failed{color:var(--danger-600)}.api-case-titles{flex:1;min-width:0}.api-case-title{color:var(--ink);margin:0;font-weight:700;line-height:1.35}.api-case-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:12px;overflow:hidden}.api-case-chev{color:var(--muted);transition:transform .15s}.api-case-chev.open{transform:rotate(180deg)}.api-case-body{flex-direction:column;gap:14px;padding:0 16px 16px;display:flex}.api-case-findings ul{margin:4px 0 0;padding-left:18px}.api-exchange{background:linear-gradient(180deg, #f8fafcd1, #fffffff5), var(--surface-card);border:1px solid var(--line);border-radius:8px;overflow:hidden}.api-exchange-ok{border-color:#16a34a3d}.api-exchange-failed{border-color:#dc262657}.api-exchange-error{border-color:#b4530957}.api-exchange-head{border-bottom:1px solid var(--line);background:linear-gradient(#fffffff5,#f8fafceb);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.api-request-line{align-items:center;gap:10px;min-width:0;display:flex}.api-method{color:#fff;font-family:var(--font-mono);letter-spacing:.02em;background:var(--ink);border-radius:6px;flex:none;padding:4px 7px;font-size:11px;font-weight:800}.api-method-get{background:#0369a1}.api-method-post{background:#047857}.api-method-put,.api-method-patch{background:#b45309}.api-method-delete{background:var(--danger-600)}.api-exchange-url{color:var(--ink);font-family:var(--font-mono);word-break:break-word;background:0 0;padding:0;font-size:13px;font-weight:800;line-height:1.35}.api-url-stack{gap:2px;min-width:0;display:grid}.api-exchange-origin{color:var(--muted);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.api-exchange-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:fit-content;display:flex}.api-status{background:var(--surface-muted);border:1px solid var(--line);font-family:var(--font-mono);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.api-status-ok{color:var(--success-700);background:#16a34a1a;border-color:#16a34a47}.api-status-redirect{color:#b45309;background:#b453091a;border-color:#b4530942}.api-status-client{color:var(--danger-600);background:#dc26261a;border-color:#dc262642}.api-status-server,.api-status-err{color:var(--danger-700);background:#dc26261f;border-color:#dc26264d}.api-exchange-stat{background:var(--white);border:1px solid var(--line);color:var(--muted);border-radius:999px;align-items:center;gap:3px;min-height:26px;padding:4px 8px;font-size:12px;display:inline-flex}.api-exchange-error-msg{color:var(--danger-700);font-family:var(--font-mono);background:#dc262614;border-bottom:1px solid #dc262629;margin:0;padding:10px 14px;font-size:12px}.api-exchange-cols{grid-template-columns:1fr 1fr;align-items:start;gap:14px;padding:14px;display:grid}@media (max-width:720px){.api-exchange-cols{grid-template-columns:1fr}}.api-pane{background:var(--white);border:1px solid var(--line);border-radius:8px;min-width:0;overflow:hidden;box-shadow:0 8px 22px #0f172a0d}.api-pane-head{border-bottom:1px solid var(--line);background:linear-gradient(#fff,#f8fafc);align-items:center;min-height:38px;padding:10px 12px;display:flex}.api-col-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.api-headers{background:0 0;border:0;border-radius:0;overflow:visible}.api-headers[open]{border-color:#0000}.api-headers summary{border-bottom:1px solid var(--line);color:var(--muted);cursor:pointer;justify-content:space-between;align-items:center;padding:9px 12px;font-size:12px;font-weight:800;list-style:none;display:flex}.api-headers summary:after{border-bottom:1.5px solid var(--muted);border-right:1.5px solid var(--muted);content:"";width:7px;height:7px;transition:transform .14s;transform:rotate(45deg)}.api-headers[open] summary:after{transform:translateY(3px)rotate(225deg)}.api-header-scroll{max-height:190px;overflow:auto}.api-header-table{border-collapse:collapse;width:100%;font-size:12px}.api-header-table th{color:var(--muted);text-align:left;vertical-align:top;width:34%;padding:7px 10px 7px 12px;font-weight:600}.api-header-table td{padding:7px 12px 7px 0}.api-header-table tr+tr{border-top:1px solid #e2e8f0b8}.api-header-value{color:#4338ca;white-space:pre-wrap;overflow-wrap:anywhere;background:#4f46e514;padding:1px 4px;line-height:1.55;display:inline}.api-body-block{border-top:1px solid var(--line)}.api-body-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;padding:9px 12px;font-size:11px;font-weight:800}.api-body-pre{color:#dbeafe;font-family:var(--font-mono);white-space:pre-wrap;background:#0b1f3a;max-height:320px;margin:0;padding:12px 14px;font-size:12px;line-height:1.65;overflow:auto}.api-body-pre code{color:inherit;font-size:inherit;line-height:inherit;background:0 0;border-radius:0;padding:0}.api-empty{color:var(--muted);margin:12px;font-size:12px;font-style:italic}.api-extracted-chips{flex-wrap:wrap;gap:6px;display:flex}.api-extracted-chip{border:1px solid var(--line);background:var(--surface-card);font-family:var(--font-mono);border-radius:4px;padding:2px 6px;font-size:12px}.api-checks{background:var(--white);border-top:1px solid var(--line);padding:12px 14px 14px}.api-checks-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.api-checks-score{border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}.api-checks-ok .api-checks-score{color:var(--success-700);background:#16a34a1a}.api-checks-fail .api-checks-score{color:var(--danger-700);background:#dc26261a}.api-check-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.api-check{background:var(--surface-muted);border:1px solid #0000;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:4px 7px;padding:8px 10px;font-size:13px;display:grid}.api-check-ok{background:#16a34a0f}.api-check-fail{background:#dc26260f;border-color:#dc262624}.api-check-icon-ok{color:var(--success-700);margin-top:2px}.api-check-icon-fail{color:var(--danger-600);margin-top:2px}.api-check-desc{color:var(--ink);font-weight:650}.api-check-detail{flex-wrap:wrap;grid-column:2;gap:8px;font-size:12px;display:flex}.api-check-exp,.api-check-act{color:var(--muted)}.api-check-msg{width:100%;color:var(--danger-700)}.api-builder{flex-direction:column;gap:12px;display:flex}.api-builder-reqline{grid-template-columns:110px 1fr 130px;align-items:end;gap:8px;display:grid}@media (max-width:640px){.api-builder-reqline{grid-template-columns:1fr}}.api-kv-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.api-kv-row,.api-assert-row{align-items:center;gap:6px;margin-bottom:6px;display:flex}.api-kv-row input{flex:1}.api-assert-row select,.api-assert-row input{flex:1;min-width:0}.api-assert-schema{font-family:var(--font-mono);flex:2;font-size:12px}.api-try-result{border:1px solid var(--line);border-top:3px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-muted);margin-top:4px;padding:10px 12px}.api-try-passed{border-top-color:var(--success)}.api-try-failed{border-top-color:var(--danger)}.api-try-blocked{border-top-color:var(--warning)}.api-try-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.project-type-field{flex-direction:column;gap:10px;display:flex}.project-type-label{color:var(--ink);font-weight:600}.project-type-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (max-width:560px){.project-type-grid{grid-template-columns:1fr}}.project-type-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-card);text-align:left;cursor:pointer;flex-direction:column;gap:8px;padding:18px 16px;transition:border-color .12s,box-shadow .12s,background .12s,transform .12s;display:flex}.project-type-card:hover{border-color:var(--accent-700,var(--navy-700));box-shadow:var(--shadow-sm);transform:translateY(-1px)}.project-type-card.active{border-color:var(--accent-700,var(--navy-700));background:var(--accent-50,var(--surface-muted));box-shadow:var(--shadow-glow-soft,none)}.project-type-card-badge{background:var(--surface-muted);width:36px;height:36px;color:var(--navy-700);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.project-type-card.active .project-type-card-badge{background:var(--info-bg);color:var(--blue-600)}.project-type-card-icon{color:inherit}.project-type-card-name{color:var(--ink);font-size:15px;font-weight:600}.project-type-card-desc{color:var(--muted);font-size:12.5px;line-height:1.5}.live-screen{border:1px solid var(--line);border-radius:var(--radius);background:var(--navy-950,#0b1628);margin:12px 0;overflow:hidden}.live-screen-head{background:var(--navy-900,#0f1d34);align-items:center;gap:10px;padding:8px 12px;display:flex}.live-screen-badge{background:var(--danger-600,#c53030);color:#fff;letter-spacing:.03em;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.live-screen-dot{background:#fff;border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite live-pulse}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.3}}.live-screen-titles{flex:1;min-width:0}.live-screen-label{color:#e2e8f0;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:600;overflow:hidden}.live-screen-url{color:#94a3b8;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;font-size:11px;overflow:hidden}.live-screen-case{color:#94a3b8;white-space:nowrap;font-size:11px}.live-screen-body{grid-template-columns:1fr;align-items:start;min-height:0;display:grid}@media (min-width:768px){.live-screen-body{grid-template-columns:minmax(0,1fr) minmax(280px,360px)}}.live-screen-img{object-fit:contain;background:#000;align-self:start;width:100%;min-width:0;height:auto;max-height:70vh;transition:opacity .12s ease-out,filter .2s ease-out;animation:.24s ease-out live-frame-in;display:block}@keyframes live-frame-in{0%{opacity:.55;filter:blur(2px)}to{opacity:1;filter:blur()}}.live-screen-coverage{background:var(--navy-800,#1e3a5f);color:var(--success-400,#68d391);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.live-screen-thought{box-sizing:border-box;background:var(--navy-900,#0f1d34);border-top:1px solid var(--line);overscroll-behavior:contain;min-height:0;max-height:240px;padding:14px 16px;overflow-y:auto}@media (min-width:768px){.live-screen-thought{border-top:none;border-left:1px solid var(--line);align-self:start;min-width:260px;max-width:440px;min-height:100%}}.live-thought-section{margin-bottom:14px}.live-thought-section:last-child{margin-bottom:0}.live-thought-section-status{border-bottom:1px solid #94a3b838;padding-bottom:14px}.live-thought-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.live-thought-text{color:#e2e8f0;word-break:break-word;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.65}.live-thought-subtext{color:#94a3b8;margin:8px 0 0;font-size:12px;line-height:1.5}.live-thought-counter{color:#bfdbfe;background:#0e74902e;border:1px solid #60a5fa57;border-radius:8px;margin:10px 0 0;padding:8px 10px;font-size:12px;font-weight:700;line-height:1.45}.live-test-data{background:var(--navy-900,#0f1d34);border-top:1px solid #94a3b83d;padding:12px}.live-test-data-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.live-test-data-kicker{color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:700}.live-test-data h2,.live-test-data h3{color:#e2e8f0;margin:0}.live-test-data h2{font-size:14px;font-weight:700}.live-test-data-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.live-test-data-group{background:#0f172a8c;border:1px solid #94a3b842;border-radius:8px;min-width:0;padding:10px}.live-test-data-group-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.live-test-data-group h3{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:700;overflow:hidden}.live-test-data-group-head span{color:#bfdbfe;white-space:nowrap;background:#3b82f629;border:1px solid #60a5fa57;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:700}.live-test-data-group dl{gap:6px;margin:0;display:grid}.live-test-data-group dl div{grid-template-columns:minmax(80px,.36fr) minmax(0,1fr);gap:4px;display:grid}.live-test-data-group dt{color:#94a3b8;font-family:var(--font-mono);overflow-wrap:anywhere;min-width:0;font-size:11px}.live-test-data-group dd{color:#f8fafc;font-family:var(--font-mono);overflow-wrap:anywhere;white-space:pre-wrap;min-width:0;margin:0;font-size:11px}.live-test-data-empty{color:#cbd5e1;margin:0;font-size:13px}
.landing{background:var(--background);color:var(--ink);font-family:var(--font-sans);min-height:100vh;position:relative;overflow-x:hidden}.landing:before{background:var(--gradient-hero);content:"";pointer-events:none;z-index:0;width:100%;height:100vh;position:fixed;top:0;left:0}.landing-nav{-webkit-backdrop-filter:blur(14px)saturate(180%);z-index:30;background:#f6f8fbc7;border-bottom:1px solid #d8e2ee99;position:sticky;top:0}.landing-nav-inner{justify-content:space-between;align-items:center;max-width:1180px;height:64px;margin:0 auto;padding:0 32px;display:flex}.landing-brand{color:var(--navy-950);letter-spacing:-.01em;align-items:center;gap:10px;font-size:16px;font-weight:800;display:flex}.landing-logo{background:var(--gradient-cta);border-radius:var(--radius);box-shadow:var(--shadow-glow-soft);color:var(--white);justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:800;display:inline-flex}.landing-nav-links{align-items:center;gap:28px;margin:0;padding:0;list-style:none;display:flex}.landing-nav-links a{color:var(--muted);font-size:14px;font-weight:600;transition:color .18s}.landing-nav-links a:hover{color:var(--navy-950)}.landing-nav-actions{align-items:center;gap:10px;display:flex}.landing-section{z-index:1;max-width:1180px;margin:0 auto;padding:96px 32px;position:relative}.landing-hero{text-align:center;padding-top:88px}.landing-hero-eyebrow{color:var(--indigo-600);font-family:var(--font-mono);letter-spacing:.04em;background:#6366f114;border:1px solid #6366f133;border-radius:999px;align-items:center;gap:8px;margin:0 auto 24px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.landing-hero h1{color:var(--navy-950);letter-spacing:-.025em;max-width:880px;margin:0 auto 22px;font-size:clamp(42px,6.5vw,72px);font-weight:800;line-height:1.04}.landing-hero h1 em{background:var(--gradient-text);color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.landing-hero-lead{color:var(--muted);max-width:640px;margin:0 auto 32px;font-size:18px;line-height:1.6}.landing-hero-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:56px;display:flex}.landing-hero-visual{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-width:1080px;margin:0 auto;position:relative;overflow:hidden}.landing-hero-visual:before{background:var(--gradient-card);content:"";pointer-events:none;position:absolute;inset:0}.landing-hero-visual-bar{border-bottom:1px solid var(--line);z-index:1;background:#f1f5f999;align-items:center;gap:8px;padding:12px 16px;display:flex;position:relative}.landing-dot{background:var(--line-strong);border-radius:50%;width:10px;height:10px}.landing-dot-r{background:#f87171}.landing-dot-y{background:#fbbf24}.landing-dot-g{background:#34d399}.landing-hero-visual-grid{z-index:1;grid-template-columns:1fr 1fr;gap:24px;padding:32px;display:grid;position:relative}.landing-mock-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);padding:20px}.landing-mock-label{color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:600}.landing-mock-field{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius);color:var(--muted);margin-bottom:10px;padding:10px 12px;font-size:13px}.landing-mock-progress{background:var(--line);border-radius:var(--radius-xs);height:6px;overflow:hidden}.landing-mock-progress-inner{background:var(--gradient-cta);height:100%}.landing-mock-result{border-bottom:1px solid var(--line);grid-template-columns:32px 1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.landing-mock-result:last-child{border-bottom:0}.landing-mock-result-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:32px;height:32px;display:flex}.landing-mock-result-icon.pass{background:var(--success-bg);color:var(--success)}.landing-mock-result-icon.fail{background:var(--danger-bg);color:var(--danger)}.landing-mock-result-icon.warn{background:var(--warning-bg);color:var(--warning)}.landing-mock-result-name{font-size:13px;font-weight:700}.landing-mock-result-meta{color:var(--muted);font-family:var(--font-mono);margin-top:2px;font-size:11px}.landing-mock-pill{color:var(--indigo-600);font-family:var(--font-mono);background:#6366f11f;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.landing-section-head{text-align:center;max-width:720px;margin:0 auto 56px}.landing-section-eyebrow{color:var(--indigo-600);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#6366f114;border:1px solid #6366f12e;border-radius:999px;align-items:center;gap:6px;margin-bottom:14px;padding:5px 12px;font-size:11px;font-weight:600;display:inline-flex}.landing-section-head h2{color:var(--navy-950);letter-spacing:-.02em;font-size:clamp(30px,4.5vw,44px);font-weight:800;line-height:1.1}.landing-section-head p{color:var(--muted);max-width:540px;margin:16px auto 0;font-size:16px;line-height:1.6}.landing-steps{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.landing-step{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:28px;transition:border-color .2s,box-shadow .2s,transform .2s;position:relative}.landing-step:hover{border-color:var(--blue-400);box-shadow:var(--shadow-md);transform:translateY(-2px)}.landing-step-number{background:var(--gradient-cta);border-radius:var(--radius);box-shadow:var(--shadow-glow-soft);color:var(--white);font-family:var(--font-mono);justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:18px;font-size:13px;font-weight:800;display:inline-flex}.landing-step h3{color:var(--navy-950);letter-spacing:-.01em;margin-bottom:10px;font-size:20px;font-weight:800}.landing-step p{color:var(--muted);font-size:14px;line-height:1.6}.landing-step-flow{font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;font-size:11px;display:flex}.landing-step-flow-chip{border-radius:var(--radius-sm);color:var(--indigo-600);background:#6366f114;border:1px solid #6366f129;padding:4px 10px}.landing-features{grid-template-columns:repeat(6,1fr);gap:20px;display:grid}.landing-feature{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:28px;transition:border-color .2s,box-shadow .2s,transform .2s;position:relative}.landing-feature:hover{border-color:var(--indigo-500);box-shadow:var(--shadow-md);transform:translateY(-2px)}.landing-feature.span-3{grid-column:span 3}.landing-feature.span-2{grid-column:span 2}.landing-feature.span-4{grid-column:span 4}.landing-feature-icon{border-radius:var(--radius);color:var(--indigo-600);background:linear-gradient(135deg,#3b82f624,#8b5cf624);border:1px solid #6366f133;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:18px;display:inline-flex}.landing-feature h3{color:var(--navy-950);letter-spacing:-.01em;margin-bottom:8px;font-size:18px;font-weight:800}.landing-feature p{color:var(--muted);font-size:14px;line-height:1.6}.landing-stack{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;padding:32px;display:grid}.landing-stack-item{border:1px solid var(--line);border-radius:var(--radius);place-items:center;gap:8px;padding:18px;transition:border-color .2s,background-color .2s;display:grid}.landing-stack-item:hover{background:var(--info-bg);border-color:var(--blue-400)}.landing-stack-icon{border-radius:var(--radius);color:var(--indigo-600);font-family:var(--font-mono);background:linear-gradient(135deg,#3b82f624,#8b5cf624);justify-content:center;align-items:center;width:38px;height:38px;font-size:12px;font-weight:700;display:inline-flex}.landing-cta{background:var(--navy-950);border-radius:var(--radius-xl);color:var(--white);text-align:center;background-image:radial-gradient(60% 50% at 25% 10%,#3b82f652,#0000 60%),radial-gradient(50% 40% at 80% 90%,#8b5cf647,#0000 60%);max-width:1180px;margin:0 auto;padding:80px 32px;position:relative;overflow:hidden}.landing-cta h2{color:var(--white);letter-spacing:-.02em;margin-bottom:18px;font-size:clamp(30px,4.5vw,44px);font-weight:800}.landing-cta p{color:#ffffffb8;max-width:540px;margin:0 auto 32px;font-size:16px;line-height:1.6}.landing-cta .btn-secondary{color:var(--white);background:#ffffff0f;border-color:#fff3}.landing-cta .btn-secondary:hover:not(:disabled){color:var(--white);background:#ffffff1f;border-color:#ffffff52}.landing-footer{border-top:1px solid var(--line);color:var(--muted);z-index:1;margin-top:40px;font-size:13px;position:relative}.landing-footer-inner{flex-wrap:wrap;justify-content:space-between;gap:24px;max-width:1180px;margin:0 auto;padding:32px;display:flex}.landing-footer-links{gap:24px;margin:0;padding:0;list-style:none;display:flex}.landing-footer-links a{color:var(--muted);font-weight:600;transition:color .18s}.landing-footer-links a:hover{color:var(--navy-950)}@media (max-width:980px){.landing-section{padding:64px 24px}.landing-hero{padding-top:56px}.landing-hero-visual-grid,.landing-steps,.landing-features{grid-template-columns:1fr}.landing-feature.span-2,.landing-feature.span-3,.landing-feature.span-4{grid-column:span 1}.landing-nav-links{display:none}}
.auth-shell{background:radial-gradient(ellipse 60% 40% at 20% 10%, #3b82f61f, transparent 60%), radial-gradient(ellipse 50% 40% at 80% 90%, #8b5cf61a, transparent 60%), var(--background);justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.auth-card{-webkit-backdrop-filter:blur(20px);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);background:#fffffff0;width:min(440px,100%);padding:36px}.auth-card .brand{margin-bottom:12px}.auth-card h1{margin-bottom:6px;font-size:22px}.auth-card .lead{color:var(--muted);margin-bottom:18px;font-size:14px;line-height:1.55}.auth-actions{gap:10px;margin-top:18px;display:grid}.auth-switch{border-top:1px solid var(--line);color:var(--muted);justify-content:center;gap:6px;margin-top:18px;padding-top:14px;font-size:13px;display:flex}.auth-switch a{color:var(--navy-700);font-weight:700}.auth-switch a:hover{color:var(--blue-600)}
