/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.grid{display:grid}.table{display:table}.w-90{width:calc(var(--spacing) * 90)}.w-100{width:calc(var(--spacing) * 100)}.w-110{width:calc(var(--spacing) * 110)}.w-120{width:calc(var(--spacing) * 120)}.w-130{width:calc(var(--spacing) * 130)}.w-150{width:calc(var(--spacing) * 150)}.w-220{width:calc(var(--spacing) * 220)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--topbar-height:64px;--shell-blue:#195ca8;--dash-bg:#061426;--dash-bg-2:#0a2140;--card:#081d36d1;--border:#22d3ee47;--text:#eaf4ff;--muted:#7f9dbd;--blue:#3b82f6;--cyan:#22d3ee;--green:#35d49a;--orange:#ffb547;--red:#ff5f6d;color:#203044;font-synthesis:none;text-rendering:geometricprecision;font-family:Microsoft YaHei,Inter,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:1180px;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;border:0}.app-shell{background:#fff;width:100%;height:100vh;overflow:hidden}.app-header{z-index:30;background:#fff;border-bottom:1px solid #dbe6f2;align-items:center;gap:18px;height:64px;padding:0 18px;display:flex;position:fixed;inset:0 0 auto;box-shadow:0 2px 9px #18466e0f}.top-icon{color:#396387;background:0 0;border-radius:6px;place-items:center;width:34px;height:34px;display:grid}.top-icon:hover{background:#eef6ff}.top-logo{flex:0 0 160px;width:160px;height:40px;padding:0;overflow:visible}.top-logo img{object-fit:contain;width:160px;height:32px;display:block}.brand{white-space:nowrap;align-items:baseline;gap:16px;display:flex}.brand h1{color:#1255a0;letter-spacing:.5px;margin:0;font-size:21px;font-weight:750}.brand p{color:#687b8f;margin:0;font-size:11px}.header-actions{align-items:center;gap:9px;min-width:0;margin-left:auto;display:flex}.select-box,.search-box,.month-box,.header-button{color:#52677d;background:#fff;border:1px solid #dce6f0;border-radius:5px;align-items:center;gap:7px;height:34px;padding:0 10px;font-size:12px;display:flex}.select-box select{appearance:none;color:#3f5368;background:0 0;border:0;outline:0;width:76px}.search-box{width:190px}.search-box input{border:0;outline:0;width:100%;min-width:0;font-size:12px}.month-box input{color:#52677d;border:0;outline:0;width:86px;font-size:11px}.breadcrumb{color:#64778a;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.breadcrumb i{color:#b1bfcc}.header-button:hover{color:#1765ad;border-color:#9ec3e8}.screen-button{color:#0c68b7;background:#edf7ff;border-color:#b7dbf8}.notification{color:#52677d;background:0 0;place-items:center;width:33px;height:33px;display:grid;position:relative}.notification em{color:#fff;background:#ff5462;border-radius:9px;min-width:17px;height:17px;padding:0 4px;font-size:9px;font-style:normal;line-height:17px;position:absolute;top:-3px;right:-2px}.user{white-space:nowrap;color:#42576c;align-items:center;gap:7px;font-size:11px;display:flex}.user>span{color:#0b5fab;background:#eaf4ff;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.sidebar{z-index:25;background:#fff;border-right:1px solid #dbe6f2;flex-direction:column;width:120px;padding:12px 8px;display:flex;position:fixed;top:64px;bottom:0;left:0}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav button{color:#52677c;white-space:nowrap;background:0 0;border-radius:7px;justify-content:flex-start;align-items:center;gap:9px;width:100%;height:57px;padding:0 10px;font-size:12px;display:flex}.sidebar nav button svg,.sidebar nav button span{flex-shrink:0}.sidebar nav button:hover{color:#1764ab;background:#f2f8ff}.sidebar nav button.active{color:#1764b4;background:#e8f4ff;font-weight:650;box-shadow:inset 3px 0 #2683d8}.legacy-nav{border-top:1px dashed #d6e2ee;flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.sidebar .legacy-nav button{color:#6c7480;background:linear-gradient(#f9fbfd 0%,#f3f6f9 100%);border:1px solid #e2e8ef;gap:8px;height:44px;padding:0 8px;position:relative;box-shadow:inset 0 1px #ffffffbf}.sidebar .legacy-nav button:hover{color:#7a5c24;background:linear-gradient(#fffaf0 0%,#f7f2e8 100%);border-color:#ead5a6}.sidebar .legacy-nav button.active{color:#7a5c24;background:linear-gradient(#fff7e4 0%,#f5eddf 100%);border-color:#e5c781;font-weight:650;box-shadow:inset 3px 0 #c58b2e,inset 0 1px #fffc}.sidebar .legacy-nav button svg{color:#a77822}.sidebar .legacy-nav button.active svg{color:#b57919}.sidebar .legacy-nav button.disabled,.sidebar .legacy-nav button:disabled{cursor:not-allowed;color:#a8b2bd;box-shadow:none;background:#f7f8fa;border-color:#e6ebf0}.sidebar .legacy-nav button.disabled:hover,.sidebar .legacy-nav button:disabled:hover{color:#a8b2bd;background:#f7f8fa;border-color:#e6ebf0}.sidebar .legacy-nav button.disabled svg,.sidebar .legacy-nav button:disabled svg{color:#b3bcc5}.sidebar .legacy-nav button.disabled small,.sidebar .legacy-nav button:disabled small{color:#9da8b2;background:#eef1f4}.sidebar .legacy-nav button small{color:#9a6b1f;background:#fff1cc;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;line-height:14px;position:absolute;top:6px;right:6px}.side-footer{color:#2bb784;justify-content:center;align-items:center;gap:5px;margin-top:auto;font-size:10px;display:flex}.dashboard-main{color:var(--text);background:radial-gradient(circle at 55% 35%, #124d8547, transparent 38%), linear-gradient(140deg, var(--dash-bg), var(--dash-bg-2) 55%, #06172b);flex-direction:column;gap:10px;padding:12px;display:flex;position:fixed;inset:64px 0 0 120px;overflow:hidden}.dashboard-main:before{content:"";pointer-events:none;opacity:.1;background-image:linear-gradient(#22d3ee14 1px,#0000 1px),linear-gradient(90deg,#22d3ee14 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0}.dashboard-main>*{z-index:1;position:relative}.is-fullscreen .dashboard-main{padding:12px 16px;inset:0}.exit-fullscreen{z-index:50;color:#bcecff;background:#041426c7;border:1px solid #22d3ee59;border-radius:5px;height:31px;padding:0 13px;font-size:11px;position:fixed;top:12px;right:18px}.dashboard-card{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:linear-gradient(145deg,#081d36e6,#05172cc7);border:1px solid #489dd23d;border-radius:9px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden;box-shadow:inset 0 1px #ffffff06,0 8px 22px #0007132e}.dashboard-card:after{content:"";pointer-events:none;background:linear-gradient(90deg, var(--cyan), transparent);border-radius:2px;width:42px;height:2px;position:absolute}.card-header{background:linear-gradient(90deg,#1c4f7a21,#0000 55%);border-bottom:1px solid #7f9dbd1a;flex:0 0 40px;justify-content:space-between;align-items:center;min-height:40px;padding:0 14px;display:flex}.card-title{color:#e4f2ff;letter-spacing:.25px;align-items:center;gap:8px;font-size:13.5px;font-weight:650;display:flex}.card-title>span{background:var(--cyan);border-radius:2px;width:3px;height:14px;box-shadow:0 0 6px #22d3ee73}.card-body{flex:1;min-height:0;position:relative}.more-button,.module-link{color:#7fa6c5;background:0 0;border-radius:4px;align-items:center;gap:2px;padding:4px 5px;font-size:10px;display:flex}.more-button:hover,.module-link:hover{color:#c8efff;background:#22d3ee14}.click-hint{color:#6385a3;font-size:9px}.kpi-strip{flex:0 0 110px;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;display:grid}.kpi-item{min-width:0;color:var(--blue);text-align:left;background:linear-gradient(145deg,#0b2846e6,#05182dd1);border:1px solid #489dd238;border-radius:9px;align-items:flex-start;padding:13px 12px 31px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff06,0 7px 18px #00071326}.kpi-item:before{content:"";opacity:.72;background:currentColor;width:3px;position:absolute;inset:0 auto 0 0}.kpi-item:after{content:"";opacity:.055;background:currentColor;border-radius:50%;width:82px;height:82px;transition:all .2s;position:absolute;top:-24px;right:-24px}.kpi-item:hover{z-index:2;background:linear-gradient(145deg,#0f355bf5,#071e37e6);border-color:currentColor;transform:translateY(-2px);box-shadow:0 10px 25px #0007134d,inset 0 0 18px #41a5df0f}.kpi-item:hover:after{opacity:.09;transform:scale(1.18)}.kpi-item:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.kpi-copy{z-index:2;min-width:0}.kpi-copy>span{color:#91aac2;white-space:nowrap;align-items:center;gap:3px;font-size:11px;display:flex}.kpi-link-icon{opacity:0;transition:all .18s;transform:translate(-3px,3px)}.kpi-item:hover .kpi-link-icon{opacity:1;transform:none}.kpi-copy strong{color:var(--text);letter-spacing:.3px;margin-top:6px;font-family:DIN,Bahnschrift,sans-serif;font-size:clamp(22px,1.55vw,29px);line-height:1;display:block}.kpi-copy small{color:#9eb5cc;margin-left:3px;font-size:10px;font-weight:400}.kpi-icon-wrap{z-index:2;background:currentColor;border:1px solid;border-radius:11px;flex:0 0 40px;place-items:center;height:40px;margin-left:auto;display:grid}@supports (color:color-mix(in lab, red, red)){.kpi-icon-wrap{background:color-mix(in srgb, currentColor 10%, transparent)}}.kpi-icon-wrap{opacity:.86}.kpi-icon{filter:drop-shadow(0 0 5px)}.kpi-trend{z-index:2;align-items:center;gap:4px;height:20px;display:flex;position:absolute;bottom:6px;left:12px;right:10px}.kpi-trend>span{font-family:Bahnschrift,sans-serif;font-size:9px;font-weight:650}.kpi-trend>small{color:#607f9a;white-space:nowrap;font-size:8px}.kpi-trend .is-positive{color:var(--green)}.kpi-trend .is-warning{color:var(--orange)}.mini-trend{opacity:.62;flex:1;min-width:28px;height:18px;margin-left:2px;position:static;overflow:visible}.tone-cyan{color:var(--cyan)}.tone-green{color:var(--green)}.tone-orange{color:var(--orange)}.tone-red{color:var(--red)}.content-grid{flex:auto;grid-template-columns:minmax(250px,16%) minmax(560px,1fr) minmax(285px,18%);gap:10px;min-height:0;display:grid}.left-column,.right-column{gap:10px;min-height:0;display:grid}.left-column{grid-template-rows:1.15fr .8fr 1.15fr}.right-column{grid-template-rows:1.22fr .78fr 1fr}.donut-chart,.funnel-chart{width:100%;min-height:90px;height:100%!important}.vacancy-list{flex-direction:column;justify-content:center;gap:4px;height:100%;padding:6px 9px;display:flex}.vacancy-list button{color:#88a5bf;text-align:left;background:0 0;border-radius:4px;grid-template-columns:64px 1fr 24px;align-items:center;gap:8px;min-height:25px;padding:0 7px;font-size:10px;transition:all .15s;display:grid}.vacancy-list button:hover{color:#d8edff;background:#3b82f61a}.vacancy-list button i{background:#3b82f624;border-radius:3px;height:6px;overflow:hidden}.vacancy-list button b{background:linear-gradient(90deg,#245ec9,#32b9ff);border-radius:3px;height:100%;display:block;box-shadow:0 0 6px #3b82f680}.vacancy-list button em{color:#c8dcef;text-align:right;font-style:normal}.digital-twin{position:relative}.view-switch{border:1px solid #7f9dbd2e;border-radius:4px;align-items:center;gap:2px;padding:2px;display:flex}.view-switch button{height:22px;color:var(--muted);background:0 0;border-radius:3px;padding:0 8px;font-size:10px}.view-switch button.active{color:#eaf7ff;background:#3b82f659;box-shadow:0 0 8px #3b82f633}.twin-container{background:#061426;width:100%;height:100%;position:relative;overflow:hidden}.twin-container:fullscreen{width:100vw;height:100vh}.twin-scene{transform-origin:50%;background:radial-gradient(at 65% 28%,#2a6daa70,#0000 25%),linear-gradient(178deg,#0b284a 0 45%,#071828 46%);transition:transform .25s;position:absolute;inset:0;overflow:hidden}.image-scene{background:#071a2c}.image-scene:after{display:none}.twin-image{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;filter:saturate(1.08)contrast(1.04)brightness(.9);width:100%;height:100%;position:absolute;inset:0}.image-vignette{z-index:1;pointer-events:none;background:linear-gradient(#030f1d14,#0000 30%,#030f1d2e),radial-gradient(#0000 58%,#020c183d 100%);position:absolute;inset:0;box-shadow:inset 0 0 28px #020c186b}.image-scene .map-pin{width:24px;height:24px;transform:translate(-50%,-50%)}.image-scene .map-pin span{border-width:2px;border-radius:50%;width:14px;height:14px;transform:none;box-shadow:0 0 0 5px #35d49a24,0 0 12px}.image-scene .map-pin svg{display:none}.image-scene .pin-待招商 span{box-shadow:0 0 0 5px #ffb54729, 0 0 12px var(--orange)}.image-scene .pin-风险 span{box-shadow:0 0 0 5px #ff5f6d29, 0 0 12px var(--red)}.image-scene .map-pin.active{transform:translate(-50%,-50%)scale(1.25)}.image-scene .map-pin.active span{background:#2da8ff;box-shadow:0 0 0 6px #2da8ff2e,0 0 14px #2da8ff}.image-scene.mode-map{filter:none}.image-scene.mode-map .twin-image{filter:saturate(1.06)contrast(1.06)brightness(.9)}.region-float-card{z-index:18;color:#e8f8ff;text-align:left;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(135deg,#051c34eb,#063a54c2);border:1px solid #48e2ffb3;border-radius:6px;align-items:center;gap:8px;min-width:132px;height:44px;padding:7px 10px;display:flex;position:absolute;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #2190c933,0 0 18px #22d3ee52,inset 0 0 18px #22d3ee1f}.region-float-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#57e8ff33,#0000);animation:3.2s linear infinite scan-region-card;position:absolute;inset:0;transform:translate(-115%)}.region-float-card:after{content:"";background:linear-gradient(#48e2ffcc,#0000);width:1px;height:18px;position:absolute;bottom:-17px;left:50%;box-shadow:0 0 9px #22d3eecc}.region-radar{background:#35d49ad9;border:2px solid #7cf8ff;border-radius:50%;flex:0 0 14px;width:14px;height:14px;position:relative;box-shadow:0 0 0 5px #22d3ee21,0 0 14px #22d3eedb}.region-radar:after{content:"";border:1px solid #7cf8ff73;border-radius:50%;animation:1.8s ease-out infinite pulse-region-radar;position:absolute;inset:-8px}.region-copy{z-index:1;gap:2px;min-width:0;display:grid;position:relative}.region-copy b{color:#f5fcff;text-shadow:0 0 8px #22d3ee8c;font-size:13px;line-height:1}.region-copy small{color:#8fc5dc;white-space:nowrap;font-size:9px}@keyframes scan-region-card{to{transform:translate(115%)}}@keyframes pulse-region-radar{to{opacity:0;transform:scale(1.9)}}.scene-sky{background:radial-gradient(at bottom,#2c70ae40,#0000 65%);position:absolute;inset:0 0 52%}.twin-scene:after{content:"";background-image:linear-gradient(#2079ab21 1px,#0000 1px),linear-gradient(90deg,#2079ab21 1px,#0000 1px);background-size:30px 30px;position:absolute;inset:48% -10% -30%;transform:perspective(300px)rotateX(52deg)}.building{z-index:2;background:linear-gradient(120deg,#122b46,#0a1727 75%);border:1px solid #4ea3dd40;gap:4px;padding:7px;display:grid;position:absolute;transform:skewY(-7deg);box-shadow:8px 10px 15px #0006,inset 0 0 12px #22d3ee0f}.building i{opacity:.75;background:#74caff;width:8px;height:6px;display:block;box-shadow:18px 0 #17436a,36px 0 #ffd76e,54px 0 #1d4e72}.cluster-a{width:98px;height:105px;top:21%;left:8%}.cluster-b{width:105px;height:132px;top:11%;left:29%}.cluster-c{width:118px;height:120px;top:16%;right:18%}.cluster-d{width:95px;height:91px;top:31%;right:4%}.road{z-index:3;background:#101c2a;border:solid #458ebf40;position:absolute;box-shadow:0 0 16px #070c14cc}.road-main{border-width:2px 0;height:73px;top:63%;left:-5%;right:-5%;transform:rotate(-5deg)}.road-main:after{content:"";border-top:1px dashed #f5e09759;position:absolute;top:34px;left:0;right:0}.road-cross{border-width:0 2px;width:62px;height:120%;top:-10%;left:52%;transform:rotate(28deg)}.shop-row{z-index:5;border:2px solid #2189dd8c;height:68px;display:flex;position:absolute;bottom:15%;left:12%;right:8%;transform:skewY(-4deg);box-shadow:0 0 14px #228bdd4d}.shop-row i{background:linear-gradient(#13334f,#0a1b2c);border-right:1px solid #3694db80;flex:1}.shop-row i:before{content:"";opacity:.7;background:linear-gradient(90deg,#1a9edf,#ef7b43);height:22px;margin:20px 7px 0;display:block;box-shadow:0 0 8px}.region-label{z-index:8;color:#c7efff;background:#051f3ac7;border:1px solid #22d3ee73;border-radius:4px;padding:5px 10px;font-size:11px;position:absolute;box-shadow:0 0 10px #22d3ee26}.label-a{top:17%;left:20%}.label-b{top:23%;right:28%}.mode-map .building{opacity:.42;transform-origin:bottom;transform:scaleY(.45)skewY(-3deg)}.mode-map .shop-row{opacity:.72;height:45px}.mode-map{filter:saturate(.8)}.map-pin{z-index:12;color:#fff;filter:drop-shadow(0 3px 6px #000000b3);background:0 0;width:27px;height:35px;padding:0;position:absolute;transform:translate(-50%,-100%)}.map-pin span{background:var(--green);border:2px solid #fff;border-radius:50% 50% 50% 3px;place-items:center;width:25px;height:25px;display:grid;transform:rotate(-45deg)}.map-pin svg{transform:rotate(45deg)}.pin-待招商 span{background:var(--orange)}.pin-风险 span{background:var(--red)}.map-pin.active{filter:drop-shadow(0 0 8px #7dd3fc);transform:translate(-50%,-100%)scale(1.28)}.asset-popover{z-index:20;width:178px;color:var(--text);background:#041a32f5;border:1px solid #22d3ee80;border-radius:6px;padding:11px;font-size:10px;position:absolute;top:25%;left:34%;box-shadow:0 8px 24px #0000006b,inset 0 0 15px #22d3ee12}.asset-popover.popover-map{top:40%;left:39%}.asset-popover:after{content:"";background:#051c34;border-bottom:1px solid #22d3ee80;border-right:1px solid #22d3ee80;width:12px;height:12px;position:absolute;bottom:-7px;left:28px;transform:rotate(45deg)}.asset-popover h3{margin:0 0 8px;font-size:12px}.popover-close{color:#7494af;background:0 0;position:absolute;top:4px;right:5px}.asset-popover dl{gap:4px;margin:0;display:grid}.asset-popover dl>div{justify-content:space-between;display:flex}.asset-popover dt{color:var(--muted)}.asset-popover dd{margin:0}.status-已出租{color:var(--green)!important}.status-待招商{color:var(--orange)!important}.status-风险{color:var(--red)!important}.detail-button{color:#fff;background:linear-gradient(90deg,#1768c4,#218dd5);border-radius:3px;width:100%;height:27px;margin-top:8px;font-size:10px}.map-controls{z-index:21;border:1px solid #7f9dbd59;border-radius:5px;flex-direction:column;display:flex;position:absolute;bottom:30px;right:8px;overflow:hidden}.map-controls button{color:#b6d6ee;background:#031628db;border-bottom:1px solid #7f9dbd33;place-items:center;width:28px;height:28px;display:grid}.scene-legend{z-index:20;color:var(--muted);gap:12px;font-size:9px;display:flex;position:absolute;bottom:7px;left:9px}.scene-legend span{align-items:center;gap:4px;display:flex}.scene-legend i{border-radius:50%;width:6px;height:6px}.scene-legend .green{background:var(--green)}.scene-legend .orange{background:var(--orange)}.scene-legend .red{background:var(--red)}.filter-chip{z-index:21;color:#c7efff;background:#062846e6;border:1px solid #22d3ee59;border-radius:12px;padding:5px 9px;font-size:9px;position:absolute;top:8px;right:9px}.asset-list-view{background:radial-gradient(circle at 85% 0,#1d6ea929,#0000 34%),linear-gradient(145deg,#06172c,#092441);flex-direction:column;gap:8px;height:100%;min-height:0;padding:9px;display:flex;overflow:hidden}.asset-list-overview{flex:0 0 52px;grid-template-columns:90px 108px 120px minmax(140px,1fr);gap:7px;display:grid}.asset-list-overview>div{background:linear-gradient(135deg,#143e6299,#0823407a);border:1px solid #4c9ed12e;border-radius:6px;padding:7px 9px;position:relative;overflow:hidden}.asset-list-overview>div:after{content:"";background:#22d3ee12;border-radius:50%;width:42px;height:42px;position:absolute;bottom:-18px;right:-12px}.asset-list-overview span{color:#7897b2;align-items:center;gap:4px;font-size:8px;display:flex}.asset-list-overview strong{color:#e9f6ff;margin-top:3px;font-family:Bahnschrift,sans-serif;font-size:15px;line-height:1;display:block}.asset-list-overview strong small{color:#7595af;margin-left:2px;font-size:8px;font-weight:400}.asset-list-overview label{color:#668aa7;background:#05192f9e;border:1px solid #4c9ed133;border-radius:5px;align-self:center;align-items:center;gap:6px;height:34px;padding:0 10px;display:flex}.asset-list-overview input{color:#dceeff;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:9px}.asset-list-overview input::placeholder{color:#587792}.asset-list-table{background:#05182d6b;border:1px solid #4c9ed129;border-radius:6px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.asset-list-head,.asset-list-row{grid-template-columns:1.55fr 1.25fr .52fr .72fr 1.05fr .68fr 18px;align-items:center;gap:8px;padding:0 10px;display:grid}.asset-list-head{color:#6284a0;background:#133a5b73;border-bottom:1px solid #4c9ed121;flex:0 0 27px;font-size:8px}.asset-list-rows{scrollbar-width:thin;scrollbar-color:#2b8fc659 transparent;flex:1;min-height:0;overflow-y:auto}.asset-list-row{color:#88a4bc;text-align:left;background:0 0;border-bottom:1px solid #719ab914;width:100%;min-height:43px;font-size:9px;transition:background .16s,box-shadow .16s;position:relative}.asset-list-row:before{content:"";background:0 0;border-radius:2px;width:2px;position:absolute;top:7px;bottom:7px;left:0}.asset-list-row:hover{background:linear-gradient(90deg,#1861913d,#0c395e1f)}.asset-list-row:hover:before,.asset-list-row.active:before{background:var(--cyan);box-shadow:0 0 7px var(--cyan)}.asset-list-row.active{background:linear-gradient(90deg,#186fa44d,#0a345729);box-shadow:inset 0 0 15px #22d3ee09}.asset-list-row>svg{color:#527793;transition:transform .16s,color .16s}.asset-list-row:hover>svg{color:var(--cyan);transform:translate(2px)}.asset-main{align-items:center;gap:7px;min-width:0;display:flex}.asset-main>i{color:#4fc9ed;background:#22d3ee14;border:1px solid #22d3ee33;border-radius:5px;flex:0 0 27px;place-items:center;height:27px;font-style:normal;display:grid}.asset-main b,.asset-place b,.asset-contract b{color:#d8eafb;white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:600;display:block;overflow:hidden}.asset-main small,.asset-place small,.asset-contract small{color:#617f99;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:7px;font-weight:400;display:block;overflow:hidden}.asset-list-row>strong{color:#c4daec;font-family:Bahnschrift,sans-serif;font-size:11px}.asset-list-row>strong small{color:#64839c;margin-left:1px;font-size:7px;font-weight:400}.asset-status{white-space:nowrap;background:#35d49a0f;border:1px solid;border-radius:10px;justify-self:start;align-items:center;gap:4px;padding:3px 6px;font-size:8px;font-style:normal;display:flex}.asset-status>i{background:currentColor;border-radius:50%;width:5px;height:5px;box-shadow:0 0 5px}.asset-health{color:var(--green);align-items:center;gap:5px;display:flex}.asset-health>b{min-width:16px;font-family:Bahnschrift,sans-serif;font-size:9px}.asset-health>i{background:#7f9dbd21;border-radius:3px;width:30px;height:4px;overflow:hidden}.asset-health>i u{border-radius:inherit;background:linear-gradient(90deg,#1cae84,#43e5af);height:100%;display:block;box-shadow:0 0 5px #35d49a73}.asset-health.warning{color:var(--orange)}.asset-health.warning>i u{background:linear-gradient(90deg,#d98a2e,#ffbd55)}.asset-list-empty{color:#607f99;place-items:center;height:100%;font-size:10px;display:grid}.payment-grid{grid-template-columns:1fr 1fr 76px;align-items:center;gap:5px;height:100%;padding:6px 9px;display:grid}.payment-grid>button:not(.rate-ring){text-align:center;background:#0f355738;border:1px solid #0000;border-radius:6px;height:65px;padding:6px;transition:all .16s}.payment-grid>button:not(.rate-ring):hover{background:#194d7559;border-color:#22d3ee40;transform:translateY(-1px)}.payment-grid span{color:#7f9dbd;font-size:9px;display:block}.payment-grid strong{margin-top:3px;font-family:Bahnschrift,sans-serif;font-size:22px;display:block}.payment-grid button>em{color:#6386a3;margin-top:2px;font-size:8px;font-style:normal;display:block}.payment-grid button:hover>em{color:#9ddaf2}.payment-grid .blue{color:var(--blue)}.payment-grid .green{color:var(--green)}.rate-ring{--rate:330deg;background:conic-gradient(var(--green) var(--rate), #35d49a1c 0);border-radius:50%;place-items:center;width:61px;height:61px;padding:0;transition:all .16s;display:grid;box-shadow:0 0 11px #35d49a2e}.rate-ring:hover{transform:scale(1.04);box-shadow:0 0 17px #35d49a4d}.rate-ring:before{content:"";background:#0a223d;border-radius:50%;grid-area:1/1;width:49px;height:49px}.rate-ring i{z-index:1;text-align:center;grid-area:1/1;font-style:normal}.rate-ring i strong{color:#eafff8;margin:0;font-size:12px}.rate-ring i small{color:var(--muted);font-size:8px}.alert-list{flex-direction:column;justify-content:center;height:100%;padding:5px 8px;display:flex}.alert-list button{color:#7694ae;text-align:left;background:0 0;border-bottom:1px solid #7f9dbd17;border-radius:4px;grid-template-columns:39px 68px 1fr 13px;align-items:center;gap:6px;min-height:31px;padding:0 6px;font-size:9px;transition:all .15s;display:grid}.alert-list button:hover{color:#c5dcef;background:#1e557e3d}.alert-level{border-radius:3px;justify-content:center;align-items:center;gap:2px;height:17px;display:flex}.level-高{color:var(--red);background:#ff5f6d21}.level-中{color:var(--orange);background:#ffb54721}.level-低{color:#f1d64a;background:#f1d64a1a}.alert-list b{color:#c5d8e9;font-size:9px}.alert-list em{white-space:nowrap;text-overflow:ellipsis;font-style:normal;overflow:hidden}.bottom-grid{flex:0 0 250px;grid-template-columns:1.35fr 1fr .9fr;gap:10px;min-height:0;display:grid}.bottom-chart{width:100%;height:100%!important}.chart-legend{gap:12px;font-size:9px;display:flex}.chart-legend span:before{content:"";vertical-align:middle;width:9px;height:2px;margin-right:4px;display:inline-block}.chart-legend .blue{color:var(--muted)}.chart-legend .blue:before{background:var(--blue)}.chart-legend .green{color:var(--muted)}.chart-legend .green:before{background:var(--green)}.task-table{height:100%;color:var(--muted);padding:7px 9px 5px;font-size:10px}.task-head,.task-row{text-align:left;grid-template-columns:1.35fr 1fr .58fr .78fr .72fr;align-items:center;gap:7px;width:100%;min-height:34px;padding:0 8px;display:grid}.task-head{color:#6989a5;background:#1d466a33;border-radius:4px;min-height:29px}.task-row{color:#7f9dbd;background:0 0;border-bottom:1px solid #7f9dbd14;border-radius:4px;transition:all .15s}.task-row:hover{background:#1a4e7647}.task-row>span:first-child{color:#c7daeb;align-items:center;gap:6px;display:flex}.task-row>span:first-child i{background:var(--blue);border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #3b82f680}.task-row b{color:#a9c0d4;font-size:10px;font-weight:500}.task-row em{color:var(--orange);background:#ffb5471a;border:1px solid #ffb54729;border-radius:9px;justify-self:start;padding:3px 7px;font-style:normal}.task-row time{color:#69859d}.month-tag{color:var(--muted);border:1px solid #7f9dbd2e;border-radius:3px;padding:2px 7px;font-size:9px}.energy-tip{color:var(--red);margin:0;font-size:8px;position:absolute;bottom:4px;left:10px}.ai-float{z-index:35;color:#d9f7ff;background:radial-gradient(circle at 40% 30%,#207fbd,#073159 70%);border:2px solid #55d8ffb3;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:66px;height:66px;display:flex;position:fixed;bottom:18px;right:19px;box-shadow:0 0 18px #22d3ee59,inset 0 0 13px #ffffff1f}.ai-float:before{content:"";border:1px dashed #22d3ee73;border-radius:50%;animation:9s linear infinite spin;position:absolute;inset:-6px}.ai-float span{font-size:9px}@keyframes spin{to{transform:rotate(360deg)}}.drawer-mask{z-index:60;visibility:hidden;opacity:0;background:#020a146b;transition:all .25s;position:fixed;inset:0}.drawer-mask.open{visibility:visible;opacity:1}.ai-drawer{z-index:61;width:410px;color:var(--text);border-left:1px solid var(--border);background:linear-gradient(155deg,#081c34,#061426);flex-direction:column;transition:transform .28s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-12px 0 30px #0000004d}.ai-drawer.open{transform:translate(0)}.ai-drawer header{border-bottom:1px solid #7f9dbd24;justify-content:space-between;align-items:center;height:64px;padding:0 18px;display:flex}.ai-drawer header>div{color:var(--cyan);align-items:center;gap:10px;display:flex}.ai-drawer header span{flex-direction:column;display:flex}.ai-drawer header b{color:var(--text);font-size:15px}.ai-drawer header small{color:var(--muted);font-size:9px}.ai-drawer header button{color:var(--muted);background:0 0}.ai-content{flex:1;padding:20px}.ai-intro{color:#b8d4ea;align-items:center;gap:6px;font-size:12px;display:flex}.preset-questions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.preset-questions button{color:#8eb6d4;background:#0d335585;border:1px solid #22d3ee38;border-radius:15px;padding:8px 11px;font-size:10px}.preset-questions button:hover{color:#d9f7ff;border-color:#22d3ee80}.ai-message{align-items:flex-start;gap:9px;margin-top:26px;display:flex}.ai-message>span{height:31px;color:var(--cyan);background:#22d3ee1f;border-radius:50%;flex:0 0 31px;place-items:center;display:grid}.ai-message p{color:#c5d9ea;white-space:pre-wrap;background:#0d30508c;border:1px solid #7f9dbd21;border-radius:4px 12px 12px;margin:0;padding:11px 13px;font-size:11px;line-height:1.75}.ai-message.is-loading>span{animation:1.2s ease-in-out infinite ai-thinking}.ai-message.is-loading p{color:#81b8d7}.ai-error{color:#ff9aa4;background:#ff5f6d12;border:1px solid #ff5f6d33;border-radius:5px;margin:12px 0 0 40px;padding:9px 11px;font-size:10px;line-height:1.5}@keyframes ai-thinking{50%{transform:scale(1.08);box-shadow:0 0 14px #22d3ee47}}.ai-drawer footer{border-top:1px solid #7f9dbd24;align-items:center;gap:8px;height:74px;padding:12px 16px;display:flex}.ai-drawer footer input{color:#dceeff;background:#061a2fcc;border:1px solid #22d3ee33;border-radius:5px;outline:0;flex:1;height:42px;padding:0 13px;font-size:11px}.ai-drawer footer button{color:#fff;background:#1672c4;border-radius:5px;place-items:center;width:42px;height:42px;display:grid}.ai-drawer footer button:disabled,.ai-drawer footer input:disabled{cursor:not-allowed;opacity:.55}.ai-modal{z-index:61;color:#26384b;opacity:0;visibility:hidden;background:#fff;border:1px solid #164c7629;border-radius:14px;flex-direction:column;width:min(980px,100vw - 80px);height:min(720px,100vh - 64px);transition:opacity .22s,transform .22s,visibility .22s;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-48%)scale(.97);box-shadow:0 28px 80px #00102266}.ai-modal.open{opacity:1;visibility:visible;transform:translate(-50%,-50%)scale(1)}.ai-modal-header{background:#fffffff5;border-bottom:1px solid #e7edf3;flex:0 0 66px;align-items:center;gap:16px;padding:0 20px;display:flex}.ai-modal-brand{align-items:center;gap:10px;display:flex}.ai-modal-brand>span{color:#0875c1;background:#e7f5ff;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.ai-modal-brand>div{flex-direction:column;display:flex}.ai-modal-brand b{color:#1c3044;font-size:15px}.ai-modal-brand small{color:#8292a3;margin-top:2px;font-size:9px}.ai-modal-status{color:#4e667a;background:#f7fafc;border:1px solid #dce7ef;border-radius:13px;align-items:center;gap:6px;margin-left:auto;padding:5px 9px;font-size:9px;display:flex}.ai-modal-status i{background:#21bf83;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #21bf831f}.ai-modal-close{color:#718295;background:0 0;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.ai-modal-close:hover{color:#213a51;background:#eef3f7}.ai-modal-body{flex:1;grid-template-columns:220px minmax(0,1fr);min-height:0;display:grid}.ai-history-panel{background:#f5f7f9;border-right:1px solid #e4ebf1;flex-direction:column;min-height:0;padding:16px 13px;display:flex}.ai-new-chat{color:#fff;background:#147cc1;border-radius:7px;justify-content:center;align-items:center;gap:7px;height:38px;font-size:11px;display:flex;box-shadow:0 6px 14px #147cc12e}.ai-new-chat:hover{background:#0d6fae}.ai-history-panel>p{color:#8b99a7;align-items:center;gap:5px;margin:20px 7px 8px;font-size:9px;display:flex}.ai-history-list{gap:4px;display:grid}.ai-history-list button{color:#687b8d;text-align:left;background:0 0;border-radius:6px;flex-direction:column;justify-content:center;min-height:48px;padding:0 10px;display:flex}.ai-history-list button:hover,.ai-history-list button.active{color:#1f577d;background:#e7f1f8}.ai-history-list b{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:10px;font-weight:500;overflow:hidden}.ai-history-list small{color:#9ba7b3;margin-top:4px;font-size:8px}.ai-data-ready{color:#1d9b70;background:#f2faf7;border:1px solid #dceae5;border-radius:7px;align-items:center;gap:8px;margin-top:auto;padding:10px;display:flex}.ai-data-ready>span{flex-direction:column;display:flex}.ai-data-ready b{color:#3c6859;font-size:9px}.ai-data-ready small{color:#7b9a8f;margin-top:3px;font-size:7px}.ai-chat-panel{background:#fff;flex-direction:column;min-width:0;min-height:0;display:flex}.ai-chat-heading{border-bottom:1px solid #edf1f5;flex:0 0 66px;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.ai-chat-heading h3{color:#20364a;margin:0;font-size:15px}.ai-chat-heading p{color:#8a9aaa;margin:4px 0 0;font-size:9px}.ai-chat-heading>span{color:#9aa7b4;font-size:8px}.ai-chat-scroll{scrollbar-width:thin;scrollbar-color:#cedae4 transparent;flex:1;min-height:0;padding:22px 28px;overflow-y:auto}.ai-welcome{background:linear-gradient(120deg,#f7fbfe,#f3f8fc);border:1px solid #e1ebf2;border-radius:10px;align-items:flex-start;gap:11px;padding:14px 16px;display:flex}.ai-welcome>span{color:#1780c5;background:#e4f3fc;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.ai-welcome b{color:#294358;font-size:12px}.ai-welcome p{color:#758797;margin:5px 0 0;font-size:10px}.ai-chat-scroll .preset-questions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 22px 45px;display:grid}.ai-chat-scroll .preset-questions button{color:#52738a;text-align:left;background:#fff;border:1px solid #dbe7ef;border-radius:7px;min-height:42px;padding:7px 10px;font-size:9px;line-height:1.45}.ai-chat-scroll .preset-questions button:hover{color:#0d6fae;background:#f5fbff;border-color:#9ecbe7;transform:translateY(-1px)}.ai-user-message{justify-content:flex-end;align-items:flex-start;gap:8px;margin:18px 0;display:flex}.ai-user-message p{color:#fff;background:#187dc0;border-radius:10px 3px 10px 10px;max-width:72%;margin:0;padding:10px 13px;font-size:10px;line-height:1.65}.ai-user-message span{color:#146ca7;background:#e6f1f8;border-radius:50%;flex:0 0 30px;place-items:center;height:30px;font-size:9px;font-weight:700;display:grid}.ai-chat-scroll .ai-message{align-items:flex-start;gap:9px;margin:0;display:flex}.ai-chat-scroll .ai-message>span{color:#0b7abd;background:#e5f4fb;flex:0 0 32px;height:32px}.ai-chat-scroll .ai-message>div{max-width:82%}.ai-chat-scroll .ai-message b{color:#52687a;margin:0 0 5px 2px;font-size:9px;display:block}.ai-chat-scroll .ai-message p{color:#344e62;white-space:pre-wrap;background:#f5f8fa;border:1px solid #e0e8ee;border-radius:3px 10px 10px;margin:0;padding:12px 14px;font-size:10px;line-height:1.75}.ai-chat-scroll .ai-error{color:#c84955;background:#fff5f6;border-color:#f0cbd0;margin:12px 0 0 41px}.ai-composer{background:#fff;border-top:1px solid #e9eef2;flex:0 0 84px;padding:11px 24px 9px}.ai-composer>div{background:#fbfdfe;border:1px solid #ccdbe6;border-radius:8px;align-items:center;gap:8px;height:42px;padding:0 5px 0 13px;display:flex;box-shadow:0 3px 10px #1a43600d}.ai-composer input{color:#30475b;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:10px}.ai-composer input::placeholder{color:#9ba9b5}.ai-composer button{color:#fff;background:#1681c7;border-radius:6px;place-items:center;width:32px;height:32px;display:grid}.ai-composer button:disabled,.ai-composer input:disabled{cursor:not-allowed;opacity:.5}.ai-composer>small{color:#a1adb8;text-align:center;margin-top:6px;font-size:7px;display:block}.ai-tech-modal{color:#c8dced;background:#06172b;border-color:#39b2ea61;box-shadow:0 0 0 1px #22d3ee14,0 34px 90px #000814ad,0 0 36px #1778b729}.ai-tech-modal:before{content:"";z-index:0;pointer-events:none;opacity:.16;background-image:linear-gradient(#379bd117 1px,#0000 1px),linear-gradient(90deg,#379bd117 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.ai-tech-modal>*{z-index:1;position:relative}.ai-tech-modal .ai-modal-header{background:linear-gradient(90deg,#081f37fa,#07182bfa);border-bottom-color:#498fbe2e;box-shadow:inset 0 -1px #22d3ee0f}.ai-tech-modal .ai-modal-header:after{content:"";background:linear-gradient(90deg, var(--cyan), transparent);width:110px;height:2px;position:absolute;bottom:-1px;left:20px;box-shadow:0 0 10px #22d3ee7a}.ai-tech-modal .ai-modal-brand>span{color:#5adfff;background:#22d3ee17;border:1px solid #22d3ee38;box-shadow:inset 0 0 12px #22d3ee0f}.ai-tech-modal .ai-history-panel{background:linear-gradient(#071d33fa,#051628fa);border-right-color:#508fb729}.ai-tech-modal .ai-new-chat{background:linear-gradient(90deg,#0878bb,#129bc7);border:1px solid #48c8ef42;box-shadow:0 7px 18px #0777b638,inset 0 1px #ffffff1f}.ai-tech-modal .ai-chat-heading{background:#071d33c2;border-bottom-color:#528fb524}.ai-tech-modal .ai-welcome{background:linear-gradient(110deg,#0e3e6094,#0827446b);border-color:#3095c933;box-shadow:inset 0 0 25px #22d3ee06}.ai-tech-modal .ai-chat-scroll .preset-questions button{color:#8ab1c7;background:#092641a8;border-color:#4590bc33}.ai-tech-modal .ai-chat-scroll .ai-message p{color:#b9d2e2;background:#0a2a46ad;border-color:#468eb82e;box-shadow:inset 0 0 18px #22d3ee05}.ai-tech-modal .ai-composer{background:#051526fa;border-top-color:#4d8bb329}.ai-tech-modal .ai-composer>div{background:#08233cd1;border-color:#3a92c247;box-shadow:0 0 0 1px #22d3ee06,0 5px 16px #0008123d}.ai-result-card{background:#051c32bf;border:1px solid #389dcf47;border-radius:9px;margin:15px 0 0 41px;overflow:hidden;box-shadow:0 9px 25px #00081238,inset 0 0 22px #22d3ee06}.ai-result-card>header{background:linear-gradient(90deg,#12476b6b,#08284433);border-bottom:1px solid #468bb329;justify-content:space-between;align-items:center;min-height:52px;padding:0 14px;display:flex}.ai-result-card>header div{flex-direction:column;display:flex}.ai-result-card>header b{color:#d9f3ff;font-size:11px}.ai-result-card>header small{color:#658aa2;margin-top:4px;font-size:7px}.ai-result-card>header>span{color:#ff9aa4;background:#ff5f6d14;border:1px solid #ff5f6d47;border-radius:10px;padding:4px 8px;font-size:8px}.ai-result-table{overflow-x:auto}.ai-result-head,.ai-result-table>button{text-align:left;grid-template-columns:42px 76px 76px 1.35fr 1fr 52px 70px;align-items:center;gap:7px;min-width:650px;padding:0 11px;display:grid}.ai-result-head{color:#577991;background:#0b2c498c;height:28px;font-size:7px}.ai-result-table>button{color:#7898ad;background:0 0;border-bottom:1px solid #4884a91a;width:100%;min-height:38px;font-size:8px}.ai-result-table>button:hover{background:#134f744d}.ai-result-table>button b{color:#c7deed;font-size:8px}.ai-result-table>button strong{color:#ffbd69;font-size:8px}.ai-result-table>button i{color:#64d9f4;white-space:nowrap;background:#22d3ee0f;border:1px solid #22d3ee33;border-radius:8px;justify-self:start;padding:3px 6px;font-style:normal}.ai-result-table em{border-radius:8px;justify-self:start;padding:3px 7px;font-style:normal}.ai-result-table .risk-高{color:#ff7c89;background:#ff5f6d1f}.ai-result-table .risk-中{color:#ffc064;background:#ffb5471c}.ai-result-card>footer{color:#6789a0;background:#05192d99;align-items:center;gap:18px;min-height:38px;padding:0 12px;font-size:8px;display:flex}.ai-result-card>footer b{color:#c7e4f2;margin-left:3px}.ai-result-card>footer button{color:#7fdcf3;background:#22d3ee0f;border:1px solid #22d3ee33;border-radius:4px;margin-left:auto;padding:5px 9px;font-size:8px}.drawer-mask.open{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#091e3047}.ai-tech-modal{color:#30495d;background:#f8fbfd;border:1px solid #2c6f98;box-shadow:0 0 0 1px #ffffffe6,0 28px 75px #051e3057,0 0 22px #1a7db21f}.ai-tech-modal:before{opacity:.22;background-image:linear-gradient(#236d970e 1px,#0000 1px),linear-gradient(90deg,#236d970e 1px,#0000 1px)}.ai-tech-modal .ai-modal-header{background:linear-gradient(90deg,#fff,#f3f8fb);border-bottom:1px solid #a9c2d2;box-shadow:inset 0 -1px #1873a40f}.ai-tech-modal .ai-modal-header:after{background:linear-gradient(90deg,#1688bd,#31c2dd,#0000);box-shadow:0 0 7px #2399c652}.ai-tech-modal .ai-modal-brand>span{color:#086b9d;width:44px;height:44px;box-shadow:none;background:0 0;border:0;border-radius:0}.ai-tech-modal .ai-modal-brand>span svg{stroke-width:2px;width:34px;height:34px}.ai-tech-modal .ai-modal-brand b{color:#173b55}.ai-tech-modal .ai-modal-brand small{color:#70889a}.ai-tech-modal .ai-modal-status{color:#3a7865;background:#effaf6;border-color:#a9d7c7}.ai-tech-modal .ai-modal-close{color:#627d90}.ai-tech-modal .ai-modal-close:hover{color:#163f5a;background:#e5eef4}.ai-tech-modal .ai-history-panel{background:linear-gradient(#eef4f7,#e7eef3);border-right:1px solid #a9c1d0}.ai-tech-modal .ai-new-chat{color:#fff;background:linear-gradient(90deg,#0d79ad,#1a9bc0);border:1px solid #0d719e;box-shadow:0 5px 13px #0b679733,inset 0 1px #fff3}.ai-tech-modal .ai-history-panel>p{color:#617b8c}.ai-tech-modal .ai-history-list button{color:#526b7d}.ai-tech-modal .ai-history-list button:hover,.ai-tech-modal .ai-history-list button.active{color:#164f70;background:#fff;border:1px solid #a5c7d8;box-shadow:inset 3px 0 #168fbd,0 3px 9px #14496814}.ai-tech-modal .ai-history-list small{color:#8999a5}.ai-tech-modal .ai-data-ready{color:#23815f;background:#f3fbf8;border-color:#a9cfc1}.ai-tech-modal .ai-data-ready b{color:#346858}.ai-tech-modal .ai-data-ready small{color:#729486}.ai-tech-modal .ai-chat-panel{background:radial-gradient(circle at 90% 0,#168fbf12,#0000 32%),#fffffff5}.ai-tech-modal .ai-chat-heading{background:#f7fbfdeb;border-bottom:1px solid #b6c9d5}.ai-tech-modal .ai-chat-heading h3{color:#173d58}.ai-tech-modal .ai-chat-heading p{color:#738a9b}.ai-tech-modal .ai-chat-heading>span{color:#8496a3}.ai-tech-modal .ai-chat-scroll{scrollbar-color:#9dbdce transparent}.ai-tech-modal .ai-welcome{background:linear-gradient(110deg,#f4fafc,#edf6fa);border:1px solid #a8c8d9;box-shadow:inset 0 0 20px #1f85b309}.ai-tech-modal .ai-welcome>span{color:#0879a9;background:#e7f6fb;border:1px solid #a4cbdd}.ai-tech-modal .ai-welcome b{color:#294a60}.ai-tech-modal .ai-welcome p{color:#718798}.ai-tech-modal .ai-chat-scroll .preset-questions button{color:#456b82;background:#fff;border:1px solid #b2cad7;box-shadow:0 2px 6px #13415c0a}.ai-tech-modal .ai-chat-scroll .preset-questions button:hover{color:#075f8c;background:#f1f9fc;border-color:#318eb7;box-shadow:0 4px 11px #1368941f}.ai-tech-modal .ai-user-message p{color:#fff;background:linear-gradient(135deg,#177fac,#126690);border:1px solid #0b6696;box-shadow:0 5px 13px #08466833}.ai-tech-modal .ai-user-message span{color:#176b94;background:#e8f4f9;border:1px solid #a7cadb}.ai-tech-modal .ai-chat-scroll .ai-message>span{color:#0878a8;background:#e7f5fa;border:1px solid #9fc8da}.ai-tech-modal .ai-chat-scroll .ai-message b{color:#527184}.ai-tech-modal .ai-chat-scroll .ai-message p{color:#304b5e;background:#f5f8fa;border:1px solid #b8cbd6;box-shadow:inset 0 0 14px #17668f06}.ai-tech-modal .ai-chat-scroll .ai-error{color:#bd3e49;background:#fff3f4;border-color:#e8b7bd}.ai-tech-modal .ai-composer{background:#f8fbfc;border-top:1px solid #adc3d0}.ai-tech-modal .ai-composer>div{background:#fff;border:1px solid #8dafc1;box-shadow:0 3px 10px #14415c14}.ai-tech-modal .ai-composer>div:focus-within{border-color:#1684b3;box-shadow:0 0 0 2px #1684b31a}.ai-tech-modal .ai-composer input{color:#29485d}.ai-tech-modal .ai-composer input::placeholder{color:#8b9ba7}.ai-tech-modal .ai-composer button{background:linear-gradient(135deg,#1087b5,#176da5);box-shadow:0 3px 9px #0f6b9b33}.ai-tech-modal .ai-composer>small{color:#82929e}.ai-tech-modal .ai-result-card{background:#fff;border:1px solid #83aabd;box-shadow:0 7px 20px #1546611f,inset 0 0 18px #1a82ae06}.ai-tech-modal .ai-result-card>header{background:linear-gradient(90deg,#edf7fb,#f8fbfd);border-bottom:1px solid #abc3d0}.ai-tech-modal .ai-result-card>header b{color:#214c65}.ai-tech-modal .ai-result-card>header small{color:#728b9b}.ai-tech-modal .ai-result-card>header>span{color:#c1424e;background:#fff0f2;border-color:#e3a8ae}.ai-tech-modal .ai-result-head{color:#526f82;background:#eaf1f5;border-bottom:1px solid #aebfca}.ai-tech-modal .ai-result-table>button{color:#637d8d;border-bottom-color:#d2dee5}.ai-tech-modal .ai-result-table>button:hover{background:#f0f7fa}.ai-tech-modal .ai-result-table>button b{color:#294b60}.ai-tech-modal .ai-result-table>button strong{color:#b66b15}.ai-tech-modal .ai-result-table>button i{color:#096c96;background:#edf8fb;border-color:#9cc8d9}.ai-tech-modal .ai-result-card>footer{color:#617c8d;background:#f4f8fa;border-top:1px solid #c1d0d9}.ai-tech-modal .ai-result-card>footer b{color:#254e65}.ai-tech-modal .ai-result-card>footer button{color:#075f87;background:#eaf7fa;border-color:#8ebccd}.toast{z-index:100;color:#e9f7ff;background:#041d34f0;border:1px solid #22d3ee59;border-radius:5px;padding:9px 18px;font-size:11px;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000040}@media (width<=1560px){.brand p,.breadcrumb,.screen-button span{display:none}.header-actions{gap:6px}.search-box{width:150px}.content-grid{grid-template-columns:235px minmax(500px,1fr) 255px}.kpi-item{padding-left:9px;padding-right:9px}.kpi-icon-wrap{flex-basis:34px;height:34px}.kpi-icon{width:21px}.kpi-copy strong{font-size:22px}.bottom-grid{flex-basis:226px}.alert-list button{grid-template-columns:34px 58px 1fr 10px}}@media (height<=900px){.kpi-strip{flex-basis:92px}.kpi-item{padding-top:9px}.kpi-icon{width:22px}.bottom-grid{flex-basis:212px}.card-header{flex-basis:34px;min-height:34px}}.energy-module{color:#eaf4ff;flex:1;grid-template-columns:190px minmax(0,1fr);gap:14px;min-height:0;display:grid}.energy-nav{background:#071222e0;border:1px solid #489dd22e;border-radius:10px;flex-direction:column;min-height:0;padding:16px 12px;display:flex;box-shadow:inset 0 1px #ffffff08,0 12px 28px #00071333}.energy-logo{border-bottom:1px solid #7f9dbd1f;align-items:center;gap:11px;padding-bottom:16px;display:flex}.energy-logo>span{color:#061426;background:linear-gradient(135deg,#17f0d0,#11badb);border-radius:12px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 0 18px #17f0d03d}.energy-logo b{font-size:13px;display:block}.energy-logo small{color:#6e85a0;margin-top:3px;font-size:9px;display:block}.energy-nav-group{gap:6px;margin-top:18px;display:grid}.energy-nav-group p{color:#607a96;margin:0 0 2px;font-size:10px;font-weight:650}.energy-nav-group button{color:#768da8;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:9px;height:38px;padding:0 10px;font-size:12px;display:flex}.energy-nav-group button:hover,.energy-nav-group button.active{color:#18e6c9;background:#18e6c91f;border-color:#18e6c940;box-shadow:inset 3px 0 #18e6c9d9}.energy-status{color:#91a8bd;border-top:1px solid #7f9dbd1f;margin-top:auto;padding-top:14px;font-size:10px}.energy-status span{background:#18e6c9;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 10px #18e6c9b3}.energy-workbench{min-width:0;min-height:0;padding:8px 6px 14px 2px;overflow:auto}.energy-page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.energy-page-head h2{margin:0;font-size:25px;line-height:1}.energy-page-head p{color:#7891ad;margin:8px 0 0;font-size:12px}.energy-refresh,.pricing-add,.add-meter{color:#e8f7ff;background:#0d1f37db;border:1px solid #7f9dbd29;border-radius:8px;align-items:center;gap:7px;height:34px;padding:0 13px;display:inline-flex;box-shadow:inset 0 1px #ffffff09}.add-meter,.pricing-add{color:#06222a;background:linear-gradient(135deg,#1df2d2,#12c7dc);border:0;font-weight:700}.energy-view{gap:14px;min-height:0;display:grid}.energy-metrics{gap:12px;display:grid}.energy-metrics.four{grid-template-columns:repeat(4,minmax(0,1fr))}.energy-metrics.five{grid-template-columns:repeat(5,minmax(0,1fr))}.energy-metric{background:#0b1b31d6;border:1px solid #489dd22e;border-top-color:#18e6c98c;border-radius:10px;min-height:82px;padding:16px;box-shadow:inset 0 1px #ffffff06}.energy-metric span{color:#7c92ad;font-size:11px;font-weight:650;display:block}.energy-metric strong{color:#eaf4ff;margin-top:8px;font-family:Bahnschrift,DIN,sans-serif;font-size:28px;line-height:1;display:inline-block}.energy-metric small{color:#728aa5;margin-top:6px;font-size:10px;display:block}.energy-metric.tone-green strong,.energy-metric.tone-cyan strong{color:#18e6c9}.energy-metric.tone-blue strong{color:#58a6ff}.energy-metric.tone-orange strong{color:#ffb547}.energy-metric.tone-red strong{color:#ff5f6d}.energy-panel{background:#0b1b31d6;border:1px solid #489dd22e;border-radius:10px;min-width:0;min-height:0;padding:16px;box-shadow:inset 0 1px #ffffff06,0 10px 24px #00071329}.energy-panel>header{justify-content:space-between;align-items:center;height:24px;margin-bottom:12px;display:flex}.energy-panel h3{color:#e8f3ff;margin:0;font-size:13px}.energy-panel>header span{color:#18e6c9;background:#18e6c91a;border-radius:12px;padding:3px 9px;font-size:10px;font-weight:700}.energy-main-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:14px;display:grid}.span-2{grid-column:span 1}.line-visual{background-image:linear-gradient(#7f9dbd14 1px,#0000 1px),linear-gradient(90deg,#7f9dbd14 1px,#0000 1px);background-size:100% 20%,8.33% 100%;border-radius:8px;height:270px;position:relative}.line-visual svg{width:calc(100% - 20px);height:calc(100% - 26px);position:absolute;inset:8px 10px 18px;overflow:visible}.line-visual polyline{fill:none;stroke:#13c7e8;stroke-width:1.8px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 6px #13c7e88c)}.line-visual span{color:#738da8;font-size:10px;position:absolute;bottom:2px;left:8px}.energy-alert-list{gap:10px;display:grid}.energy-alert{text-align:left;color:#bccbe0;background:#15233adb;border-left:3px solid #ffb547;border-radius:8px;grid-template-columns:1fr 72px;align-items:center;gap:10px;min-height:52px;padding:10px 12px;display:grid}.energy-alert.level-高{border-left-color:#ff5f6d}.energy-alert.level-低{border-left-color:#18e6c9}.energy-alert small{color:#7189a3;margin-top:3px;display:block}.energy-alert time{color:#6f849d;text-align:right;font-size:10px}.realtime-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.reading-card{background:#18273ed1;border:1px solid #7f9dbd1a;border-radius:8px;min-height:84px;padding:12px}.reading-card span{color:#d7e5f5;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.reading-card small{color:#7189a3;margin-top:6px;font-size:10px;display:block}.reading-card strong{color:#18e6c9;margin-top:10px;font-size:22px;display:block}.reading-card em{color:#7189a3;margin-left:4px;font-size:11px;font-style:normal}.energy-toolbar{flex-wrap:wrap;gap:8px;display:flex}.energy-toolbar button{color:#7891ad;background:#0c1c33d1;border:1px solid #7f9dbd21;border-radius:8px;min-width:66px;height:34px;padding:0 14px}.energy-toolbar button.active{color:#18e6c9;background:#18e6c91f;border-color:#18e6c952}.energy-analysis-layout{grid-template-columns:210px minmax(0,1fr);gap:14px;display:grid}.analysis-content{gap:14px;display:grid}.space-tree{gap:6px;display:grid}.space-tree button{color:#7d93ad;text-align:left;background:0 0;border-radius:6px;justify-content:space-between;align-items:center;height:32px;display:flex}.space-tree button.active{color:#18e6c9;background:#18e6c91f;box-shadow:inset 0 0 0 1px #18e6c933}.space-tree em{color:#6d829d;background:#7f9dbd14;border-radius:4px;margin-right:8px;padding:2px 6px;font-size:9px;font-style:normal}.energy-insight{color:#b5c8dd;background:#0d2d346b;border:1px solid #18e6c92e;border-radius:10px;padding:13px 16px}.energy-insight b{color:#18e6c9}.donut-visual{align-content:center;justify-items:center;gap:16px;min-height:270px;display:grid}.donut-visual i{background:radial-gradient(circle, #0b1b31 0 43%, transparent 44%), conic-gradient(#18e6c9 0 86%, #15a8d9 86% 90%, #3b82f6 90% 95%, #ffb547 95% 100%);border-radius:50%;width:154px;height:154px;box-shadow:0 0 22px #18e6c921}.donut-visual div{color:#7891ad;flex-wrap:wrap;justify-content:center;gap:10px;font-size:10px;display:flex}.donut-visual span:before{content:"";background:#18e6c9;border-radius:2px;width:8px;height:8px;margin-right:5px;display:inline-block}.energy-bars{background-image:linear-gradient(#7f9dbd14 1px,#0000 1px);background-size:100% 20%;border-radius:8px;align-items:end;gap:14px;height:250px;padding:16px 18px 28px;display:flex}.energy-bars span{flex:1;justify-content:center;align-items:end;height:100%;display:flex;position:relative}.energy-bars i{background:linear-gradient(#18e6c9,#18e6c961);border-radius:7px 7px 2px 2px;width:100%;max-width:54px}.energy-bars .bar-cyan{background:linear-gradient(#13c7e8,#13c7e857)}.energy-bars .bar-blue{background:linear-gradient(#58a6ff,#58a6ff57)}.energy-bars .bar-orange{background:linear-gradient(#ffb547,#ffb54757)}.energy-bars .bar-red{background:linear-gradient(#ff5f6d,#ff5f6d57)}.energy-bars .bar-purple{background:linear-gradient(#8b7cf6,#8b7cf657)}.energy-bars em{color:#7189a3;white-space:nowrap;font-size:9px;font-style:normal;position:absolute;bottom:-23px}.load-bars{background-image:linear-gradient(#7f9dbd14 1px,#0000 1px);background-size:100% 20%;align-items:end;gap:7px;height:250px;padding:22px 6px 18px;display:flex}.load-bars i{background:#7f9dbd29;border-radius:6px;flex:1;height:42%}.load-bars i.active{background:linear-gradient(#18e6c9,#18e6c975);height:86%}.meter-filters{flex-wrap:wrap;gap:10px;display:flex}.meter-filters label,.meter-filters button{color:#7891ad;background:#0c1c33d1;border:1px solid #7f9dbd21;border-radius:8px;align-items:center;gap:8px;height:34px;padding:0 12px;display:inline-flex}.meter-filters label{width:270px}.meter-filters input{color:#d8e9f7;background:0 0;border:0;outline:0;width:100%;min-width:0}.meter-grid,.pricing-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.meter-card,.pricing-card{background:#0b1b31d6;border:1px solid #489dd224;border-radius:10px;min-height:178px;padding:16px}.meter-card header,.pricing-card header{justify-content:space-between;gap:10px;display:flex}.meter-card h3,.pricing-card h3{color:#e9f4ff;margin:0;font-size:14px}.meter-card header span,.pricing-card>span{color:#18e6c9;background:#18e6c921;border-radius:10px;padding:3px 8px;font-size:10px;font-weight:700}.meter-card p,.pricing-card p,.pricing-card small{color:#7189a3;margin:7px 0 0;font-size:11px}.meter-body{grid-template-columns:56px 1fr;align-items:center;gap:16px;margin-top:16px;display:grid}.meter-ring{background:radial-gradient(circle, #0b1b31 0 58%, transparent 59%), conic-gradient(#18e6c9 var(--meter-load), #7f9dbd24 0);border-radius:50%;place-items:center;width:52px;height:52px;display:grid}.meter-ring b{color:#dff8ff;font-size:13px}.meter-card dl{gap:5px;margin:0;display:grid}.meter-card dl div{justify-content:space-between;gap:10px;display:flex}.meter-card dt{color:#7189a3}.meter-card dd{color:#d8e7f8;margin:0}.meter-在线{color:#18e6c9!important}.meter-离线{color:#7189a3!important}.meter-告警{color:#ffb547!important}.meter-card footer,.pricing-card footer{border-top:1px solid #7f9dbd1a;gap:8px;margin-top:14px;padding-top:12px;display:flex}.meter-card footer button,.pricing-card footer button{color:#dbeeff;background:0 0;border:1px solid #7f9dbd21;border-radius:8px;height:27px;padding:0 12px;font-size:11px}.meter-card footer .danger,.pricing-card footer .danger{color:#ff5f6d;border-color:#ff5f6d40}.pricing-card{min-height:164px;position:relative}.pricing-card>span{position:absolute;top:16px;right:16px}.pricing-card strong{color:#18e6c9;margin-top:16px;font-family:Bahnschrift,DIN,sans-serif;font-size:30px;display:block}.pricing-card em{color:#7891ad;margin-left:3px;font-size:12px;font-style:normal}.alert-rule-grid{grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:14px;display:grid}.threshold-list{gap:10px;display:grid}.threshold-list button{color:#b8cada;text-align:left;background:#15233adb;border-radius:8px;grid-template-columns:22px 1fr 32px;align-items:center;gap:10px;min-height:46px;padding:0 12px;display:grid}.threshold-list em{color:#ffb547;text-align:right;font-style:normal}.closure-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.closure-steps span{color:#7891ad;background:#15233ab3;border:1px solid #7f9dbd21;border-radius:8px;place-items:center;height:46px;display:grid}.closure-steps span.done{color:#18e6c9;background:#18e6c91a;border-color:#18e6c938}.ledger-page{color:#213247;background:#eef4fa;flex-direction:column;flex:1;gap:12px;min-height:0;margin:-12px;padding:16px;display:flex;overflow:auto}.ledger-page-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ledger-page-head h2{color:#173b63;margin:0;font-size:24px}.ledger-page-head p{color:#6b7f95;margin:6px 0 0;font-size:13px}.ledger-head-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ledger-head-actions button,.ledger-query,.ledger-reset,.ledger-view-actions button,.ledger-pagination button,.ledger-pagination select{color:#38546f;background:#fff;border:1px solid #d6e2ee;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:12px;display:inline-flex}.ledger-head-actions .primary,.ledger-query,.ledger-form-drawer .primary,.ledger-import-dialog .primary{color:#fff;background:#1764b4;border-color:#1764b4}.ledger-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.ledger-summary button{text-align:left;background:linear-gradient(145deg,#0f3158,#0a2240);border:1px solid #d9e5f0;border-radius:12px;grid-template-columns:42px 1fr;align-items:center;gap:10px;min-height:92px;padding:13px;display:grid;box-shadow:0 8px 18px #2f56781f}.ledger-summary button.active{outline-offset:1px;outline:2px solid #34a2ff}.ledger-summary button>span{color:#86d8ff;background:#2e89d62e;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.ledger-summary small{color:#9db7d0;font-size:12px}.ledger-summary strong{color:#f1f7ff;margin-top:6px;font-size:28px;line-height:1;display:block}.ledger-summary em{color:#bdd0e2;margin-left:4px;font-size:12px;font-style:normal}.ledger-summary p{color:#85a1bb;margin:6px 0 0;font-size:11px}.ledger-filter-card,.ledger-view-toolbar,.ledger-table-card,.ledger-map-layout,.ledger-panel-card{background:#fff;border:1px solid #d8e4ef;border-radius:12px;box-shadow:0 8px 20px #2f567814}.ledger-filter-card{padding:12px}.ledger-filter-row{flex-wrap:wrap;gap:8px;display:flex}.ledger-search,.ledger-select,.ledger-advanced label{color:#5f748b;background:#f8fbfe;border:1px solid #d8e4ef;border-radius:8px;align-items:center;gap:7px;height:34px;padding:0 10px;font-size:12px;display:inline-flex}.ledger-search{flex:1;min-width:320px}.ledger-search input,.ledger-select select,.ledger-advanced input,.ledger-advanced select{color:#203044;background:0 0;border:0;outline:0;min-width:0}.ledger-select select{appearance:none;min-width:86px}.ledger-advanced-toggle{color:#1764b4;background:#eef7ff;border:1px solid #c9def1;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:12px;display:inline-flex}.ledger-advanced-toggle.active{color:#fff;background:#1764b4}.ledger-advanced{opacity:0;flex-wrap:wrap;gap:8px;max-height:0;transition:max-height .28s,opacity .22s,margin-top .22s;display:flex;overflow:hidden}.ledger-advanced.open{opacity:1;max-height:190px;margin-top:10px}.ledger-advanced label>span,.ledger-select>span{color:#6a7f94;white-space:nowrap}.ledger-advanced input{width:72px}.ledger-filter-chips{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.ledger-filter-chips button{color:#1764b4;background:#e9f4ff;border-radius:14px;align-items:center;gap:4px;height:26px;padding:0 9px;font-size:11px;display:inline-flex}.ledger-filter-chips .clear{color:#7a8795;background:#f1f4f7}.ledger-view-toolbar{justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:8px 12px;display:flex}.ledger-view-toolbar b{color:#1f3854;font-size:14px}.ledger-view-toolbar span{color:#6e8196;margin-left:12px;font-size:12px}.ledger-view-actions{gap:7px;display:flex}.ledger-view-actions button.active{color:#1764b4;background:#edf7ff;border-color:#bcd9f3}.ledger-batch-bar{z-index:5;color:#1f3854;background:#edf7ff;border:1px solid #bcd9f3;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;padding:8px 12px;display:flex;position:sticky;top:0}.ledger-batch-bar button{color:#1764b4;background:#fff;border:1px solid #c9def1;border-radius:7px;height:28px;padding:0 9px}.ledger-batch-bar .ghost{color:#6e8196}.ledger-table-card{min-height:0;overflow:hidden}.ledger-table-scroll{min-height:360px;max-height:calc(100vh - 392px);overflow:auto}.ledger-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max(100%,2080px);font-size:12px}.ledger-table th,.ledger-table td{color:#33485e;white-space:nowrap;background:#fff;border-bottom:1px solid #edf2f7;height:44px;padding:0 10px}.ledger-table th{z-index:3;color:#60758a;text-align:left;background:#f7fbff;font-weight:650;position:sticky;top:0}.ledger-table tbody tr:hover td{background:#f6fbff}.ledger-table .fixed{z-index:2;position:sticky}.ledger-table th.fixed{z-index:4}.ledger-table .check{width:42px;min-width:42px;left:0}.ledger-table .photo{width:56px;min-width:56px;left:42px}.ledger-table .code{width:112px;min-width:112px;left:98px}.ledger-table .name{width:130px;min-width:130px;left:210px}.ledger-table .right-fixed{z-index:2;width:188px;min-width:188px;position:sticky;right:0;box-shadow:-8px 0 14px #54708c14}.ledger-table th.right-fixed{z-index:4;background:#f7fbff}.ledger-table img{background:#eef5fb;border-radius:7px;width:32px;height:32px;padding:5px}.ledger-table .sort{color:inherit;background:0 0;align-items:center;gap:3px;display:inline-flex}.ledger-table .sort.active{color:#1764b4}.ledger-table .actions{align-items:center;gap:5px;display:flex}.ledger-table .actions button{color:#1764b4;background:#eef7ff;border-radius:6px;height:26px;padding:0 7px;font-size:11px}.ledger-table .actions .more{position:relative}.ledger-table .actions .more span{z-index:8;color:#435a72;text-align:left;background:#fff;border:1px solid #d8e4ef;border-radius:8px;width:120px;padding:8px;line-height:1.9;display:none;position:absolute;top:30px;right:0;box-shadow:0 10px 24px #2f567829}.ledger-table .actions .more:hover span{display:block}.ledger-tag{border-radius:12px;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:650;display:inline-flex}.tag-green{color:#138a53;background:#e5f7ef}.tag-orange{color:#b66a00;background:#fff2df}.tag-red{color:#ce3f4a;background:#ffedf0}.tag-blue{color:#1764b4;background:#e9f4ff}.tag-gray{color:#708090;background:#eef2f6}.ledger-pagination{color:#667b91;background:#fbfdff;justify-content:flex-end;align-items:center;gap:10px;min-height:46px;padding:8px 12px;display:flex}.ledger-card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.ledger-asset-card{background:#fff;border:1px solid #d8e4ef;border-radius:12px;flex-direction:column;min-height:360px;display:flex;overflow:hidden;box-shadow:0 8px 20px #2f567814}.asset-cover{background:linear-gradient(145deg,#0f3158,#0a2240);place-items:center;height:120px;display:grid;position:relative}.asset-cover img{background:#ffffff1f;border-radius:12px;width:54px;height:54px;padding:10px}.asset-cover .ledger-tag{position:absolute;top:12px;right:12px}.asset-card-body{flex:1;padding:14px}.asset-card-body>span{color:#6d8196;font-size:12px}.asset-card-body h3{color:#1f3854;margin:5px 0 4px;font-size:16px}.asset-card-body p{color:#718398;margin:0 0 12px;font-size:12px}.asset-card-body dl{gap:8px;margin:0;display:grid}.asset-card-body div{justify-content:space-between;gap:10px;display:flex}.asset-card-body dt{color:#7b8fa4}.asset-card-body dd{color:#253a52;text-overflow:ellipsis;white-space:nowrap;max-width:140px;margin:0;overflow:hidden}.ledger-asset-card>button{color:#1764b4;background:#edf7ff;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:40px;margin:0 14px 14px;display:flex}.ledger-map-layout{grid-template-columns:minmax(0,1fr) 340px;gap:12px;min-height:560px;padding:12px;display:grid}.ledger-map-card{background:#071a2c;border-radius:10px;position:relative;overflow:hidden}.ledger-map-card>img{object-fit:cover;filter:brightness(.82)saturate(1.08);width:100%;height:100%}.ledger-map-card:after{content:"";pointer-events:none;background:radial-gradient(#0000 45%,#020c1847);position:absolute;inset:0}.ledger-map-region{z-index:2;color:#dff8ff;background:#051f3ac2;border:1px solid #22d3ee6b;border-radius:8px;padding:7px 12px;position:absolute}.ledger-map-region.garden{top:18%;right:18%}.ledger-map-region.courtyard{top:24%;left:18%}.ledger-map-point{z-index:3;background:#35d49a;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 6px #35d49a2e,0 0 12px #35d49acc}.ledger-map-point.point-提醒{background:#ffb547;box-shadow:0 0 0 6px #ffb5472e,0 0 12px #ffb547cc}.ledger-map-point.point-风险,.ledger-map-point.point-严重风险{background:#ff5f6d;box-shadow:0 0 0 6px #ff5f6d2e,0 0 12px #ff5f6dcc}.ledger-map-point.active{background:#3b82f6;width:19px;height:19px}.ledger-map-pop{z-index:4;color:#eaf4ff;background:#051f3ae6;border:1px solid #22d3ee61;border-radius:8px;width:180px;padding:12px;position:absolute;top:34%;left:42%}.ledger-map-pop b,.ledger-map-pop span{display:block}.ledger-map-pop span{color:#9db8d0;margin:5px 0 8px;font-size:11px}.ledger-map-pop button{color:#fff;background:#1764b4;border-radius:6px;width:100%;height:28px;margin-top:8px}.ledger-map-list{border-left:1px solid #d8e4ef;padding-left:12px;overflow:auto}.ledger-map-list h3{color:#203044;margin:0 0 10px}.ledger-map-list button{color:#486078;text-align:left;background:0 0;border-radius:8px;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;width:100%;min-height:62px;padding:9px;display:grid}.ledger-map-list button.active,.ledger-map-list button:hover{background:#edf7ff}.ledger-map-list b,.ledger-map-list small{display:block}.ledger-map-list small{color:#7f91a5;margin-top:3px}.ledger-drawer-mask{z-index:80;inset:var(--topbar-height,64px) 0 0 0;background:#111d2c57;position:fixed}.ledger-modal-mask{z-index:90;background:#111d2c57;position:fixed;inset:0}.ledger-detail-drawer,.ledger-form-drawer,.validation-panel,.operation-log-drawer{color:#213247;background:#fff;position:absolute;top:0;bottom:0;right:0;overflow:auto;box-shadow:-14px 0 34px #17304a2e}.ledger-detail-drawer{width:min(70vw,1120px)}.ledger-form-drawer{width:min(62vw,880px)}.validation-panel,.operation-log-drawer{width:min(440px,88vw)}.detail-hero{background:#f7fbff;border-bottom:1px solid #e4edf5;grid-template-columns:180px 1fr auto;gap:18px;min-height:170px;padding:22px;display:grid}.detail-hero img{background:linear-gradient(145deg,#0f3158,#0a2240);border-radius:12px;width:180px;height:126px;padding:28px}.detail-hero h2{color:#1f3854;margin:6px 0}.detail-hero p,.detail-hero span{color:#718398}.detail-tags{gap:8px;margin-top:10px;display:flex}.detail-actions{align-items:flex-start;gap:8px;display:flex}.detail-actions button,.ledger-form-drawer header button,.validation-panel header button,.operation-log-drawer header button{color:#1764b4;background:#fff;border:1px solid #c9def1;border-radius:8px;align-items:center;gap:6px;height:32px;padding:0 10px;display:inline-flex}.detail-actions .close{justify-content:center;width:32px;padding:0}.detail-tabs{border-bottom:1px solid #e4edf5;gap:4px;padding:10px 22px 0;display:flex}.detail-tabs button{color:#61778e;background:0 0;border-bottom:2px solid #0000;height:40px;padding:0 16px}.detail-tabs button.active{color:#1764b4;border-bottom-color:#1764b4}.detail-content{padding:22px}.detail-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.detail-info-grid div{background:#fbfdff;border:1px solid #e1eaf3;border-radius:10px;min-height:62px;padding:12px}.detail-info-grid span{color:#7d8fa3;font-size:12px;display:block}.detail-info-grid b{color:#243950;text-overflow:ellipsis;white-space:nowrap;margin-top:7px;display:block;overflow:hidden}.ledger-form-drawer header,.validation-panel header,.operation-log-drawer header{z-index:6;background:#fff;border-bottom:1px solid #e4edf5;justify-content:space-between;align-items:center;gap:14px;padding:20px;display:flex;position:sticky;top:0}.ledger-form-drawer header button,.validation-panel header button,.operation-log-drawer header button{flex:0 0 34px;justify-content:center;width:34px;padding:0}.ledger-form-drawer header>div,.validation-panel header>div,.operation-log-drawer header>div{min-width:0}.ledger-form-drawer header span,.validation-panel header span,.operation-log-drawer header span{color:#718398;font-size:12px}.ledger-form-drawer header h2,.validation-panel header h2,.operation-log-drawer header h2{color:#1f3854;margin:5px 0 0}.form-steps{border-bottom:1px solid #e4edf5;grid-template-columns:repeat(6,1fr);gap:6px;padding:14px 20px;display:grid}.form-steps button{color:#7b8fa4;background:#f3f7fb;border-radius:8px;place-items:center;height:46px;display:grid}.form-steps button.active,.form-steps button.done{color:#1764b4;background:#edf7ff}.form-steps span{font-size:10px}.ledger-form-body{padding:20px}.ledger-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.ledger-form-grid label{gap:7px;display:grid}.ledger-form-grid span{color:#61778e;font-size:12px}.ledger-form-grid input,.ledger-form-grid select{color:#203044;background:#fbfdff;border:1px solid #d8e4ef;border-radius:8px;height:36px;padding:0 10px}.form-errors{gap:6px;margin-top:16px;display:grid}.form-errors span{color:#bf3b48;background:#fff0f2;border-radius:8px;padding:8px 10px}.form-confirm{background:#fbfdff;border:1px solid #d8e4ef;border-radius:12px;padding:18px}.ledger-form-drawer footer,.ledger-import-dialog footer{background:#fff;border-top:1px solid #e4edf5;justify-content:flex-end;gap:10px;padding:14px 20px;display:flex;position:sticky;bottom:0}.ledger-form-drawer footer button,.ledger-import-dialog footer button{background:#fff;border:1px solid #d8e4ef;border-radius:8px;height:34px;padding:0 14px}.ledger-import-dialog{color:#213247;background:#fff;border-radius:14px;width:560px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 50px #17304a33}.ledger-import-dialog header{border-bottom:1px solid #e4edf5;justify-content:space-between;padding:18px 20px;display:flex}.ledger-import-dialog h2{margin:0}.ledger-import-dialog header button{background:0 0}.ledger-import-dialog .template{color:#1764b4;background:#edf7ff;border-radius:8px;height:34px;margin:18px 20px 0;padding:0 12px}.drop-zone{color:#61778e;background:#f8fbfe;border:1px dashed #a9c7e3;border-radius:12px;place-items:center;gap:6px;min-height:150px;margin:14px 20px;display:grid}.drop-zone b,.drop-zone span{display:block}.import-progress,.import-result{background:#f3f7fb;border-radius:10px;margin:0 20px 14px;padding:12px}.import-progress i{background:#d8e4ef;border-radius:4px;height:6px;margin-bottom:8px;display:block;overflow:hidden}.import-progress i:after{content:"";background:#1764b4;width:30%;height:100%;display:block}.import-progress.done i:after{width:100%}.import-result{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.import-result span,.import-result button{background:#fff;border-radius:8px;place-items:center;min-height:48px;display:grid}.import-result b{color:#1764b4;font-size:20px}.validation-summary{grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 20px;display:grid}.validation-summary span{text-align:center;background:#f4f8fc;border-radius:10px;padding:10px}.validation-summary b{color:#1764b4;font-size:22px;display:block}.validation-list,.log-list{gap:10px;padding:0 20px 20px;display:grid}.validation-list button{color:#33485e;text-align:left;background:#fbfdff;border:1px solid #e1eaf3;border-radius:10px;grid-template-columns:24px 1fr 64px;align-items:center;gap:10px;min-height:70px;padding:12px;display:grid}.validation-list small{color:#7d8fa3;margin-top:4px;display:block}.validation-list em{color:#b66a00;text-align:right;font-size:11px;font-style:normal}.log-list div{background:#fbfdff;border:1px solid #e1eaf3;border-radius:10px;padding:13px}.log-list p{color:#526b84;margin:6px 0}.log-list span{color:#8495a6;font-size:12px}@media (width<=1560px){.ledger-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.ledger-table-scroll{max-height:calc(100vh - 455px)}.meter-grid,.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.realtime-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1380px){.ledger-head-actions{justify-content:flex-start}.ledger-map-layout{grid-template-columns:1fr}.detail-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-detail-drawer{width:min(78vw,1080px)}}.smart-community-app{color:#172033;background:linear-gradient(135deg,#e3f4fff2,#f7fafcf5 45%,#f0f7ebf2),#f6f8fb;grid-template-columns:76px 1fr;min-height:100vh;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;display:grid}.smart-community-app button,.smart-community-app input,.smart-community-app select{font:inherit}.smart-sidebar{color:#446078;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:3;background:#ffffffc7;border-right:1px solid #63849e2e;flex-direction:column;justify-content:space-between;align-items:center;height:100vh;padding:18px 0;display:flex;position:sticky;top:0}.smart-sidebar nav{gap:12px;display:grid}.smart-sidebar button{width:42px;height:42px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.smart-sidebar button:hover,.smart-sidebar button.active{color:#0f6fde;background:#e8f2ff;box-shadow:inset 0 0 0 1px #0f6fde1f}.smart-main{min-width:0;padding:20px 24px 26px}.smart-header{justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:16px;display:flex}.smart-eyebrow{color:#0f8f72;letter-spacing:0;margin-bottom:6px;font-size:12px;font-weight:800;display:inline-flex}.smart-header h1{color:#122033;margin:0;font-size:clamp(24px,2.2vw,34px);line-height:1.12}.smart-header p{color:#62748a;margin:8px 0 0;font-size:14px}.smart-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.smart-search,.smart-select,.smart-export{color:#425670;background:#ffffffe6;border:1px solid #728aa33d;border-radius:8px;align-items:center;gap:8px;height:40px;padding:0 12px;display:inline-flex;box-shadow:0 8px 24px #384b6014}.smart-search input{color:#172033;background:0 0;border:0;outline:0;width:min(24vw,280px);min-width:180px}.smart-select select{color:#172033;appearance:none;background:0 0;border:0;outline:0;min-width:92px}.smart-export{color:#fff;cursor:pointer;background:#0f6fde;border:0}.smart-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.smart-kpi{text-align:left;cursor:pointer;background:#ffffffe0;border:1px solid #728aa333;border-radius:8px;grid-template-rows:auto auto 1fr;grid-template-columns:auto 1fr;align-items:start;gap:6px 10px;min-height:116px;padding:14px;display:grid;box-shadow:0 16px 36px #384b6017}.smart-kpi span{background:var(--tone-bg);width:40px;height:40px;color:var(--tone);border-radius:8px;grid-row:span 2;place-items:center;display:grid}.smart-kpi small{color:#63758a;align-self:center;font-size:13px}.smart-kpi strong{color:#172033;font-size:27px;line-height:1}.smart-kpi em{color:#6c7e92;margin-left:4px;font-size:12px;font-style:normal}.smart-kpi b{color:var(--tone);grid-column:1/-1;align-self:end;font-size:13px}.tone-blue{--tone:#0f6fde;--tone-bg:#e8f2ff}.tone-cyan{--tone:#0098a7;--tone-bg:#e2f7f8}.tone-orange{--tone:#c76a00;--tone-bg:#fff1dd}.tone-green{--tone:#138a53;--tone-bg:#e4f7ed}.tone-purple{--tone:#7654d8;--tone-bg:#f0ecff}.tone-red{--tone:#d84444;--tone-bg:#ffeded}.smart-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr) minmax(280px,.7fr);grid-auto-rows:minmax(210px,auto);gap:14px;display:grid}.smart-panel{background:#ffffffe6;border:1px solid #728aa333;border-radius:8px;min-width:0;padding:16px;box-shadow:0 16px 38px #384b6017}.panel-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel-title h2{color:#182437;margin:0;font-size:16px}.panel-title span{color:#64819b;white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:inline-flex}.community-map{grid-row:span 2}.map-stage{background:linear-gradient(90deg,#1b7bd514 1px,#0000 1px) 0 0/36px 36px,linear-gradient(0deg,#1b7bd514 1px,#0000 1px) 0 0/36px 36px,linear-gradient(135deg,#eef8ff,#f7fbff 48%,#eff9f1);border:1px solid #5c829e2e;border-radius:8px;height:452px;position:relative;overflow:hidden}.map-stage:before{content:"";border:2px solid #0f6fde29;border-radius:48% 52% 45% 55%;position:absolute;inset:48px 80px;transform:rotate(-8deg)}.map-road{background:#2c3f531f;border-radius:999px;height:30px;position:absolute}.road-a{bottom:118px;left:8%;right:10%;transform:rotate(-7deg)}.road-b{top:178px;left:23%;right:20%;transform:rotate(22deg)}.map-node{z-index:1;text-align:left;color:#1b314a;cursor:pointer;background:#ffffffe0;border:1px solid #0f6fde38;border-radius:8px;gap:3px;width:132px;padding:12px;display:grid;position:absolute;box-shadow:0 14px 28px #2a47631f}.map-node i{background:#10a579;border-radius:50%;width:12px;height:12px;margin-bottom:2px;box-shadow:0 0 0 6px #10a5791f}.map-node strong{font-size:14px}.map-node small{color:#66788d;font-size:12px}.node-1{top:20%;left:12%}.node-2{top:13%;left:48%}.node-3{top:25%;right:12%}.node-4{bottom:18%;left:28%}.node-5{bottom:14%;right:22%}.command-card{z-index:2;color:#fff;background:#1f6b65;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:min(420px,78%);padding:14px;display:grid;position:absolute;bottom:34px;left:50%;transform:translate(-50%);box-shadow:0 18px 42px #1f6b6547}.command-card p{color:#ffffffd1;margin:3px 0 0;font-size:12px}.command-card button{color:#1f6b65;cursor:pointer;background:#fff;border:0;border-radius:8px;height:34px;padding:0 14px}.event-list,.service-list{gap:10px;display:grid}.event-list button{text-align:left;cursor:pointer;background:#f8fbfe;border:1px solid #728aa329;border-radius:8px;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.event-list i{color:#fff;background:#0f6fde;border-radius:8px;place-items:center;width:28px;height:28px;font-size:12px;font-style:normal;font-weight:700;display:grid}.event-list .level-高{background:#d84444}.event-list .level-中{background:#c76a00}.event-list .level-低{background:#138a53}.event-list b,.service-list strong{color:#1b2a3d}.event-list small{color:#718399;margin-top:2px;font-size:12px;display:block}.event-list em,.service-list em{color:#6a7d92;font-size:12px;font-style:normal}.service-list{grid-template-columns:repeat(2,minmax(0,1fr))}.service-list button{text-align:left;cursor:pointer;background:#f8fbfe;border:1px solid #728aa329;border-radius:8px;align-content:center;gap:4px;min-height:76px;padding:12px;display:grid}.service-list span{color:#64788e;font-size:13px}.service-list strong{font-size:25px}.service-green strong{color:#138a53}.service-blue strong{color:#0f6fde}.service-orange strong{color:#c76a00}.service-purple strong{color:#7654d8}.care-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.care-grid div{color:#24615d;background:#eef8f4;border-radius:8px;align-content:center;justify-items:center;gap:8px;min-height:130px;display:grid}.care-grid strong{color:#172033;font-size:26px}.care-grid span{color:#5e7388;font-size:12px}.energy-chart{background:#f8fbfe;border-radius:8px;align-items:end;gap:12px;height:150px;padding:16px 8px 4px;display:flex}.energy-chart i{background:linear-gradient(#23a981,#0f6fde);border-radius:8px 8px 3px 3px;flex:1;align-items:end;min-width:16px;display:flex}.energy-chart span{border-radius:inherit;background:#ffffff40;width:100%;height:28%}.traffic-panel{grid-template-rows:auto 1fr auto;display:grid}.traffic-ring{text-align:center;background:radial-gradient(circle at center, #fff 0 57%, transparent 58%), conic-gradient(#0f6fde 0 259deg, #dbe6ef 259deg 360deg);border-radius:50%;place-self:center;place-items:center;width:150px;height:150px;display:grid}.traffic-ring strong,.traffic-ring span{grid-area:1/1}.traffic-ring strong{margin-top:-16px;font-size:28px}.traffic-ring span{color:#61758a;margin-top:40px;font-size:12px}.traffic-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.traffic-stats span{color:#63758a;background:#f8fbfe;border-radius:8px;padding:10px;font-size:12px}.traffic-stats b{color:#172033;margin-top:4px;font-size:16px;display:block}.smart-toast{z-index:10;color:#fff;background:#172033;border-radius:8px;padding:12px 16px;position:fixed;bottom:24px;right:24px;box-shadow:0 14px 34px #17203338}@media (width<=1320px){.smart-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.smart-grid{grid-template-columns:1fr 1fr}.community-map{grid-area:auto/1/auto/-1}}@media (width<=820px){.smart-community-app{grid-template-columns:1fr}.smart-sidebar{flex-direction:row;height:auto;padding:10px 14px;position:static}.smart-sidebar nav{display:flex;overflow-x:auto}.smart-header{display:grid}.smart-actions{justify-content:stretch}.smart-search,.smart-select,.smart-export{width:100%}.smart-search input{width:100%;min-width:0}.smart-kpis,.smart-grid,.care-grid,.service-list{grid-template-columns:1fr}.map-stage{height:520px}.map-node{width:118px}.node-1{top:12%;left:5%}.node-2{top:12%;left:52%}.node-3{top:36%;right:8%}.node-4{bottom:28%;left:8%}.node-5{bottom:18%;right:10%}.command-card{grid-template-columns:1fr;width:calc(100% - 28px)}}.leasing-page{color:#213247;background:#eef4fa;flex-direction:column;flex:1;gap:12px;min-height:0;margin:-12px;padding:16px;display:flex;overflow:auto}.leasing-page-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.leasing-page-head h2{color:#173b63;margin:0;font-size:24px}.leasing-page-head p{color:#6b7f95;margin:6px 0 0;font-size:13px}.leasing-page-head>div:last-child,.leasing-toolbar,.view-switch,.drawer-actions,.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.leasing-page button,.leasing-page select,.leasing-page input,.leasing-page textarea{font:inherit}.leasing-page-head button,.leasing-toolbar button,.leasing-filter-bar button,.row-actions button,.leasing-pagination button,.drawer-actions button,.leasing-modal footer button,.priority-asset-card footer button,.leasing-asset-card footer button,.campaign-card footer button,.leasing-docs button{color:#1764b4;white-space:nowrap;background:#fff;border:1px solid #c9def1;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:34px;padding:0 12px;display:inline-flex}.leasing-page .primary,.leasing-modal footer .primary,.row-actions .primary{color:#fff;background:#1d7fe2;border-color:#1b75d0}.leasing-page .mini{height:28px;padding:0 8px}.leasing-tabs{z-index:3;background:#fff;border:1px solid #dce7f2;border-radius:12px;flex:0 0 56px;align-items:center;gap:6px;height:56px;min-height:56px;padding:6px;display:flex;position:relative;overflow:auto hidden}.leasing-tabs button{color:#5f7287;white-space:nowrap;background:0 0;border-radius:9px;flex:none;justify-content:center;align-items:center;height:36px;padding:0 18px;display:inline-flex}.leasing-tabs button.active{color:#1169bd;background:#e8f4ff;font-weight:700}.leasing-summary-grid{z-index:1;grid-template-columns:repeat(8,minmax(140px,1fr));gap:10px;display:grid;position:relative}.leasing-summary-card{text-align:left;background:#fff;border:1px solid #d8e7f5;border-radius:12px;grid-template-rows:auto auto auto;grid-template-columns:40px 1fr;align-items:center;gap:4px 10px;min-width:0;min-height:108px;padding:14px;display:grid;box-shadow:0 8px 20px #2350780f}.leasing-summary-card span{background:#edf7ff;border-radius:11px;grid-row:1/4;place-items:center;width:40px;height:40px;display:grid}.leasing-summary-card small{color:#6e8196;font-size:12px}.leasing-summary-card strong{color:#193d62;font-size:25px;line-height:1}.leasing-summary-card strong em{color:#7c8ea2;margin-left:3px;font-size:12px;font-style:normal}.leasing-summary-card i{color:#8798aa;font-size:11px;font-style:normal}.leasing-summary-card.active{border-color:#1d7fe2;box-shadow:0 0 0 2px #1d7fe21f}.leasing-summary-card.cyan span{color:#0896a8;background:#e7fbff}.leasing-summary-card.green span{color:#12a474;background:#e8fbf4}.leasing-summary-card.orange span{color:#d98708;background:#fff5dd}.leasing-summary-card.blue span{color:#1764b4;background:#e8f4ff}.fade-panel{animation:.18s leasingFade}@keyframes leasingFade{0%{opacity:.55;transform:translateY(4px)}to{opacity:1;transform:none}}.leasing-workbench,.leasing-module{flex-direction:column;gap:12px;display:flex}.leasing-workbench-grid{grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);gap:12px;display:grid}.leasing-lower-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,.7fr);gap:12px;display:grid}.leasing-panel,.leasing-dark-card,.leasing-module{background:#fff;border:1px solid #dce7f2;border-radius:12px;box-shadow:0 10px 24px #2350780f}.leasing-panel>header,.leasing-dark-card>header,.leasing-toolbar{border-bottom:1px solid #e4edf5;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:0 14px;display:flex}.leasing-panel h3,.leasing-dark-card h3,.leasing-toolbar strong{color:#203a56;margin:0;font-size:15px}.leasing-panel header span,.leasing-dark-card header small{color:#7d8fa3;font-size:12px}.leasing-dark-card{color:#dceeff;background:radial-gradient(circle at 55% 20%,#1896dc40,#0000 36%),linear-gradient(145deg,#09213c,#06172b);border-color:#389ada3d;box-shadow:0 12px 28px #05172c29}.leasing-dark-card>header{border-bottom-color:#82b6de29}.leasing-dark-card>header div{color:#e8f6ff;align-items:center;gap:8px;font-weight:700;display:flex}.leasing-dark-card>header div span{background:#23c7df;border-radius:3px;width:4px;height:15px}.leasing-funnel{gap:8px;padding:16px 20px 20px;display:grid}.leasing-funnel button{width:var(--w);color:#eaf7ff;background:linear-gradient(90deg,#2170e2e0,#10bec0c7,#49c468b8);border:1px solid #70c4ee38;border-radius:9px;grid-template-columns:1.2fr .7fr .7fr .5fr;align-items:center;gap:10px;min-width:48%;height:54px;margin:0 auto;padding:0 18px;display:grid}.leasing-funnel strong{font-size:20px}.leasing-funnel span,.leasing-funnel em{color:#eaf7ffcc;font-size:12px;font-style:normal}.loss-panel header button{color:#6b7f95;background:0 0;align-items:center;display:inline-flex}.loss-list{gap:9px;padding:14px;display:grid}.loss-list button{color:#41566d;text-align:left;background:#f5f9fd;border-radius:8px;grid-template-columns:1fr 42px;align-items:center;gap:8px;height:34px;padding:0 10px;display:grid;position:relative;overflow:hidden}.loss-list i{background:linear-gradient(90deg,#1d7fe2,#22c7d8);height:3px;position:absolute;bottom:0;left:0}.leasing-task-list{gap:8px;padding:12px;display:grid}.leasing-task-list>div{background:#fbfdff;border:1px solid #e3edf6;border-radius:9px;grid-template-columns:22px minmax(150px,1fr) 52px 86px auto auto;align-items:center;gap:10px;min-height:46px;padding:8px 10px;display:grid}.leasing-task-list b,.leasing-task-list small{display:block}.leasing-task-list small{color:#7c8ea2;margin-top:3px}.leasing-task-list em,.leasing-task-list time{color:#687b90;font-size:12px;font-style:normal}.leasing-task-list button{color:#1764b4;background:#edf7ff;border-radius:7px;height:28px;padding:0 9px}.leasing-task-list button.primary{color:#fff;background:#1d7fe2}.leasing-task-list .done{opacity:.62}.smart-leasing-card header h3{align-items:center;gap:6px;display:flex}.smart-leasing-card header button{color:#1764b4;background:#edf7ff;align-items:center;gap:5px;display:inline-flex}.smart-leasing-card>div{gap:8px;padding:12px;display:grid}.smart-leasing-card>div button{color:#33495f;text-align:left;background:#f6faff;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:0 12px;display:flex}.priority-assets-grid,.leasing-asset-card-grid,.campaign-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px;display:grid}.priority-asset-card,.leasing-asset-card,.campaign-card{background:#fff;border:1px solid #e1eaf3;border-radius:12px;min-width:0;overflow:hidden}.priority-asset-card{grid-template-columns:128px minmax(0,1fr);display:grid}.priority-asset-card>img,.leasing-asset-card>img{object-fit:cover;background:#0b2544;width:100%;height:100%;min-height:172px}.priority-asset-card>div,.leasing-asset-card>div,.campaign-card{padding:12px}.priority-asset-card i{color:#0b8aa0;align-items:center;gap:4px;font-size:12px;font-style:normal;display:inline-flex}.priority-asset-card h4,.leasing-asset-card h3,.campaign-card h3{color:#1f3854;margin:6px 0 4px}.priority-asset-card p,.leasing-asset-card p,.campaign-card p{color:#728499;margin:0;font-size:12px}.priority-asset-card dl,.leasing-asset-card dl,.campaign-card dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0;display:grid}.priority-asset-card dl span,.campaign-card dl span,.leasing-asset-card dl span{background:#f5f9fd;border-radius:8px;min-width:0;padding:7px}.priority-asset-card dt,.campaign-card dt{color:#7e90a4;font-size:11px}.priority-asset-card dd,.campaign-card dd{color:#1f3854;margin:3px 0 0;font-weight:700}.business-tags{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.business-tags em{color:#087f86;background:#e9fbfb;border-radius:999px;padding:3px 7px;font-size:11px;font-style:normal}.priority-asset-card footer,.leasing-asset-card footer,.campaign-card footer{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.leasing-filter-bar{background:#fff;border:1px solid #dce7f2;border-radius:12px;flex-wrap:wrap;gap:8px;padding:10px;display:flex}.leasing-filter-bar select,.leasing-toolbar select,.leasing-search{color:#52677d;background:#fff;border:1px solid #dce6f0;border-radius:8px;align-items:center;gap:6px;min-width:120px;height:34px;padding:0 10px;display:inline-flex}.leasing-search{flex:260px}.leasing-search input{border:0;outline:0;width:100%;min-width:0}.leasing-toolbar{background:#fff;border-radius:12px}.view-switch{margin-left:auto}.view-switch button{color:#61778e;background:#fff;border:1px solid #dce7f2;height:30px}.view-switch button.active{color:#1764b4;background:#eaf5ff;border-color:#b9daf7}.leasing-table-scroll{background:#fff;border:1px solid #dce7f2;border-radius:12px;max-width:100%;overflow:auto}.leasing-data-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:max(100%,1780px);font-size:12px}.leasing-asset-table{width:2140px}.customer-table{width:2020px}.appointment-table{width:max(100%,1580px)}.negotiation-table{width:max(100%,1640px)}.appointment-table col.app-no{width:6%}.appointment-table col.app-customer,.appointment-table col.app-phone{width:8%}.appointment-table col.app-date{width:7.5%}.appointment-table col.app-time{width:5.5%}.appointment-table col.app-asset{width:8.5%}.appointment-table col.app-community{width:6.5%}.appointment-table col.app-guide{width:5.5%}.appointment-table col.app-status,.appointment-table col.app-arrival{width:6.5%}.appointment-table col.app-feedback{width:18%}.appointment-table col.app-action{width:13%}.leasing-data-table col.w-90{width:90px}.leasing-data-table col.w-100{width:100px}.leasing-data-table col.w-110{width:110px}.leasing-data-table col.w-120{width:120px}.leasing-data-table col.w-130{width:130px}.leasing-data-table col.w-140{width:140px}.leasing-data-table col.w-150{width:150px}.leasing-data-table col.w-220{width:220px}.leasing-data-table th,.leasing-data-table td{color:#33485e;white-space:nowrap;background:#fff;border-bottom:1px solid #edf2f7;height:44px;padding:0 10px}.leasing-data-table th{z-index:2;color:#60758a;text-align:left;background:#f7fbff;position:sticky;top:0}.leasing-data-table img{object-fit:cover;background:#eef5fb;border-radius:7px;width:32px;height:32px;padding:5px}.link-button{color:#1764b4;background:0 0}.ellipsis{text-overflow:ellipsis;overflow:hidden}.leasing-pill,.intent-level{border-radius:999px;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.leasing-pill.blue{color:#1764b4;background:#e8f4ff}.leasing-pill.green{color:#0a9d69;background:#e8fbf4}.leasing-pill.orange{color:#b77905;background:#fff5df}.leasing-pill.red,.level-A{color:#d84b55;background:#fff0f1}.level-B{color:#b77905;background:#fff5df}.level-C{color:#1764b4;background:#e8f4ff}.level-D{color:#6b7f95;background:#eef3f8}.row-actions{flex-wrap:nowrap}.row-actions button{height:26px;padding:0 8px;font-size:11px}.appointment-table td:last-child,.appointment-table th:last-child{text-align:center}.complete-visit-button{color:#1764b4;white-space:nowrap;background:#eaf5ff;border:1px solid #b9daf7;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-width:96px;height:28px;padding:0 10px;font-size:11px;display:inline-flex}.complete-visit-button:hover{color:#fff;background:#1d7fe2;border-color:#1d7fe2}.appointment-feedback-note{color:#536a82;text-overflow:ellipsis;white-space:nowrap;background:#f7fbff;border:1px solid #e2edf7;border-radius:999px;align-items:center;width:100%;height:28px;padding:0 10px;display:flex;overflow:hidden}.leasing-pagination{color:#61778e;justify-content:center;align-items:center;gap:10px;padding:10px;display:flex}.leasing-asset-card{grid-template-columns:150px minmax(0,1fr);display:grid}.leasing-map-view{background:#fff;border:1px solid #dce7f2;border-radius:12px;grid-template-columns:minmax(0,1fr) 280px;gap:12px;min-height:560px;padding:12px;display:grid}.leasing-map-canvas{background:linear-gradient(#134c7e21 1px,#0000 1px) 0 0/36px 36px,linear-gradient(90deg,#134c7e21 1px,#0000 1px) 0 0/36px 36px,radial-gradient(circle at 55% 35%,#1f84cd33,#0000 38%),#0a2039;border-radius:12px;position:relative;overflow:hidden}.leasing-map-canvas button{color:#dff7ff;background:#061a31b8;border:1px solid #45cee173;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.leasing-map-canvas button span{background:#25d7c6;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #25d7c62e}.leasing-map-view aside{align-content:start;gap:8px;display:grid}.leasing-map-view aside button{color:#33495f;text-align:left;background:#f6faff;border-radius:9px;padding:10px}.leasing-map-view aside small{color:#7a8da1;margin-top:4px;display:block}.lead-stat-row{grid-template-columns:repeat(7,minmax(120px,1fr));gap:9px;display:grid}.lead-stat-row button{text-align:left;background:#fff;border:1px solid #dce7f2;border-radius:12px;min-height:76px;padding:12px}.lead-stat-row span,.lead-stat-row b{display:block}.lead-stat-row span{color:#6d8095}.lead-stat-row b{color:#173b63;margin-top:7px;font-size:24px}.leasing-kanban{grid-auto-columns:260px;grid-auto-flow:column;gap:10px;padding:2px 2px 12px;display:grid;overflow-x:auto}.leasing-kanban section{background:#fff;border:1px solid #dce7f2;border-radius:12px;min-height:520px}.leasing-kanban header{color:#213e5e;border-bottom:1px solid #e5eef7;justify-content:space-between;align-items:center;height:42px;padding:0 12px;font-weight:700;display:flex}.leasing-kanban header span{color:#6c8197}.leasing-kanban section>div{gap:8px;padding:10px;display:grid}.leasing-kanban section>div button{color:#33495f;text-align:left;background:#f9fcff;border:1px solid #e5eef7;border-radius:10px;gap:6px;min-height:116px;padding:10px;display:grid}.leasing-kanban strong{justify-content:space-between;gap:8px;display:flex}.leasing-kanban em{color:#1764b4;font-style:normal}.leasing-kanban small,.leasing-kanban span{color:#6f8296;font-size:12px}.appointment-calendar{grid-template-columns:repeat(7,minmax(180px,1fr));gap:10px;display:grid;overflow-x:auto}.appointment-calendar section{background:#fff;border:1px solid #dce7f2;border-radius:12px;min-height:520px}.appointment-calendar header{color:#1f3854;border-bottom:1px solid #e5eef7;height:42px;padding:12px;font-weight:700}.appointment-calendar button{color:#33495f;text-align:left;background:#f6faff;border-radius:9px;gap:5px;width:calc(100% - 20px);margin:10px;padding:10px;display:grid}.appointment-calendar span,.appointment-calendar em{color:#7a8da1;font-size:12px;font-style:normal}.campaign-card header{justify-content:space-between;align-items:center;gap:8px;display:flex}.campaign-card header span{color:#1764b4;align-items:center;gap:6px;display:inline-flex}.campaign-card header em{color:#0a9d69;font-style:normal}.campaign-card{background:linear-gradient(135deg,#1d7fe214,#0000 42%),#fff;border-color:#dbe8f4;padding:14px;position:relative;box-shadow:0 10px 24px #23507812}.campaign-card:before{content:"";background:linear-gradient(90deg,#1d7fe2,#22c7d8,#35d49a);height:3px;position:absolute;inset:0 0 auto}.campaign-card header{min-height:28px}.campaign-card header span{background:#edf7ff;border-radius:999px;height:26px;padding:0 9px;font-size:12px;font-weight:700}.campaign-status{border-radius:999px;align-items:center;height:24px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.campaign-status.推广中{color:#0a9d69;background:#e8fbf4}.campaign-status.已暂停{color:#b77905;background:#fff5df}.campaign-status.已结束{color:#60758a;background:#eef3f8}.campaign-card-main{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;margin-top:10px;display:grid}.campaign-card-main h3{color:#173b63;margin:0 0 5px;font-size:16px}.campaign-card-main p{color:#718398}.campaign-card-main strong{color:#0f6fb9;text-align:right;background:linear-gradient(145deg,#eef8ff,#f8fcff);border-radius:12px;min-width:82px;padding:10px 11px;font-size:22px;line-height:1}.campaign-card-main strong small{color:#718398;margin-top:5px;font-size:11px;font-weight:500;display:block}.campaign-hero-metrics{grid-template-columns:1.3fr 1fr 1fr;gap:8px;margin-top:14px;display:grid}.campaign-hero-metrics span{background:#f7fbffe6;border:1px solid #e3edf6;border-radius:11px;grid-template-rows:auto auto;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:1px 8px;min-width:0;padding:10px;display:grid}.campaign-hero-metrics svg{color:#1d7fe2;grid-row:1/3}.campaign-hero-metrics b{color:#1f3854;font-size:18px}.campaign-hero-metrics small{color:#7d8fa3;font-size:11px}.campaign-progress{background:#edf3f8;border-radius:999px;height:7px;margin-top:12px;overflow:hidden}.campaign-progress i{border-radius:inherit;background:linear-gradient(90deg,#1d7fe2,#22c7d8);height:100%;display:block}.campaign-card dl{grid-template-columns:repeat(3,1fr);margin:12px 0 0}.campaign-card dl span{background:#f7fbff;padding:9px 10px}.campaign-card footer{border-top:1px solid #edf2f7;padding-top:12px}.campaign-card footer button{background:#fbfdff;border-color:#d5e5f3;height:30px}.danger-text{color:#d84b55!important}.success-text{color:#0a9d69!important}.leasing-drawer-mask,.leasing-modal-mask{z-index:82;inset:var(--topbar-height,64px) 0 0 0;background:#111d2c57;position:fixed}.leasing-modal-mask{z-index:92;place-items:center;padding:24px;display:grid;inset:0}.leasing-drawer,.leasing-assistant-drawer{color:#213247;background:#fff;width:min(980px,82vw);position:absolute;top:0;bottom:0;right:0;overflow:auto;box-shadow:-14px 0 34px #17304a2e}.customer-drawer{width:min(920px,82vw)}.leasing-assistant-drawer{width:min(420px,88vw)}.leasing-drawer-hero,.customer-drawer-head,.leasing-assistant-drawer header,.leasing-modal header{z-index:5;background:#fff;border-bottom:1px solid #e4edf5;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex;position:sticky;top:0}.leasing-drawer-hero{grid-template-columns:160px minmax(0,1fr) auto;display:grid}.leasing-drawer-hero img{object-fit:cover;background:#0b2544;border-radius:10px;width:160px;height:112px}.leasing-drawer-hero h2,.customer-drawer-head h2,.leasing-modal h2{color:#1f3854;margin:5px 0}.leasing-drawer-hero p,.customer-drawer-head p,.customer-drawer-head span{color:#728499;margin:0}.drawer-actions .icon,.leasing-assistant-drawer header button,.leasing-modal header button{width:34px;padding:0}.drawer-tabs{background:#fff;border-bottom:1px solid #e4edf5;gap:3px;padding:10px 18px 0;display:flex;overflow-x:auto}.drawer-tabs button{color:#61778e;white-space:nowrap;background:0 0;border-bottom:2px solid #0000;height:40px;padding:0 14px}.drawer-tabs button.active{color:#1764b4;border-bottom-color:#1764b4}.drawer-body{padding:18px}.leasing-info-grid,.contract-confirm{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.leasing-info-grid div,.contract-confirm div{background:#fbfdff;border:1px solid #e1eaf3;border-radius:10px;min-height:62px;padding:11px}.leasing-info-grid span,.contract-confirm span{color:#7d8fa3;font-size:12px;display:block}.leasing-info-grid b,.contract-confirm b{color:#243950;text-overflow:ellipsis;white-space:nowrap;margin-top:7px;display:block;overflow:hidden}.leasing-docs h3{color:#1f3854;margin:0 0 8px}.leasing-docs p{color:#6e8196}.match-list,.timeline-list,.customer-match-grid,.assistant-question-list{gap:10px;display:grid}.match-list button,.customer-match-grid button{color:#33495f;text-align:left;background:#fbfdff;border:1px solid #e1eaf3;border-radius:10px;grid-template-columns:62px minmax(0,1fr) 90px;align-items:center;gap:12px;padding:12px;display:grid}.match-list strong{color:#0b9d80;font-size:22px}.match-list small,.customer-match-grid small{color:#7d8fa3;margin-top:4px;display:block}.match-list em,.customer-match-grid em{color:#1764b4;font-style:normal}.customer-match-grid button{grid-template-columns:86px minmax(0,1fr)}.customer-match-grid img{object-fit:cover;border-radius:8px;width:86px;height:64px}.customer-match-grid em{grid-column:2}.timeline-list div{border-left:1px solid #dce7f2;padding:0 0 14px 18px;position:relative}.timeline-list i{background:#1d7fe2;border-radius:50%;width:9px;height:9px;position:absolute;top:2px;left:-5px}.timeline-list b{color:#1f3854}.timeline-list p{color:#718398;margin:5px 0 0}.promotion-data .mini-chart{background:#f7fbff;border-radius:12px;align-items:flex-end;gap:10px;height:170px;margin-top:16px;padding:14px;display:flex}.promotion-data .mini-chart span{background:linear-gradient(#22c7d8,#1d7fe2);border-radius:7px 7px 0 0;flex:1}.promotion-data p{color:#61778e;align-items:center;gap:6px;display:flex}.empty-state{color:#7a8da1;background:#fbfdff;border:1px dashed #cbddeb;border-radius:12px;place-items:center;gap:8px;min-height:160px;display:grid}.leasing-modal{background:#fff;border-radius:12px;width:min(760px,92vw);max-height:88vh;overflow:auto;box-shadow:0 24px 60px #0c213838}.leasing-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px;display:grid}.leasing-form-grid label{color:#61778e;gap:6px;font-size:12px;display:grid}.leasing-form-grid label.full{grid-column:1/-1}.leasing-form-grid input,.leasing-form-grid select,.leasing-form-grid textarea{color:#243950;background:#fff;border:1px solid #dce6f0;border-radius:8px;min-width:0;min-height:36px;padding:0 10px}.leasing-form-grid textarea{resize:vertical;min-height:76px;padding:10px}.leasing-modal footer{border-top:1px solid #e4edf5;justify-content:flex-end;gap:8px;padding:14px 18px;display:flex}.contract-confirm{padding:18px}.leasing-assistant-float{z-index:45;color:#fff;background:linear-gradient(145deg,#1d7fe2,#0b6bb7);border-radius:50%;width:92px;height:92px;font-size:12px;font-weight:700;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 28px #1d7fe257}.leasing-assistant-drawer header span{color:#1f3854;align-items:center;gap:8px;font-weight:700;display:inline-flex}.assistant-question-list{padding:14px}.assistant-question-list button{color:#33495f;text-align:left;background:#f6faff;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:0 12px;display:flex}.assistant-answer{color:#29445f;background:#fbfdff;border:1px solid #dce7f2;border-radius:12px;margin:0 14px 14px;padding:14px;line-height:1.8}@media (width<=1680px){.leasing-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.priority-assets-grid,.leasing-asset-card-grid,.campaign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-stat-row{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1460px){.leasing-workbench-grid,.leasing-lower-grid{grid-template-columns:1fr}.leasing-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.priority-assets-grid,.leasing-asset-card-grid,.campaign-grid{grid-template-columns:1fr 1fr}.leasing-drawer{width:min(1040px,88vw)}.leasing-drawer-hero{grid-template-columns:140px minmax(0,1fr)}.leasing-drawer-hero .drawer-actions{grid-column:1/-1}}.contract-page{color:#213247;background:#eef4fa;flex:1;min-width:0;min-height:0;margin:-12px;padding:16px;overflow:auto}.contract-page button,.contract-page select,.contract-page input,.contract-page textarea{font:inherit}.contract-page button{white-space:nowrap}.contract-page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.contract-page-head h2{color:#173b63;letter-spacing:0;margin:0;font-size:24px}.contract-page-head p{color:#6b7f95;margin:6px 0 0;font-size:13px}.contract-page-head>div:last-child,.contract-toolbar,.modal-actions,.contract-form-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.contract-page-head button,.contract-toolbar button,.contract-toolbar select,.contract-pagination button,.contract-pagination select,.contract-section-head button,.contract-row-actions button,.contract-row-actions select,.contract-modal button,.contract-form-footer button,.contract-tabs button,.contract-board-card footer button,.contract-expiry-grid footer button,.template-row button,.archive-row button,.contract-list-panel button{color:#1764b4;background:#fff;border:1px solid #d4e5f4;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 12px;display:inline-flex}.contract-page-head button.primary,.contract-modal button.primary,.contract-form-footer button.primary,.contract-board-card footer button.primary,.contract-expiry-grid footer button.primary,.contract-list-panel button.primary{color:#fff;background:#1d7fe2;border-color:#1d7fe2;box-shadow:0 8px 18px #1d7fe22e}.contract-tabs{z-index:3;background:#fff;border:1px solid #dceaf6;border-radius:12px;flex:0 0 56px;align-items:center;gap:12px;height:56px;min-height:56px;margin-bottom:12px;padding:8px 12px;display:flex;position:relative;overflow:auto hidden;box-shadow:0 8px 24px #254a6914}.contract-tabs button{color:#57728d;background:0 0;border-color:#0000;min-width:120px;height:38px;font-size:13px;font-weight:700}.contract-tabs button.active{color:#0868bd;background:#e8f4ff}.contract-summary-grid{grid-template-columns:repeat(8,minmax(150px,1fr));gap:10px;margin-bottom:12px;display:grid}.contract-summary-card{text-align:left;background:#fff;border:1px solid #dbe8f5;border-radius:12px;grid-template-columns:40px minmax(0,1fr);align-content:center;gap:4px 10px;min-width:0;min-height:108px;padding:14px;display:grid;box-shadow:0 8px 22px #254a6912}.contract-summary-card span{color:#1d7fe2;background:#e8f4ff;border-radius:10px;grid-row:1/4;place-items:center;width:40px;height:40px;display:grid}.contract-summary-card small{color:#8093a8;font-size:12px}.contract-summary-card i{color:#8093a8;font-size:11px;font-style:normal}.contract-summary-card strong{color:#143d68;font-size:25px;line-height:1}.contract-summary-card em{color:#55718c;margin-left:3px;font-size:12px;font-style:normal}.contract-summary-card.cyan span{color:#0aa8bb;background:#e4fbff}.contract-summary-card.green span{color:#0aa46a;background:#e6fbf1}.contract-summary-card.orange span{color:#c78314;background:#fff3d9}.contract-summary-card.red span{color:#d84b55;background:#ffecef}.contract-summary-card.active{border-color:#70b6ff;box-shadow:0 0 0 2px #1d7fe21f}.contract-module,.contract-panel{background:#fff;border:1px solid #dbe7f2;border-radius:12px;min-width:0;box-shadow:0 10px 24px #254a6912}.contract-workbench-grid,.contract-lower-grid,.contract-two-column,.contract-template-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px;display:grid}.contract-lower-grid,.contract-template-layout{margin-top:12px}.contract-panel,.contract-module{padding:14px}.contract-panel header,.contract-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.contract-panel h3,.contract-section-head strong{color:#173c63;margin:0;font-size:15px}.contract-panel header span,.contract-section-head span{color:#7d8fa3;font-size:12px}.contract-donut{background:conic-gradient(#1d7fe2 0 58%, #31d3a1 58% 78%, #ffc052 78% 91%, #ff6373 91% 100%);border-radius:50%;place-items:center;width:190px;height:190px;margin:6px auto 16px;display:grid}.contract-donut strong{color:#173c63;background:#fff;border-radius:50%;place-items:center;width:116px;height:116px;font-size:30px;display:grid}.contract-donut small{color:#7d8fa3;font-size:12px;font-weight:500;display:block}.contract-status-list,.contract-todo-list,.validation-list,.contract-log-list,.contract-list-panel{gap:8px;display:grid}.contract-status-list button,.contract-todo-list button,.validation-list button,.contract-list-panel article,.contract-log-list span{color:#29445f;text-align:left;background:#fbfdff;border:1px solid #e5eef7;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.contract-status-list i{background:#1d7fe2;border-radius:50%;width:9px;height:9px}.contract-status-list .tone-1{background:#22c7d8}.contract-status-list .tone-2{background:#31d3a1}.contract-status-list .tone-3{background:#ffc052}.contract-status-list .tone-4{background:#ff6373}.contract-bars{background:#f6faff;border-radius:12px;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:8px;height:260px;padding:16px;display:grid}.contract-bars button{color:#6e8196;justify-items:center;gap:7px;display:grid}.contract-bars i{background:linear-gradient(#21d7c2,#1d7fe2);border-radius:8px 8px 0 0;width:100%;max-width:24px}.contract-todo-list button{grid-template-columns:100px minmax(0,1fr) 82px 70px 95px}.contract-todo-list b,.contract-list-panel b{color:#183d64;text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.contract-todo-list small,.contract-list-panel p{color:#7d8fa3;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;display:block;overflow:hidden}.contract-todo-list em,.contract-todo-list i{color:#1764b4;font-style:normal}.contract-filter-bar{grid-template-columns:minmax(280px,1.6fr) repeat(8,minmax(110px,1fr)) auto auto;gap:8px;margin-bottom:12px;display:grid}.contract-search{background:#fbfdff;border:1px solid #d8e6f2;border-radius:8px;align-items:center;gap:8px;min-width:0;padding:0 12px;display:flex}.contract-search input,.contract-filter-bar select,.contract-filter-bar button,.field-panel label,.contract-form-grid input,.contract-form-grid select,.modal-field input,.modal-field textarea,.contract-modal textarea{color:#29445f;background:#fff;border:1px solid #d8e6f2;border-radius:8px;min-width:0;min-height:36px;padding:0 10px}.contract-search input{background:0 0;border:0;flex:1}.contract-advanced-filters{background:#f6faff;border-radius:10px;grid-column:1/-1;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:10px;display:grid}.contract-toolbar{justify-content:flex-start;margin-bottom:10px}.contract-toolbar strong{color:#173c63;margin-right:auto}.contract-toolbar span{color:#7d8fa3}.field-panel{background:#f6faff;border-radius:10px;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:10px;padding:10px;display:grid}.field-panel label{align-items:center;gap:7px;display:flex}.contract-table-scroll{background:#fff;border:1px solid #e0eaf4;border-radius:10px;max-width:100%;overflow:auto}.contract-table{border-collapse:separate;border-spacing:0;table-layout:fixed;color:#2d4a67;width:max(100%,2300px);font-size:12px}.contract-table th,.contract-table td{text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#fff;border-bottom:1px solid #edf2f7;height:44px;padding:0 10px;overflow:hidden}.contract-table th{color:#55718c;background:#f4f8fc;font-weight:700}.contract-table .fixed{z-index:3;position:sticky}.contract-table th.fixed{z-index:5}.contract-table .check{width:42px;min-width:42px;left:0}.contract-table .code{width:130px;min-width:130px;left:42px}.contract-table .name{width:210px;min-width:210px;left:172px}.contract-table .right-fixed{z-index:4;width:300px;min-width:300px;position:sticky;right:0;box-shadow:-8px 0 16px #1436560f}.contract-row-actions{align-items:center;gap:5px;display:flex}.contract-row-actions button,.contract-row-actions select{min-height:28px;padding:0 8px;font-size:12px}.contract-link{color:#1764b4;background:0 0;font-weight:700}.contract-risk-tag{color:#0a9d69;background:#e5faef;border-radius:999px;justify-content:center;align-items:center;min-width:58px;height:24px;font-size:12px;font-weight:700;display:inline-flex}.contract-risk-tag.中风险,.contract-risk-tag.低风险{color:#b87809;background:#fff3d8}.contract-risk-tag.高风险{color:#d84b55;background:#ffecef}.contract-pagination{justify-content:flex-end;align-items:center;gap:8px;padding-top:10px;display:flex}.contract-card-board,.contract-expiry-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.contract-board-card,.contract-expiry-grid article,.template-row,.archive-row{background:#fff;border:1px solid #dbe7f2;border-radius:12px;min-width:0;padding:14px;box-shadow:0 8px 22px #254a690f}.contract-board-card header,.contract-board-card footer,.contract-expiry-grid footer,.template-row,.archive-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.contract-board-card h3,.contract-expiry-grid h3{color:#173c63;text-overflow:ellipsis;white-space:nowrap;margin:12px 0 6px;overflow:hidden}.contract-board-card p,.contract-expiry-grid p{color:#718398}.contract-board-card div{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;display:grid}.contract-board-card div b,.contract-expiry-grid span{color:#143d68;background:#f4f8fc;border-radius:8px;padding:10px}.contract-drawer-mask,.contract-modal-mask{z-index:84;inset:var(--topbar-height,64px) 0 0 0;background:#0f1d2c57;position:fixed}.contract-modal-mask{z-index:96;place-items:center;padding:24px;display:grid;inset:0}.contract-detail-drawer,.contract-form-drawer,.contract-validation-panel,.contract-log-drawer{color:#243950;background:#fff;width:min(1040px,88vw);position:absolute;inset:0 0 0 auto;overflow:auto;box-shadow:-18px 0 42px #122d4b33}.contract-validation-panel,.contract-log-drawer{width:min(520px,88vw)}.contract-detail-head,.contract-modal header{z-index:5;background:#fff;border-bottom:1px solid #e4edf5;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;display:flex;position:sticky;top:0}.contract-detail-head p,.contract-modal p{color:#7d8fa3;margin:0}.contract-detail-head h3,.contract-modal h3{color:#173c63;margin:5px 0 0}.contract-detail-actions{flex-wrap:wrap;gap:8px;display:flex}.contract-detail-actions button,.contract-detail-head>button,.contract-modal header>button{background:#fff;border:1px solid #d8e6f2;border-radius:8px;min-height:34px;padding:0 10px}.contract-drawer-tabs{background:#fff;border-bottom:1px solid #e4edf5;gap:4px;padding:10px 18px 0;display:flex;overflow-x:auto}.contract-drawer-tabs button{color:#61778e;white-space:nowrap;background:0 0;border-bottom:2px solid #0000;height:40px;padding:0 14px}.contract-drawer-tabs button.active{color:#1764b4;border-bottom-color:#1764b4}.contract-drawer-body,.contract-form-body{padding:18px}.contract-overview-grid,.contract-info-grid,.contract-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.contract-overview-grid>span,.contract-info-grid>span,.contract-version-box,.contract-confirm-box{background:#fbfdff;border:1px solid #e2ecf5;border-radius:10px;min-width:0;padding:12px}.contract-overview-grid b,.contract-info-grid b{color:#173c63;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;display:block;overflow:hidden}.contract-risk-inline{color:#b87809;background:#fff7e6;border-radius:10px;margin-top:12px;padding:12px}.contract-plan-scroll{overflow:auto}.contract-plan-table{border-collapse:collapse;width:100%;min-width:920px}.contract-plan-table th,.contract-plan-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #edf2f7;height:40px;padding:0 10px}.contract-file-list,.approval-flow-list{gap:10px;display:grid}.contract-file-list article,.approval-flow-list span{background:#fbfdff;border:1px solid #e2ecf5;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.approval-flow-list.compact span{grid-template-columns:minmax(0,1fr) 80px 90px;display:grid}.approval-flow-list .current{background:#f0f8ff;border-color:#88c5ff}.contract-stepper{background:#fbfdff;border-bottom:1px solid #e4edf5;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;padding:14px 18px;display:grid}.contract-stepper button{color:#6a8199;background:#fff;border:1px solid #dce8f3;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:44px;display:flex}.contract-stepper span{background:#eef6ff;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.contract-stepper button.active,.contract-stepper button.done{color:#1764b4;background:#ecf6ff;border-color:#9dccff}.contract-form-grid label,.modal-field{color:#61778e;gap:6px;font-size:12px;display:grid}.modal-field textarea,.contract-modal textarea{resize:vertical;min-height:84px;padding:10px}.contract-upload-zone{background:#f8fbff;border:1px dashed #bdd4e9;border-radius:12px;gap:10px;padding:20px;display:grid}.contract-upload-zone span{background:#fff;border-radius:8px;align-items:center;gap:8px;padding:10px;display:flex}.contract-form-footer{background:#fff;border-top:1px solid #e4edf5;padding:14px 18px;position:sticky;bottom:0}.contract-confirm-box h4{color:#173c63;margin:0 0 8px}.contract-confirm-box .danger{color:#d84b55}.contract-confirm-box .ok{color:#0a9d69}.contract-modal{background:#fff;border-radius:14px;width:min(720px,92vw);max-height:88vh;overflow:auto;box-shadow:0 24px 60px #0c213838}.contract-modal>:not(header){margin:14px 18px}.signature-preview,.validation-score,.contract-version-compare{background:#f8fbff;border:1px solid #dfeaf4;border-radius:12px;align-items:center;gap:14px;padding:14px;display:flex}.contract-version-compare{justify-content:space-between}.contract-version-compare div{background:#fff;border-radius:10px;flex:1;padding:12px}.modal-actions{border-top:1px solid #edf2f7;padding-top:10px}.modal-actions .danger{color:#d84b55;border-color:#ffd3d8}.validation-score b{color:#0a9d69;font-size:32px;display:block}.validation-list button{grid-template-columns:28px minmax(0,1fr) 72px}.validation-list em{color:#7d8fa3;margin-top:3px;font-style:normal;display:block}.validation-list i{color:#d84b55;font-style:normal;font-weight:700}.contract-log-list{padding:16px}.contract-log-list span{grid-template-columns:22px minmax(0,1fr)}.contract-list-panel article{grid-template-columns:minmax(0,1fr) 96px auto auto}.template-row,.archive-row{margin-bottom:8px}.template-row b,.archive-row span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.template-row em{color:#0a9d69;font-style:normal;font-weight:700}@media (width<=1680px){.contract-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.contract-filter-bar{grid-template-columns:minmax(260px,1.4fr) repeat(4,minmax(112px,1fr))}.contract-card-board,.contract-expiry-grid,.field-panel,.contract-advanced-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1460px){.contract-workbench-grid,.contract-lower-grid,.contract-two-column,.contract-template-layout{grid-template-columns:1fr}.contract-card-board,.contract-expiry-grid,.contract-overview-grid,.contract-info-grid,.contract-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-stepper{grid-template-columns:repeat(4,minmax(0,1fr))}}.fee-page{color:#213247;background:linear-gradient(#eaf3fb 0%,#f3f8fc 100%);flex:1;min-width:0;min-height:0;margin:-12px;padding:16px;overflow:auto}.fee-page button,.fee-page select,.fee-page input,.fee-page textarea{font:inherit}.fee-page button{white-space:nowrap}.fee-page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.fee-page-head h2{color:#173b63;letter-spacing:0;margin:0;font-size:24px}.fee-page-head p{color:#6b7f95;margin:6px 0 0;font-size:13px}.fee-page-head>div:last-child,.fee-toolbar,.fee-form-footer,.fee-modal footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.fee-page-head button,.fee-toolbar button,.fee-toolbar select,.fee-row-actions button,.fee-row-actions select,.fee-pagination button,.fee-tabs button,.fee-section-head button,.fee-form-footer button,.fee-modal button,.fee-rule-grid button,.fee-board-grid button{color:#1764b4;background:#fff;border:1px solid #d4e5f4;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 12px;display:inline-flex}.fee-page-head button.primary,.fee-form-footer button.primary,.fee-modal button.primary{color:#fff;background:#1d7fe2;border-color:#1d7fe2;box-shadow:0 8px 18px #1d7fe22e}.fee-tabs{z-index:3;background:#fff;border:1px solid #dceaf6;border-radius:12px;flex:0 0 56px;align-items:center;gap:12px;height:56px;min-height:56px;margin-bottom:12px;padding:8px 12px;display:flex;position:relative;overflow:auto hidden;box-shadow:0 8px 24px #254a6914}.fee-tabs button{color:#57728d;background:0 0;border-color:#0000;min-width:116px;height:38px;font-size:13px;font-weight:700}.fee-tabs button.active{color:#0868bd;background:#e8f4ff}.fee-summary-grid{grid-template-columns:repeat(8,minmax(150px,1fr));gap:10px;margin-bottom:12px;display:grid}.fee-summary-card{text-align:left;background:#fff;border:1px solid #dbe8f5;border-radius:12px;grid-template-columns:40px minmax(0,1fr);align-content:center;gap:4px 10px;min-width:0;min-height:108px;padding:14px;display:grid;box-shadow:0 8px 22px #254a6912}.fee-summary-card span{color:#1d7fe2;background:#e8f4ff;border-radius:10px;grid-row:1/4;place-items:center;width:40px;height:40px;display:grid}.fee-summary-card small{color:#8093a8;font-size:12px}.fee-summary-card i{color:#8093a8;font-size:11px;font-style:normal}.fee-summary-card strong{color:#143d68;font-size:25px;line-height:1}.fee-summary-card em{color:#55718c;margin-left:3px;font-size:12px;font-style:normal}.fee-summary-card.green span{color:#0aa46a;background:#e6fbf1}.fee-summary-card.cyan span{color:#0aa8bb;background:#e4fbff}.fee-summary-card.orange span{color:#c78314;background:#fff3d9}.fee-summary-card.red span{color:#d84b55;background:#ffecef}.fee-summary-card.active{border-color:#70b6ff;box-shadow:0 0 0 2px #1d7fe21f}.fee-module,.fee-panel{background:#fff;border:1px solid #dbe7f2;border-radius:12px;min-width:0;padding:14px;box-shadow:0 10px 24px #254a6912}.fee-workbench-grid,.fee-lower-grid,.fee-reconciliation{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:12px;margin-bottom:12px;display:grid}.fee-panel header,.fee-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.fee-panel h3,.fee-section-head strong,.fee-rule-grid h3,.fee-board-grid h3{color:#173c63;margin:0;font-size:15px}.fee-panel header span,.fee-section-head span{color:#7d8fa3;font-size:12px}.fee-segment{background:#f0f6fc;border-radius:9px;gap:4px;padding:3px;display:flex}.fee-segment button{color:#6a8199;border-radius:7px;height:28px;padding:0 12px}.fee-segment button.active{color:#fff;background:#1d7fe2}.fee-trend-chart{background:#f6faff;border-radius:12px;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:10px;height:270px;padding:16px;display:grid}.fee-trend-chart div{color:#7d8fa3;grid-template-columns:1fr 1fr;align-items:end;gap:4px;display:grid}.fee-trend-chart i{border-radius:8px 8px 0 0;min-height:36px}.fee-trend-chart .receivable{background:linear-gradient(#1d7fe2,#75b8ff)}.fee-trend-chart .received{background:linear-gradient(#31d3a1,#9beacb)}.fee-trend-chart span{text-align:center;grid-column:1/-1}.fee-chart-legend,.fee-type-list{color:#61778e;flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.fee-chart-legend i,.fee-type-list i{border-radius:50%;width:9px;height:9px;margin-right:5px;display:inline-block}.fee-chart-legend .blue{background:#1d7fe2}.fee-chart-legend .green{background:#31d3a1}.fee-chart-legend .cyan{background:#22c7d8}.fee-type-donut{border-radius:50%;place-items:center;width:180px;height:180px;margin:8px auto 16px;display:grid}.fee-type-donut strong{color:#173c63;background:#fff;border-radius:50%;place-items:center;width:112px;height:112px;font-size:30px;display:grid}.fee-type-donut small{color:#7d8fa3;font-size:12px;display:block}.fee-type-list span{min-width:45%}.fee-type-list b{float:right;color:#173c63}.fee-aging-bars{gap:12px;display:grid}.fee-aging-bars button{color:#29445f;text-align:left;grid-template-columns:96px minmax(0,1fr) 44px;align-items:center;gap:10px;display:grid}.fee-aging-bars i{background:linear-gradient(90deg,#1d7fe2,#22c7d8);border-radius:999px;height:10px}.fee-community-compare,.arrears-stat-grid,.reconcile-stat-grid,.fee-settlement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.fee-community-compare article,.arrears-stat-grid article,.reconcile-stat-grid article,.fee-settlement-grid article,.fee-board-grid article{background:#fbfdff;border:1px solid #e1eaf3;border-radius:10px;min-width:0;padding:14px}.fee-community-compare b,.fee-community-compare span,.fee-community-compare strong,.arrears-stat-grid span,.arrears-stat-grid b,.reconcile-stat-grid span,.reconcile-stat-grid b,.fee-settlement-grid span,.fee-settlement-grid b,.fee-settlement-grid em{margin-bottom:6px;display:block}.fee-community-compare strong,.arrears-stat-grid b,.reconcile-stat-grid b,.fee-settlement-grid b{color:#173c63;font-size:24px}.fee-todo-list,.fee-risk-list,.fee-simple-list,.fee-log-list{gap:8px;display:grid}.fee-todo-list button,.fee-risk-list button,.fee-simple-list article,.fee-log-list span{color:#29445f;text-align:left;background:#fbfdff;border:1px solid #e5eef7;border-radius:9px;grid-template-columns:100px minmax(0,1fr) auto auto auto auto;align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.fee-todo-list b,.fee-risk-list b{color:#183d64;text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.fee-todo-list small,.fee-risk-list small{color:#7d8fa3;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;display:block;overflow:hidden}.fee-todo-list em,.fee-todo-list i,.fee-todo-list mark{color:#1764b4;background:0 0;font-style:normal}.fee-risk-list button{grid-template-columns:72px minmax(0,1fr) auto}.fee-risk-list i,.fee-risk-tag{color:#1764b4;background:#e8f4ff;border-radius:999px;justify-content:center;align-items:center;min-width:62px;height:24px;font-style:normal;font-weight:700;display:inline-flex}.fee-risk-list i.高风险,.fee-risk-tag.高风险{color:#d84b55;background:#ffecef}.fee-risk-list i.中风险,.fee-risk-tag.中风险{color:#b87809;background:#fff3d8}.fee-risk-list i.低风险,.fee-risk-tag.低风险{color:#0a9d69;background:#e5faef}.fee-filter-bar{grid-template-columns:minmax(280px,1.5fr) repeat(5,minmax(116px,1fr)) auto;gap:8px;margin-bottom:12px;display:grid}.fee-filter-bar.compact{grid-template-columns:minmax(280px,1.4fr) repeat(4,minmax(116px,1fr)) auto}.fee-search{background:#fbfdff;border:1px solid #d8e6f2;border-radius:8px;align-items:center;gap:8px;min-width:0;padding:0 12px;display:flex}.fee-search input,.fee-filter-bar select,.fee-filter-bar button,.fee-form-grid input,.fee-form-grid select,.fee-form-grid textarea{color:#29445f;background:#fff;border:1px solid #d8e6f2;border-radius:8px;min-width:0;min-height:36px;padding:0 10px}.fee-search input{background:0 0;border:0;flex:1}.fee-toolbar{justify-content:flex-start;margin-bottom:10px}.fee-toolbar strong{color:#173c63;margin-right:auto}.fee-toolbar span{color:#7d8fa3}.fee-table-scroll{background:#fff;border:1px solid #e0eaf4;border-radius:10px;max-width:100%;overflow:auto}.fee-table{border-collapse:separate;border-spacing:0;table-layout:fixed;color:#2d4a67;width:max(100%,2300px);font-size:12px}.fee-table.compact-table{width:max(100%,1320px)}.fee-table.arrears-table{width:max(100%,1500px)}.fee-table th,.fee-table td{text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#fff;border-bottom:1px solid #edf2f7;height:44px;padding:0 10px;overflow:hidden}.fee-table th{color:#55718c;background:#f4f8fc;font-weight:700}.fee-table .fixed{z-index:3;position:sticky}.fee-table th.fixed{z-index:5}.fee-table .check{width:42px;min-width:42px;left:0}.fee-table .code{width:130px;min-width:130px;left:42px}.fee-table .name{width:170px;min-width:170px;left:172px}.fee-table .right-fixed{z-index:4;width:286px;min-width:286px;position:sticky;right:0;box-shadow:-8px 0 16px #1436560f}.fee-row-actions{align-items:center;gap:5px;display:flex}.fee-row-actions button,.fee-row-actions select{min-height:28px;padding:0 8px;font-size:12px}.fee-link{color:#1764b4;background:0 0;font-weight:700}.fee-pagination{justify-content:flex-end;align-items:center;gap:8px;padding-top:10px;display:flex}.fee-drawer-mask,.fee-modal-mask{z-index:86;inset:var(--topbar-height,64px) 0 0 0;background:#0f1d2c57;position:fixed}.fee-modal-mask{z-index:98;place-items:center;padding:24px;display:grid;inset:0}.fee-detail-drawer,.fee-form-drawer,.fee-validation-panel{color:#243950;background:#fff;width:min(1040px,88vw);position:absolute;inset:0 0 0 auto;overflow:auto;box-shadow:-18px 0 42px #122d4b33}.fee-form-drawer.small,.fee-validation-panel{width:min(560px,88vw)}.fee-detail-head,.fee-modal header{z-index:5;background:#fff;border-bottom:1px solid #e4edf5;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;display:flex;position:sticky;top:0}.fee-detail-head p,.fee-modal p{color:#7d8fa3;margin:0}.fee-detail-head h3,.fee-modal h3{color:#173c63;margin:5px 0 0}.fee-detail-actions{flex-wrap:wrap;gap:8px;display:flex}.fee-bill-hero,.fee-info-grid,.fee-form-grid,.fee-stepper,.fee-board-grid,.fee-rule-grid{gap:10px;display:grid}.fee-bill-hero{background:#fbfdff;border-bottom:1px solid #e4edf5;grid-template-columns:repeat(6,minmax(0,1fr));padding:14px 18px}.fee-bill-hero span,.fee-info-grid span,.fee-confirm-box,.fee-invoice-panel{background:#fff;border:1px solid #e2ecf5;border-radius:10px;min-width:0;padding:12px}.fee-bill-hero small,.fee-info-grid small{color:#7d8fa3;display:block}.fee-bill-hero b,.fee-info-grid b{color:#173c63;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;display:block;overflow:hidden}.fee-drawer-tabs{background:#fff;border-bottom:1px solid #e4edf5;gap:4px;padding:10px 18px 0;display:flex;overflow-x:auto}.fee-drawer-tabs button{color:#61778e;white-space:nowrap;background:0 0;border-bottom:2px solid #0000;height:40px;padding:0 14px}.fee-drawer-tabs button.active{color:#1764b4;border-bottom-color:#1764b4}.fee-drawer-body,.fee-form-body{padding:18px}.fee-info-grid,.fee-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fee-form-grid label{color:#61778e;gap:6px;font-size:12px;display:grid}.fee-form-grid label.full{grid-column:1/-1}.fee-form-grid textarea{resize:vertical;min-height:80px;padding:10px}.fee-simple-list article{grid-template-columns:repeat(4,minmax(0,1fr))}.fee-upload-box{background:#f8fbff;border:1px dashed #bdd4e9;border-radius:12px;gap:10px;padding:18px;display:grid}.fee-upload-box span{align-items:center;gap:8px;display:flex}.fee-stepper{background:#fbfdff;border-bottom:1px solid #e4edf5;grid-template-columns:repeat(6,minmax(0,1fr));padding:14px 18px}.fee-stepper button{color:#6a8199;background:#fff;border:1px solid #dce8f3;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:44px;display:flex}.fee-stepper span{background:#eef6ff;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.fee-stepper button.active,.fee-stepper button.done{color:#1764b4;background:#ecf6ff;border-color:#9dccff}.fee-form-footer{background:#fff;border-top:1px solid #e4edf5;padding:14px 18px;position:sticky;bottom:0}.fee-confirm-box h4{margin:0 0 8px}.fee-confirm-box .danger{color:#d84b55}.fee-confirm-box .ok{color:#0a9d69}.fee-modal{background:#fff;border-radius:14px;width:min(720px,92vw);max-height:88vh;overflow:auto;box-shadow:0 24px 60px #0c213838}.fee-modal>:not(header){margin:14px 18px}.fee-modal footer{border-top:1px solid #edf2f7;padding-top:12px}.fee-validation-score{background:#f8fbff;border:1px solid #dfeaf4;border-radius:12px;margin:16px;padding:16px}.fee-validation-score b{color:#0a9d69;font-size:36px;display:block}.drawer-risk,.fee-log-list{padding:0 16px 16px}.fee-log-list span{background:#fbfdff;border:1px solid #e2ecf5;border-radius:10px;padding:12px;display:block}.fee-board-grid,.fee-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fee-board-grid p,.fee-rule-grid p{color:#718398}.fee-rule-grid article{background:#fff;border:1px solid #dbe7f2;border-radius:12px;min-width:0;padding:14px;box-shadow:0 8px 22px #254a690f}.fee-rule-grid article header,.fee-rule-grid footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.fee-rule-grid article div{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.fee-rule-grid article div>*{background:#f4f8fc;border-radius:8px;padding:8px}@media (width<=1680px){.fee-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.fee-filter-bar,.fee-filter-bar.compact{grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(112px,1fr))}.fee-board-grid,.fee-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1460px){.fee-workbench-grid,.fee-lower-grid,.fee-reconciliation{grid-template-columns:1fr}.fee-bill-hero{grid-template-columns:repeat(3,minmax(0,1fr))}.fee-info-grid,.fee-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fee-stepper{grid-template-columns:repeat(3,minmax(0,1fr))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
