:root{--bg-900:#080b12;--bg-800:#0c1220;--bg-700:#141d31;--bg-600:#1e293b;--accent-cyan:#00f0ff;--accent-blue:#3b82f6;--accent-purple:#a855f7;--accent-amber:#f59e0b;--accent-red:#ef4444;--accent-green:#22c55e;--accent-pink:#ec4899;--text-100:#f8fafc;--text-200:#e2e8f0;--text-300:#94a3b8;--text-400:#64748b;--panel-bg:#101626d1;--panel-border:#00f0ff29;--panel-shadow:0 14px 40px #0000006b, inset 0 1px 0 #ffffff0d;--font:"PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;--font-mono:"DIN Alternate", "Roboto Mono", "Courier New", monospace;--radius:16px;--radius-sm:12px;--radius-xs:8px}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-900);height:100%;color:var(--text-100);font-family:var(--font);font-size:14px;overflow:hidden}body{position:relative}.page-scroll{height:100vh;overflow-y:auto}.page-scroll::-webkit-scrollbar{width:6px}.page-scroll::-webkit-scrollbar-track{background:#080b12cc}.page-scroll::-webkit-scrollbar-thumb{background:#00f0ff40;border-radius:3px}body:before{content:"";pointer-events:none;z-index:-2;background-image:linear-gradient(#00f0ff08 1px,#0000 1px),linear-gradient(90deg,#00f0ff08 1px,#0000 1px);background-size:36px 36px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000 0%,#0000 78%);mask-image:radial-gradient(circle,#000 0%,#0000 78%)}body:after{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle at 18% 28%,#3b82f61f,#0000 34%),radial-gradient(circle at 82% 22%,#a855f71a,#0000 30%),radial-gradient(circle at 62% 82%,#00f0ff0f,#0000 42%);position:fixed;inset:0}.bubbles-bg{pointer-events:none;z-index:-1;position:fixed;inset:0;overflow:hidden}.bubble{opacity:0;background:radial-gradient(circle at 30% 30%,#00f0ff2e,#3b82f608);border-radius:50%;animation:linear infinite bubble-rise;position:absolute;bottom:-120px;box-shadow:0 0 40px #00f0ff1f,inset 0 0 20px #ffffff14}@keyframes bubble-rise{0%{opacity:0;transform:translateY(0)scale(1)}8%{opacity:.55}92%{opacity:.55}to{opacity:0;transform:translateY(-120vh)scale(1.2)}}.scan-line{opacity:.45;pointer-events:none;z-index:0;background:linear-gradient(90deg,#0000,#00f0ff59,#0000);height:4px;animation:8s linear infinite scan;position:fixed;top:0;left:0;right:0}@keyframes scan{0%{opacity:0;transform:translateY(-10vh)}10%{opacity:.45}90%{opacity:.45}to{opacity:0;transform:translateY(110vh)}}.page{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}.page.screen{height:100vh;min-height:0;overflow:hidden}.header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:linear-gradient(#0a0d15eb,#0a0d15c7);border-bottom:1px solid #00f0ff29;flex:none;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;box-shadow:0 4px 24px #0000004d,0 1px #00f0ff0d}.title-block{align-items:center;gap:14px;display:flex}.logo-hex{flex:none;width:38px;height:42px}.logo-hex svg{fill:none;width:100%;height:100%;stroke:var(--accent-cyan);stroke-width:2.5px;filter:drop-shadow(0 0 10px #00f0ff8c);animation:3s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{filter:drop-shadow(0 0 6px #00f0ff66)}50%{filter:drop-shadow(0 0 20px #00f0fff2)}}.header h1{letter-spacing:1.2px;color:var(--text-100);font-size:18px;font-weight:600}.subtitle{color:var(--accent-cyan);letter-spacing:2.4px;text-transform:uppercase;opacity:.9;margin-top:2px;font-size:10px}.header-actions{align-items:center;gap:12px;display:flex}.clock{font-family:var(--font-mono);color:var(--accent-cyan);letter-spacing:1.2px;text-shadow:0 0 12px #00f0ff73;margin-left:18px;font-size:18px}.btn,.btn-primary,.btn-link{border-radius:var(--radius-xs);color:var(--accent-cyan);cursor:pointer;white-space:nowrap;background:#00f0ff12;border:1px solid #00f0ff52;justify-content:center;align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex;position:relative;overflow:hidden}.btn:before,.btn-link:before{content:"";background:linear-gradient(90deg,#0000,#00f0ff1f,#0000);transition:transform .4s;position:absolute;inset:0;transform:translate(-100%)}.btn:hover,.btn-link:hover{background:#00f0ff2e;border-color:#00f0ff99;transform:translateY(-1px);box-shadow:0 0 18px #00f0ff33}.btn:hover:before,.btn-link:hover:before{transform:translate(100%)}.btn-primary{color:var(--text-100);text-shadow:0 0 6px #00f0ff40;background:linear-gradient(90deg,#00f0ff38,#3b82f661);border-color:#00f0ff8c;box-shadow:0 0 14px #00f0ff1f}.btn-primary:hover{background:linear-gradient(90deg,#00f0ff52,#3b82f67a);transform:translateY(-1px);box-shadow:0 0 26px #00f0ff40}.btn:disabled,.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-sm{padding:6px 12px;font-size:12px}.btn-lg{border-radius:var(--radius-sm);padding:16px 32px;font-size:15px}.panel{border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(155deg,#14182cf0,#0c101ee0);flex-direction:column;min-height:0;padding:18px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.panel:hover{border-color:#00f0ff47;transform:translateY(-1px);box-shadow:0 14px 44px #00000073,0 0 22px #00f0ff14,inset 0 1px #ffffff0f}.panel:before{content:"";opacity:.9;background:linear-gradient(90deg,#0000,#00f0ffa6,#0000);height:1px;position:absolute;top:0;left:0;right:0}.panel:after{content:"";border-top:1px solid var(--accent-cyan);border-left:1px solid var(--accent-cyan);opacity:.8;width:8px;height:8px;position:absolute;top:0;left:0}.panel-accent-cyan{border-color:#00f0ff61;box-shadow:0 14px 40px #0000006b,inset 0 1px #00f0ff0f}.panel-accent-cyan:before{background:linear-gradient(90deg,#0000,#00f0ffbf,#0000)}.panel-accent-cyan:after{border-top-color:var(--accent-cyan);border-left-color:var(--accent-cyan)}.panel-accent-cyan .panel-title{color:var(--accent-cyan);border-left-color:var(--accent-cyan);text-shadow:0 0 10px #00f0ff40}.panel-accent-purple{border-color:#a855f761;box-shadow:0 14px 40px #0000006b,inset 0 1px #a855f70f}.panel-accent-purple:before{background:linear-gradient(90deg,#0000,#a855f7bf,#0000)}.panel-accent-purple:after{border-top-color:var(--accent-purple);border-left-color:var(--accent-purple)}.panel-accent-purple .panel-title{color:var(--accent-purple);border-left-color:var(--accent-purple);text-shadow:0 0 10px #a855f740}.panel-accent-amber{border-color:#f59e0b61;box-shadow:0 14px 40px #0000006b,inset 0 1px #f59e0b0f}.panel-accent-amber:before{background:linear-gradient(90deg,#0000,#f59e0bbf,#0000)}.panel-accent-amber:after{border-top-color:var(--accent-amber);border-left-color:var(--accent-amber)}.panel-accent-amber .panel-title{color:var(--accent-amber);border-left-color:var(--accent-amber);text-shadow:0 0 10px #f59e0b40}.panel-accent-green{border-color:#22c55e61;box-shadow:0 14px 40px #0000006b,inset 0 1px #22c55e0f}.panel-accent-green:before{background:linear-gradient(90deg,#0000,#22c55ebf,#0000)}.panel-accent-green:after{border-top-color:var(--accent-green);border-left-color:var(--accent-green)}.panel-accent-green .panel-title{color:var(--accent-green);border-left-color:var(--accent-green);text-shadow:0 0 10px #22c55e40}.panel-compact{flex:none;min-height:auto;max-height:160px;padding:14px}.panel-compact .panel-title{margin-bottom:10px}.panel-grow{flex:4 1 0;min-height:0}.ai-bg-canvas{z-index:0;pointer-events:none;opacity:.28;position:absolute;inset:0}.ai-bg-canvas~.panel-title,.ai-bg-canvas~.panel-body{z-index:1;position:relative}.panel-title{color:var(--accent-cyan);letter-spacing:1.6px;text-transform:uppercase;border-left:3px solid var(--accent-cyan);text-shadow:0 0 8px #00f0ff33;flex:none;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;padding-left:12px;font-size:13px;font-weight:600;display:flex}.panel-title small{color:var(--text-400);letter-spacing:1px;text-transform:none;font-size:10px;font-weight:400}.panel-body{flex:auto;min-height:0;position:relative;overflow:auto}.panel-small{flex:22%}.panel-medium{flex:32%}.panel-large{flex:46%}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;display:grid}.stat-card{border-radius:var(--radius-xs);background:#1e293b7a;border:1px solid #ffffff0d;flex-direction:column;gap:7px;padding:14px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg, var(--accent-cyan), transparent);opacity:.6;height:2px;position:absolute;top:0;left:0;right:0}.stat-card:hover{transform:translateY(-3px);box-shadow:0 6px 18px #00f0ff1f}.stat-card.accent-cyan:before{background:linear-gradient(90deg, var(--accent-cyan), transparent)}.stat-card.accent-blue:before{background:linear-gradient(90deg, var(--accent-blue), transparent)}.stat-card.accent-purple:before{background:linear-gradient(90deg, var(--accent-purple), transparent)}.stat-card.accent-amber:before{background:linear-gradient(90deg, var(--accent-amber), transparent)}.stat-card.accent-green:before{background:linear-gradient(90deg, var(--accent-green), transparent)}.stat-card.accent-red:before{background:linear-gradient(90deg, var(--accent-red), transparent)}.stat-card.accent-cyan .stat-value{color:var(--accent-cyan);text-shadow:0 0 10px #00f0ff40}.stat-card.accent-blue .stat-value{color:var(--accent-blue);text-shadow:0 0 10px #3b82f640}.stat-card.accent-purple .stat-value{color:var(--accent-purple);text-shadow:0 0 10px #a855f740}.stat-card.accent-amber .stat-value{color:var(--accent-amber);text-shadow:0 0 10px #f59e0b40}.stat-card.accent-green .stat-value{color:var(--accent-green);text-shadow:0 0 10px #22c55e40}.stat-card.accent-red .stat-value{color:var(--accent-red);text-shadow:0 0 10px #ef444440}.stat-label{color:var(--text-300);letter-spacing:1px;text-transform:uppercase;font-size:10px}.stat-value{color:var(--text-100);font-size:19px;font-weight:700;font-family:var(--font-mono);line-height:1.2}.stat-value small{color:var(--text-300);margin-left:4px;font-size:11px;font-weight:400}.kpi-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.kpi-grid-4{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.kpi-card{border-radius:var(--radius-xs);text-align:center;background:#1e293b73;border:1px solid #ffffff0d;padding:16px 12px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.kpi-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #00f0ff1f}.kpi-card:after{content:"";background:linear-gradient(90deg, transparent, var(--accent-cyan), transparent);opacity:.8;height:2px;position:absolute;top:0;left:0;right:0}.kpi-card.accent-blue:after{background:linear-gradient(90deg, transparent, var(--accent-blue), transparent)}.kpi-card.accent-purple:after{background:linear-gradient(90deg, transparent, var(--accent-purple), transparent)}.kpi-card.accent-amber:after{background:linear-gradient(90deg, transparent, var(--accent-amber), transparent)}.kpi-label{color:var(--text-300);letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;font-size:10px}.kpi-value{color:var(--text-100);font-size:23px;font-weight:700;font-family:var(--font-mono)}.kpi-value small{color:var(--text-300);font-size:11px}.table-wrap{border-radius:var(--radius-xs);background:#0a0d154d;border:1px solid #00f0ff1a;flex:auto;min-height:0;overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:12px}.data-table th,.data-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #00f0ff12;padding:10px 12px}.data-table th{color:var(--accent-cyan);letter-spacing:.5px;text-shadow:0 0 6px #00f0ff26;background:#00f0ff1a;font-size:11px;font-weight:600;position:sticky;top:0}.data-table tr:nth-child(2n) td{background:#ffffff05}.data-table tr:hover td{background:#00f0ff0f}.data-table td{color:var(--text-200)}.md-table{border-collapse:collapse;width:100%;margin:8px 0;font-size:12px}.md-table th,.md-table td{text-align:left;color:var(--text-200);border-bottom:1px solid #00f0ff1a;padding:6px 10px}.md-table th{color:var(--accent-cyan);background:#00f0ff0f;font-weight:600}.tag{border:1px solid;border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:500;display:inline-flex}.tag-cyan{color:var(--accent-cyan);background:#00f0ff14;border-color:#00f0ff66;box-shadow:0 0 6px #00f0ff14}.tag-blue{color:var(--accent-blue);background:#3b82f614;border-color:#3b82f666;box-shadow:0 0 6px #3b82f614}.tag-purple{color:var(--accent-purple);background:#a855f714;border-color:#a855f766;box-shadow:0 0 6px #a855f714}.tag-amber{color:var(--accent-amber);background:#f59e0b14;border-color:#f59e0b66;box-shadow:0 0 6px #f59e0b14}.tag-green{color:var(--accent-green);background:#22c55e14;border-color:#22c55e66;box-shadow:0 0 6px #22c55e14}.tag-red{color:var(--accent-red);background:#ef444414;border-color:#ef444466;box-shadow:0 0 6px #ef444414}.tag-pink{color:var(--accent-pink);background:#ec489914;border-color:#ec489966;box-shadow:0 0 6px #ec489914}input[type=text],input[type=password],input[type=date],input[type=file],select{border-radius:var(--radius-xs);color:var(--text-100);background:#0f172ad9;border:1px solid #00f0ff3d;outline:none;padding:8px 12px;font-size:13px;transition:border-color .2s,box-shadow .2s}input[type=text]:focus,input[type=password]:focus,input[type=date]:focus,select:focus{border-color:var(--accent-cyan);box-shadow:0 0 12px #00f0ff26}input[type=file]{padding:6px}.hint{color:var(--text-400);margin-top:4px;font-size:11px}.modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;background:#000000b8;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-overlay.active{display:flex}.modal{background:var(--bg-800);border:1px solid var(--panel-border);border-radius:var(--radius);width:720px;max-width:92vw;max-height:92vh;padding:24px;overflow:auto;box-shadow:0 0 52px #00f0ff2e}.modal-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.modal-header h3{color:var(--accent-cyan);letter-spacing:1px;font-size:17px}.modal-close{color:var(--text-300);cursor:pointer;background:0 0;border:none;border-radius:50%;width:32px;height:32px;font-size:24px;transition:all .2s}.modal-close:hover{color:var(--accent-cyan);background:#00f0ff1a}.spinner{border:2px solid #00f0ff33;border-top-color:var(--accent-cyan);border-radius:50%;width:24px;height:24px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-row{color:var(--text-300);justify-content:center;align-items:center;gap:8px;padding:22px;display:flex}.status-msg{min-height:16px;margin-top:6px;font-size:11px}.status-msg.ok{color:var(--accent-green)}.status-msg.err{color:var(--accent-red)}.empty-state{color:var(--text-400);text-align:center;padding:20px;font-size:12px}.home-layout{flex:auto;grid-template-rows:auto auto auto 1fr;grid-template-columns:1fr 1fr;gap:20px;padding:24px;display:grid}.hero-section{text-align:center;border-radius:var(--radius);background:radial-gradient(circle,#00f0ff0f,#0000 60%);border:1px solid #00f0ff1a;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:22px;padding:28px 24px;display:flex;position:relative;overflow:hidden}.hero-section:before{content:"";pointer-events:none;background:linear-gradient(135deg,#00f0ff0a,#0000 40%,#a855f70a);position:absolute;inset:0}.hero-core{flex:none;justify-content:center;align-items:center;width:150px;height:150px;display:flex;position:relative}.hero-core .ring{border:1px solid #00f0ff40;border-radius:50%;animation:12s linear infinite rotate;position:absolute}.hero-core .ring-1{width:100%;height:100%}.hero-core .ring-2{width:74%;height:74%;animation-duration:7s;animation-direction:reverse}.hero-core .ring-3{width:46%;height:46%;animation-duration:4s}.hero-core .core-icon{width:46px;height:46px;color:var(--accent-cyan);filter:drop-shadow(0 0 12px #00f0ffb3)}@keyframes rotate{to{transform:rotate(360deg)}}.hero-title{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-blue), var(--accent-purple));-webkit-text-fill-color:transparent;text-shadow:0 0 30px #00f0ff26;-webkit-background-clip:text;background-clip:text;font-size:40px;font-weight:700;line-height:1.2}.hero-desc{color:var(--text-300);max-width:620px;font-size:15px;line-height:1.8}.hero-actions{gap:20px;margin-top:4px;display:flex}.features-section{grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.feature-card{border-radius:var(--radius-sm);cursor:default;background:linear-gradient(145deg,#182238b8,#0e14249e);border:1px solid #00f0ff24;flex-direction:column;align-items:center;gap:12px;padding:20px 16px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.feature-card:before{content:"";opacity:.8;background:linear-gradient(90deg,#0000,#00f0ff80,#0000);height:1px;position:absolute;top:0;left:0;right:0}.feature-card:hover{border-color:#00f0ff6b;transform:translateY(-5px);box-shadow:0 12px 34px #00f0ff1f}.feature-icon{width:44px;height:44px;color:var(--accent-cyan);filter:drop-shadow(0 0 8px #00f0ff80)}.feature-card h3{color:var(--text-100);font-size:15px;font-weight:600}.feature-card p{color:var(--text-300);text-align:center;font-size:11px;line-height:1.55}.stats-section{grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.preview-section{grid-column:1/-1;grid-template-columns:1.3fr 1fr;gap:16px;min-height:260px;display:grid}.preview-section .panel{min-height:260px}.system-status{color:var(--text-300);background:#0a0d1599;border-top:1px solid #00f0ff1a;flex:none;justify-content:center;gap:32px;padding:18px;font-size:11px;display:flex}.system-status .dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.dot.online{background:var(--accent-green);box-shadow:0 0 10px var(--accent-green)}.dot.offline{background:var(--accent-red);box-shadow:0 0 10px var(--accent-red)}.screen-layout{flex:1;grid-template-columns:1.15fr 2fr 1.15fr;gap:16px;padding:16px;display:grid;overflow:hidden}.screen-column{flex-direction:column;gap:16px;min-height:0;display:flex;overflow:hidden}.screen-column>.panel{flex:1 1 0;min-height:0}.screen-column>.panel.panel-grow{flex:3 1 0}.screen-column>.panel.panel-radar{flex:1.5 1 0}.screen-column>.panel.panel-records{flex:1 1 0}.screen-column>.panel.panel-compact{flex:none;max-height:160px}.vehicle-carousel{flex-direction:column;flex:auto;gap:10px;min-height:0;display:flex;overflow:hidden}.vehicle-card{border-radius:var(--radius-xs);opacity:.95;background:#1e293b73;border:1px solid #00f0ff1a;flex-direction:column;flex:1 1 0;justify-content:center;gap:8px;padding:12px;transition:all .4s;display:flex}.vehicle-card.active{opacity:1;border-color:#00f0ff59;box-shadow:0 0 18px #00f0ff24}.vehicle-plate{color:var(--accent-cyan);font-size:18px;font-weight:700;font-family:var(--font-mono);letter-spacing:1px}.vehicle-plate.unrecognized{color:var(--text-400)}.vehicle-meta{color:var(--text-300);justify-content:space-between;font-size:12px;display:flex}.vehicle-tags{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.campaign-card{border-radius:var(--radius-xs);background:#1e293b61;border:1px solid #a855f726;padding:12px;transition:transform .2s,border-color .2s}.campaign-card:hover{border-color:#a855f752;transform:translateY(-2px)}.campaign-card h4{color:var(--text-100);margin-bottom:6px;font-size:13px;font-weight:600}.campaign-card p{color:var(--text-300);-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.campaign-card .progress{background:#ffffff0f;border-radius:2px;height:3px;margin-top:8px;overflow:hidden}.campaign-card .progress-bar{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-purple));height:100%;transition:width .4s}.list-items{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex;overflow:auto}.list-item{border-radius:var(--radius-xs);border-left:2px solid var(--accent-blue);background:#1e293b6b;padding:10px 12px;transition:transform .2s,background .2s}.list-item:hover{background:#1e293b94;transform:translate(2px)}.list-item-title{color:var(--text-100);margin-bottom:4px;font-size:12px;font-weight:500}.list-item-desc{color:var(--text-300);font-size:11px;line-height:1.45}.list-item-foot{color:var(--accent-cyan);justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.mini-list{flex-direction:column;flex:auto;gap:6px;min-height:0;display:flex;overflow:auto}.mini-item{border-radius:var(--radius-xs);border-left:2px solid var(--accent-blue);background:#1e293b59;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;transition:background .2s;display:flex}.mini-item:hover{background:#1e293b80}.mini-item-main{flex-direction:column;gap:2px;min-width:0;display:flex}.mini-item-title{color:var(--text-100);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.mini-item-sub{color:var(--text-300);font-size:11px}.mini-item-value{color:var(--accent-cyan);font-size:12px;font-family:var(--font-mono);flex:none}.chart-wrap{flex:auto;justify-content:center;align-items:center;gap:12px;min-height:0;display:flex}.chart-wrap svg{max-width:100%;max-height:100%}.car-layout{flex:1;grid-template-rows:1fr;gap:16px;padding:16px;display:grid;overflow:hidden}.plate-card-panel{flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:12px;display:flex}.plate-card-panel .plate-display{background:#00f0ff14;border-color:#00f0ff59;justify-content:center;width:100%;padding:10px 20px;box-shadow:0 0 18px #00f0ff1f}.plate-card-panel .plate-display strong{letter-spacing:2px;font-size:24px}.car-summary-bar{grid-template-columns:repeat(4,1fr);gap:12px;width:100%;display:grid}.car-summary-bar .stat-card{gap:4px;padding:10px}.car-summary-bar .stat-value{font-size:15px}.car-summary-bar .stat-label{font-size:9px}.car-columns{flex:1;grid-template-columns:1.2fr 2.4fr 1.2fr;gap:16px;min-height:0;display:grid;overflow:hidden}.plate-display{text-align:center;border-radius:var(--radius-sm);background:#00f0ff1a;border:1px solid #00f0ff59;align-items:center;gap:10px;padding:8px 20px;display:inline-flex;box-shadow:0 0 18px #00f0ff26}.plate-display strong{font-size:30px;font-family:var(--font-mono);color:var(--accent-cyan);letter-spacing:2px;text-shadow:0 0 16px #00f0ffa6}.car-layout .panel-title{letter-spacing:1.8px;font-size:16px}.car-layout .panel-title small{font-size:11px}.car-layout .stat-value{font-size:18px}.car-layout .stat-label{font-size:11px}.car-layout .data-table{font-size:13px}.car-layout .data-table th{font-size:12px}.panel-accent-purple .tag-core{border-color:var(--accent-purple);background:radial-gradient(circle,#a855f73d,#a855f70d);box-shadow:0 0 32px #a855f74d}.panel-accent-purple .tag-core svg,.panel-accent-purple .tag-core span{color:var(--accent-purple)}.panel-accent-purple .network-tag:hover{box-shadow:0 0 16px #a855f740}.tag-network{flex:auto;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.tag-network svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.tag-core{z-index:2;border:2px solid var(--accent-cyan);background:radial-gradient(circle,#00f0ff3d,#00f0ff0d);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:88px;height:88px;animation:3s ease-in-out infinite pulse-core;display:flex;position:relative;box-shadow:0 0 32px #00f0ff4d}@keyframes pulse-core{0%,to{box-shadow:0 0 22px #00f0ff2e}50%{box-shadow:0 0 48px #00f0ff8c}}.tag-core svg{width:28px;height:28px;color:var(--accent-cyan);position:static}.tag-core span{color:var(--accent-cyan);font-size:10px;font-weight:600}.network-tag{z-index:3;white-space:nowrap;background:#0f172aeb;border:1px solid;border-radius:999px;padding:5px 11px;font-size:11px;font-weight:500;transition:transform .3s,box-shadow .2s;position:absolute}.network-tag:hover{z-index:10;transform:translate(-50%,-50%)scale(1.05);box-shadow:0 0 16px #00f0ff2e}.ai-marketing-area{flex-direction:column;flex:auto;gap:14px;min-height:0;display:flex;overflow:hidden}.ai-marketing-area .panel{flex-direction:column;flex:auto;display:flex;overflow:hidden}.ai-marketing-body{flex:auto;align-items:stretch;gap:18px;min-height:0;padding:8px 4px 8px 0;display:flex;overflow:hidden}.ai-robot-wrap{flex:0 0 160px;justify-content:center;align-items:center;display:flex;position:relative}.ai-robot{object-fit:contain;z-index:2;filter:drop-shadow(0 0 18px #00f0ff73);width:100%;height:auto;max-height:100%;animation:4s ease-in-out infinite robot-float;position:relative}.robot-glow{z-index:1;background:radial-gradient(circle,#00f0ff38,#0000 70%);border-radius:50%;width:120px;height:120px;animation:3s ease-in-out infinite robot-pulse;position:absolute}@keyframes robot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes robot-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.9;transform:scale(1.18)}}.ai-stream-box{min-height:0;color:var(--text-200);background:#0a0e1ac7;border:1px solid #a855f76b;border-radius:14px;flex:auto;padding:18px;font-size:15px;line-height:2;overflow:auto;box-shadow:inset 0 0 26px #a855f71f,0 0 18px #a855f714}.ai-stream-box h1,.ai-stream-box h2,.ai-stream-box h3{color:var(--accent-purple);margin:12px 0 8px;font-size:16px;font-weight:600}.ai-stream-box strong{color:var(--accent-cyan);font-weight:600}.ai-stream-box mark{color:var(--accent-amber);background:#f59e0b2e;border-radius:3px;padding:1px 4px}.ai-stream-box .highlight-status{border-radius:3px;padding:1px 5px}.ai-stream-box .highlight-status.good{color:var(--accent-green);background:#22c55e24}.ai-stream-box .highlight-status.danger{color:var(--accent-red);background:#ef444424}.analysis-dimensions{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.analysis-dim{flex-direction:column;gap:3px;display:flex}.analysis-dim-label{color:var(--text-200);justify-content:space-between;align-items:center;font-size:12px;display:flex}.analysis-bar{background:#ffffff14;border-radius:3px;height:5px;overflow:hidden}.analysis-bar-fill{border-radius:3px;height:100%;transition:width .9s cubic-bezier(.22,1,.36,1);box-shadow:0 0 8px #00f0ff40}.bar-green{background:linear-gradient(90deg,#22c55eb3,#22c55e);box-shadow:0 0 8px #22c55e4d}.bar-purple{background:linear-gradient(90deg,#a855f7b3,#a855f7);box-shadow:0 0 8px #a855f74d}.bar-cyan{background:linear-gradient(90deg,#00f0ffb3,#00f0ff);box-shadow:0 0 8px #00f0ff4d}.bar-amber{background:linear-gradient(90deg,#f59e0bb3,#f59e0b);box-shadow:0 0 8px #f59e0b4d}.bar-red{background:linear-gradient(90deg,#ef4444b3,#ef4444);box-shadow:0 0 8px #ef44444d}.bar-mid{background:linear-gradient(90deg,#00f0ff80,#3b82f6e6)}.bar-low{background:linear-gradient(90deg,#94a3b880,#94a3b8e6)}.bar-normal{background:linear-gradient(90deg,#22c55e80,#22c55ee6)}.bar-danger{background:linear-gradient(90deg,#ef444480,#ef4444e6)}.analysis-summary-title{color:var(--accent-cyan);letter-spacing:1px;text-transform:uppercase;margin:10px 0 6px;font-size:12px;font-weight:600}.analysis-point{border-left:2px solid var(--accent-cyan);color:var(--text-200);background:#00f0ff0a;border-radius:0 6px 6px 0;align-items:flex-start;gap:8px;margin-bottom:4px;padding:6px 9px;font-size:12px;line-height:1.55;display:flex}.analysis-point-dot{background:var(--accent-cyan);width:5px;height:5px;box-shadow:0 0 6px var(--accent-cyan);border-radius:50%;flex-shrink:0;margin-top:6px}.ai-marketing-footer{border-top:1px solid #00f0ff1a;flex:none;gap:8px;margin-top:8px;padding-top:10px;display:flex}.stream-cursor{background:var(--accent-cyan);vertical-align:middle;width:7px;height:15px;box-shadow:0 0 6px var(--accent-cyan);margin-left:3px;animation:.8s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.radar-wrap{flex:auto;justify-content:center;align-items:center;min-height:0;display:flex}.radar-wrap svg{filter:drop-shadow(0 0 16px #00f0ff33);max-width:100%;max-height:100%}.radar-wrap svg polygon[data-type=web]{fill:#00f0ff0a}.radar-wrap svg polygon[data-type=data]{filter:drop-shadow(0 0 8px #00f0ff8c)}.radar-wrap svg circle[data-type=vertex]{filter:drop-shadow(0 0 5px #00f0ffcc)}.radar-wrap svg text{fill:var(--text-200);font-size:12px;font-weight:500}.record-table-wrap{flex:auto;min-height:0;overflow:auto}.new-customer-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--panel-border);border-radius:var(--radius);z-index:50;text-align:center;background:#0a0d15e6;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:none;position:absolute;inset:74px 16px 16px}.new-customer-overlay.active{display:flex}.new-customer-overlay h2{color:var(--accent-cyan);text-shadow:0 0 16px #00f0ff59;margin-bottom:14px;font-size:28px}.new-customer-overlay p{color:var(--text-300);max-width:640px;margin-bottom:24px;line-height:1.7}.data-grid{flex:1;grid-template-columns:320px 1fr;gap:16px;min-height:0;padding:16px;display:grid}.data-sidebar{flex-direction:column;gap:16px;min-height:0;display:flex;overflow:hidden}.data-sidebar .panel{flex:none}.overview-cards{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.upload-groups{grid-template-columns:1fr 1fr;gap:14px;display:grid}.upload-group{border-radius:var(--radius-xs);background:#0f172a73;border:1px solid #00f0ff1f;padding:12px}.upload-group h4{color:var(--accent-cyan);margin-bottom:8px;font-size:12px;font-weight:600}.filter-bar{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px;display:grid}.filter-bar input,.filter-bar select,.filter-bar button{min-width:0}.pagination{flex:none;justify-content:center;align-items:center;gap:16px;margin-top:12px;display:flex}.hidden{display:none!important}.text-center{text-align:center}.text-cyan{color:var(--accent-cyan)}.text-amber{color:var(--accent-amber)}.text-purple{color:var(--accent-purple)}.text-green{color:var(--accent-green)}.text-red{color:var(--accent-red)}@media (width<=1200px){.home-layout{grid-template-columns:1fr}.features-section,.stats-section{grid-template-columns:repeat(2,1fr)}.preview-section{grid-template-columns:1fr}.screen-layout,.car-columns{grid-template-columns:1fr 1.6fr}.screen-column.right,.car-columns .right{display:none}.data-grid,.upload-groups{grid-template-columns:1fr}.filter-bar,.car-summary-bar{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.features-section,.stats-section,.preview-section,.screen-layout,.car-columns,.data-grid,.filter-bar,.kpi-grid,.kpi-grid-4,.car-summary-bar{grid-template-columns:1fr}body{overflow:auto}.hero-title{font-size:28px}.hero-actions{flex-direction:column;gap:10px}.header{flex-wrap:wrap;gap:10px;height:auto;padding:10px 14px}.header-actions{flex-wrap:wrap}}
