@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/sora-latin-ext-wght-normal.f55c6df7.woff2) format("woff2-variations");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:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/sora-latin-wght-normal.93e9cbad.woff2) format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-cyrillic-ext-wght-normal.8bbfa6e0.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-cyrillic-wght-normal.12b57c6b.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-vietnamese-wght-normal.c6a3f4e5.woff2) format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-latin-ext-wght-normal.b921df26.woff2) format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-latin-wght-normal.9ff55a8a.woff2) format("woff2-variations");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 Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-cyrillic-ext-wght-normal.85d55428.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-cyrillic-wght-normal.33900800.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-symbols2-wght-normal.b6529aae.woff2) format("woff2-variations");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-vietnamese-wght-normal.55bad67b.woff2) format("woff2-variations");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 Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-latin-ext-wght-normal.3d379059.woff2) format("woff2-variations");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 Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-latin-wght-normal.125b055e.woff2) format("woff2-variations");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}:root{--or:#e5197f;--or-h:#c8126c;--or-t:#b0115f;--or-l:#ff7ab8;--or-s:#fde3f0;--ink:#120f17;--blk:#120f17;--bg:#f7f5f8;--line:#e4dfe8;--mut:#625b6b;--mut-d:#b3abbe}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.55}a{color:var(--or-t)}a:hover{color:#8c0d4b}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:var(--ink)}:focus-visible{outline:2px solid var(--or);outline-offset:2px}.mono{font-family:Geist Mono Variable,ui-monospace,monospace}.muted{color:var(--mut)}.wrap{max-width:1200px;margin:0 auto;padding-inline:24px}.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.between{justify-content:space-between}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:9px;border:1px solid #d6d0dc;background:#fff;font-weight:700;font-size:15px;text-decoration:none;white-space:nowrap}.btn,.btn:hover{color:var(--ink)}.btn:hover{border-color:var(--ink)}.btn-or{background:var(--or);border-color:var(--or);color:#111}.btn-or:hover{background:var(--or-h);border-color:var(--or-h);color:#111}.btn-sm{min-height:34px;padding:0 12px;font-size:13.5px;font-weight:600}.btn-ghost{background:transparent;border-color:transparent;color:var(--mut)}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:21px;letter-spacing:-.01em;text-decoration:none}.logo,.logo:hover{color:#fff}.logo-mark{width:30px;height:30px;border-radius:8px;background:var(--or);display:grid;place-items:center;flex:none}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--or-s);color:#9a3f09;white-space:nowrap}.badge.dark{background:var(--ink);color:var(--or-l)}.badge.new{background:var(--ink);color:#fff}.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.tr{display:grid;grid-gap:12px;gap:12px;align-items:center;padding:11px 16px;border-bottom:1px solid #ebebe8;min-width:700px;font-size:14.5px}.tr:last-child{border-bottom:0}.th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);font-weight:700;background:#f7f7f5}.tr.sel{background:#fff4ec;box-shadow:inset 3px 0 0 var(--or)}.tr.total{background:var(--ink);color:#fff;font-weight:700}.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.code{font-family:Geist Mono Variable,monospace;font-size:12.5px;background:#0b0a10;color:#ece8f0;border-radius:10px;padding:14px 16px;overflow-x:auto;white-space:pre;line-height:1.55}.code.old{background:#d2d2ce;color:#3a3443}.kw{font-family:Geist Mono Variable,monospace;font-size:11.5px;font-weight:600;color:#fff;background:var(--ink);border-radius:5px;padding:2px 8px}.inp{height:42px;border:1px solid #d6d0dc;border-radius:8px;padding:0 12px;background:#fff;font-size:15px;width:100%}.inp:focus{outline:2px solid var(--or);outline-offset:0;border-color:var(--or)}textarea.inp{height:110px;padding:10px 12px;resize:vertical;line-height:1.45}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#3a3443}.toast{position:fixed;right:24px;bottom:24px;z-index:50;background:var(--ink);color:#fff;border-radius:10px;padding:12px 16px;display:flex;gap:10px;align-items:center;box-shadow:0 10px 30px rgba(0,0,0,.25);font-size:14px;max-width:calc(100vw - 48px)}.toast i{width:8px;height:8px;border-radius:50%;background:var(--or);flex:none}.menu{display:flex;gap:2px;margin-left:16px;flex:1 1}.mi{color:var(--mut);text-decoration:none;font-weight:500;font-size:15px;padding:0 12px;min-height:44px;display:inline-flex;align-items:center;border-radius:8px;white-space:nowrap}.mi:hover{color:var(--ink);background:var(--bg2)}.mi.on{font-weight:700}.mi.on,.tbtn{color:var(--ink)}.tbtn{width:44px;height:44px;border-radius:10px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;flex:none}.tbtn:hover{border-color:var(--ink)}@media (max-width:1080px){.menu{display:none}}.grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));grid-gap:16px;gap:16px}.ico{width:46px;height:46px;border-radius:12px;background:var(--or-soft);color:var(--or-tx);display:grid;place-items:center;margin-bottom:10px;flex:none}.trust{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:24px;font-size:14.5px;color:var(--mut)}.trust span{display:inline-flex;gap:8px;align-items:center}.trust svg{color:var(--or-tx)}.st{font-size:11.5px;font-weight:700;border-radius:999px;padding:2px 9px;white-space:nowrap;flex:none}.st.ok{background:var(--ok-bg);color:var(--ok-tx)}.st.warn{background:var(--or-soft);color:var(--or-tx)}.st.dk{background:#120f17;color:#ff7ab8}.val{background:var(--or-soft);color:var(--or-tx);border-radius:6px;padding:1px 7px;font-weight:600}.chan{border-block:1px solid var(--line);padding-block:22px}.chan .wrap{display:flex;flex-wrap:wrap;gap:10px 34px;justify-content:center;align-items:center;color:var(--mut);font-weight:700;font-size:16px}.chan .lbl{font-family:Geist Mono Variable,monospace;font-size:12px;font-weight:500;letter-spacing:.06em}.pain{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}.pain .now{padding:22px 24px;border-bottom:1px dashed var(--line)}.pain .fix{padding:22px 24px;background:var(--or-soft);flex:1 1}.pain small{display:block;font-family:Geist Mono Variable,monospace;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;color:var(--mut)}.pain .fix small{color:var(--or-tx)}.pain p{font-size:16px;line-height:1.55;color:var(--ink)}.pain .now p{color:var(--mut)}.value{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));grid-gap:16px;gap:16px}.case{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-gap:clamp(24px,4vw,56px);gap:clamp(24px,4vw,56px);align-items:center}@media (max-width:860px){.case{grid-template-columns:minmax(0,1fr)}}.nums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.nums div{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px}.nums b{display:block;font-size:clamp(28px,3vw,38px);font-weight:800;letter-spacing:-.02em;line-height:1.1}.nums span{font-size:14.5px;color:var(--mut);line-height:1.45;display:block;margin-top:4px}.quote{border-left:3px solid #e5197f;padding:4px 0 4px 18px;margin-top:22px;font-size:17px;line-height:1.6}.quote small{display:block;margin-top:8px;color:var(--mut);font-size:14px}.save{color:var(--ok-tx);font-size:12.5px;margin-left:4px}.foot{background:var(--bg2);color:var(--mut);padding-block:56px 28px;font-size:15px;border-top:1px solid var(--line)}.foot h4{color:var(--ink);margin:0 0 10px;font-size:14px}.foot a.fl{color:var(--mut);text-decoration:none;display:block;padding:4px 0;line-height:1.5}.foot a.fl:hover{color:var(--or-tx)}.legal{display:grid;grid-template-columns:220px minmax(0,1fr);grid-gap:clamp(20px,4vw,48px);gap:clamp(20px,4vw,48px);align-items:start}@media (max-width:860px){.legal{grid-template-columns:minmax(0,1fr)}}.dl{display:grid;grid-template-columns:minmax(120px,200px) minmax(0,1fr);grid-gap:10px 20px;gap:10px 20px;margin:0;line-height:1.5}.dl dt{color:var(--mut);font-weight:600}.dl dd{margin:0}@media (max-width:560px){.dl{grid-template-columns:minmax(0,1fr);gap:2px}.dl dd{margin-bottom:10px}}.ph{background:var(--or-soft);color:var(--or-tx);border-radius:4px;padding:0 6px;font-family:Geist Mono Variable,monospace;font-size:.88em}.lang{position:relative}.login{display:flex;flex-wrap:wrap;min-height:100vh;background:#fbfafc}.login-brand{flex:1 1 420px;background:#120f17;color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:space-between;gap:40px}.login-brand h2{font-size:clamp(34px,4vw,54px);line-height:1.06;letter-spacing:-.025em;font-weight:800;margin:0}.login-brand h2 em{font-style:normal;color:#e5197f}.login-brand ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;color:#d6d0dc;line-height:1.5}.login-brand li{display:flex;gap:10px;align-items:baseline}.login-brand li b{font-family:Geist Mono Variable,monospace;font-size:12px}.login-form{flex:1 1 420px;display:grid;place-items:center;padding:48px 16px}.login-box{width:100%;max-width:400px;display:flex;flex-direction:column;gap:16px}.login-box h1{margin:0;font-size:30px;font-weight:800;letter-spacing:-.02em}.appx{--bg:#f7f5f8;--bg2:#f0edf2;--surface:#ffffff;--ink:#120f17;--mut:#625b6b;--line:#e4dfe8;--or-tx:#b0115f;--or-soft:#fde3f0;--ok-bg:#e2f1e8;--ok-tx:#1f6b40;--err-bg:#fbe3e1;--err-tx:#9b1f17;--shadow:0 1px 2px rgba(18,15,23,0.04),0 10px 28px rgba(18,15,23,0.06);background:var(--bg);color:var(--ink);min-height:100vh;color-scheme:light;font-size:15px;line-height:1.5}.appx[data-theme=dark]{--bg:#0b0a10;--bg2:#15131c;--surface:#15131b;--ink:#f2eff6;--mut:#a39cae;--line:#2a2533;--or-tx:#ff7ab8;--or-soft:rgba(229,25,127,0.15);--ok-bg:rgba(108,197,143,0.15);--ok-tx:#7fd3a0;--err-bg:rgba(240,110,100,0.15);--err-tx:#f49a92;--shadow:0 1px 2px rgba(0,0,0,0.3),0 14px 36px rgba(0,0,0,0.4);color-scheme:dark}.appx .muted{color:var(--mut)}.appx .btn{background:var(--surface);color:var(--ink);border-color:var(--line)}.appx .btn:hover{border-color:var(--ink);color:var(--ink)}.appx .btn-or{background:#e5197f;border-color:#e5197f;color:#111}.appx .btn-or:hover{background:#f0368f;border-color:#f0368f;color:#111}.appx .btn-ink{background:var(--ink);border-color:var(--ink);color:var(--bg)}.appx .btn-ink:hover{opacity:.88;color:var(--bg)}.appx .btn-ghost{background:transparent;border-color:transparent;color:var(--mut)}.appx .inp{background:var(--surface);border-color:var(--line)}.appx .field,.appx .inp{color:var(--ink)}.appx .tbl{background:var(--surface);border-color:var(--line)}.appx .tr{border-bottom-color:var(--line)}.appx .th{background:var(--bg2);color:var(--mut)}.appx .tr.sel{background:var(--or-soft)}.appx .code{background:#0b0a10;border:1px solid var(--line)}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.side{background:#0b0a10;color:#ece8f0;padding:18px 12px;display:flex;flex-direction:column;gap:14px;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.side .logo{color:#fff;font-size:19px;padding:0 6px}.ws{justify-content:space-between;align-items:center;background:#15131c;border:1px solid #27232f;border-radius:10px;padding:8px 12px;font-size:14px;color:#ece8f0;text-align:left;width:100%;line-height:1.3}.nav,.ws{display:flex}.nav{flex-direction:column;gap:1px}.nav-g{font-family:Geist Mono Variable,monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:#7d7589;padding:12px 12px 4px}.nav-item{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 12px;border-radius:8px;color:#b3abbe;font-size:14px;font-weight:500;text-decoration:none;line-height:1.25}.nav-item svg{flex:none;opacity:.8}.nav-item:hover{background:#15131c;color:#fff}.nav-item.on{background:#1d1a26;color:#fff}.nav-item .cnt{margin-left:auto;font-size:11px;background:#e5197f;color:#111;border-radius:999px;padding:0 7px;font-weight:700}.side-foot{margin-top:auto;flex-direction:column;padding-top:12px;border-top:1px solid #1d1a26}.me,.side-foot{display:flex;gap:10px}.me{align-items:center;padding:4px 6px}.avatar{width:34px;height:34px;border-radius:50%;background:#e5197f;color:#111;display:grid;place-items:center;font-weight:800;flex:none;font-size:13px}.main{min-width:0;flex-direction:column}.main,.top{display:flex}.top{flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 28px;background:var(--surface);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:20}.top h1{margin:0;font-size:22px;font-weight:800;letter-spacing:-.01em;line-height:1.2}.crumb{margin:0;font-family:Geist Mono Variable,monospace;font-size:11.5px;color:var(--or-tx);letter-spacing:.04em}.top-act{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.search{position:relative}.search svg{position:absolute;left:12px;top:12px;color:var(--mut)}.search .inp{width:240px;padding-left:38px;height:42px}.aburger{display:none}.content{padding:24px 28px 64px;display:flex;flex-direction:column;gap:20px;max-width:1440px}@media (max-width:960px){.shell{grid-template-columns:minmax(0,1fr)}.side{position:fixed;inset:0 auto 0 0;width:min(86vw,300px);z-index:50;transform:translateX(-102%);transition:transform .2s;box-shadow:0 0 40px rgba(0,0,0,.4)}.side.open{transform:none}.scrim{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:49}.aburger{display:grid}.search{display:none}.top{padding:12px 16px}.content{padding:16px 16px 72px}}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));grid-gap:14px;gap:14px}.grid-3a{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));grid-gap:16px}.grid-2,.grid-3a{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));grid-gap:16px}.split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);grid-gap:20px;gap:20px;align-items:start}@media (max-width:1180px){.split{grid-template-columns:minmax(0,1fr)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;min-width:0;display:flex;flex-direction:column;gap:12px}.card h3{margin:0;font-size:16.5px;font-weight:700;line-height:1.3}.card-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.sub{color:var(--mut);font-size:14px;margin:0;line-height:1.5}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;min-width:0}.kpi .l{font-size:13px;color:var(--mut);font-weight:600}.kpi .v{font-size:28px;font-weight:800;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.25}.kpi .d{font-size:13px;color:var(--mut)}.kpi.dark{background:#120f17;border-color:#120f17;color:#fff}.appx[data-theme=dark] .kpi.dark{border-color:#e5197f}.kpi.dark .d,.kpi.dark .l{color:#a39cae}.kpi.dark .v{color:#ff7ab8}.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--bg2);color:var(--ink);white-space:nowrap;line-height:1.5}.pill.ok{background:var(--ok-bg);color:var(--ok-tx)}.pill.warn{background:var(--or-soft);color:var(--or-tx)}.pill.err{background:var(--err-bg);color:var(--err-tx)}.pill.run{background:#120f17;color:#fff}.pill.ai{background:#120f17;color:#ff7ab8}.dot{width:8px;height:8px;border-radius:50%;background:currentColor;display:inline-block}.tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--line)}.tab{border:0;background:transparent;padding:10px 14px;font-weight:600;color:var(--mut);border-bottom:2px solid transparent;margin-bottom:-1px;min-height:44px}.tab.on{color:var(--ink);border-bottom-color:#e5197f}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:0 14px;font-size:13.5px;min-height:36px;font-weight:600}.chip:hover{border-color:#e5197f}.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.rule{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.rule.off{opacity:.55}.rule .ix{font-family:Geist Mono Variable,monospace;font-size:12px;color:var(--mut);width:22px}.rule .body{flex:1 1 260px;min-width:0}.rule .nm{font-weight:700}.rule .ds{font-size:13px;color:var(--mut);font-family:Geist Mono Variable,monospace;overflow-wrap:anywhere}.sw{width:44px;height:26px;border-radius:999px;border:0;background:#d6d0dc;position:relative;padding:0;flex:none}.appx[data-theme=dark] .sw{background:#3a3a38}.appx[data-theme=dark] .sw.on,.sw.on{background:#e5197f}.sw span{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}.sw.on span{left:21px}.iconbtn{width:34px;height:34px;border-radius:8px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;color:var(--ink);flex:none}.iconbtn:hover{border-color:var(--ink)}.builder{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));grid-gap:12px;gap:12px}.akw{justify-self:start;align-self:start}.result{background:#120f17;color:#ece8f0;border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;line-height:1.5}.result b{color:#ff7ab8}.trace{display:flex;flex-direction:column;gap:10px}.trace-i{display:grid;grid-template-columns:24px minmax(0,1fr);grid-gap:10px;gap:10px;font-size:13.5px;line-height:1.45}.trace-i .n{font-family:Geist Mono Variable,monospace;background:#e5197f;color:#111;border-radius:6px;text-align:center;font-weight:600;font-size:12px;height:24px;line-height:24px}.arch{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}.arch-box{flex:1 1 150px;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface);display:flex;flex-direction:column;gap:6px}.arch-box h4{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}.arch-box div{font-size:13.5px;padding:6px 8px;border-radius:6px;background:var(--bg2)}.arch-box.hl{background:#120f17;border-color:#120f17;color:#fff}.arch-box.hl h4{color:#ff7ab8}.arch-box.hl div{background:#1d1a26;color:#ece8f0}.arch-arrow{display:grid;place-items:center;color:#e5197f;font-weight:800;font-size:20px}.bar{height:8px;border-radius:999px;display:block}.bar span{display:block;height:100%;background:#e5197f;transition:width .6s}.hbars{display:flex;flex-direction:column;gap:10px}.hbar{display:grid;grid-template-columns:110px minmax(0,1fr) 70px;grid-gap:10px;gap:10px;align-items:center;font-size:13.5px}.hbar .bar{height:12px}.cols{display:flex;align-items:flex-end;gap:4px;height:120px;padding-top:6px}.cols span{flex:1 1;background:#e5197f;border-radius:4px 4px 0 0;min-width:4px;opacity:.85}.cols span.err{background:var(--err-tx)}.overlay{background:rgba(10,10,10,.55);display:flex;justify-content:center;align-items:flex-start;padding:60px 16px;overflow:auto}.modal{width:100%;max-width:760px;background:var(--surface);color:var(--ink);border-radius:16px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35)}.modal-h{background:#120f17;color:#fff;padding:16px 20px;display:flex;align-items:center;gap:12px}.modal-b{padding:20px;display:flex;flex-direction:column;gap:14px}.diff{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:10px;gap:10px;font-size:13.5px}.diff div{padding:8px 10px;border-radius:8px;background:var(--bg2)}.diff .new{background:var(--or-soft)}.module{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.45;flex-wrap:wrap}.module:last-child{border-bottom:0}.module>span:first-child{min-width:0;flex:1 1 220px}.steps-w{flex-wrap:wrap}.step-w,.steps-w{display:flex;gap:8px}.step-w{align-items:center;font-size:13.5px;font-weight:600;color:var(--mut)}.step-w i{font-style:normal;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--bg2);font-size:12.5px}.step-w.on{color:var(--ink)}.step-w.on i{background:#e5197f;color:#111}.step-w.done i{background:var(--ink);color:var(--bg)}.map-row{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 90px;grid-gap:10px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}.map-row:last-child{border-bottom:0}.map-row .src{font-family:Geist Mono Variable,monospace;font-size:12.5px;overflow-wrap:anywhere}@media (max-width:640px){.map-row{grid-template-columns:minmax(0,1fr);gap:4px}.map-row>:nth-child(2){display:none}}.imgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px}.bulk{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#120f17;color:#fff;border-radius:12px;padding:10px 14px}.bulk .btn{background:transparent;color:#fff;border-color:#4a4453}.bulk .btn:hover{border-color:#fff;color:#fff}.notice{display:flex;gap:12px;align-items:flex-start;background:var(--or-soft);border-radius:12px;padding:14px 16px;line-height:1.5}.notice svg{color:var(--or-tx);flex:none;margin-top:2px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tr>.pill{justify-self:start}.tabs{flex-wrap:nowrap;overflow-x:auto}.tab{white-space:nowrap}.proto{position:fixed;right:16px;bottom:16px;z-index:45;background:#fff;border:1px solid #e4dfe8;padding:4px;display:flex;gap:2px;box-shadow:0 6px 20px rgba(0,0,0,.12);font-size:13px}.proto,.proto a{border-radius:999px}.proto a{text-decoration:none;color:#625b6b;padding:6px 12px;font-weight:600}.proto a.on{background:#120f17;color:#fff}@media (max-width:960px){.proto{right:12px;bottom:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.hint{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid var(--line);font-size:10.5px;font-weight:700;font-style:italic;color:var(--mut);cursor:help;flex:none;vertical-align:middle;background:var(--surface,var(--bg))}.hint:focus{outline:2px solid var(--or);outline-offset:1px}.hint-pop{display:none;position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);width:max-content;max-width:min(280px,calc(100vw - 32px));padding:8px 10px;border-radius:8px;background:var(--ink);color:var(--bg);font-size:12.5px;font-weight:400;font-style:normal;line-height:1.45;white-space:normal;z-index:50;box-shadow:0 6px 20px rgba(0,0,0,.18);text-align:left}.hint:focus .hint-pop,.hint:hover .hint-pop{display:block}.hint-pop.edge-r{left:auto;right:-6px;transform:none}.hint-pop.edge-l{left:-6px;transform:none}.btn:disabled,.btn[disabled]{opacity:.45;cursor:not-allowed}.panel-badge{font-family:Geist Mono Variable,monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:999px;align-self:flex-start;margin:-6px 6px 0;background:#2a2a2a;color:#ece8f0}.panel-links{display:flex;flex-direction:column;gap:1px}.panel-links .nav-item{min-height:32px;font-size:13px}.feed-switch{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--mut)}.feed-switch .inp{height:42px;max-width:240px;font-weight:600;color:var(--ink)}.appx[data-panel=agency] .side{background:#110c1d}.appx[data-panel=agency] .ws{background:#1b1430;border-color:#2e2350}.appx[data-panel=agency] .nav-item:hover{background:#1b1430}.appx[data-panel=agency] .nav-item.on{background:#251b40;box-shadow:inset 3px 0 0 #a78bfa}.appx[data-panel=agency] .avatar,.appx[data-panel=agency] .nav-item .cnt{background:#a78bfa}.appx[data-panel=agency] .panel-badge{background:#a78bfa;color:#110c1d}.appx[data-panel=agency] .side-foot{border-top-color:#251b40}.appx[data-panel=admin] .side{background:#0c1a13}.appx[data-panel=admin] .ws{background:#132a1f;border-color:#1f4231}.appx[data-panel=admin] .nav-item:hover{background:#132a1f}.appx[data-panel=admin] .nav-item.on{background:#18362a;box-shadow:inset 3px 0 0 #34c47c}.appx[data-panel=admin] .avatar,.appx[data-panel=admin] .nav-item .cnt{background:#34c47c}.appx[data-panel=admin] .panel-badge{background:#34c47c;color:#0c1a13}.appx[data-panel=admin] .side-foot{border-top-color:#18362a}@media (max-width:900px){.feed-switch span{display:none}.feed-switch .inp{max-width:180px}}.layer-banner{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 14px;border:1px dashed var(--line);border-radius:10px;background:var(--surface);font-size:13.5px;color:var(--mut)}.layer-banner.feed{border-style:solid;border-color:#a78bfa;background:color-mix(in srgb,#a78bfa 8%,var(--surface));color:var(--ink)}.layer-tag{display:inline-block;font-family:Geist Mono Variable,monospace;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;padding:1px 7px;border-radius:999px;border:1px solid var(--line);color:var(--mut);vertical-align:middle}.layer-tag.feed{border-color:#a78bfa;color:#2f6fd6}.appx[data-theme=dark] .layer-tag.feed{color:#8db8ff}.chart-bars{margin:0;display:grid;grid-gap:6px;gap:6px;min-width:0}.chart-bars .bars{display:flex;align-items:flex-end;gap:2px;border-bottom:1px solid var(--line)}.chart-bars .bar-col{flex:1 1;min-width:2px;height:100%;display:flex;align-items:flex-end}.chart-bars .bar-col>span{display:block;width:100%;border-radius:3px 3px 0 0;min-height:1px}.heat{border-collapse:separate;border-spacing:2px;font-size:10.5px;font-family:Geist Mono Variable,monospace}.heat th{color:var(--mut);font-weight:500;padding:0 4px;text-align:right}.heat td{width:22px;height:18px;border-radius:3px;background:var(--bg2)}.cpage{min-height:100vh;background:#f4f3f0;color:#120f17;padding:0 16px 64px}.cpage-head{max-width:760px;margin:0 auto;padding:22px 0}.cpage-head .logo{color:#120f17;font-size:19px;text-decoration:none}.cpage-preview{max-width:760px;margin:0 auto;background:#fff;border:1px solid #e4e2dd;border-radius:16px;padding:28px clamp(18px,4vw,40px);line-height:1.6;font-size:16px;color:#120f17;overflow-wrap:anywhere}.cpage-preview h1{font-size:28px;line-height:1.2;margin:0 0 14px;text-wrap:balance}.cpage-preview h2{font-size:20px;margin:24px 0 8px}.cpage-preview a:not(.btn){color:#b0115f}@media (prefers-color-scheme:dark){.cpage{background:#120f17;color:#eee}.cpage-head .logo{color:#eee;--mark-bg:#25202f;--mark-line:#3a3346}.cpage-preview{background:#15131c;border-color:#27232f;color:#eee}.cpage-preview a:not(.btn){color:#ff7ab8}}.panel-badge{flex:none;max-width:calc(100% - 12px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-switch .inp{max-width:200px}.appx .search .inp{width:190px}@media (max-width:1280px){.feed-switch>span{display:none}}@media (min-width:1100px){.top{flex-wrap:nowrap}.top>.row{flex:1 1 auto}.top>.row,.top>.row>div{min-width:0}.top .crumb,.top h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-act{flex-wrap:nowrap;flex:none}}.billing-banner{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:10px 14px;border-radius:10px;font-size:14px;font-weight:600;border:1px solid var(--line);background:var(--surface)}.billing-banner.trial{border-color:#a78bfa;background:color-mix(in srgb,#a78bfa 8%,var(--surface))}.billing-banner.grace,.billing-banner.past_due{border-color:#E0A100;background:color-mix(in srgb,#E0A100 12%,var(--surface))}.billing-banner.expired{border-color:#d9443b;background:color-mix(in srgb,#d9443b 10%,var(--surface))}:root{--grad:linear-gradient(100deg,#e5197f,#ff7a1a);--display:"Sora Variable","Segoe UI",system-ui,sans-serif;--mono:"Geist Mono Variable",ui-monospace,Consolas,monospace;--violet:#8b5cf6}body{-webkit-font-smoothing:antialiased}.card-h h2,.kpi .v,.login-box h1,.login-brand h2,.logo,h1,h2{font-family:var(--display);letter-spacing:-.03em}.logo{text-transform:lowercase;letter-spacing:-.04em}.logo-mark{background:none;border-radius:9px;box-shadow:0 6px 18px -10px #e5197f}.logo-mark svg{width:100%;height:100%;display:block}.logo-mark-bg{fill:var(--mark-bg,#120f17);stroke:var(--mark-line,transparent)}.appx[data-theme=dark],.login-brand,.side{--mark-bg:#25202f;--mark-line:#3a3346}.wordmark-svg{display:block;height:1.04em;width:auto;flex:none;overflow:visible}.btn{border-radius:999px}.appx .btn-or,.btn-or{box-shadow:0 10px 24px -14px #e5197f}.appx .btn-or,.appx .btn-or:hover,.btn-or,.btn-or:hover{background:var(--grad);border-color:transparent;color:#fff}.appx .btn-or:hover,.btn-or:hover{filter:brightness(1.06);box-shadow:0 14px 28px -14px #e5197f}.nav-item .cnt{color:#fff}.side{background:radial-gradient(420px 260px at 0 0,rgba(229,25,127,.16),transparent 70%),#0b0a10}.appx[data-panel=agency] .side{background:radial-gradient(420px 260px at 0 0,rgba(139,92,246,.2),transparent 70%),#110c1d}.appx[data-panel=agency] .avatar,.appx[data-panel=agency] .nav-item .cnt{color:#110c1d}.appx[data-panel=admin] .side{background:radial-gradient(420px 260px at 0 0,rgba(52,196,124,.16),transparent 70%),#0c1a13}.nav-item.on{box-shadow:inset 3px 0 0 #e5197f}.appx .card,.appx .kpi,.appx .tbl{border-radius:16px}.appx .inp:focus{border-color:#e5197f;box-shadow:0 0 0 4px rgba(229,25,127,.14);outline:none}.login{background:var(--bg,#f7f5f8)}.login-brand{position:relative;isolation:isolate;overflow:hidden;background:#0b0a10;color:#f2eff6}.login-brand:before{inset:0;background-image:linear-gradient(#27232f 1px,transparent 0),linear-gradient(90deg,#27232f 1px,transparent 0);background-size:60px 60px;mask-image:radial-gradient(ellipse 80% 70% at 70% 30%,#000 25%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 70% 30%,#000 25%,transparent 75%);opacity:.5}.login-brand:after,.login-brand:before{content:"";position:absolute;z-index:-1}.login-brand:after{width:520px;height:520px;top:-220px;right:-120px;border-radius:50%;background:#e5197f;opacity:.28;filter:blur(100px)}.login-brand h2 em{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.login-brand li b{color:#ff7ab8}.login-box{background:#fff;border:1px solid #e4dfe8;border-radius:24px;padding:32px 28px;box-shadow:0 30px 60px -40px rgba(18,15,23,.35)}@media (prefers-color-scheme:dark){.login{background:#0d0b12;color:#f2eff6}.login-box{background:#15131b;border-color:#2a2533}}.appx[data-panel=agency] .crumb{color:#a78bfa}.appx[data-panel=admin] .crumb{color:#34c47c}body{font-family:Geist Variable,Segoe UI,system-ui,sans-serif}.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:60;display:grid;place-items:start center;padding:8vh 16px 16px;overflow-y:auto}.err-text{color:var(--err-tx,#9B1F17);font-size:14px}.ok-text{color:var(--ok-tx,#1F6B40);font-size:14px}.toast-ok{position:fixed;right:24px;bottom:24px;z-index:70;background:#120f17;color:#fff;border-radius:10px;padding:12px 16px;box-shadow:0 10px 30px rgba(0,0,0,.3)}.detail{position:-webkit-sticky;position:sticky;top:88px;align-self:start;max-height:calc(100vh - 104px);overflow-y:auto}@media (max-width:1180px){.detail{position:static;max-height:none}}.kv{display:grid;grid-template-columns:minmax(120px,220px) minmax(0,1fr);grid-gap:6px 12px;gap:6px 12px;font-size:13.5px}.kv>:nth-child(odd){font-family:Geist Mono Variable,monospace;color:var(--mut)}.kv>:nth-child(2n),.kv>:nth-child(odd){overflow-wrap:anywhere}.pager{align-items:center;justify-content:flex-end}.pager,.rule-list{display:flex;gap:8px}.rule-list{flex-direction:column}.rule .grp{font-size:11px;font-family:Geist Mono Variable,monospace;color:var(--or-tx)}.diff-tbl{font-size:13px}.diff-tbl .old{text-decoration:line-through;color:var(--mut)}textarea.inp.code-in{font-family:Geist Mono Variable,monospace;font-size:12.5px;height:220px}.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.inline-form .field{flex:1 1 180px}.phase{opacity:.65}.btn-danger{background:var(--err-bg);border-color:var(--err-tx);color:var(--err-tx)}.btn-danger:hover{background:var(--err-tx);color:var(--surface)}.qr svg{display:block;width:100%;height:100%}.btn-x{border:0;background:transparent;color:inherit;cursor:pointer;font-size:15px;line-height:1;padding:0 2px}.btn-x:hover{color:var(--err-tx)}.bar{height:6px;border-radius:3px;background:var(--bg2);overflow:hidden}.bar>span{display:block;height:100%;background:var(--ok-tx)}.bar.low>span{background:var(--or-tx)}.fields-table{width:100%;border-collapse:collapse;font-size:14px}.fields-table th{text-align:left;font-size:12px;font-weight:600;color:var(--mut);padding:6px 8px;position:-webkit-sticky;position:sticky;top:0;background:var(--surface)}.fields-table td,.fields-table th{border-bottom:1px solid var(--line)}.fields-table td{padding:7px 8px;vertical-align:top}.fields-table tr.on td{background:var(--or-soft)}.fields-table tbody tr:hover td{background:var(--bg2)}.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px;background:var(--bg2);gap:2px}.seg>a,.seg>button{border:0;background:transparent;border-radius:999px;padding:0 14px;min-height:32px;display:inline-flex;align-items:center;font-weight:600;color:var(--mut);font-size:13.5px;text-decoration:none;cursor:pointer}.seg>a.on,.seg>button.on{background:var(--ink);color:var(--bg)}