@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Geist;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Geist;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_22f652{font-family:Geist,Geist Fallback;font-style:normal}.__variable_22f652{--font-geist:"Geist","Geist Fallback"}:root{--bg:#EFF1F7;--surface:#FFFFFF;--surface-soft:#F5F7FB;--surface-elevated:#FFFFFF;--border:#E6E9F1;--border-strong:#D2D7E2;--text:#0B1320;--text-body:#2A3344;--text-muted:#5A6373;--text-subtle:#8A92A0;--accent:#2563EB;--accent-hover:#1D4FD0;--accent-900:#1A44B8;--accent-50:rgba(37,99,235,0.08);--accent-100:rgba(37,99,235,0.16);--highlight-yellow:#FFE45A;--success:#17935A;--success-text:#0F7344;--success-soft:rgba(23,147,90,0.09);--warning:#F5B312;--warning-text:#9A6E00;--warning-strong:#C98A06;--warning-soft:rgba(245,179,18,0.12);--error:#E0322E;--error-text:#C42420;--error-strong:#B91C1C;--error-soft:rgba(224,50,46,0.08);--info:#2563EB;--info-text:#1D4FD0;--info-soft:rgba(37,99,235,0.09);--track:#E9ECF2;--code-bg:#F4F6FA;--neutral-tint:rgba(11,19,32,0.05);--neutral-hover:rgba(11,19,32,0.08);--topbar-bg:rgba(255,255,255,0.85);--modal-backdrop:rgba(15,23,42,0.55);--highlight-strip:rgba(11,19,32,0.05);--raise-inset:inset 0 1px 0 rgba(255,255,255,0.55);--card-inset:inset 0 -1px 0 rgba(16,24,40,0.04);--ring-inner-shadow:inset 0 1px 3px rgba(16,24,40,0.08),inset 0 0 0 1px rgba(16,24,40,0.03);--chip-fill:#FFFFFF;--group-deliverability:#E0900A;--group-links:#2563EB;--group-content:#1A8754;--group-html:#7C3AED;--shadow-sm:0 1px 1px rgba(16,24,40,0.03);--shadow:0 1px 2px rgba(16,24,40,0.04);--shadow-lg:0 4px 12px rgba(16,24,40,0.08),0 16px 40px -12px rgba(16,24,40,0.14);--fs-xs:11px;--fs-sm:12.5px;--fs-base:13.5px;--fs-md:15px;--fs-lg:18px;--fs-xl:22px;--fs-2xl:28px;--fs-display:42px;--radius:14px;--radius-lg:18px;--radius-sm:9px;--font-sans:var(--font-geist),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-display:var(--font-geist),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--text-2xs:10px;--text-xs:12px;--text-sm:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:28px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--ease:cubic-bezier(0.4,0,0.2,1);--ease-soft:cubic-bezier(0.22,1,0.36,1);--shadow-float:0 2px 4px rgba(16,24,40,0.04),0 12px 28px -8px rgba(16,24,40,0.10);--surface-tint-cool:linear-gradient(180deg,#FFFFFF,#FCFDFF);--hairline-accent:rgba(37,99,235,0.14);--field-grid:rgba(11,19,32,0.028);--gauge-glow:rgba(23,147,90,0.20);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);color-scheme:light}.brand-mark,.btn-primary,.editor-bar-btn.primary,.empty-state-icon{box-shadow:var(--shadow-sm),var(--raise-inset)}.btn-primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:var(--shadow),var(--raise-inset)}.btn-spark{background:rgba(255,255,255,.5);box-shadow:0 0 4px rgba(255,255,255,.3)}.editor:focus-visible,button:focus-visible,input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.editor-shell:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.module{box-shadow:var(--shadow),var(--card-inset)}*{box-sizing:border-box}a{text-decoration:none;color:inherit}body,html{margin:0;padding:0;font-family:var(--font-sans);font-feature-settings:"cv11","ss01";color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scrollbar-gutter:stable}body{min-height:100vh;background:radial-gradient(ellipse 78% 44% at 50% -6%,color-mix(in srgb,var(--accent) 7%,transparent) 0,transparent 62%),linear-gradient(180deg,#ECEEF5 0,#F4F5F9 34%,var(--surface) 72%);background-attachment:fixed;background-repeat:no-repeat}.app-shell,body{position:relative}.app-shell{z-index:1}::selection{background:var(--accent-100);color:var(--accent)}.editor:focus-visible,button:focus-visible,input:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.code-modal-find input:focus,.code-modal-find input:focus-visible,.issues-search input:focus,.issues-search input:focus-visible,.issues-search-input:focus,.issues-search-input:focus-visible,.rules-search input:focus,.rules-search input:focus-visible,.template-library-search input:focus,.template-library-search input:focus-visible,.template-library-search-input:focus,.template-library-search-input:focus-visible{box-shadow:none!important;outline:none}.muted{color:var(--text-muted);font-size:12px}.actions{display:flex;align-items:center;gap:12px}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin 1s linear infinite}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px;background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-muted) 40%,var(--border-strong));background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}body,html{overflow-x:clip}@supports not (((-webkit-backdrop-filter:blur(2px)) or (backdrop-filter:blur(2px))) or (-webkit-backdrop-filter:blur(2px))){.app-bar{background:var(--surface)}}@media (prefers-reduced-transparency:reduce){.app-bar{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (forced-colors:active){.page-head h1{-webkit-text-fill-color:currentColor;background:none;color:CanvasText}}.app-shell{display:block;min-height:100vh}.app-main{min-width:0;display:flex;flex-direction:column}.page{max-width:1500px;margin:0 auto;padding:36px 32px 72px;width:100%}.page-head{margin-bottom:32px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.page-head h1{margin:0 0 6px;font-size:32px;letter-spacing:-.03em;font-weight:700;line-height:1.15;background:linear-gradient(120deg,var(--text) 0,var(--text) 60%,var(--accent-900) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.page-head p{margin:0;color:var(--text-muted);font-size:14px;line-height:1.5;max-width:560px}.col{display:flex;flex-direction:column;gap:14px;min-width:0}@container results (min-width: 900px){.col-results .body-grid>.checklist{position:-webkit-sticky;position:sticky;top:74px;align-self:start;max-height:calc(100vh - 90px);overflow-y:auto}}.issues{display:flex;flex-direction:column;gap:16px;min-width:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.issues>*{animation:fadeUp .45s var(--ease-soft) backwards}.issues>:first-child{animation-delay:0s}.issues>:nth-child(2){animation-delay:.06s}.issues>:nth-child(3){animation-delay:.12s}.issues>:nth-child(4){animation-delay:.18s}.issues>:nth-child(n+5){animation-delay:.24s}.category-items>.card{animation:fadeUp .4s var(--ease-soft) backwards}.category-items>.card:first-child{animation-delay:.04s}.category-items>.card:nth-child(2){animation-delay:.08s}.category-items>.card:nth-child(3){animation-delay:.12s}.category-items>.card:nth-child(4){animation-delay:.16s}.category-items>.card:nth-child(n+5){animation-delay:.2s}.card-title{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:700;display:inline-flex;align-items:center;gap:8px}.card-title:before{content:"";width:4px;height:13px;border-radius:2px;background:var(--accent);flex-shrink:0}.btn-primary{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:0;background:linear-gradient(180deg,var(--accent) 0,var(--accent-hover) 100%);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-sans);font-size:14px;font-weight:600;letter-spacing:-.005em;transition:transform .1s var(--ease-soft),box-shadow .36s var(--ease-soft),filter .36s var(--ease-soft);box-shadow:0 1px 2px color-mix(in srgb,var(--accent) 12%,transparent),inset 0 1px 0 rgba(255,255,255,.1)}.btn-primary:hover:not(:disabled){filter:brightness(1.03);box-shadow:0 3px 8px color-mix(in srgb,var(--accent) 14%,transparent),inset 0 1px 0 rgba(255,255,255,.12)}.btn-primary:active:not(:disabled){transform:translateY(1px)}.btn-primary:disabled{background:var(--surface-soft);color:var(--text-subtle);border:1px solid var(--border);cursor:not-allowed;box-shadow:none;filter:none}.btn-primary:disabled:focus,.btn-primary:disabled:focus-visible,.btn-primary:disabled:hover{background:var(--surface-soft);border-color:var(--border);box-shadow:none;filter:none}@keyframes sparkleIcon{0%,to{transform:rotate(0deg) scale(1)}20%{transform:rotate(8deg) scale(1.08)}40%{transform:rotate(-5deg) scale(1.03)}60%{transform:rotate(0deg) scale(1)}}.btn-primary:hover:not(:disabled) .btn-sparkle{animation-duration:1.8s}@keyframes sparkFly1{0%,to{opacity:0;transform:translate(0) scale(.4)}35%{opacity:1;transform:translate(5px,-3px) scale(1)}70%{opacity:0;transform:translate(10px,-7px) scale(.4)}}@keyframes sparkFly2{0%,to{opacity:0;transform:translate(0) scale(.4)}35%{opacity:.95;transform:translate(-5px,-4px) scale(1)}70%{opacity:0;transform:translate(-9px,-8px) scale(.4)}}@keyframes sparkFly3{0%,to{opacity:0;transform:translate(0) scale(.4)}40%{opacity:1;transform:translate(3px,5px) scale(1)}75%{opacity:0;transform:translate(6px,10px) scale(.4)}}.btn-primary:disabled .btn-spark{display:none}.btn-primary:disabled .btn-sparkle{animation:none}.editor-wrap{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow-sm);transition:background .5s var(--ease-soft),border-color .5s var(--ease-soft),box-shadow .5s var(--ease-soft)}.editor-compact.dragging,.editor-wrap.dragging{border-color:var(--accent);background:color-mix(in srgb,var(--accent-50) 70%,var(--surface));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent),var(--shadow)}.editor-drop-overlay{position:absolute;inset:8px;background:color-mix(in srgb,var(--accent-50) 92%,var(--surface));border:2px dashed var(--accent);border-radius:var(--radius-sm);display:grid;place-items:center;z-index:5;pointer-events:none;animation:dropOverlayIn .4s var(--ease-soft)}.editor-drop-overlay.compact{inset:4px;border-radius:calc(var(--radius) - 4px)}@keyframes dropOverlayIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.editor-drop-overlay-inner{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--accent);text-align:center}.editor-drop-overlay-title{font-size:15px;font-weight:700;letter-spacing:-.015em}.editor-drop-overlay-sub{font-size:12px;color:var(--text-muted);font-weight:500;font-family:var(--font-mono)}.editor-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:2px 4px}.editor-bar-title{gap:6px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.editor-bar-meta,.editor-bar-title{display:inline-flex;align-items:center}.editor-bar-meta{gap:12px}.editor-bar-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-sans);font-size:12.5px;font-weight:600;color:var(--text);letter-spacing:-.005em;transition:background .24s var(--ease-soft),border-color .24s var(--ease-soft),color .24s var(--ease-soft),transform .1s var(--ease-soft)}.editor-bar-btn:hover:not(:disabled){background:var(--accent-50);border-color:var(--accent-100);color:var(--accent)}.editor-bar-btn:active:not(:disabled){transform:translateY(1px)}.editor-bar-btn:disabled{opacity:.45;cursor:not-allowed}.editor-bar-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 1px 2px color-mix(in srgb,var(--accent) 12%,transparent),inset 0 1px 0 rgba(255,255,255,.1)}.editor-bar-btn.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.editor-shell{display:flex;height:480px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);overflow:hidden;transition:border-color .32s var(--ease-soft),box-shadow .32s var(--ease-soft),background .5s var(--ease-soft)}.editor-shell:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.editor-gutter{flex-shrink:0;width:48px;padding:14px 8px 14px 6px;background:color-mix(in srgb,var(--surface-soft) 60%,var(--border));border-right:1px solid var(--border);font-family:var(--font-mono);font-size:13px;line-height:20px;color:var(--text-subtle);text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-y:scroll;scrollbar-width:none;transition:background .5s var(--ease-soft),border-color .5s var(--ease-soft),color .5s var(--ease-soft)}.editor-gutter::-webkit-scrollbar{display:none}.editor-gutter>span{display:block;height:20px;white-space:nowrap;position:relative;transition:color .4s var(--ease-soft)}.editor-gutter>span.has-error,.editor-gutter>span.has-info,.editor-gutter>span.has-warning{font-weight:700}.editor-gutter>span.has-error{color:var(--error)}.editor-gutter>span.has-warning{color:var(--warning-strong)}.editor-gutter>span.has-info{color:var(--info)}.editor-gutter>span.is-scanning{color:var(--accent);font-weight:700}.editor-gutter>span.is-scanning:before{content:"";position:absolute;left:-6px;top:2px;bottom:2px;width:3px;border-radius:2px;background:var(--accent);animation:gutterScanPulse 1.1s ease-in-out infinite}@keyframes gutterScanPulse{0%,to{opacity:.5}50%{opacity:1}}.editor-gutter>span.has-error:before,.editor-gutter>span.has-info:before,.editor-gutter>span.has-warning:before{content:"";position:absolute;left:-6px;top:2px;bottom:2px;width:3px;border-radius:2px;animation:gutterBarIn .5s var(--ease-soft)}.editor-gutter>span.has-error:before{background:var(--error)}.editor-gutter>span.has-warning:before{background:var(--warning)}.editor-gutter>span.has-info:before{background:var(--info)}@keyframes gutterBarIn{0%{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}.editor-stage{position:relative;flex:1 1;min-width:0;display:flex;overflow:hidden}.editor-highlights{position:absolute;top:0;left:0;right:0;pointer-events:none;z-index:0;will-change:transform}.editor-highlight{position:absolute;left:0;right:0;border-left:2px solid;animation:highlightIn .6s var(--ease-soft) backwards}.editor-highlight.sev-error{background:color-mix(in srgb,var(--error) 12%,transparent);color:var(--error)}.editor-highlight.sev-warning{background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning)}.editor-highlight.sev-info{background:color-mix(in srgb,var(--info) 12%,transparent);color:var(--info)}@keyframes highlightIn{0%{opacity:0;transform:translateX(-4px)}to{opacity:1;transform:translateX(0)}}.editor-highlight.pulsing{z-index:1}.editor-highlight.pulsing:after{content:"";position:absolute;inset:0;background-color:currentColor;pointer-events:none;animation:highlightPulse 1.6s linear forwards}@keyframes highlightPulse{0%{opacity:.55}to{opacity:0}}.editor-find-highlights{position:absolute;top:0;left:0;pointer-events:none;z-index:0;will-change:transform}.editor-find-hit{position:absolute;border-radius:2px;background:color-mix(in srgb,var(--highlight-yellow) 42%,transparent)}.editor-find-hit.current{background:color-mix(in srgb,var(--highlight-yellow) 82%,transparent);box-shadow:0 0 0 1.5px color-mix(in srgb,#C28A00 65%,transparent);animation:findBlink .5s ease-in-out 6}@keyframes findBlink{0%,to{opacity:1}50%{opacity:.12}}.editor-scan-highlights{top:0;pointer-events:none;z-index:1;will-change:transform}.editor-scan-highlights,.editor-scan-line{position:absolute;left:0;right:0}.editor-scan-line-prev{background:color-mix(in srgb,var(--accent) 7%,transparent);animation:editorScanTrailOut .6s var(--ease-soft) forwards}@keyframes editorScanTrailOut{0%{opacity:1}to{opacity:0}}.editor-scan-line-current{border-radius:3px;animation:editorScanLineIn .3s var(--ease-soft)}.editor-scan-line-current.kind-link{background:color-mix(in srgb,var(--accent) 16%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.editor-scan-line-current.kind-text{background:color-mix(in srgb,var(--group-html,var(--accent)) 10%,transparent)}@keyframes editorScanLineIn{0%{opacity:0;transform:scaleY(.6)}to{opacity:1;transform:scaleY(1)}}.editor-scan-caret{position:absolute;top:3px;left:6px;width:2px;height:14px;border-radius:1px;background:var(--accent);animation:editorScanCaretBlink 1s steps(2,jump-none) infinite}@keyframes editorScanCaretBlink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.editor-scan-line-prev{animation:none;opacity:0}.editor-scan-caret,.editor-scan-line-current{animation:none}}.editor{flex:1 1;min-width:0;width:100%;padding:14px;border:0;outline:none;background:transparent;color:var(--text);font-family:var(--font-mono);font-size:13px;line-height:20px;resize:none;white-space:pre;overflow:auto;position:relative;z-index:1}.editor-compact{position:relative;display:flex;align-items:center;gap:16px;padding:16px 20px;background:linear-gradient(180deg,var(--surface-elevated) 0,var(--surface) 100%);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.05);animation:fadeUp .55s var(--ease-soft);flex-wrap:wrap;transition:background .4s var(--ease-soft),border-color .4s var(--ease-soft),box-shadow .4s var(--ease-soft),transform .16s var(--ease-soft)}.editor-compact:hover{border-color:color-mix(in srgb,var(--accent) 24%,var(--border));box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.07)}.editor-compact-icon{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 22%,var(--surface-soft)) 0,var(--surface-soft) 100%);color:var(--accent);display:grid;place-items:center;flex-shrink:0;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 2px 8px color-mix(in srgb,var(--accent) 10%,transparent)}.editor-compact-meta{flex:1 1;min-width:140px;display:flex;flex-direction:column;gap:3px}.editor-compact-title{font-size:14px;font-weight:700;color:var(--text);letter-spacing:-.015em}.editor-compact-sub{font-size:11.5px;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.01em}.editor-compact-actions{display:inline-flex;align-items:center;gap:7px;flex-shrink:0}