@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-gray-500:#6a7282;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-semibold:600;--radius-md:.375rem;--shadow-xs:0 1px 2px 0 #0000000d;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-gray-500:lab(47.7841% -.393182 -10.0268)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.visible\!{visibility:visible!important}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-3{top:calc(var(--spacing) * 3)}.z-120{z-index:120}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-0{width:0;height:0}.size-1{width:var(--spacing);height:var(--spacing)}.h-1{height:var(--spacing)}.h-2{height:calc(var(--spacing) * 2)}.min-h-screen{min-height:100vh}.w-1{width:var(--spacing)}.max-w-md{max-width:var(--container-md)}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:calc(var(--spacing) * 4)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-blue-600{background-color:var(--color-blue-600)}.p-1{padding:var(--spacing)}.p-8{padding:calc(var(--spacing) * 8)}.p-9{padding:calc(var(--spacing) * 9)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.break-all{word-break:break-all}.text-gray-500{color:var(--color-gray-500)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.\[app-\:��\4 \]{app-:��}.\[app-\:\2 6\]{app-:6}.\[app-\:\8 �\13 \]{app-:�}.\[client\:\"\+c\.version\+\"\]{client:"+c.version+"}.\[instru\:\f \1 �\7 �\3 \]{instru:��}@media (hover:hover){.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}}}:root{--brand-50:#eef5ff;--brand-100:#d9e9ff;--brand-500:#3578e5;--brand-600:#2467d1;--brand-700:#1e56ad;--ink-950:#18202b;--ink-800:#2e3a49;--ink-600:#667487;--ink-500:#6b7684;--ink-300:#cfd6df;--ink-200:#e2e7ed;--ink-100:#edf0f4;--ink-50:#f6f7f9;--surface:#fff;--canvas:#f4f5f7;--success:#18a875;--warning:#e89029;--danger:#e65353;--info:#5a76cc;--sidebar:#202732;--sidebar-hover:#2a3442;--sidebar-active:#303d4d;--radius-sm:4px;--radius-md:7px;--radius-lg:10px;--shadow-float:0 12px 34px #19222d1f;--ease-standard:cubic-bezier(.2, .8, .2, 1);--dur-press:90ms;--dur-fast:.14s;--dur-base:.18s;--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--z-header:16;--z-sidebar-backdrop:44;--z-sidebar:45;--z-editor:50;--z-dialog:60;--z-popover:70;--z-header-panel:72;--z-overlay:80;--z-preview:90;--z-wizard:120;--z-context-menu:160;--z-dev:9999;--el-primary:var(--primary-600);--el-primary-hover:var(--primary-500);--el-primary-pale:var(--primary-pale);--el-text-primary:#232b36;--el-text-regular:#5c6675;--el-text-secondary:#667487;--el-border:#dce0e8;--el-border-light:#eaeef3;--el-fill:#f5f7fa;--el-fill-dark:#202732;--el-info:var(--primary-600);--el-success:#18a875;--el-warning:#e89029;--el-danger:#e65353;--el-h-control:32px;--el-h-sm:28px;--primary-50:#f2f6fd;--primary-100:#e9f1fc;--primary-200:#d5e3f9;--primary-300:#b6cdf3;--primary-400:#7ba1e8;--primary-500:#3578e5;--primary-600:#2467d1;--primary-700:#1e56ad;--primary-pale:#f2f6fd;--success-pale:#ecfdf5;--success-border:#a7f3d0;--warning-pale:#fffbeb;--warning-border:#f5dfb8;--danger-pale:#fef2f2;--danger-border:#fecaca;--ink-400:#7a8494;--radius-control:6px;--radius-card:8px;--radius-panel:10px;--shadow-xs:0 1px 2px #17202d0a;--shadow-card:0 1px 3px #17202d0f;--shadow-card-hover:0 6px 20px #17202d17;--shadow-pop:0 12px 34px #19222d1f;--space-gutter:12px;--space-grid:12px;--space-pad:16px;--editor-bg:#232b37;--editor-surface:#2d3746;--editor-surface-hover:#3a4658;--editor-border:#3f4b5e;--editor-inset:#1c222c;--editor-text:#dfe5ec;--editor-muted:#9aa6b6;--editor-canvas:#262d38;--gray-800:#1f2937;--gray-700:#374151;--gray-500:#6b7280;--gray-400:#9ca3af;--gray-300:#d1d5db;--gray-200:#e5e7eb;--gray-150:#e2e6eb;--gray-100:#f3f4f6;--gray-80:#f0f2f5;--gray-60:#f5f6f8;--gray-50:#f9fafb;--gray-30:#f8f9fb;--gray-25:#fafbfc;--red-800:#991b1b;--red-600:#dc2626;--red-100:#fecaca;--red-50:#fef2f2;--emerald-800:#065f46;--emerald-700:#047857;--emerald-600:#059669;--emerald-200:#a7f3d0;--emerald-50:#ecfdf5;--green-200:#bbf7d0;--green-50:#f0fdf4;--amber-700:#b45309;--amber-600:#d97706;--amber-500:#f59e0b;--amber-400:#fbbf24;--amber-50:#fffbeb;--navy-950:#0b1220;--blue-900:#1e3a8a;--blue-600:#2563eb;--blue-500:#3b82f6;--blue-50:#eff6ff;--sky-900:#0c4a6e;--sky-700:#0369a1;--sky-300:#7dd3fc;--sky-50:#f0f9ff;--indigo-400:#818cf8;--indigo-500:#6366f1;--indigo-200:#c7d2fe;--slate-800:#1e293b;--slate-500:#64748b;--slate-400:#94a3b8;--slate-300:#cbd5e1;--slate-200:#e2e8f0;--slate-50:#f8fafc;--green-deep:#1f6a55;--ink-chrome:#131a24;--primary-border:#d5e3f9;--el-text-placeholder:#c0c4cc}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink-950);background:var(--canvas);font-family:var(--font-noto-sans-sc), "Microsoft YaHei", sans-serif;margin:0;font-size:13px}button,input{font:inherit}button{cursor:pointer}::selection{color:#fff;background:var(--brand-500)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--el-border);border-radius:8px}::-webkit-scrollbar-track{background:0 0}.heading-actions{gap:8px;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.reference-shell{min-height:100vh;color:var(--el-text-primary);background:var(--canvas);font-family:var(--font-noto-sans-sc), "Microsoft YaHei", sans-serif;font-size:12px;display:flex;overflow-x:clip}.reference-shell.sidebar-collapsed .reference-sidebar{transform:translate(-100%)}.reference-shell.sidebar-collapsed .reference-main{margin-left:0}.reference-shell .reference-main{transition:margin-left .25s}.menu-toggle{width:26px;height:26px;color:var(--ink-800);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex}.menu-toggle:hover{background:var(--ink-100);color:var(--el-primary)}.menu-toggle svg{transform-origin:50%;width:20px;height:20px;transition:transform .3s cubic-bezier(.4,0,.2,1)}.menu-toggle:active svg{transform:scale(.88)}.reference-shell.sidebar-collapsed .menu-toggle svg{transform:rotate(180deg)}.reference-shell:not(.sidebar-collapsed) .menu-toggle svg{transform:rotate(0)}.reference-sidebar{z-index:var(--z-sidebar);overscroll-behavior-x:none;scrollbar-width:none;-ms-overflow-style:none;background:var(--sidebar);border-right:1px solid #ffffff0f;flex-direction:column;width:80px;min-width:80px;max-width:80px;height:100vh;transition:transform .25s;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden auto;box-shadow:3px 0 12px #161c240f}.reference-sidebar::-webkit-scrollbar{width:0;height:0;display:none}.reference-brand{background:var(--el-primary);flex:0 0 72px;width:80px;height:72px;position:relative}.reference-logo{color:#fff;background:0 0;border:0;width:80px;height:72px}.reference-logo span{border:2px solid #fff;border-radius:9px;place-items:center;width:34px;height:34px;font-size:18px;font-weight:700;display:inline-grid}.reference-logo img{object-fit:contain;border-radius:8px;width:38px;height:38px;margin:auto;display:block}.brand-edit-trigger{color:#fff;opacity:0;background:#191e2459;border:1px solid #ffffff85;border-radius:50%;place-items:center;width:18px;height:18px;padding:0;transition:opacity .18s,transform .18s,background .18s;display:grid;position:absolute;bottom:5px;right:5px;transform:scale(.86)}.reference-brand:hover .brand-edit-trigger,.brand-edit-trigger:focus-visible{opacity:1;transform:scale(1)}.brand-edit-trigger:hover{background:#191e24a6}.brand-edit-trigger svg{width:10px;height:10px}.reference-nav{width:80px;height:56px;color:var(--ink-400);transition:color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);background:0 0;border:0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;padding:2px 0;display:flex;position:relative}.reference-nav+.reference-nav{margin-top:2px}.reference-nav svg{width:21px;height:21px;min-height:16px;transition:transform var(--dur-press) var(--ease-standard);flex:0 auto}.reference-nav span{transition:transform var(--dur-press) var(--ease-standard);font-size:12px;line-height:1.2}.reference-nav:active{background:#ffffff29}.reference-nav:active svg{transform:scale(.86)}.reference-nav:active span{transform:translateY(1px)}.reference-nav:hover{color:#fff;background:#ffffff0f}.reference-nav.active{color:#fff;background:#ffffff1a;font-weight:500}.reference-nav.active:after{content:"";background:var(--primary-500);width:3px;height:22px;animation:nav-indicator-in var(--dur-base) var(--ease-spring) both;border-radius:0 3px 3px 0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.reference-main{width:100%;min-width:0;min-height:100vh;margin-left:80px;overflow-x:clip}.reference-header{z-index:var(--z-header);border-bottom:1px solid var(--el-border-light);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;justify-content:space-between;align-items:center;height:72px;padding:0 28px;display:flex;position:sticky;top:0;box-shadow:0 1px 2px #17202d0a}.header-title{align-items:center;gap:16px;min-width:0;display:flex}.header-title>svg{width:20px;color:var(--ink-600);flex:none}.system-identity{white-space:nowrap;align-items:center;gap:11px;min-width:0;display:flex}.company-identity-button{max-width:290px;color:var(--ink-800);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:4px;padding:4px 5px;font-size:17px;font-weight:600;transition:color .16s,background .16s;overflow:hidden}.company-identity-button:hover{color:var(--primary-600);background:var(--el-primary-pale)}.system-identity>i{background:var(--ink-100);flex:none;width:1px;height:16px}.system-identity>span{color:var(--ink-600);text-overflow:ellipsis;font-size:13px;overflow:hidden}.edition-badge{border:1px solid var(--primary-200);color:var(--primary-600);background:var(--el-primary-pale);letter-spacing:.2px;border-radius:10px;padding:4px 9px;font-size:11px;transition:border-color .16s,background .16s}.edition-badge:hover{border-color:var(--primary-300);background:var(--primary-pale)}.header-actions{align-items:center;gap:3px;display:flex;position:relative}.header-actions>button{min-width:36px;height:36px;color:var(--el-text-regular);border-radius:var(--radius-control);background:0 0;border:0;justify-content:center;align-items:center;gap:8px;padding:0 9px;transition:background .16s,color .16s;display:inline-flex;position:relative}.header-actions>button:hover,.header-actions>button.active{color:var(--el-primary);background:var(--primary-pale)}.header-actions>button:active{transform:scale(.94)}.header-actions svg{width:17px}.header-actions i{color:#fff;background:var(--el-primary);border-radius:8px;min-width:14px;height:14px;padding:0 3px;font-size:11px;line-height:14px;position:absolute;top:1px;right:2px}.header-tool-panel{z-index:var(--z-header-panel);border:1px solid var(--el-border-light);border-radius:var(--radius-panel);width:340px;box-shadow:var(--shadow-pop);background:#fff;animation:.16s ease-out account-menu-in;position:absolute;top:calc(100% + 12px);right:166px;overflow:hidden}.header-tool-panel>header{border-bottom:1px solid var(--ink-50);background:var(--gray-25);align-items:center;gap:7px;min-height:52px;padding:0 15px;display:flex}.header-tool-panel>header strong{color:var(--ink-800);font-size:12px}.header-tool-panel>header small{color:var(--ink-500);font-size:11px}.header-tool-panel>header button{color:var(--el-info);background:0 0;border:0;margin-left:auto;font-size:11px}.header-global-search{border:1px solid var(--ink-100);border-radius:6px;align-items:center;gap:7px;height:38px;margin:12px;padding:0 10px;display:flex}.header-global-search:focus-within{border-color:var(--primary-400);box-shadow:0 0 0 3px #2467d117}.header-global-search svg{width:15px;color:var(--ink-500)}.header-global-search input{border:0;outline:0;flex:1;min-width:0}.header-search-results{max-height:300px;padding:0 7px 8px;overflow-y:auto}.header-search-results button{width:100%;min-height:48px;color:var(--ink-800);text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:1fr auto;align-items:center;gap:3px 8px;padding:7px 9px;display:grid}.header-search-results button:hover{color:var(--el-primary);background:var(--el-primary-pale)}.header-search-results span{font-weight:600}.header-search-results small{color:var(--ink-500);text-overflow:ellipsis;white-space:nowrap;grid-column:1;font-size:11px;overflow:hidden}.header-search-results svg{grid-area:1/2/3;width:14px}.header-notification-list{padding:7px}.header-notification-list>button{text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:8px 1fr auto;align-items:start;gap:9px;width:100%;min-height:62px;padding:10px 8px;display:grid}.header-notification-list>button:hover{background:var(--gray-25)}.header-notification-list>button>i{background:var(--el-success);width:7px;min-width:7px;height:7px;margin-top:5px;padding:0;position:static}.header-notification-list>button>i.warning{background:var(--el-warning)}.header-notification-list span{gap:5px;display:grid}.header-notification-list b{color:var(--ink-800);font-size:11px}.header-notification-list small,.header-notification-list em{color:var(--ink-500);font-size:11px;font-style:normal}.header-help-grid{grid-template-columns:1fr 1fr;gap:7px;padding:12px;display:grid}.header-help-grid button{border:1px solid var(--ink-100);color:#596574;background:var(--gray-25);text-align:left;border-radius:7px;align-items:center;gap:9px;min-height:66px;padding:9px;display:flex}.header-help-grid button:hover{color:var(--el-primary);border-color:var(--primary-200);background:var(--primary-pale)}.header-help-grid svg{flex:0 0 18px;width:18px}.header-help-grid span{gap:4px;display:grid}.header-help-grid b{font-size:11px}.header-help-grid small{color:var(--ink-500);font-size:11px}.header-shortcut-tip{border-top:1px solid var(--ink-50);color:var(--ink-600);background:var(--gray-25);margin:0;padding:10px 13px;font-size:11px}.account-menu-wrap{margin-left:12px;position:relative}.header-actions .hello{border-radius:var(--radius-control);height:36px;color:var(--ink-800);transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:#fff;border:1px solid #0000;align-items:center;gap:8px;padding:0 12px;display:flex}.header-actions .hello:hover,.header-actions .hello.active{color:var(--el-primary);border-color:var(--primary-200);background:var(--el-primary-pale)}.account-chevron{transition:transform .18s}.hello.active .account-chevron{transform:rotate(180deg)}.account-dropdown{z-index:var(--z-popover);border:1px solid var(--el-border-light);border-radius:var(--radius-panel);width:264px;box-shadow:var(--shadow-pop);background:#fff;padding:7px;animation:.16s ease-out account-menu-in;position:absolute;top:calc(100% + 9px);right:0;overflow:hidden}.account-dropdown:before{content:"";border-left:1px solid var(--ink-100);border-top:1px solid var(--ink-100);background:#fff;width:9px;height:9px;position:absolute;top:-5px;right:28px;transform:rotate(45deg)}.account-summary{border-bottom:1px solid var(--ink-50);background:var(--gray-25);align-items:center;gap:10px;margin:-7px -7px 6px;padding:14px;display:flex}.account-summary>span{color:#fff;background:linear-gradient(135deg, var(--primary-500), var(--primary-600));border-radius:10px;flex:0 0 36px;place-items:center;width:36px;height:36px;display:grid;box-shadow:0 4px 10px #2467d138}.account-summary svg{width:18px}.account-summary div{gap:4px;display:grid}.account-summary strong{color:var(--el-text-primary);font-size:12px}.account-summary small{color:var(--ink-500);font-size:11px}.account-dropdown>button{width:100%;min-height:52px;color:var(--ink-600);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:7px 9px;transition:all .16s;display:flex}.account-dropdown>button:hover{color:var(--el-primary);background:var(--primary-pale)}.account-dropdown>button>svg{flex:0 0 17px;width:17px}.account-dropdown>button>span{gap:3px;display:grid}.account-dropdown>button b{font-size:11px;font-weight:600}.account-dropdown>button small{color:var(--ink-500);font-size:11px}.account-dropdown>button.account-logout{border-top:1px solid var(--ink-50);color:var(--el-danger);border-radius:0 0 6px 6px;margin-top:4px}.account-dropdown>button.account-logout:hover{color:#fff;background:var(--el-danger)}.account-dropdown>button.account-logout:hover small{color:#ffffffbf}@keyframes account-menu-in{0%{opacity:0;transform:translateY(-5px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.logout-dialog{width:430px}.logout-dialog-content{align-items:center;gap:14px;padding:24px;display:flex}.logout-dialog-content>span{width:44px;height:44px;color:var(--el-danger);background:var(--primary-pale);border-radius:50%;flex:0 0 44px;place-items:center;display:grid}.logout-dialog-content svg{width:20px}.logout-dialog-content strong{color:var(--el-text-primary);font-size:13px}.logout-dialog-content p{color:var(--ink-600);margin:7px 0 0;font-size:11px}.el-button.danger-solid{color:#fff;border-color:var(--el-danger);background:var(--el-danger)}.signed-out-screen{background:radial-gradient(circle at 50% 30%,#fff 0,#f5f6f8 55%,#eceff3 100%);place-items:center;min-height:100vh;display:grid}.signed-out-screen section{border:1px solid var(--ink-100);background:#fff;border-radius:12px;justify-items:center;width:360px;padding:42px;display:grid;box-shadow:0 18px 50px #252d371f}.signed-out-screen section>span{color:#fff;background:linear-gradient(135deg, var(--primary-500), var(--primary-600));border-radius:18px;place-items:center;width:58px;height:58px;display:grid}.signed-out-screen svg{width:26px}.signed-out-screen h1{margin:20px 0 7px;font-size:20px}.signed-out-screen p{color:var(--ink-600);margin:0}.signed-out-screen button{color:#fff;background:var(--el-primary);border:0;border-radius:6px;height:38px;margin-top:24px;padding:0 24px}.login-split{background:#0f172a;grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-brand{color:#fff;background:linear-gradient(135deg,#0b1220 0%,#1e3a8a 100%);flex-direction:column;justify-content:space-between;padding:56px;display:flex}.login-brand-logo{letter-spacing:.4px;align-items:center;gap:10px;font-size:18px;font-weight:600;display:flex}.login-brand-logo>span{background:#3b82f6;border-radius:8px;place-items:center;width:32px;height:32px;font-size:16px;display:inline-grid}.login-brand h1{margin:0 0 16px;font-size:34px;font-weight:700;line-height:1.25}.login-brand p{max-width:420px;color:var(--ink-400);margin:0;font-size:15px;line-height:1.7}.login-brand footer{color:#94a3b8;gap:24px;font-size:12px;display:flex}.login-main{background:var(--gray-25);justify-content:center;align-items:center;display:flex}.login-card{background:#fff;border-radius:12px;width:380px;max-width:calc(100vw - 32px);padding:36px;box-shadow:0 10px 40px #0f172a14}.login-card h2{margin:0;font-size:22px}.login-card>p{color:#64748b;margin:6px 0 24px;font-size:13px}.login-error{border:1px solid var(--danger-border);color:#dc2626;background:var(--danger-pale);border-radius:6px;margin-bottom:12px;padding:8px 12px;font-size:13px}.login-card label{color:var(--el-text-primary);margin:8px 0 4px;font-size:13px;display:block}.login-card .el-input{border-radius:8px;width:100%;padding:10px 12px}.login-submit{width:100%;margin-top:20px;padding:10px;font-size:14px}.page-loading{min-height:100vh;color:var(--el-text-secondary);place-items:center;display:grid}.ops-content{padding:var(--space-gutter);gap:var(--space-grid);flex-direction:column;min-height:calc(100vh - 72px);display:flex}.ops-content>section{gap:var(--space-grid);flex-direction:column;flex:1 0 auto;display:flex}.ops-content>*,.ops-content>section>*{margin-block:0}.ops-content>section>.reference-panel{flex-direction:column;flex:auto;display:flex}.ops-content .reference-table-wrap{flex:auto}.system-flow-guide{border-bottom:1px solid var(--el-border-light);background:#fff;min-height:70px;padding:0 20px}.flow-guide-steps{scrollbar-width:none;grid-template-columns:minmax(130px,1fr) 26px minmax(130px,1fr) 26px minmax(130px,1fr) 26px minmax(130px,1fr) 26px minmax(130px,1fr) 26px minmax(130px,1fr);align-items:center;width:100%;min-width:0;display:grid;overflow-x:auto}.flow-guide-steps::-webkit-scrollbar{display:none}.flow-guide-steps>button{min-width:0;height:70px;color:var(--ink-800);text-align:left;background:0 0;border:0;justify-content:center;align-items:center;gap:12px;padding:0 10px;transition:color .18s;display:flex}.flow-guide-steps>button:hover{color:var(--primary-600)}.flow-guide-steps>button i{width:30px;height:30px;color:var(--primary-600);background:var(--primary-pale);font-family:var(--font-geist-mono), sans-serif;letter-spacing:0;border-radius:50%;flex:0 0 30px;place-items:center;font-size:15px;font-style:normal;font-weight:600;line-height:1;transition:color .18s,background .18s;display:grid;transform:none}.flow-guide-steps>button:hover i{color:#fff;background:var(--primary-600);transform:none}.flow-guide-steps>button span{gap:5px;min-width:0;display:grid}.flow-guide-steps b,.flow-guide-steps small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.flow-guide-steps b{font-size:14px;font-weight:600}.flow-guide-steps small{color:var(--ink-500);font-size:11px}.flow-guide-steps>svg{width:17px;height:17px;color:var(--ink-400);stroke-width:1.7px;place-self:center}.flow-guide-steps>button i{font-style:normal;transform:none}.flow-guide-steps>button:hover i{transform:scale(1.05)}@media (max-width:1100px){.system-flow-guide{padding:10px 12px}.flow-guide-steps{display:flex}.flow-guide-steps>button{min-width:170px}.flow-guide-steps>svg{flex:0 0 24px}}.device-enroll-dialog{width:min(560px,100vw - 40px)}.device-activation-code{border:1px dashed var(--primary-300);border-radius:var(--radius-card);color:var(--ink-600);background:var(--primary-pale);place-items:center;gap:7px;padding:17px;display:grid}.device-activation-code strong{color:var(--el-primary);font:700 26px var(--font-geist-mono);letter-spacing:5px}.device-activation-code small{color:var(--ink-500)}.reference-body{padding:var(--space-gutter);align-items:stretch;height:calc(100vh - 143px);min-height:0;display:flex}.subnav{width:150px;min-height:0;padding:var(--space-gutter);border-radius:var(--radius-panel);box-shadow:var(--shadow-card);background:#fff;flex:0 0 150px;align-self:stretch}.subnav h3{border-bottom:1px solid var(--el-border-light);height:50px;margin:0;padding:12px 10px;font-size:14px;font-weight:600}.subnav button{border-radius:var(--radius-control);width:100%;height:38px;color:var(--el-text-regular);text-align:left;transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);background:0 0;border:0;margin-bottom:2px;padding:0 12px}.subnav button:active{transform:scale(.97)}.subnav button:hover,.subnav button.active{color:var(--el-primary);background:var(--primary-pale)}.subnav button.active{border-right:0;font-weight:600}.panel-tabs{border-bottom:1px solid var(--el-border-light);display:flex}.panel-tabs button{color:var(--ink-500);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:10px 20px;font-size:13px;font-weight:400;transition:color .15s,border-color .15s;display:flex}.panel-tabs button:hover{color:var(--primary-600);background:var(--primary-pale)}.panel-tabs button.active{color:var(--primary-600);border-bottom-color:var(--primary-600);font-weight:600}.business-page{min-width:0;padding-left:var(--space-grid);flex-direction:column;flex:1;min-height:0;display:flex}.business-page>.business-heading,.business-page>.reference-stats{flex:none}.business-page>.reference-panel{flex-direction:column;flex:1;min-height:0;display:flex}.reference-panel>.reference-toolbar{flex:none}.reference-panel>.pagination{border-top:1px solid var(--el-border-light);flex:none}.reference-panel>.reference-table-wrap,.reference-panel>.operations-loading,.reference-panel>.monitor-healthy{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.reference-panel>.operations-loading,.reference-panel>.monitor-healthy{justify-content:center}.home-overview-body{align-items:stretch;height:calc(100vh - 143px);min-height:0;overflow:hidden}.home-overview-body .subnav,.home-overview-body .business-page{height:100%;min-height:0;overflow:hidden}.home-overview-body .dashboard-workspace{gap:var(--space-grid);flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.home-overview-body .dashboard-overview-cards{flex:none;margin:0}.home-overview-body .dashboard-grid{flex:1;min-height:0}.home-overview-body .dashboard-map-panel{flex-direction:column;height:100%;margin-top:0;display:flex}.home-overview-body .dashboard-map-panel .device-map{flex:1;height:100%;min-height:0}.business-heading{height:60px;padding:0 var(--space-pad);border-radius:var(--radius-panel);box-shadow:var(--shadow-xs);background:#fff;justify-content:space-between;align-items:center;display:flex}.business-heading h1{letter-spacing:.2px;margin:0;font-size:20px;font-weight:600}.batch-bar{z-index:var(--z-dialog);border:1px solid var(--el-border-light);border-radius:var(--radius-panel);box-shadow:var(--shadow-pop);background:#fffffff7;align-items:center;gap:8px;padding:9px 14px;animation:.18s dialog-in;display:flex;position:fixed;bottom:22px;left:50%}.batch-bar-count{color:var(--el-text-primary);margin-right:4px;font-size:13px;font-weight:600}.panel-title{align-items:center;gap:8px;display:flex}.panel-title svg{flex:none;width:17px;height:17px}.upload-dropzone{border:1px dashed var(--ink-300);border-radius:var(--radius-card);color:var(--ink-600);background:var(--gray-25);cursor:pointer;text-align:left;justify-content:center;align-items:center;gap:12px;margin-bottom:10px;padding:18px;transition:border-color .18s,background .18s;display:flex}.upload-dropzone:hover,.upload-dropzone:focus-visible,.upload-dropzone.active{border-color:var(--el-primary);background:var(--primary-pale)}.upload-dropzone svg{width:22px;height:22px;color:var(--el-primary)}.upload-dropzone div{gap:3px;display:grid}.upload-dropzone b{color:var(--el-text-primary);font-size:13px}.upload-dropzone small{color:var(--ink-500);font-size:11px}.business-heading p{color:var(--el-text-secondary);margin:4px 0 0;font-size:13px}.panel-hint{font-size:12px}.toolbar-count,.cell-muted{color:var(--gray-400);font-size:12px}.load-error-banner{background:var(--danger-pale);color:var(--el-danger);border-radius:8px;margin:0 0 10px;padding:8px 10px;font-size:12px}.group-publish-button{background:var(--primary-600);border-color:var(--primary-600)}.group-publish-button:hover{background:var(--primary-700);border-color:var(--primary-700)}.el-button{border:1px solid var(--el-border);border-radius:var(--radius-control);height:32px;color:var(--el-text-regular);touch-action:manipulation;transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);white-space:nowrap;background:#fff;justify-content:center;align-items:center;gap:5px;padding:0 14px;display:inline-flex}.el-button:focus-visible{outline:none;box-shadow:0 0 0 3px #2467d124}.el-button:active:not(:disabled){box-shadow:none;transform:translateY(1px)}.el-button:hover{color:var(--el-primary);border-color:var(--primary-200);background:var(--el-primary-pale)}.el-button.primary{color:#fff;border-color:var(--el-primary);background:var(--el-primary);box-shadow:0 1px 2px #2467d12e}.el-button.primary:hover{color:#fff;border-color:var(--el-primary-hover);background:var(--el-primary-hover)}.el-button.xs{border-radius:var(--radius-control);gap:4px;height:28px;padding:0 10px;font-size:12px}.el-button.xs svg{width:13px;height:13px}.el-button.xs:disabled{color:var(--ink-400);background:var(--gray-25)}.el-input,.el-select,.el-textarea{min-height:var(--el-h-control);border:1px solid var(--el-border);border-radius:var(--radius-control);color:var(--el-text-regular);background:#fff;outline:0;padding:6px 10px;transition:border-color .16s,box-shadow .16s}.el-input,.el-select{height:var(--el-h-control);box-sizing:border-box;padding-block:0}.el-input:focus,.el-select:focus,.el-textarea:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #2467d11a}.el-input::placeholder,.el-textarea::placeholder{color:var(--ink-500)}.el-textarea{resize:vertical;min-height:76px}.filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-row .el-input,.filter-row .el-select{width:170px}.kpi-card{border-radius:var(--radius-panel);box-shadow:var(--shadow-card);background:#fff;align-items:center;gap:12px;padding:14px 18px;display:flex;position:relative;overflow:hidden}.card-motif{width:76px;height:76px;color:var(--ink-300);opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;bottom:-16px;right:-14px;transform:rotate(45deg)}.kpi-card:hover .card-motif,.reference-stats article:hover .card-motif,.overview-card:hover .card-motif,.template-summary article:hover .card-motif{opacity:.78}.kpi-card small{color:var(--el-text-secondary);margin-bottom:4px;font-size:12px;display:block}.kpi-card strong{font-variant-numeric:tabular-nums;letter-spacing:-.2px;font-size:24px;font-weight:600;display:block}.kpi-card .hint{color:var(--el-text-secondary);font-size:11px}.el-button svg{width:14px;height:14px}.reference-stats{gap:var(--space-grid);margin:var(--space-grid) 0;grid-template-columns:repeat(4,1fr);display:grid}.reference-stats article{border-radius:var(--radius-panel);height:86px;box-shadow:var(--shadow-card);background:#fff;align-items:center;gap:14px;padding:0 18px;transition:box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.reference-stats article:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.reference-stats--6{grid-template-columns:repeat(6,1fr)}.ops-grid{gap:var(--space-grid);grid-template-columns:1fr 1fr;display:grid}.stat-icon{border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.stat-icon svg{width:20px}.stat-icon.c0{color:var(--el-info);background:var(--primary-pale)}.stat-icon.c1{color:var(--el-success);background:var(--success-pale)}.stat-icon.c2{color:var(--el-warning);background:var(--warning-pale)}.stat-icon.c3{color:var(--el-text-secondary);background:var(--ink-50)}.stat-icon.c4{color:var(--el-danger);background:var(--danger-pale)}.reference-stats small,.reference-stats strong{display:block}.reference-stats small{color:var(--el-text-secondary);margin-bottom:4px;font-size:12px}.reference-stats strong{font-variant-numeric:tabular-nums;letter-spacing:-.2px;font-size:24px;font-weight:600}.filterable-stats article{cursor:pointer;outline:none;position:relative}.filterable-stats article:focus-visible{box-shadow:0 0 0 3px #2467d138}.filterable-stats article.active-filter{box-shadow:inset 0 -2px var(--primary-600), var(--shadow-card-hover)}.filterable-stats article em{color:var(--ink-400);font-size:11px;font-style:normal;position:absolute;top:12px;right:16px}.filterable-stats article.active-filter em{color:var(--primary-600)}.reference-panel{border-radius:var(--radius-panel);box-shadow:var(--shadow-card);background:#fff}.reference-toolbar{height:58px;padding:0 var(--space-pad);border-bottom:1px solid var(--el-border-light);flex:0 0 58px;align-items:center;gap:8px;display:flex}.search-box{border:1px solid var(--el-border);border-radius:var(--radius-control);align-items:center;gap:7px;width:260px;height:32px;padding:0 10px;transition:border-color .16s,box-shadow .16s;display:flex}.search-box:focus-within{border-color:var(--primary-500);box-shadow:0 0 0 3px #2467d11a}.search-box svg{width:14px;color:var(--ink-400)}.search-box input{background:0 0;border:0;outline:0;width:100%}.toolbar-spacer{flex:1}.selected-count{color:var(--el-primary)}.reference-table-wrap{overflow:auto}.reference-table{border-collapse:collapse;background:#fff;width:100%;min-width:850px}.reference-table .el-input,.reference-table .el-select{height:28px;min-height:28px;padding:0 8px;font-size:12px}.reference-table th{height:44px;color:var(--el-text-secondary);background:var(--ink-50);border-bottom:1px solid var(--el-border-light);text-align:left;letter-spacing:.2px;padding:0 12px;font-size:12px;font-weight:500}.reference-table td{height:50px;color:var(--el-text-regular);border-bottom:1px solid var(--el-border-light);white-space:nowrap;padding:0 12px;font-size:13px}.reference-table tbody tr{transition:background .2s}.reference-table tbody tr:hover{background:var(--ink-50)}.reference-table input[type=checkbox]{accent-color:var(--el-primary)}.check-col{width:42px}.green-state,.red-state,.orange-state,.gray-state{border-radius:var(--radius-control);padding:2px 9px;font-size:12px;font-weight:500;line-height:18px;display:inline-block}.green-state{color:var(--emerald-700);background:var(--success-pale)}.red-state{color:var(--red-600);background:var(--danger-pale)}.orange-state{color:var(--amber-700);background:var(--warning-pale)}.gray-state{color:var(--el-text-secondary);background:var(--ink-50)}.link-button,.dots{color:var(--primary-600);background:0 0;border:0;padding:0 5px}.link-button{cursor:pointer;align-items:center;gap:3px;font-size:12px;display:inline-flex}.link-button.danger{color:var(--el-danger)}.link-button:hover{color:var(--primary-700)}.dots svg{vertical-align:middle;width:16px}.pagination{height:54px;padding:0 var(--space-pad);justify-content:flex-end;align-items:center;gap:5px;display:flex}.pagination span{color:var(--el-text-regular);margin-right:8px}.pagination button{border-radius:var(--radius-control);min-width:28px;height:28px;color:var(--el-text-regular);background:var(--ink-50);transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);border:0}.pagination button:active:not(:disabled){transform:scale(.92)}.pagination button:hover{color:var(--primary-600);background:var(--primary-pale)}.pagination button.active{color:#fff;background:var(--el-primary)}.pagination select{border:1px solid var(--el-border);border-radius:3px;height:28px;margin-left:5px}.empty-state{height:220px;color:var(--ink-500);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state svg{width:40px;height:40px;color:var(--ink-300)}.empty-state button{color:var(--el-info);background:0 0;border:0}.empty-state p{margin:12px 0 0}.asset-grid .empty-state{grid-column:1/-1}.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}.skip-link{width:1px;height:1px;position:absolute;top:auto;left:-9999px;overflow:hidden}.skip-link:focus{width:auto;height:auto;z-index:var(--z-wizard);background:var(--ink-chrome);color:#fff;border-radius:4px;padding:8px 16px;text-decoration:none;top:12px;left:12px}.dialog-mask{z-index:var(--z-dialog);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a73;place-items:center;animation:.2s mask-in;display:grid;position:fixed;inset:0}.reference-dialog{border-radius:var(--radius-panel);width:min(520px,100vw - 32px);box-shadow:var(--shadow-pop);background:#fff;animation:.25s dialog-in}.reference-dialog header,.reference-dialog footer{align-items:center;min-height:56px;padding:0 20px;display:flex}.reference-dialog header{border-bottom:1px solid var(--el-border-light);justify-content:space-between}.reference-dialog header h2{margin:0;font-size:16px;font-weight:600}.reference-dialog header button{background:0 0;border:0}.reference-dialog header svg{width:18px;color:var(--el-text-secondary)}.reference-dialog footer{border-top:1px solid var(--el-border-light);justify-content:flex-end;gap:8px}.dialog-sm{width:min(420px,100vw - 32px)}.dialog-lg{width:min(640px,100vw - 32px)}.dialog-content{gap:18px;padding:22px 26px;display:grid}.dialog-content label{color:var(--el-text-regular);background:0 0;border-radius:0;grid-template-columns:90px 1fr;align-items:center;padding:0;font-size:12px;display:grid}.dialog-content input,.dialog-content select,.dialog-content textarea{border:1px solid var(--el-border);border-radius:4px;outline:0;min-height:34px;padding:7px 10px}.dialog-content textarea{resize:vertical;min-height:76px}.detail-grid{grid-template-columns:90px 1fr;gap:16px;display:grid}.detail-grid span{color:var(--el-text-secondary)}.branding-dialog{width:min(560px,100vw - 32px)}.branding-editor{gap:18px;padding:22px 26px 26px;display:grid}.branding-preview{border:1px solid var(--el-border-light);background:var(--gray-25);border-radius:7px;align-items:center;gap:16px;min-height:82px;padding:14px 18px;display:flex}.branding-preview>div{color:#fff;background:var(--el-primary);border-radius:10px;flex:none;place-items:center;width:52px;height:52px;display:grid;overflow:hidden}.branding-preview>div span{border:2px solid #fff;border-radius:8px;place-items:center;width:32px;height:32px;font-size:17px;font-weight:700;display:grid}.branding-preview img{object-fit:contain;width:100%;height:100%}.branding-preview section{gap:6px;display:grid}.branding-preview b{color:var(--el-text-primary);font-size:14px}.branding-preview section>span{color:var(--ink-600);font-size:11px}.branding-preview small{color:var(--ink-500)}.branding-editor>label,.branding-upload,.tenant-edition-readonly{color:var(--el-text-regular);grid-template-columns:90px 1fr;align-items:center;row-gap:5px;display:grid}.branding-editor input{border:1px solid var(--el-border);border-radius:4px;outline:0;min-height:36px;padding:7px 10px}.branding-editor input:focus{border-color:var(--primary-400);box-shadow:0 0 0 2px #2467d114}.branding-editor label>small,.branding-upload>small{color:var(--ink-500);grid-column:2}.branding-upload>div{flex-wrap:wrap;gap:8px;display:flex}.branding-upload .el-button svg{width:14px}.tenant-edition-readonly>div{border:1px solid var(--ink-100);background:var(--gray-25);border-radius:5px;align-items:center;gap:10px;min-height:46px;padding:8px 11px;display:flex}.tenant-edition-readonly b{color:var(--primary-600);background:var(--primary-pale);border-radius:10px;padding:4px 9px;font-size:11px}.tenant-edition-readonly small{color:var(--ink-600)}.reference-notice{z-index:var(--z-overlay);color:var(--emerald-700);background:var(--success-pale);border:1px solid var(--success-border);border-radius:var(--radius-card);box-shadow:var(--shadow-pop);align-items:center;gap:8px;padding:11px 18px;animation:.24s notice-in;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%)}.reference-notice svg{width:16px}@keyframes nav-indicator-in{0%{opacity:0;transform:translateY(-50%)scaleY(.2)}to{opacity:1;transform:translateY(-50%)scaleY(1)}}@keyframes nav-pop{0%{transform:scale(1)}40%{transform:scale(1.16)}to{transform:scale(1)}}@keyframes mask-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(-18px)}}@keyframes notice-in{0%{opacity:0;transform:translate(-50%,-10px)}}@media (max-width:1280px){.reference-stats{grid-template-columns:1fr 1fr}}@media (max-width:1024px){.reference-main{margin-left:0}.reference-sidebar{box-shadow:none;transform:translate(-100%)}.reference-shell.drawer-open .reference-sidebar{transform:none;box-shadow:3px 0 12px #161c243d}.sidebar-backdrop{display:none}.reference-shell.drawer-open .sidebar-backdrop{z-index:var(--z-sidebar-backdrop);background:#00000059;animation:.2s mask-in;display:block;position:fixed;inset:0}.subnav{scrollbar-width:none;flex:none;align-items:center;gap:2px;width:auto;padding:6px;display:flex;overflow-x:auto}.subnav::-webkit-scrollbar{display:none}.subnav h3{display:none}.subnav button{white-space:nowrap;border-radius:3px;width:auto;height:32px;padding:0 12px}.subnav button.active{border-right:0}.business-page{flex-direction:column;padding-left:0}.reference-body{flex-direction:column;height:auto}}@media (max-width:768px){.reference-toolbar{height:auto;min-height:58px;padding:12px var(--space-pad);flex:none}.business-heading{height:auto;min-height:0;padding:12px var(--space-pad);flex-direction:column;align-items:stretch;gap:10px}.business-heading>div{min-width:0}.ops-grid{grid-template-columns:1fr}.ops-donut-row{flex-direction:column;align-items:flex-start!important;gap:12px!important}.reference-stats--6{grid-template-columns:1fr 1fr}.business-heading h1{font-size:17px}.heading-actions{width:100%}.heading-actions .el-button{flex:1}.subnav{display:none}.reference-header{padding:0 12px}.reference-body,.ops-content{padding:8px}.login-split{grid-template-columns:1fr}.login-brand{gap:28px;padding:32px 24px}.login-brand h1{font-size:26px}.reference-toolbar{flex-wrap:wrap}.toolbar-spacer{display:none}.filter-row{flex-direction:column;align-items:stretch}.filter-row .el-input,.filter-row .el-select{width:100%}.reference-dialog{width:calc(100vw - 24px)}.reference-stats{grid-template-columns:1fr 1fr;gap:8px}.reference-stats article{height:auto;padding:12px 14px}.kpi-card{padding:12px 14px}table.reference-table:has(tbody td[data-label]){min-width:0}table.reference-table:has(tbody td[data-label]) thead{display:none}table.reference-table:has(tbody td[data-label]) tbody tr{border:1px solid var(--el-border-light);background:#fff;border-radius:6px;margin:0 8px 10px;display:block;overflow:hidden}table.reference-table:has(tbody td[data-label]) tbody td{white-space:normal;text-align:right;border-bottom:1px dashed var(--el-border-light);justify-content:space-between;align-items:baseline;gap:12px;height:auto;min-height:40px;padding:8px 12px;display:flex}table.reference-table:has(tbody td[data-label]) tbody td[data-label]:before{content:attr(data-label);color:var(--el-text-secondary);flex:none;font-size:12px}table.reference-table:has(tbody td[data-label]) tbody td[colspan]{text-align:center;border-bottom:0;justify-content:center}table.reference-table:has(tbody td[data-label]) tbody tr:last-child td:last-child{border-bottom:0}}@media (max-width:480px){.reference-body{padding:6px}.reference-stats{grid-template-columns:1fr}.reference-stats.reference-stats--6{grid-template-columns:1fr 1fr}.reference-dialog header,.reference-dialog footer{min-height:48px;padding:0 14px}.dialog-content{padding:16px}.system-identity>span,.system-identity>i{display:none}.company-identity-button{max-width:120px;font-size:15px}.header-actions .hello b{display:none}.ops-content{padding:6px}}.layout-management{min-height:100%;padding:var(--space-pad);border-radius:var(--radius-panel);gap:var(--space-grid);background:#fff;flex-direction:column;display:flex}.layout-management>.reference-panel{flex-direction:column;flex:1;min-height:0;display:flex}.layout-info{padding:var(--space-pad) 20px;color:var(--el-text-regular);background:var(--primary-pale);border:1px solid var(--primary-200);border-radius:var(--radius-card);justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.layout-info strong{color:var(--el-primary)}.layout-info p{margin:6px 0 0;line-height:1.6}.layout-tabs{border-bottom:1px solid var(--el-border-light);align-items:center;gap:26px;height:48px;display:flex}.layout-tabs button{height:48px;color:var(--el-text-regular);background:0 0;border:0;font-size:13px;transition:color .16s;position:relative}.layout-tabs button:hover{color:var(--primary-600)}.layout-tabs button.active{color:var(--primary-600);font-weight:600}.layout-tabs button.active:after{content:"";background:var(--primary-600);border-radius:1px;height:2px;position:absolute;bottom:0;left:0;right:0}.layout-card-grid{gap:var(--space-grid);padding-top:var(--space-pad);grid-template-columns:repeat(3,minmax(230px,1fr));display:grid}.layout-card{background:var(--gray-25);border:1px solid var(--el-border-light);border-radius:var(--radius-card);min-width:0;padding:12px}.layout-card-top{height:36px;color:var(--ink-600);white-space:nowrap;justify-content:space-between;gap:10px;font-size:11px;display:flex}.layout-card-top b{color:var(--ink-600);font-weight:400}.layout-cover{border:0;width:100%;height:180px;padding:10px;position:relative;overflow:hidden;box-shadow:0 1px 2px #17202d24,0 6px 18px #17202d1a}.layout-cover.portrait{width:110px;margin:0 auto}.cover-slot{color:#ffffffb3;background:#ffffff17;border:1px dashed #ffffff80;place-items:center;font-size:11px;display:grid;position:absolute}.cover-slot.main{inset:12px 38% 12px 12px}.cover-slot.side{inset:12px 12px 12px 66%}.layout-card-meta{height:34px;color:var(--ink-600);justify-content:space-between;align-items:center;display:flex}.layout-controls{border-top:1px solid var(--el-border-light);flex-wrap:wrap;gap:7px;padding-top:8px;display:flex}.layout-controls button{color:var(--el-info);background:0 0;border:0;font-size:11px}.layout-editor{z-index:var(--z-editor);background:var(--ink-50);flex-direction:column;display:flex;position:fixed;inset:0}.editor-header{height:58px;padding:0 var(--space-pad);color:var(--editor-text);background:var(--editor-bg);border-bottom:1px solid var(--editor-border);flex:0 0 58px;align-items:center;gap:14px;display:flex}.editor-header button{border:1px solid var(--editor-border);border-radius:var(--radius-control);height:32px;color:var(--editor-text);background:var(--editor-surface);align-items:center;gap:5px;padding:0 11px;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.editor-header button:hover{background:var(--editor-surface-hover)}.editor-header button.primary{color:#fff;border-color:var(--el-primary);background:var(--el-primary);box-shadow:0 1px 2px #0000003d}.editor-header button.primary:hover{background:var(--primary-500)}.editor-header button:disabled{opacity:.35}.editor-header svg{width:15px}.editor-back{flex:none}.editor-header>input{width:220px;height:32px;color:var(--editor-text);background:var(--editor-inset);border:1px solid var(--editor-border);border-radius:var(--radius-control);outline:0;padding:0 11px;transition:border-color .16s,box-shadow .16s}.editor-header>input:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #2467d138}.editor-resolution{color:var(--editor-muted);align-items:center;gap:6px;display:flex;position:relative}.editor-resolution svg{width:15px}.editor-resolution select{border:1px solid var(--editor-border);border-radius:var(--radius-control);width:142px;height:32px;color:var(--editor-text);background:var(--editor-inset);cursor:pointer;outline:0;padding:0 30px 0 10px;transition:border-color .16s}.editor-resolution select:hover,.editor-resolution select:focus{border-color:var(--primary-400)}.custom-resolution-popover{z-index:40;width:340px;padding:var(--space-pad);border:1px solid var(--editor-border);border-radius:var(--radius-panel);color:var(--editor-text);background:var(--editor-surface);grid-template-columns:1fr 16px 1fr;align-items:end;gap:8px;display:grid;position:absolute;top:42px;left:20px;box-shadow:0 12px 30px #0a0f1661}.custom-resolution-popover strong{grid-column:1/-1;margin-bottom:3px;font-size:12px}.custom-resolution-popover label{color:var(--editor-muted);gap:5px;font-size:11px;display:grid}.custom-resolution-popover input{border:1px solid var(--editor-border);border-radius:var(--radius-control);width:100%;height:30px;color:var(--editor-text);background:var(--editor-inset);outline:0;padding:0 8px}.custom-resolution-popover>span{text-align:center;padding-bottom:9px}.custom-resolution-popover button{color:#fff;border-color:var(--el-primary);background:var(--el-primary);justify-content:center;height:30px}.custom-resolution-popover button.cancel{color:var(--editor-text);border-color:var(--editor-border);background:var(--editor-surface-hover)}.editor-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.editor-actions__group{gap:4px;display:flex}.editor-sep{background:var(--editor-border);width:1px;height:20px;margin:0 4px}.editor-body{flex:1;grid-template-columns:188px minmax(500px,1fr) 260px;min-height:0;display:grid}.component-library,.property-panel{background:#fff;min-height:0;overflow-y:auto}.component-library{border-right:1px solid var(--el-border-light);background:var(--gray-25);flex-direction:column;display:flex}.library-heading{min-height:52px;padding:0 var(--space-pad);color:var(--el-text-primary);border-bottom:1px solid var(--el-border-light);background:#fff;flex-direction:column;justify-content:center;gap:4px;display:flex}.library-heading>div{align-items:center;gap:7px;display:flex}.library-heading strong{font-size:13px;font-weight:600}.library-heading svg{width:15px;color:var(--el-primary)}.library-heading small{color:var(--ink-500);font-size:11px}.library-heading--pages{flex-direction:row;justify-content:space-between;align-items:center;min-height:52px;margin-top:6px;margin-bottom:18px}.library-heading--pages small{color:var(--ink-600);background:var(--ink-50);border-radius:10px;padding:3px 7px}.component-library h3,.layers-panel h3{border-bottom:1px solid var(--el-border-light);align-items:center;gap:6px;height:44px;margin:0;padding:0 14px;font-size:13px;font-weight:500;display:flex}.library-grid{padding:0 var(--space-grid) 4px;grid-template-columns:1fr 1fr;gap:8px;display:grid}.library-group{padding-top:4px}.library-group__title{padding:10px var(--space-grid) 6px;color:var(--ink-500);font-size:11px}.library-grid button{border:1px solid var(--el-border-light);border-radius:var(--radius-card);height:78px;color:var(--ink-800);box-shadow:var(--shadow-xs);background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:0 0 12px;transition:border-color .18s,box-shadow .18s,color .18s,transform .18s;display:flex;position:relative}.library-grid button:hover{z-index:1;color:var(--el-primary);border-color:var(--primary-300);transform:translateY(-2px);box-shadow:0 5px 14px #2467d121}.library-grid button:active{transform:translateY(0)scale(.97);box-shadow:0 2px 6px #2467d11a}.library-grid button[draggable=true]{cursor:grab}.library-grid button[draggable=true]:active{cursor:grabbing}.library-grid button em{color:var(--ink-500);opacity:0;font-size:11px;font-style:normal;transition:opacity .16s,transform .16s;position:absolute;inset:auto 0 5px;transform:translateY(2px)}.library-grid button:hover em{opacity:1;transform:translateY(0)}.library-icon{border-radius:var(--radius-control);width:32px;height:32px;color:var(--primary-600);background:var(--primary-pale);place-items:center;transition:all .18s;display:grid}.library-grid button:hover .library-icon{color:#fff;background:var(--primary-600)}.library-grid svg{width:17px}.page-thumb{width:calc(100% - 24px);min-height:76px;margin:var(--space-grid);text-align:left;border:1px solid var(--primary-300);border-radius:var(--radius-card);color:var(--ink-800);box-shadow:var(--shadow-xs);background:#fff;grid-template-columns:60px 1fr;align-items:center;gap:10px;padding:9px;display:grid;position:relative}.page-preview-mini{border:2px solid var(--primary-600);background:var(--ink-50);border-radius:4px;width:60px;height:42px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff}.page-preview-mini span{background:#90a5bd;border-radius:1px;position:absolute}.page-preview-mini span:first-child{inset:4px 23px 4px 4px}.page-preview-mini span:nth-child(2){background:#b6c8df;inset:4px 4px 21px 41px}.page-preview-mini span:nth-child(3){background:#334256;inset:23px 4px 4px 41px}.page-thumb-copy{gap:4px;min-width:0;display:grid}.page-thumb-copy b{font-size:11px;font-weight:600}.page-thumb-copy small{color:var(--ink-500);font-size:11px}.page-thumb em{color:var(--el-primary);background:var(--primary-pale);border-radius:8px;padding:2px 5px;font-size:11px;font-style:normal;position:absolute;top:6px;right:7px}.add-page{border:1px dashed var(--el-border);width:calc(100% - 24px);height:38px;color:var(--ink-600);background:#ffffffb8;border-radius:6px;justify-content:center;align-items:center;gap:6px;margin:0 12px 12px;transition:all .18s;display:flex}.add-page:hover{color:var(--el-primary);border-color:var(--primary-300);background:#fff}.add-page svg{width:15px}.canvas-workspace{flex-direction:column;min-width:0;display:flex;overflow:hidden}.canvas-toolbar{height:44px;padding:0 var(--space-pad);background:var(--editor-bg);border-bottom:1px solid var(--editor-border);flex:0 0 44px;justify-content:space-between;align-items:center;gap:4px;display:flex}.canvas-toolbar__group{align-items:center;gap:4px;display:flex}.canvas-toolbar__group--center{justify-content:center}.canvas-toolbar__status{color:var(--editor-muted);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:8px;font-size:11px;display:flex}.canvas-toolbar__status i{background:var(--editor-border);width:1px;height:12px}.canvas-toolbar button{width:32px;height:32px;color:var(--editor-muted);border-radius:var(--radius-control);background:0 0;border:0;place-items:center;transition:background .16s,color .16s;display:grid}.canvas-toolbar button:hover:not(:disabled){color:#fff;background:var(--editor-surface-hover)}.canvas-toolbar button:disabled{opacity:.3;cursor:not-allowed}.canvas-toolbar svg{width:16px}.canvas-toolbar span{width:52px;color:var(--editor-text);font-variant-numeric:tabular-nums;text-align:center;font-size:12px}.canvas-toolbar i{background:var(--editor-border);width:1px;height:20px;margin:0 8px}.canvas-toolbar button.tool-text{color:var(--editor-muted);font-size:11px;font-weight:600}.canvas-toolbar button.tool-text:hover:not(:disabled){color:#fff}.canvas-scroll{background-color:var(--el-border);background-image:linear-gradient(#8b97a452 1px,#0000 1px),linear-gradient(90deg,#8b97a452 1px,#0000 1px),linear-gradient(#fff3 1px,#0000 1px),linear-gradient(90deg,#fff3 1px,#0000 1px);background-size:20px 20px,20px 20px,100px 100px,100px 100px;flex:1;justify-content:flex-start;align-items:flex-start;min-height:0;padding:24px;display:flex;position:relative;overflow:auto}.canvas-empty{color:var(--ink-400);text-align:center;pointer-events:none;place-content:center;justify-items:center;gap:8px;display:grid;position:absolute;inset:0}.canvas-empty svg{color:var(--ink-300)}.canvas-empty strong{color:var(--ink-600);font-size:14px;font-weight:600}.canvas-empty span{font-size:12px}.canvas-statusbar{height:28px;padding:0 var(--space-pad);color:var(--editor-muted);background:var(--editor-bg);border-top:1px solid var(--editor-border);white-space:nowrap;flex:0 0 28px;align-items:center;gap:10px;font-size:11px;display:flex}.canvas-statusbar i{background:var(--editor-border);width:1px;height:12px}.canvas-statusbar__sel{color:var(--editor-text);text-overflow:ellipsis;margin-left:auto;overflow:hidden}.canvas-ruler{z-index:0;pointer-events:none;position:absolute}.canvas-ruler.top{height:1px;inset:0 0 auto}.canvas-ruler.left{width:1px;inset:0 auto 0 0}.layout-canvas{background:#fff;flex:none;margin:auto;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff6b,0 4px 12px #0a162829,0 18px 42px #0a16283d}.layout-canvas.drop-active{box-shadow:0 0 0 3px var(--el-primary-hover), 0 10px 32px #252d374d}.layout-canvas.drop-active:after{content:"松开以添加到画布";z-index:20;color:var(--el-danger);letter-spacing:1px;pointer-events:none;background:#fff7f6b8;border:2px dashed #2467d1b8;place-items:center;font-size:18px;font-weight:600;display:grid;position:absolute;inset:10px}.canvas-scale{transform-origin:0 0;background:var(--gray-25);position:absolute;top:0;left:0;overflow:hidden}.canvas-element{cursor:move;-webkit-user-select:none;user-select:none;touch-action:none;justify-content:center;align-items:center;display:flex;position:absolute;overflow:hidden}.canvas-element.selected{z-index:2;box-shadow:0 0 0 1px white, 0 0 0 2px var(--el-primary)}.canvas-element.type-slot{background-image:linear-gradient(45deg,#fff3 25%,#0000 25% 75%,#fff3 75%),linear-gradient(45deg,#fff3 25%,#0000 25% 75%,#fff3 75%);background-position:0 0,10px 10px;background-size:20px 20px}.canvas-element.type-button{font-weight:600;box-shadow:0 3px 10px #26303d24}.canvas-element.type-button .button-image{object-fit:cover;pointer-events:none;width:100%;height:100%}.canvas-element .element-media{object-fit:contain;pointer-events:none;width:100%;height:100%}.element-name{pointer-events:none;text-align:center}.resize-handle{background:var(--el-info);cursor:nwse-resize;pointer-events:auto;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;bottom:3px;right:3px;box-shadow:0 1px 4px #0003}.lock-mark{width:14px;position:absolute;top:6px;right:6px}.alignment-guide{z-index:12;color:#ff4f70;pointer-events:none;background:currentColor;position:absolute;box-shadow:0 0 0 .5px #ffffffb3}.alignment-guide.canvas{color:#2f8cff}.alignment-guide.x{width:1px;top:0;bottom:0}.alignment-guide.y{height:1px;left:0;right:0}.alignment-guide span{color:#fff;background:currentColor;border-radius:3px;min-width:max-content;padding:2px 5px;font-size:11px;line-height:14px;position:absolute;box-shadow:0 2px 6px #00000024}.alignment-guide.x span{top:4px;left:4px}.alignment-guide.y span{top:4px;left:4px;transform:translateY(-100%)}.property-panel{border-left:1px solid var(--el-border-light);background:var(--gray-25)}.property-tabs{border-bottom:1px solid var(--el-border-light);background:#fff;flex:0 0 44px;gap:4px;height:44px;padding:6px;display:flex}.property-tabs button{border-radius:var(--radius-control);height:32px;color:var(--ink-600);transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;border:0;flex:1;justify-content:center;align-items:center;gap:6px;display:flex;position:relative}.property-tabs button:hover{color:var(--ink-800);background:var(--gray-25)}.property-tabs button.active{color:var(--primary-600);background:var(--primary-pale);box-shadow:inset 0 0 0 1px var(--primary-200);font-weight:600}.property-tabs svg{width:14px}.property-form{padding:var(--space-pad);border-bottom:1px solid var(--el-border-light);background:#fff;gap:12px;display:grid}.property-form label{color:var(--ink-600);background:0 0;gap:6px;padding:0;font-size:11px;font-weight:500;display:grid}.property-form input,.property-form select{border:1px solid var(--el-border);border-radius:var(--radius-control);min-width:0;height:34px;color:var(--ink-800);background:#fff;outline:0;padding:0 10px;transition:border-color .18s,box-shadow .18s,background .18s}.property-form input:hover,.property-form select:hover{border-color:var(--ink-300)}.property-form input:focus,.property-form select:focus{border-color:var(--primary-400);background:#fff;box-shadow:0 0 0 3px #2467d11a}.property-section-title{min-width:0;color:var(--el-text-primary);justify-content:space-between;align-items:center;margin:-2px 0 1px;display:flex}.property-section-title:before{content:"";background:var(--primary-600);border-radius:2px;width:3px;height:13px;margin-right:7px}.property-section-title span{margin-right:auto;font-size:12px;font-weight:600}.property-section-title small{max-width:130px;color:var(--ink-600);background:var(--ink-50);border-radius:var(--radius-control);text-overflow:ellipsis;white-space:nowrap;padding:3px 8px;font-size:11px;overflow:hidden}.property-section-title.compact{border-top:1px solid var(--ink-50);margin-top:4px;padding-top:12px}.property-row{grid-template-columns:1fr 1fr;gap:9px;display:grid}.number-field{display:block;position:relative}.number-field input{width:100%;padding-right:26px}.number-field>i{color:var(--ink-500);pointer-events:none;font-size:11px;font-style:normal;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.number-field.static{border:1px solid var(--el-border);border-radius:var(--radius-control);background:var(--gray-25);align-items:center;height:34px;padding:0 10px;display:flex}.number-field.static b{color:var(--ink-600);font-size:11px;font-weight:500}.color-field{border:1px solid var(--el-border);border-radius:var(--radius-control);background:var(--gray-25);align-items:center;gap:7px;height:34px;padding:4px 7px;display:flex}.color-field input[type=color]{width:24px;height:24px;box-shadow:0 0 0 1px var(--el-border);cursor:pointer;background:#fff;border:0;border-radius:5px;flex:0 0 24px;padding:2px}.color-field i{color:var(--ink-600);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;overflow:hidden}.color-field.wide i{font-size:11px}.property-form .range-field{grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:10px;display:grid}.property-form .range-field input[type=range]{width:100%;height:24px;box-shadow:none;accent-color:var(--el-primary);appearance:none;cursor:pointer;background:0 0;border:0;flex:none;padding:0}.property-form .range-field input[type=range]::-webkit-slider-runnable-track{background:var(--ink-100);border-radius:3px;height:5px;box-shadow:inset 0 1px 2px #232b3614}.property-form .range-field input[type=range]::-webkit-slider-thumb{background:var(--el-primary);appearance:none;border:3px solid #fff;border-radius:50%;width:15px;height:15px;margin-top:-5px;box-shadow:0 1px 5px #2467d16b}.property-form .range-field input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #2467d124}.property-form .range-field i{border:1px solid var(--ink-100);height:28px;color:var(--ink-800);background:linear-gradient(#fff,#f6f7f9);border-radius:6px;place-items:center;font-size:11px;font-style:normal;display:grid;box-shadow:0 1px 2px #19202a0d}.border-settings{gap:11px;display:grid}.border-visibility{border:1px solid var(--ink-100);border-radius:6px;align-items:center;background:var(--gray-25)!important;grid-template-columns:1fr 34px!important;padding:9px 10px!important}.border-visibility>span{gap:3px;display:grid}.border-visibility b{color:var(--ink-800);font-size:11px}.border-visibility small{color:var(--ink-500);font-size:11px;font-weight:400}.border-visibility input[type=checkbox]{background:var(--ink-300);width:36px;height:20px;box-shadow:none;appearance:none;cursor:pointer;border:0;border-radius:10px;flex:0 0 36px;margin:0;padding:0;transition:background .18s;position:relative}.border-visibility input[type=checkbox]:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #17202d3d}.border-visibility input[type=checkbox]:checked{background:var(--primary-600)}.border-visibility input[type=checkbox]:checked:after{transform:translate(16px)}.border-visibility input[type=checkbox]:focus-visible{outline:none;box-shadow:0 0 0 3px #2467d138}.media-settings{gap:10px;display:grid}.media-bound-hint{color:var(--emerald-700);font-size:11px}.button-settings{gap:11px;display:grid}.button-image-upload{gap:7px;display:flex}.button-image-upload .el-button{flex:1}.component-buttons{border-top:1px solid var(--el-border-light);gap:7px;padding-top:12px;display:flex}.component-buttons button{border:1px solid var(--el-border);border-radius:var(--radius-control);height:32px;color:var(--ink-600);transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:#fff;flex:1;justify-content:center;align-items:center;gap:4px;display:flex}.component-buttons button:hover{color:var(--el-primary);border-color:var(--primary-300);background:var(--primary-pale)}.component-buttons button.danger{color:var(--el-danger);border-color:var(--danger-border);background:var(--primary-pale)}.component-buttons button.danger:hover{color:#fff;border-color:var(--el-danger);background:var(--el-danger)}.component-buttons svg{width:13px}.page-property-form{align-content:start;min-height:244px}.page-setting-note{color:#567197;background:var(--primary-pale);border:1px solid var(--primary-200);border-radius:6px;align-items:center;gap:10px;margin-top:5px;padding:11px;display:flex}.page-setting-note>svg{width:20px}.page-setting-note span{gap:3px;display:grid}.page-setting-note b{font-size:11px}.page-setting-note small{color:#8799af;font-size:11px}.no-selection{height:180px;color:var(--ink-400);place-content:center;justify-items:center;display:grid}.no-selection svg{width:30px}.layers-panel{padding:var(--space-gutter);border-top:1px solid var(--el-border-light);background:#fff}.layers-panel h3{height:36px;color:var(--ink-800);border:0;justify-content:space-between;align-items:center;padding:0;display:flex}.layers-panel h3>span{align-items:center;gap:6px;display:flex}.layers-panel h3 small{min-width:20px;height:20px;color:var(--ink-600);background:var(--ink-50);border-radius:10px;place-items:center;font-size:11px;display:grid}.layers-panel h3 svg{width:14px;color:var(--el-primary)}.layers-panel>button{border-radius:var(--radius-control);width:100%;height:38px;color:var(--ink-600);background:#fff;border:1px solid #0000;justify-content:space-between;align-items:center;margin-bottom:3px;padding:0 10px;transition:all .16s;display:flex}.layers-panel>button:hover{color:var(--ink-800);background:var(--gray-25)}.layers-panel>button.active{color:var(--el-primary);border-color:var(--primary-200);background:var(--primary-pale)}.layer-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;min-width:0;display:flex;overflow:hidden}.layer-name>i{background:#91a2b6;border-radius:2px;flex:0 0 7px;width:7px;height:7px}.layers-panel>button.active .layer-name>i{background:var(--primary-600)}.layer-visibility{width:26px;height:26px;color:var(--ink-500);border-radius:4px;place-items:center;display:grid}.layer-visibility:hover{color:var(--el-primary);background:#fff}.layers-panel svg{width:14px}.layout-preview-mask{z-index:var(--z-overlay);background:#000000e6;place-items:center;padding:70px;display:grid;position:fixed;inset:0}.preview-top{color:#fff;background:var(--editor-bg);justify-content:space-between;align-items:center;height:54px;padding:0 20px;display:flex;position:fixed;inset:0 0 auto}.preview-top button{color:#fff;background:0 0;border:0}.preview-top svg{width:20px}.preview-canvas{aspect-ratio:16/9;background:var(--gray-25);width:min(80vw,1280px);box-shadow:0 0 0 1px var(--editor-border), 0 24px 70px #00000073;position:relative;overflow:hidden}.preview-canvas>div{place-items:center;display:grid;position:absolute;overflow:hidden}.preview-canvas>div span{text-align:center}.apply-layout-dialog .dialog-content>p{color:var(--el-warning);background:var(--warning-pale);margin:0 0 4px;padding:10px}.dialog-content label.device-choice{border:1px solid var(--el-border-light);grid-template-columns:20px 1fr auto;gap:8px;padding:10px}.device-choice small{color:var(--el-text-secondary)}.device-choice .device-id{font-family:var(--font-geist-mono);margin-top:3px;font-size:11px;display:block}@media (max-width:1100px){.layout-card-grid{grid-template-columns:1fr 1fr}.editor-body{grid-template-columns:172px minmax(420px,1fr) 232px}.canvas-scroll{padding:16px}}.content-operations{gap:var(--space-grid);flex-direction:column;min-height:100%;display:flex}.content-operations .reference-panel{flex-direction:column;flex:1;min-height:0;display:flex}.content-operations .reference-toolbar>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.operations-loading{min-height:260px;color:var(--ink-400);flex-direction:column;justify-content:center;align-items:center;display:flex}.asset-grid{gap:var(--space-grid);padding:var(--space-pad);grid-template-columns:repeat(5,minmax(150px,1fr));display:grid}.asset-card{border:1px solid var(--el-border-light);border-radius:var(--radius-card);min-width:0;box-shadow:var(--shadow-xs);background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s;overflow:hidden}.asset-card:hover{border-color:var(--primary-300);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.asset-preview{height:128px;color:var(--ink-400);background:var(--ink-50);place-items:center;display:grid;overflow:hidden}.asset-preview img,.asset-preview video{object-fit:cover;width:100%;height:100%}.asset-preview svg{width:34px}.asset-filter-card{cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s}.asset-filter-card:hover{transform:translateY(-1px);box-shadow:0 5px 16px #232d3a14}.asset-filter-card.active{border-color:var(--primary-300);box-shadow:inset 0 -2px var(--el-primary), 0 4px 14px #2467d117}.asset-search input{width:230px;height:var(--el-h-control);border:1px solid var(--el-border);border-radius:var(--radius-control);outline:0;padding:0 10px}.asset-search input:focus{border-color:var(--el-primary-hover)}.asset-view-switch{height:var(--el-h-control);border:1px solid var(--el-border);border-radius:var(--radius-control);background:#fff;display:flex;overflow:hidden}.asset-view-switch button{border:0;border-right:1px solid var(--el-border-light);width:34px;height:30px;color:var(--ink-600);background:#fff;place-items:center;padding:0;display:grid}.asset-view-switch button:last-child{border-right:0}.asset-view-switch button.active{color:var(--el-primary);background:var(--primary-pale)}.asset-view-switch svg{width:14px}.asset-category-grid{gap:var(--space-grid);padding:var(--space-pad);border-bottom:1px solid var(--el-border-light);background:var(--gray-25);grid-template-columns:repeat(3,1fr);display:grid}.asset-category-grid>button{border:1px solid var(--ink-100);min-width:0;min-height:82px;color:var(--ink-800);text-align:left;background:#fff;border-radius:6px;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:13px;transition:all .18s;display:grid}.asset-category-grid>button:hover,.asset-category-grid>button.active{border-color:var(--primary-300);box-shadow:0 5px 16px #232d3a12}.asset-category-grid>button>span{width:42px;height:42px;color:var(--el-info);background:var(--primary-pale);border-radius:10px;place-items:center;display:grid}.asset-category-grid>button>span.c1{color:var(--el-success);background:var(--success-pale)}.asset-category-grid>button>span.c2{color:var(--el-warning);background:var(--warning-pale)}.asset-category-grid svg{width:20px}.asset-category-grid div{gap:5px;min-width:0;display:grid}.asset-category-grid strong,.asset-category-grid small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asset-category-grid small{color:var(--ink-500);font-size:11px}.asset-category-grid b{color:var(--ink-800);font-size:22px}.asset-category-results{border-bottom:1px solid var(--ink-50);align-items:center;gap:9px;height:42px;padding:0 16px;display:flex}.asset-category-results strong{color:var(--ink-800)}.asset-category-results span{color:var(--ink-500)}.upload-records .reference-table td{height:46px}.upload-records .red-state{color:var(--el-danger);background:var(--danger-pale)}@media (max-width:900px){.asset-category-grid{grid-template-columns:1fr}.asset-search input{width:150px}}.asset-copy{padding:10px}.asset-copy strong,.asset-copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.asset-copy strong{color:var(--el-text-regular);font-weight:500}.asset-copy span{color:var(--el-text-secondary);margin-top:5px;font-size:11px}.schedule-devices{color:var(--el-text-regular);grid-template-columns:90px 1fr;align-items:start;font-size:12px;display:grid}.schedule-devices>div{gap:7px;display:grid}.schedule-devices label{border:1px solid var(--el-border-light);border-radius:4px;grid-template-columns:none;gap:7px;min-height:36px;padding:8px 10px;display:flex}.schedule-devices label svg{width:15px}.schedule-devices label i{color:var(--ink-400);margin-left:auto;font-style:normal}.schedule-devices label i.online{color:var(--el-success)}@media (max-width:1200px){.asset-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}}.publish-wizard-mask{z-index:var(--z-wizard);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181e28ad;place-items:center;padding:26px;display:grid;position:fixed;inset:0}.publish-wizard{background:var(--el-fill);border-radius:10px;grid-template-rows:70px 78px minmax(0,1fr) 68px;width:min(1120px,100vw - 52px);height:min(820px,100vh - 52px);min-height:640px;animation:.2s ease-out publish-wizard-in;display:grid;overflow:hidden;box-shadow:0 24px 70px #0000004d}@keyframes publish-wizard-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}.publish-wizard-header{color:#fff;background:var(--editor-bg);justify-content:space-between;align-items:center;padding:0 22px;display:flex}.publish-wizard-header>div{align-items:center;gap:12px;display:flex}.publish-wizard-header>div>span{background:var(--el-primary);border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.publish-wizard-header svg{width:18px}.publish-wizard-header h2{margin:0;font-size:17px;font-weight:600}.publish-wizard-header p{color:var(--ink-400);margin:4px 0 0;font-size:11px}.publish-wizard-header>button{width:34px;height:34px;color:var(--ink-400);background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.publish-wizard-header>button:hover{color:#fff;background:var(--editor-surface-hover)}.publish-steps{border-bottom:1px solid var(--ink-100);background:#fff;grid-template-columns:repeat(5,1fr);padding:18px 55px;display:grid}.publish-steps>div{color:var(--ink-500);flex-direction:column;align-items:center;gap:7px;display:flex;position:relative}.publish-steps>div:not(:last-child):after{content:"";z-index:0;background:var(--ink-100);height:2px;position:absolute;top:14px;left:calc(50% + 22px);right:calc(22px - 50%)}.publish-steps i{z-index:1;border:2px solid var(--ink-100);background:#fff;border-radius:50%;place-items:center;width:29px;height:29px;font-size:11px;font-style:normal;display:grid;position:relative}.publish-steps svg{width:14px}.publish-steps span{font-size:11px}.publish-steps .active{color:var(--el-primary)}.publish-steps .active i{color:#fff;border-color:var(--el-primary);background:var(--el-primary);box-shadow:0 0 0 5px var(--primary-pale)}.publish-steps .done{color:var(--el-success)}.publish-steps .done i{color:#fff;border-color:var(--el-success);background:var(--el-success)}.publish-steps .done:not(:last-child):after{background:var(--success-border)}.publish-wizard-body{min-height:0;padding:26px 42px;overflow-y:auto}.publish-stage{max-width:920px;margin:0 auto}.publish-stage-title{align-items:center;gap:12px;margin-bottom:24px;display:flex}.publish-stage-title>span{width:40px;height:40px;color:var(--el-primary);background:var(--primary-pale);border-radius:9px;place-items:center;display:grid}.publish-stage-title svg{width:19px}.publish-stage-title h3{color:var(--el-text-primary);margin:0;font-size:15px}.publish-stage-title p{color:var(--ink-500);margin:5px 0 0;font-size:11px}.publish-form-grid{border:1px solid var(--ink-100);background:#fff;border-radius:8px;grid-template-columns:1fr 1fr;gap:18px;padding:22px;display:grid}.publish-form-grid label{color:var(--ink-600);gap:7px;font-size:11px;display:grid}.publish-form-grid label.wide{grid-column:1/-1}.publish-form-grid label>b{color:var(--el-primary)}.publish-form-grid input,.publish-form-grid select{border:1px solid var(--el-border-light);width:100%;height:38px;color:var(--ink-800);background:#fff;border-radius:5px;outline:0;padding:0 10px}.publish-form-grid input:focus,.publish-form-grid select:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #2467d11a}.publish-duration-rule{border:1px solid var(--ink-100);background:var(--gray-25);border-radius:6px;align-content:center;gap:4px;min-height:62px;padding:10px 12px;display:grid}.publish-duration-rule span{color:var(--ink-600);font-size:11px}.publish-duration-rule strong{color:var(--el-text-primary);font-size:13px}.publish-duration-rule small{color:var(--ink-600);line-height:1.5}.publish-type-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;display:grid}.publish-type-grid>button{border:1px solid var(--ink-100);min-height:82px;color:var(--ink-600);text-align:left;background:#fff;border-radius:7px;align-items:center;gap:10px;padding:13px;display:flex;position:relative}.publish-type-grid>button>svg:first-child{width:21px;color:var(--ink-500)}.publish-type-grid>button>svg:last-child{width:16px;color:var(--el-primary);position:absolute;top:9px;right:9px}.publish-type-grid span{gap:5px;display:grid}.publish-type-grid b{color:var(--ink-800);font-size:11px}.publish-type-grid small{color:var(--ink-500);font-size:11px}.publish-type-grid>button.active{border-color:var(--primary-400);background:var(--primary-pale);box-shadow:0 5px 15px #2467d11a}.publish-asset-grid{grid-template-columns:repeat(4,1fr);gap:12px;max-height:270px;display:grid;overflow-y:auto}.publish-asset-grid>button{text-align:left;border:1px solid var(--ink-100);min-width:0;color:var(--ink-800);background:#fff;border-radius:7px;grid-template-rows:104px auto auto;gap:5px;padding:7px;display:grid;position:relative;overflow:hidden}.publish-asset-grid>button>span{color:var(--ink-500);background:var(--ink-50);border-radius:4px;place-items:center;display:grid;overflow:hidden}.publish-asset-grid img{object-fit:cover;width:100%;height:100%}.publish-asset-grid>button>span svg{width:30px}.publish-asset-grid b,.publish-asset-grid small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.publish-asset-grid b{font-size:11px}.publish-asset-grid small{color:var(--ink-500);font-size:11px}.publish-asset-grid>button.active{border-color:var(--el-primary);box-shadow:0 0 0 2px var(--primary-200)}.publish-asset-grid>button>i{color:#fff;background:var(--el-primary);border-radius:50%;place-items:center;width:21px;height:21px;display:grid;position:absolute;top:11px;right:11px}.publish-asset-grid>button>i svg{width:12px}.publish-layout-fields{margin-top:18px;padding:16px}.publish-empty{min-height:180px;color:var(--ink-500);border:1px dashed var(--el-border-light);background:#fff;border-radius:8px;place-content:center;justify-items:center;display:grid}.publish-empty svg{width:34px}.publish-layout-selector{border:1px solid var(--ink-100);background:#fff;border-radius:7px;grid-template-columns:1fr auto;align-items:end;gap:16px;min-height:62px;margin-bottom:14px;padding:12px 15px;display:grid}.publish-layout-selector>label{color:var(--ink-600);gap:7px;font-size:11px;display:grid}.publish-layout-selector label>b{color:var(--el-primary)}.publish-layout-selector select{border:1px solid var(--el-border-light);background:var(--gray-25);border-radius:5px;height:36px;padding:0 10px}.publish-layout-selector>span{color:#657282;background:var(--ink-50);border-radius:5px;grid-template-rows:1fr 1fr;grid-template-columns:26px 1fr;align-items:center;min-width:180px;height:36px;padding:4px 10px;display:grid}.publish-layout-selector>span svg{grid-row:1/3;width:17px}.publish-layout-selector>span b{font-size:11px}.publish-layout-selector>span small{color:var(--ink-500);font-size:11px}.slot-assignment-list{gap:10px;max-height:375px;padding-right:3px;display:grid;overflow-y:auto}.slot-assignment-list>article{border:1px solid var(--ink-100);background:#fff;border-radius:7px;grid-template-columns:190px 115px minmax(210px,1fr) 220px;align-items:center;gap:12px;padding:12px;transition:all .18s;display:grid}.slot-assignment-list>article.assigned{border-color:var(--success-border);box-shadow:inset 3px 0 var(--el-success)}.slot-order{grid-template-columns:28px 1fr;align-items:center;gap:8px;min-width:0;display:grid}.slot-order>i{width:26px;height:26px;color:var(--el-primary);background:var(--primary-pale);border-radius:50%;place-items:center;font-size:11px;font-style:normal;display:grid}.slot-order>span{gap:4px;min-width:0;display:grid}.slot-order b,.slot-order small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.slot-order b{color:var(--ink-800);font-size:11px}.slot-order small{color:var(--ink-500);font-size:11px}.slot-layout-mini{border:1px solid var(--el-border);background:var(--ink-50);border-radius:3px;width:104px;height:58px;position:relative}.slot-layout-mini i{border:1px solid var(--el-primary);background:#2467d13d;min-width:5px;min-height:5px;position:absolute}.slot-assignment-list label{color:var(--ink-600);gap:6px;font-size:11px;display:grid}.slot-assignment-list select{border:1px solid var(--el-border-light);width:100%;height:34px;color:var(--ink-800);background:var(--gray-25);border-radius:5px;padding:0 8px}.slot-material-preview{min-width:0;height:54px;color:var(--ink-500);background:var(--ink-50);border-radius:5px;grid-template-columns:48px 1fr 18px;align-items:center;gap:8px;padding:5px;display:grid;overflow:hidden}.slot-material-preview>img{object-fit:cover;border-radius:3px;width:48px;height:44px}.slot-material-preview>svg:first-child{width:22px;margin:auto}.slot-material-preview>svg:last-child{width:16px;color:var(--el-success)}.slot-material-preview>span{gap:4px;min-width:0;display:grid}.slot-material-preview b,.slot-material-preview small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.slot-material-preview b{color:var(--ink-800);font-size:11px}.slot-material-preview small{font-size:11px}.slot-asset-picker{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px;min-width:0;display:grid}.slot-upload-button{border:1px solid var(--primary-300);height:34px;color:var(--primary-600);background:var(--primary-pale);white-space:nowrap;cursor:pointer;border-radius:5px;align-items:center;gap:4px;padding:0 10px;transition:all .16s;display:inline-flex}.slot-upload-button:hover{border-color:var(--primary-500);background:var(--primary-pale)}.slot-upload-button:disabled{opacity:.55;cursor:wait}.slot-upload-button svg{width:13px;height:13px}.cycle-setting{border:1px solid var(--ink-100);background:#fff;border-radius:7px;justify-content:space-between;align-items:center;margin-top:16px;padding:14px 18px;display:flex}.cycle-setting>span{color:var(--ink-600)}.cycle-setting div{gap:7px;display:flex}.cycle-setting button,.weekday-picker button{border:1px solid var(--ink-100);height:32px;color:var(--ink-600);background:#fff;border-radius:5px;padding:0 18px}.cycle-setting button.active,.weekday-picker button.active{color:var(--el-primary);border-color:var(--primary-300);background:var(--primary-pale)}.weekday-picker{grid-template-columns:repeat(7,1fr);gap:8px;margin-top:12px;display:grid}.weekday-picker button{padding:0}.weekday-picker button:disabled{opacity:.55}.playback-mode-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.playback-mode-picker>button{text-align:left;border:1px solid var(--ink-100);min-height:56px;color:var(--ink-600);cursor:pointer;background:#fff;border-radius:7px;grid-template-columns:30px 1fr 18px;align-items:center;gap:10px;padding:9px 13px;display:grid}.playback-mode-picker>button.active{color:var(--el-primary);border-color:var(--primary-300);background:var(--primary-pale);box-shadow:0 4px 14px #2467d114}.playback-mode-picker>button>svg:first-child{width:21px}.playback-mode-picker>button>svg:last-child{width:17px}.playback-mode-picker span{gap:5px;display:grid}.playback-mode-picker b{color:var(--ink-800);font-size:12px}.playback-mode-picker small{color:var(--ink-600);font-size:11px}.permanent-playback-note{border:1px dashed var(--success-border);min-height:112px;color:var(--el-success);background:var(--success-pale);border-radius:8px;justify-content:center;align-items:center;gap:12px;padding:18px;display:flex}.permanent-playback-note>svg{width:24px}.permanent-playback-note span{gap:6px;display:grid}.permanent-playback-note b{color:var(--emerald-700);font-size:13px}.permanent-playback-note small{color:var(--emerald-600)}.device-select-toolbar{border:1px solid var(--ink-100);background:#fff;border-radius:7px 7px 0 0;align-items:center;gap:10px;height:42px;padding:0 12px;display:flex}.device-select-toolbar span{color:var(--ink-600);margin-right:auto}.device-select-toolbar b{color:var(--el-primary)}.device-select-toolbar button{color:var(--el-info);background:0 0;border:0}.publish-device-list{border:1px solid var(--ink-100);background:var(--gray-25);border-top:0;border-radius:0 0 7px 7px;grid-template-columns:1fr 1fr;gap:8px;max-height:340px;padding:10px;display:grid;overflow-y:auto}.publish-device-list label{border:1px solid var(--ink-100);background:#fff;border-radius:6px;grid-template-columns:18px 34px 1fr auto;align-items:center;gap:8px;min-width:0;padding:10px;display:grid}.publish-device-list label.active{border-color:var(--primary-300);background:var(--primary-pale)}.publish-device-list label>span{color:#597da8;background:var(--primary-pale);border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.publish-device-list svg{width:16px}.publish-device-list div{gap:4px;min-width:0;display:grid}.publish-device-list b,.publish-device-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.publish-device-list b{color:var(--ink-800);font-size:11px}.publish-device-list small{color:var(--ink-500);font-size:11px}.publish-device-list em{color:var(--ink-500);font-size:11px;font-style:normal}.publish-device-list em.online{color:var(--el-success)}.device-group-section{margin-bottom:14px}.device-section-heading{color:var(--ink-800);justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.device-section-heading span{align-items:center;gap:6px;font-weight:600;display:flex}.device-section-heading svg{width:15px;color:var(--el-primary)}.device-section-heading small{color:var(--ink-500)}.publish-group-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.publish-group-list>button{border:1px solid var(--ink-100);min-width:0;color:inherit;text-align:left;background:var(--gray-25);border-radius:7px;grid-template-columns:34px 1fr auto 18px;align-items:center;gap:8px;padding:11px;transition:border-color .18s,box-shadow .18s,background .18s;display:grid}.publish-group-list>button:hover{border-color:var(--primary-300);box-shadow:0 3px 12px #2c37440f}.publish-group-list>button.active{border-color:var(--primary-400);background:var(--primary-pale);box-shadow:0 0 0 1px #2467d114}.publish-group-list>button>i:first-child{color:#6b7fa2;background:var(--primary-pale);border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.publish-group-list>button>i:first-child svg{width:16px}.publish-group-list>button>span{gap:4px;min-width:0;display:grid}.publish-group-list b,.publish-group-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.publish-group-list b{color:var(--ink-800);font-size:11px}.publish-group-list small{color:var(--ink-500);font-size:11px}.publish-group-list em{color:var(--el-success);white-space:nowrap;font-size:11px;font-style:normal}.publish-group-list>button>svg{width:17px;color:var(--el-primary)}.group-check{border:1px solid var(--el-border-light);background:var(--gray-25);border-radius:50%;width:15px;height:15px}.publish-review{border:1px solid var(--ink-100);background:#fff;border-radius:8px;grid-template-columns:280px 1fr;gap:20px;padding:18px;display:grid}.publish-review-preview{min-height:190px;color:var(--ink-500);background:var(--ink-50);border-radius:6px;place-items:center;display:grid;overflow:hidden}.publish-review-preview img{object-fit:contain;width:100%;height:100%}.publish-review-preview svg{width:40px}.publish-review dl{margin:0}.publish-review dl>div{border-bottom:1px solid var(--ink-50);grid-template-columns:105px 1fr;align-items:center;min-height:34px;display:grid}.publish-review dt{color:var(--ink-600)}.publish-review dd{color:var(--ink-800);margin:0}.audit-choice{border:1px solid var(--success-border);background:#f4faf2;border-radius:7px;grid-template-columns:18px 28px 1fr;align-items:center;gap:8px;margin-top:14px;padding:13px 16px;display:grid}.audit-choice>svg{width:19px;color:var(--el-success)}.audit-choice span{gap:4px;display:grid}.audit-choice b{color:var(--emerald-700);font-size:11px}.audit-choice small{color:var(--emerald-600);font-size:11px}.review-slot-map{border:1px solid var(--el-border-light);background:#202a39;border-radius:6px;align-self:start;width:100%;position:relative;overflow:hidden;box-shadow:0 7px 18px #232d3a24}.review-slot-map>div{color:#667382;background:var(--ink-100);border:1px solid #ffffff40;place-items:center;font-size:11px;display:grid;position:absolute;overflow:hidden}.review-slot-map img{object-fit:contain;background:#111827;width:100%;height:100%}.publish-wizard-footer{border-top:1px solid var(--ink-100);background:#fff;justify-content:flex-end;align-items:center;gap:10px;padding:0 22px;display:flex}.publish-wizard-footer>span{color:var(--ink-500);margin-right:auto}.publish-wizard-footer .el-button{justify-content:center;min-width:94px}.publish-submit{box-shadow:0 5px 14px #2467d133}.publish-error{border:1px solid var(--danger-border);max-width:920px;color:var(--el-danger);background:var(--el-primary-pale);border-radius:5px;margin:14px auto 0;padding:10px 13px}.publish-success{text-align:center;justify-items:center;max-width:760px;margin:26px auto;display:grid}.publish-success>span{color:#fff;background:var(--el-success);width:70px;height:70px;box-shadow:0 0 0 10px var(--success-pale);border-radius:50%;place-items:center;display:grid}.publish-success>span svg{width:34px}.publish-success h2{color:var(--el-text-primary);margin:24px 0 8px;font-size:22px}.publish-success>p{color:var(--ink-600);margin:0}.publish-result-grid{grid-template-columns:repeat(4,1fr);gap:10px;width:100%;margin-top:26px;display:grid}.publish-result-grid>div{border:1px solid var(--success-border);background:#fff;border-radius:7px;gap:7px;padding:14px 10px;display:grid}.publish-result-grid small{color:var(--ink-500)}.publish-result-grid strong{color:var(--emerald-800);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.publish-flow-state{color:var(--emerald-700);align-items:center;margin-top:22px;display:flex}.publish-flow-state i{color:#fff;background:var(--el-success);border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.publish-flow-state i svg{width:12px}.publish-flow-state span{background:var(--success-border);width:34px;height:1px;margin:0 7px}@media (max-width:900px){.publish-wizard-mask{padding:10px}.publish-wizard{width:calc(100vw - 20px);height:calc(100vh - 20px);min-height:0}.publish-wizard-body{padding:20px}.publish-steps{padding-inline:12px}.publish-form-grid,.publish-device-list,.publish-group-list{grid-template-columns:1fr}.publish-asset-grid{grid-template-columns:repeat(2,1fr)}.slot-assignment-list>article,.publish-review{grid-template-columns:1fr}.publish-result-grid{grid-template-columns:1fr 1fr}}.template-workspace{gap:var(--space-grid);flex-direction:column;min-height:100%;display:flex}.template-summary{gap:var(--space-grid);margin:var(--space-grid) 0;grid-template-columns:repeat(3,1fr);display:grid}.template-summary article{border-radius:var(--radius-panel);height:86px;box-shadow:var(--shadow-card);background:#fff;align-items:center;gap:13px;padding:0 18px;display:flex;position:relative;overflow:hidden}.template-summary article>span{width:38px;height:38px;color:var(--el-primary);background:var(--primary-pale);border-radius:50%;place-items:center;display:grid}.template-summary svg{width:18px}.template-summary small,.template-summary strong{display:block}.template-summary small{color:var(--ink-600);margin-bottom:4px}.template-summary strong{color:var(--el-text-primary);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.template-list-panel{min-height:470px}.content-template-grid{gap:var(--space-grid);padding:var(--space-pad);grid-template-columns:repeat(3,minmax(240px,1fr));display:grid}.content-template-card{border:1px solid var(--el-border-light);border-radius:var(--radius-card);min-width:0;box-shadow:var(--shadow-xs);background:#fff;transition:box-shadow .2s,transform .2s;overflow:hidden}.content-template-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.content-template-cover{background:var(--ink-50);border:0;width:100%;max-height:225px;padding:0;display:block;position:relative;overflow:hidden}.template-preview-element{white-space:pre-wrap;place-items:center;line-height:1.2;display:grid;position:absolute;overflow:hidden}.template-preview-element img{object-fit:cover;width:100%;height:100%}.template-page-count{color:#fff;background:#1a2029a6;border-radius:9px;padding:3px 7px;font-size:11px;position:absolute;bottom:8px;right:8px}.content-template-meta{border-top:1px solid var(--ink-50);justify-content:space-between;align-items:center;gap:10px;padding:12px 13px;display:flex}.content-template-meta>div{gap:5px;min-width:0;display:grid}.content-template-meta b,.content-template-meta small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.content-template-meta b{color:var(--ink-800)}.content-template-meta small{color:var(--ink-500);font-size:11px}.content-template-meta em{color:var(--el-success);background:var(--success-pale);border-radius:8px;padding:3px 7px;font-size:11px;font-style:normal}.content-template-actions{border-top:1px solid var(--ink-50);align-items:center;gap:2px;padding:9px 10px;display:flex}.content-template-actions button{color:var(--el-info);background:0 0;border:0;padding:4px 6px;font-size:11px}.content-template-actions button:first-child{color:var(--el-primary);font-weight:600}.content-template-actions button.danger{color:var(--el-danger);margin-left:auto}.template-empty{min-height:240px;color:var(--ink-500);grid-column:1/-1;align-content:center;place-items:center;gap:8px;display:grid}.template-empty svg{width:34px}.template-editor{z-index:var(--z-editor);background:var(--ink-50);flex-direction:column;display:flex;position:fixed;inset:0}.template-editor-header{height:58px;padding:0 var(--space-pad);color:var(--editor-text);background:var(--editor-bg);border-bottom:1px solid var(--editor-border);flex:0 0 58px;align-items:center;gap:10px;display:flex}.template-editor-header input{border:1px solid var(--editor-border);border-radius:var(--radius-control);width:280px;height:32px;color:var(--editor-text);background:var(--editor-inset);outline:0;padding:0 11px;transition:border-color .16s,box-shadow .16s}.template-editor-header input:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #2467d138}.template-editor-header>span{color:var(--editor-muted);margin-right:auto}.template-editor-header .el-button{color:var(--editor-text);border-color:var(--editor-border);background:var(--editor-surface)}.template-editor-header .el-button:hover{color:#fff;border-color:var(--primary-400);background:var(--editor-surface-hover)}.template-editor-header .el-button.primary{color:#fff;border-color:var(--el-primary);background:var(--el-primary)}.template-editor-body{flex:1;grid-template-columns:205px 1fr 260px;min-height:0;display:grid}.template-page-panel,.template-property-panel{background:#fff;min-height:0;padding:12px;overflow-y:auto}.template-page-panel{border-right:1px solid var(--el-border-light)}.template-property-panel{border-left:1px solid var(--el-border-light)}.template-panel-title{height:35px;color:var(--ink-800);justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.template-panel-title button{color:var(--el-primary);background:0 0;border:0;align-items:center;gap:3px;display:flex}.template-panel-title svg{width:13px}.template-page-panel>button:not(.template-page-delete){border:1px solid var(--el-border-light);border-radius:var(--radius-control);width:100%;color:var(--ink-600);text-align:left;background:var(--gray-25);grid-template-columns:25px 1fr;align-items:center;gap:8px;margin-bottom:6px;padding:10px;transition:border-color .16s,background .16s;display:grid}.template-page-panel>button:not(.template-page-delete):hover{border-color:var(--primary-200);background:#fff}.template-page-panel>button.active{color:var(--primary-600);border-color:var(--primary-300);background:var(--primary-pale)}.template-page-panel>button>i{color:#fff;background:#8b98a8;border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-style:normal;display:grid}.template-page-panel>button.active>i{background:var(--el-primary)}.template-page-panel>button span{gap:4px;min-width:0;display:grid}.template-page-panel>button b,.template-page-panel>button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.template-page-panel>button small{color:var(--ink-500);font-size:11px}.template-page-delete{border:1px solid var(--danger-border);width:100%;height:30px;color:var(--el-danger);background:var(--primary-pale);border-radius:4px;justify-content:center;align-items:center;gap:4px;margin-top:8px;display:flex}.template-page-delete svg{width:13px}.template-component-library{border-top:1px solid var(--el-border-light);grid-template-columns:repeat(3,1fr);gap:6px;margin-top:18px;padding-top:14px;display:grid}.template-component-library>b{color:var(--ink-800);grid-column:1/-1;margin-bottom:3px}.template-component-library button{border:1px solid var(--el-border-light);border-radius:var(--radius-control);height:56px;color:var(--ink-600);background:#fff;align-content:center;place-items:center;gap:4px;padding:0;font-size:11px;transition:border-color .16s,background .16s,color .16s;display:grid}.template-component-library button:hover{color:var(--el-primary);border-color:var(--primary-200);background:var(--primary-pale)}.template-canvas-workspace{background-color:var(--ink-50);background-image:radial-gradient(#cbd2da 1px,#0000 1px);background-size:15px 15px;place-items:center;min-width:0;min-height:0;padding:30px;display:grid;overflow:auto}.template-canvas{width:min(860px,90%);position:relative;overflow:hidden;box-shadow:0 8px 28px #252d3733}.template-canvas-element{white-space:pre-wrap;touch-action:none;-webkit-user-select:none;user-select:none;cursor:move;border:1px solid #0000;place-items:center;padding:4px;line-height:1.2;display:grid;position:absolute;overflow:hidden}.template-canvas-element.selected{border-color:var(--el-primary);box-shadow:0 0 0 1px white, 0 0 0 2px var(--el-primary)}.template-canvas-element.image{color:var(--ink-600);background:var(--ink-100)}.template-canvas-element.image svg{width:26px}.template-canvas-element.image span{font-size:11px}.template-canvas-element img{object-fit:cover;width:100%;height:100%}.template-property-panel>label,.template-element-properties>label{color:var(--ink-600);gap:5px;margin-bottom:12px;display:grid}.template-property-panel input,.template-property-panel select,.template-property-panel textarea{border:1px solid var(--el-border-light);border-radius:4px;outline:0;width:100%;min-height:32px;padding:6px 8px}.template-property-panel input[type=color]{border:1px solid var(--el-border);border-radius:var(--radius-control);cursor:pointer;background:#fff;width:100%;height:35px;padding:4px}.template-property-panel input[type=color]::-webkit-color-swatch-wrapper{padding:0}.template-property-panel input[type=color]::-webkit-color-swatch{border:1px solid var(--el-border-light);border-radius:4px}.template-property-panel textarea{resize:vertical;min-height:64px}.template-property-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.template-property-grid label{color:var(--ink-600);gap:4px;display:grid}.template-delete-element{width:100%;color:var(--el-danger);border-color:var(--danger-border);background:var(--primary-pale);margin-top:8px}.template-preview-mask{z-index:var(--z-preview)}.template-preview-dialog{border-radius:var(--radius-panel);background:var(--editor-bg);width:min(1020px,100vw - 70px);padding:12px;box-shadow:0 24px 70px #0000006b}.template-preview-dialog>header{color:#fff;justify-content:space-between;align-items:center;height:48px;padding:0 4px 8px;display:flex}.template-preview-dialog header>div{gap:3px;display:grid}.template-preview-dialog header small{color:var(--ink-500)}.template-preview-dialog header button{color:#fff;background:0 0;border:0;width:30px;height:30px}.template-preview-dialog header svg{width:18px}.template-preview-canvas{width:100%;max-height:calc(100vh - 180px);position:relative;overflow:hidden}.template-preview-dialog footer{justify-content:center;gap:7px;padding:10px 0 0;display:flex}.template-preview-dialog footer button{border:1px solid var(--editor-border);border-radius:var(--radius-control);height:30px;color:var(--editor-text);background:var(--editor-surface);padding:0 12px;transition:background .16s,border-color .16s}.template-preview-dialog footer button:hover{background:var(--editor-surface-hover)}.template-preview-dialog footer button.active{color:#fff;border-color:var(--el-primary);background:var(--el-primary)}@media (max-width:1100px){.content-template-grid{grid-template-columns:repeat(2,minmax(230px,1fr))}.template-editor-body{grid-template-columns:180px 1fr 230px}}@media (max-width:800px){.template-summary,.content-template-grid{grid-template-columns:1fr}.template-editor-body{grid-template-columns:150px 1fr}.template-property-panel{display:none}}.content-template-grid{gap:var(--space-grid);padding:var(--space-pad);grid-template-columns:repeat(5,minmax(0,1fr))}.content-template-cover{aspect-ratio:16/9;max-height:none}.content-template-meta{gap:6px;padding:9px 10px}.content-template-meta b{font-size:11px}.content-template-actions{white-space:nowrap;gap:0;padding:6px 7px}.content-template-actions button{padding:3px 4px;font-size:11px}@media (max-width:1550px){.content-template-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1250px){.content-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.content-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.content-template-grid{grid-template-columns:1fr}}.layout-cover{gap:10px;height:auto;display:grid}.layout-cover .cover-slot{min-width:0;position:static}.template-empty{min-height:320px;color:var(--ink-600);text-align:center;gap:10px;padding:32px}.template-empty>svg{width:40px;height:40px;color:var(--primary-600);background:var(--primary-pale);box-sizing:content-box;border-radius:50%;padding:9px}.template-empty>strong{color:var(--el-text-primary);font-size:16px;font-weight:600}.template-empty>p{max-width:520px;margin:0;line-height:1.7}.template-empty>div{flex-wrap:wrap;justify-content:center;gap:8px;margin:4px 0 8px;display:flex}.template-empty>div span{border-radius:var(--radius-control);color:var(--ink-600);background:var(--ink-50);padding:5px 10px;font-size:11px}.template-empty .el-button{color:#fff}.template-asset-tip{color:var(--amber-700);background:var(--warning-pale);border-radius:4px;margin:-4px 0 12px;padding:8px 9px;font-size:11px;line-height:1.5}.device-operations{gap:var(--space-grid);flex-direction:column;min-height:100%;display:flex}.device-operations>.reference-panel{flex-direction:column;flex:1;min-height:0;margin-top:0;display:flex}.device-operations .reference-toolbar>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.device-operations .reference-toolbar>small{color:var(--el-text-secondary)}.device-state{align-items:center;gap:5px;display:inline-flex}.device-state svg,.device-table .green-state svg{vertical-align:-2px;width:13px;height:13px}.device-row-id{color:var(--ink-500);font-family:var(--font-geist-mono);margin-top:4px;font-size:11px;display:block}.remote-actions{gap:4px;display:flex}.remote-actions button{border:1px solid var(--el-border);width:28px;height:28px;color:var(--el-text-regular);background:#fff;border-radius:3px;place-items:center;display:grid}.remote-actions button:hover{color:var(--el-primary);border-color:var(--primary-200)}.remote-actions button:disabled{opacity:.35;cursor:not-allowed}.remote-actions svg{width:14px}.remote-actions .publish-device-button{width:auto;color:var(--primary-600);border-color:var(--primary-300);background:var(--primary-pale);white-space:nowrap;gap:5px;padding:0 9px;display:inline-flex}.publish-device-button span{font-size:11px}.monitor-healthy{min-height:190px;color:var(--el-success);flex-direction:column;justify-content:center;align-items:center;display:flex}.monitor-healthy svg{stroke-width:1.4px;width:48px;height:48px}.monitor-healthy strong{margin-top:12px;font-size:16px;font-weight:500}.monitor-healthy span{color:var(--el-text-secondary);margin-top:6px}.snapshot-dialog{background:#151b24;border-radius:5px;width:min(1040px,100vw - 50px);animation:.25s dialog-in;overflow:hidden;box-shadow:0 18px 50px #00000073}.snapshot-dialog header,.snapshot-dialog footer{color:#fff;align-items:center;min-height:58px;padding:0 18px;display:flex}.snapshot-dialog header{justify-content:space-between}.snapshot-dialog header div span{color:var(--ink-600);margin-top:3px;font-size:11px;display:block}.snapshot-dialog header button{color:#fff;background:0 0;border:0}.snapshot-dialog header svg{width:19px}.snapshot-dialog>img{aspect-ratio:16/9;object-fit:contain;background:#0e131a;width:100%;display:block}.snapshot-dialog footer{color:var(--ink-600);justify-content:space-between}.governance-workspace{gap:var(--space-grid);flex-direction:column;min-height:100%;display:flex}.governance-workspace>.reference-panel{flex-direction:column;flex:1;min-height:0;margin-top:0;display:flex}.device-operations>*,.content-operations>*,.governance-workspace>*,.template-workspace>*,.layout-management>*{margin-block:0}.governance-workspace>.report-grid,.governance-workspace>.organization-workspace,.governance-workspace>.role-management-grid,.governance-workspace>.system-settings-grid{flex:1;min-height:0}.governance-workspace .reference-toolbar>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.governance-workspace .reference-toolbar>small{color:var(--el-text-secondary)}.range-field{align-items:center;gap:12px;display:flex}.range-field input{flex:1;padding:0}.range-field b{width:42px;color:var(--el-primary);text-align:right}.governance-grid{gap:var(--space-grid);grid-template-columns:240px 1fr;display:grid}.organization-tree{grid-row:span 2}.organization-tree>div:not(.reference-toolbar){height:46px;color:var(--el-text-regular);border-bottom:1px solid var(--ink-50);align-items:center;gap:8px;padding:0 14px;display:flex}.organization-tree svg{width:16px}.organization-tree b{color:var(--ink-500);margin-left:auto;font-size:11px;font-weight:400}.organization-tree .org-child{padding-left:34px!important}.role-panel{grid-column:2;padding-bottom:10px}.role-panel article{border-bottom:1px solid var(--ink-50);grid-template-columns:150px 1fr;align-items:center;min-height:66px;padding:8px 16px;display:grid}.role-panel article>span{align-items:center;gap:8px;display:flex}.role-panel svg{width:16px;color:var(--el-success)}.role-panel em,.role-panel i{color:var(--el-text-regular);background:var(--ink-50);border-radius:3px;margin:3px;padding:3px 7px;font-size:11px;font-style:normal;display:inline-block}.report-grid{gap:var(--space-grid);grid-template-rows:minmax(0,1fr) auto;grid-template-columns:2fr 1fr;display:grid}.report-chart{min-height:320px}.bar-chart{justify-content:space-around;align-items:end;gap:18px;height:255px;padding:28px 35px 18px;display:flex}.bar-chart>div{min-width:0;height:100%;color:var(--el-text-secondary);flex:1;grid-template-rows:1fr 20px 20px;grid-template-columns:minmax(0,1fr);justify-items:center;display:grid}.bar-chart>div>span{background:var(--ink-50);border-radius:4px 4px 0 0;align-items:end;width:46px;max-width:100%;height:100%;display:flex;overflow:hidden}.bar-chart i{background:linear-gradient(var(--el-primary-hover),var(--el-primary));border-radius:4px 4px 0 0;width:100%;display:block}.bar-chart b{color:var(--el-text-regular);font-size:11px}.bar-chart small{font-size:11px}.bar-chart .report-empty{grid-column:1/-1;place-items:center;display:grid}.report-summary{padding-bottom:10px}.report-summary>div:not(.reference-toolbar){border-bottom:1px solid var(--ink-50);height:57px;color:var(--el-text-regular);justify-content:space-between;align-items:center;padding:0 18px;display:flex}.report-summary strong{color:var(--el-text-primary);font-size:20px;font-weight:500}.report-table{grid-column:1/-1}.dashboard-workspace{min-height:100%}.dashboard-grid{display:block}.dashboard-grid .reference-toolbar>strong{font-size:14px;font-weight:500}.dashboard-overview-cards{gap:var(--space-grid);margin:0 0 var(--space-grid);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.overview-card{border-radius:var(--radius-panel);min-width:0;min-height:0;box-shadow:var(--shadow-card);background:#fff;padding:0 15px 13px;transition:box-shadow .2s,transform .2s;position:relative;overflow:hidden}.overview-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.overview-card>header{border-bottom:1px solid var(--ink-50);justify-content:space-between;align-items:center;height:49px;display:flex}.overview-card>header>div{color:var(--ink-800);align-items:center;gap:8px;display:flex}.overview-card>header>div>span{width:28px;height:28px;color:var(--el-info);background:var(--primary-pale);border-radius:7px;place-items:center;display:grid}.overview-card>header svg{width:15px}.overview-card>header strong,.overview-card-title{margin:0;font-size:15px;font-weight:600}.overview-card>header>button{border:1px solid var(--primary-200);height:26px;color:var(--primary-600);background:var(--primary-pale);border-radius:3px;align-items:center;gap:3px;padding:0 7px;font-size:11px;display:inline-flex}.overview-card>header>button:hover{color:#fff;background:var(--el-primary)}.overview-card>header>button.text-action{color:var(--ink-600);background:0 0;border-color:#0000}.overview-card>header>button.text-action:hover{color:var(--el-primary)}.advertising-card>header>div>span{color:var(--el-success);background:var(--success-pale)}.warning-card>header>div>span{color:var(--el-warning);background:var(--warning-pale)}.account-card>header>div>span{color:#8c6bdc;background:#f4f0ff}.overview-metrics{align-items:center;min-height:0;display:grid}.overview-metrics.four{grid-template-columns:1fr 1fr}.overview-metrics.five{grid-template-columns:repeat(3,1fr)}.overview-metrics>div{border-right:1px solid var(--ink-50);min-width:0;padding:8px 7px}.overview-metrics>div:nth-child(2n),.overview-metrics.five>div:nth-child(3n){border-right:0}.overview-metrics small,.overview-metrics b{display:block}.overview-metrics small{color:var(--ink-600);text-overflow:ellipsis;white-space:nowrap;margin-bottom:3px;font-size:11px;overflow:hidden}.overview-metrics b{color:var(--ink-800);font-size:19px;font-weight:500}.overview-metrics .success b{color:var(--el-success)}.overview-metrics .warning b{color:var(--el-warning)}.overview-metrics .danger b{color:var(--el-danger)}.overview-metrics b.nodata{color:var(--ink-400);font-weight:400}.warning-list{grid-template-columns:1fr 1fr;column-gap:14px;padding-top:7px;display:grid}.warning-list>div{border-bottom:1px dashed var(--ink-50);min-width:0;height:35px;color:var(--ink-600);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.warning-list span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.warning-list b{min-width:20px;color:var(--ink-600);background:var(--ink-50);text-align:center;border-radius:8px;padding:2px 5px;font-weight:500}.warning-list b.danger{color:var(--el-danger);background:var(--danger-pale)}.warning-list b.nodata{color:var(--ink-400);border:1px dashed var(--ink-300);background:0 0}.account-main{grid-template-columns:repeat(4,1fr);padding:9px 0 7px;display:grid}.account-main>div{border-right:1px solid var(--ink-50);min-width:0;padding:0 3px}.account-main>div:last-child{border-right:0}.account-main small,.account-main b{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-main small{color:var(--ink-500);margin-bottom:3px;font-size:11px}.account-main b{color:var(--ink-800);font-size:12px;font-weight:600}.account-main b.nodata{color:var(--ink-400);font-weight:400}.resource-usage{border-top:1px solid var(--ink-50);gap:7px;padding-top:7px;display:grid}.resource-usage>div{grid-template-columns:88px 1fr;align-items:center;gap:4px;display:grid}.resource-usage span{color:var(--ink-600);align-items:center;gap:4px;font-size:11px;display:flex}.resource-usage span svg{width:11px}.resource-usage em{color:var(--ink-500);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;overflow:hidden}.resource-usage i{background:var(--ink-50);border-radius:2px;grid-column:1/-1;height:3px;overflow:hidden}.resource-usage i b{border-radius:inherit;background:linear-gradient(90deg,#8c6bdc,#ad94ea);height:100%;display:block}.dashboard-recharge-mask{z-index:var(--z-popover)}.dashboard-recharge-dialog{background:#fff;border-radius:7px;width:min(520px,100vw - 40px);animation:.22s dialog-in;overflow:hidden;box-shadow:0 20px 55px #1c232d47}.dashboard-recharge-dialog>header{color:#fff;background:linear-gradient(135deg,#3d4654,#252c36);justify-content:space-between;align-items:center;height:62px;padding:0 20px;display:flex}.dashboard-recharge-dialog>header div{gap:4px;display:grid}.dashboard-recharge-dialog>header strong{font-size:15px}.dashboard-recharge-dialog>header span{color:var(--ink-400);font-size:11px}.dashboard-recharge-dialog>header button{color:#fff;background:0 0;border:0;width:30px;height:30px}.dashboard-recharge-dialog>header svg{width:17px}.recharge-balance{height:76px;color:var(--ink-600);background:var(--gray-25);justify-content:space-between;align-items:center;padding:0 20px;display:flex}.recharge-balance strong{color:var(--el-primary);font-size:24px;font-weight:600}.recharge-section{gap:10px;padding:17px 20px 0;display:grid}.recharge-section>b{color:var(--ink-800);font-size:11px}.recharge-amounts{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.recharge-amounts button,.recharge-methods button{border:1px solid var(--ink-100);height:38px;color:var(--ink-600);background:#fff;border-radius:4px}.recharge-amounts button.active,.recharge-methods button.active{color:var(--el-primary);border-color:var(--primary-400);background:var(--el-primary-pale);box-shadow:inset 0 0 0 1px var(--primary-400)}.recharge-section label{color:var(--ink-600);grid-template-columns:90px 1fr;align-items:center;display:grid}.recharge-section input{border:1px solid var(--ink-100);border-radius:4px;outline:0;height:35px;padding:0 10px}.recharge-section input:focus{border-color:var(--el-primary-hover)}.recharge-methods{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.dashboard-recharge-dialog>footer{justify-content:flex-end;gap:8px;padding:20px;display:flex}.recharge-success{text-align:center;align-content:center;place-items:center;gap:12px;min-height:300px;padding:30px;display:grid}.recharge-success>svg{width:48px;height:48px;color:var(--el-success);background:var(--success-pale);border-radius:50%;padding:11px}.recharge-success>strong{color:var(--ink-800);font-size:17px}.recharge-success>span{max-width:330px;color:var(--ink-600);line-height:1.7}@media (max-width:1400px){.dashboard-overview-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.dashboard-overview-cards{grid-template-columns:1fr}}.dashboard-map-panel{margin-top:var(--space-grid);overflow:hidden}.map-heading{align-items:center;gap:10px;min-width:0;display:flex}.map-heading>span{width:30px;height:30px;color:var(--el-primary);background:var(--primary-pale);border-radius:50%;place-items:center;display:grid}.map-heading svg{width:15px}.map-heading div{gap:3px;display:grid}.map-heading small{color:var(--ink-500);font-size:11px}.map-summary{color:var(--ink-600);align-items:center;gap:6px;font-size:11px;display:flex}.map-summary i{border-radius:50%;width:7px;height:7px;margin-left:8px}.map-summary i.online{background:var(--el-success);box-shadow:0 0 0 3px var(--success-border)}.map-summary i.offline{background:var(--el-danger);box-shadow:0 0 0 3px var(--danger-pale)}.device-map{background:var(--ink-100);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;outline:0;flex:1;height:100%;min-height:0;position:relative;overflow:hidden}.device-map:active{cursor:grabbing}.device-map:focus-visible{box-shadow:inset 0 0 0 2px var(--el-primary-hover)}.map-tile-layer,.map-device-layer{position:absolute;inset:0}.map-tile-layer{background:var(--ink-100)}.map-tile-layer img{pointer-events:none;width:256px;max-width:none;height:256px;position:absolute;top:50%;left:50%}.map-device-layer{pointer-events:none}.map-device-marker{z-index:3;color:var(--ink-800);white-space:nowrap;pointer-events:auto;cursor:pointer;background:#fffffff5;border:0;border-radius:18px;align-items:center;gap:7px;padding:5px 9px 5px 5px;transition:box-shadow .16s,scale .16s;display:flex;position:absolute;top:50%;left:50%;box-shadow:0 3px 11px #1e2c3933}.map-device-marker:hover,.map-device-marker.selected{z-index:5;scale:1.06;box-shadow:0 5px 17px #1e2c3947}.map-device-marker>span{color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:relative}.map-device-marker>span:after{content:"";border:2px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;bottom:1px;right:1px}.map-device-marker.online>span,.map-device-marker.online>span:after{background:var(--el-success)}.map-device-marker.offline>span{background:var(--el-text-secondary)}.map-device-marker.offline>span:after{background:var(--el-danger)}.map-device-marker svg{width:13px}.map-device-marker b{text-overflow:ellipsis;max-width:180px;font-size:11px;font-weight:600;overflow:hidden}.map-controls{z-index:8;border:1px solid var(--el-border-light);background:#fff;border-radius:5px;display:grid;position:absolute;top:14px;right:14px;overflow:hidden;box-shadow:0 4px 14px #222d3826}.map-controls button{border:0;border-bottom:1px solid var(--ink-100);width:34px;height:34px;color:var(--ink-800);background:#fff;place-items:center;padding:0;display:grid}.map-controls button:last-child{border-bottom:0}.map-controls button:hover{color:var(--el-primary);background:var(--primary-pale)}.map-controls button:disabled{color:var(--ink-400);cursor:not-allowed}.map-controls svg{width:15px}.map-zoom-level{z-index:7;color:var(--ink-600);background:#ffffffe6;border-radius:3px;padding:4px 7px;font-size:11px;position:absolute;top:128px;right:14px;box-shadow:0 2px 7px #222d381a}.map-device-card{z-index:8;cursor:default;background:#fffffff7;border:1px solid #dce1e7cc;border-radius:6px;width:270px;padding:14px;animation:.18s dialog-in;position:absolute;bottom:22px;left:14px;box-shadow:0 8px 24px #222d3833}.map-device-card header{border-bottom:1px solid var(--ink-50);align-items:center;gap:9px;padding-bottom:11px;display:flex}.map-device-card header>span{border-radius:50%;place-items:center;width:31px;height:31px;display:grid}.map-device-card header>span.online{color:var(--el-success);background:var(--success-pale)}.map-device-card header>span.offline{color:var(--el-danger);background:var(--danger-pale)}.map-device-card header svg{width:15px}.map-device-card header div{gap:3px;min-width:0;display:grid}.map-device-card header strong,.map-device-card header small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-device-card header small{color:var(--ink-600);font-size:11px}.map-device-card dl{margin:9px 0}.map-device-card dl div{justify-content:space-between;align-items:center;min-height:25px;display:flex}.map-device-card dt{color:var(--ink-600)}.map-device-card dd{max-width:165px;color:var(--ink-800);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.map-device-card dd.online{color:var(--el-success)}.map-device-card dd.offline{color:var(--el-danger)}.map-device-card>button{border:1px solid var(--primary-300);width:100%;height:30px;color:var(--primary-600);background:var(--primary-pale);border-radius:4px}.map-device-card>button:hover{color:#fff;background:var(--el-primary)}.map-attribution{z-index:7;color:var(--ink-600);background:#ffffffbf;padding:2px 4px;font-size:11px;position:absolute;bottom:4px;right:5px}.map-empty{z-index:6;color:var(--ink-600);background:#eff3f6db;align-content:center;place-items:center;gap:7px;display:grid;position:absolute;inset:0}.map-empty svg{width:30px;color:var(--el-primary-hover)}.map-empty span{font-size:11px}.player-screen{color:#fff;place-items:center;transition:background .8s;display:grid;position:fixed;inset:0;overflow:hidden}.player-screen>img,.player-screen>video{object-fit:cover;width:100%;height:100%}.player-message{text-align:center;animation:.7s both player-enter}.player-logo{border:3px solid #fffc;border-radius:20px;place-items:center;width:88px;height:88px;margin:0 auto 30px;font-size:48px;font-weight:700;display:grid}.player-message h1{letter-spacing:2px;margin:0;font-size:clamp(54px,6vw,96px);font-weight:600}.player-message p{opacity:.82;margin:24px 0 0;font-size:clamp(22px,2vw,34px)}.player-status{color:#ffffff8c;font:12px var(--font-geist-mono);align-items:center;gap:8px;display:flex;position:fixed;bottom:16px;right:20px}.player-status span{border-radius:50%;width:7px;height:7px}.player-status .online{background:#39d98a}.player-status .offline{background:var(--el-primary)}@keyframes player-enter{0%{opacity:0;transform:scale(.96)}}.canvas-context-menu{z-index:var(--z-context-menu);border:1px solid var(--el-border-light);border-radius:var(--radius-card);width:170px;box-shadow:var(--shadow-pop);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffffa;padding:6px;animation:.12s dialog-in;position:fixed}.canvas-context-menu button{border-radius:var(--radius-control);width:100%;height:32px;color:var(--ink-800);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:0 10px;font-size:12px;transition:background .14s,color .14s;display:flex}.canvas-context-menu button:hover{color:var(--primary-600);background:var(--primary-pale)}.canvas-context-menu button.menu-separator{border-top:1px solid var(--el-border-light);border-radius:0 0 var(--radius-control) var(--radius-control);margin-top:4px}.canvas-context-menu button.danger{color:var(--el-danger)}.organization-workspace{gap:var(--space-grid);flex-direction:row;align-items:stretch;display:flex}.organization-workspace>.organization-tree{flex:0 0 270px;min-width:0}.organization-workspace>.organization-members{flex:1 1 0;min-width:0}.role-management-grid,.system-settings-grid{gap:var(--space-grid);grid-template-rows:minmax(0,1fr);grid-template-columns:270px minmax(0,1fr);align-items:stretch;display:grid}.organization-workspace>.reference-panel,.role-management-grid>.reference-panel,.system-settings-grid>.reference-panel{height:100%;min-height:0}.organization-workspace .organization-tree{min-height:390px}.organization-members{padding-bottom:8px}.organization-members>article{border-bottom:1px solid var(--ink-50);grid-template-columns:220px 80px 1fr;align-items:center;gap:14px;min-height:78px;padding:10px 16px;display:grid}.organization-members>article>span{grid-template-rows:1fr 1fr;grid-template-columns:34px 1fr;align-items:center;gap:0 9px;display:grid}.organization-members>article>span i{width:32px;height:32px;color:var(--el-info);background:var(--primary-pale);border-radius:7px;grid-row:1/3;place-items:center;display:grid}.organization-members svg{width:16px}.organization-members span small{color:var(--ink-500)}.organization-members>article>strong{color:var(--ink-800);font-size:22px;font-weight:500}.organization-members>article>strong small{color:var(--ink-500);font-size:11px;font-weight:400;display:block}.organization-members article>div{flex-wrap:wrap;gap:5px;display:flex}.organization-members em,.role-badge{color:var(--ink-600);background:var(--ink-50);border-radius:3px;padding:4px 7px;font-size:11px;font-style:normal}.account-management-panel .reference-toolbar{gap:8px}.account-management-panel .reference-table{min-width:980px}.role-list-panel{min-height:360px}.role-list-panel>.role-list-item{border:0;border-bottom:1px solid var(--ink-50);width:100%;height:60px;color:var(--ink-800);text-align:left;background:#fff;justify-content:space-between;align-items:center;padding:0 15px;display:flex}.role-list-panel>.role-list-item span{align-items:center;gap:9px;display:flex}.role-list-panel>.role-list-item svg{width:17px;color:var(--el-success)}.role-list-panel>.role-list-item small{color:var(--ink-500)}.permission-matrix{overflow:hidden}.permission-matrix .reference-table th:not(:first-child),.permission-matrix .reference-table td:not(:first-child){text-align:center;width:72px}.permission-matrix svg{width:16px}.permission-on{color:var(--el-success)}.permission-off{color:var(--ink-400)}.system-settings-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.settings-form{gap:var(--space-pad) 18px;padding:var(--space-pad);grid-template-columns:1fr 1fr;display:grid}.settings-form label{color:var(--ink-600);gap:7px;font-weight:600;display:grid}.settings-form input{border:1px solid var(--el-border-light);height:38px;color:var(--ink-800);border-radius:4px;outline:0;padding:0 10px}.settings-form input:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #2467d117}.settings-form label small{color:var(--ink-500);font-size:11px;font-weight:400}.security-settings>article{border-bottom:1px solid var(--ink-50);grid-template-columns:1fr auto 48px;align-items:center;gap:10px;min-height:62px;padding:0 15px;display:grid}.security-settings article>span{align-items:center;gap:8px;display:flex}.security-settings svg{color:#8c6bdc;width:15px}.security-settings em{color:var(--ink-600);font-size:11px;font-style:normal}.security-settings button{color:var(--el-info);background:0 0;border:0;font-size:11px}@media (max-width:1050px){.organization-workspace{flex-direction:column}.role-management-grid,.system-settings-grid,.settings-form{grid-template-columns:1fr}}.template-editor-body{grid-template-columns:220px minmax(0,1fr) 300px}.template-canvas-workspace{background-color:var(--ink-100);background-image:linear-gradient(#d0d7df 1px,#0000 1px),linear-gradient(90deg,#d0d7df 1px,#0000 1px);background-size:20px 20px;padding:16px 18px}.template-canvas{border:1px solid #fffc;width:min(1120px,100% - 20px);max-height:calc(100% - 20px);box-shadow:0 12px 34px #252d3738}.template-component-library{grid-template-columns:repeat(2,1fr);gap:8px}.template-component-library>b,.template-component-library>small{grid-column:1/-1}.template-component-library>small{color:var(--ink-500);margin:-2px 0 4px;font-size:11px}.template-component-library button{border-radius:6px;height:58px;font-size:11px}.template-component-library svg{width:18px}.template-property-panel{padding:0 var(--space-pad) var(--space-pad);background:var(--gray-25)}.template-property-panel>.template-panel-title{height:48px;margin:0 calc(var(--space-pad) * -1) 12px;padding:0 var(--space-pad);border-bottom:1px solid var(--el-border-light);background:#fff}.template-property-section-title{height:28px;color:var(--ink-800);justify-content:space-between;align-items:center;margin:4px 0 10px;font-size:12px;font-weight:600;display:flex}.template-property-section-title:before{content:"";background:var(--el-primary);border-radius:2px;width:3px;height:13px;margin-right:7px}.template-property-section-title span{margin-right:auto}.template-property-section-title small{color:var(--ink-500);font-size:11px;font-weight:400}.template-property-section-title.compact{border-top:1px solid var(--el-border-light);margin-top:12px;padding-top:8px}.template-property-panel>label,.template-element-properties>label{gap:6px;margin-bottom:11px;font-size:11px}.template-property-panel input,.template-property-panel select,.template-property-panel textarea{border-radius:var(--radius-control);background:#fff;min-height:35px}.template-property-panel input:focus,.template-property-panel select:focus,.template-property-panel textarea:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #2467d114}.template-element-properties{border-top:0;margin-top:5px;padding-top:0}.template-property-grid{border:1px solid var(--el-border-light);border-radius:var(--radius-control);background:#fff;gap:9px;padding:10px}.template-delete-element{height:35px;margin-top:14px}.template-canvas-element.video,.template-canvas-element.qrcode{color:#738091;background:var(--ink-100)}.template-canvas-element.video svg,.template-canvas-element.qrcode svg{width:30px}.template-canvas-element.video span,.template-canvas-element.qrcode span{text-overflow:ellipsis;white-space:nowrap;max-width:90%;font-size:11px;overflow:hidden}.template-canvas-element video{object-fit:cover;pointer-events:none;width:100%;height:100%}@media (max-width:1100px){.template-editor-body{grid-template-columns:190px minmax(0,1fr) 260px}.template-canvas-workspace{padding:12px}.template-canvas{width:calc(100% - 8px)}}.template-resolution-picker{flex:none}.template-resolution-picker select{width:150px}.template-resolution-picker .custom-resolution-popover{left:0}.canvas-scroll{background-color:var(--editor-canvas);background-image:linear-gradient(#5d687557 1px,#0000 1px),linear-gradient(90deg,#5d687557 1px,#0000 1px),linear-gradient(#97a1ad2e 1px,#0000 1px),linear-gradient(90deg,#97a1ad2e 1px,#0000 1px)}.template-canvas-workspace{background-color:var(--editor-canvas);background-image:linear-gradient(#5d687557 1px,#0000 1px),linear-gradient(90deg,#5d687557 1px,#0000 1px),linear-gradient(#97a1ad2e 1px,#0000 1px),linear-gradient(90deg,#97a1ad2e 1px,#0000 1px);background-size:20px 20px,20px 20px,100px 100px,100px 100px}.layout-card-grid{gap:var(--space-grid);padding-top:var(--space-pad);grid-template-columns:repeat(5,minmax(0,1fr))}.layout-card{padding:8px}.layout-card-top{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;height:31px;font-size:11px;display:grid}.layout-card-top span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.layout-cover{gap:6px;padding:7px}.layout-cover.portrait{width:min(76px,42%)}.layout-cover .cover-slot{font-size:11px}.layout-card-meta{height:28px;font-size:11px}.layout-controls{white-space:nowrap;gap:4px;padding-top:6px}.layout-controls button{padding:0 2px;font-size:11px}@media (max-width:1550px){.layout-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1250px){.layout-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.layout-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.module-empty{gap:6px;padding:24px}.module-empty small{color:var(--el-text-secondary)}.module-empty button{margin-top:10px}.publish-orientation-note{background:var(--warning-pale);border:1px solid var(--warning-border);color:var(--amber-700);border-radius:8px;margin:0 0 14px;padding:10px 14px;font-size:13px;line-height:1.6}.sched{border:1px solid var(--ink-100);border-radius:var(--radius-card);background:#fff;overflow:hidden}.sched-bar{border-bottom:1px solid var(--ink-100);background:var(--gray-25);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.sched-presets{align-items:center;gap:5px;display:flex}.sched-presets>span{color:var(--ink-500);font-size:11px}.sched-presets button{height:var(--el-h-sm);border:1px solid var(--el-border-light);border-radius:var(--radius-control);color:var(--ink-600);cursor:pointer;background:#fff;padding:0 9px;font-size:11px;transition:color .16s,border-color .16s,background .16s}.sched-presets button:hover{color:var(--primary-600);border-color:var(--primary-300);background:var(--primary-pale)}.sched-legend{color:var(--ink-500);align-items:center;gap:11px;font-size:11px;display:flex}.sched-legend span{align-items:center;gap:5px;display:flex}.sched-legend i{border:1px solid var(--el-border-light);background:#fff;border-radius:3px;width:12px;height:12px}.sched-legend .key-on{border-color:var(--primary-600);background:var(--primary-500)}.sched-legend .key-occ{background:repeating-linear-gradient(135deg, var(--ink-200) 0 3px, var(--ink-50) 3px 6px)}.sched-legend .key-conf{border-color:var(--el-danger);background:var(--danger-pale)}.sched-legend .sched-legend-error{color:var(--red-600);font-weight:600}.sched-ruler,.sched-body{display:flex}.sched-ruler{background:var(--el-fill);border-bottom:1px solid var(--ink-100)}.sched-hours{flex:1;grid-template-columns:repeat(24,1fr);min-width:0;display:grid}.sched-hours span{border-left:1px solid var(--ink-100);color:var(--ink-500);font-variant-numeric:tabular-nums;padding:5px 0 5px 4px;font-size:11px}.sched-hours span:nth-child(6n+1){color:var(--ink-800);font-weight:600}.sched-gutter{flex:0 0 46px}.sched-tail{flex:0 0 58px}.sched-days{border-right:1px solid var(--el-border-light);background:var(--gray-25);grid-template-rows:repeat(7,26px);display:grid}.sched-days span{border-top:1px solid var(--ink-100);color:var(--el-text-regular);justify-content:center;align-items:center;font-size:11px;display:flex}.sched-days span:first-child{border-top:0}.sched-totals{border-left:1px solid var(--el-border-light);background:var(--gray-25);grid-template-rows:repeat(7,26px);display:grid}.sched-totals span{border-top:1px solid var(--ink-100);color:var(--ink-500);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;padding-right:8px;font-size:11px;display:flex}.sched-totals span:first-child{border-top:0}.sched-plot{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;cursor:crosshair;flex:1;grid-template-rows:repeat(7,26px);grid-template-columns:repeat(48,1fr);min-width:0;display:grid}.sched-plot i{border-right:1px solid var(--ink-50);border-bottom:1px solid var(--ink-50);background:#fff}.sched-plot i:nth-child(2n){border-right-color:var(--ink-100)}.sched-plot i:nth-child(12n){border-right-color:var(--ink-200)}.sched-plot i:nth-child(n+289){border-bottom:0}.sched-plot i.occ{background-image:repeating-linear-gradient(135deg, var(--ink-100) 0 3px, transparent 3px 6px)}.sched-plot i.on{border-color:var(--primary-600);background-color:var(--primary-500)}.sched-plot i.on.conf{border-color:var(--el-danger);background-color:var(--el-danger)}.sched-plot i:not(.on):hover{background-color:var(--primary-100)}.sched-dragging .sched-plot i{pointer-events:none}.sched-runs{border-top:1px solid var(--ink-100);background:var(--gray-25);flex-wrap:wrap;align-items:center;gap:6px;min-height:40px;max-height:116px;padding:7px 10px;display:flex;overflow-y:auto}.sched-runs>p{color:var(--ink-500);margin:0;font-size:11px}.sched-chip{height:var(--el-h-sm);border:1px solid var(--primary-200);border-radius:var(--radius-control);background:#fff;align-items:center;gap:6px;padding:0 4px 0 9px;font-size:11px;display:inline-flex}.sched-chip b{color:var(--ink-800);font-weight:600}.sched-chip em{color:var(--primary-600);font-variant-numeric:tabular-nums;font-style:normal}.sched-chip small{color:var(--ink-500)}.sched-chip button{border-radius:var(--radius-control);width:20px;height:20px;color:var(--ink-400);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.sched-chip button:hover{color:#fff;background:var(--el-danger)}.sched-chip button svg{width:12px;height:12px}.sched-foot{border-top:1px solid var(--ink-100);justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.sched-sum{color:var(--ink-600);align-items:baseline;gap:12px;font-size:11px;display:flex}.sched-sum strong{color:var(--el-text-primary);font-size:12px}.sched-conflict{border:1px solid var(--danger-border);border-radius:var(--radius-control);background:var(--danger-pale);color:var(--red-600);margin-top:8px;padding:9px 12px;font-size:11px;line-height:1.7}.sched-conflict b{color:var(--red-600)}@keyframes sched-pop{0%{transform:scale(.62)}55%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes sched-num-pop{0%{transform:scale(1)}40%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes sched-rise{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes sched-chip-in{0%{opacity:0;transform:translateY(-6px)scale(.9)}to{opacity:1;transform:none}}.sched-plot i.on.rs{border-radius:4px 0 0 4px}.sched-plot i.on.re{border-radius:0 4px 4px 0}.sched-plot i.on.rs.re{border-radius:4px}.sched-plot{transition:outline-color var(--dur-fast) var(--ease-standard);outline-offset:-2px;outline:2px solid #0000}.sched-dragging .sched-plot{outline-color:var(--primary-300)}.sched:not(.sched-dragging) .sched-plot i{transition:background-color var(--dur-press) linear, transform var(--dur-press) var(--ease-spring)}.sched-dragging .sched-plot i{transition:none}.sched-plot i:not(.on):hover{transform:scale(1.16)}.sched-plot i.pop-a,.sched-plot i.pop-b{animation:sched-pop var(--dur-base) var(--ease-standard)}.sched-drag-hint{animation:sched-rise var(--dur-fast) var(--ease-standard);align-items:center;gap:10px;margin:0;display:flex}.sched-drag-hint b{color:var(--primary-600);font-size:12px}.sched-drag-hint span{color:var(--el-text-primary);font-variant-numeric:tabular-nums}.sched-drag-hint small{color:var(--ink-500)}.sched-chip{animation:sched-chip-in var(--dur-base) var(--ease-spring)}.sched-chip:nth-child(2){animation-delay:26ms}.sched-chip:nth-child(3){animation-delay:52ms}.sched-chip:nth-child(4){animation-delay:78ms}.sched-chip:nth-child(5){animation-delay:.104s}.sched-chip:nth-child(n+6){animation-delay:.13s}.sched-sum strong{animation:sched-num-pop var(--dur-base) var(--ease-standard);display:inline-block}.sched-conflict{animation:sched-rise var(--dur-base) var(--ease-standard)}.sched-presets button,.sched-quick button{transition:color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard)}.sched-presets button:active,.sched-quick button:active{transform:scale(.95)}.sched-chip button{transition:color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard)}.sched-chip button:active{transform:scale(.86)}.playback-mode-picker>button{transition:color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard)}.playback-mode-picker>button:active{transform:scale(.99)}.publish-stage--wide{max-width:none}.sched-step{border:1px solid var(--ink-100);border-radius:var(--radius-card);background:#fff;padding:14px 16px 16px}.sched-step>header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.sched-step>header.compact{border-top:1px solid var(--ink-100);margin:16px 0 10px;padding-top:14px}.sched-step>header>i{width:22px;height:22px;color:var(--primary-600);background:var(--primary-pale);border-radius:50%;flex:0 0 22px;place-items:center;font-size:11px;font-style:normal;font-weight:600;display:grid}.sched-step>header>div{gap:3px;margin-right:auto;display:grid}.sched-step>header b{color:var(--el-text-primary);font-size:13px}.sched-step>header small{color:var(--ink-500);font-size:11px}.sched-step>header em{border-radius:var(--radius-control);color:var(--ink-600);background:var(--ink-50);white-space:nowrap;padding:3px 8px;font-size:11px;font-style:normal}.sched-step>header em.invalid{color:var(--red-600);background:var(--danger-pale)}.sched-dates{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:14px;display:grid}.sched-dates label{color:var(--ink-600);gap:6px;font-size:11px;display:grid}.sched-dates label>span{align-items:center;gap:4px;display:flex}.sched-dates label b{color:var(--el-primary)}.sched-dates input{width:100%;height:var(--el-h-control);border:1px solid var(--el-border-light);border-radius:var(--radius-control);color:var(--ink-800);background:#fff;outline:0;padding:0 10px}.sched-dates input:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #2467d11a}.sched-quick{align-items:center;gap:5px;display:flex}.sched-quick>span{color:var(--ink-500);font-size:11px}.sched-quick button{height:var(--el-h-control);border:1px solid var(--el-border-light);border-radius:var(--radius-control);color:var(--ink-600);cursor:pointer;background:#fff;padding:0 10px;font-size:11px}.sched-quick button:hover{color:var(--primary-600);border-color:var(--primary-300);background:var(--primary-pale)}@media (max-width:900px){.sched-legend{display:none}.sched-legend:has(.sched-legend-error){display:flex}.sched-dates{grid-template-columns:1fr}.sched-tail{display:none}.sched-hours span{visibility:hidden}.sched-hours span:nth-child(4n+1){visibility:visible;color:var(--ink-500)}}.publish-force-row{justify-content:flex-end;margin-top:10px;display:flex}.playlist-layout{gap:var(--space-grid);grid-template-columns:260px 1fr;display:grid}.playlist-list{flex-direction:column;gap:6px;display:flex}.playlist-row{border:1px solid var(--ink-100);background:var(--gray-25);text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.playlist-row.active{border-color:var(--el-info);background:var(--primary-pale)}.playlist-row b{color:var(--el-text-primary);flex:1;font-size:13px}.playlist-row small{color:var(--el-text-secondary)}.playlist-detail strong{color:var(--el-text-primary);font-size:13px}.playlist-items{color:var(--el-text-regular);margin:10px 0;padding-left:18px;font-size:12px}.playlist-items li{justify-content:space-between;max-width:360px;margin:4px 0;display:flex}.playlist-items em{color:var(--el-text-secondary);font-style:normal}.playlist-assign{border-top:1px dashed var(--ink-100);margin-top:12px;padding-top:12px}.playlist-assign>strong{color:var(--el-text-regular);align-items:center;gap:6px;font-size:12px;display:flex}.playlist-device-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;margin:10px 0;display:grid}.playlist-device-grid label{border:1px solid var(--ink-100);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.playlist-device-grid label.active{border-color:var(--el-info);background:var(--primary-pale)}.playlist-device-grid small{color:var(--el-text-secondary)}.playlist-device-grid em{color:var(--el-danger);margin-left:auto;font-size:11px;font-style:normal}.playlist-device-grid em.online{color:var(--el-success)}.playlist-progress{background:var(--el-border-light);border-radius:3px;height:6px;overflow:hidden}.playlist-progress i{background:var(--el-info);height:100%;transition:width .5s;display:block}.playlist-pick-list{flex-direction:column;gap:6px;max-height:300px;display:flex;overflow:auto}.playlist-pick-list label{align-items:center;gap:8px;font-size:12px;display:flex}.playlist-pick-list input[type=number]{width:64px}.canvas-marquee{border:1px solid var(--el-info);pointer-events:none;z-index:60;background:#409eff1f;position:absolute}.canvas-element.multi-selected{outline:2px dashed var(--el-info);outline-offset:1px}.canvas-element.grouped:before{content:"组";z-index:5;color:var(--ink-400);background:#67c23ad9;border-radius:4px;padding:0 4px;font-size:11px;line-height:16px;position:absolute;top:4px;left:4px}.wall-card{border:1px solid var(--ink-100);background:var(--gray-25);border-radius:10px;margin-bottom:12px;padding:12px 14px}.wall-head{align-items:center;gap:10px;display:flex}.wall-head b{font-size:13px}.wall-head small{color:var(--el-text-secondary);flex:1}.wall-body{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-top:10px;display:flex}.wall-grid{flex:1;gap:6px;min-width:320px;max-width:640px;display:grid}.wall-cell{border:1px dashed var(--ink-300);background:var(--gray-25);border-radius:8px;flex-direction:column;gap:4px;min-height:74px;padding:8px;display:flex}.wall-cell.on{border:1px solid var(--el-success);background:var(--success-pale)}.wall-cell.off{border:1px solid var(--el-danger);background:var(--danger-pale)}.wall-cell em{color:var(--el-text-secondary);font-size:11px;font-style:normal}.wall-cell b{font-size:12px}.wall-cell small{color:var(--el-text-secondary)}.wall-cell.editable select{width:100%}.wall-bind{min-width:280px}.wall-bind label{color:var(--el-text-regular);flex-direction:column;gap:6px;font-size:12px;display:flex}.wall-slot-picker{margin-top:8px}.wall-slot-picker strong{color:var(--el-text-regular);font-size:12px}.wall-editor{width:min(860px,94vw)}.wall-detail{width:min(1120px,96vw)}.wall-detail-toolbar,.wall-assignments{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:14px;display:flex}.wall-detail-toolbar label,.wall-assignments label{color:var(--el-text-regular);flex-direction:column;gap:4px;font-size:12px;display:flex}.wall-assignments{border:1px solid var(--ink-100);border-radius:8px;padding:10px}.wall-assignments>strong{width:100%;color:var(--el-text-primary);font-size:12px}.wall-preview{border:1px solid var(--el-border);background:var(--gray-25);border-radius:8px;padding:12px;overflow:auto}.wall-preview>strong{color:var(--el-text-primary);margin-bottom:8px;font-size:12px;display:block}.wall-preview>small{color:var(--el-text-secondary);margin-top:8px;display:block}.wall-preview-canvas{background:#111827;min-width:280px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #374151}.wall-preview-element{border:1px solid #ffffff59;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;overflow:hidden}.wall-preview-element.slot{background:#409effc7!important}.wall-preview-screen{pointer-events:none;box-sizing:border-box;border:1px solid #facc15;position:absolute}.wall-preview-screen span{color:var(--el-text-primary);background:#facc15;padding:1px 3px;font-size:11px;display:inline-block}.wall-preview-empty{min-height:140px}.wall-status{margin-top:14px}.wall-status>strong{color:var(--el-text-primary);margin-bottom:8px;font-size:12px;display:block}.wall-hint{color:var(--el-text-secondary);margin:8px 0;font-size:12px}.m-shell{background:var(--canvas);max-width:480px;min-height:100vh;padding-bottom:calc(64px + env(safe-area-inset-bottom));margin:0 auto}.m-header{z-index:1;color:#fff;background:var(--ink-chrome);align-items:center;gap:8px;min-height:56px;padding:0 16px;display:flex;position:sticky;top:0}.m-header__title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:16px;font-weight:600;overflow:hidden}.m-header__stat{color:var(--ink-400);white-space:nowrap;margin-left:auto;font-size:13px}.m-icon-btn{border-radius:var(--radius-control);width:44px;height:44px;color:var(--ink-400);transition:color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);background:0 0;border:0;flex:0 0 44px;justify-content:center;align-items:center;padding:0;display:inline-flex}.m-icon-btn:active{transform:scale(.9)}.m-icon-btn:hover{color:#fff;background:#ffffff1a}.m-icon-btn--auto{margin-left:auto}.m-main{padding:var(--space-grid)}.m-nav{z-index:2;max-width:480px;padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--el-border-light);margin:0 auto;display:flex;position:fixed;inset:auto 0 0}.m-nav button{min-height:56px;color:var(--ink-400);touch-action:manipulation;transition:color var(--dur-fast) var(--ease-standard), background var(--dur-press) var(--ease-standard);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:8px 0;font-size:11px;display:flex}.m-nav button svg{transition:transform var(--dur-press) var(--ease-standard)}.m-nav button:active{background:var(--ink-50)}.m-nav button:active svg{transform:scale(.85)}.m-nav button.active svg{animation:nav-pop var(--dur-base) var(--ease-spring)}.m-nav button.active{color:var(--primary-600);font-weight:600}.m-alert{border:1px solid var(--danger-border);border-radius:var(--radius-card);color:var(--red-600);background:var(--danger-pale);justify-content:space-between;align-items:center;gap:8px;margin:8px 12px 0;padding:10px 12px;font-size:13px;display:flex}.m-alert button{color:inherit;background:0 0;border:0;padding:4px}.m-loading{color:var(--ink-400);text-align:center;padding:48px 32px}.m-empty{color:var(--ink-400);text-align:center;padding:32px;font-size:14px}.m-note{color:var(--ink-500);margin:0 0 10px;font-size:12px}.m-stat-grid{gap:var(--space-grid);grid-template-columns:1fr 1fr;display:grid}.m-card--stat{margin-bottom:0}.m-stat__value{color:var(--ink-chrome);font-variant-numeric:tabular-nums;font-size:24px;font-weight:700}.m-stat__label{color:var(--ink-500);margin-top:4px;font-size:12px}.m-card{width:100%;margin-bottom:var(--space-grid);padding:var(--space-pad);border-radius:var(--radius-panel);background:var(--surface);box-shadow:var(--shadow-card);overflow-wrap:anywhere;border:0;display:block;position:relative}.m-card--tap{transition:transform var(--dur-press) var(--ease-standard)}.m-card--tap:active{transform:scale(.988)}button.m-card,.m-card--tap{cursor:pointer;text-align:left}.m-card--stack{align-items:center;gap:12px;display:flex}.m-label{color:var(--ink-500);margin-bottom:6px;padding-left:4px;font-size:13px}.m-field-label{color:var(--ink-600);margin:0 0 6px;font-size:13px;display:block}.m-field-label--gap{margin-top:12px}.m-alert--inline{margin:0 0 12px}.m-row{align-items:center;gap:12px;display:flex}.m-row--tight{gap:8px}.m-item-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:500;overflow:hidden}.m-item-sub{color:var(--ink-500);overflow-wrap:anywhere;font-size:13px}.m-item-meta{color:var(--ink-400);font-size:11px}.m-item-title--sm{font-size:14px}.m-dot{background:var(--ink-400);border-radius:50%;flex:0 0 8px;width:8px;height:8px}.m-dot--online{background:var(--green-deep)}.m-online-text{color:var(--green-deep);font-size:13px}.m-offline-text{color:var(--ink-400);font-size:13px}.m-chevron{color:var(--ink-400);flex:none}.m-thumb{border-radius:var(--radius-control);width:48px;height:48px;color:var(--ink-400);background:var(--ink-100);flex:0 0 48px;place-items:center;display:grid;overflow:hidden}.m-thumb img{object-fit:cover;width:100%;height:100%}.m-avatar{color:#fff;background:var(--primary-600);border-radius:50%;place-items:center;width:56px;height:56px;margin:0 auto 12px;display:grid}.m-badge{color:#fff;background:var(--red-600);border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;display:inline-grid}.m-chip{border-radius:var(--radius-control);color:var(--ink-600);background:var(--ink-50);padding:4px 9px;font-size:12px}.m-info-row{border-bottom:1px solid var(--el-border-light);align-items:center;gap:8px;padding:9px 0;display:flex}.m-info-row:last-child{border-bottom:0}.m-info-row__label{color:var(--ink-500);flex:1;font-size:13px}.m-info-row__value{color:var(--ink-800);font-size:13px;font-weight:500}.m-section-title{color:var(--ink-800);align-items:center;gap:6px;margin-bottom:12px;font-size:14px;font-weight:600;display:flex}.m-section-title svg{color:var(--primary-600)}.m-input,.m-select,.m-textarea{border:1px solid var(--el-border);border-radius:var(--radius-card);width:100%;min-height:44px;color:var(--el-text-primary);background:#fff;outline:0;padding:10px 12px;font-size:16px;transition:border-color .16s,box-shadow .16s}.m-input:focus,.m-select:focus,.m-textarea:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #2467d11a}.m-input::placeholder,.m-textarea::placeholder{color:var(--ink-400)}.m-textarea{resize:vertical;min-height:88px}.m-field{margin-bottom:12px}.m-field:last-child{margin-bottom:0}.m-file-input{display:none}.m-btn{border-radius:var(--radius-card);width:100%;min-height:44px;color:var(--el-text-regular);touch-action:manipulation;transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:11px 16px;font-size:15px;font-weight:500;display:inline-flex}.m-btn:active:not(:disabled){transform:scale(.97)}.m-btn--primary{color:#fff;background:var(--primary-600)}.m-btn--primary:hover{background:var(--primary-500)}.m-btn--outline{color:var(--primary-600);border-color:var(--primary-300);background:#fff}.m-btn--outline:hover{background:var(--primary-pale)}.m-btn--ghost{color:var(--ink-600);background:var(--ink-100)}.m-btn--ghost:hover{color:var(--ink-800);background:var(--ink-50)}.m-btn--danger{color:var(--red-600);border-color:var(--danger-border);background:var(--danger-pale)}.m-btn--sm{border-radius:var(--radius-control);width:auto;min-height:34px;padding:6px 10px;font-size:13px}.m-btn+.m-btn{margin-top:8px}.m-btn-row{margin-bottom:var(--space-grid);gap:8px;display:flex}.m-btn-row .m-btn{margin-top:0}.m-btn-link{color:var(--primary-600);background:0 0;border:0;align-items:center;gap:4px;padding:8px;font-size:14px;display:inline-flex}.m-action{border:1px solid var(--primary-300);border-radius:var(--radius-control);color:var(--primary-600);background:var(--primary-pale);flex:none;align-items:center;gap:4px;padding:7px 10px;font-size:12px;display:inline-flex}.m-icon-action{color:var(--ink-400);transition:transform var(--dur-press) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:6px;display:inline-flex}.m-icon-action:active{transform:scale(.88)}.m-segmented{margin-bottom:var(--space-grid);border-radius:var(--radius-panel);background:var(--surface);box-shadow:var(--shadow-card);gap:4px;padding:4px;display:flex}.m-segmented button{border-radius:var(--radius-control);min-height:40px;color:var(--ink-500);touch-action:manipulation;transition:color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);background:0 0;border:0;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:14px;display:inline-flex;position:relative}.m-segmented button:active{transform:scale(.97)}.m-segmented button.active{color:#fff;background:var(--primary-600);font-weight:500}.m-segmented .m-badge{position:absolute;top:4px;right:12px}.m-card--unread{background:var(--blue-50)}.m-net{right:16px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:var(--z-overlay);border-radius:20px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:500;display:flex;position:fixed;box-shadow:0 2px 8px #17202d1f}.m-net--online{color:var(--emerald-800);background:var(--emerald-50);border:1px solid var(--emerald-200)}.m-net--offline{color:var(--red-800);background:var(--red-50);border:1px solid var(--red-100)}.m-avatar-btn{width:44px;height:44px;color:var(--ink-300);touch-action:manipulation;transition:background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);background:0 0;border:0;border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;padding:0;display:inline-flex}.m-avatar-btn:hover{color:#fff;background:#ffffff1a}.m-avatar-btn:active{transform:scale(.92)}.m-avatar-btn.active{color:#fff;background:#ffffff29}.m-card--hero{padding:var(--space-pad) var(--space-pad) 20px}.m-home__title{color:var(--ink-950);margin:0 0 6px;font-size:20px;font-weight:600;line-height:1.35}.m-home__entries{gap:var(--space-grid);margin-bottom:var(--space-grid);display:grid}.m-entry{width:100%;min-height:60px;padding:var(--space-pad);border:1px solid var(--el-border);border-radius:var(--radius-panel);background:var(--surface);box-shadow:var(--shadow-card);text-align:left;touch-action:manipulation;transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);align-items:center;gap:12px;display:flex}.m-entry:active:not(:disabled){transform:scale(.985)}.m-entry:disabled{opacity:.55}.m-entry--primary{border-color:var(--primary-600);box-shadow:inset 0 0 0 1px var(--primary-600);background:var(--primary-pale)}.m-home__entry-text{flex:1;gap:3px;min-width:0;display:grid}.m-home__todo{width:100%;min-height:44px;margin-bottom:var(--space-grid);border:1px solid var(--warning-border);border-radius:var(--radius-card);color:var(--ink-800);background:var(--warning-pale);text-align:left;touch-action:manipulation;align-items:center;gap:8px;padding:10px 12px;display:flex}.m-home__todo:active{transform:scale(.985)}.m-home__todo-text{overflow-wrap:anywhere;flex:1;min-width:0;font-size:13px}.m-home__stats{gap:var(--space-grid);grid-template-columns:1fr 1fr;margin-bottom:8px;display:grid}.m-home__tile{padding:var(--space-pad);border:1px solid var(--el-border-light);border-radius:var(--radius-card);background:var(--surface)}.m-home__footnote{margin:0}.m-menu-row{border:0;border-bottom:1px solid var(--el-border-light);width:100%;min-height:52px;color:var(--el-text-primary);text-align:left;touch-action:manipulation;background:0 0;align-items:center;gap:12px;padding:10px 0;display:flex}.m-menu-row:last-child{border-bottom:0}.m-menu-row:active{transform:scale(.99)}.m-menu-row__text{flex:1;gap:3px;min-width:0;display:grid}.m-qp__steps{margin-bottom:var(--space-grid);gap:6px;display:flex}.m-qp__step{border-radius:var(--radius-control);color:var(--ink-400);background:var(--ink-50);flex:1;align-items:center;gap:6px;padding:6px 8px;display:flex}.m-qp__step.on{color:var(--primary-600);background:var(--primary-pale)}.m-qp__step-num{width:18px;height:18px;color:var(--ink-500);background:var(--surface);border-radius:50%;flex:0 0 18px;place-items:center;font-size:11px;font-weight:600;display:grid}.m-qp__step.on .m-qp__step-num{color:#fff;background:var(--primary-600)}.m-qp__step-label{font-size:12px;font-weight:500}.m-qp__question{color:var(--ink-950);margin:0 0 4px;font-size:18px;font-weight:600;line-height:1.4}.m-qp__lede{margin:0 0 var(--space-pad)}.m-qp__back{align-items:center;min-height:44px;margin-bottom:4px;padding:0}.m-qp__foot{margin:8px 0 12px}.m-qp__drop{border:1px dashed var(--ink-300);border-radius:var(--radius-card);background:var(--ink-50);cursor:pointer;touch-action:manipulation;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:88px;padding:16px;display:flex}.m-qp__drop:active{background:var(--primary-pale);border-color:var(--primary-500)}.m-qp__drop-text{color:var(--ink-600);font-size:14px}.m-qp__item{border-bottom:1px solid var(--el-border-light);align-items:center;gap:8px;padding:10px 0;display:flex;position:relative}.m-qp__item:last-of-type{border-bottom:0}.m-qp__item-main{overflow-wrap:anywhere;flex:1;gap:3px;min-width:0;display:grid}.m-qp__item-actions{flex:none;align-items:center;gap:4px;display:flex}.m-qp__bar{background:var(--ink-100);border-radius:2px;height:3px;margin-top:6px;overflow:hidden}.m-qp__bar i{background:var(--primary-500);height:100%;transition:width .18s var(--ease-standard);display:block}.m-qp__add{border:1px solid var(--primary-300);border-radius:var(--radius-card);width:100%;min-height:44px;color:var(--primary-600);background:var(--primary-pale);touch-action:manipulation;justify-content:center;align-items:center;gap:6px;margin-top:8px;font-size:14px;display:inline-flex}.m-qp__notice{margin-bottom:var(--space-grid);border:1px solid var(--warning-border);border-radius:var(--radius-card);color:var(--ink-800);background:var(--warning-pale);overflow-wrap:anywhere;align-items:flex-start;gap:8px;padding:10px 12px;font-size:13px;line-height:1.5;display:flex}.m-qp__notice svg{color:var(--amber-700);flex:none;margin-top:2px}.m-qp__screen{border:1px solid var(--el-border);border-radius:var(--radius-card);background:var(--surface);text-align:left;touch-action:manipulation;width:100%;min-height:56px;transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex}.m-qp__screen:active{transform:scale(.985)}.m-qp__screen.active{border-color:var(--primary-600);box-shadow:inset 0 0 0 1px var(--primary-600);background:var(--primary-pale)}.m-qp__check{border:1px solid var(--ink-300);border-radius:var(--radius-control);color:#fff;background:var(--surface);flex:0 0 20px;place-items:center;width:20px;height:20px;display:grid}.m-qp__check.on{border-color:var(--primary-600);background:var(--primary-600)}.m-qp__screen-text{flex:1;gap:3px;min-width:0;display:grid}.m-qp__summary{gap:2px;margin-top:8px;display:grid}.m-qp__row{border-bottom:1px solid var(--el-border-light);align-items:flex-start;gap:12px;padding:8px 0;font-size:14px;display:flex}.m-qp__row:last-child{border-bottom:0}.m-qp__row-label{width:64px;color:var(--ink-500);flex:0 0 64px;font-size:13px}.m-qp__row-value{min-width:0;color:var(--ink-800);overflow-wrap:anywhere;flex:1}.m-qp__spin{animation:.9s linear infinite m-qp-spin}@keyframes m-qp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.m-qp__spin{animation:none}.m-qp__bar i{transition:none}}.m-res__card{padding:var(--space-pad) var(--space-pad) 20px;text-align:center;justify-items:center;gap:8px;display:grid}.m-res__icon{border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.m-res__icon.green{color:var(--emerald-700);background:var(--success-pale)}.m-res__icon.orange{color:var(--amber-700);background:var(--warning-pale)}.m-res__icon.red{color:var(--red-600);background:var(--danger-pale)}.m-res__heading{color:var(--ink-950);font-size:18px;font-weight:600}.m-res__msg{margin:0}.m-res__honest{margin-top:var(--space-grid)}.m-card-title{margin-bottom:var(--space-pad);color:var(--ink-800);font-size:15px;font-weight:600}.m-field-label--sm{color:var(--ink-500);margin-bottom:4px;font-size:12px}.m-inset{margin-bottom:var(--space-grid);border-radius:var(--radius-card);background:var(--gray-50);padding:12px}.m-grid-2{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.m-check{color:var(--ink-600);cursor:pointer;align-items:center;gap:6px;margin-bottom:8px;font-size:13px;display:flex}.m-check input{width:18px;height:18px;accent-color:var(--primary-600)}.m-check--sm{color:var(--ink-500);margin-bottom:0;font-size:12px}.m-option{border:1px solid var(--el-border);border-radius:var(--radius-card);background:var(--surface);text-align:left;touch-action:manipulation;width:100%;transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);align-items:center;gap:10px;margin-bottom:6px;padding:12px;display:flex}.m-option:active:not(:disabled){transform:scale(.985)}.m-option.active{border-color:var(--primary-600);box-shadow:inset 0 0 0 1px var(--primary-600);background:var(--primary-pale)}.m-option:disabled{opacity:.5}.m-option__icon{border-radius:var(--radius-control);width:32px;height:32px;color:var(--primary-600);background:var(--ink-100);flex:0 0 32px;place-items:center;display:grid}.m-option__title{color:var(--ink-800);font-size:14px;font-weight:500}.m-option.active .m-option__title{color:var(--primary-600)}.m-option__desc{color:var(--ink-400);font-size:11px}.m-option-row{gap:8px;margin-bottom:8px;display:flex}.m-option-row .m-option{color:var(--ink-500);flex:1;justify-content:center;margin-bottom:0;padding:9px;font-size:13px}.m-option-row .m-option.active{color:var(--primary-600);font-weight:500}.m-tag{color:#fff;background:var(--primary-600);border-radius:4px;margin-left:4px;padding:1px 6px;font-size:10px;display:inline-block}.m-steps{margin-bottom:var(--space-grid);align-items:center;padding:0 4px;display:flex}.m-steps__item{flex-direction:column;flex:1;align-items:center;display:flex}.m-steps__num{width:26px;height:26px;color:var(--ink-400);background:var(--el-border-light);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.m-steps__num.done{color:#fff;background:var(--primary-600)}.m-steps__num.current{color:#fff;background:var(--blue-500)}.m-steps__label{color:var(--ink-400);white-space:nowrap;margin-top:2px;font-size:11px}.m-steps__item.done .m-steps__label{color:var(--green-deep)}.m-sheet-mask{z-index:var(--z-dialog);background:#0f172a80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.m-sheet{width:100%;max-width:480px;max-height:80vh}.m-summary{width:100%;margin-bottom:var(--space-grid);border-radius:var(--radius-card);background:var(--gray-50);border-collapse:collapse;padding:12px;font-size:12px}.m-summary td{padding:4px 0}.m-summary td:first-child{color:var(--ink-400)}.m-preview{border-radius:var(--radius-card);background:var(--gray-50);justify-content:center;max-height:160px;margin-bottom:8px;display:flex;overflow:hidden}.m-preview img,.m-preview video{object-fit:contain;max-width:100%;max-height:160px}.m-btn--grow{flex:1;width:auto}.m-btn--grow-2{flex:2;width:auto}.m-btn--ai{border:1px dashed var(--sky-300);color:var(--sky-700);background:var(--sky-50);margin-top:8px;font-size:13px}.m-ai-result{border-radius:var(--radius-card);color:var(--sky-900);background:var(--sky-50);margin-top:8px;padding:10px;font-size:12px}.m-thumb--sm{flex:0 0 32px;width:32px;height:32px}.m-slot{border:1px solid var(--success-border);border-radius:var(--radius-card);background:var(--success-pale);align-items:center;gap:8px;padding:8px;display:flex}.m-slot__thumb{border-radius:var(--radius-control);background:var(--ink-100);flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.m-slot__thumb img{object-fit:cover;width:100%;height:100%}.m-slot__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;overflow:hidden}.m-pick-btn{border:1px dashed var(--el-border);border-radius:var(--radius-card);min-height:42px;color:var(--ink-500);background:var(--gray-50);cursor:pointer;touch-action:manipulation;transition:border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);flex:1;justify-content:center;align-items:center;gap:4px;padding:10px;font-size:12px;display:inline-flex}.m-pick-btn:active{transform:scale(.97)}.m-pick-btn:hover{color:var(--primary-600);border-color:var(--primary-300)}.m-pick-row{gap:6px;display:flex}.m-success{width:48px;height:48px;color:var(--primary-600);background:var(--success-pale);border-radius:50%;place-items:center;margin:0 auto 12px;display:grid}.m-detail-table{border-collapse:collapse;width:100%;font-size:13px}.m-detail-table td{border-bottom:1px solid var(--el-border-light);padding:9px 0}.m-detail-table tr:last-child td{border-bottom:0}.m-detail-table td:first-child{width:90px;color:var(--ink-500)}.m-detail-table td:last-child{color:var(--ink-800);overflow-wrap:anywhere}.m-tile-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.m-tile{border:1px solid var(--el-border);border-radius:var(--radius-card);min-height:44px;color:var(--ink-600);background:var(--gray-50);touch-action:manipulation;transition:border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);justify-content:center;align-items:center;gap:6px;padding:12px 8px;font-size:13px;display:inline-flex}.m-tile:active:not(:disabled){transform:scale(.96)}.m-tile:hover{color:var(--primary-600);border-color:var(--primary-300)}.m-tile:disabled{color:var(--ink-400)}.m-head-row{align-items:center;gap:12px;margin-bottom:8px;display:flex}.m-head-row svg{color:var(--primary-600);flex:none}.m-empty-block{color:var(--ink-400);text-align:center;padding:32px}.m-empty-block svg{color:var(--ink-300)}.m-empty-block p{margin:12px 0 0;font-size:14px}.m-toggle{background:0 0;border:0;padding:4px}.m-meta-row{color:var(--ink-500);flex-wrap:wrap;gap:4px 12px;font-size:12px;display:flex}.m-preview-lg,.m-preview-lg img,.m-preview-lg video{max-height:240px}.m-publish-status{font-size:13px}.m-check-list{border:1px solid var(--el-border);border-radius:var(--radius-card);max-height:200px;margin-bottom:12px;overflow-y:auto}.m-check-item{border-bottom:1px solid var(--el-border-light);cursor:pointer;align-items:center;gap:8px;padding:9px 12px;display:flex}.m-check-item:last-child{border-bottom:0}.m-check-item input{width:18px;height:18px;accent-color:var(--primary-600)}.m-check-item span:first-of-type{flex:1;font-size:13px}.m-weekday-row{gap:4px;margin-bottom:12px;display:flex}.m-weekday-row .m-option{padding:8px 0;font-size:12px}.m-scan{aspect-ratio:1;border-radius:var(--radius-card);background:var(--ink-chrome);width:100%;margin-bottom:12px;position:relative;overflow:hidden}.m-canvas-preview{border-radius:var(--radius-control);max-width:100%}.m-title-15{font-size:15px;font-weight:600}.m-title-16{font-size:16px;font-weight:600}.m-title-18{font-size:18px;font-weight:600}.m-meta-sm{color:var(--ink-500);font-size:12px}.m-progress{background:var(--el-border-light);border-radius:2px;height:4px;margin-top:6px;overflow:hidden}.m-progress i{background:var(--primary-600);border-radius:2px;width:34%;height:100%;animation:1.2s ease-in-out infinite m-progress-slide;display:block}@keyframes m-progress-slide{0%{margin-left:-34%}to{margin-left:100%}}.m-picker{max-height:70vh;padding:var(--space-pad);border-radius:var(--radius-panel) var(--radius-panel) 0 0;background:var(--surface);flex-direction:column;display:flex}.m-picker__list{flex:1;overflow-y:auto}.m-search{margin-bottom:var(--space-grid);position:relative}.m-search input{padding-left:32px}.m-search svg{color:var(--ink-400);position:absolute;top:50%;left:10px;transform:translateY(-50%)}.m-picker-item{border:1px solid var(--el-border-light);border-radius:var(--radius-card);background:var(--gray-50);text-align:left;cursor:pointer;touch-action:manipulation;width:100%;transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), transform var(--dur-press) var(--ease-standard);align-items:center;gap:12px;margin-bottom:6px;padding:10px;display:flex}.m-picker-item:active{transform:scale(.985)}.m-picker-item.active{border-color:var(--primary-600);box-shadow:inset 0 0 0 1px var(--primary-600);background:var(--primary-pale)}.m-login{color:#fff;background:linear-gradient(160deg, var(--navy-950) 0%, var(--blue-900) 100%);flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;display:flex}.m-login__brand{align-items:center;gap:12px;padding:28px 24px 16px;display:flex}.m-login__logo{background:var(--blue-500);border-radius:10px;place-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:inline-grid}.m-login__brand small{color:var(--slate-400);margin-top:2px;font-size:12px;display:block}.m-login__hero{flex-direction:column;flex:1;justify-content:center;padding:32px 24px 24px;display:flex}.m-login__hero h1{margin:0 0 12px;font-size:28px;font-weight:700;line-height:1.3}.m-login__hero>p{color:var(--slate-300);margin:0 0 28px;font-size:14px;line-height:1.6}.m-login__card{color:var(--slate-800);background:var(--surface);border-radius:14px;padding:20px;box-shadow:0 12px 32px #00000040}.m-login__card h2{margin:0 0 4px;font-size:18px}.m-login__card>p{color:var(--slate-500);margin:0 0 16px;font-size:13px}.m-login__card .m-btn{margin-top:16px}.m-login__foot{color:var(--slate-400);text-align:center;padding:16px 24px 24px;font-size:12px}.m-login__hint{color:var(--slate-400);text-align:center;margin:20px 0 0;font-size:12px}:root{--ui-canvas:#f4f5f7;--ui-surface:#fff;--ui-surface-alt:#f5f7fa;--ui-border:#dce0e8;--ui-border-strong:#c8cdd6;--ui-panel-border:none;--ui-text:#232b36;--ui-text-regular:#5c6675;--ui-text-muted:#8b95a5;--ui-primary:var(--primary-600);--ui-primary-hover:var(--primary-500);--ui-primary-contrast:#fff;--ui-primary-pale:var(--primary-pale);--ui-info:var(--primary-600);--ui-success:#18a875;--ui-warning:#e89029;--ui-danger:#e65353;--ui-danger-pale:var(--danger-pale);--ui-danger-border:var(--danger-border);--ui-link:#1e56ad;--ui-hero-bg:linear-gradient(135deg, #0b1220 0%, #1e3a8a 100%);--ui-hero-text:#fff;--ui-hero-text-muted:#cbd5e1;--ui-hero-link:#93c5fd;--ui-hero-accent:#3b82f6;--ui-radius-sm:4px;--ui-radius:8px;--ui-radius-lg:12px;--ui-control-h:40px;--ui-space:16px;--ui-shadow-panel:0 10px 40px #0f172a14;--ui-motion:.16s cubic-bezier(.2, .8, .2, 1);--ui-font-base:13px;--ui-font-title:22px;--ui-font-hero:34px;--ui-font-weight-title:700;--ui-font-weight-control:400}html[data-ui-theme=ocean]{--ui-canvas:#edf2f5;--ui-surface:#fff;--ui-surface-alt:#f0f5f8;--ui-border:#c9d7de;--ui-border-strong:#93aeba;--ui-panel-border:1px solid var(--ui-border);--ui-text:#14303c;--ui-text-regular:#3c5764;--ui-text-muted:#6f8fa0;--ui-primary:#0e7490;--ui-primary-hover:#0c637c;--ui-primary-contrast:#fff;--ui-primary-pale:#ecf8fb;--ui-info:#0369a1;--ui-success:#047857;--ui-warning:#b45309;--ui-danger:#b91c1c;--ui-danger-pale:#fdf3f2;--ui-danger-border:#f3c7c3;--ui-link:#0e7490;--ui-hero-bg:linear-gradient(150deg, #04252d 0%, #0e7490 92%);--ui-hero-text:#ecfeff;--ui-hero-text-muted:#a3d5e0;--ui-hero-link:#7dd3fc;--ui-hero-accent:#22d3ee;--ui-radius-sm:2px;--ui-radius:3px;--ui-radius-lg:4px;--ui-control-h:36px;--ui-space:12px;--ui-shadow-panel:0 1px 0 #0e749040;--ui-motion:.12s ease-out;--ui-font-title:20px;--ui-font-hero:31px;--ui-font-weight-title:600;--ui-font-weight-control:500}.ui-btn{height:var(--ui-control-h);padding:0 calc(var(--ui-space) * 1.1);border-radius:var(--ui-radius);font:inherit;font-size:var(--ui-font-base);font-weight:var(--ui-font-weight-control);transition:background var(--ui-motion), border-color var(--ui-motion), color var(--ui-motion);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;display:inline-flex}.ui-btn--primary{background:var(--ui-primary);color:var(--ui-primary-contrast)}.ui-btn--primary:hover:not(:disabled){background:var(--ui-primary-hover)}.ui-btn--outline{color:var(--ui-primary);border-color:var(--ui-primary);background:0 0}.ui-btn--outline:hover:not(:disabled){background:var(--ui-primary-pale)}.ui-btn--ghost{color:var(--ui-text-regular);border-color:var(--ui-border);background:0 0}.ui-btn--ghost:hover:not(:disabled){color:var(--ui-primary);border-color:var(--ui-primary)}.ui-btn--danger{background:var(--ui-danger);color:#fff}.ui-btn:disabled{opacity:.55;cursor:not-allowed}.ui-btn--block{width:100%}.ui-label{margin:calc(var(--ui-space) * .5) 0 4px;font-size:var(--ui-font-base);color:var(--ui-text-regular);display:block}.ui-input{width:100%;height:var(--ui-control-h);padding:0 calc(var(--ui-space) * .75);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);background:var(--ui-surface);color:var(--ui-text);box-sizing:border-box;transition:border-color var(--ui-motion)}.ui-input:focus{border-color:var(--ui-primary);outline:none}.ui-alert{border-radius:var(--ui-radius-sm);font-size:var(--ui-font-base);padding:8px 12px}.ui-alert--danger{color:var(--ui-danger);background:var(--ui-danger-pale);border:1px solid var(--ui-danger-border)}.ui-panel{background:var(--ui-surface);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-panel);border:var(--ui-panel-border)}.ui-login{background:var(--ui-canvas);grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.ui-login__aside{background:var(--ui-hero-bg);color:var(--ui-hero-text);flex-direction:column;justify-content:space-between;padding:56px;display:flex}.ui-login__main{justify-content:center;align-items:center;display:flex}.ui-login__form{width:380px;padding:36px}.ui-login__title{font-size:var(--ui-font-title);font-weight:var(--ui-font-weight-title);margin:0}.ui-login__hint{color:var(--ui-text-muted);font-size:var(--ui-font-base);margin:6px 0 24px}.ui-login__foot{font-size:var(--ui-font-base);color:var(--ui-text-muted);text-align:center;margin-top:16px}.ui-login__submit{margin-top:20px}.ui-link{color:var(--ui-link);text-decoration:none}.ui-link:hover{text-decoration:underline}.ui-hero__brand{align-items:center;gap:10px;font-size:18px;font-weight:600;display:flex}.ui-hero__logo{border-radius:var(--ui-radius);background:var(--ui-hero-accent);width:32px;height:32px;color:var(--ui-hero-text);justify-content:center;align-items:center;display:inline-flex}.ui-hero__title{font-size:var(--ui-font-hero);line-height:1.25;font-weight:var(--ui-font-weight-title);margin:0 0 16px}.ui-hero__sub{color:var(--ui-hero-text-muted);max-width:420px;margin:0;font-size:15px;line-height:1.7}.ui-hero__foot{color:var(--ui-hero-text-muted);flex-direction:column;gap:8px;font-size:12px;display:flex}.ui-hero__link{color:var(--ui-hero-link);text-decoration:none}.ui-theme-switch{z-index:var(--z-dev);gap:6px;display:flex;position:fixed;bottom:12px;right:12px}.ui-theme-switch button{border-radius:var(--ui-radius-sm);border:1px solid var(--ui-border-strong);background:var(--ui-surface);height:26px;color:var(--ui-text-muted);padding:0 10px;font-size:11px}.ui-theme-switch button[data-active=true]{color:var(--ui-primary-contrast);background:var(--ui-primary);border-color:var(--ui-primary)}.auth-disabled-banner{text-align:center;background:var(--warning-pale);color:var(--amber-700);margin:0;padding:8px 16px;font-size:13px}.recharge-section>span{color:var(--ink-600);margin-top:8px;font-size:13px;line-height:1.5;display:block}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
