@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");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}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand:#60a5fa;--brand-bright:#93c5fd;--gradient-brand:linear-gradient(135deg, #60a5fa 0%, #3b82f6 100%);--gradient-brand-soft:linear-gradient(135deg, #60a5fa2e 0%, #3b82f61f 100%);--gradient-sheen:linear-gradient(180deg, #ffffff12 0%, #fff0 100%);--bg-deep:#0b1220;--bg:#0f172a;--surface:#172338;--surface-soft:#111c30;--surface-muted:#1e2d44;--surface-strong:#293c56;--surface-glass:#172338d1;--surface-glass-strong:#0f172af0;--line:#94a3b833;--line-strong:#94a3b857;--line-accent:#60a5fa7a;--text:#e2e8f0;--text-strong:#f8fafc;--muted:#a8b8ce;--subtle:#8b9db5;--accent:#60a5fa;--accent-hover:#93c5fd;--accent-strong:#93c5fd;--accent-contrast:#0b1220;--accent-soft:#60a5fa1f;--accent-wash:#60a5fa0f;--accent-ring:#60a5fa61;--accent-2:#38bdf8;--accent-2-strong:#7dd3fc;--accent-2-soft:#38bdf826;--success:#8edbb6;--success-strong:#b5f0d0;--success-soft:#8edbb624;--red:#e58d82;--red-strong:#f1b0a6;--red-soft:#e58d8224;--amber:#e4b96f;--amber-strong:#f1d294;--amber-soft:#e4b96f24;--blue:#8db8d6;--blue-strong:#b4d5e8;--blue-soft:#8db8d624;--violet:#c2a5d2;--violet-strong:#dfc8e9;--violet-soft:#c2a5d224;--shadow-sm:0 1px 2px #0006, 0 1px 3px #00000038;--shadow-md:0 8px 24px -6px #00000085, 0 2px 8px -2px #00000052;--shadow-lg:0 24px 64px -14px #000000a8, 0 8px 24px -10px #00000070;--shadow-glow:0 10px 32px -10px #60a5fa4d;--highlight-top:inset 0 1px 0 #ffffff0f;--highlight-ring:inset 0 0 0 1px #ffffff0a;--radius-xs:8px;--radius-sm:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px;--ease:cubic-bezier(.32, .72, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--dur-fast:.12s;--dur:.18s;--dur-slow:.3s;--font-sans:"Inter Variable", "PingFang SC", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans CJK SC", "Segoe UI", ui-sans-serif, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, "JetBrains Mono", Menlo, Consolas, monospace;--fs-micro:11px;--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:18px;--sidebar-width:268px;--sidebar-collapsed-width:76px;--topbar-height:56px;--control-compact:34px;--control-tap-min:0px;--control-check:16px;--admin-surface:var(--surface);--admin-border:var(--line);--admin-text:var(--text);--admin-muted:var(--muted);--admin-subtle:var(--subtle);--admin-green:var(--accent);--admin-green-soft:var(--accent-soft)}:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand:#2563eb;--brand-bright:#3b82f6;--gradient-brand:linear-gradient(135deg, #2563eb 0%, #3b82f6 100%);--gradient-brand-soft:linear-gradient(135deg, #2563eb1f 0%, #3b82f614 100%);--gradient-sheen:linear-gradient(180deg, #ffffffe6 0%, #fff0 100%);--bg-deep:#fff;--bg:#f4f7fb;--surface:#fff;--surface-soft:#f8fafc;--surface-muted:#eef3f9;--surface-strong:#e2e8f0;--surface-glass:#ffffffd6;--surface-glass-strong:#f4f7fbf0;--line:#e2e8f0;--line-strong:#cbd5e1;--line-accent:#2563eb6b;--text:#1e293b;--text-strong:#0f172a;--muted:#52627a;--subtle:#64748b;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-strong:#2563eb;--accent-contrast:#fff;--accent-soft:#2563eb1a;--accent-wash:#2563eb0d;--accent-ring:#2563eb47;--accent-2:#0284c7;--accent-2-strong:#0369a1;--accent-2-soft:#0284c71a;--success:#15803d;--success-strong:#166534;--success-soft:#15803d1a;--red:#dc2626;--red-strong:#b91c1c;--red-soft:#dc26261a;--amber:#a15c00;--amber-strong:#814900;--amber-soft:#a15c001a;--blue:#2563eb;--blue-strong:#1d4ed8;--blue-soft:#2563eb1a;--violet:#7c3aed;--violet-strong:#6d28d9;--violet-soft:#7c3aed1a;--shadow-sm:0 1px 2px #0f172a0a;--shadow-md:0 8px 24px -6px #0f17201a, 0 2px 8px -2px #0f17200f;--shadow-lg:0 24px 64px -14px #0f172029, 0 8px 24px -10px #0f172014;--shadow-glow:0 10px 32px -10px #2563eb38;--highlight-top:inset 0 1px 0 #ffffffe6;--highlight-ring:inset 0 0 0 1px #fff9}@media (pointer:coarse),(width<=820px){:root{--control-compact:40px;--control-tap-min:40px;--control-check:20px}}*{box-sizing:border-box}[hidden]{display:none!important}html{background:var(--bg);-webkit-text-size-adjust:100%;min-width:320px;height:100%}body{min-width:320px;height:100%;color:var(--text);background:var(--bg);font-family:var(--font-sans);font-feature-settings:normal;font-optical-sizing:auto;letter-spacing:0;font-kerning:normal;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:14px;line-height:1.55}#app{background:var(--bg);height:100%}:is(body:has(.auth-page),body:has(.cdk-public-shell)){background:var(--bg-deep)}button,input,select,textarea{font:inherit;letter-spacing:inherit}button{cursor:pointer}a{color:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}input[type=search]::-webkit-search-cancel-button{appearance:none;display:none}input[type=search]::-webkit-search-decoration{appearance:none;display:none}input[type=search]::-webkit-search-results-button{appearance:none;display:none}input[type=search]::-webkit-search-results-decoration{appearance:none;display:none}::selection{color:var(--text-strong);background:var(--accent-ring)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:var(--line-strong);background-clip:padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--subtle);background-clip:padding-box}::-webkit-scrollbar-corner{background:0 0}h1,h2,h3,h4,p{margin-top:0}h1{color:var(--text-strong);letter-spacing:0;margin-bottom:0;font-size:clamp(24px,2vw,31px);font-weight:680;line-height:1.15}h2{color:var(--text);letter-spacing:0;margin-bottom:0;font-size:18px;font-weight:650;line-height:1.28}h3{color:var(--text);letter-spacing:0;margin-bottom:0;font-size:15px;font-weight:640}.eyebrow{color:var(--accent-strong);font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;font-weight:700;display:block}.muted{color:var(--muted)}.subtle{color:var(--subtle)}.mono{font:12px/1.5 var(--font-mono);font-variant-numeric:tabular-nums}.numeric{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stack{gap:16px;display:grid}.is-muted{opacity:.5}.loading-inline{align-items:center;gap:8px;display:inline-flex}.loading-inline:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:13px;height:13px;animation:.65s linear infinite spin}.gradient-text{background:var(--gradient-brand);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 var(--accent-ring)}70%{box-shadow:0 0 0 8px #0000}to{box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.shell{min-height:100vh}.app-shell{background:var(--bg-deep);width:100%;height:100dvh;min-height:0;position:fixed;inset:0;overflow:hidden}.route-loading{min-height:100vh;color:var(--muted);background:var(--bg);place-items:center;display:grid}.user-workspace{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);width:100%;height:100%;min-height:0;transition:grid-template-columns var(--dur) var(--ease);display:grid;overflow:hidden}.user-shell.sidebar-collapsed .user-workspace{grid-template-columns:var(--sidebar-collapsed-width) minmax(0, 1fr)}.user-sidebar{z-index:20;border-right:1px solid var(--line);background:var(--bg-deep);flex-direction:column;height:100%;min-height:0;padding:0;display:flex;position:relative;overflow:hidden}.sidebar-brand-row{height:var(--topbar-height);flex:0 0 var(--topbar-height);align-items:center;gap:8px;padding:0 12px 0 16px;display:flex}.brand{flex:auto;align-items:center;gap:11px;min-width:0;text-decoration:none;display:flex}.brand-mark{border:1px solid var(--line-accent);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--accent);background:var(--accent-soft);box-shadow:none;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.brand-mark:after{display:none}.brand-mark-logo{z-index:1;background:currentColor;width:18px;height:18px;display:block;position:relative;-webkit-mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2032%2032'%3e%3cpath%20d='M5%2025%2014%205h4l9%2020h-5l-6-14-6%2014H5Zm7-7h10l-3-3h5l5%205-5%205h-5l3-3H10l2-4Z'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2032%2032'%3e%3cpath%20d='M5%2025%2014%205h4l9%2020h-5l-6-14-6%2014H5Zm7-7h10l-3-3h5l5%205-5%205h-5l3-3H10l2-4Z'/%3e%3c/svg%3e") 50%/contain no-repeat}.brand-copy{min-width:0;line-height:1.15;display:grid}.brand-copy strong{color:var(--text);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:650;overflow:hidden}.brand-copy small{color:var(--subtle);font-size:var(--fs-micro);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.sidebar-collapse-button,.sidebar-mobile-close,.sidebar-expand-button{border-radius:var(--radius-xs);width:32px;height:32px;min-height:32px;color:var(--subtle);transition:color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:0;place-items:center;padding:0;display:grid}.sidebar-collapse-button:hover,.sidebar-mobile-close:hover,.sidebar-expand-button:hover{color:var(--text);background:var(--surface-muted)}.sidebar-collapse-button .app-icon{width:16px;height:16px;transform:rotate(180deg)}.sidebar-mobile-close,.sidebar-expand-button{display:none}.sidebar-expand-button{flex:0 0 32px;margin:0 auto 8px}.sidebar-expand-button .app-icon{width:16px;height:16px}.sidebar-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;flex:auto;min-height:0;padding:4px 12px 16px;display:flex;overflow-y:auto}.sidebar-nav-main{flex:none}.sidebar-section-label{color:var(--subtle);font-size:var(--fs-micro);letter-spacing:.05em;text-transform:uppercase;margin:18px 10px 8px;font-weight:620}.sidebar-scroll>.sidebar-section-label:first-child,.sidebar-nav-main>.sidebar-section-label:first-child{margin-top:4px}.user-nav{gap:2px;display:grid}.sidebar-utility-nav{border-top:1px solid var(--line);margin-top:auto;padding-top:16px}.user-nav a{border-radius:var(--radius-xs);min-height:38px;color:var(--muted);transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);align-items:center;gap:11px;padding:0 10px;font-size:13px;font-weight:500;text-decoration:none;display:flex;position:relative}.user-nav a .app-icon{width:18px;height:18px;color:var(--subtle);transition:color var(--dur-fast) var(--ease)}.user-nav a>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.user-nav a:hover{color:var(--text);background:var(--surface-muted)}.user-nav a:hover .app-icon{color:var(--text)}.user-nav a.router-link-exact-active{color:var(--text-strong);background:var(--accent-soft);font-weight:560}.user-nav a.router-link-exact-active .app-icon{color:var(--accent-strong)}.user-nav a.router-link-exact-active:before{border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:var(--accent);width:3px;height:18px;box-shadow:var(--shadow-glow);content:"";position:absolute;top:50%;left:-12px;transform:translateY(-50%)}.user-shell.sidebar-collapsed .sidebar-brand-row{padding:0 18px}.user-shell.sidebar-collapsed .brand-copy,.user-shell.sidebar-collapsed .sidebar-section-label,.user-shell.sidebar-collapsed .user-nav a>span,.user-shell.sidebar-collapsed .sidebar-collapse-button{display:none}.user-shell.sidebar-collapsed .brand{justify-content:center}.user-shell.sidebar-collapsed .sidebar-scroll{scrollbar-gutter:auto;padding-left:10px;padding-right:10px}.user-shell.sidebar-collapsed .user-nav{gap:4px}.user-shell.sidebar-collapsed .user-nav a{justify-content:center;width:40px;min-height:40px;margin:0 auto;padding:0}.user-shell.sidebar-collapsed .user-nav a.router-link-exact-active:before{display:none}.user-shell.sidebar-collapsed .sidebar-utility-nav{margin-top:14px;padding-top:14px}.user-shell.sidebar-collapsed .user-nav+.sidebar-section-label{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.user-shell.sidebar-collapsed .sidebar-expand-button{display:grid}.user-content{background:var(--bg);flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.user-content:before{z-index:0;background:radial-gradient(50% 50% at 50% 50%, var(--accent-soft) 0%, transparent 70%);content:"";opacity:.9;pointer-events:none;width:min(1100px,120%);height:420px;position:absolute;top:-220px;left:50%;transform:translate(-50%)}.user-topbar{z-index:10;flex:0 0 var(--topbar-height);min-height:var(--topbar-height);border-bottom:1px solid var(--line);background:var(--surface-glass);-webkit-backdrop-filter:saturate(150%)blur(14px);backdrop-filter:saturate(150%)blur(14px);justify-content:space-between;align-items:center;gap:18px;padding:0 clamp(16px,3vw,28px);display:flex;position:relative}.topbar-context{flex:auto;align-items:center;gap:9px;min-width:0;display:flex}.topbar-context .app-icon{color:var(--subtle)}.header-actions{align-items:center;gap:4px;display:flex}.user-topbar .header-actions .language-toggle,.user-topbar .header-actions .theme-toggle,.user-topbar .header-actions .topbar-logout{border:1px solid var(--line);border-radius:var(--radius-xs);width:32px;min-width:32px;height:32px;min-height:32px;color:var(--muted);background:var(--surface-soft);box-shadow:none;transition:color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);padding:0}.user-topbar .header-actions .language-toggle{font-size:11px;font-weight:640}.user-topbar .header-actions .theme-toggle .app-icon,.user-topbar .header-actions .topbar-logout .app-icon{width:15px;height:15px}.user-topbar .header-actions .language-toggle:hover,.user-topbar .header-actions .theme-toggle:hover{color:var(--text);border-color:var(--line-strong);background:var(--surface-muted);transform:none}.user-topbar .header-actions .topbar-logout:hover{color:var(--red);border-color:color-mix(in srgb, var(--red) 36%, var(--line));background:var(--red-soft);transform:none}.topbar-points{border:1px solid var(--line);border-radius:var(--radius-pill);min-height:30px;color:var(--muted);background:var(--surface-soft);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;padding:0 11px;font-size:12px;font-weight:600;display:inline-flex}.topbar-divider{background:var(--line);width:1px;height:18px;margin:0 4px}.topbar-account{border-radius:var(--radius-pill);min-height:34px;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:9px;padding:0 3px 0 8px;text-decoration:none;display:flex}.topbar-account:hover{border-color:var(--line);background:var(--surface-soft)}.topbar-account-copy{text-align:right;min-width:0;max-width:220px;line-height:1.15;display:grid}.topbar-account-copy strong{color:var(--text);justify-content:flex-end;align-items:center;gap:6px;font-size:12px;font-weight:580;display:flex}.topbar-account-copy small{color:var(--subtle);font-size:var(--fs-micro);margin-top:3px}.topbar-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.topbar-role-icon{width:28px;height:28px;color:var(--accent-strong);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--line-accent);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:640;display:grid}.topbar-role-icon.admin{color:var(--accent-contrast);background:var(--gradient-brand);box-shadow:var(--shadow-sm)}.topbar-role-icon .app-icon{width:15px;height:15px}.topbar-login{min-height:34px}.mobile-menu-button,.sidebar-overlay{display:none}.public-main{z-index:1;overscroll-behavior:contain;flex:auto;width:100%;min-width:0;min-height:0;margin:0;padding:0;position:relative;overflow:auto}.public-main-inner,.public-main-inner.admin-page-host{width:100%;max-width:1760px;min-height:100%;margin:0 auto;padding:26px clamp(18px,3vw,32px) 44px}.public-main-inner.admin-page-host.subscription-page-host{flex-direction:column;justify-content:center;padding-block:24px;display:flex}@media (width<=820px){.user-workspace{height:100%;display:block}.user-sidebar{width:min(var(--sidebar-width), 88vw);background:var(--bg-deep);height:100dvh;box-shadow:var(--shadow-lg);transition:transform var(--dur-slow) var(--ease);position:fixed;top:0;left:0;transform:translate(-102%)}.user-shell.sidebar-open .user-sidebar{transform:translate(0)}.sidebar-overlay{z-index:15;background:color-mix(in srgb, var(--bg-deep) 72%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity var(--dur-slow) var(--ease);border:0;display:block;position:fixed;inset:0}.user-shell.sidebar-open .sidebar-overlay{opacity:1;pointer-events:auto}.mobile-menu-button{border-radius:var(--radius-xs);width:36px;height:36px;color:var(--muted);background:0 0;border:1px solid #0000;place-items:center;padding:0;display:grid}.mobile-menu-button:hover{color:var(--text);background:var(--surface-muted)}.user-shell.sidebar-collapsed .sidebar-brand-row{padding:0 12px 0 16px}.user-shell.sidebar-collapsed .brand-copy{display:grid}.user-shell.sidebar-collapsed .sidebar-section-label{display:block}.user-shell.sidebar-collapsed .user-nav a>span{display:inline}.user-shell.sidebar-collapsed .brand{justify-content:flex-start}.user-shell.sidebar-collapsed .sidebar-scroll{scrollbar-gutter:stable;padding:4px 12px 16px}.user-shell.sidebar-collapsed .user-nav{gap:2px}.user-shell.sidebar-collapsed .user-nav a{justify-content:flex-start;width:auto;min-height:38px;margin:0;padding:0 10px}.user-shell.sidebar-collapsed .user-nav a.router-link-exact-active:before{display:block}.user-shell.sidebar-collapsed .user-nav+.sidebar-section-label{border-top:0;margin-top:18px;padding-top:0}.sidebar-collapse-button,.sidebar-expand-button{display:none!important}.sidebar-mobile-close{display:grid}.public-main-inner,.public-main-inner.admin-page-host{padding:20px 18px 36px}}@media (width<=680px){.topbar-points,.topbar-account-copy,.header-actions .topbar-divider{display:none}.topbar-account{padding-left:0}}@media (width<=420px){.public-main-inner,.public-main-inner.admin-page-host{padding-left:14px;padding-right:14px}.user-topbar{padding:0 14px}}@media (pointer:coarse),(width<=820px){.user-topbar{flex-basis:64px;min-height:64px}.user-topbar .header-actions .language-toggle,.user-topbar .header-actions .theme-toggle,.user-topbar .header-actions .topbar-logout{width:44px;min-width:44px;height:44px;min-height:44px}.mobile-menu-button{width:44px;height:44px}.sidebar-collapse-button,.sidebar-mobile-close,.sidebar-expand-button{flex-basis:44px;width:44px;height:44px;min-height:44px}.topbar-account,.user-nav a,.brand{min-height:44px}}.primary,.secondary,.ghost,.icon-button{border-radius:var(--radius-sm);letter-spacing:0;white-space:nowrap;min-height:40px;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur-fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-size:13px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.primary{color:var(--accent-contrast);border-color:var(--accent);background:var(--accent);box-shadow:var(--shadow-sm), var(--highlight-top)}.primary:hover{border-color:var(--accent-hover);background:var(--accent-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.primary:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.primary:disabled,.primary[disabled]{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.primary:disabled.loading-inline{cursor:wait}.secondary{color:var(--accent-strong);border-color:var(--line-accent);background:var(--accent-soft)}.secondary:hover{color:var(--accent-strong);border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 65%, var(--accent-wash));transform:translateY(-1px)}.ghost,.icon-button{color:var(--muted);border-color:var(--line-strong);background:var(--surface-soft)}.ghost:hover,.icon-button:hover{color:var(--text);border-color:var(--line-strong);background:var(--surface-muted);transform:translateY(-1px)}.ghost:disabled,.icon-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.icon-button{width:40px;padding:0}.icon-button:hover{color:var(--accent-strong)}.compact{min-height:34px;padding:0 11px;font-size:12px}.danger-button{color:var(--red);border-color:color-mix(in srgb, var(--red) 34%, var(--line))}.danger-button:hover{color:var(--red-strong);border-color:var(--red);background:var(--red-soft)}.text-action{color:var(--accent-strong);transition:color var(--dur-fast) var(--ease);background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-size:12px;font-weight:620;line-height:1;display:inline-flex}.text-action .app-icon{width:14px;height:14px}.text-action:hover{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.app-icon{stroke-width:1.75px;flex:none;width:18px;height:18px;display:block}label{min-width:0;color:var(--muted);letter-spacing:0;gap:7px;margin:0;font-size:13px;font-weight:500;display:grid}input,select,textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;min-height:42px;color:var(--text);background:var(--surface-soft);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);outline:none;padding:10px 13px;font-weight:480}input:hover:not(:focus),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--subtle)}input:focus,select:focus,textarea:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}input::placeholder,textarea::placeholder{color:var(--subtle)}input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}select option{color:var(--text);background:var(--surface)}input[type=number]{-moz-appearance:textfield;font-variant-numeric:tabular-nums}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=checkbox],input[type=radio]{width:auto;min-height:0;accent-color:var(--accent)}textarea{resize:vertical;min-height:96px;line-height:1.6}.inline-field{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.inline-field label{margin:0}.form-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.form-actions.right{justify-content:flex-end}.field-hint{color:var(--muted);font-size:12px;font-weight:460}.field-caption{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:500;display:block}.form-error{color:var(--red);margin-top:8px;font-size:12px;font-weight:550;display:block}.field-clear{appearance:none;z-index:1;width:24px;min-width:24px;height:24px;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute}.field-clear:before{width:16px;height:16px;color:var(--surface);background:var(--subtle);content:"×";font:600 12px/16px var(--font-sans);transition:background var(--dur-fast) var(--ease);border-radius:50%;place-items:center;display:grid}.field-clear:hover:before{background:var(--muted)}.field-clear:focus{outline:none}.field-clear:focus-visible:before{box-shadow:0 0 0 2px var(--accent)}.search-field{flex:0 320px;width:min(100%,320px);min-width:0;position:relative}.search-field .app-icon{width:15px;height:15px;color:var(--subtle);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.search-field input{padding-left:38px}.mode-option{cursor:pointer;display:block}.mode-option input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.mode-option input:checked+.mode-card{color:var(--text);border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent), var(--shadow-sm)}.mode-option input:focus-visible+.mode-card{outline:2px solid var(--accent);outline-offset:2px}.page-heading{justify-content:space-between;align-items:center;gap:20px;min-height:48px;margin-bottom:22px;display:flex}.page-heading-copy{min-width:0;display:grid}.page-heading h1{margin-top:0}.page-back{width:fit-content;margin-bottom:4px;font-size:12px}.heading-note{max-width:680px;color:var(--muted);margin:8px 0 0;font-size:14px;line-height:1.55}.heading-note code{color:var(--accent-strong);font:12px/1.5 var(--font-mono)}.page-actions{flex:none;align-items:center;gap:9px;display:flex}.page-stack,.admin-page-stack{gap:18px;display:grid}.admin-page-stack>.panel+.panel{margin-top:0}.admin-page-stack .page-heading{margin-bottom:0}.panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm), var(--highlight-top);padding:22px}.panel+.panel{margin-top:18px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:34px;margin-bottom:18px;display:flex}.panel-head h2{margin:0}.panel-head p{color:var(--muted);margin:5px 0 0;font-size:13px}.inset-panel{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-soft);box-shadow:none;padding:16px}.notice{border:1px solid var(--line-accent);border-radius:var(--radius-sm);color:var(--accent-strong);background:var(--accent-soft);align-items:center;gap:9px;margin:0;padding:12px 14px;font-size:13px;font-weight:520;line-height:1.45;display:flex}.notice .app-icon{flex:none;align-self:center;width:17px;height:17px}.notice.error{color:var(--red);border-color:color-mix(in srgb, var(--red) 32%, var(--line));background:var(--red-soft)}.notice.warning{color:var(--amber);border-color:color-mix(in srgb, var(--amber) 32%, var(--line));background:var(--amber-soft)}.notice.success{color:var(--success);border-color:color-mix(in srgb, var(--success) 32%, var(--line));background:var(--success-soft)}.secure-badge{border:1px solid var(--line-accent);border-radius:var(--radius-pill);min-height:28px;color:var(--accent-strong);background:var(--accent-soft);white-space:nowrap;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.status-pill{border-radius:var(--radius-pill);min-height:25px;color:var(--muted);background:var(--surface-muted);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.status-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.status-pill.success{color:var(--success);border-color:color-mix(in srgb, var(--success) 26%, transparent);background:var(--success-soft)}.status-pill.failed{color:var(--red);border-color:color-mix(in srgb, var(--red) 26%, transparent);background:var(--red-soft)}.status-pill.processing{color:var(--amber);border-color:color-mix(in srgb, var(--amber) 26%, transparent);background:var(--amber-soft)}.status-pill.processing .status-dot{animation:pulse-ring 1.8s var(--ease) infinite}.status-pill.neutral{color:var(--muted);border-color:var(--line);background:var(--surface-muted)}.status-switch{min-height:30px;color:var(--muted);font:inherit;white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:9px;padding:3px 7px;font-size:12px;font-weight:550;display:inline-flex}.status-switch.active{color:var(--text)}.status-switch:disabled{opacity:.55;cursor:wait}.status-switch-track{border-radius:var(--radius-pill);background:var(--surface-strong);width:34px;height:20px;box-shadow:inset 0 0 0 1px var(--line-strong);transition:background var(--dur) var(--ease), box-shadow var(--dur) var(--ease);flex:none;position:relative}.status-switch.active .status-switch-track{background:var(--accent);box-shadow:inset 0 0 0 1px var(--accent), var(--shadow-glow)}.status-switch-thumb{width:16px;height:16px;transition:transform var(--dur) var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0000004d}.status-switch.active .status-switch-thumb{transform:translate(14px)}.empty-state{min-height:220px;color:var(--subtle);text-align:center;align-content:center;place-items:center;gap:10px;padding:32px 20px;display:grid}.empty-state-icon{border:1px solid var(--line);border-radius:var(--radius-md);width:46px;height:46px;color:var(--subtle);background:var(--surface-soft);place-items:center;display:grid}.empty-state strong{color:var(--text);font-size:14px;font-weight:620}.empty-state p{max-width:340px;margin:0;font-size:13px;line-height:1.55}.skeleton-card{border-color:var(--line);background:linear-gradient(100deg, var(--surface-soft) 20%, var(--surface-muted) 40%, var(--surface-soft) 60%);background-size:200% 100%;min-height:105px;animation:1.4s linear infinite shimmer}.kpi-card,.admin-summary-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);min-width:0;min-height:128px;box-shadow:var(--shadow-sm), var(--highlight-top);transition:transform var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);align-items:flex-start;gap:14px;padding:20px;display:flex}.kpi-card:hover,.admin-summary-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md), var(--highlight-top);transform:translateY(-2px)}.kpi-icon,.quick-icon,.admin-summary-card .summary-icon{color:var(--accent-strong);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--line-accent);flex:none;place-items:center;display:grid}.kpi-icon,.admin-summary-card .summary-icon{border-radius:var(--radius-sm);width:42px;height:42px}.quick-icon{border-radius:var(--radius-sm);width:36px;height:36px}.kpi-icon.blue,.admin-summary-card .summary-icon.blue{color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--blue) 26%, transparent)}.kpi-icon.amber,.admin-summary-card .summary-icon.amber{color:var(--amber);background:var(--amber-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--amber) 26%, transparent)}.kpi-icon.violet,.admin-summary-card .summary-icon.violet{color:var(--violet);background:var(--violet-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--violet) 26%, transparent)}.kpi-icon.success,.admin-summary-card .summary-icon.success{color:var(--success);background:var(--success-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--success) 26%, transparent)}.kpi-card>div:first-child,.kpi-card>div:last-child,.admin-summary-card>div:last-child{min-width:0;display:grid}.kpi-card span,.admin-summary-card span{color:var(--muted);letter-spacing:.01em;font-size:12px;font-weight:620}.kpi-card strong,.admin-summary-card strong{color:var(--text-strong);letter-spacing:0;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:8px;font-size:clamp(24px,2vw,30px);font-weight:660;line-height:1;overflow:hidden}.kpi-card small,.admin-summary-card small{color:var(--subtle);text-overflow:ellipsis;white-space:nowrap;margin-top:9px;font-size:12px;overflow:hidden}.kpi-email{max-width:100%;letter-spacing:0!important;font-size:clamp(16px,1.4vw,21px)!important}.plan-card,.mode-card{border:1px solid var(--line);border-radius:var(--radius-sm);min-width:0;color:var(--text);background:var(--surface-soft);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);padding:16px;position:relative}.plan-card:hover,.mode-card:hover{border-color:var(--line-accent);background:var(--surface-muted);transform:translateY(-2px)}.plan-card strong,.mode-card strong{font-size:14px;font-weight:620;display:block}.plan-card small,.mode-card small{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.5;display:block}.plan-card{text-decoration:none;display:block}.plan-link{color:var(--accent-strong);align-items:center;gap:5px;margin-top:13px;font-size:11px;font-weight:620;display:inline-flex}.plan-link .app-icon{width:13px;height:13px}.quick-actions{display:grid}.quick-action{border-radius:var(--radius-sm);min-height:58px;color:var(--text);text-align:left;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:0;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:12px;margin:0 -10px;padding:10px;text-decoration:none;display:grid}.quick-action:hover{color:var(--accent-strong);background:var(--surface-soft)}.quick-action strong,.quick-action small{display:block}.quick-action strong{font-size:13px;font-weight:600}.quick-action small{color:var(--subtle);margin-top:3px;font-size:12px}.quick-action>.app-icon{color:var(--subtle)}.quick-action:hover>.app-icon{color:var(--accent-strong)}.table-wrap{overflow-x:auto}table.data{border-collapse:collapse;width:100%}table.data th,table.data td{border-bottom:1px solid var(--line);color:var(--text);text-align:center;vertical-align:middle;padding:13px 14px;font-size:13px}table.data th{z-index:1;color:var(--subtle);background:var(--surface-soft);font-size:var(--fs-xs);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;font-weight:640;position:sticky;top:0}table.data td{height:54px}table.data tbody tr{transition:background var(--dur-fast) var(--ease)}table.data tbody tr:hover{background:var(--surface-soft)}table.data tbody tr:last-child td{border-bottom:0}table.data tbody tr.table-empty-row,table.data tbody tr.table-empty-row:hover{background:0 0}table.data .table-empty-cell{border-bottom:0;padding:0}table.data .table-empty-cell .empty-state{min-height:240px}table.data td strong{font-weight:600;display:block}table.data td .cell-sub{color:var(--subtle);margin-top:3px;font-size:12px;display:block}.row-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.row-actions .icon-button{width:var(--control-compact);height:var(--control-compact);min-height:var(--control-compact)}.confirm-backdrop,.admin-modal-backdrop{background:color-mix(in srgb, var(--bg-deep) 78%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in var(--dur) var(--ease);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-backdrop{z-index:120}.admin-modal-backdrop{z-index:100}.confirm-dialog,.admin-modal{border:1px solid var(--line-strong);border-radius:var(--radius-lg);color:var(--text);background:var(--surface);box-shadow:var(--shadow-lg), var(--highlight-top);animation:dialog-in var(--dur-slow) var(--ease-out)}.confirm-dialog{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:18px 14px;width:min(380px,100%);padding:22px;display:grid}.confirm-icon{border-radius:var(--radius-sm);width:38px;height:38px;color:var(--accent-strong);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--line-accent);place-items:center;display:grid}.confirm-icon.danger{color:var(--red);background:var(--red-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--red) 28%, transparent)}.confirm-copy{min-width:0}.confirm-copy h2{margin:0;font-size:16px;line-height:1.35}.confirm-copy p{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.5}.confirm-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.admin-modal{width:min(460px,100%);padding:24px}.admin-card-modal{width:min(640px,100%);max-height:calc(100dvh - 40px);overflow-y:auto}.admin-modal-head{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px;display:flex}.admin-modal-head>div{min-width:0}.admin-modal-head h2{margin:0;font-size:18px;line-height:1.4}.admin-modal-head>.icon-button{width:var(--modal-close-size,32px);min-width:var(--modal-close-size,32px);min-height:var(--modal-close-size,32px);height:var(--modal-close-size,32px);flex:0 0 var(--modal-close-size,32px);background:0 0;border-color:#0000}.admin-modal-head>.icon-button:hover{background:var(--surface-muted)}.admin-modal-head p{color:var(--muted);overflow-wrap:anywhere;margin:6px 0 0;font-size:12px;line-height:1.6}.admin-modal-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;display:flex}.admin-modal-actions>button{min-width:80px}.toast-host{z-index:1500;top:max(16px, env(safe-area-inset-top));right:max(18px, env(safe-area-inset-right));pointer-events:none;width:min(390px,100vw - 32px);position:fixed}.toast-list{gap:10px;display:grid}.app-toast{border:1px solid var(--line-strong);border-radius:var(--radius-md);min-height:52px;color:var(--text);background:var(--surface-glass-strong);-webkit-backdrop-filter:saturate(160%)blur(16px);backdrop-filter:saturate(160%)blur(16px);box-shadow:var(--shadow-lg), var(--highlight-top);pointer-events:auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 13px 13px 17px;display:grid;position:relative;overflow:hidden}.app-toast:before{background:var(--accent);content:"";width:3px;position:absolute;top:0;bottom:0;left:0}.app-toast--success{border-color:color-mix(in srgb, var(--success) 34%, var(--line-strong))}.app-toast--success:before{background:var(--success)}.app-toast--error{border-color:color-mix(in srgb, var(--red) 38%, var(--line-strong))}.app-toast--error:before{background:var(--red)}.app-toast--warning{border-color:color-mix(in srgb, var(--amber) 38%, var(--line-strong))}.app-toast--warning:before{background:var(--amber)}.app-toast--info{border-color:color-mix(in srgb, var(--blue) 34%, var(--line-strong))}.app-toast--info:before{background:var(--blue)}.app-toast-icon{width:22px;height:22px;color:var(--accent-strong);place-items:center;display:grid}.app-toast--success .app-toast-icon{color:var(--success)}.app-toast--error .app-toast-icon{color:var(--red)}.app-toast--warning .app-toast-icon{color:var(--amber)}.app-toast--info .app-toast-icon{color:var(--blue)}.app-toast-copy{gap:3px;min-width:0;display:grid}.app-toast-message{min-width:0;margin:0;font-size:13px;font-weight:600;line-height:1.35}.app-toast-description{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:460;line-height:1.4;overflow:hidden}.app-toast-close{border-radius:var(--radius-xs);width:28px;height:28px;min-height:28px;color:var(--subtle);transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:0;place-items:center;padding:5px;display:grid}.app-toast-close:hover{color:var(--text);background:var(--surface-muted)}.app-toast-close .app-icon{width:15px;height:15px}.toast-enter-active,.toast-leave-active{transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease), max-height var(--dur) var(--ease)}.toast-enter-from,.toast-leave-to{opacity:0;max-height:0;transform:translate(18px,-6px)}.toast-move{transition:transform var(--dur) var(--ease)}.secret-surface{border:1px solid var(--line-accent);border-radius:var(--radius-sm);color:var(--accent-strong);background:var(--accent-soft);grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr) auto;align-items:center;gap:14px;margin-top:16px;padding:15px;display:grid}.secret-surface>div{gap:3px;min-width:0;display:grid}.secret-surface strong{font-size:12px;font-weight:620}.secret-surface span{color:var(--muted);font-size:11px}.secret-surface code{color:var(--text);font:12px/1.5 var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.code-block{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);background:var(--bg-deep);font:12px/1.7 var(--font-mono);white-space:pre-wrap;margin:13px 0 0;padding:16px;overflow:auto}.task-json{border:1px solid var(--line);border-radius:var(--radius-sm);max-height:320px;color:var(--text);background:var(--bg-deep);font:11px/1.65 var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:14px;overflow:auto}@media (prefers-reduced-motion:reduce){.kpi-card:hover,.admin-summary-card:hover,.plan-card:hover,.mode-card:hover,.primary:hover,.secondary:hover,.ghost:hover,.icon-button:hover{transform:none}}@media (width<=820px){.page-heading{flex-direction:column;align-items:flex-start;gap:14px}.page-actions{width:100%}.page-actions>*{flex:1}}@media (width<=680px){.panel{padding:18px}.form-actions{flex-direction:column;align-items:stretch}.form-actions>*{width:100%}.secret-surface{grid-template-columns:1fr}.secret-surface code{overflow-wrap:anywhere;white-space:normal}.admin-modal-backdrop{padding:12px}.admin-modal,.admin-card-modal{border-radius:var(--radius-md);max-height:calc(100dvh - 24px);padding:19px}.admin-modal-actions{flex-direction:column-reverse}.admin-modal-actions>*{width:100%}}@media (width<=820px){table.data{min-width:0}table.data thead{display:none}table.data tbody{background:var(--surface-soft);gap:10px;padding:11px;display:grid}table.data tbody tr{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);display:block;overflow:hidden}table.data tbody tr:hover{background:var(--surface)}table.data td{border-bottom:1px solid var(--line);text-align:center;white-space:normal;grid-template-columns:minmax(78px,.42fr) minmax(0,1fr);align-items:center;gap:10px;height:auto;min-height:43px;padding:10px 13px;display:grid}table.data td:last-child{border-bottom:0}table.data td:before{color:var(--subtle);content:attr(data-label);font-size:var(--fs-micro);letter-spacing:.04em;text-align:center;text-transform:uppercase;font-weight:640}table.data td>*{min-width:0}table.data td>.status-pill{justify-self:center;width:fit-content}.row-actions{justify-content:center}table.data tbody tr.table-empty-row{background:0 0;border:0;display:block}table.data .table-empty-cell{text-align:center;border:0;min-height:0;padding:0;display:block}table.data .table-empty-cell:before{content:none}}@media (width<=560px){.toast-host{top:max(10px, env(safe-area-inset-top));width:calc(100vw - 20px);right:10px}.confirm-actions{flex-direction:column-reverse}.confirm-actions>*{width:100%}.app-toast-description{-webkit-line-clamp:3;line-clamp:3;text-overflow:clip;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box}}@media (pointer:coarse),(width<=820px){.primary,.secondary,.ghost,.icon-button{min-height:44px}.icon-button{width:44px}.primary.compact,.secondary.compact,.ghost.compact,.icon-button.compact,.status-switch,.text-action{min-height:40px}.icon-button.compact{width:40px}.app-toast-close{width:40px;height:40px;min-height:40px}.field-clear{width:32px;height:32px}.field-clear:before{width:20px;height:20px;font-size:14px;line-height:20px}input,select,textarea{min-height:46px}}.dashboard-kpis,.admin-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:0;display:grid}.dashboard-kpis{margin-bottom:18px}.dashboard-grid{grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:18px;display:grid}.admin-dashboard-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:18px;display:grid}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.admin-list{display:grid}.admin-list-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;min-height:56px;padding:10px 0;display:grid}.admin-list-row:last-child{border-bottom:0}.admin-list-row strong,.admin-list-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-list-row strong{font-size:13px;font-weight:600}.admin-list-row small{color:var(--subtle);margin-top:3px;font-size:11px}.task-detail-row:hover{background:0 0!important}.task-detail-row>td{text-align:left!important;padding:0!important}.task-detail-panel{background:var(--surface-soft);gap:18px;padding:20px;display:grid}.task-detail-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.task-detail-heading>div{gap:4px;min-width:0;display:grid}.task-detail-heading strong{font-size:14px;font-weight:620}.task-detail-heading span{overflow-wrap:anywhere;color:var(--subtle);font:11px/1.5 var(--font-mono)}.task-timeline{margin:0;padding:0;list-style:none;display:grid}.task-timeline li{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;min-height:48px;padding:0 0 18px 28px;display:grid;position:relative}.task-timeline li:last-child{min-height:24px;padding-bottom:0}.task-timeline li:before{background:var(--line-strong);content:"";width:1px;position:absolute;top:14px;bottom:-3px;left:7px}.task-timeline li:last-child:before{display:none}.task-timeline-dot{z-index:1;border:3px solid var(--surface-soft);background:var(--accent);width:13px;height:13px;box-shadow:0 0 0 1px var(--accent);border-radius:50%;position:absolute;top:4px;left:1px}.task-timeline li.active .task-timeline-dot{background:var(--surface);box-shadow:0 0 0 2px var(--accent), var(--shadow-glow)}.task-timeline li.failed .task-timeline-dot{background:var(--red);box-shadow:0 0 0 1px var(--red)}.task-timeline li.pending .task-timeline-dot{background:var(--subtle);box-shadow:0 0 0 1px var(--line-strong)}.task-timeline li>div{gap:3px;min-width:0;display:grid}.task-timeline li strong{font-size:12px;font-weight:600}.task-timeline li small{color:var(--subtle);font-size:var(--fs-micro)}.task-failure-reason{border:1px solid color-mix(in srgb, var(--red) 30%, var(--line));border-radius:var(--radius-sm);color:var(--red);background:var(--red-soft);gap:5px;padding:13px 14px;display:grid}.task-failure-reason strong{font-size:11px;font-weight:640}.task-failure-reason span{font-size:12px;line-height:1.55}.docs-layout{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:20px;display:grid}.docs-nav{align-content:start;gap:2px;display:grid;position:sticky;top:0}.docs-nav strong{margin-bottom:8px;font-size:12px;font-weight:640}.docs-nav a{border-radius:var(--radius-xs);color:var(--muted);transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);padding:8px 10px;font-size:12px;text-decoration:none}.docs-nav a:hover{color:var(--accent-strong);background:var(--accent-soft)}.docs-content{min-width:0}.docs-content section+section{border-top:1px solid var(--line);margin-top:28px;padding-top:26px}.docs-content p{color:var(--muted);font-size:13px}.docs-section-heading,.code-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.docs-section-heading{justify-content:flex-start}.docs-section-heading h2,.code-head h2{font-size:17px}.docs-section-heading p,.code-head p{color:var(--muted);margin:4px 0 0;font-size:12px}.docs-markdown{border:1px solid var(--line);border-radius:var(--radius-sm);max-height:360px;color:var(--text);background:var(--surface-soft);font:12px/1.75 var(--font-mono);white-space:pre-wrap;margin:16px 0 0;padding:16px;overflow:auto}.protocol-desk{gap:18px;display:grid}.protocol-desk-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:stretch;gap:18px;display:grid}.protocol-desk-grid>.panel+.panel{margin-top:0}.protocol-pane{flex-direction:column;min-height:100%;display:flex}.protocol-pane-head{align-items:flex-start;gap:13px;margin-bottom:20px;display:flex}.protocol-step-badge{border-radius:var(--radius-xs);color:#fff;background:var(--gradient-brand);width:30px;height:30px;box-shadow:var(--shadow-glow), var(--highlight-top);flex:none;place-items:center;font-size:12px;font-weight:660;display:grid}.protocol-pane-head h2{margin:1px 0 0;font-size:17px}.protocol-pane-head p{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.55}.protocol-pane-head a{color:var(--accent-strong);font-weight:600;text-decoration:none}.protocol-pane-head a:hover{text-underline-offset:3px;text-decoration:underline}.protocol-card-source-fieldset{border:0;min-width:0;margin:0 0 16px;padding:0}.protocol-card-source-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.protocol-card-source-option{align-items:center;gap:11px;min-height:72px;padding:12px 14px;display:flex}.protocol-card-source-option>.app-icon{width:20px;height:20px;color:var(--accent-strong)}.protocol-card-source-option>span{min-width:0}.protocol-card-source-option strong,.protocol-card-source-option small{text-overflow:ellipsis;overflow:hidden}.protocol-card-source-option small{white-space:normal}.protocol-saved-card-section,.protocol-manual-card-section{min-width:0;margin-bottom:20px}.protocol-manual-card-section,.card-raw-field{gap:13px;display:grid}.protocol-card-state{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);min-height:72px;color:var(--muted);background:var(--surface-soft);place-items:center;font-size:12px;display:grid}.protocol-card-load-error{justify-content:space-between;min-height:64px}.protocol-card-load-error>span{flex:auto;min-width:0}.protocol-card-load-error .ghost{flex:none}.protocol-saved-card-section>.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-soft);min-height:190px}.protocol-empty-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:6px;display:flex}.protocol-saved-card-field{gap:7px;display:grid}.protocol-raw-label input{font-family:var(--font-mono)}.protocol-input-actions,.protocol-textarea-actions{position:relative}.protocol-input-actions input,.protocol-textarea-actions textarea{padding-right:36px}.protocol-input-actions .field-clear{top:50%;right:9px;transform:translateY(-50%)}.protocol-textarea-actions .field-clear{top:10px;right:9px}.protocol-formats{border:1px solid color-mix(in srgb, var(--amber) 30%, var(--line));border-radius:var(--radius-sm);background:var(--amber-soft);gap:5px;padding:12px 14px;display:grid}.protocol-formats strong{color:var(--text);font-size:12px;font-weight:620}.protocol-formats code{color:var(--amber);font:11px/1.5 var(--font-mono);overflow-wrap:anywhere}.protocol-formats span{color:var(--muted);font-size:11px;line-height:1.5}.protocol-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.protocol-check{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:11px 13px;display:flex}.protocol-check span{color:var(--muted);font-size:11px}.protocol-check strong{color:var(--subtle);font-size:11px;font-weight:620}.protocol-meta-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);align-content:center;gap:5px;min-height:68px;padding:12px 13px;display:grid}.protocol-meta-card span{color:var(--muted);font-size:11px}.protocol-meta-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.protocol-check.ok,.protocol-meta-card.ok{border-color:color-mix(in srgb, var(--success) 30%, var(--line));background:var(--success-soft)}.protocol-check.ok strong,.protocol-meta-card.ok strong{color:var(--success)}.protocol-check.bad,.protocol-meta-card.bad{border-color:color-mix(in srgb, var(--red) 30%, var(--line));background:var(--red-soft)}.protocol-check.bad strong,.protocol-meta-card.bad strong{color:var(--red)}.protocol-plan-head{color:var(--text);margin:0 0 10px;font-size:12px;font-weight:640}.protocol-plan-switch{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.protocol-plan-card{min-height:82px;padding:14px}.protocol-plan-card strong{font-size:14px}.protocol-plan-card small{margin-top:7px}.protocol-country{margin-bottom:0}.protocol-billing-address-field{gap:7px;margin-top:14px;display:grid}.protocol-country-label{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:600;display:flex}.protocol-country-label .text-action{font-size:11px}.protocol-session-input{resize:vertical;min-height:220px;font-size:12px;line-height:1.65}.protocol-session-meta{grid-template-columns:1.15fr .85fr;gap:10px;margin:2px 0 15px;display:grid}.protocol-privacy{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);background:var(--surface-soft);align-items:flex-start;gap:9px;margin-top:auto;padding:12px 13px;font-size:11px;line-height:1.55;display:flex}.protocol-privacy .app-icon{width:15px;height:15px;color:var(--accent-strong);flex:none}.protocol-dock{border:1px solid var(--line-strong);border-radius:var(--radius-md);color:var(--text);background:var(--surface-glass);-webkit-backdrop-filter:saturate(150%)blur(14px);backdrop-filter:saturate(150%)blur(14px);box-shadow:var(--shadow-md), var(--highlight-top);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.protocol-dock-copy{gap:4px;min-width:0;display:grid}.protocol-dock-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:620;overflow:hidden}.protocol-dock-copy span{color:var(--muted);font-size:12px}.protocol-dock-actions{flex:none;align-items:center;gap:9px;display:flex}.protocol-log-panel{padding-top:22px}.progress-bar-wrap{border-radius:var(--radius-pill);background:var(--surface-strong);height:6px;margin:12px 0 20px;overflow:hidden}.progress-bar{border-radius:inherit;background:var(--gradient-brand);height:100%;box-shadow:var(--shadow-glow);transition:width var(--dur-slow) var(--ease)}.progress-bar.failed{background:var(--red);box-shadow:none}.progress-steps{color:var(--muted);margin:0;padding:0 0 0 20px}.progress-steps li{padding:7px 0 7px 10px;font-size:12px}.progress-steps li.done{color:var(--success)}.progress-steps li.active{color:var(--text);font-weight:600}.progress-steps li.failed{color:var(--red)}.protocol-result{border-radius:var(--radius-sm);margin-top:15px;padding:13px 15px;font-size:13px}.protocol-result.success{color:var(--success);background:var(--success-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--success) 26%, transparent)}.protocol-result.failed{color:var(--red);background:var(--red-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--red) 26%, transparent)}.admin-toolbar{z-index:3;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;min-height:64px;padding:13px 20px;display:flex;position:relative}.admin-page-toolbar{justify-content:space-between;align-items:center;gap:15px;min-height:52px;display:flex}.admin-toolbar-left{flex-wrap:wrap;flex:auto;min-width:0}.admin-toolbar-right{flex:none;justify-content:flex-end}.admin-toolbar-right .icon-button{width:var(--control-compact);height:var(--control-compact);min-height:var(--control-compact)}.admin-toolbar-right .loading-inline:before{width:12px;height:12px}.admin-toolbar-label{color:var(--text);white-space:nowrap;font-size:13px;font-weight:620}.admin-toolbar-title h2{margin:0;font-size:15px}.admin-toolbar-title p{color:var(--muted);margin:4px 0 0;font-size:11px}.record-count{color:var(--subtle);margin-left:6px;font-size:11px;font-weight:460}.admin-toolbar-controls{align-items:center;gap:8px;display:flex}.admin-toolbar-controls .search-field{flex:0 0 280px;width:280px;height:38px;margin:0;display:block}.admin-toolbar-controls .search-field input,.admin-toolbar-controls .search-field input[type=search]{background:var(--surface-soft);width:100%;min-width:0;height:38px;min-height:38px;padding-top:0;padding-bottom:0;font-size:12px}.admin-toolbar-controls .app-select{flex:0 0 160px;width:160px;min-width:160px;height:38px}.admin-toolbar-controls .app-select .app-select-trigger{background:var(--surface-soft);height:38px;min-height:38px;padding:0 11px;font-size:12px}.admin-table-panel{padding:0;overflow:visible}.admin-table-panel .table-wrap{overflow-x:auto}.admin-table-panel>.pagination{border-radius:0 0 calc(var(--radius-md) - 1px) calc(var(--radius-md) - 1px)}.redeem-selection-cell{width:42px;text-align:center!important;padding-left:16px!important;padding-right:4px!important}.redeem-checkbox{min-width:var(--control-tap-min);min-height:var(--control-tap-min);cursor:pointer;place-items:center;display:inline-grid}.redeem-checkbox input{width:var(--control-check);height:var(--control-check);accent-color:var(--accent);margin:0}.redeem-code-hint{max-width:100%;color:var(--text);text-overflow:ellipsis;white-space:nowrap;display:inline-block;overflow:hidden}.redeem-code-missing{color:var(--subtle);font-size:11px}.redeem-selection-count{color:var(--muted);white-space:nowrap;font-size:11px}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-form-grid.three{grid-template-columns:1.2fr .8fr 1fr}.admin-card-layout{grid-template-columns:minmax(360px,.85fr) minmax(0,1.15fr);align-items:start;gap:18px;display:grid}.admin-card-layout.pricing-only-layout{grid-template-columns:minmax(360px,620px)}.admin-form-section{border-top:1px solid var(--line);padding-top:20px}.admin-form-section:first-child{border-top:0;padding-top:0}.admin-form-section h2{margin-bottom:6px;font-size:16px}.admin-form-section>p{color:var(--muted);margin:0 0 15px;font-size:12px}.choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.check-card{cursor:pointer}.check-card input{opacity:0;width:1px;height:1px;position:absolute}.check-card span{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);min-height:58px;transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);align-content:center;gap:3px;padding:11px;display:grid}.check-card strong{font-size:12px;font-weight:600}.check-card small{color:var(--muted);font-size:var(--fs-micro)}.check-card input:checked+span{color:var(--text);border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.check-card input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.settings-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.settings-tab{border:1px solid var(--line);border-radius:var(--radius-sm);min-width:0;color:var(--muted);background:var(--surface);text-align:left;transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);align-items:center;gap:10px;padding:13px 14px;display:flex}.settings-tab:hover{color:var(--text);border-color:var(--line-strong);transform:translateY(-1px)}.settings-tab.active{color:var(--text);border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.settings-tab.active>.app-icon{color:var(--accent-strong)}.settings-tab>.app-icon{flex:none;width:19px;height:19px}.settings-tab strong{font-size:12px;font-weight:600}.admin-output{border:1px solid var(--line-accent);border-radius:var(--radius-sm);color:var(--accent-strong);background:var(--accent-soft);margin-top:4px;padding:15px}.admin-output-head{color:var(--accent-strong);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-size:12px;font-weight:620;display:flex}.admin-output textarea{min-height:150px;color:var(--text);background:var(--surface-soft);font:12px/1.6 var(--font-mono)}.admin-sticky-actions{border-color:var(--line-strong);background:var(--surface-glass);-webkit-backdrop-filter:saturate(150%)blur(14px);backdrop-filter:saturate(150%)blur(14px)}.profile-page{padding:0}.profile-page .profile-card{border-radius:var(--radius-md)}.profile-chip{color:var(--muted);background:var(--surface-muted)}.profile-chip.admin{color:var(--accent-strong);background:var(--accent-soft)}@media (width<=1120px){.admin-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-grid,.admin-card-layout,.admin-card-layout.pricing-only-layout{grid-template-columns:1fr}}@media (width<=1020px){.protocol-desk-grid,.dashboard-grid{grid-template-columns:1fr}}@media (width<=820px){.admin-toolbar{flex-direction:column;align-items:flex-start}.admin-toolbar-controls{flex-wrap:wrap;width:100%}.admin-toolbar-controls .search-field{flex:240px;width:min(100%,320px)}.admin-toolbar-controls input,.admin-toolbar-controls select{flex:160px;min-width:0}.admin-page-toolbar{flex-direction:column;align-items:flex-start}.admin-page-toolbar .admin-toolbar-right{width:100%}.docs-layout{grid-template-columns:1fr}.docs-nav{align-items:center;gap:3px;padding:10px;display:flex;position:static;overflow-x:auto}.docs-nav strong{white-space:nowrap;margin:0 8px 0 2px}.docs-nav a{white-space:nowrap}}@media (width<=680px){.dashboard-kpis,.admin-summary-grid,.pricing-grid,.protocol-plan-switch,.protocol-checks,.protocol-session-meta,.protocol-card-source-switch,.admin-form-grid,.admin-form-grid.three,.settings-tabs{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr 1fr}.protocol-dock,.protocol-dock-actions{flex-direction:column;align-items:stretch}.protocol-dock-actions>*{width:100%}.protocol-card-load-error{flex-direction:column;align-items:stretch}.protocol-card-load-error .ghost{width:100%}.task-detail-panel{padding:16px}}@media (width<=820px){table.data .task-detail-row>td{display:block}table.data .task-detail-row>td:before{display:none}table.data td.redeem-selection-cell{justify-content:flex-start;display:flex}table.data td.redeem-selection-cell:before{content:none}table.data td.redeem-selection-cell>.redeem-checkbox{min-width:var(--control-tap-min)}}@media (width<=420px){.protocol-pane-head h2{font-size:16px}.protocol-empty-actions{flex-direction:column;align-items:stretch;width:100%}.protocol-empty-actions>*{width:100%}}
