:root{color-scheme:light;--brand-blue:#0b4f7a;--brand-blue-hover:#083c5d;--brand-green:#f7c948;--brand-green-deep:#d89b13;--brand-gray:#526070;--brand-logo-surface:#FFFFFF;--color-primary:var(--brand-blue);--color-primary-hover:var(--brand-blue-hover);--color-accent:var(--brand-green);--status-success:#15803d;--status-warning:#b7791f;--status-danger:#dc2626;--status-info:#0ea5e9;--status-neutral:#6b7280;--status-special:#7c3aed;--text-primary:#0b1f33;--text-secondary:#42566d;--text-tertiary:color-mix(in srgb,var(--text-secondary) 76%,white);--text-disabled:#7f8da0;--text-strong:var(--text-primary);--text-muted:var(--text-secondary);--text-on-dark:#f8fafc;--text-on-dark-muted:#b8c7d9;--text-on-primary:#ffffff;--bg-page:#eef5fb;--bg-card:#FFFFFF;--bg-muted:#e1edf7;--bg-sidebar:#06263f;--border:#c5d5e6;--border-strong:#6d8eaa;--border-dark:#0f4165;--surface-elevated:#ffffff;--surface-subtle:#edf3f9;--surface-tint:color-mix(in srgb,var(--color-primary) 7%,var(--bg-card));--border-soft:color-mix(in srgb,var(--border) 78%,transparent);--border-focus:color-mix(in srgb,var(--color-primary) 48%,var(--border));--shadow-card:0 14px 34px rgba(12,24,38,0.10);--shadow-panel:0 22px 56px rgba(12,24,38,0.16);--shadow-sm:0 1px 3px rgba(12,24,38,0.10);--shadow-md:0 8px 18px rgba(12,24,38,0.10);--shadow-lg:0 18px 42px rgba(12,24,38,0.16);--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:24px;--control-height:38px;--control-height-sm:32px;--control-height-lg:44px;--form-control-height:42px;--form-control-height-compact:34px;--form-control-height-touch:44px;--form-control-radius:10px;--form-control-padding-x:12px;--form-control-bg:#ffffff;--form-control-bg-muted:#eef3f8;--form-control-border:#aec4d8;--form-control-border-hover:color-mix(in srgb,var(--color-primary) 42%,var(--border-strong));--form-control-focus-ring:0 0 0 3px color-mix(in srgb,var(--color-primary) 18%,transparent);--form-label-color:#37495d;--form-label-size:13px;--form-helper-size:12px;--drawer-panel-radius:16px;--drawer-panel-width:520px;--drawer-panel-width-md:720px;--drawer-panel-width-lg:840px;--drawer-panel-width-xl:960px;--ease:cubic-bezier(0.4,0,0.2,1);--glass-bg:rgba(255,255,255,0.78);--glass-border:rgba(255,255,255,0.34);--jinhu-color-primary:var(--color-primary);--jinhu-color-primary-hover:var(--color-primary-hover);--jinhu-color-accent:var(--color-accent);--jinhu-color-success:var(--status-success);--jinhu-color-warning:var(--status-warning);--jinhu-color-danger:var(--status-danger);--jinhu-color-info:var(--status-info);--jinhu-color-bg:var(--bg-page);--jinhu-color-surface:var(--bg-card);--jinhu-color-surface-muted:var(--bg-muted);--jinhu-color-border:var(--border);--jinhu-color-border-soft:var(--border);--jinhu-color-text:var(--text-primary);--jinhu-color-text-muted:var(--text-secondary);--jinhu-color-text-subtle:var(--text-disabled);--jinhu-color-on-primary:var(--text-on-primary);--jinhu-sidebar-bg:var(--bg-sidebar);--jinhu-sidebar-active:var(--color-primary);--jinhu-sidebar-hover:rgba(255,255,255,0.08);--jinhu-sidebar-text:var(--text-on-dark);--jinhu-sidebar-text-muted:var(--text-on-dark-muted);--jinhu-login-gradient-from:#eaf5ff;--jinhu-login-gradient-mid:var(--bg-page);--jinhu-login-gradient-to:#fff8df;--jinhu-radius-sm:var(--radius-sm);--jinhu-radius-md:var(--radius-md);--jinhu-radius-lg:var(--radius-lg);--jinhu-shadow-sm:var(--shadow-sm);--jinhu-shadow-md:var(--shadow-md);--jinhu-shadow-lg:var(--shadow-lg);--phoenix-space-1:4px;--phoenix-space-2:8px;--phoenix-space-3:12px;--phoenix-space-4:16px;--phoenix-space-5:20px;--phoenix-space-6:24px;--phoenix-space-8:32px;--phoenix-font-sans:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--phoenix-transition:all 0.2s var(--ease);--font-size-page-title:20px;--font-size-panel-title:16px;--font-size-card-label:12px;--font-size-kpi-value:24px;--font-size-table-head:12px;--font-size-table-body:13px;--font-size-caption:12px;--font-size-button:13px;--font-size-sidebar-primary:13px;--font-size-sidebar-secondary:12px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--phoenix-color-primary:var(--jinhu-color-primary);--phoenix-color-primary-hover:var(--jinhu-color-primary-hover);--phoenix-color-accent:var(--jinhu-color-accent);--phoenix-color-success:var(--jinhu-color-success);--phoenix-color-warning:var(--jinhu-color-warning);--phoenix-color-danger:var(--jinhu-color-danger);--phoenix-color-info:var(--jinhu-color-info);--phoenix-color-bg:var(--jinhu-color-bg);--phoenix-color-surface:var(--jinhu-color-surface);--phoenix-color-surface-muted:var(--jinhu-color-surface-muted);--phoenix-color-border:var(--jinhu-color-border);--phoenix-color-text:var(--jinhu-color-text);--phoenix-color-text-muted:var(--jinhu-color-text-muted);--phoenix-color-on-primary:var(--jinhu-color-on-primary);--phoenix-sidebar-bg:var(--jinhu-sidebar-bg);--phoenix-sidebar-active:var(--jinhu-sidebar-active);--phoenix-sidebar-text:var(--jinhu-sidebar-text);--phoenix-sidebar-text-muted:var(--jinhu-sidebar-text-muted);--phoenix-login-gradient-from:var(--jinhu-login-gradient-from);--phoenix-login-gradient-mid:var(--jinhu-login-gradient-mid);--phoenix-login-gradient-to:var(--jinhu-login-gradient-to);--phoenix-radius-sm:var(--jinhu-radius-sm);--phoenix-radius-md:var(--jinhu-radius-md);--phoenix-radius-lg:var(--jinhu-radius-lg);--phoenix-shadow-sm:var(--jinhu-shadow-sm);--phoenix-shadow-md:var(--jinhu-shadow-md);--phoenix-shadow-lg:var(--jinhu-shadow-lg);--header-height:76px;--sidebar-width:220px;--sidebar-collapsed-width:64px}.checkbox-list{background:var(--bg-elevated,var(--bg-card));border:1px solid var(--border-soft);border-radius:14px;display:grid;grid-gap:6px;gap:6px;max-height:260px;overflow:auto;padding:10px}.checkbox-row{align-items:center;border-radius:10px;color:var(--text-primary);display:flex;gap:10px;min-height:36px;padding:6px 8px}.checkbox-row:hover{background:color-mix(in srgb,var(--brand-primary,#f59e0b) 10%,transparent)}.checkbox-row input{flex:0 0 auto}:root[data-theme=enterprise-light]{color-scheme:light}:root[data-theme=harbor-blue]{color-scheme:light;--brand-blue:#145f8f;--brand-blue-hover:#0f4f78;--brand-green:#2f8f82;--brand-green-deep:#227166;--color-primary:#145f8f;--color-primary-hover:#0f4f78;--color-accent:#2f8f82;--text-primary:#142433;--text-secondary:#607083;--bg-page:#eef3f7;--bg-card:#ffffff;--bg-muted:#e3ebf2;--bg-sidebar:#071c2b;--border:#cfdbe6;--border-dark:#14374f;--surface-elevated:#ffffff;--surface-subtle:#e9f0f6}:root[data-theme=forest-green]{color-scheme:light;--brand-blue:#256f74;--brand-blue-hover:#1f5f63;--brand-green:#277a50;--brand-green-deep:#1f6140;--color-primary:#256f74;--color-primary-hover:#1f5f63;--color-accent:#277a50;--text-primary:#18261f;--text-secondary:#64746d;--bg-page:#f1f5f2;--bg-card:#ffffff;--bg-muted:#e9f0eb;--bg-sidebar:#082119;--border:#d3ded6;--border-dark:#163f31;--surface-elevated:#ffffff;--surface-subtle:#edf4ef}:root[data-theme=graphite-gold]{color-scheme:light;--brand-blue:#36475c;--brand-blue-hover:#2c394a;--brand-green:#a06d1d;--brand-green-deep:#805716;--color-primary:#36475c;--color-primary-hover:#2c394a;--color-accent:#a06d1d;--text-primary:#1d2430;--text-secondary:#68707c;--bg-page:#f4f3ef;--bg-card:#ffffff;--bg-muted:#eceae3;--bg-sidebar:#111923;--border:#dedbd0;--border-dark:#3b4652;--surface-elevated:#ffffff;--surface-subtle:#f0eee7}:root[data-theme=violet-dusk]{color-scheme:light;--brand-blue:#5b4aa8;--brand-blue-hover:#493b8f;--brand-green:#b25f8a;--brand-green-deep:#8f486f;--color-primary:#5b4aa8;--color-primary-hover:#493b8f;--color-accent:#b25f8a;--text-primary:#221f35;--text-secondary:#686277;--bg-page:#f5f2fa;--bg-card:#ffffff;--bg-muted:#eee8f6;--bg-sidebar:#17142a;--border:#ded6eb;--border-dark:#3d356f;--surface-elevated:#ffffff;--surface-subtle:#f3edf8}:root[data-theme=terra-cotta]{color-scheme:light;--brand-blue:#8b4a32;--brand-blue-hover:#713925;--brand-green:#5f7f52;--brand-green-deep:#496240;--color-primary:#8b4a32;--color-primary-hover:#713925;--color-accent:#5f7f52;--text-primary:#2c241f;--text-secondary:#75665d;--bg-page:#f6f1ec;--bg-card:#ffffff;--bg-muted:#eee5dc;--bg-sidebar:#211712;--border:#e0d3c8;--border-dark:#563c30;--surface-elevated:#ffffff;--surface-subtle:#f2e9e1}:root,:root[data-theme=enterprise-light],:root[data-theme=forest-green],:root[data-theme=graphite-gold],:root[data-theme=harbor-blue],:root[data-theme=terra-cotta],:root[data-theme=violet-dusk]{color-scheme:light;--brand-blue:#0b4f7a;--brand-blue-hover:#083c5d;--brand-green:#f7c948;--brand-green-deep:#d89b13;--color-primary:#0b4f7a;--color-primary-hover:#083c5d;--color-accent:#f7c948;--status-success:#15803d;--status-warning:#b7791f;--status-danger:#dc2626;--status-info:#0ea5e9;--text-primary:#0b1f33;--text-secondary:#42566d;--text-tertiary:#5f7287;--text-on-primary:#ffffff;--bg-page:#eef5fb;--bg-card:#ffffff;--bg-muted:#e1edf7;--bg-sidebar:#06263f;--border:#c5d5e6;--border-strong:#6d8eaa;--border-dark:#0f4165;--surface-elevated:#ffffff;--surface-subtle:#f3f8fc;--surface-tint:color-mix(in srgb,var(--color-primary) 9%,var(--bg-card));--border-soft:#d6e3ef;--border-focus:#f7c948;--form-control-bg:#ffffff;--form-control-bg-muted:#f3f8fc;--form-control-border:#9eb7cf;--form-control-border-hover:#0b4f7a;--form-control-focus-ring:0 0 0 4px rgba(247,201,72,0.26);--form-label-color:#0b1f33;--jinhu-color-on-primary:var(--text-on-primary);--jinhu-sidebar-bg:var(--bg-sidebar);--jinhu-sidebar-active:var(--color-primary);--jinhu-login-gradient-from:#eaf5ff;--jinhu-login-gradient-mid:#f4f9ff;--jinhu-login-gradient-to:#fff8df}:root[data-theme=command-dark],:root[data-theme=dark]{color-scheme:dark;--brand-logo-surface:#FFFFFF;--brand-blue:#8fd3ff;--brand-blue-hover:#bde6ff;--brand-green:#f7c948;--brand-green-deep:#d89b13;--color-primary:#8fd3ff;--color-primary-hover:#bde6ff;--color-accent:#f7c948;--status-success:#4ade80;--status-warning:#f7c948;--status-danger:#f87171;--status-info:#38bdf8;--status-neutral:#94a3b8;--status-special:#a78bfa;--text-primary:#f5f5f5;--text-secondary:#d4d4d4;--text-tertiary:#a3a3a3;--text-disabled:#737373;--text-on-primary:#06263f;--bg-page:#071c2f;--bg-card:#0b2840;--bg-muted:#123a59;--bg-sidebar:#041827;--border:#315a78;--border-strong:#8fd3ff;--border-dark:#173c58;--surface-elevated:#0d314c;--surface-subtle:#123752;--surface-tint:color-mix(in srgb,var(--color-primary) 16%,var(--bg-card));--border-soft:#525252;--border-focus:#f7c948;--shadow-card:0 18px 38px rgba(0,0,0,0.30);--shadow-panel:0 26px 62px rgba(0,0,0,0.42);--shadow-sm:0 1px 3px rgba(0,0,0,0.30);--shadow-md:0 4px 12px rgba(0,0,0,0.40);--shadow-lg:0 10px 30px rgba(0,0,0,0.50);--glass-bg:rgba(14,28,42,0.76);--glass-border:rgba(255,255,255,0.08);--form-control-bg:#082237;--form-control-bg-muted:#102f49;--form-control-border:#5c7f9c;--form-control-border-hover:#f7c948;--form-control-focus-ring:0 0 0 4px rgba(247,201,72,0.26);--form-label-color:#f5f5f5;--jinhu-sidebar-hover:rgba(255,255,255,0.08);--jinhu-sidebar-text:#f5f5f5;--jinhu-sidebar-text-muted:#b8c7d9;--jinhu-login-gradient-from:#041827;--jinhu-login-gradient-mid:var(--bg-page);--jinhu-login-gradient-to:#0b2840}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;margin:0}body{background:var(--phoenix-color-bg);color:var(--phoenix-color-text);font-family:var(--phoenix-font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.dashboard-main{background:radial-gradient(circle at 8% 0,rgba(143,211,255,.24),transparent 24rem),radial-gradient(circle at 96% 4%,rgba(247,201,72,.18),transparent 20rem),linear-gradient(180deg,#f5faff 0,var(--bg-page) 42%,#eaf4fd 100%)}.app-sidebar{background:radial-gradient(circle at 40% 0,rgba(143,211,255,.18),transparent 12rem),linear-gradient(180deg,#073a5e,#06263f 48%,#041827)}.app-header{border-bottom-color:rgba(143,211,255,.18);background:radial-gradient(circle at 18% 0,rgba(247,201,72,.2),transparent 22rem),linear-gradient(90deg,#073a5e,#0b4f7a 54%,#06263f);box-shadow:0 14px 34px rgba(6,38,63,.2)}.ds-panel,.ds-section-panel,.ds-table-card,.filter-bar,.floating-panel,.login-panel,.metric-card,.page-content,.page-header,.task-item,.work-panel{border-color:rgba(11,79,122,.14);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.94)),var(--bg-card);box-shadow:0 14px 34px rgba(11,31,51,.08)}.drawer-title,.metric-card strong,.page-header .header-title strong,.panel-title,.section-title,.task-item strong{color:#0b1f33}.metric-card span,.page-header .header-title span,.task-item>span:last-child,.text-muted{color:#42566d}.ant-btn-primary,.ds-button-primary,.primary-button{border-color:transparent;background:linear-gradient(135deg,#0b4f7a,#0e73ad 56%,#f7c948 160%);color:#ffffff;box-shadow:0 12px 24px rgba(11,79,122,.2)}.ant-btn-primary:focus,.ant-btn-primary:hover,.ds-button-primary:focus-visible,.ds-button-primary:hover,.primary-button:focus-visible,.primary-button:hover{background:linear-gradient(135deg,#083c5d,#0b4f7a 56%,#d89b13 160%);color:#ffffff}.ds-button-secondary,.secondary-button{border-color:rgba(11,79,122,.22);background:rgba(255,255,255,.84);color:#0b4f7a}.ds-button-secondary:focus-visible,.ds-button-secondary:hover,.secondary-button:focus-visible,.secondary-button:hover{border-color:rgba(247,201,72,.72);background:#fff8df;color:#06263f}.status-pill{border-color:rgba(11,79,122,.16)}body.operations-terminal-safe-area,html.operations-terminal-safe-area{background:#06263f}a{color:inherit;text-decoration:none}.text-link{display:inline-flex;align-items:center;gap:var(--phoenix-space-1);color:var(--phoenix-color-primary);font-weight:var(--font-weight-semibold)}.text-link:hover{color:var(--phoenix-color-primary-hover)}ul{list-style:none}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;min-width:0;border:1px solid var(--form-control-border);border-radius:var(--form-control-radius);outline:none;background:var(--form-control-bg);color:var(--text-primary);caret-color:var(--color-primary);font-size:14px;font-weight:560;line-height:1.48;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface-elevated,var(--bg-card)) 72%,transparent),0 0 0 1px color-mix(in srgb,var(--form-control-border) 14%,transparent);transition:border-color .18s var(--ease),box-shadow .18s var(--ease),background .18s var(--ease)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select{min-height:var(--form-control-height)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.5 7.5L10 12L14.5 7.5' stroke='%23637083' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}:root[data-theme=command-dark] select,:root[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.5 7.5L10 12L14.5 7.5' stroke='%23c6d5e4' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--text-disabled);font-weight:500;opacity:1}input:hover:not(:disabled):not([type=checkbox]):not([type=radio]),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--form-control-border-hover);background:color-mix(in srgb,var(--form-control-bg) 92%,var(--surface-tint))}input:focus,select:focus,textarea:focus{border-color:var(--border-focus);outline:0;box-shadow:var(--form-control-focus-ring),0 0 0 1px color-mix(in srgb,var(--border-focus) 54%,transparent)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:color-mix(in srgb,var(--status-danger) 54%,var(--border))}input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-grid;flex:0 0 auto;place-content:center;width:16px;height:16px;min-height:16px;margin:0;border:1px solid color-mix(in srgb,var(--border-strong,var(--border)) 82%,var(--bg-card));border-radius:999px;background:var(--bg-card);cursor:pointer;transition:border-color .16s var(--ease),box-shadow .16s var(--ease),background .16s var(--ease)}input[type=radio]:before{content:"";width:8px;height:8px;border-radius:999px;background:var(--color-primary);opacity:0;transform:scale(.62);transition:opacity .14s var(--ease),transform .14s var(--ease)}input[type=radio]:focus-visible,input[type=radio]:hover{border-color:color-mix(in srgb,var(--color-primary) 58%,var(--border));box-shadow:var(--form-control-focus-ring)}input[type=radio]:checked{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-card))}input[type=radio]:checked:before{opacity:1;transform:scale(1)}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-grid;flex:0 0 auto;place-content:center;width:16px;height:16px;min-height:16px;margin:0;border:1px solid color-mix(in srgb,var(--border-strong) 82%,var(--bg-card));border-radius:5px;background:var(--bg-card);box-shadow:inset 0 1px 1px color-mix(in srgb,var(--text-primary) 4%,transparent);cursor:pointer;transition:border-color .16s var(--ease),background .16s var(--ease),box-shadow .16s var(--ease),transform .16s var(--ease)}input[type=checkbox]:before{content:"";width:4px;height:8px;border:solid var(--color-primary);border-width:0 2px 2px 0;opacity:0;transform:translateY(-1px) rotate(45deg) scale(.7);transition:opacity .14s var(--ease),transform .14s var(--ease)}input[type=checkbox]:hover{border-color:color-mix(in srgb,var(--color-primary) 58%,var(--border-strong));box-shadow:inset 0 1px 1px color-mix(in srgb,var(--text-primary) 5%,transparent),0 0 0 2px color-mix(in srgb,var(--color-primary) 8%,transparent)}input[type=checkbox]:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 16%,transparent)}input[type=checkbox]:checked{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,var(--bg-card));box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 8%,transparent)}input[type=checkbox]:checked:before{opacity:1;transform:translateY(-1px) rotate(45deg) scale(1)}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.52}input[type=checkbox]:disabled:hover{border-color:var(--border-strong);box-shadow:inset 0 1px 1px color-mix(in srgb,var(--text-primary) 6%,transparent)}input[type=checkbox]:disabled:checked{border-color:var(--text-tertiary);background:var(--text-tertiary)}input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;background:var(--form-control-bg-muted);color:var(--text-disabled);opacity:.86;box-shadow:none}::selection{background:color-mix(in srgb,var(--phoenix-color-primary) 22%,transparent)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.12);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.22)}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes shimmer{0%,to{opacity:.4}50%{opacity:.85}}.animate-fade-in{animation:fadeIn .24s var(--ease) both}.skeleton{border-radius:var(--radius-sm);background:var(--bg-muted);animation:shimmer 1.4s ease-in-out infinite}.glass-card{border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:var(--glass-bg);box-shadow:var(--shadow-md);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;max-width:1px!important;max-height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;-webkit-clip-path:inset(50%)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.dashboard-shell{min-height:100vh;background:linear-gradient(90deg,var(--bg-sidebar) 0,var(--bg-sidebar) var(--sidebar-width),var(--phoenix-color-bg) var(--sidebar-width),var(--phoenix-color-bg) 100%);transition:grid-template-columns .18s var(--ease)}.dashboard-shell.sidebar-collapsed,:root[data-sidebar-collapsed=true] .dashboard-shell{background:linear-gradient(90deg,var(--bg-sidebar) 0,var(--bg-sidebar) var(--sidebar-collapsed-width),var(--phoenix-color-bg) var(--sidebar-collapsed-width),var(--phoenix-color-bg) 100%)}.dashboard-shell[data-loading=true],.dashboard-shell[data-loading=true] *{transition:none!important}.dashboard-main{min-width:0;max-width:100%;min-height:100vh;background:var(--phoenix-color-bg)}.app-sidebar{--sidebar-menu-icon-size:18px;box-sizing:border-box;position:-webkit-sticky;position:sticky;top:0;z-index:12;width:var(--sidebar-width);height:100vh;overflow-x:clip;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-sidebar) 88%,var(--color-primary)) 0,var(--bg-sidebar) 54%),var(--bg-sidebar);color:var(--phoenix-sidebar-text);padding:14px 10px;border-right:1px solid color-mix(in srgb,var(--border-dark) 70%,transparent);box-shadow:none;contain:layout paint style;transition:width .18s var(--ease),padding .18s var(--ease),box-shadow .24s var(--ease);will-change:width}.app-sidebar::-webkit-scrollbar{width:0;height:0}.dashboard-shell.sidebar-collapsed .app-sidebar,:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar{width:var(--sidebar-collapsed-width)}.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview),:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview){--sidebar-menu-icon-size:20px}.dashboard-shell.sidebar-collapsed .app-sidebar.sidebar-preview{--sidebar-menu-icon-size:18px;width:var(--sidebar-width);box-shadow:var(--shadow-lg)}.dashboard-loading-shell .dashboard-sidebar-skeleton{overflow:hidden;pointer-events:none}.sidebar-brand-row{display:grid;grid-template-columns:minmax(0,1fr) 30px;grid-gap:var(--phoenix-space-2);gap:var(--phoenix-space-2);align-items:center;min-height:38px;margin-bottom:14px}.sidebar-brand-row .brand{min-width:0;margin-bottom:0;transition:opacity .2s var(--ease),transform .24s var(--ease)}.brand-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-on-dark);font-size:14px;font-weight:700;line-height:1.2}.app-sidebar .sidebar-collapse-button{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid color-mix(in srgb,var(--phoenix-sidebar-text) 18%,transparent);border-radius:var(--phoenix-radius-md);padding:0;background:color-mix(in srgb,var(--phoenix-sidebar-text) 8%,transparent);color:var(--phoenix-sidebar-text);box-shadow:none;transition:background .18s var(--ease),border-color .18s var(--ease),transform .18s var(--ease)}.app-sidebar .sidebar-collapse-button:hover{border-color:color-mix(in srgb,var(--phoenix-sidebar-text) 30%,transparent);background:color-mix(in srgb,var(--phoenix-sidebar-text) 14%,transparent);color:var(--phoenix-sidebar-text);transform:translateY(-1px)}.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview),:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview){padding-right:var(--phoenix-space-3);padding-left:var(--phoenix-space-3)}.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview) .sidebar-brand-row,:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview) .sidebar-brand-row{grid-template-columns:1fr;justify-items:center}.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview) .brand,:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview) .brand{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);opacity:0;transform:translateX(-8px) scale(.96)}.sidebar-menu{display:grid;grid-gap:2px;gap:2px}.menu-group{display:grid;grid-gap:1px}.app-sidebar .menu-group-title{display:flex;align-items:center;gap:8px;width:100%;border:0;border-radius:var(--radius-md);background:transparent;color:var(--phoenix-sidebar-text-muted);font-size:var(--font-size-sidebar-primary);font-weight:var(--font-weight-semibold);justify-content:flex-start;text-align:left;text-decoration:none;box-shadow:none;transition:background .18s var(--ease),color .18s var(--ease),min-height .24s var(--ease),width .28s var(--ease),padding .28s var(--ease),transform .18s var(--ease)}.app-sidebar .menu-group-icon{flex:0 0 var(--sidebar-menu-icon-size);width:var(--sidebar-menu-icon-size);height:var(--sidebar-menu-icon-size);transition:width .26s var(--ease),height .26s var(--ease),transform .26s var(--ease)}.app-sidebar .menu-group-title span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity .16s var(--ease),transform .2s var(--ease)}.app-sidebar .menu-group-open .menu-group-title,.app-sidebar .menu-group-title.active,.app-sidebar .menu-group-title:hover{background:color-mix(in srgb,var(--phoenix-sidebar-text) 7%,transparent);transform:none}.app-sidebar .menu-group-title svg:last-child{margin-left:auto}.menu-group-chevron{transform:rotate(0deg);transform-origin:center;transition:opacity .16s var(--ease),transform .16s var(--ease)}.menu-group-open .menu-group-chevron{transform:rotate(90deg)}.menu-group-items{display:grid;grid-gap:1px;max-height:760px;overflow:hidden;padding:2px 0 4px;opacity:1;transition:max-height .22s var(--ease),opacity .16s var(--ease)}.menu-group-items-closed{max-height:0;opacity:0;pointer-events:none}.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview) .menu-group,:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview) .menu-group{justify-items:center}.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview) .menu-group-title,:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview) .menu-group-title{justify-content:center;width:40px;min-height:40px;padding:0}.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview) .menu-group-chevron,.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview) .menu-group-title span,:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview) .menu-group-chevron,:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview) .menu-group-title span{position:absolute;max-width:0;overflow:hidden;opacity:0;pointer-events:none;transform:translateX(-4px)}.dashboard-shell.sidebar-collapsed .app-sidebar:not(.sidebar-preview) .menu-group-items,:root[data-sidebar-collapsed=true] .dashboard-shell .app-sidebar:not(.sidebar-preview) .menu-group-items{position:absolute;width:1px;height:1px;max-height:0;overflow:hidden;clip:rect(0,0,0,0);opacity:0}.dashboard-shell.sidebar-collapsed .app-sidebar.sidebar-preview .menu-group-items{transition:none}.sidebar-brand-skeleton-title{width:118px}.sidebar-menu-skeleton-line{height:32px;margin:0;border-radius:var(--radius-md)}.dashboard-page-skeleton{min-height:260px;align-content:start}.app-header{min-height:var(--header-height);padding:0 var(--phoenix-space-5);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-card) 92%,var(--bg-page));box-shadow:none;position:-webkit-sticky;position:sticky;z-index:8}.header-actions{display:flex;align-items:center;gap:var(--phoenix-space-3)}.header-actions button,.header-icon-link,.user-menu button:not(.user-logout-button){width:32px;height:32px;border:1px solid var(--jinhu-color-border-soft);border-radius:var(--phoenix-radius-sm);background:var(--phoenix-color-surface);color:var(--phoenix-color-text);transition:var(--phoenix-transition)}.header-icon-link{text-decoration:none}.header-icon-button.ant-btn,.header-icon-link{display:inline-flex;align-items:center;justify-content:center}.header-icon-button.ant-btn{color:var(--phoenix-color-text-muted)}.header-icon-button.ant-btn:hover{background:color-mix(in srgb,var(--phoenix-color-primary) 8%,var(--phoenix-color-surface));color:var(--phoenix-color-primary)}.theme-toggle-button{width:32px;height:32px;padding:0}.user-menu{display:flex;align-items:center;gap:var(--phoenix-space-2);color:var(--phoenix-color-text);font-size:14px}.user-avatar{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--phoenix-color-surface-muted)}.breadcrumb{display:flex;align-items:center;gap:var(--phoenix-space-2);min-height:40px;padding:0 var(--phoenix-space-5);border-bottom:1px solid var(--phoenix-color-border);background:var(--phoenix-color-surface);color:var(--phoenix-color-text-muted);font-size:12px}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--phoenix-sidebar-bg);color:var(--phoenix-sidebar-text);padding:var(--phoenix-space-6) var(--phoenix-space-4)}.brand{display:flex;align-items:center;gap:var(--phoenix-space-3);margin-bottom:var(--phoenix-space-8);font-weight:700;letter-spacing:0}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:var(--phoenix-radius-md);overflow:hidden;padding:3px;background:var(--brand-logo-surface);box-shadow:0 8px 18px color-mix(in srgb,var(--phoenix-color-primary) 22%,transparent)}.brand-mark-image{display:block;width:100%;height:100%;object-fit:contain}.nav-list{display:grid;grid-gap:var(--phoenix-space-2);gap:var(--phoenix-space-2);margin:0;padding:0;list-style:none}.nav-link{gap:8px;min-height:28px;margin-left:25px;padding:0 10px;border-radius:var(--phoenix-radius-md);color:var(--phoenix-sidebar-text-muted);font-size:var(--font-size-sidebar-secondary);font-weight:var(--font-weight-medium);line-height:1}.nav-link:before{left:-12px;width:3px;height:0;border-radius:var(--radius-xl);background:var(--color-accent);opacity:0;transition:height .18s var(--ease),opacity .18s var(--ease)}.nav-link:hover{background:color-mix(in srgb,var(--phoenix-sidebar-text) 8%,transparent)}.nav-link.active,.nav-link:hover{color:var(--phoenix-color-on-primary)}.nav-link.active{background:color-mix(in srgb,var(--phoenix-sidebar-active) 46%,transparent);font-weight:var(--font-weight-semibold)}.nav-link.active:before{height:14px}.main-panel{min-width:0}.header{display:flex;align-items:center;justify-content:space-between;min-height:var(--header-height);padding:0 var(--phoenix-space-5);border-bottom:1px solid var(--jinhu-color-border-soft);background:var(--phoenix-color-surface)}.content>.header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4);align-items:center;width:100%;min-height:64px;padding:14px 18px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-card)}.header-title{display:grid;grid-gap:var(--phoenix-space-1);gap:var(--phoenix-space-1)}.header-title strong{color:var(--text-primary);font-size:17px;font-weight:820;line-height:1.4}.header-title span{color:var(--phoenix-color-text-muted);font-size:13px;font-weight:560}.app-header .header-title strong{font-size:15px;font-weight:720}.page-header .header-title strong{font-size:var(--font-size-page-title);font-weight:var(--font-weight-bold)}.page-header .header-title span{margin-top:2px;font-size:13px;font-weight:var(--font-weight-regular)}.content{align-content:start;padding:var(--phoenix-space-5)}.content,.page-container{display:grid;grid-gap:16px;gap:16px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.page-container{padding:18px 20px 24px;animation:fade-up .22s cubic-bezier(.2,0,0,1)}.page-container>*{min-width:0}.page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4);min-height:64px;padding:14px 18px}.filter-bar,.page-content,.page-header{width:100%;max-width:100%;min-width:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-card)}.filter-bar,.page-content{box-sizing:border-box;padding:var(--phoenix-space-4)}.filter-bar{display:grid;grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4)}.filter-bar .system-grid,.filter-bar .system-grid-three,.filter-bar>form,.form-stack:has(.dashboard-grid){display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-column-gap:var(--phoenix-space-4);column-gap:var(--phoenix-space-4);grid-row-gap:var(--phoenix-space-3);row-gap:var(--phoenix-space-3);align-items:end}.form-stack:has(.dashboard-grid) .dashboard-grid{display:contents}.filter-actions{display:flex;align-self:end;align-items:center;justify-content:flex-start;gap:var(--phoenix-space-3);min-width:0;width:auto}.filter-actions .primary-button,.form-stack:has(.dashboard-grid)>.primary-button{width:auto;min-width:112px;justify-self:start}.system-split{grid-template-columns:minmax(260px,360px) minmax(0,1fr);grid-gap:var(--phoenix-space-4);align-items:start}.system-grid,.system-split{display:grid;gap:var(--phoenix-space-4)}.system-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--phoenix-space-4)}.system-grid-three{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,260px));grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4);align-items:end}.system-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--phoenix-space-3);margin-bottom:var(--phoenix-space-4)}.system-actions{display:flex;flex-wrap:wrap;gap:var(--phoenix-space-2);align-items:center;justify-content:flex-end}.binding-list,.detail-stack,.tree-children,.tree-list{display:grid;grid-gap:var(--phoenix-space-2);gap:var(--phoenix-space-2)}.tree-children{margin-left:var(--phoenix-space-5);padding-left:var(--phoenix-space-3);border-left:1px solid var(--phoenix-color-border)}.binding-row,.permission-row,.tree-row{display:grid;align-items:center;grid-gap:var(--phoenix-space-2);gap:var(--phoenix-space-2);width:100%;min-height:40px;border:1px solid var(--phoenix-color-border);border-radius:var(--phoenix-radius-md);padding:var(--phoenix-space-2) var(--phoenix-space-3);background:var(--phoenix-color-surface)}.tree-row{grid-template-columns:minmax(0,1fr) auto}.tree-row.active{border-color:var(--phoenix-color-primary);background:var(--phoenix-color-surface-muted)}.permissions-page .page-header{grid-template-columns:minmax(0,1fr) auto}.permissions-page .page-header .system-actions{justify-content:flex-end}.permission-filter-bar{gap:14px}.permission-api-toggle{display:inline-flex;align-items:center;gap:8px;min-height:32px;color:var(--text-secondary);font-size:13px;font-weight:650;white-space:nowrap}.permission-api-toggle input{width:14px;height:14px;min-height:16px}.permission-summary-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.permission-summary-item{display:grid;grid-gap:6px;gap:6px;min-height:70px;border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px;background:color-mix(in srgb,var(--bg-muted) 55%,var(--bg-card))}.permission-summary-item span{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px;font-weight:650}.permission-summary-item strong{color:var(--text-primary);font-size:22px;font-weight:800;line-height:1}.permission-workbench{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.permission-tree-scroll{display:grid;grid-gap:8px;gap:8px;max-height:calc(100vh - 350px);min-height:420px;overflow:auto;padding-right:4px}.permission-tree-children,.permission-tree-node{display:grid;grid-gap:6px;gap:6px}.permission-tree-children{margin-left:16px;padding-left:12px;border-left:1px solid color-mix(in srgb,var(--border) 74%,transparent)}.permission-tree-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;border:1px solid transparent;border-radius:var(--radius-md);padding:3px 6px 3px 4px;background:transparent}.permission-tree-row.active{border-color:color-mix(in srgb,var(--color-primary) 26%,var(--border));background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-card))}.permission-api-toggle-button,.permission-child-row,.permission-tree-main,.permission-tree-toggle{box-shadow:none}.permission-tree-toggle{width:28px;min-width:28px;min-height:28px;border:0;border-radius:var(--radius-sm);padding:0;background:transparent;color:var(--text-secondary)}.permission-tree-toggle:disabled{opacity:.35}.permission-tree-main{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;grid-gap:2px;gap:2px;min-height:42px;border:0;padding:5px 0;background:transparent;color:var(--text-primary);text-align:left}.permission-tree-main span:first-child{max-width:100%;overflow:hidden;font-size:13px;font-weight:750;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.permission-tree-main .muted-text{max-width:100%;overflow:hidden;font-size:12px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.permission-detail{display:grid;grid-gap:16px;gap:16px}.permission-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:start;border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;background:var(--bg-muted)}.permission-detail-hero h3{margin:10px 0 4px;color:var(--text-primary);font-size:22px;font-weight:800;line-height:1.25}.permission-detail-hero p{margin:0;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.permission-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.permission-meta-item{display:grid;grid-gap:5px;gap:5px;min-height:64px;border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px;background:var(--bg-card)}.permission-meta-item span{color:var(--text-secondary);font-size:12px;font-weight:650}.permission-meta-item strong{min-width:0;overflow-wrap:anywhere;color:var(--text-primary);font-size:13px;font-weight:700}.permission-child-panel{display:grid;grid-gap:10px;gap:10px}.permission-child-list{display:grid;grid-gap:8px;gap:8px;max-height:300px;overflow:auto}.permission-child-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;min-height:46px;border:1px solid var(--border);border-radius:var(--radius-md);padding:9px 12px;background:var(--bg-card);text-align:left}.permission-child-row:hover{border-color:color-mix(in srgb,var(--color-primary) 30%,var(--border));background:color-mix(in srgb,var(--color-primary) 5%,var(--bg-card))}.permission-child-row span:first-child{display:grid;grid-gap:2px;gap:2px;min-width:0}.permission-child-row strong{color:var(--text-primary);font-size:13px}.permission-child-row em,.permission-child-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permission-child-row em{color:var(--text-secondary);font-style:normal;font-size:12px}.permission-api-section{display:grid;grid-gap:8px;gap:8px}.permission-api-toggle-button{justify-content:flex-start;width:-moz-fit-content;width:fit-content;min-height:30px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 10px;background:var(--bg-card);color:var(--text-secondary);font-size:12px;font-weight:700}.permission-row{grid-template-columns:24px minmax(180px,1fr) minmax(180px,1fr) auto}.binding-row{grid-template-columns:24px minmax(0,1fr) auto}.muted-text{color:var(--phoenix-color-text-muted)}.system-tabs{display:flex;flex-wrap:wrap;gap:var(--phoenix-space-2);margin-bottom:var(--phoenix-space-4)}.drawer-hero{position:-webkit-sticky;position:sticky;top:calc(var(--phoenix-space-4) * -1);z-index:3;display:grid;grid-template-columns:minmax(0,1fr) 36px;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);align-items:start;margin:calc(var(--phoenix-space-4) * -1) calc(var(--phoenix-space-4) * -1) 0;border-bottom:1px solid var(--border);padding:18px 18px 16px;background:var(--bg-card)}.drawer-hero-copy{display:grid;min-width:0;grid-gap:4px;gap:4px}.drawer-kicker{color:var(--color-primary);font-size:12px;font-weight:760;letter-spacing:0}.drawer-hero h2{color:var(--text-primary);font-size:22px;font-weight:780;line-height:1.25}.drawer-hero h2,.drawer-hero p{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.drawer-hero p{color:var(--text-secondary);font-size:13px}.drawer-close-button{display:inline-flex;align-items:center;justify-content:center;width:34px;min-width:34px;height:34px;min-height:34px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:0;background:var(--bg-card);color:var(--text-secondary);font-size:0;box-shadow:none;cursor:pointer;transition:border-color .16s ease,color .16s ease,background .16s ease,box-shadow .16s ease}.drawer-close-button:focus-visible,.drawer-close-button:hover{border-color:color-mix(in srgb,var(--color-primary) 34%,var(--border-soft));background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-card));color:var(--color-primary);box-shadow:0 10px 22px color-mix(in srgb,var(--color-primary) 10%,transparent)}.drawer-form-header{position:-webkit-sticky;position:sticky;top:calc(var(--phoenix-space-4) * -1);z-index:3;display:grid;grid-template-columns:minmax(0,1fr) 34px;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);align-items:start;margin:calc(var(--phoenix-space-4) * -1) calc(var(--phoenix-space-4) * -1) 0;border-bottom:1px solid var(--border);padding:16px 18px 14px;background:var(--bg-card)}.drawer-form-header h2{margin:0;color:var(--text-primary);font-size:20px;font-weight:780;line-height:1.25}.drawer-form-header p{margin:4px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.45}.drawer-form{display:grid;grid-gap:16px;gap:16px;margin-top:12px;padding-bottom:84px}.form-section{display:grid;grid-gap:12px;gap:12px}.form-section h3{margin:0;color:var(--text-primary);font-size:13px;font-weight:760;line-height:1.4}.drawer-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));grid-gap:14px 16px;gap:14px 16px}.drawer-form-grid-single{grid-template-columns:1fr}.ds-form-span-all{grid-column:1/-1}.ds-drawer-upload-panel,.ds-drawer-upload-placeholder{border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-muted) 72%,var(--bg-card))}.ds-drawer-upload-panel{display:grid;grid-gap:14px;gap:14px;padding:16px}.ds-drawer-upload-placeholder{display:flex;align-items:center;gap:10px;min-height:64px;padding:0 16px;color:var(--text-secondary);font-size:13px;font-weight:680}.ds-drawer-upload-placeholder svg{color:var(--color-primary)}.file-uploader-compact{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:end}.file-uploader-compact .field{min-width:0}.ds-file-picker{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;min-height:42px;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--bg-card) 74%,white);cursor:pointer}.ds-file-picker-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border-right:1px solid color-mix(in srgb,var(--border) 80%,transparent);padding:0 14px;background:color-mix(in srgb,var(--color-primary) 10%,var(--bg-card));color:var(--color-primary);font-size:13px;font-weight:760;white-space:nowrap}.ds-file-picker-name{min-width:0;overflow:hidden;padding:0 12px;color:var(--text-primary);font-size:13px;font-weight:650;line-height:42px;text-overflow:ellipsis;white-space:nowrap}.ds-field-hint{display:block;margin-top:6px;font-size:12px;line-height:1.35}.ds-field-hint,.ds-file-picker-empty{color:var(--text-tertiary);font-weight:620}.ds-file-picker:hover{border-color:color-mix(in srgb,var(--color-primary) 42%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 10%,transparent)}.ds-file-picker:hover .ds-file-picker-button{background:color-mix(in srgb,var(--color-primary) 16%,var(--bg-card))}.operation-photo-uploader{align-items:stretch;display:grid;grid-gap:10px;gap:10px;width:100%}.operation-photo-upload-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;width:100%;min-height:76px;border:2px dashed color-mix(in srgb,var(--color-primary) 78%,var(--border-strong));border-radius:16px;padding:12px 14px;grid-gap:12px;gap:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 18%,transparent),transparent 62%),color-mix(in srgb,var(--bg-card) 88%,var(--surface-tint));color:var(--text-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bg-card) 32%,transparent),0 12px 24px color-mix(in srgb,var(--color-primary) 10%,transparent);cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.operation-photo-upload-card:focus-within,.operation-photo-upload-card:hover{border-color:var(--color-primary-hover);background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 25%,transparent),transparent 62%),var(--bg-card);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 18%,transparent),0 14px 28px color-mix(in srgb,var(--color-primary) 14%,transparent);transform:translateY(-1px)}.operation-photo-upload-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--color-primary);color:var(--text-on-primary);box-shadow:inset 0 -1px 0 rgba(0,0,0,.16)}.operation-photo-upload-icon svg{display:block;width:22px;height:22px;min-width:22px;stroke-width:2.4}.operation-photo-upload-copy{display:grid;grid-gap:3px;gap:3px;min-width:0}.operation-photo-upload-copy strong{color:var(--text-primary);font-size:15px;font-weight:840;line-height:1.25}.operation-photo-upload-copy small{color:var(--text-secondary);font-size:12px;font-weight:650;line-height:1.45}.workorder-intent-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px}.workorder-flow-note{display:grid;grid-gap:6px;gap:6px;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--color-primary) 24%,var(--border));border-radius:16px;padding:12px 14px;background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--color-primary) 12%,transparent),transparent 8rem),color-mix(in srgb,var(--bg-card) 92%,var(--bg-muted))}.workorder-flow-note strong{color:var(--text-primary);font-size:14px;font-weight:820}.workorder-flow-note span{color:var(--text-secondary);font-size:13px;font-weight:650;line-height:1.65}.workorder-intent-card{display:grid;grid-gap:5px;gap:5px;min-height:76px;border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--bg-card);color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.workorder-intent-card strong{font-size:14px;font-weight:840;line-height:1.3}.workorder-intent-card small{color:var(--text-secondary);font-size:12px;font-weight:620;line-height:1.45}.workorder-intent-card:focus-visible,.workorder-intent-card:hover{border-color:var(--border-strong);background:color-mix(in srgb,var(--color-accent) 7%,var(--bg-card));box-shadow:0 8px 18px rgba(6,38,63,.1);transform:translateY(-1px)}.workorder-intent-card-active{border-color:var(--color-primary);background:linear-gradient(180deg,color-mix(in srgb,var(--color-accent) 10%,transparent),transparent),var(--bg-card);box-shadow:inset 0 0 0 1px var(--color-primary)}.file-uploader-compact .primary-button{min-height:42px;border-radius:var(--radius-sm);padding:0 18px;white-space:nowrap}.attachment-list-compact{display:grid;grid-gap:10px;gap:10px}.attachment-list-summary{display:flex;gap:10px;align-items:center;justify-content:space-between;color:var(--text-secondary);font-size:13px;line-height:1.4}.attachment-list-summary strong{color:var(--text-primary);font-size:14px;font-weight:760}.attachment-compact-list{display:grid;grid-gap:8px;gap:8px}.attachment-compact-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;border:1px solid color-mix(in srgb,var(--border) 84%,transparent);border-radius:var(--radius-sm);padding:10px 12px;background:var(--bg-card)}.attachment-thumb{display:inline-grid;place-items:center;width:52px;height:42px;overflow:hidden;border:1px solid color-mix(in srgb,var(--color-primary) 20%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-card));color:var(--color-primary);font-size:11px;font-weight:820;letter-spacing:0;cursor:pointer}.attachment-thumb-image{padding:0;background:var(--bg-card)}.attachment-thumb img{width:100%;height:100%;object-fit:cover}.attachment-compact-main{min-width:0}.attachment-compact-item span,.attachment-compact-item strong{display:block;min-width:0}.attachment-compact-item strong{overflow:hidden;color:var(--text-primary);font-size:13px;font-weight:720;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.attachment-compact-item span{color:var(--text-secondary);font-size:12px;line-height:1.4}.attachment-compact-actions{display:inline-flex;gap:6px;align-items:center;white-space:nowrap}.attachment-compact-actions button{min-height:30px;border-radius:var(--radius-sm);padding:0 10px;color:var(--text-primary);font-size:12px;font-weight:700}.attachment-empty{margin:0;border:1px dashed color-mix(in srgb,var(--border) 92%,transparent);border-radius:var(--radius-sm);padding:14px;color:var(--text-secondary);font-size:13px;text-align:center}.drawer-form .field{gap:7px}.drawer-form .field label,.drawer-form .field>span{color:var(--form-label-color);font-size:var(--form-label-size);font-weight:720;line-height:1.35}.drawer-form .field input,.drawer-form .field select{min-height:var(--form-control-height);border-radius:var(--form-control-radius);padding:0 var(--form-control-padding-x);color:var(--text-primary);font-size:13px}.drawer-form .field textarea{min-height:96px;border-radius:var(--form-control-radius);padding:10px var(--form-control-padding-x);color:var(--text-primary);font-size:13px;line-height:1.55;resize:vertical}.drawer-footer-actions{position:-webkit-sticky;position:sticky;bottom:calc(var(--phoenix-space-4) * -1);z-index:3;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin:4px calc(var(--phoenix-space-4) * -1) calc(var(--phoenix-space-4) * -1);border-top:1px solid var(--border);padding:12px 18px 14px;background:color-mix(in srgb,var(--bg-card) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 -12px 28px color-mix(in srgb,var(--text-primary) 7%,transparent)}.drawer-footer-actions .primary-button,.drawer-footer-actions .secondary-button{min-height:34px;border-radius:var(--radius-sm);box-shadow:none}.drawer-action-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 calc(var(--phoenix-space-4) * -1);border-bottom:1px solid var(--border);padding:12px 18px;background:var(--bg-muted)}.drawer-action-button,.primary-button.drawer-action-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:34px;border:1px solid color-mix(in srgb,var(--color-primary) 22%,var(--border));border-radius:var(--radius-sm);padding:0 12px;background:var(--bg-card);color:var(--color-primary);box-shadow:none;font-size:13px;font-weight:720}.drawer-action-button:hover,.primary-button.drawer-action-button:hover{border-color:color-mix(in srgb,var(--color-primary) 42%,var(--border));background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-card));color:var(--color-primary-hover);box-shadow:none}.danger-button,.drawer-action-button.danger-button{border-color:color-mix(in srgb,var(--status-danger) 28%,var(--border));background:var(--bg-card);color:var(--status-danger)}.danger-button:hover,.drawer-action-button.danger-button:hover{border-color:color-mix(in srgb,var(--status-danger) 48%,var(--border));background:color-mix(in srgb,var(--status-danger) 8%,var(--bg-card));color:var(--status-danger)}.drawer-link{color:var(--color-primary);font-weight:720;text-decoration:none}.drawer-link:hover{color:var(--color-primary-hover);text-decoration:underline}.timeline-list{display:grid;grid-gap:10px;gap:10px}.timeline-item{display:grid;grid-template-columns:18px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start}.timeline-dot{width:9px;height:9px;margin:9px auto 0;border-radius:var(--radius-full);background:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 14%,transparent)}.timeline-content{display:grid;grid-gap:6px;gap:6px;border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px;background:var(--bg-card)}.timeline-head{display:flex;gap:12px;align-items:center;justify-content:space-between}.timeline-head strong{color:var(--text-primary);font-size:13px;font-weight:750}.timeline-content p,.timeline-head span{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.5}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:10px;gap:10px}.lead-detail-drawer>.detail-grid{padding:16px 2px 0}.lead-detail-drawer>.detail-stack{margin-top:16px}.detail-item{display:grid;grid-template-columns:96px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;min-height:54px;border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px;background:var(--bg-card)}.detail-label{color:var(--text-secondary);font-size:13px;line-height:1.4}.detail-value{min-width:0;overflow-wrap:anywhere;color:var(--text-primary);font-size:14px;font-weight:720;line-height:1.45;text-align:right}.detail-value .status-pill{justify-self:end}.lead-detail-drawer .drawer-hero{grid-template-columns:minmax(0,1fr) 32px;padding:14px 16px 12px}.lead-detail-drawer .drawer-kicker{font-size:11px}.lead-detail-drawer .drawer-hero h2{max-width:100%;font-size:18px;font-weight:760;line-height:1.25}.lead-detail-drawer .drawer-hero p{font-size:12px}.lead-detail-drawer .drawer-close-button{width:32px;min-height:32px}.lead-detail-drawer .drawer-action-bar{gap:6px;padding:9px 16px}.lead-detail-drawer .drawer-action-button{min-height:30px;padding:0 10px;font-size:12px;font-weight:700}.lead-detail-drawer .drawer-action-button svg{width:14px;height:14px}.lead-detail-drawer>.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:14px 2px 0}.lead-detail-drawer .detail-item{grid-template-columns:82px minmax(0,1fr);gap:10px;align-items:start;min-height:34px;border:0;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:0;padding:8px 0;background:transparent}.lead-detail-drawer .detail-label{color:var(--text-secondary);font-size:12px;line-height:1.45}.lead-detail-drawer .detail-value{color:var(--text-primary);font-size:13px;font-weight:640;line-height:1.45;text-align:left}.lead-detail-drawer .detail-value .status-pill{justify-self:start}.workorder-kanban{display:grid;grid-template-columns:repeat(4,minmax(260px,1fr));grid-gap:12px;gap:12px;overflow-x:auto;padding-bottom:4px}.workorder-kanban-column{min-width:260px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-muted)}.workorder-kanban-column-head{display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:12px}.workorder-kanban-column-head strong{color:var(--text-primary);font-size:14px;font-weight:760}.workorder-kanban-cards{display:grid;grid-gap:10px;gap:10px;padding:12px}.workorder-kanban-card{display:grid;grid-gap:8px;gap:8px;border:1px solid var(--border);border-radius:var(--radius-md);padding:12px;background:var(--bg-card);color:var(--text-primary);text-decoration:none;box-shadow:var(--shadow-sm);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.workorder-kanban-card:hover{border-color:color-mix(in srgb,var(--color-primary) 36%,var(--border));box-shadow:var(--shadow-md);transform:translateY(-1px)}.workorder-kanban-card-head,.workorder-kanban-card-tags{display:flex;gap:8px;align-items:center;justify-content:space-between;min-width:0}.workorder-kanban-card-tags{justify-content:flex-start;flex-wrap:wrap}.workorder-kanban-card-head strong{color:var(--color-primary);font-size:12px;font-weight:760;letter-spacing:0}.workorder-kanban-card h3{margin:0;color:var(--text-primary);font-size:14px;font-weight:760;line-height:1.4}.workorder-kanban-card p{display:flex;gap:6px;align-items:center;min-width:0;margin:0;color:var(--text-secondary);font-size:12px;line-height:1.4}.workorder-kanban-card p svg{flex:0 0 auto}.workorder-kanban-empty{border:1px dashed var(--border);border-radius:var(--radius-md);padding:18px 12px;color:var(--text-secondary);font-size:12px;line-height:1.4;text-align:center}.workorder-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;align-items:start}.workorder-detail-hero h1{margin:4px 0;color:var(--text-primary);font-size:24px;font-weight:780;line-height:1.25}.workorder-detail-hero p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.5}.workorder-action-panel,.workorder-detail-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.workorder-action-panel{justify-content:flex-start;margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.workorder-detail-layout{display:grid;grid-gap:16px;gap:16px}.timeline-head strong{display:inline-flex;gap:6px;align-items:center}@media (max-width:1180px){.workorder-kanban{grid-template-columns:repeat(2,minmax(260px,1fr))}.workorder-detail-hero{grid-template-columns:1fr}.workorder-detail-badges{justify-content:flex-start}}@media (max-width:720px){.workorder-kanban{grid-template-columns:minmax(260px,1fr)}}.ds-page{--ds-page-gap:18px;display:grid;align-content:start;grid-gap:var(--ds-page-gap);gap:var(--ds-page-gap);width:100%;max-width:1440px;margin-inline:auto}.ds-terminal-page{padding-bottom:24px}.ds-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:clamp(18px,3vw,34px);gap:clamp(18px,3vw,34px);min-height:212px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:18px;padding:clamp(24px,3.8vw,42px);overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 9%,var(--bg-card)) 0,var(--bg-card) 54%,color-mix(in srgb,var(--color-accent) 7%,var(--bg-card)) 100%);box-shadow:0 18px 46px rgba(11,31,51,.07)}.ds-hero:before{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,color-mix(in srgb,var(--color-primary) 14%,transparent),transparent 36%),radial-gradient(circle at 88% 18%,color-mix(in srgb,var(--color-accent) 13%,transparent),transparent 28%);content:""}.ds-hero>*{position:relative;z-index:1}.ds-hero-production{min-height:188px;border-color:rgba(255,255,255,.18);background:radial-gradient(circle at 86% 12%,rgba(247,201,72,.22),transparent 30%),radial-gradient(circle at 12% 0,rgba(143,211,255,.16),transparent 28%),linear-gradient(135deg,#041827,#0b4f7a 52%,#06263f);box-shadow:0 24px 58px rgba(6,38,63,.3);color:var(--text-on-dark)}.ds-terminal-hero{grid-template-columns:minmax(0,1fr) minmax(280px,360px);min-height:184px}.ds-hero-production .ds-eyebrow{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:#fde68a}.ds-hero-production .ds-hero-copy h1{color:var(--text-on-dark)}.ds-hero-production .ds-hero-copy p{color:rgba(229,238,246,.78)}.ds-hero-production .ds-hero-meta span{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.1);color:var(--text-on-dark)}.ds-hero-production .ds-button-secondary{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:var(--text-on-dark)}.ds-hero-production .ds-button-secondary:focus-visible,.ds-hero-production .ds-button-secondary:hover{border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.16);color:var(--text-on-dark)}.ds-hero-copy{display:grid;grid-gap:12px;gap:12px;max-width:820px}.ds-eyebrow{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;min-height:26px;border:1px solid color-mix(in srgb,var(--color-primary) 20%,var(--border));border-radius:999px;padding:0 10px;background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-card));color:var(--color-primary);font-size:12px;font-weight:760;letter-spacing:0}.ds-hero-copy h1{margin:0;color:var(--text-primary);font-size:clamp(30px,4vw,50px);font-weight:830;line-height:1.06;letter-spacing:0}.ds-hero-copy p{max-width:720px;margin:0;color:var(--text-secondary);font-size:15px;line-height:1.75}.ds-hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}.ds-hero-meta span{display:inline-flex;align-items:center;gap:8px;min-height:36px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:999px;padding:0 12px;background:rgba(255,255,255,.7);color:var(--text-primary);font-size:13px;font-weight:680;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ds-terminal-status span{min-height:34px;padding-inline:11px}.ds-terminal-control{display:grid;align-content:center;grid-gap:14px;gap:14px;min-width:0}.ds-terminal-control-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.ds-terminal-control-metrics span{display:grid;grid-gap:4px;gap:4px;min-height:82px;border:1px solid color-mix(in srgb,var(--text-on-dark) 14%,transparent);border-radius:16px;padding:14px;background:color-mix(in srgb,var(--text-on-dark) 10%,transparent);color:color-mix(in srgb,var(--text-on-dark) 76%,transparent);font-size:12px;font-weight:680;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ds-terminal-control-metrics strong{color:var(--text-on-dark);font-size:32px;font-weight:840;line-height:1}.ds-action-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.ds-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border-radius:10px;padding:0 16px;font-size:13px;font-weight:740;line-height:1;transition:transform .18s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease)}.ds-button:focus-visible,.ds-button:hover{transform:translateY(-1px)}.ds-button-primary{border:1px solid var(--color-primary);background:linear-gradient(135deg,var(--color-primary),color-mix(in srgb,var(--color-primary) 88%,var(--color-accent)));color:var(--text-on-primary);box-shadow:0 12px 24px rgba(6,38,63,.18)}.ds-button-secondary{border:1px solid color-mix(in srgb,var(--border) 88%,transparent);background:color-mix(in srgb,var(--bg-card) 92%,var(--bg-muted));color:var(--text-primary);box-shadow:none}.ds-button-secondary:focus-visible,.ds-button-secondary:hover{border-color:color-mix(in srgb,var(--color-primary) 34%,var(--border));background:color-mix(in srgb,var(--color-primary) 6%,var(--bg-card));color:var(--color-primary)}.danger-button,.icon-button,.primary-button,.secondary-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--control-height);border:1px solid transparent;border-radius:10px;padding:0 14px;font:inherit;font-size:13px;font-weight:800;line-height:1;text-decoration:none;white-space:nowrap;box-shadow:none;cursor:pointer;transform:none;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.primary-button{border-color:color-mix(in srgb,var(--color-primary) 82%,transparent);background:var(--color-primary);color:var(--text-on-primary);box-shadow:0 10px 22px color-mix(in srgb,var(--color-primary) 18%,transparent)}.primary-button:focus-visible,.primary-button:hover{border-color:var(--color-primary-hover);background:var(--color-primary-hover);color:var(--text-on-primary);box-shadow:0 10px 22px color-mix(in srgb,var(--color-primary) 16%,transparent);transform:translateY(-1px)}.icon-button,.secondary-button{border-color:var(--border);background:var(--bg-card);color:var(--text-primary)}.icon-button:focus-visible,.icon-button:hover,.secondary-button:focus-visible,.secondary-button:hover{border-color:color-mix(in srgb,var(--color-primary) 34%,var(--border-soft));background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-card));color:var(--color-primary)}.danger-button{border-color:color-mix(in srgb,var(--status-danger) 35%,var(--border-soft));background:color-mix(in srgb,var(--status-danger) 8%,var(--bg-card));color:var(--status-danger)}.danger-button:focus-visible,.danger-button:hover{border-color:color-mix(in srgb,var(--status-danger) 56%,var(--border-soft));background:color-mix(in srgb,var(--status-danger) 12%,var(--bg-card));color:var(--status-danger)}.danger-button:disabled,.icon-button:disabled,.primary-button:disabled,.secondary-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.danger-button svg,.icon-button svg,.primary-button svg,.secondary-button svg{width:16px;height:16px;flex:0 0 auto;stroke-width:2.2}.ds-panel{border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:16px;background:var(--bg-card);box-shadow:0 12px 30px rgba(11,31,51,.05)}.ds-section-panel{overflow:hidden}.ds-section-panel [class*=header],.ds-section-panel>header{min-height:54px}.ds-command-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:16px;padding:12px;background:color-mix(in srgb,var(--bg-card) 86%,var(--bg-muted));box-shadow:0 8px 22px rgba(11,31,51,.04)}.ds-command-card,.ds-scene-card{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;grid-gap:12px;gap:12px;min-height:82px;border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--bg-card);color:var(--text-primary);text-align:left;box-shadow:var(--shadow-sm);transition:transform .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease),box-shadow .18s var(--ease)}.ds-command-card:focus-visible,.ds-command-card:hover,.ds-scene-card:focus-visible,.ds-scene-card:hover{border-color:color-mix(in srgb,var(--color-primary) 48%,var(--border));background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-card));box-shadow:0 14px 28px color-mix(in srgb,var(--color-primary) 12%,transparent);transform:translateY(-1px)}.ds-button:active,.ds-command-card:active,.ds-scene-card:active{transform:translateY(0)}.ds-command-card-primary{border-color:color-mix(in srgb,var(--color-primary) 48%,var(--border));background:color-mix(in srgb,var(--color-primary) 10%,var(--bg-card))}.ds-command-icon,.ds-scene-icon{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid color-mix(in srgb,var(--color-primary) 18%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-card));color:var(--color-primary)}.ds-command-copy,.ds-scene-copy{display:grid;grid-gap:4px;gap:4px;min-width:0}.ds-command-copy strong,.ds-scene-copy strong{overflow:hidden;color:var(--text-primary);font-size:16px;font-weight:820;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.ds-command-copy small,.ds-scene-copy small{display:-webkit-box;overflow:hidden;color:var(--text-secondary);font-size:12px;font-weight:560;line-height:1.45;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ds-scene-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.ds-scene-card{grid-template-columns:40px minmax(0,1fr);align-content:start;align-items:start;min-height:144px}.ds-count-badge{display:inline-grid;place-items:center;min-width:36px;height:30px;border-radius:999px;background:color-mix(in srgb,var(--bg-muted) 74%,var(--bg-card));color:var(--text-primary);font-size:13px;font-weight:780}.ds-scene-card .ds-count-badge{position:absolute;top:12px;right:12px;min-width:34px;height:28px}.ds-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.ds-kpi-card{min-height:112px;border:1px solid var(--border);border-radius:16px;padding:18px;background:linear-gradient(180deg,var(--bg-card),color-mix(in srgb,var(--bg-muted) 32%,var(--bg-card)));box-shadow:var(--shadow-card)}.ds-kpi-card span{color:var(--text-secondary);font-size:12px;font-weight:720}.ds-kpi-card strong{margin-top:4px;color:var(--text-primary);font-size:30px;font-weight:840;line-height:1}.ds-kpi-card small{color:var(--text-secondary);font-size:12px;line-height:1.5}.ds-table-shell{overflow:auto;border:1px solid color-mix(in srgb,var(--border) 86%,transparent);border-radius:14px;background:var(--bg-card)}.ds-table-shell table{border-collapse:separate;border-spacing:0;min-width:760px;width:100%}.ds-table-shell thead th{min-height:42px;background:color-mix(in srgb,var(--bg-muted) 64%,var(--bg-card));color:var(--text-secondary);font-size:12px;font-weight:760;letter-spacing:0}.ds-table-shell tbody td{height:56px;border-top:1px solid color-mix(in srgb,var(--border) 78%,transparent);color:var(--text-primary);font-size:13px}.ds-mobile-record-list{display:none}.ds-mobile-record{display:grid;grid-gap:12px;gap:12px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:16px;padding:14px;background:var(--bg-card);box-shadow:0 10px 24px rgba(11,31,51,.06)}.ds-mobile-record-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.ds-mobile-record-header strong{color:var(--text-primary);font-size:15px;font-weight:780;line-height:1.45}.ds-mobile-record>span{color:var(--text-secondary);font-size:12px}.ds-mobile-record dl{display:grid;grid-gap:0;gap:0;margin:0;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.ds-mobile-record dl>div{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:34px;border-bottom:1px solid color-mix(in srgb,var(--border) 66%,transparent)}.ds-mobile-record dd,.ds-mobile-record dt{margin:0;font-size:12px}.ds-mobile-record dt{color:var(--text-secondary);font-weight:650}.ds-mobile-record dd{color:var(--text-primary);font-weight:740;text-align:right}.ds-mobile-record-action{width:100%;min-height:44px}@media (max-width:1080px){.ds-command-grid,.ds-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.ds-terminal-hero{grid-template-columns:1fr}.ds-terminal-control{max-width:none}.ds-scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.ds-page{--ds-page-gap:14px;max-width:none}.ds-hero{grid-template-columns:1fr;min-height:auto;border-radius:18px;padding:20px}.ds-hero-copy h1{font-size:30px;line-height:1.1}.ds-hero-copy p{font-size:13px;line-height:1.65}.ds-action-bar,.ds-action-bar>*{width:100%}.ds-action-bar{display:grid;justify-content:stretch}.ds-terminal-control-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-terminal-control-metrics span{min-height:70px;border-radius:14px;padding:12px}.ds-terminal-control-metrics strong{font-size:26px}.ds-command-grid,.ds-kpi-grid{grid-template-columns:1fr}.ds-command-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.ds-scene-grid{grid-template-columns:1fr}.ds-command-card{grid-template-columns:1fr;align-content:start;align-items:start;gap:10px;min-height:104px;border-radius:14px;padding:12px}.ds-scene-card{grid-template-columns:40px minmax(0,1fr) auto;min-height:78px;border-radius:14px;padding:12px}.ds-scene-card .ds-count-badge{position:static}.ds-command-icon{width:38px;height:38px;border-radius:12px}.ds-command-copy strong{white-space:normal}.ds-command-copy small{-webkit-line-clamp:2}.ds-mobile-record-list~.ds-table-shell{display:none}.ds-mobile-record-list{display:grid;grid-gap:12px;gap:12px}}@media (max-width:420px){.ds-command-card{min-height:108px}.ds-command-copy strong{font-size:14px}.ds-command-copy small{font-size:11px}}.json-editor{min-height:140px;border:1px solid var(--phoenix-color-border);border-radius:var(--phoenix-radius-md);padding:var(--phoenix-space-3);background:var(--phoenix-color-surface);color:var(--phoenix-color-text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.table-scroll{max-width:100%;min-width:0}.empty-state,.module-denied,.skeleton-stack{display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);border:1px solid var(--phoenix-color-border);border-radius:var(--phoenix-radius-md);padding:var(--phoenix-space-5);background:var(--phoenix-color-surface-muted)}.code-chip{display:inline-flex;max-width:100%;align-items:center;overflow-wrap:anywhere;border:1px solid var(--phoenix-color-border);border-radius:var(--phoenix-radius-sm);padding:var(--phoenix-space-2) var(--phoenix-space-3);background:var(--phoenix-color-surface);color:var(--phoenix-color-text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:var(--phoenix-font-size-sm)}.video-preview-frame{display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);overflow:hidden;border:1px solid var(--phoenix-color-border);border-radius:var(--phoenix-radius-md);background:var(--phoenix-color-surface-muted);padding:var(--phoenix-space-3)}.video-preview-frame img,.video-preview-frame video{display:block;width:100%;max-height:58vh;object-fit:contain;border-radius:var(--phoenix-radius-sm);background:var(--phoenix-color-surface)}.skeleton-line{display:block;width:70%;height:14px;border-radius:var(--phoenix-radius-sm);background:color-mix(in srgb,var(--phoenix-color-text-muted) 18%,var(--phoenix-color-surface));animation:shimmer 1.4s ease-in-out infinite}.skeleton-line-lg{width:88%;height:18px}.skeleton-line-sm{width:44%}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4)}.login-panel,.metric-card,.work-panel{border:1px solid var(--phoenix-color-border);border-radius:var(--radius-lg);background:var(--phoenix-color-surface);box-shadow:var(--shadow-sm)}.robot-metric-card,.workorder-stat-card{padding:var(--phoenix-space-4)}.robot-metric-card{display:grid;grid-gap:var(--phoenix-space-2);gap:var(--phoenix-space-2);min-height:104px}.robot-metric-card>span:not(.robot-metric-icon){color:var(--phoenix-color-text-muted);font-size:var(--font-size-caption)}.robot-metric-card>strong{color:var(--phoenix-color-text);font-size:var(--font-size-kpi-value);line-height:1}.robot-metric-icon{display:inline-grid;width:34px;height:34px;place-items:center;border-radius:var(--radius-md);color:var(--phoenix-color-primary);background:color-mix(in srgb,var(--phoenix-color-primary) 12%,transparent)}.robot-metric-card--success .robot-metric-icon{color:var(--phoenix-color-success);background:color-mix(in srgb,var(--phoenix-color-success) 12%,transparent)}.robot-metric-card--warning .robot-metric-icon{color:var(--phoenix-color-warning);background:color-mix(in srgb,var(--phoenix-color-warning) 14%,transparent)}.robot-command-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--phoenix-space-2);padding:var(--phoenix-space-4) 0}.robot-detail-section{display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);padding:var(--phoenix-space-4) 0}.robot-json-input,.robot-json-preview{width:100%;min-height:180px;border:1px solid var(--phoenix-color-border);border-radius:var(--radius-md);background:var(--phoenix-color-surface-muted);color:var(--phoenix-color-text);font:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:var(--font-size-caption);line-height:1.7;overflow:auto}.robot-json-preview{margin:0;padding:var(--phoenix-space-4);white-space:pre-wrap}.robot-json-input{padding:var(--phoenix-space-3);resize:vertical}.robot-cleaning-page{gap:var(--phoenix-space-4)}.robot-cleaning-page .page-header{align-items:center}.robot-filter-bar{display:grid;grid-template-columns:minmax(280px,1fr) minmax(180px,240px) auto;align-items:end}.robot-filter-bar .primary-button{min-width:112px}.robot-page-notice{display:flex;gap:var(--phoenix-space-2);align-items:center;padding:var(--phoenix-space-3) var(--phoenix-space-4);border:1px solid color-mix(in srgb,var(--phoenix-color-primary) 28%,var(--phoenix-color-border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--phoenix-color-primary) 7%,var(--phoenix-color-surface));color:var(--phoenix-color-primary);font-size:var(--font-size-table-body)}.robot-page-notice--warning{border-color:color-mix(in srgb,var(--phoenix-color-warning) 36%,var(--phoenix-color-border));background:color-mix(in srgb,var(--phoenix-color-warning) 10%,var(--phoenix-color-surface));color:color-mix(in srgb,var(--phoenix-color-warning) 72%,var(--phoenix-color-text))}.robot-summary-grid{gap:var(--phoenix-space-3)}.robot-list-card,.robot-setup-card{overflow:hidden}.robot-list-table td:has(.robot-row-actions),.robot-list-table td:last-child,.robot-list-table th:last-child{width:420px!important;min-width:420px!important;max-width:420px!important}.iot-alerts-table td:has(.data-table-actions),.iot-alerts-table td:last-child,.iot-alerts-table th:last-child{width:320px!important;min-width:320px!important;max-width:320px!important}.video-alerts-table td:has(.data-table-actions),.video-alerts-table td:last-child,.video-alerts-table th:last-child{width:560px!important;min-width:560px!important;max-width:560px!important}.robot-list-table th:last-child{background:var(--phoenix-color-surface-muted)}.robot-config-table td:last-child,.robot-config-table th:last-child,.robot-sync-table td:last-child,.robot-sync-table th:last-child{min-width:96px}.robot-pagination{margin-top:var(--phoenix-space-3);padding-top:var(--phoenix-space-3);border-top:1px solid var(--phoenix-color-border)}.robot-setup-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4);align-items:start}.robot-config-flags{display:flex;flex-wrap:wrap;gap:var(--phoenix-space-1);align-items:center}.robot-token-state{display:grid;grid-gap:var(--phoenix-space-1);gap:var(--phoenix-space-1)}.robot-token-state small{color:var(--phoenix-color-text-muted);font-size:var(--font-size-caption);white-space:nowrap}@media (max-width:1280px){.robot-setup-grid{grid-template-columns:1fr}}@media (max-width:900px){.robot-filter-bar{grid-template-columns:1fr}.robot-filter-bar .primary-button{width:100%}.robot-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.workorder-stat-section{display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3)}.workorder-stat-list{display:grid;grid-gap:var(--phoenix-space-2);gap:var(--phoenix-space-2);margin:0;padding:0;list-style:none}.workorder-stat-list>li{display:flex;align-items:center;justify-content:space-between;gap:var(--phoenix-space-3);border:1px solid var(--phoenix-color-border);border-radius:var(--radius-md);padding:var(--phoenix-space-3);background:var(--phoenix-color-surface-muted)}.workorder-stat-list span{min-width:0;overflow:hidden;color:var(--phoenix-color-text-muted);font-size:var(--font-size-caption);text-overflow:ellipsis;white-space:nowrap}.workorder-stat-list strong{color:var(--phoenix-color-text);font-size:var(--font-size-table-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.work-panel{padding:var(--phoenix-space-4)}.floating-panel{position:fixed;top:var(--phoenix-space-6);right:var(--phoenix-space-6);z-index:20;width:min(520px,calc(100vw - var(--phoenix-space-6) * 2));max-height:calc(100vh - var(--phoenix-space-6) * 2);overflow:auto}.floating-panel-wide{inset:var(--phoenix-space-6);right:var(--phoenix-space-6);width:auto}.work-panel>.system-toolbar:first-child,.work-panel>.task-item:first-child{margin:calc(var(--phoenix-space-4) * -1) calc(var(--phoenix-space-4) * -1) var(--phoenix-space-4);border-bottom-right-radius:0;border-bottom-left-radius:0;padding:var(--phoenix-space-3) var(--phoenix-space-4);border-bottom:1px solid var(--jinhu-color-border-soft);background:var(--phoenix-color-surface)}.panel-title{margin:0 0 var(--phoenix-space-4);color:var(--phoenix-color-text);font-size:var(--font-size-panel-title);font-weight:var(--font-weight-bold);line-height:1.4}.system-toolbar .panel-title,.task-item .panel-title{margin:0}.task-list{display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);margin:0;padding:0;list-style:none}.task-item{padding:var(--phoenix-space-3) var(--phoenix-space-4);border:1px solid var(--jinhu-color-border-soft);border-radius:var(--phoenix-radius-md);background:var(--phoenix-color-surface)}.page-actions{display:flex;flex-wrap:wrap;gap:var(--phoenix-space-3);align-items:center;justify-content:flex-end;min-width:0}.page-header .page-actions{flex-wrap:nowrap;justify-content:flex-end}.page-header .primary-button{min-width:104px}.realtime-meta{display:flex;flex-wrap:wrap;min-width:0}.realtime-meta,.realtime-status{gap:var(--phoenix-space-2);align-items:center}.realtime-status{display:inline-flex;min-height:28px;border:1px solid var(--jinhu-color-border-soft);border-radius:var(--phoenix-radius-sm);padding:0 var(--phoenix-space-3);background:var(--phoenix-color-surface);color:var(--phoenix-color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);line-height:1;white-space:nowrap}.realtime-status.is-connected{border-color:color-mix(in srgb,var(--phoenix-color-success) 42%,var(--jinhu-color-border-soft));background:color-mix(in srgb,var(--phoenix-color-success) 10%,var(--phoenix-color-surface));color:var(--phoenix-color-success)}.realtime-status-dot{width:8px;height:8px;border-radius:999px;background:var(--phoenix-color-text-muted);box-shadow:0 0 0 3px color-mix(in srgb,var(--phoenix-color-text-muted) 12%,transparent)}.realtime-status.is-connected .realtime-status-dot{background:var(--phoenix-color-success);box-shadow:0 0 0 3px color-mix(in srgb,var(--phoenix-color-success) 16%,transparent)}.leasing-leads-page{gap:var(--phoenix-space-4)}.leasing-leads-page .page-header{grid-template-columns:minmax(0,1fr) auto}.leasing-leads-page .filter-bar .system-grid-three{grid-template-columns:repeat(auto-fill,minmax(190px,240px))}.leasing-leads-page .filter-actions{align-self:end}.lead-table-card{padding:0;overflow:hidden}.lead-table-card>div:first-child{border:0;border-radius:0;box-shadow:none}.lead-list-table{min-width:1040px;table-layout:fixed}.lead-list-table th:first-child{width:29%}.lead-list-table th:nth-child(2){width:16%}.lead-list-table th:nth-child(3),.lead-list-table th:nth-child(4){width:13%}.lead-list-table th:nth-child(5){width:16%}.lead-list-table th:nth-child(6){width:178px}.lead-table-card .lead-list-table td,.lead-table-card .lead-list-table th{padding:7px 10px}.lead-table-card .lead-list-table td{height:58px;vertical-align:middle}.lead-facts,.lead-primary-cell,.lead-stacked-cell,.lead-stage-cell,.lead-timeline-cell{display:grid;min-width:0;grid-gap:4px;gap:4px}.lead-primary-cell strong,.lead-stacked-cell strong{overflow:hidden;color:var(--text-primary);font-size:13px;font-weight:700;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.lead-code{color:var(--color-primary);font-size:11px;font-weight:720;letter-spacing:0}.lead-meta-line{color:var(--text-secondary);font-size:11px}.lead-facts span,.lead-meta-line,.lead-stacked-cell span,.lead-timeline-cell span{display:flex;min-width:0;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lead-facts span,.lead-stacked-cell span,.lead-timeline-cell span{align-items:center;color:var(--text-primary);font-size:12px;line-height:1.35}.lead-facts em,.lead-timeline-cell em{flex:0 0 auto;min-width:34px;color:var(--text-secondary);font-style:normal;font-size:11px}.lead-stage-cell{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.lead-table-card .status-pill{min-height:19px;padding:1px 7px;font-size:11px;line-height:1.35}.lead-table-card table td:last-child,.lead-table-card table th:last-child{position:-webkit-sticky;position:sticky;right:0;z-index:2;min-width:178px;background:var(--phoenix-color-surface);box-shadow:-1px 0 0 var(--phoenix-color-border)}.lead-table-card table th:last-child{z-index:3;background:var(--bg-muted)}.lead-table-card .system-toolbar{margin:0;border-top:1px solid var(--phoenix-color-border);padding:var(--phoenix-space-3) var(--phoenix-space-4);background:var(--bg-muted)}.lead-table-card .page-actions{flex-wrap:nowrap}.funnel-page{gap:var(--phoenix-space-4)}.funnel-filter{padding:14px 16px}.funnel-filter-form{margin:0}.funnel-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr)) auto;grid-gap:12px;gap:12px;align-items:end}.funnel-filter .field{gap:6px}.funnel-filter .field>label{color:var(--text-secondary);font-size:12px;font-weight:700}.funnel-filter .field input,.funnel-filter .field select{min-height:36px;border-radius:var(--radius-sm);padding:0 10px;font-size:13px}.funnel-filter .filter-actions .primary-button{min-height:36px;border-radius:var(--radius-sm);box-shadow:none}.funnel-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.funnel-kpi-card{display:grid;align-content:space-between;min-height:108px;border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px;background:var(--bg-card);box-shadow:var(--shadow-sm)}.funnel-kpi-card-emphasis{border-color:color-mix(in srgb,var(--color-primary) 28%,var(--border));background:color-mix(in srgb,var(--color-primary) 5%,var(--bg-card))}.funnel-kpi-header{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text-secondary);font-size:var(--font-size-card-label);font-weight:var(--font-weight-semibold)}.funnel-kpi-icon{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-primary) 9%,var(--bg-card));color:var(--color-primary)}.funnel-kpi-card>strong{margin-top:10px;color:var(--text-primary);font-size:var(--font-size-kpi-value);font-weight:var(--font-weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.funnel-kpi-card>span:last-child{margin-top:4px;color:var(--text-secondary);font-size:var(--font-size-caption)}.funnel-rate-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:0;gap:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-sm)}.funnel-rate-card{display:grid;grid-gap:3px;gap:3px;min-height:74px;border-right:1px solid var(--border);padding:12px 16px}.funnel-rate-card:last-child{border-right:0}.funnel-rate-card>span{color:var(--text-secondary);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.funnel-rate-card>strong{color:var(--text-primary);font-size:22px;font-weight:var(--font-weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.15}.funnel-rate-card>em{color:var(--text-secondary);font-size:12px;font-style:normal}.funnel-rate-muted>strong{color:var(--status-danger)}.funnel-main-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);grid-gap:var(--phoenix-space-4)}.funnel-main-grid,.funnel-table-grid{display:grid;gap:var(--phoenix-space-4)}.funnel-table-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--phoenix-space-4)}.funnel-distribution-panel,.funnel-stage-panel,.funnel-table-card{padding:16px}.funnel-panel-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.funnel-page .panel-title{margin:0;color:var(--text-primary);font-size:16px;font-weight:760;line-height:1.35}.funnel-panel-header>span{color:var(--text-secondary);font-size:12px}.funnel-bar-list,.funnel-stage-list{display:grid;grid-gap:10px;gap:10px}.funnel-stage-row{display:grid;grid-template-columns:88px 56px minmax(0,1fr) 128px;grid-gap:12px;gap:12px;align-items:center;min-height:38px}.funnel-bar-row>span,.funnel-stage-row>span{min-width:0;overflow:hidden;color:var(--text-primary);font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.funnel-bar-row>strong,.funnel-stage-row>strong{color:var(--text-primary);font-size:13px;font-weight:760;text-align:right;white-space:nowrap}.funnel-stage-row>em{overflow:hidden;color:var(--text-secondary);font-size:12px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.funnel-mini-progress,.funnel-stage-progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:var(--radius-xl);background:var(--bg-muted)}.funnel-mini-progress::-webkit-progress-bar,.funnel-stage-progress::-webkit-progress-bar{background:var(--bg-muted)}.funnel-stage-progress::-webkit-progress-value{border-radius:var(--radius-xl);background:var(--color-primary)}.funnel-mini-progress::-webkit-progress-value{border-radius:var(--radius-xl);background:color-mix(in srgb,var(--color-primary) 76%,var(--bg-card))}.funnel-stage-progress::-moz-progress-bar{border-radius:var(--radius-xl);background:var(--color-primary)}.funnel-mini-progress::-moz-progress-bar{border-radius:var(--radius-xl);background:color-mix(in srgb,var(--color-primary) 76%,var(--bg-card))}.funnel-bar-row{display:grid;grid-template-columns:minmax(0,1fr) 68px;grid-gap:8px 12px;gap:8px 12px;align-items:center}.funnel-bar-row .funnel-mini-progress{grid-column:1/-1}.funnel-table-card table{min-width:520px}.metric-value{display:block;margin-top:var(--phoenix-space-3);font-size:var(--font-size-kpi-value);font-weight:var(--font-weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.asset-progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:var(--phoenix-radius-sm);background:var(--phoenix-color-surface-muted)}.asset-progress::-webkit-progress-bar{background:var(--phoenix-color-surface-muted)}.asset-progress::-webkit-progress-value{background:var(--phoenix-color-primary)}.asset-progress::-moz-progress-bar{background:var(--phoenix-color-primary)}.asset-statistics-page{gap:14px}.asset-statistics-page .page-header .header-title strong,.asset-statistics-page .panel-title{color:var(--text-primary)}.asset-statistics-page .page-header .header-title span{color:var(--text-secondary)}.asset-stat-filter-form{grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--phoenix-space-4)}.asset-stat-filter-form,.asset-stat-filter-grid{display:grid;gap:var(--phoenix-space-4);align-items:end}.asset-stat-filter-grid{grid-template-columns:repeat(3,minmax(180px,280px));grid-gap:var(--phoenix-space-4)}.asset-stat-filter-button{align-self:end;min-width:88px}.asset-stat-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);padding:var(--phoenix-space-4)}.asset-stat-card{display:grid;align-content:space-between;min-height:92px;border:1px solid var(--border);border-radius:var(--radius-md);padding:13px 14px;background:var(--bg-card);box-shadow:var(--shadow-sm)}.asset-stat-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--phoenix-space-3);color:var(--text-secondary);font-size:var(--font-size-card-label);font-weight:var(--font-weight-semibold)}.asset-stat-card-icon{display:inline-grid;flex:0 0 28px;place-items:center;width:28px;height:28px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-card));color:var(--color-primary)}.asset-stat-card-value{overflow:hidden;margin-top:var(--phoenix-space-3);color:var(--text-primary);font-size:var(--font-size-kpi-value);font-weight:var(--font-weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.asset-stat-panel{padding:var(--phoenix-space-4)}.asset-stat-panel .panel-title{margin-bottom:var(--phoenix-space-3);font-size:var(--font-size-panel-title);font-weight:var(--font-weight-bold)}.asset-stat-panel table{color:var(--text-primary)}.brand-settings-page{max-width:1180px}.brand-settings-panel{display:grid;grid-gap:var(--phoenix-space-6);gap:var(--phoenix-space-6);padding:var(--phoenix-space-6)}.brand-settings-preview{display:flex;gap:var(--phoenix-space-5);align-items:center;border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--phoenix-space-5);background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 10%,transparent),transparent 64%),var(--bg-muted)}.brand-settings-preview img{width:168px;max-width:34vw;height:76px;object-fit:contain}.brand-logo-field{gap:var(--phoenix-space-3)}.brand-logo-upload-row{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4);align-items:start}.brand-logo-upload-row>img{width:100%;height:112px;border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--phoenix-space-3);background:var(--bg-muted);object-fit:contain}.brand-logo-upload-row .file-uploader{min-width:0}.brand-logo-reset{justify-self:start}@media (max-width:640px){.brand-logo-upload-row{grid-template-columns:1fr}.brand-logo-upload-row>img{height:96px}}.brand-settings-preview div{display:grid;grid-gap:var(--phoenix-space-1);gap:var(--phoenix-space-1);min-width:0}.brand-settings-preview small,.brand-settings-preview span{color:var(--text-secondary);font-size:var(--font-size-caption)}.brand-settings-preview strong{color:var(--text-primary);font-size:22px;font-weight:780}.theme-scheme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3)}.theme-scheme-card{display:flex;gap:var(--phoenix-space-2);align-items:center;justify-content:center;min-height:44px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);cursor:pointer;font-weight:var(--font-weight-semibold);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.theme-scheme-card:hover,.theme-scheme-card[aria-pressed=true]{border-color:var(--color-primary);box-shadow:0 10px 22px color-mix(in srgb,var(--color-primary) 18%,transparent)}.theme-scheme-card[aria-pressed=true]{background:color-mix(in srgb,var(--color-primary) 10%,var(--bg-card))}.form-success{display:inline-flex;gap:var(--phoenix-space-2);align-items:center;width:-moz-fit-content;width:fit-content;border:1px solid color-mix(in srgb,var(--status-success) 34%,var(--border));border-radius:var(--radius-md);padding:var(--phoenix-space-2) var(--phoenix-space-3);background:color-mix(in srgb,var(--status-success) 10%,var(--bg-card));color:var(--status-success);font-weight:var(--font-weight-semibold)}.energy-dashboard-page .dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.energy-rank-panel{min-height:260px}.energy-rank-list{display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);margin:0;padding:0;list-style:none}.energy-rank-item{display:grid;grid-gap:var(--phoenix-space-2);gap:var(--phoenix-space-2);border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:var(--phoenix-space-3);background:color-mix(in srgb,var(--bg-muted) 42%,var(--bg-card))}.energy-rank-meta,.energy-rank-value{display:flex;gap:var(--phoenix-space-3);align-items:center;justify-content:space-between;min-width:0}.energy-rank-meta strong{overflow:hidden;color:var(--text-primary);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.energy-rank-value span{flex:0 0 auto;color:var(--text-primary);font-weight:var(--font-weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.energy-rank-value progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:999px;background:var(--bg-muted)}.energy-rank-value progress::-webkit-progress-bar{border-radius:999px;background:var(--bg-muted)}.energy-rank-value progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent))}.energy-rank-value progress::-moz-progress-bar{border-radius:999px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent))}.iot-detail-page{gap:14px}.back-link{margin-bottom:var(--phoenix-space-2)}.iot-detail-tabs{display:flex;flex-wrap:wrap;gap:var(--phoenix-space-2);padding:var(--phoenix-space-3)}.iot-detail-tabs .primary-button,.iot-detail-tabs .secondary-button{min-height:34px}.iot-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--phoenix-space-3)}.iot-detail-field,.iot-detail-grid{display:grid;gap:var(--phoenix-space-3)}.iot-detail-field{grid-template-columns:minmax(96px,.38fr) minmax(0,1fr);grid-gap:var(--phoenix-space-3);align-items:center;min-height:44px;border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px;background:var(--bg-card)}.iot-detail-field>span{color:var(--text-secondary);font-size:var(--font-size-card-label);font-weight:var(--font-weight-semibold)}.iot-detail-field>strong{min-width:0;color:var(--text-primary);font-size:var(--font-size-table-body);font-weight:var(--font-weight-semibold);overflow-wrap:anywhere}.iot-json-block{display:grid;grid-gap:var(--phoenix-space-2);gap:var(--phoenix-space-2);margin-top:var(--phoenix-space-4)}.iot-json-block>span{color:var(--text-secondary);font-size:var(--font-size-card-label);font-weight:var(--font-weight-semibold)}.iot-json-block pre{overflow:auto;max-height:240px;border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--phoenix-space-3);background:var(--bg-muted);color:var(--text-primary);font-size:var(--font-size-caption);line-height:1.6;white-space:pre-wrap}.asset-distribution-list{display:grid;grid-gap:10px;gap:10px}.asset-distribution-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(160px,auto) minmax(220px,2fr);grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);align-items:center;min-height:34px}.asset-distribution-label{min-width:0;overflow:hidden;text-overflow:ellipsis}.asset-distribution-label,.asset-distribution-row>strong{color:var(--text-primary);font-size:var(--font-size-table-body);font-weight:var(--font-weight-semibold);white-space:nowrap}.asset-distribution-row>strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.unit-status-board-page{gap:14px}.unit-board-filter-form{grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--phoenix-space-4)}.unit-board-filter-form,.unit-board-filter-grid{display:grid;gap:var(--phoenix-space-4);align-items:end}.unit-board-filter-grid{grid-template-columns:repeat(2,minmax(180px,280px));grid-gap:var(--phoenix-space-4)}.unit-board-filter-button{align-self:end;min-width:88px}.unit-board-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--phoenix-space-3);padding:12px 16px;color:var(--text-secondary);font-size:var(--font-size-card-label);font-weight:var(--font-weight-semibold)}.unit-board-summary strong{color:var(--text-primary);font-size:var(--font-size-table-body);font-weight:var(--font-weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.asset-board-building,.asset-board-floor,.unit-board-floor-list{display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3)}.unit-board-building{padding:var(--phoenix-space-4)}.unit-board-building-header,.unit-board-floor-header{display:flex;align-items:center;justify-content:space-between;gap:var(--phoenix-space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.unit-board-building-header{padding:11px 14px}.unit-board-building-header .panel-title{margin:0}.unit-board-floor-header{min-height:38px;padding:0 12px;background:var(--bg-muted)}.unit-board-building-header>span,.unit-board-floor-header>span{color:var(--text-secondary);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);white-space:nowrap}.unit-board-floor-header>strong{min-width:0;overflow:hidden;color:var(--text-primary);font-size:var(--font-size-table-body);font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap}.unit-board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3)}.asset-unit-card{position:relative;display:grid;grid-gap:8px;gap:8px;min-height:112px;margin-top:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 12px 12px 14px;background:var(--bg-card);color:var(--text-primary);text-align:left;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .18s var(--ease),background .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease)}.asset-unit-card:before{position:absolute;inset:0 auto 0 0;width:4px;background:var(--status-neutral);content:""}.asset-unit-card:hover{border-color:color-mix(in srgb,var(--color-primary) 32%,var(--border));background:color-mix(in srgb,var(--color-primary) 4%,var(--bg-card));box-shadow:var(--shadow-md);transform:translateY(-1px)}.unit-card-main{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:start}.unit-card-main>strong{min-width:0;overflow:hidden;color:var(--text-primary);font-size:14px;font-weight:var(--font-weight-bold);line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.unit-card-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:6px 10px;gap:6px 10px;align-items:center;color:var(--text-secondary);font-size:var(--font-size-caption);line-height:1.25}.unit-card-meta>span,.unit-card-meta>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unit-card-meta>strong{color:var(--text-primary);font-size:var(--font-size-table-body);font-weight:var(--font-weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.asset-unit-status-10{border-color:var(--phoenix-color-success)}.asset-unit-status-10:before{background:var(--status-success)}.asset-unit-status-20,.asset-unit-status-40{border-color:var(--phoenix-color-warning)}.asset-unit-status-20:before,.asset-unit-status-40:before{background:var(--status-warning)}.asset-unit-status-30{border-color:var(--phoenix-color-primary)}.asset-unit-status-30:before{background:var(--color-primary)}.asset-unit-status-50{border-color:var(--phoenix-color-danger)}.asset-unit-status-50:before{background:var(--status-danger)}.asset-unit-status-60{border-color:var(--phoenix-color-info)}.asset-unit-status-60:before{background:var(--status-info)}.asset-unit-status-70{border-color:var(--color-border-strong)}.asset-unit-status-70:before{background:var(--text-muted)}.ds-table-card{background:var(--bg-card)}.ds-table-card .task-item,.ds-table-footer{margin-top:0;border-top:1px solid var(--border-soft);padding:14px 18px;background:color-mix(in srgb,var(--bg-card) 94%,var(--surface-subtle))}.signin-page{position:relative;display:grid;grid-template-columns:minmax(420px,1fr) minmax(360px,440px);grid-gap:clamp(32px,6vw,96px);gap:clamp(32px,6vw,96px);align-items:center;min-height:100vh;min-height:100dvh;overflow:hidden;padding:clamp(32px,6vw,80px);background:var(--phoenix-sidebar-bg);font-family:var(--phoenix-font-sans);isolation:isolate}.signin-page:before{inset:0;background:radial-gradient(circle at 16% 16%,color-mix(in srgb,var(--phoenix-color-primary) 42%,transparent),transparent 28rem),radial-gradient(circle at 78% 72%,color-mix(in srgb,var(--phoenix-color-accent) 28%,transparent),transparent 24rem),linear-gradient(104deg,color-mix(in srgb,var(--phoenix-sidebar-bg) 94%,transparent) 0,color-mix(in srgb,var(--phoenix-sidebar-bg) 76%,transparent) 46%,color-mix(in srgb,var(--phoenix-sidebar-bg) 42%,transparent) 100%);z-index:1}.signin-page:after,.signin-page:before{position:absolute;content:"";pointer-events:none}.signin-page:after{inset:auto 0 0;width:100%;height:5px;background:linear-gradient(90deg,var(--brand-blue),var(--brand-green));z-index:3}.signin-background{position:absolute;inset:0;background-image:url(/brand/jinhu-park-campus-login.jpg);background-position:50%;background-size:cover;filter:saturate(1.08) contrast(1.02);transform:scale(1.01)}.signin-card,.signin-identity{position:relative;z-index:2}.signin-identity{display:grid;grid-gap:clamp(34px,4vw,52px);gap:clamp(34px,4vw,52px);max-width:640px}.signin-brand-row{align-items:center;display:inline-flex;gap:var(--phoenix-space-4);width:-moz-fit-content;width:fit-content;padding:0;color:var(--phoenix-color-on-primary)}.signin-brand-row img{display:block;width:clamp(92px,10vw,124px);height:auto;object-fit:contain;filter:drop-shadow(0 16px 32px color-mix(in srgb,var(--phoenix-sidebar-bg) 42%,transparent))}.signin-brand-row strong{color:var(--phoenix-color-on-primary);font-size:clamp(22px,2.6vw,32px);font-weight:800;line-height:1.2}.signin-copy{display:grid;grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4)}.signin-copy p,.signin-copy span{margin:0}.signin-kicker{color:color-mix(in srgb,var(--phoenix-color-accent) 70%,var(--phoenix-color-on-primary));font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);letter-spacing:.14em;text-transform:uppercase}.signin-copy h1{max-width:560px;margin:0;color:var(--phoenix-color-on-primary);font-size:clamp(42px,5.3vw,68px);font-weight:800;line-height:1.05;text-shadow:0 18px 42px color-mix(in srgb,var(--phoenix-sidebar-bg) 54%,transparent)}.signin-copy p{max-width:520px;color:color-mix(in srgb,var(--phoenix-color-on-primary) 70%,transparent);font-size:16px;font-weight:var(--font-weight-medium);line-height:1.75}.signin-capabilities{display:flex;flex-wrap:wrap;gap:var(--phoenix-space-3);margin-top:var(--phoenix-space-2)}.signin-capabilities span{align-items:center;border:1px solid color-mix(in srgb,var(--phoenix-color-on-primary) 18%,transparent);border-radius:999px;color:color-mix(in srgb,var(--phoenix-color-on-primary) 76%,transparent);display:inline-flex;gap:var(--phoenix-space-2);min-height:34px;padding:0 var(--phoenix-space-3);background:color-mix(in srgb,var(--phoenix-sidebar-bg) 24%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:13px;font-weight:var(--font-weight-semibold)}.signin-card{width:100%;min-width:0;border:1px solid color-mix(in srgb,var(--phoenix-color-on-primary) 20%,transparent);border-radius:var(--phoenix-radius-lg);padding:clamp(28px,4vw,42px);background:color-mix(in srgb,var(--phoenix-color-surface) 86%,transparent);box-shadow:0 28px 80px color-mix(in srgb,var(--phoenix-sidebar-bg) 34%,transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.signin-card-header{display:block;margin-bottom:var(--phoenix-space-6)}.signin-card-header img{display:none}.signin-card-header h2{margin:var(--phoenix-space-1) 0 0;color:var(--phoenix-color-text);font-size:24px;font-weight:var(--font-weight-bold);line-height:1.2}.signin-card-header p{margin:var(--phoenix-space-1) 0 0;color:var(--phoenix-color-text-muted);font-size:var(--font-size-table-body);line-height:1.7}.signin-card-eyebrow{color:var(--phoenix-color-primary);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);letter-spacing:.12em;text-transform:uppercase}.signin-form{margin-top:0}.signin-mode.ant-segmented{width:100%;margin-bottom:18px;padding:4px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-muted)}.signin-mode .ant-segmented-item{min-height:34px;border-radius:calc(var(--radius-md) - 4px);color:var(--text-muted);font-weight:700}.signin-mode .ant-segmented-item-selected{color:var(--text-strong);background:var(--surface);box-shadow:var(--shadow-sm)}.signin-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.signin-code-row{display:grid;grid-template-columns:minmax(0,1fr) 132px;grid-gap:12px;gap:12px;align-items:end}.signin-wechat-panel{display:grid;grid-template-columns:48px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:center;margin-bottom:18px;border:1px solid var(--border);border-radius:var(--radius-md);padding:14px;background:var(--surface-muted)}.signin-provider-icon{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:var(--radius-md);color:var(--brand-blue);background:var(--surface);box-shadow:var(--shadow-sm)}.signin-wechat-panel strong{display:block;color:var(--text-strong);font-size:15px;font-weight:800;line-height:1.4}.signin-provider-note,.signin-wechat-panel p{margin:4px 0 0;color:var(--text-muted);font-size:13px;line-height:1.6}.signin-provider-note{margin-top:12px}.signin-code-button.ant-btn{height:56px;margin-bottom:18px;border-radius:var(--radius-md);font-weight:800}.signin-form .ant-form-item{margin-bottom:18px}.signin-form .ant-form-item-control,.signin-form .ant-form-item-control-input,.signin-form .ant-form-item-control-input-content,.signin-form .ant-form-item-row{width:100%;min-width:0}.signin-form .ant-form-item-control-input{min-height:56px}.signin-form .ant-form-item-label{padding-bottom:6px}.signin-form .ant-form-item-label>label{height:auto;color:var(--phoenix-color-text);font-size:13px;font-weight:var(--font-weight-semibold)}.signin-form .ant-input,.signin-form .ant-input-affix-wrapper{width:100%;min-height:56px;border-color:color-mix(in srgb,var(--phoenix-color-primary) 10%,var(--phoenix-color-border));border-radius:var(--phoenix-radius-md);background:color-mix(in srgb,var(--phoenix-color-surface) 92%,transparent);font-size:14px}.signin-form .ant-input-affix-wrapper{display:inline-flex;align-items:center;padding:0 16px}.signin-form .ant-input-affix-wrapper>input.ant-input{min-height:0;border:0;background:transparent;box-shadow:none}.signin-form .ant-input-prefix{-webkit-margin-end:9px;margin-inline-end:9px;color:var(--phoenix-color-text-muted)}.signin-form .ant-input-affix-wrapper:hover,.signin-form .ant-input:hover{border-color:color-mix(in srgb,var(--phoenix-color-primary) 44%,var(--phoenix-color-border))}.signin-form .ant-input-affix-wrapper-focused,.signin-form .ant-input:focus{border-color:var(--brand-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--phoenix-color-primary) 14%,transparent)}.signin-submit.ant-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;height:52px;margin-top:4px;border:0;border-radius:var(--phoenix-radius-md);background:linear-gradient(135deg,var(--phoenix-color-primary),color-mix(in srgb,var(--phoenix-color-primary) 72%,var(--phoenix-color-accent)));box-shadow:0 16px 34px color-mix(in srgb,var(--phoenix-color-primary) 28%,transparent);font-size:15px;font-weight:var(--font-weight-bold)}.signin-submit.ant-btn:focus,.signin-submit.ant-btn:hover{background:linear-gradient(135deg,var(--phoenix-color-primary-hover),var(--phoenix-color-primary));box-shadow:0 18px 38px color-mix(in srgb,var(--phoenix-color-primary) 34%,transparent)}.signin-alert.ant-alert{margin-top:16px;border-radius:var(--radius-md)}.login-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,440px);grid-gap:clamp(32px,8vw,120px);gap:clamp(32px,8vw,120px);align-items:center;min-height:100vh;padding:clamp(24px,8vw,96px);background:radial-gradient(circle at 18% 22%,color-mix(in srgb,var(--phoenix-color-primary) 16%,transparent),transparent 30rem),radial-gradient(circle at 78% 72%,color-mix(in srgb,var(--phoenix-color-accent) 10%,transparent),transparent 26rem),linear-gradient(135deg,var(--phoenix-login-gradient-from),var(--phoenix-login-gradient-mid) 48%,var(--phoenix-login-gradient-to))}.login-hero{display:grid;grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4);max-width:620px}.login-hero-mark{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:var(--phoenix-radius-lg);background:linear-gradient(135deg,var(--phoenix-color-primary),var(--phoenix-color-accent));color:var(--phoenix-color-on-primary);font-weight:800}.login-hero-logo,.login-hero-mark{box-shadow:var(--phoenix-shadow-md)}.login-hero-logo{display:grid;align-items:center;width:min(360px,78vw);min-height:132px;padding:18px 22px;border:1px solid color-mix(in srgb,var(--phoenix-color-primary) 16%,var(--border));border-radius:22px;background:color-mix(in srgb,var(--brand-logo-surface) 88%,transparent)}.login-hero-logo img{display:block;width:100%;height:auto;object-fit:contain}.login-hero p{margin:0;color:var(--phoenix-color-primary);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.login-hero h2{max-width:560px;margin:0;color:var(--phoenix-color-text);font-size:clamp(34px,5vw,58px);font-weight:750;line-height:1.08}.login-panel{width:min(440px,100%);padding:40px;border-color:var(--jinhu-color-border-soft);box-shadow:var(--phoenix-shadow-lg)}.login-panel.ant-card{border-radius:18px}.login-panel .ant-card-body{padding:0}.login-panel-logo{display:grid;place-items:center;width:64px;height:48px;margin-bottom:var(--phoenix-space-4);border:1px solid color-mix(in srgb,var(--phoenix-color-primary) 16%,var(--border));border-radius:var(--phoenix-radius-lg);background:var(--brand-logo-surface);box-shadow:var(--phoenix-shadow-sm)}.login-panel-logo img{display:block;width:54px;height:auto}.login-title.ant-typography{margin:0 0 var(--phoenix-space-2);font-size:28px;font-weight:700;line-height:1.25}.login-subtitle.ant-typography{margin:0 0 var(--phoenix-space-8);color:var(--phoenix-color-text-muted);font-size:15px}.form-stack{margin-top:var(--phoenix-space-4)}.field{min-width:0}.field label,.field>span{display:block;min-width:0}.field input,.field select,.field textarea{min-width:0}[data-ui-drawer-panel=true] .system-grid{gap:14px 16px}[data-ui-drawer-panel=true] .system-grid-three{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 14px}[data-ui-drawer-panel=true] .system-toolbar{gap:10px;margin-bottom:10px}[data-ui-drawer-panel=true] .system-toolbar h3{margin:0;font-size:17px;line-height:1.35}[data-ui-drawer-panel=true] .form-stack{margin-top:0;gap:14px}[data-ui-drawer-panel=true] .detail-stack{gap:14px}[data-ui-drawer-panel=true].asset-space-detail-drawer{bottom:auto!important;max-height:calc(100dvh - 24px)}.asset-space-detail-drawer .asset-space-detail-body{flex:0 1 auto}.asset-space-detail-drawer .detail-stack>.system-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px}.asset-space-detail-drawer .detail-stack>.system-grid>*{display:grid;min-height:76px;align-content:center;grid-gap:5px;gap:5px;border-radius:12px;padding:12px 14px;box-shadow:none}.asset-space-detail-drawer .detail-stack>.system-grid>*>strong{color:var(--text-primary);font-size:24px;font-weight:820;line-height:1}.asset-space-detail-drawer .detail-stack>.system-grid>*>span{color:var(--text-secondary);font-size:12px;font-weight:680}.asset-space-detail-drawer .ds-table-shell{border-radius:12px;box-shadow:none}.asset-space-detail-drawer .ds-data-table{min-width:760px;table-layout:auto}.asset-space-detail-drawer .ds-data-table th{min-width:72px;padding:10px 12px;white-space:nowrap}.asset-space-detail-drawer .ds-data-table td{height:48px;padding:10px 12px}.asset-space-detail-drawer .ds-data-table td[colspan]{height:132px;color:var(--text-tertiary);font-size:13px;font-weight:650;text-align:center}.asset-space-detail-drawer .inline-action-button{min-width:64px;min-height:32px;border-radius:9px;padding:0 10px}[data-ui-drawer-panel=true] .field{gap:7px}[data-ui-drawer-panel=true] .field label,[data-ui-drawer-panel=true] .field>span{color:var(--form-label-color);font-size:var(--form-label-size);font-weight:720;line-height:1.35}[data-ui-drawer-panel=true] .field input,[data-ui-drawer-panel=true] .field select{min-height:var(--form-control-height);border-radius:var(--form-control-radius);padding:0 var(--form-control-padding-x);font-size:13px}[data-ui-drawer-panel=true] .field textarea{min-height:96px;border-radius:var(--form-control-radius);padding:10px var(--form-control-padding-x);font-size:13px;line-height:1.45}[data-ui-drawer-panel=true] .metric-card{display:grid;min-height:0;grid-gap:4px;gap:4px;border-radius:12px;padding:12px 14px;box-shadow:var(--shadow-xs,0 1px 2px rgba(11,31,51,.06))}[data-ui-drawer-panel=true] .metric-card>span{color:var(--phoenix-color-text-muted);font-size:12px;font-weight:680;line-height:1.35}[data-ui-drawer-panel=true] .metric-card .metric-value{margin-top:0;font-size:24px;line-height:1.12}[data-ui-drawer-panel=true] .status-pill{min-height:24px;padding:2px 10px;font-size:12px}[data-ui-drawer-panel=true].ds-compact-drawer .system-grid{gap:9px 12px}@media (max-width:760px){[data-ui-drawer-panel=true].asset-space-detail-drawer{bottom:0!important;max-height:none}.asset-space-detail-drawer .asset-space-detail-body{flex:1 1 auto}.asset-space-detail-drawer .detail-stack>.system-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-space-detail-drawer .detail-stack>.system-grid>*{min-height:72px}.asset-space-detail-drawer .ds-data-table{min-width:0}.asset-space-detail-drawer .ds-data-table td[colspan]{height:auto;min-height:112px;padding:36px 16px}}[data-ui-drawer-panel=true].ds-compact-drawer .form-stack{gap:9px}[data-ui-drawer-panel=true].ds-compact-drawer .field{gap:4px}[data-ui-drawer-panel=true].ds-compact-drawer .field label,[data-ui-drawer-panel=true].ds-compact-drawer .field>span{color:var(--form-label-color);font-size:12px;font-weight:760;letter-spacing:0}[data-ui-drawer-panel=true].ds-compact-drawer .field input,[data-ui-drawer-panel=true].ds-compact-drawer .field select{min-height:var(--form-control-height-compact);border-color:var(--form-control-border);border-radius:9px;padding:0 10px;font-size:13px}[data-ui-drawer-panel=true].ds-compact-drawer .field textarea{min-height:76px;border-color:var(--form-control-border);border-radius:9px;padding:9px 10px;font-size:13px;line-height:1.55}[data-ui-drawer-panel=true].ds-compact-drawer .contract-note-grid{grid-template-columns:repeat(2,minmax(0,1fr))}[data-ui-drawer-panel=true].ds-compact-drawer .contract-unit-panel{display:grid;grid-gap:8px;gap:8px;border-radius:12px;padding:10px;box-shadow:none}[data-ui-drawer-panel=true].ds-compact-drawer .contract-unit-panel .system-toolbar{margin-bottom:0}[data-ui-drawer-panel=true].ds-compact-drawer .contract-unit-panel .system-toolbar h3{font-size:14px;line-height:1.3}[data-ui-drawer-panel=true].ds-compact-drawer .contract-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}[data-ui-drawer-panel=true].ds-compact-drawer .contract-metric{min-height:46px;border-radius:10px;padding:7px 9px}[data-ui-drawer-panel=true].ds-compact-drawer .contract-metric>span{font-size:11px}[data-ui-drawer-panel=true].ds-compact-drawer .contract-metric .metric-value{font-size:16px;line-height:1.1}[data-ui-drawer-panel=true].ds-compact-drawer .primary-button,[data-ui-drawer-panel=true].ds-compact-drawer .secondary-button{outline:0;min-height:32px;border-radius:8px;padding:0 12px;font-size:12px;box-shadow:none;transform:none}[data-ui-drawer-panel=true].ds-compact-drawer .primary-button:focus-visible,[data-ui-drawer-panel=true].ds-compact-drawer .primary-button:hover,[data-ui-drawer-panel=true].ds-compact-drawer .secondary-button:focus-visible,[data-ui-drawer-panel=true].ds-compact-drawer .secondary-button:hover{outline:0;box-shadow:none;transform:none}[data-ui-drawer-panel=true].ds-compact-drawer .contract-note-grid .field{min-width:0}[data-ui-drawer-panel=true].ds-compact-drawer .drawer-action-bar{gap:6px;margin:0;padding:8px 22px;background:color-mix(in srgb,var(--bg-muted) 78%,transparent)}[data-ui-drawer-panel=true].ds-compact-drawer .drawer-action-button{min-height:30px;border-radius:8px;padding:0 10px;font-size:12px}[data-ui-drawer-panel=true].ds-compact-drawer .drawer-action-button svg{width:14px;height:14px}[data-ui-drawer-panel=true].ds-compact-drawer .work-panel{margin:10px 22px 0;border-radius:10px;padding:12px;box-shadow:none}[data-ui-drawer-panel=true].ds-compact-drawer .timeline-list{gap:8px}[data-ui-drawer-panel=true].ds-compact-drawer .timeline-item{grid-template-columns:14px minmax(0,1fr);gap:8px}[data-ui-drawer-panel=true].ds-compact-drawer .timeline-content{gap:4px;border-radius:8px;padding:8px 10px;box-shadow:none}[data-ui-drawer-panel=true].ds-compact-drawer .timeline-content p,[data-ui-drawer-panel=true].ds-compact-drawer .timeline-head span,[data-ui-drawer-panel=true].ds-compact-drawer .timeline-head strong{font-size:12px}[data-ui-drawer-panel=true].ds-compact-drawer .form-check-row{min-height:30px;border-radius:8px;padding:0 8px}@media (max-width:760px){[data-ui-drawer-panel=true].ds-compact-drawer{--text-primary:#081a2c;--text-secondary:#40566c;--text-tertiary:#6b7f93;--text-disabled:#8293a7;--bg-card:#ffffff;--bg-muted:#e7f0f8;--surface-elevated:#ffffff;--surface-subtle:#f6f9fc;--surface-tint:#eef7ff;--border:#c7d7e6;--border-strong:#7898b4;--border-soft:#dce7f1;--form-label-color:#10263b;--form-control-bg:#ffffff;--form-control-bg-muted:#f5f8fc;--form-control-border:#9bb3ca;--form-control-border-hover:#0b4f7a;--form-control-focus-ring:0 0 0 4px rgba(247,201,72,0.24)}[data-ui-drawer-panel=true].ds-compact-drawer .contract-note-grid{grid-template-columns:1fr}[data-ui-drawer-panel=true].ds-compact-drawer .field,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field{gap:8px}[data-ui-drawer-panel=true].ds-compact-drawer .field label,[data-ui-drawer-panel=true].ds-compact-drawer .field>span,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field>span{color:var(--form-label-color,var(--text-secondary,var(--phoenix-color-text-muted)));font-size:15px;font-weight:820;line-height:1.45}[data-ui-drawer-panel=true].ds-compact-drawer .field input,[data-ui-drawer-panel=true].ds-compact-drawer .field select,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field input,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field select{min-height:50px;border-color:var(--form-control-border);border-radius:12px;background-color:#ffffff;color:#081a2c;padding:0 16px;font-size:16px;font-weight:600;line-height:1.45;box-shadow:inset 0 1px 0 rgba(255,255,255,.86),0 10px 22px rgba(11,31,51,.06)}[data-ui-drawer-panel=true].ds-compact-drawer .field textarea,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field textarea{min-height:126px;border-color:var(--form-control-border);border-radius:12px;background:#ffffff;color:#081a2c;padding:14px 16px;font-size:16px;font-weight:560;line-height:1.65;box-shadow:inset 0 1px 0 rgba(255,255,255,.86),0 10px 22px rgba(11,31,51,.06)}[data-ui-drawer-panel=true].ds-compact-drawer .field input::placeholder,[data-ui-drawer-panel=true].ds-compact-drawer .field textarea::placeholder,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field input::placeholder,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field textarea::placeholder{color:#8293a7}[data-ui-drawer-panel=true].ds-compact-drawer .field select,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field select{background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.5 7.5L10 12L14.5 7.5' stroke='%2340566c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:44px}[data-ui-drawer-panel=true].ds-compact-drawer .field option,[data-ui-drawer-panel=true].ds-compact-drawer .terminal-field option{background:#ffffff;color:#081a2c}[data-ui-drawer-panel=true].ds-compact-drawer .workorder-flow-note,[data-ui-drawer-panel=true].ds-compact-drawer .workorder-intent-card{border-color:#c7d7e6;background:#ffffff;color:#081a2c;box-shadow:0 8px 20px rgba(11,31,51,.06)}[data-ui-drawer-panel=true].ds-compact-drawer .workorder-flow-note strong,[data-ui-drawer-panel=true].ds-compact-drawer .workorder-intent-card strong{color:#081a2c}[data-ui-drawer-panel=true].ds-compact-drawer .workorder-flow-note span,[data-ui-drawer-panel=true].ds-compact-drawer .workorder-intent-card small{color:#40566c}[data-ui-drawer-panel=true].ds-compact-drawer .workorder-intent-card-active{border-color:#d89b13;background:linear-gradient(180deg,rgba(247,201,72,.16),#ffffff 78%);box-shadow:inset 0 0 0 1px rgba(216,155,19,.5),0 10px 24px rgba(216,155,19,.14)}[data-ui-drawer-panel=true].ds-compact-drawer .operation-photo-upload-card{border-color:#d89b13;background:linear-gradient(135deg,rgba(247,201,72,.16),rgba(11,79,122,.06) 64%),#ffffff;color:#081a2c}[data-ui-drawer-panel=true].ds-compact-drawer .operation-photo-upload-copy strong{color:#081a2c}[data-ui-drawer-panel=true].ds-compact-drawer .operation-photo-upload-copy small{color:#40566c}[data-ui-drawer-panel=true].ds-compact-drawer .primary-button,[data-ui-drawer-panel=true].ds-compact-drawer .secondary-button{min-height:48px;border-radius:12px;padding:0 16px;font-size:16px;font-weight:780}[data-ui-drawer-panel=true].ds-compact-drawer .status-pill{min-height:30px;padding:4px 12px;font-size:14px}}.form-field{display:grid;grid-gap:7px;gap:7px}.form-field,.form-field>span{min-width:0;color:var(--form-label-color);font-size:var(--form-label-size);font-weight:720;line-height:1.35}.form-field>span{display:block}.form-field input,.form-field select,.form-field textarea{width:100%;min-width:0}.ds-field-error,.ds-field-help,.field-error,.field-help{display:block;margin:0;font-size:var(--form-helper-size);font-weight:620;line-height:1.4}.ds-field-help,.field-help{color:var(--text-tertiary,var(--text-secondary))}.ds-field-error,.field-error{color:var(--status-danger)}.status-pill{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;min-height:22px;border-radius:var(--radius-xl);padding:2px 10px;background:var(--bg-muted);color:var(--text-secondary);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);line-height:1.4;white-space:nowrap}.status-success{background:color-mix(in srgb,var(--status-success) 12%,var(--phoenix-color-surface));color:var(--status-success)}.status-warning{background:color-mix(in srgb,var(--status-warning) 16%,var(--phoenix-color-surface));color:color-mix(in srgb,var(--status-warning) 82%,black)}.status-danger{background:color-mix(in srgb,var(--status-danger) 12%,var(--phoenix-color-surface));color:var(--status-danger)}.status-info,.status-primary{background:color-mix(in srgb,var(--phoenix-color-primary) 12%,var(--phoenix-color-surface));color:var(--phoenix-color-primary)}.status-muted{background:var(--bg-muted);color:var(--text-secondary)}.attachment-table{width:100%;border-collapse:collapse}.file-preview-backdrop{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:28px;background:color-mix(in srgb,var(--text-primary) 54%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.file-preview-modal{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1120px,100%);max-height:calc(100vh - 56px);overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:18px;background:var(--bg-card);box-shadow:var(--shadow-lg)}.file-preview-header{display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:14px 16px}.file-preview-header strong{min-width:0;overflow:hidden;color:var(--text-primary);font-size:16px;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.file-preview-header button{min-width:72px}.file-preview-body{display:grid;min-height:280px;overflow:auto;padding:16px;background:color-mix(in srgb,var(--bg-muted) 70%,var(--bg-card))}.file-preview-image{align-self:center;justify-self:center;max-width:100%;max-height:calc(100vh - 160px);border-radius:var(--radius-sm);object-fit:contain;box-shadow:var(--shadow-md)}.file-preview-frame{width:100%;min-height:min(720px,calc(100vh - 160px));border:0;border-radius:var(--radius-sm);background:var(--bg-card)}.file-preview-video{align-self:center;justify-self:center;width:min(100%,960px);max-height:calc(100vh - 160px);border-radius:var(--radius-sm)}.print-area{display:none}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media print{body *{visibility:hidden}.print-area{position:absolute;inset:0;display:block!important}.print-area,.print-area *{visibility:visible}.no-print{display:none!important}@page{margin:1.5cm 1cm}.print-area table{width:100%;border-collapse:collapse;font-size:11px}.print-area td,.print-area th{border:1px solid #999;padding:5px 8px}.print-area th{background:#f0f0f0!important;font-weight:700;print-color-adjust:exact}.print-area tr{page-break-inside:avoid}}@media (max-width:1100px){.signin-page{grid-template-columns:minmax(0,1fr);gap:var(--phoenix-space-6);align-items:start;overflow-x:hidden;overflow-y:auto;padding:var(--phoenix-space-8) var(--phoenix-space-5);overscroll-behavior-y:contain}.signin-page:before{background:radial-gradient(circle at 20% 12%,color-mix(in srgb,var(--phoenix-color-primary) 38%,transparent),transparent 24rem),linear-gradient(180deg,color-mix(in srgb,var(--phoenix-sidebar-bg) 88%,transparent) 0,color-mix(in srgb,var(--phoenix-sidebar-bg) 76%,transparent) 100%)}.signin-page:after{width:100%}.signin-card,.signin-identity{max-width:620px;margin-inline:auto}.signin-copy h1{font-size:42px}.permission-workbench{grid-template-columns:minmax(0,1fr)}.permission-tree-scroll{max-height:520px;min-height:320px}.permission-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:980px){.ds-config-workbench.role-config-layout{grid-template-columns:1fr;min-height:0}.ds-config-workbench .role-tree-panel{max-height:none;min-height:0;overflow:visible;padding-right:0}}@media (max-width:768px){:root{--sidebar-width:0px}}@media (max-width:720px){.dashboard-shell,.dashboard-shell.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.dashboard-main{grid-column:1/-1;grid-row:2;width:100%;min-width:0}.app-sidebar{display:none}.page-container{padding:var(--phoenix-space-4)}.leasing-leads-page .page-header,.page-header{grid-template-columns:1fr}.page-header .page-actions{justify-content:flex-start}.asset-stat-filter-form,.asset-stat-filter-grid,.asset-stat-summary,.funnel-filter-grid,.funnel-kpi-grid,.funnel-main-grid,.funnel-rate-strip,.funnel-table-grid,.leasing-leads-page .filter-bar .system-grid-three,.system-grid-three,.unit-board-filter-form,.unit-board-filter-grid{grid-template-columns:1fr}.funnel-rate-card{border-right:0;border-bottom:1px solid var(--border)}.funnel-rate-card:last-child{border-bottom:0}.funnel-stage-row{grid-template-columns:76px 48px minmax(0,1fr)}.funnel-stage-row>em{grid-column:1/-1}.detail-grid,.drawer-form-grid,.iot-detail-grid{grid-template-columns:1fr}.lead-table-card table td:last-child,.lead-table-card table th:last-child{position:static;min-width:320px;box-shadow:none}.app-shell{grid-template-columns:1fr}.sidebar{display:none}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-distribution-row{grid-template-columns:minmax(0,1fr)}.asset-distribution-row>strong{text-align:left}.login-page{grid-template-columns:1fr;place-items:center}.login-hero{display:none}.permissions-page .page-header{grid-template-columns:1fr}.permissions-page .page-header .system-actions{justify-content:flex-start}.permission-detail-hero,.permission-meta-grid,.permission-summary-strip{grid-template-columns:1fr}.signin-page{min-height:100svh;min-height:100dvh;align-content:center;gap:var(--phoenix-space-5);padding:calc(var(--phoenix-space-5) + env(safe-area-inset-top)) var(--phoenix-space-4) calc(var(--phoenix-space-6) + env(safe-area-inset-bottom));touch-action:pan-y}.signin-background{position:fixed;transform:none}.signin-identity{gap:var(--phoenix-space-5);width:min(100%,440px)}.signin-brand-row{width:-moz-fit-content;width:fit-content}.signin-brand-row img{width:88px}.signin-copy h1{font-size:36px}.signin-copy p{font-size:15px}.signin-scope-grid{grid-template-columns:1fr}.signin-card{width:min(100%,440px);padding:24px;border-radius:22px}.signin-card-header{display:block}.signin-card-header img{display:none}.signin-card-header h2{font-size:22px}.signin-code-button.ant-btn,.signin-form .ant-input,.signin-form .ant-input-affix-wrapper,.signin-form .ant-input-affix-wrapper>input.ant-input,.signin-submit.ant-btn{font-size:16px}}@media (max-width:720px) and (max-height:740px){.signin-page{gap:var(--phoenix-space-4);padding:calc(var(--phoenix-space-4) + env(safe-area-inset-top)) var(--phoenix-space-4) calc(var(--phoenix-space-5) + env(safe-area-inset-bottom))}.signin-identity{gap:var(--phoenix-space-3)}.signin-brand-row img{width:76px}.signin-copy{gap:var(--phoenix-space-3)}.signin-copy h1{font-size:30px;line-height:1.08}.signin-capabilities{gap:var(--phoenix-space-2);margin-top:0}.signin-capabilities span{min-height:28px;padding:0 10px;font-size:12px}.signin-card{padding:20px}.signin-card-header{margin-bottom:var(--phoenix-space-4)}.signin-card-header h2{font-size:20px}.signin-card-header p{font-size:13px}.signin-form .ant-form-item{margin-bottom:12px}.signin-form .ant-form-item-control-input,.signin-form .ant-input,.signin-form .ant-input-affix-wrapper{min-height:50px}.signin-submit.ant-btn{height:50px}}@media (max-width:720px){.signin-page{grid-template-columns:1fr;align-content:start;justify-items:center;gap:20px;overflow-y:auto;padding:calc(22px + env(safe-area-inset-top)) 22px calc(28px + env(safe-area-inset-bottom));background:#06263f}.signin-page:before{background:linear-gradient(180deg,rgba(6,38,63,.48),rgba(7,58,94,.74) 38%,rgba(5,29,49,.92)),radial-gradient(circle at 18% 8%,rgba(247,201,72,.28),transparent 12rem),radial-gradient(circle at 86% 16%,rgba(56,189,248,.2),transparent 13rem)}.signin-page:after{height:3px;background:linear-gradient(90deg,#8fd3ff,#ffffff 35%,#f7c948 78%,#d89b13)}.signin-background{opacity:.56;filter:saturate(.98) contrast(1.02) brightness(.86);transform:none}.signin-identity{width:min(100%,480px);gap:13px;justify-items:start;padding-top:4px}.signin-brand-row img{width:122px;filter:drop-shadow(0 14px 26px rgba(6,38,63,.42))}.signin-copy{gap:8px}.signin-copy h1{max-width:100%;color:#f8fafc;font-size:32px;line-height:1.12;text-shadow:0 10px 28px rgba(6,38,63,.42)}.signin-copy p{color:rgba(248,250,252,.78);font-size:14px;line-height:1.55}.signin-capabilities{display:none}.signin-card{width:min(100%,480px);border:1px solid rgba(143,211,255,.24);border-radius:26px;padding:26px 24px 24px;background:linear-gradient(180deg,rgba(10,56,88,.96),rgba(6,38,63,.96)),#06263f;box-shadow:0 24px 60px rgba(6,38,63,.44);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.signin-card-header{margin-bottom:18px}.signin-card-eyebrow{color:#f7c948;font-size:12px;letter-spacing:.16em}.signin-card-header h2{margin-top:6px;color:#f8fafc;font-size:22px;line-height:1.18}.signin-card-header p{margin-top:8px;color:rgba(248,250,252,.7);font-size:15px}.signin-form .ant-form-item{margin-bottom:18px}.signin-form .ant-form-item-label{padding-bottom:8px}.signin-form .ant-form-item-label>label{color:#f8fafc;font-size:15px;font-weight:820}.signin-form .ant-input,.signin-form .ant-input-affix-wrapper{min-height:56px;border:1.5px solid rgba(143,211,255,.38);border-radius:16px;background:linear-gradient(180deg,rgba(8,45,73,.92),rgba(4,29,51,.94)),#041d33;color:#f8fafc;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 24px rgba(2,18,32,.18)}.signin-form .ant-input-affix-wrapper{padding:0 15px}.signin-form .ant-input-affix-wrapper>input.ant-input{min-height:0;border:0;border-radius:0;box-shadow:none!important}.signin-form .ant-input-affix-wrapper input.ant-input,.signin-form .ant-input-affix-wrapper>input.ant-input,.signin-form input.ant-input{background:transparent!important;background-color:transparent!important;color:#f8fafc!important;caret-color:#f7c948;-webkit-text-fill-color:#f8fafc}.signin-form .ant-input-affix-wrapper input.ant-input:-webkit-autofill,.signin-form .ant-input-affix-wrapper input.ant-input:-webkit-autofill:focus,.signin-form .ant-input-affix-wrapper input.ant-input:-webkit-autofill:hover,.signin-form input.ant-input:-webkit-autofill,.signin-form input.ant-input:-webkit-autofill:focus,.signin-form input.ant-input:-webkit-autofill:hover{border-radius:10px;background-color:transparent!important;box-shadow:inset 0 0 0 1000px #05223a!important;color:#f8fafc!important;-webkit-transition:background-color 9999s ease-out;transition:background-color 9999s ease-out;-webkit-text-fill-color:#f8fafc!important}.signin-form .ant-input-password-icon,.signin-form .ant-input-prefix,.signin-form .ant-input-suffix{color:rgba(223,239,252,.82)}.signin-form .ant-input-affix-wrapper>input.ant-input::placeholder,.signin-form .ant-input::placeholder{color:rgba(223,239,252,.56)}.signin-form .ant-input-affix-wrapper-focused,.signin-form .ant-input-affix-wrapper:hover,.signin-form .ant-input:focus,.signin-form .ant-input:hover{border-color:#f7c948;background:linear-gradient(180deg,rgba(10,56,88,.98),rgba(5,34,58,.98)),#05223a;box-shadow:0 0 0 4px rgba(247,201,72,.2),0 16px 30px rgba(2,18,32,.24)}.signin-submit.ant-btn{height:56px;margin-top:2px;border-radius:16px;background:linear-gradient(135deg,#ffe892,#f7c948 45%,#d89b13);color:#06263f;box-shadow:0 18px 34px rgba(247,201,72,.28);font-size:16px;font-weight:860}.signin-submit.ant-btn:focus,.signin-submit.ant-btn:hover{background:linear-gradient(135deg,#fff1b8,#f7c948 48%,#bd7c0d);color:#06263f}}.qr-code-card{align-items:center;display:grid;grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4);justify-items:center;padding:var(--phoenix-space-6)}.qr-code-image{background:var(--phoenix-color-surface);border:1px solid var(--phoenix-color-border);border-radius:var(--phoenix-radius-md);box-shadow:var(--phoenix-shadow-sm);display:block;height:240px;padding:var(--phoenix-space-3);width:240px}.qr-code-value{background:var(--phoenix-color-surface-muted);border:1px solid var(--phoenix-color-border);border-radius:var(--phoenix-radius-sm);color:var(--phoenix-color-text);max-width:min(100%,420px);overflow-wrap:anywhere;padding:var(--phoenix-space-3) var(--phoenix-space-4);text-align:center}.video-screen-page{background:radial-gradient(circle at top left,color-mix(in srgb,var(--phoenix-color-primary) 18%,transparent),transparent 32%),radial-gradient(circle at top right,color-mix(in srgb,var(--phoenix-color-accent) 14%,transparent),transparent 30%),var(--phoenix-color-bg);color:var(--phoenix-color-text);display:grid;grid-gap:var(--phoenix-space-5);gap:var(--phoenix-space-5);min-height:100vh;padding:var(--phoenix-space-6)}.video-screen-card,.video-screen-footer,.video-screen-hero,.video-screen-kpi{background:color-mix(in srgb,var(--phoenix-color-surface) 92%,transparent);border:1px solid var(--phoenix-color-border);border-radius:var(--phoenix-radius-lg);box-shadow:var(--phoenix-shadow-sm)}.video-screen-hero{align-items:center;display:flex;justify-content:space-between;min-height:112px;padding:var(--phoenix-space-5)}.video-screen-hero p,.video-screen-hero span{color:var(--phoenix-color-text-muted);font-size:var(--font-size-caption);margin:0}.video-screen-hero h1{font-size:28px;font-weight:var(--font-weight-bold);line-height:1.15;margin:var(--phoenix-space-2) 0}.video-screen-kpis{display:grid;grid-gap:var(--phoenix-space-4);gap:var(--phoenix-space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.video-screen-kpi{align-content:start;display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3);min-height:132px;padding:var(--phoenix-space-5)}.video-screen-kpi>span{align-items:center;background:color-mix(in srgb,var(--phoenix-color-primary) 12%,transparent);border-radius:var(--phoenix-radius-md);color:var(--phoenix-color-primary);display:inline-flex;height:36px;justify-content:center;width:36px}.video-screen-kpi p{color:var(--phoenix-color-text-muted);font-size:var(--font-size-caption);margin:0}.video-screen-kpi strong{font-size:28px;font-weight:var(--font-weight-bold);line-height:1}.video-screen-grid{display:grid;grid-gap:var(--phoenix-space-5);gap:var(--phoenix-space-5);grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.video-screen-card{min-width:0;padding:var(--phoenix-space-5)}.video-screen-card h2{font-size:var(--font-size-panel-title);font-weight:var(--font-weight-semibold);margin:0 0 var(--phoenix-space-4)}.video-screen-card-wide{min-height:360px}.video-screen-bar-row,.video-screen-bars{display:grid;grid-gap:var(--phoenix-space-3);gap:var(--phoenix-space-3)}.video-screen-bar-row{align-items:center;grid-template-columns:minmax(90px,140px) minmax(0,1fr) minmax(48px,auto)}.video-screen-bar-row span{color:var(--phoenix-color-text-muted);font-size:var(--font-size-caption);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-screen-bar-row strong{font-size:var(--font-size-caption);justify-self:end}.video-screen-bar-row meter{accent-color:var(--phoenix-color-primary);height:12px;width:100%}.video-screen-footer{align-items:center;display:flex;flex-wrap:wrap;gap:var(--phoenix-space-4);justify-content:flex-end;padding:var(--phoenix-space-4) var(--phoenix-space-5)}.video-screen-footer span{color:var(--phoenix-color-text-muted);font-size:var(--font-size-caption)}@media (max-width:640px){.asset-stat-summary,.dashboard-grid{grid-template-columns:1fr}.energy-dashboard-page .asset-stat-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.app-header{align-items:flex-start;flex-direction:column;gap:var(--phoenix-space-3);padding:var(--phoenix-space-4)}.header-actions,.user-menu{flex-wrap:wrap}.header{align-items:flex-start;flex-direction:column;gap:var(--phoenix-space-3)}.content,.header,.video-screen-page{padding:var(--phoenix-space-4)}.video-screen-hero{align-items:flex-start;flex-direction:column;gap:var(--phoenix-space-4)}.video-screen-grid{grid-template-columns:1fr}}.dashboard-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-template-rows:var(--header-height) minmax(0,1fr);height:100dvh;min-height:100dvh;overflow:hidden;background:linear-gradient(90deg,var(--bg-sidebar) 0,var(--bg-sidebar) var(--sidebar-width),var(--bg-page) var(--sidebar-width),var(--bg-page) 100%)}.dashboard-shell.sidebar-collapsed,:root[data-sidebar-collapsed=true] .dashboard-shell{grid-template-columns:var(--sidebar-collapsed-width) minmax(0,1fr);background:linear-gradient(90deg,var(--bg-sidebar) 0,var(--bg-sidebar) var(--sidebar-collapsed-width),var(--bg-page) var(--sidebar-collapsed-width),var(--bg-page) 100%)}.dashboard-main{grid-column:2;display:flex;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;background:radial-gradient(circle at 12% -8%,color-mix(in srgb,var(--color-primary) 8%,transparent),transparent 28rem),linear-gradient(180deg,var(--surface-subtle) 0,var(--bg-page) 320px)}.app-sidebar,.dashboard-main{grid-row:2;height:calc(100dvh - var(--header-height))}.app-sidebar{grid-column:1;position:relative;top:auto;align-self:start;max-height:calc(100dvh - var(--header-height));padding:60px 12px 13px;background:radial-gradient(circle at 28% 0,color-mix(in srgb,var(--color-primary) 24%,transparent),transparent 16rem),linear-gradient(180deg,color-mix(in srgb,var(--bg-sidebar) 86%,var(--color-primary)) 0,var(--bg-sidebar) 62%),var(--bg-sidebar)}.sidebar-brand-row{display:none;grid-template-columns:minmax(0,1fr);justify-items:center;min-height:96px;margin-bottom:10px;padding:6px 0 12px;border-bottom:1px solid color-mix(in srgb,var(--phoenix-sidebar-text) 10%,transparent)}.sidebar-brand-row .brand{display:flex;align-items:center;justify-content:center;min-height:82px;width:100%}.brand-title-logo{display:block;width:min(126px,82%);height:82px;object-fit:contain;filter:drop-shadow(0 8px 18px color-mix(in srgb,var(--bg-sidebar) 46%,transparent))}.app-sidebar .sidebar-collapse-button{width:34px;height:34px;border-radius:12px}.sidebar-menu{gap:1px;padding-bottom:14px}.menu-group{gap:1px}.app-sidebar .menu-group-title{min-height:32px;border-radius:10px;padding:0 9px;color:color-mix(in srgb,var(--phoenix-sidebar-text) 68%,transparent);font-size:13px}.app-sidebar .menu-group-icon{color:color-mix(in srgb,var(--phoenix-sidebar-text) 72%,transparent);stroke-width:2.1}.app-sidebar .menu-group-open .menu-group-title,.app-sidebar .menu-group-title.active,.app-sidebar .menu-group-title:hover{background:color-mix(in srgb,var(--phoenix-sidebar-text) 10%,transparent);color:var(--phoenix-sidebar-text)}.app-sidebar .menu-group-open .menu-group-title,.app-sidebar .menu-group-title.active{box-shadow:inset 3px 0 0 var(--color-accent)}.menu-group-items{gap:1px;padding:2px 0 4px 14px}.nav-link{position:relative;display:flex;align-items:center;min-height:27px;border-radius:9px;padding:0 9px 0 14px;color:color-mix(in srgb,var(--phoenix-sidebar-text) 60%,transparent);font-size:12px;font-weight:620;transition:var(--phoenix-transition)}.nav-link:before{position:absolute;left:5px;width:4px;height:4px;border-radius:999px;background:currentColor;content:"";opacity:.48}.nav-link.active,.nav-link:hover{background:color-mix(in srgb,var(--phoenix-sidebar-text) 9%,transparent);color:var(--phoenix-sidebar-text)}.nav-link.active:before{background:var(--color-accent);opacity:1}.app-header{grid-column:1/-1;grid-row:1;justify-content:space-between;position:relative;top:0;z-index:18;min-height:76px;padding:0 22px 0 0;border-bottom:1px solid color-mix(in srgb,var(--phoenix-sidebar-text) 10%,transparent);background:radial-gradient(circle at 18% 0,color-mix(in srgb,var(--color-primary) 22%,transparent),transparent 24rem),linear-gradient(90deg,color-mix(in srgb,var(--bg-sidebar) 94%,var(--color-primary)) 0,color-mix(in srgb,var(--bg-sidebar) 84%,var(--color-primary)) 58%,var(--bg-sidebar) 100%);color:var(--phoenix-sidebar-text);box-shadow:0 14px 34px color-mix(in srgb,var(--bg-sidebar) 18%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-header,.header-leading{display:flex;align-items:center;gap:18px}.header-leading{min-width:0;padding-left:6px;flex:1 1 auto}.header-brand-lockup{display:inline-flex;align-items:center;flex:0 0 auto;gap:7px;min-width:0}.header-brand-symbol{display:block;width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 10px 20px color-mix(in srgb,var(--color-primary) 22%,transparent))}.header-brand-lockup strong{color:var(--phoenix-sidebar-text);font-size:18px;font-weight:750;letter-spacing:0;line-height:1;white-space:nowrap}.header-sidebar-toggle.ant-btn{position:fixed;top:calc(var(--header-height) + 8px);left:0;z-index:19;width:var(--sidebar-collapsed-width);min-width:var(--sidebar-collapsed-width);height:44px;border:0;border-radius:0;background:transparent;color:color-mix(in srgb,var(--phoenix-sidebar-text) 30%,transparent);box-shadow:none;opacity:.3}.header-sidebar-toggle.ant-btn.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover,.header-sidebar-toggle.ant-btn:focus-visible,.header-sidebar-toggle.ant-btn:hover{background:color-mix(in srgb,var(--phoenix-sidebar-text) 5%,transparent);color:color-mix(in srgb,var(--phoenix-sidebar-text) 52%,transparent);opacity:.45}.header-context-line{flex:1 1 auto;gap:14px;margin-left:12px;overflow:hidden;transform:translateY(1px)}.header-context-line,.header-context-line>span{display:inline-flex;align-items:center;min-width:0;white-space:nowrap}.header-context-line>span{flex:0 0 auto;gap:5px;color:color-mix(in srgb,var(--phoenix-sidebar-text) 68%,transparent);font-size:13px;line-height:1}.header-breadcrumb-slot{display:flex;flex:1 1 auto;min-width:0;overflow:hidden}.header-actions{gap:10px}.header-actions .header-icon-button.ant-btn,.header-actions .header-icon-link{width:40px;height:40px;border:1px solid color-mix(in srgb,var(--phoenix-sidebar-text) 16%,transparent);border-radius:13px;background:color-mix(in srgb,var(--phoenix-sidebar-text) 8%,transparent);color:color-mix(in srgb,var(--phoenix-sidebar-text) 78%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--phoenix-sidebar-text) 10%,transparent)}.header-actions .header-icon-button.ant-btn:hover,.header-actions .header-icon-link:hover{border-color:color-mix(in srgb,var(--color-accent) 44%,transparent);background:color-mix(in srgb,var(--color-accent) 14%,transparent);color:var(--phoenix-sidebar-text)}.user-menu{min-height:42px;gap:10px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.user-avatar{width:32px;height:32px;color:var(--phoenix-sidebar-text);background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 76%,var(--color-accent)),color-mix(in srgb,var(--color-accent) 84%,var(--color-primary)));box-shadow:0 8px 18px color-mix(in srgb,var(--color-primary) 22%,transparent)}.user-menu-name{max-width:156px;overflow:hidden;color:color-mix(in srgb,var(--phoenix-sidebar-text) 88%,transparent);font-size:13px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.app-header .user-menu .user-logout-button{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:58px;height:34px;gap:5px;border:1px solid color-mix(in srgb,var(--phoenix-sidebar-text) 18%,transparent);border-radius:12px;padding:0 11px;background:color-mix(in srgb,var(--phoenix-sidebar-text) 7%,transparent);color:color-mix(in srgb,var(--phoenix-sidebar-text) 76%,transparent);font-size:12px;font-weight:700;box-shadow:none}.app-header .user-menu .user-logout-button svg{width:15px;height:15px;stroke-width:2.3}.app-header .user-menu .user-logout-button:hover{border-color:color-mix(in srgb,var(--status-danger) 34%,transparent);background:color-mix(in srgb,var(--status-danger) 18%,transparent);color:var(--phoenix-sidebar-text);box-shadow:0 8px 20px color-mix(in srgb,var(--status-danger) 10%,transparent);transform:none}.breadcrumb{position:static;top:auto;z-index:auto;min-height:38px;border-bottom:1px solid var(--border-soft);background:color-mix(in srgb,var(--bg-card) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.breadcrumb-inline{min-height:auto;border-bottom:0;padding:0;background:transparent;color:color-mix(in srgb,var(--phoenix-sidebar-text) 56%,transparent);font-size:11px;font-weight:650;letter-spacing:0;-webkit-backdrop-filter:none;backdrop-filter:none}.breadcrumb-inline strong{color:color-mix(in srgb,var(--phoenix-sidebar-text) 76%,transparent);font-weight:720}.content,.page-container{gap:18px;padding:22px}.filter-bar,.page-content,.page-header{border-color:var(--border);border-radius:14px;background:var(--bg-card);box-shadow:var(--shadow-card)}.page-header{min-height:76px;padding:18px 20px}.page-content{padding:18px}.filter-bar{padding:16px;background:color-mix(in srgb,var(--bg-card) 92%,var(--surface-tint))}.pagination-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.inline-action-button,.pagination-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:1px solid var(--border-soft);border-radius:10px;padding:0 12px;background:var(--bg-card);color:var(--text-primary);font-size:12px;font-weight:720;line-height:1;text-decoration:none;white-space:nowrap;box-shadow:none;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}.inline-action-button:focus-visible,.inline-action-button:hover,.pagination-button:focus-visible:not(:disabled),.pagination-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 36%,var(--border-soft));background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-card));color:var(--color-primary);box-shadow:0 10px 22px color-mix(in srgb,var(--color-primary) 9%,transparent)}.pagination-button:disabled{opacity:.46;cursor:not-allowed}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{min-height:var(--form-control-height);border-color:var(--form-control-border);border-radius:var(--form-control-radius);background-color:var(--form-control-bg)}textarea{min-height:96px;padding:10px var(--form-control-padding-x)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select{padding:0 var(--form-control-padding-x)}.native-table,.page-content table,.system-grid table,.system-split table,.work-panel table{min-width:920px}.native-table th,.page-content th,.system-grid th,.system-split th,.work-panel th{height:42px;background:var(--surface-subtle);color:var(--text-secondary);font-size:12px}.native-table td,.page-content td,.system-grid td,.system-split td,.work-panel td{height:48px;border-bottom-color:var(--border-soft)}.ds-cell-stack{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;max-width:100%;white-space:normal}.ds-cell-title{color:var(--text-primary);font-weight:760}.ds-cell-meta,.ds-cell-title{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-cell-meta{color:var(--text-muted);font-size:12px;font-weight:600}.ds-table-card table td:last-child,.ds-table-card table th:last-child{position:-webkit-sticky;position:sticky;right:0;width:148px;min-width:148px;background:var(--bg-card);box-shadow:-12px 0 20px color-mix(in srgb,var(--bg-app) 70%,transparent);text-align:right;z-index:1}.ds-table-card table th:last-child{background:var(--surface-subtle);z-index:2}.ds-table-card table td:last-child{overflow:visible}.ds-table-card table.units-fit-table{min-width:100%;table-layout:fixed}.units-fit-table .units-col-info{width:23%}.units-fit-table .units-col-location{width:18%}.units-fit-table .units-col-purpose{width:9%}.units-fit-table .units-col-area{width:13%}.units-fit-table .units-col-status{width:12%}.units-fit-table .units-col-lease{width:14%}.units-fit-table .units-col-actions{width:148px}.ds-table-card table.units-fit-table td.units-col-actions,.ds-table-card table.units-fit-table th.units-col-actions{position:static;right:auto;min-width:148px;width:148px;background:inherit;box-shadow:none;text-align:right}@media (max-width:1280px){.units-fit-table .units-col-area,.units-fit-table .units-col-lease,.units-fit-table .units-col-purpose{display:none}.units-fit-table .units-col-info{width:auto}.units-fit-table .units-col-location{width:150px}.units-fit-table .units-col-status{width:92px}.units-fit-table .units-col-actions{width:214px}}@media (max-width:760px){.units-fit-table .units-col-location{display:none}.units-fit-table .units-col-info{width:auto}.units-fit-table .units-col-status{width:92px}.units-fit-table .units-col-actions{width:214px}}.dashboard-home{gap:18px;align-content:start}.dashboard-hero-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);grid-gap:22px;gap:22px;align-items:stretch;min-height:260px;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:clamp(24px,4vw,38px);background:radial-gradient(circle at 82% 16%,rgba(247,201,72,.2),transparent 30%),radial-gradient(circle at 12% 0,rgba(143,211,255,.15),transparent 30%),linear-gradient(135deg,#041827,#0b4f7a 58%,#06263f);color:var(--text-on-dark);box-shadow:var(--shadow-panel)}.dashboard-hero-copy{display:grid;align-content:center;grid-gap:14px;gap:14px}.dashboard-eyebrow,.section-eyebrow{color:color-mix(in srgb,var(--color-accent) 78%,var(--text-on-dark));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.section-eyebrow{color:var(--color-primary)}.dashboard-hero-copy h1{max-width:760px;margin:0;font-size:clamp(30px,4vw,52px);font-weight:820;line-height:1.08}.dashboard-hero-copy p{max-width:680px;margin:0;color:color-mix(in srgb,var(--text-on-dark) 76%,transparent);font-size:15px;line-height:1.8}.dashboard-hero-actions{justify-content:flex-start;gap:10px;margin-top:8px}.dashboard-hero-card{display:grid;align-content:end;grid-gap:12px;gap:12px;border:1px solid color-mix(in srgb,var(--text-on-dark) 14%,transparent);border-radius:16px;padding:20px;background:color-mix(in srgb,var(--text-on-dark) 10%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dashboard-hero-card strong{font-size:18px}.dashboard-hero-card span{color:color-mix(in srgb,var(--text-on-dark) 76%,transparent);line-height:1.7}.dashboard-metric-card{display:grid;align-content:space-between;grid-gap:8px;gap:8px;min-width:0}.dashboard-metric-card strong{display:block;overflow-wrap:anywhere;line-height:1.08}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);grid-gap:18px;gap:18px;align-items:start}.content-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.content-header-row h2,.dashboard-workstream-panel h2{margin:3px 0 0;font-size:18px;line-height:1.3}.dashboard-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-entry-card{grid-template-columns:42px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"icon copy" "icon action";min-height:150px;color:var(--text-primary);text-decoration:none}.dashboard-entry-icon{grid-area:icon}.dashboard-entry-copy{grid-area:copy}.dashboard-entry-copy strong{white-space:normal}.dashboard-entry-card em{grid-area:action;display:inline-flex;align-items:center;gap:5px;width:-moz-fit-content;width:fit-content;color:var(--color-primary);font-size:12px;font-style:normal;font-weight:760}.dashboard-workstream-panel{display:grid;grid-gap:12px;gap:12px}.dashboard-workstream-panel ul{display:grid;grid-gap:10px;gap:10px}.dashboard-workstream-panel li{position:relative;padding-left:18px;color:var(--text-secondary);line-height:1.65}.dashboard-workstream-panel li:before{position:absolute;top:.72em;left:0;width:7px;height:7px;border-radius:999px;background:var(--color-accent);content:""}@media (max-width:1080px){.dashboard-hero-panel,.dashboard-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-hero-copy{grid-column:1/-1}.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){:root{--header-height:92px}.dashboard-main{background:var(--bg-page)}.app-header{align-items:center;flex-direction:row;min-height:auto;gap:10px;padding:10px 14px 10px 0}.header-leading{gap:10px}.header-sidebar-toggle.ant-btn{height:44px}.header-brand-symbol{width:32px;height:32px}.header-brand-lockup strong{font-size:16px}.header-context-line{display:none}.breadcrumb-inline{padding:0}.content,.page-container{gap:14px;padding:14px}.filter-bar,.page-content,.page-header{border-radius:14px;padding:14px}.dashboard-home{gap:14px}.dashboard-entry-grid,.dashboard-hero-panel,.dashboard-main-grid{grid-template-columns:1fr}.dashboard-hero-panel{min-height:auto;gap:16px;border-radius:16px;padding:18px}.dashboard-hero-copy h1{font-size:28px;line-height:1.16;overflow-wrap:anywhere}.dashboard-hero-card span,.dashboard-hero-copy p{font-size:13px;line-height:1.65}.dashboard-hero-actions,.dashboard-hero-actions>*{width:100%}.dashboard-hero-card{align-content:start;border-radius:14px;padding:14px}.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-metric-card{min-height:104px;border-radius:14px;padding:14px}.dashboard-metric-card strong{font-size:22px}.dashboard-metric-card small{line-height:1.42}.dashboard-entry-grid{padding:10px}.dashboard-entry-card{grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:"icon copy" "icon action";min-height:112px;gap:10px 12px;padding:12px}.dashboard-entry-icon{width:40px;height:40px;border-radius:12px}.dashboard-entry-copy small{-webkit-line-clamp:3}.dashboard-workstream-panel{gap:10px}.primary-button,.secondary-button{width:100%}}.field{display:grid;grid-gap:7px;gap:7px}.field label,.field>span{color:var(--form-label-color);font-size:var(--form-label-size);font-weight:780;line-height:1.42}.form-stack{display:grid;grid-gap:16px;gap:16px}.panel-title{margin:0;color:var(--text-primary);font-size:17px;font-weight:780;line-height:1.35}.muted-text{color:var(--text-secondary);font-size:12px;line-height:1.5}.table-scroll{width:100%;overflow-x:auto}.task-item{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:4px 24px 8px 16px;color:var(--text-secondary);font-size:13px}.task-item>span:last-child{display:inline-flex;gap:8px}.table-scroll>.system-toolbar:last-child,.table-scroll>.task-item:last-child{margin-top:18px;padding:10px 34px 20px 18px;border:0;background:transparent;box-shadow:none}.table-scroll>.system-toolbar:last-child .page-actions,.table-scroll>.task-item:last-child>span:last-child{padding-right:6px}.ds-config-workbench{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:18px;align-items:stretch}.ds-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-2px 0 14px;padding-bottom:12px;border-bottom:1px solid var(--border-soft)}.ds-panel-heading .panel-title,.role-detail-header .panel-title{display:inline-flex;align-items:center;gap:8px}.ds-subtle-count{display:inline-flex;align-items:center;min-height:24px;border-radius:var(--radius-xl);padding:2px 10px;background:var(--surface-subtle);color:var(--text-secondary);font-size:12px;font-weight:700;white-space:nowrap}.role-config-layout{min-height:min(720px,calc(100vh - 260px))}.role-panel{min-width:0;overflow:hidden}.role-detail-card>.detail-stack,.role-panel>.detail-stack{gap:16px}.role-binding-scroll,.role-tree-panel{min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-width:thin}.role-tree-panel{display:grid;align-content:start;grid-gap:10px;gap:10px;max-height:min(68vh,720px)}.role-binding-scroll{display:grid;grid-gap:10px;gap:10px;max-height:min(62vh,680px);padding-bottom:4px}.role-tree-node{display:grid;grid-gap:8px;gap:8px}.role-detail-card .binding-row,.role-detail-card .permission-row,.role-tree-panel .tree-row{border-color:var(--border-soft);background:color-mix(in srgb,var(--bg-card) 92%,var(--surface-subtle));box-shadow:none}.role-tree-panel .tree-row{grid-template-columns:minmax(0,1fr) auto;min-height:48px;border-radius:14px;padding:7px}.role-tree-panel .tree-row.active{border-color:color-mix(in srgb,var(--color-primary) 44%,var(--border-soft));background:color-mix(in srgb,var(--color-primary) 9%,var(--bg-card))}.role-tree-panel .tree-row>button{min-height:36px;border-radius:11px;padding:0 10px;box-shadow:none;font-size:13px;font-weight:760}.role-tree-panel .tree-row>button:first-child{justify-content:flex-start;border-color:transparent;background:transparent}.role-tree-panel .tree-row>button:last-child{min-width:70px;color:var(--text-secondary)}.role-tree-panel .tree-children{gap:8px;margin-left:14px;padding-left:12px;border-left-color:color-mix(in srgb,var(--border-soft) 80%,transparent)}.role-detail-header{align-items:start;margin:-2px 0 2px;padding-bottom:14px;border-bottom:1px solid var(--border-soft)}.role-detail-title{display:grid;grid-gap:6px;gap:6px;min-width:0}.role-detail-title .system-actions{justify-content:flex-start}.role-detail-header .system-actions{gap:8px}.role-detail-header .system-actions .icon-button,.role-detail-header .system-actions .secondary-button{min-height:36px;border-radius:12px;padding:0 12px;font-size:13px}.role-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:stretch}.role-meta-grid .metric-card{display:grid;grid-gap:6px;gap:6px;min-height:62px;border-color:var(--border-soft);border-radius:16px;padding:12px 14px;background:var(--surface-subtle)}.role-meta-grid .metric-card span{color:var(--text-secondary);font-size:12px;font-weight:700}.role-meta-grid .metric-card strong{color:var(--text-primary);font-size:15px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}.role-detail-card .system-tabs{margin-bottom:0}.role-detail-card .binding-row,.role-detail-card .permission-row{grid-template-columns:28px minmax(0,1fr) auto;min-height:58px;border-radius:14px;padding:10px 12px}.role-detail-card .binding-row input,.role-detail-card .permission-row input{width:18px;height:18px;min-height:18px}.role-binding-content{display:grid;grid-gap:3px;gap:3px;min-width:0;line-height:1.35}.role-binding-content strong{min-width:0;overflow:hidden;color:var(--text-primary);font-size:14px;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.role-binding-content small,.role-binding-content span{min-width:0;overflow:hidden;color:var(--text-secondary);font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.role-detail-card .status-pill{flex-shrink:0}@media (max-width:720px){.content-header-row,.system-toolbar,.task-item{align-items:stretch;flex-direction:column}.filter-actions,.system-actions,.task-item>span:last-child{width:100%}.filter-actions>*,.system-actions>*,.task-item>span:last-child>*{flex:1 1}.ds-config-workbench,.system-grid,.system-split{grid-template-columns:1fr}.ds-config-workbench.role-config-layout{min-height:0}.ds-config-workbench .role-tree-panel{min-height:0}.ds-config-workbench .role-binding-scroll,.ds-config-workbench .role-tree-panel{max-height:none;overflow:visible;padding-right:0}.role-detail-header{gap:14px}.role-detail-header,.role-detail-header .system-actions{align-items:stretch}.role-meta-grid{grid-template-columns:1fr}.role-detail-card .binding-row,.role-detail-card .permission-row{grid-template-columns:26px minmax(0,1fr)}.role-detail-card .binding-row .status-pill,.role-detail-card .permission-row .status-pill{grid-column:2}.tree-row{grid-template-columns:1fr;min-height:0}.tree-row>button{min-height:44px;width:100%}.tree-children{margin-left:var(--phoenix-space-3);padding-left:var(--phoenix-space-2)}.drawer-form input,.drawer-form select,.drawer-form textarea,.field input,.field select,.field textarea{font-size:16px}.drawer-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),.drawer-form select,.field input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),.field select{min-height:var(--form-control-height-touch)}.page-content,.table-scroll,.work-panel{overflow-x:auto;-webkit-overflow-scrolling:touch}}.ds-table-shell{width:100%;max-width:100%}.data-table:not(.allow-horizontal-table),.ds-data-table:not(.allow-horizontal-table),.filter-bar table:not(.allow-horizontal-table),.native-table:not(.allow-horizontal-table),.page-content table:not(.allow-horizontal-table),.table-scroll table:not(.allow-horizontal-table){width:100%;min-width:100%;table-layout:fixed}.data-table.allow-horizontal-table,.ds-data-table.allow-horizontal-table,.filter-bar table.allow-horizontal-table,.native-table.allow-horizontal-table,.page-content table.allow-horizontal-table,.table-scroll table.allow-horizontal-table{width:max-content;min-width:100%;table-layout:auto}.data-table td,.data-table th,.ds-data-table td,.ds-data-table th,.native-table td,.native-table th,.page-content td,.page-content th,.table-scroll td,.table-scroll th{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:normal;word-break:break-word}.data-table td:last-child,.data-table th:last-child,.ds-data-table td:last-child,.ds-data-table th:last-child,.native-table td:last-child,.native-table th:last-child,.page-content td:last-child,.page-content th:last-child,.table-scroll td:last-child,.table-scroll th:last-child{width:220px;min-width:220px;max-width:220px;overflow:visible;text-align:right}.data-table.allow-horizontal-table td:last-child,.data-table.allow-horizontal-table th:last-child,.ds-data-table.allow-horizontal-table td:last-child,.ds-data-table.allow-horizontal-table th:last-child,.native-table.allow-horizontal-table td:last-child,.native-table.allow-horizontal-table th:last-child,.page-content table.allow-horizontal-table td:last-child,.page-content table.allow-horizontal-table th:last-child,.table-scroll table.allow-horizontal-table td:last-child,.table-scroll table.allow-horizontal-table th:last-child{width:auto;min-width:240px;max-width:none}.iot-devices-table td:last-child,.iot-devices-table th:last-child{min-width:440px!important}.iot-gateways-table td:last-child,.iot-gateways-table th:last-child,.safety-emergencies-table td:last-child,.safety-emergencies-table th:last-child,.safety-emergency-contacts-table td:last-child,.safety-emergency-contacts-table th:last-child,.safety-emergency-plans-table td:last-child,.safety-emergency-plans-table th:last-child,.safety-work-permits-table td:last-child,.safety-work-permits-table th:last-child,.video-platform-configs-table td:last-child,.video-platform-configs-table th:last-child{min-width:300px!important}.video-cameras-table td:last-child,.video-cameras-table th:last-child{min-width:520px!important}.safety-inspect-plans-table td:last-child,.safety-inspect-plans-table th:last-child,.safety-inspect-points-table td:last-child,.safety-inspect-points-table th:last-child,.safety-inspect-templates-table td:last-child,.safety-inspect-templates-table th:last-child{min-width:360px!important}.data-table th:last-child:after,.ds-data-table th:last-child:after,.native-table th:last-child:after,.page-content th:last-child:after,.table-scroll th:last-child:after{display:none;content:none}.data-table-actions,.row-actions{display:inline-flex;flex-wrap:nowrap;gap:6px;align-items:center;justify-content:flex-end;width:auto;max-width:100%;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.data-table-actions::-webkit-scrollbar,.row-actions::-webkit-scrollbar{display:none}.data-table-actions a,.data-table-actions button,.ds-row-action,.row-action-button,.table-action-button{--row-action-color:var(--color-primary);--row-action-bg:color-mix(in srgb,var(--row-action-color) 9%,var(--bg-card));--row-action-border:color-mix(in srgb,var(--row-action-color) 28%,var(--border-soft));display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-width:74px;min-height:32px;border:1px solid var(--row-action-border);border-radius:8px;padding:0 10px;background:var(--row-action-bg);color:var(--row-action-color);font-size:12px;font-weight:720;line-height:1;text-decoration:none;white-space:nowrap;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bg-card) 44%,transparent);cursor:pointer;transform:none;transition:border-color .16s ease,background .16s ease,color .16s ease}.data-table-actions a:has(svg),.data-table-actions button:has(svg),.ds-row-action:has(svg),.row-action-button:has(svg),.table-action-button:has(svg){gap:6px;padding:0 10px}.data-table-actions a:has(svg) .ds-row-action-label,.data-table-actions button:has(svg) .ds-row-action-label,.ds-row-action:has(svg) .ds-row-action-label,.row-action-button:has(svg) .ds-row-action-label,.table-action-button:has(svg) .ds-row-action-label{display:inline-flex;align-items:center}.data-table-actions a svg,.data-table-actions button svg,.ds-row-action svg,.row-action-button svg,.table-action-button svg{width:14px;height:14px;flex:0 0 auto;stroke-width:2.25}.ds-row-action-label{color:currentColor;font-size:11px;font-weight:720;line-height:1;white-space:nowrap}.data-table-actions a:focus-visible,.data-table-actions a:hover,.data-table-actions button:focus-visible,.data-table-actions button:hover,.ds-row-action:focus-visible,.ds-row-action:hover,.row-action-button:focus-visible,.row-action-button:hover,.table-action-button:focus-visible,.table-action-button:hover{border-color:color-mix(in srgb,var(--row-action-color) 48%,var(--border-soft));background:color-mix(in srgb,var(--row-action-color) 15%,var(--bg-card));color:var(--row-action-color);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--row-action-color) 8%,transparent);transform:none}.data-table-actions .ds-row-action.ds-row-action-view,.ds-row-action-view,.row-actions .ds-row-action.ds-row-action-view{--row-action-color:var(--status-info)}.data-table-actions .ds-row-action.ds-row-action-edit,.ds-row-action-edit,.row-actions .ds-row-action.ds-row-action-edit,.table-action-button--primary{--row-action-color:var(--color-primary)}.data-table-actions .ds-row-action.ds-row-action-file,.ds-row-action-file,.row-actions .ds-row-action.ds-row-action-file{--row-action-color:var(--status-success)}.data-table-actions .ds-row-action.ds-row-action-status,.ds-row-action-status,.row-actions .ds-row-action.ds-row-action-status{--row-action-color:var(--status-warning)}.data-table-actions .ds-row-action.ds-row-action-history,.ds-row-action-history,.row-actions .ds-row-action.ds-row-action-history{--row-action-color:color-mix(in srgb,var(--color-primary) 62%,var(--status-info))}.data-table-actions .ds-row-action.ds-row-action-danger,.ds-row-action-danger,.row-action-button-danger,.row-action-danger,.row-actions .ds-row-action.ds-row-action-danger,.table-action-button.danger{--row-action-color:var(--status-danger)}@media (max-width:960px){.data-table td,.data-table th,.ds-data-table td,.ds-data-table th,.native-table td,.native-table th,.page-content td,.page-content th,.table-scroll td,.table-scroll th{padding:10px 11px;font-size:12px}.data-table td:last-child,.data-table th:last-child,.ds-data-table td:last-child,.ds-data-table th:last-child,.native-table td:last-child,.native-table th:last-child,.page-content td:last-child,.page-content th:last-child,.table-scroll td:last-child,.table-scroll th:last-child{width:220px;min-width:220px;max-width:220px}.data-table-actions,.row-actions{max-width:100%;gap:6px}.data-table-actions a,.data-table-actions button,.ds-row-action,.row-action-button,.table-action-button{min-width:74px;min-height:32px;padding:0 10px}}.ds-table-stacked-cell{display:grid;grid-gap:4px;gap:4px;min-width:0}.ds-table-stacked-cell small,.ds-table-stacked-cell strong{min-width:0;overflow:hidden;text-overflow:ellipsis}.ds-table-stacked-cell strong{color:var(--text-primary);font-size:13px;font-weight:760;line-height:1.35}.ds-table-stacked-cell small{color:var(--text-secondary);font-size:12px;font-weight:620;line-height:1.35}.table-scroll table:not(.allow-horizontal-table) td:has(.ds-table-stacked-cell){vertical-align:middle}@media (max-width:720px){.file-uploader-compact{grid-template-columns:1fr}.operation-photo-upload-card{grid-template-columns:52px minmax(0,1fr);min-height:84px;border-radius:18px;padding:14px}.operation-photo-upload-icon{width:52px;height:52px;border-radius:16px}.operation-photo-upload-icon svg{width:24px;height:24px;min-width:24px}.operation-photo-upload-copy strong{font-size:16px}.operation-photo-upload-copy small{font-size:13px}.attachment-compact-item{grid-template-columns:52px minmax(0,1fr)}.attachment-compact-actions{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.attachment-compact-actions button{width:100%}.file-preview-backdrop{padding:12px}.file-preview-modal{max-height:calc(100vh - 24px);border-radius:16px}.ds-table-shell{overflow-x:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.ds-data-table:not(.allow-horizontal-table),.ds-data-table:not(.allow-horizontal-table) tbody,.ds-data-table:not(.allow-horizontal-table) td,.ds-data-table:not(.allow-horizontal-table) th,.ds-data-table:not(.allow-horizontal-table) thead,.ds-data-table:not(.allow-horizontal-table) tr{display:block;width:100%;min-width:0;max-width:none}.ds-data-table:not(.allow-horizontal-table){border-collapse:separate;border-spacing:0;background:transparent}.ds-data-table:not(.allow-horizontal-table) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ds-data-table:not(.allow-horizontal-table) tbody{display:grid;grid-gap:12px;gap:12px}.ds-data-table:not(.allow-horizontal-table) tbody tr{border:1px solid var(--border-soft);border-radius:18px;overflow:hidden;background:var(--bg-card);box-shadow:var(--shadow-sm)}.ds-data-table:not(.allow-horizontal-table) tbody tr:hover{background:var(--bg-card)}.ds-data-table:not(.allow-horizontal-table) tbody td{display:grid;grid-template-columns:minmax(86px,34%) minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;min-height:42px;border-bottom:1px solid var(--border-soft);padding:10px 12px;text-align:left;overflow:visible;white-space:normal}.ds-data-table:not(.allow-horizontal-table) tbody td:last-child{width:100%;min-width:0;max-width:none;border-bottom:0;text-align:left}.ds-data-table:not(.allow-horizontal-table) tbody td:before{color:var(--text-secondary);font-size:12px;font-weight:760;line-height:1.35;content:attr(data-label)}.ds-data-table:not(.allow-horizontal-table) tbody td[colspan]{display:block}.ds-data-table:not(.allow-horizontal-table) tbody td[colspan]:before{display:none}.ds-data-table:not(.allow-horizontal-table) .data-table-actions{justify-content:flex-start;width:100%;max-width:none}.ds-data-table:not(.allow-horizontal-table) .data-table-actions a,.ds-data-table:not(.allow-horizontal-table) .data-table-actions button,.ds-data-table:not(.allow-horizontal-table) .row-action-button,.ds-data-table:not(.allow-horizontal-table) .table-action-button{width:auto;min-width:72px;min-height:36px;padding:0 10px;font-size:12px}.ds-data-table:not(.allow-horizontal-table) .ds-table-stacked-cell small,.ds-data-table:not(.allow-horizontal-table) .ds-table-stacked-cell strong{white-space:normal}}.header-brand-copy{display:grid;min-width:0;grid-gap:2px;gap:2px}.header-brand-copy span,.header-sidebar-toggle-actions{display:none}.user-profile-trigger{border:1px solid color-mix(in srgb,var(--phoenix-sidebar-text) 16%,transparent);cursor:default}.user-menu-compact{gap:6px}.user-menu-compact .user-menu-name{display:none}@media (max-width:720px){.app-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;min-height:calc(74px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 12px 10px}.app-header .header-brand-lockup,.app-header .header-leading{min-width:0}.app-header .header-brand-copy span{display:block;overflow:hidden;color:var(--phoenix-color-text-muted);font-size:11px;font-weight:620;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.app-header .header-context-line,.app-header .header-sidebar-toggle-leading,.app-header .header-workflow-link{display:none}.app-header .header-sidebar-toggle-actions{display:inline-flex}.app-header .header-actions{display:grid;grid-auto-flow:column;grid-auto-columns:34px;align-items:center;justify-content:end;grid-gap:6px;gap:6px}.app-header .header-icon-button.ant-btn,.app-header .header-icon-link,.app-header .user-avatar,.app-header .user-logout-button{width:34px;min-width:34px;height:34px;padding:0;border-radius:12px}.app-header .user-menu{display:contents}.app-header .user-logout-button span{display:none}.app-header .user-logout-button{gap:0;font-size:0}}.drawer-form select,.field select,.form-field select,[data-ui-drawer-panel=true] .field select,body.mobile-terminal-mode .field select,body.operations-terminal-safe-area .drawer-form select,body.operations-terminal-safe-area .field select,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:16px 16px!important;padding-right:max(42px,calc(var(--form-control-padding-x) + 24px))!important}@media (max-width:720px){.ds-data-table>tbody,.ds-data-table>tbody>tr,.ds-table-shell,.ds-table-shell>.ds-data-table{display:block;width:100%;min-width:0}.ds-data-table{table-layout:auto}.ds-data-table>thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ds-data-table>tbody>tr{margin:0 0 12px;border:1px solid var(--border-soft,var(--phoenix-color-border));border-radius:16px;padding:12px 14px;background:var(--bg-card,var(--phoenix-color-surface));box-shadow:var(--shadow-card,var(--phoenix-shadow-sm))}.ds-data-table>tbody>tr>td{display:flex;gap:12px;align-items:baseline;justify-content:space-between;width:auto;max-width:none;min-width:0;border:0;border-top:1px solid color-mix(in srgb,var(--border,var(--phoenix-color-border)) 60%,transparent);padding:8px 0;text-align:right;white-space:normal;overflow:visible;word-break:break-word}.ds-data-table>tbody>tr>td:first-child{border-top:0;padding-top:0}.ds-data-table>tbody>tr>td:before{content:attr(data-label);flex:0 0 38%;text-align:left;color:var(--text-secondary,var(--phoenix-color-text-muted));font-size:12px;font-weight:700;line-height:1.45;white-space:normal}.ds-data-table>tbody>tr>td:last-child{display:block;width:auto;min-width:0;max-width:none;margin-top:4px;padding-top:10px;text-align:left}.ds-data-table>tbody>tr>td:empty:before,.ds-data-table>tbody>tr>td:last-child:before{display:none}.ds-data-table>tbody>tr>td:last-child .data-table-actions,.ds-data-table>tbody>tr>td:last-child .row-actions{display:flex;flex-wrap:wrap;gap:8px;width:100%;max-width:none;overflow:visible;justify-content:flex-start}.ds-data-table>tbody>tr>td[colspan]:first-child:last-child{display:block;text-align:center}.ds-data-table>tbody>tr>td[colspan]:first-child:last-child:before{display:none}}