:root{color:#1e293b;background:#f3f6fa;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--sidebar-width: 248px;--border: #dde4ed;--muted: #64748b;--surface: #ffffff;--primary: #2563eb;--primary-soft: #eff6ff}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}.app-shell{min-height:100vh}.sidebar{position:fixed;z-index:20;inset:0 auto 0 0;display:flex;width:var(--sidebar-width);flex-direction:column;overflow-y:auto;color:#dbe7f7;background:#172033;border-right:1px solid #202d44}.brand{display:flex;align-items:center;gap:12px;min-height:82px;padding:18px 22px;border-bottom:1px solid rgb(255 255 255 / 8%)}.brand-mark{display:grid;width:38px;height:38px;place-items:center;color:#fff;font-weight:800;background:#2563eb;border-radius:10px}.brand strong,.brand small{display:block}.brand strong{color:#fff;font-size:15px;letter-spacing:.02em}.brand small{margin-top:3px;color:#8fa3bf;font-size:12px}.navigation{flex:1;padding:14px 12px 24px}.navigation-section{margin-bottom:18px}.navigation-section>p{margin:0 10px 7px;color:#7186a4;font-size:11px;font-weight:700;letter-spacing:.12em}.navigation-section a{display:flex;align-items:center;gap:11px;min-height:42px;margin:2px 0;padding:8px 10px;color:#b9c8dc;font-size:14px;border-radius:8px;transition:.15s ease}.navigation-section a:hover{color:#fff;background:#ffffff0f}.navigation-section a.router-link-exact-active{color:#fff;background:#2563eb}.navigation-icon{display:grid;width:24px;height:24px;flex:0 0 24px;place-items:center;color:currentColor;font-size:12px;font-weight:700;border:1px solid currentColor;border-radius:7px;opacity:.8}.sidebar-footnote{margin:0 16px 18px;padding:10px 12px;color:#8094b0;font-size:12px;text-align:center;background:#ffffff0a;border:1px solid rgb(255 255 255 / 7%);border-radius:8px}.content-shell{min-height:100vh;margin-left:var(--sidebar-width)}.topbar{position:sticky;z-index:10;top:0;display:flex;min-height:82px;align-items:center;justify-content:space-between;gap:24px;padding:14px clamp(20px,3vw,42px);background:#fffffff0;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar-title{display:flex;align-items:center;gap:12px}.topbar-title span{display:block;margin-bottom:2px;color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.1em}.topbar h1{margin:0;color:#0f172a;font-size:20px;line-height:1.2}.topbar-context{display:flex;align-items:center;gap:18px}.user-context{display:block;min-width:92px;padding-left:18px;text-align:right;border-left:1px solid var(--border)}.user-context:hover strong{color:#1d4ed8}.user-context span,.user-context strong{display:block}.user-context span{color:#94a3b8;font-size:11px}.user-context strong{max-width:150px;margin-top:2px;overflow:hidden;color:#334155;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.logout-button{min-height:34px;padding:6px 11px;color:#475569;font-size:12px;font-weight:700;background:#fff;border:1px solid var(--border);border-radius:8px;cursor:pointer}.logout-button:hover{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.logout-button:disabled{cursor:wait;opacity:.6}.context-item{text-align:right}.context-item span,.context-item strong{display:block}.context-item span{color:#94a3b8;font-size:11px}.context-item strong{margin-top:2px;color:#334155;font-size:13px}.environment-badge,.phase-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;color:#1d4ed8;font-size:12px;font-weight:700;white-space:nowrap;background:#dbeafe;border:1px solid #bfdbfe;border-radius:999px}.environment-badge.is-production{color:#b91c1c;background:#fee2e2;border-color:#fecaca}.environment-badge.is-staging{color:#a16207;background:#fef3c7;border-color:#fde68a}.menu-button{display:none;width:38px;height:38px;color:#334155;background:#fff;border:1px solid var(--border);border-radius:8px;cursor:pointer}.sidebar-scrim{display:none}.main-content{width:min(1440px,100%);margin:0 auto;padding:clamp(24px,3vw,42px)}.page-stack{display:grid;gap:24px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.page-heading>div{max-width:780px}.eyebrow,.card-kicker{margin-bottom:8px;color:var(--primary);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.page-heading h2{margin-bottom:10px;color:#0f172a;font-size:clamp(25px,3vw,32px);line-height:1.2}.page-heading p:not(.eyebrow){margin:0;color:var(--muted);font-size:15px;line-height:1.75}.secondary-button,.inline-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;color:#1d4ed8;font-weight:700;background:#fff;border:1px solid #bfdbfe;border-radius:8px;cursor:pointer}.secondary-button:hover,.inline-button:hover{background:var(--primary-soft)}.secondary-button:disabled{cursor:wait;opacity:.6}.inline-button{min-height:34px;margin-top:12px;padding:6px 11px;font-size:13px}.state-panel{display:flex;min-height:156px;align-items:center;justify-content:center;gap:16px;padding:30px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 7px 24px #0f172a0a}.state-panel h2,.state-panel h3{margin-bottom:7px;color:#1e293b}.state-panel p{max-width:680px;margin:0;color:var(--muted);line-height:1.65}.state-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;color:#64748b;font-weight:800;background:#f1f5f9;border-radius:50%}.state-panel-error{justify-content:flex-start;border-color:#fecaca}.state-panel-error .state-icon{color:#b91c1c;background:#fee2e2}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.detail-card,.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 7px 24px #0f172a0a}.detail-card{padding:24px}.detail-card h3{margin-bottom:18px;color:#1e293b;font-size:17px}.check-list,.api-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.check-list li{position:relative;padding-left:25px;color:#475569;line-height:1.55}.check-list li:before{position:absolute;top:1px;left:0;content:"✓";color:#16a34a;font-weight:800}.api-list code,.dashboard-note code{color:#334155;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;word-break:break-all;background:#f1f5f9;border-radius:5px}.api-list code{display:block;padding:10px 12px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-card{min-height:128px;padding:22px}.metric-card p{margin-bottom:16px;color:var(--muted);font-size:13px}.metric-card strong{color:#0f172a;font-size:30px;line-height:1}.metric-skeleton span,.metric-skeleton strong{display:block;background:linear-gradient(90deg,#edf1f5 25%,#f7f9fb,#edf1f5 75%);background-size:200% 100%;border-radius:5px;animation:shimmer 1.25s infinite linear}.metric-skeleton span{width:52%;height:13px;margin-bottom:22px}.metric-skeleton strong{width:38%;height:30px}@keyframes shimmer{to{background-position:-200% 0}}.data-timestamp{margin:-12px 2px 0;color:#94a3b8;font-size:12px;text-align:right}.dashboard-note{display:flex;align-items:center;justify-content:space-between;gap:24px}.dashboard-note h3,.dashboard-note p{margin:0}.dashboard-note>p{max-width:620px;color:var(--muted);font-size:13px;line-height:1.6;text-align:right}.quick-test-page{width:min(1120px,100%);margin:0 auto}.quick-test-heading{align-items:center}.quick-test-heading h2{margin-bottom:7px}.quick-updated-time{flex:0 0 auto;color:#94a3b8!important;font-size:12px!important;white-space:nowrap}.quick-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0 5%;list-style:none}.quick-steps li{position:relative;display:flex;min-width:0;align-items:center;justify-content:center;gap:9px;color:#334155;font-size:13px}.quick-steps li:not(:last-child):after{position:absolute;z-index:-1;top:15px;left:calc(50% + 48px);width:calc(100% - 96px);height:1px;content:"";background:#dbe4ef}.quick-steps li>span{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;color:#1d4ed8;font-size:12px;font-weight:800;background:#eff6ff;border:1px solid #bfdbfe;border-radius:50%}.quick-launch-card{display:grid;grid-template-columns:minmax(260px,1.35fr) minmax(240px,1fr) minmax(210px,.9fr);gap:18px;align-items:start;padding:20px;background:#fff;border:1px solid #dbe4ef;border-radius:14px;box-shadow:0 10px 30px #0f172a0d}.quick-control-block{display:grid;min-width:0;gap:8px;margin:0;padding:0;border:0}.quick-control-block>label,.quick-control-block>legend,.quick-start-control>span{padding:0;color:#475569;font-size:12px;font-weight:800}.quick-control-block select{width:100%;height:50px;padding:0 40px 0 13px;overflow:hidden;color:#172033;font-weight:700;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:9px;outline:none}.quick-control-block select:focus-visible{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb21}.quick-control-block select:disabled{color:#94a3b8;background:#f8fafc}.quick-control-block>small{min-height:18px;color:#7c8ba1;font-size:11px;line-height:1.5}.quick-duration-control>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-duration-control button{display:grid;min-height:50px;place-content:center;gap:2px;color:#475569;text-align:center;background:#f8fafc;border:1px solid #dbe4ef;border-radius:9px;cursor:pointer}.quick-duration-control button:hover{border-color:#93c5fd}.quick-duration-control button:focus-visible{outline:3px solid rgb(37 99 235 / 18%);outline-offset:1px}.quick-duration-control button.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#60a5fa;box-shadow:inset 0 0 0 1px #60a5fa}.quick-duration-control button strong{font-size:14px}.quick-duration-control button span{font-size:10px}.quick-start-button{width:100%;min-height:50px;border-radius:9px;box-shadow:0 8px 18px #2563eb33}.quick-start-button:not(:disabled):hover{background:#1d4ed8}.quick-start-button:focus-visible{outline:3px solid rgb(37 99 235 / 20%);outline-offset:2px}.quick-start-button:disabled{color:#94a3b8;cursor:not-allowed;background:#e2e8f0;border-color:#e2e8f0;box-shadow:none;opacity:1}.quick-readiness:before{display:inline-block;width:6px;height:6px;margin-right:6px;vertical-align:1px;content:"";background:#94a3b8;border-radius:50%}.quick-readiness.is-ready{color:#15803d}.quick-readiness.is-ready:before{background:#22c55e}.quick-readiness.is-blocked{color:#b45309}.quick-readiness.is-blocked:before{background:#f59e0b}.quick-launch-skeleton{min-height:120px;align-items:center}.quick-launch-skeleton>span{height:50px;background:linear-gradient(90deg,#edf1f5 25%,#f7f9fb,#edf1f5 75%);background-size:200% 100%;border-radius:9px;animation:shimmer 1.25s infinite linear}.quick-inline-message{margin:-12px 0 0;padding:10px 13px;font-size:12px;line-height:1.55;border:1px solid transparent;border-radius:8px}.quick-inline-message.is-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.quick-inline-message.is-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.quick-inline-message.is-warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.quick-result-section{min-width:0}.quick-empty-result{display:flex;min-height:230px;align-items:center;justify-content:center;gap:16px;padding:30px;background:#ffffff8c;border:1px dashed #cbd5e1;border-radius:14px}.quick-empty-result>span{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;color:#64748b;font-weight:800;background:#f1f5f9;border-radius:50%}.quick-empty-result h3{margin-bottom:6px;color:#1e293b;font-size:17px}.quick-empty-result p{margin:0;color:#64748b;font-size:13px}.quick-result-card{overflow:hidden;background:#fff;border:1px solid #dbe4ef;border-radius:16px;box-shadow:0 12px 34px #0f172a0f}.quick-result-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:24px 26px 20px}.quick-result-header .card-kicker{margin-bottom:6px}.quick-result-header h3{margin-bottom:5px;color:#0f172a;font-size:21px}.quick-result-header p:last-child{margin:0;color:#64748b;font-size:13px}.quick-status-pill{display:inline-flex;min-height:32px;flex:0 0 auto;align-items:center;gap:7px;padding:6px 11px;color:#475569;font-size:12px;font-weight:800;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px}.quick-status-pill i{width:7px;height:7px;background:#94a3b8;border-radius:50%}.quick-status-pill.is-active{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.quick-status-pill.is-active i{background:#2563eb;box-shadow:0 0 0 4px #2563eb1f}.quick-status-pill.is-success{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.quick-status-pill.is-success i{background:#22c55e}.quick-status-pill.is-warning{color:#b45309;background:#fffbeb;border-color:#fde68a}.quick-status-pill.is-warning i{background:#f59e0b}.quick-status-pill.is-danger{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.quick-status-pill.is-danger i{background:#ef4444}.quick-status-summary{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:28px;align-items:center;padding:18px 26px;background:#f8fafc;border-top:1px solid #edf2f7;border-bottom:1px solid #edf2f7}.quick-status-summary>div:first-child{display:grid;gap:5px}.quick-status-summary>div:first-child strong{color:#334155;font-size:13px;line-height:1.55}.quick-status-summary>div:first-child span{color:#7c8ba1;font-size:12px}.quick-capture-progress{display:grid;gap:8px}.quick-capture-progress>span{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#64748b;font-size:11px}.quick-capture-progress b{font-weight:700}.quick-capture-progress strong{color:#334155}.quick-progress-track{height:7px;overflow:hidden;background:#e2e8f0;border-radius:999px}.quick-progress-track>i{display:block;height:100%;background:#2563eb;border-radius:inherit;transition:width .3s ease}.quick-progress-track.is-analysis>i{background:#0ea5a4}.quick-task-warning{margin:18px 26px 0;padding:10px 12px;color:#92400e;font-size:12px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px}.quick-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:22px 26px}.quick-kpi-grid article{position:relative;min-width:0;padding:18px 20px;background:#fbfdff;border:1px solid #e5ebf2;border-radius:11px}.quick-kpi-grid article:before{position:absolute;inset:0 auto 0 0;width:3px;content:"";background:#60a5fa;border-radius:11px 0 0 11px}.quick-kpi-grid article:nth-child(2):before{background:#2dd4bf}.quick-kpi-grid article.is-total:before{background:#6366f1}.quick-kpi-grid span,.quick-kpi-grid strong,.quick-kpi-grid small{display:block}.quick-kpi-grid span{margin-bottom:11px;color:#64748b;font-size:12px;font-weight:700}.quick-kpi-grid strong{overflow:hidden;color:#0f172a;font-size:clamp(27px,4vw,36px);line-height:1;text-overflow:ellipsis}.quick-kpi-grid small{margin-top:7px;color:#94a3b8;font-size:10px}.quick-analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #edf2f7}.quick-analysis-grid>section{min-width:0;padding:21px 26px 23px}.quick-analysis-grid>section+section{border-left:1px solid #edf2f7}.quick-section-title{display:flex;min-height:42px;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}.quick-section-title .card-kicker{margin-bottom:3px;font-size:9px}.quick-section-title h4{margin:0;color:#334155;font-size:14px}.quick-section-title>strong{color:#475569;font-size:12px;text-align:right}.quick-class-list{display:flex;flex-wrap:wrap;gap:7px}.quick-class-list>span{padding:6px 9px;color:#526176;font-size:11px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px}.quick-class-list strong{margin-left:5px;color:#172033}.quick-class-empty{margin:0;color:#94a3b8;font-size:12px}.quick-result-footer{display:flex;align-items:center;justify-content:flex-end;gap:15px;min-height:54px;padding:12px 26px;color:#94a3b8;font-size:12px;background:#fbfdff;border-top:1px solid #edf2f7}.quick-result-footer a{color:#1d4ed8;font-weight:700}.quick-result-footer a:hover{text-decoration:underline}.quick-result-footer a:focus-visible{outline:2px solid #60a5fa;outline-offset:3px;border-radius:2px}@media(max-width:980px){.quick-launch-card{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-start-control{grid-column:1 / -1}.quick-status-summary{grid-template-columns:minmax(0,1fr) minmax(220px,.8fr)}}@media(max-width:620px){.quick-test-page{gap:18px}.quick-test-heading{gap:8px}.quick-updated-time{margin:0}.quick-steps{padding:0}.quick-steps li{gap:6px;font-size:11px}.quick-steps li:not(:last-child):after{display:none}.quick-steps li>span{width:26px;height:26px;flex-basis:26px}.quick-launch-card{grid-template-columns:1fr;gap:16px;padding:17px}.quick-start-control{grid-column:auto}.quick-launch-skeleton{min-height:230px}.quick-empty-result{min-height:190px;align-items:flex-start;justify-content:flex-start;padding:23px}.quick-result-header,.quick-status-summary{grid-template-columns:1fr}.quick-result-header{align-items:flex-start;flex-direction:column;padding:21px 20px 17px}.quick-status-summary{gap:16px;padding:16px 20px}.quick-task-warning{margin:16px 20px 0}.quick-kpi-grid{gap:7px;padding:18px 20px}.quick-kpi-grid article{padding:14px 10px 14px 13px}.quick-kpi-grid span{margin-bottom:8px}.quick-kpi-grid strong{font-size:26px}.quick-analysis-grid{grid-template-columns:1fr}.quick-analysis-grid>section{padding:19px 20px 21px}.quick-analysis-grid>section+section{border-top:1px solid #edf2f7;border-left:0}.quick-result-footer{flex-wrap:wrap;justify-content:flex-start;gap:10px 16px;padding:13px 20px}}.guided-page,.results-page{width:min(1240px,100%);margin:0 auto}.guided-heading,.results-heading{align-items:center}.guided-updated,.results-heading-actions>span{flex:0 0 auto;margin:0;color:#94a3b8!important;font-size:12px!important;white-space:nowrap}.guided-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0 4%;list-style:none}.guided-stepper li{position:relative;display:flex;min-width:0;align-items:center;justify-content:center;gap:8px;color:#94a3b8;font-size:13px}.guided-stepper li:not(:last-child):after{position:absolute;z-index:-1;top:16px;left:calc(50% + 51px);width:calc(100% - 102px);height:2px;content:"";background:#e2e8f0}.guided-stepper li>span{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;color:#64748b;font-size:12px;font-weight:800;background:#fff;border:2px solid #dbe4ef;border-radius:50%}.guided-stepper li.is-current{color:#1d4ed8}.guided-stepper li.is-current>span{color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 0 0 5px #2563eb1a}.guided-stepper li.is-done{color:#334155}.guided-stepper li.is-done>span{color:#15803d;background:#f0fdf4;border-color:#86efac}.guided-stepper li.is-done:not(:last-child):after{background:#86efac}.guided-loading,.results-loading{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.guided-loading>span,.results-loading>span{min-height:220px;background:linear-gradient(90deg,#edf1f5 25%,#f7f9fb,#edf1f5 75%);background-size:200% 100%;border-radius:16px;animation:shimmer 1.25s infinite linear}.guided-loading>span:last-child{grid-column:1 / -1;min-height:190px}.guided-workflow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.guided-step-card{position:relative;display:grid;min-width:0;gap:17px;padding:21px;background:#fff;border:1px solid #dbe4ef;border-radius:16px;box-shadow:0 9px 28px #0f172a0a}.guided-step-card.is-current{border-color:#93c5fd;box-shadow:0 12px 32px #2563eb17}.guided-step-card>header{display:flex;align-items:flex-start;gap:11px}.guided-step-card>header>span{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;color:#1d4ed8;font-size:11px;font-weight:800;background:#eff6ff;border-radius:8px}.guided-step-card h3,.guided-step-card header p{margin:0}.guided-step-card h3{margin-bottom:4px;color:#172033;font-size:16px}.guided-step-card header p{color:#7c8ba1;font-size:11px;line-height:1.55}.guided-device-field{display:grid;gap:7px}.guided-device-field>span{color:#475569;font-size:12px;font-weight:800}.guided-location-field{display:grid;gap:7px}.guided-location-field>span,.guided-time-grid label>span{color:#475569;font-size:12px;font-weight:800}.guided-location-field textarea{width:100%;min-height:82px;padding:11px 12px;resize:vertical;color:#172033;font:inherit;font-size:12px;line-height:1.55;background:#fff;border:1px solid #cbd5e1;border-radius:9px}.guided-location-field small{color:#7c8ba1;font-size:10px;line-height:1.5}.guided-device-field select{width:100%;height:48px;padding:0 40px 0 13px;overflow:hidden;color:#172033;font-weight:700;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:9px}.guided-device-summary,.guided-config-summary{display:flex;min-width:0;align-items:center;gap:11px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.guided-device-icon,.guided-config-summary>span{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;color:#1d4ed8;font-size:12px;font-style:normal;font-weight:800;background:#dbeafe;border-radius:9px}.guided-device-summary>div,.guided-config-summary>div{display:grid;min-width:0;flex:1;gap:3px}.guided-device-summary strong,.guided-config-summary strong{overflow:hidden;color:#334155;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.guided-device-summary small,.guided-config-summary small{overflow:hidden;color:#7c8ba1;font-size:10px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.guided-device-summary em{flex:0 0 auto;padding:4px 7px;color:#64748b;font-size:9px;font-style:normal;font-weight:800;background:#fff;border-radius:999px}.guided-device-summary em.is-online{color:#15803d;background:#dcfce7}.guided-device-summary em.is-busy{color:#1d4ed8;background:#dbeafe}.guided-diagnostics{display:grid;gap:9px;padding:11px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.guided-diagnostics-details>summary{color:#475569;font-size:11px;font-weight:800;cursor:pointer}.guided-diagnostics-details[open]>summary{margin-bottom:2px}.guided-diagnostics-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.guided-diagnostics-heading strong{color:#334155;font-size:11px}.guided-diagnostics-heading button{padding:2px 0;color:#1d4ed8;font-size:10px;font-weight:800;background:transparent;border:0;cursor:pointer}.guided-diagnostics-heading button:disabled{cursor:wait;opacity:.55}.guided-diagnostic-message{margin:0;color:#64748b;font-size:10px;line-height:1.55}.guided-diagnostic-message.is-warning{color:#92400e}.guided-diagnostic-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.guided-diagnostic-list li{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px}.guided-diagnostic-list li>span{width:8px;height:8px;background:#94a3b8;border-radius:50%}.guided-diagnostic-list li>div{display:grid;min-width:0;gap:2px}.guided-diagnostic-list strong,.guided-diagnostic-list small,.guided-diagnostic-list em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guided-diagnostic-list strong{color:#475569;font-size:10px}.guided-diagnostic-list small{color:#94a3b8;font-size:9px}.guided-diagnostic-list em{color:#64748b;font-size:9px;font-style:normal;font-weight:800}.guided-diagnostic-list li.is-available>span{background:#22c55e}.guided-diagnostic-list li.is-available em{color:#15803d}.guided-diagnostic-list li.is-unavailable>span{background:#ef4444}.guided-diagnostic-list li.is-unavailable em{color:#b91c1c}.guided-diagnostic-list li.is-configuration-required>span{background:#f59e0b}.guided-diagnostic-list li.is-configuration-required em,.guided-diagnostic-list li.is-untested em{color:#b45309}.guided-task-conflict-link{color:#1d4ed8;font-size:11px;font-weight:800;text-decoration:none}.guided-config-summary.is-ready{background:#f0fdf4;border-color:#bbf7d0}.guided-config-summary.is-ready>span{color:#15803d;background:#dcfce7}.guided-duration{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.guided-duration button{display:grid;min-height:58px;place-content:center;gap:3px;color:#475569;background:#f8fafc;border:1px solid #dbe4ef;border-radius:10px;cursor:pointer}.guided-duration button.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#60a5fa;box-shadow:inset 0 0 0 1px #60a5fa}.guided-duration strong{font-size:14px}.guided-duration small{font-size:10px}.guided-schedule-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px;background:#f1f5f9;border-radius:10px}.guided-schedule-mode button{min-height:36px;color:#64748b;font-weight:800;background:transparent;border:0;border-radius:8px;cursor:pointer}.guided-schedule-mode button.is-selected{color:#1d4ed8;background:#fff;box-shadow:0 2px 8px #0f172a14}.guided-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.guided-time-grid label{display:grid;gap:6px}.guided-time-grid input{width:100%;min-width:0;height:42px;padding:0 10px;color:#172033;font:inherit;font-size:12px;background:#fff;border:1px solid #cbd5e1;border-radius:8px}.guided-time-grid input:disabled{color:#64748b;background:#f8fafc}.guided-window-summary{margin:-5px 0 0;color:#64748b;font-size:10px;line-height:1.55}.guided-next-reservation{display:grid;gap:3px;padding:11px 12px;color:#475569;background:#fff7ed;border:1px solid #fed7aa;border-radius:9px}.guided-next-reservation>span{color:#c2410c;font-size:10px;font-weight:800}.guided-next-reservation strong{font-size:11px}.guided-next-reservation small{color:#9a6b48;font-size:9px;line-height:1.45}.guided-full-button{display:inline-flex;width:100%;min-height:44px;align-items:center;justify-content:center;text-align:center;border-radius:9px}.guided-full-button.is-disabled{pointer-events:none;opacity:.5}.guided-readiness{min-height:17px;color:#b45309;font-size:10px;line-height:1.45}.guided-readiness.is-ready{color:#15803d}.guided-report-step{grid-column:1 / -1}.guided-task-summary{display:grid;gap:15px}.guided-task-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.guided-task-heading>div{display:grid;gap:4px}.guided-task-heading>div>strong{color:#172033;font-size:17px}.guided-task-heading small,.guided-task-summary>p,.guided-task-progress small{color:#7c8ba1;font-size:11px}.guided-task-summary>p{margin:0}.guided-task-progress{display:grid;gap:8px}.guided-task-progress>div:first-child{display:flex;justify-content:space-between;color:#64748b;font-size:11px}.guided-mini-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.guided-mini-kpis>span{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:12px 14px;color:#64748b;font-size:11px;background:#f8fafc;border:1px solid #e5ebf2;border-radius:9px}.guided-mini-kpis strong{color:#172033;font-size:20px}.guided-quality-warning{padding:9px 11px;color:#92400e!important;background:#fffbeb;border:1px solid #fde68a;border-radius:8px}.guided-no-task{display:flex;min-height:105px;align-items:center;justify-content:center;gap:11px;color:#94a3b8;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px}.guided-no-task p{margin:0;font-size:12px}.results-heading-actions{display:flex;align-items:center;gap:12px}.results-layout{display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);gap:18px;align-items:start}.results-history{position:sticky;top:20px;overflow:hidden;background:#fff;border:1px solid #dbe4ef;border-radius:14px;box-shadow:0 8px 26px #0f172a0a}.results-history-title{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid #edf2f7}.results-history-title h3,.results-history-title p{margin:0}.results-history-title h3{color:#172033;font-size:15px}.results-history-title>span{display:grid;min-width:28px;height:28px;place-items:center;color:#1d4ed8;font-size:11px;font-weight:800;background:#eff6ff;border-radius:8px}.results-history-list{display:grid;max-height:calc(100vh - 240px);overflow-y:auto}.results-history-item{position:relative;border-bottom:1px solid #edf2f7}.results-history-select{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:15px 17px 43px;color:inherit;text-align:left;background:transparent;border:0;cursor:pointer}.results-history-item:hover{background:#f8fafc}.results-history-item.is-selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.results-history-export{position:absolute;right:17px;bottom:11px;min-height:24px;padding:3px 9px;color:#1d4ed8;font-size:9px;font-weight:800;background:#fff;border:1px solid #bfdbfe;border-radius:7px;cursor:pointer}.results-history-export:hover{background:#dbeafe}.results-history-export:disabled{cursor:wait;opacity:.65}.results-history-main,.results-history-count{display:grid;min-width:0;gap:3px}.results-history-main strong{overflow:hidden;color:#334155;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.results-history-main small,.results-history-count small{color:#94a3b8;font-size:9px}.results-history-count{text-align:right}.results-history-count strong{color:#172033;font-size:17px}.results-history-list em{grid-column:1 / -1;justify-self:start;padding:3px 6px;color:#15803d;font-size:8px;font-style:normal;font-weight:800;background:#dcfce7;border-radius:999px}.results-history-list em.is-active{color:#1d4ed8;background:#dbeafe}.report-sheet{min-width:0;overflow:hidden;background:#fff;border:1px solid #dbe4ef;border-radius:16px;box-shadow:0 12px 34px #0f172a0d}.report-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:25px 27px;background:linear-gradient(135deg,#fff 20%,#f2f7ff);border-bottom:1px solid #e6edf6}.report-hero h3,.report-hero p{margin:0}.report-hero h3{margin-bottom:6px;color:#0f172a;font-size:23px}.report-hero>div>p:last-child{color:#64748b;font-size:12px}.report-conclusion{display:flex;align-items:flex-start;gap:14px;margin:22px 27px 0;padding:17px 18px;color:#1e3a5f;background:#eff6ff;border:1px solid #bfdbfe;border-radius:11px}.report-conclusion>span{flex:0 0 auto;padding:5px 8px;color:#fff;font-size:10px;font-weight:800;background:#2563eb;border-radius:6px}.report-conclusion h4,.report-conclusion p{margin:0}.report-conclusion h4{margin-bottom:5px;font-size:13px}.report-conclusion p{font-size:13px;line-height:1.65}.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;padding:20px 27px}.report-kpis article{position:relative;padding:18px 19px;overflow:hidden;background:#fbfdff;border:1px solid #e5ebf2;border-radius:11px}.report-kpis article:after{position:absolute;inset:auto -18px -28px auto;width:80px;height:80px;content:"";background:#dbeafe;border-radius:50%;opacity:.6}.report-kpis article:nth-child(2):after{background:#dbeafe}.report-kpis article:nth-child(3):after{background:#ccfbf1}.report-kpis article.is-total:after{background:#e0e7ff}.report-kpis article.is-peak:after{background:#ffedd5}.report-kpis span,.report-kpis strong,.report-kpis small{position:relative;z-index:1;display:block}.report-kpis span{margin-bottom:11px;color:#64748b;font-size:12px;font-weight:700}.report-kpis strong{color:#0f172a;font-size:clamp(30px,4vw,40px);line-height:1}.report-kpis article.is-peak strong{font-size:clamp(20px,2.3vw,27px);line-height:1.2}.report-kpis small{margin-top:7px;color:#94a3b8;font-size:10px}.store-signals{margin:0 27px 20px;padding:19px;background:linear-gradient(135deg,#f8fbff,#f8fafc);border:1px solid #dbe7f5;border-radius:13px}.store-signals>header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.store-signals h4,.store-signals p,.store-signals header small{margin:0}.store-signals h4{color:#1e293b;font-size:14px}.store-signals header small{color:#94a3b8;font-size:9px}.store-signals>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.store-signals article{min-width:0;padding:14px;background:#fff;border:1px solid #e6edf5;border-radius:10px}.store-signals article>span{display:block;margin-bottom:7px;color:#7c8ba1;font-size:9px;font-weight:700}.store-signals article strong{display:block;margin-bottom:7px;overflow:hidden;color:#1e3a5f;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.store-signals article p{color:#64748b;font-size:9px;line-height:1.55}.store-signals article.is-person{border-color:#bfdbfe}.store-signals article.is-vehicle{border-color:#99f6e4}.store-signals article.is-balanced{border-color:#c7d2fe}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:0 27px 25px}.report-panel{min-width:0;padding:19px;background:#fff;border:1px solid #e5ebf2;border-radius:12px}.report-trend-panel{grid-column:1 / -1}.report-panel>header{display:flex;min-height:38px;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:16px}.report-panel h4,.report-panel header p{margin:0}.report-panel h4{color:#334155;font-size:14px}.report-panel>header>small{max-width:210px;color:#94a3b8;font-size:9px;line-height:1.4;text-align:right}.trend-toolbar{display:inline-flex;gap:3px;padding:3px;background:#f1f5f9;border-radius:8px}.trend-toolbar button{padding:5px 9px;color:#64748b;font:inherit;font-size:9px;font-weight:700;background:transparent;border:0;border-radius:6px;cursor:pointer}.trend-toolbar button:hover{color:#1d4ed8}.trend-toolbar button.is-selected{color:#1d4ed8;background:#fff;box-shadow:0 1px 4px #0f172a17}.trend-toolbar button:focus-visible{outline:2px solid #60a5fa;outline-offset:1px}.report-legend{display:flex;gap:12px;color:#64748b;font-size:10px}.report-legend span{display:inline-flex;align-items:center;gap:5px}.report-legend i{width:8px;height:8px;border-radius:2px}.report-legend i.is-person,.trend-bar i.is-person{background:#60a5fa}.report-legend i.is-vehicle,.trend-bar i.is-vehicle{background:#2dd4bf}.trend-chart-wrap{overflow-x:auto}.trend-chart{display:flex;min-width:460px;height:220px;align-items:flex-end;gap:13px;padding:12px 8px 0;background:repeating-linear-gradient(to top,#eef2f7 0,#eef2f7 1px,transparent 1px,transparent 52px);border-bottom:1px solid #cbd5e1}.trend-column{display:grid;min-width:52px;height:100%;flex:1;grid-template-rows:18px minmax(0,1fr) 24px;gap:5px;justify-items:center}.trend-column>strong{color:#475569;font-size:10px}.trend-column>span{color:#7c8ba1;font-size:9px}.trend-bar{display:flex;width:min(38px,70%);height:100%;flex-direction:column-reverse;justify-content:flex-start;overflow:hidden;background:#f1f5f9;border-radius:6px 6px 2px 2px}.trend-bar i{display:block;flex:0 0 auto;transition:height .3s ease}.business-trend-legend{display:flex;align-items:center;gap:12px;color:#64748b;font-size:9px}.business-trend-legend span{display:inline-flex;align-items:center;gap:5px}.business-trend-legend span:before{width:8px;height:8px;content:"";border-radius:2px}.business-trend-legend .is-entry:before,.retail-trend-column i.is-entry{background:#2563eb}.business-trend-legend .is-passby:before,.retail-trend-column i.is-passby{background:#93c5fd}.retail-trend-chart{display:flex;min-width:500px;height:220px;align-items:flex-end;gap:12px;padding:12px 8px 0;background:repeating-linear-gradient(to top,#eef2f7 0,#eef2f7 1px,transparent 1px,transparent 52px);border-bottom:1px solid #cbd5e1}.retail-trend-column{display:grid;min-width:52px;height:100%;flex:1;grid-template-rows:18px minmax(0,1fr) 24px;gap:5px;justify-items:center}.retail-trend-column>strong{color:#1d4ed8;font-size:10px}.retail-trend-column>span{color:#7c8ba1;font-size:9px}.retail-trend-column>div{display:flex;width:min(46px,78%);height:100%;align-items:flex-end;justify-content:center;gap:3px}.retail-trend-column i{display:block;width:46%;border-radius:5px 5px 2px 2px;transition:height .3s ease}.daypart-panel{grid-column:1 / -1}.daypart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.daypart-grid article{padding:12px 13px;background:#f8fafc;border:1px solid #edf2f7;border-radius:9px}.daypart-grid article.is-strongest{background:#eff6ff;border-color:#bfdbfe;box-shadow:inset 3px 0 #2563eb}.daypart-grid article>div,.daypart-grid article>strong{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.daypart-grid article>div span{color:#334155;font-size:11px;font-weight:800}.daypart-grid article small,.daypart-grid article p{color:#94a3b8;font-size:8px}.daypart-grid article>strong{margin-top:9px;justify-content:flex-start;color:#172033;font-size:20px}.daypart-grid article>strong small{font-weight:500}.daypart-grid article>i{display:block;height:5px;margin-top:9px;overflow:hidden;background:#e2e8f0;border-radius:999px}.daypart-grid article>i b{display:block;height:100%;background:linear-gradient(90deg,#60a5fa,#2563eb);border-radius:inherit}.daypart-grid article p{margin:8px 0 0}.report-empty-detail{display:flex;min-height:170px;align-items:center;justify-content:center;gap:12px;padding:18px;color:#94a3b8;text-align:left;background:#f8fafc;border:1px dashed #dbe4ef;border-radius:9px}.report-empty-detail.is-compact{min-height:130px}.report-empty-detail>span{font-size:24px}.report-empty-detail strong{display:block;margin-bottom:4px;color:#64748b;font-size:12px}.report-empty-detail p{max-width:360px;margin:0;font-size:10px;line-height:1.55}.direction-list{display:grid;gap:8px}.direction-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:12px 13px;background:#f8fafc;border:1px solid #edf2f7;border-radius:9px}.direction-list article>div{display:grid;gap:2px}.direction-list span,.direction-list p{color:#7c8ba1;font-size:9px}.direction-list strong{color:#334155;font-size:12px}.direction-list b{color:#172033;font-size:22px}.direction-list b small{margin-left:3px;color:#94a3b8;font-size:9px}.direction-list p{grid-column:1 / -1;margin:0}.class-bars{display:grid;gap:13px}.class-bars>div{display:grid;grid-template-columns:64px minmax(0,1fr) 38px;align-items:center;gap:10px}.class-bars span,.class-bars strong{color:#64748b;font-size:10px}.class-bars strong{color:#334155;text-align:right}.class-bars i{height:8px;overflow:hidden;background:#edf2f7;border-radius:999px}.class-bars b{display:block;height:100%;background:linear-gradient(90deg,#60a5fa,#6366f1);border-radius:inherit}.quality-badge{padding:5px 8px;color:#64748b;font-size:9px;font-weight:800;background:#f1f5f9;border-radius:999px}.quality-badge.is-success{color:#15803d;background:#dcfce7}.quality-badge.is-warning{color:#b45309;background:#fef3c7}.quality-badge.is-danger{color:#b91c1c;background:#fee2e2}.quality-value{display:block;margin-bottom:9px;color:#172033;font-size:29px}.quality-track{height:8px;overflow:hidden;background:#e2e8f0;border-radius:999px}.quality-track i{display:block;height:100%;background:linear-gradient(90deg,#2dd4bf,#22c55e);border-radius:inherit}.quality-panel>p{margin:12px 0 0;color:#64748b;font-size:10px;line-height:1.55}.quality-panel>p.quality-note{padding:8px 9px;color:#92400e;background:#fffbeb;border-radius:7px}.store-funnel{display:grid;gap:6px}.store-funnel article{display:flex;align-items:center;gap:11px;padding:11px 12px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:9px}.store-funnel article.is-unavailable{background:#f8fafc;border-color:#e2e8f0}.store-funnel article>span{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;color:#15803d;font-size:8px;font-weight:800;background:#dcfce7;border-radius:8px}.store-funnel article.is-unavailable>span{color:#64748b;background:#e2e8f0}.store-funnel article div{display:grid;gap:2px}.store-funnel article small{color:#94a3b8;font-size:8px}.store-funnel article strong{color:#334155;font-size:11px}.store-funnel>i{height:9px;margin-left:23px;color:#94a3b8;font-size:10px;font-style:normal;line-height:9px}.store-funnel-panel>p{margin:13px 0 0;color:#64748b;font-size:9px;line-height:1.6}.report-method-note{display:flex;grid-column:1 / -1;align-items:flex-start;gap:12px;padding:13px 15px;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.report-method-note strong{flex:0 0 auto;color:#475569;font-size:10px}.report-method-note p{margin:0;font-size:9px;line-height:1.6}.report-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:17px 27px;background:#fbfdff;border-top:1px solid #edf2f7}.report-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:16px 27px 0;background:#fff}.report-tabs button{display:grid;min-width:0;gap:3px;padding:12px 14px;color:#64748b;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer}.report-tabs button:hover{border-color:#bfdbfe}.report-tabs button.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd;box-shadow:inset 0 -2px #2563eb}.report-tabs strong{font-size:13px}.report-tabs small{overflow:hidden;color:#94a3b8;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.report-tab-content{min-width:0}.report-detail-loading{display:grid;min-height:330px;grid-template-columns:repeat(3,9px);place-content:center;gap:6px;color:#64748b;text-align:center}.report-detail-loading>span{width:9px;height:9px;background:#60a5fa;border-radius:50%;animation:pulse 1s infinite alternate}.report-detail-loading>span:nth-child(2){animation-delay:.15s}.report-detail-loading>span:nth-child(3){animation-delay:.3s}.report-detail-loading>p{grid-column:1 / -1;margin:8px -100px 0;font-size:11px}.retail-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.retail-kpis article:nth-child(n+5):after{background:#e2e8f0}.retail-kpis small{min-height:28px;line-height:1.45}.evidence-section,.accuracy-section,.history-section{display:grid;gap:18px;padding:24px 27px 28px}.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.section-heading-row h4,.section-heading-row p{margin:0}.section-heading-row h4{margin-bottom:5px;color:#172033;font-size:19px}.section-heading-row>div>p:last-child{color:#64748b;font-size:13px;line-height:1.55}.section-heading-row>span{flex:0 0 auto;padding:6px 9px;color:#475569;font-size:11px;font-weight:800;background:#f1f5f9;border-radius:999px}.evidence-table-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:12px}.evidence-table{width:100%;min-width:740px;border-collapse:collapse;color:#475569;font-size:12px}.evidence-table th{padding:11px 13px;color:#64748b;font-size:11px;text-align:left;background:#f8fafc;border-bottom:1px solid #e2e8f0}.evidence-table td{padding:12px 13px;border-bottom:1px solid #edf2f7}.evidence-table tbody tr:last-child td{border-bottom:0}.evidence-table td strong,.evidence-table td small{display:block}.evidence-link{display:inline-flex;margin-top:5px;color:#2563eb;font-size:10px;font-weight:700;text-decoration:none}.evidence-link:hover{text-decoration:underline}.evidence-load-more{justify-self:center}.evidence-table td strong{color:#1e293b}.evidence-table td small{margin-top:3px;color:#94a3b8;font-size:10px}.evidence-badge{display:inline-flex;padding:4px 7px;color:#475569;font-size:10px;font-weight:800;background:#f1f5f9;border-radius:999px}.evidence-badge.is-success{color:#15803d;background:#dcfce7}.evidence-badge.is-active{color:#1d4ed8;background:#dbeafe}.evidence-badge.is-danger{color:#b91c1c;background:#fee2e2}.accuracy-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.accuracy-summary article,.comparison-cards article{display:grid;gap:6px;padding:17px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:11px}.accuracy-summary span,.comparison-cards span{color:#64748b;font-size:12px;font-weight:700}.accuracy-summary strong,.comparison-cards strong{color:#172033;font-size:26px}.accuracy-summary small,.comparison-cards small{color:#94a3b8;font-size:11px}.accuracy-empty-intro,.history-progress{padding:16px 18px;color:#475569;background:#fffbeb;border:1px solid #fde68a;border-radius:11px}.audit-conclusion-pill.is-success{color:#15803d;background:#dcfce7}.audit-conclusion-pill.is-danger{color:#b91c1c;background:#fee2e2}.audit-conclusion-pill.is-warning{color:#92400e;background:#fef3c7}.accuracy-review-meta{margin:-8px 0 0;color:#64748b;font-size:10px}.accuracy-empty-intro strong,.history-progress strong{color:#92400e;font-size:12px}.accuracy-empty-intro p,.history-progress p{margin:5px 0 0;font-size:12px;line-height:1.55}.accuracy-form{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;padding:19px;background:#fff;border:1px solid #dbe4ef;border-radius:12px}.accuracy-form-heading,.accuracy-form .is-wide,.accuracy-form-actions{grid-column:1 / -1}.accuracy-form-heading strong,.accuracy-form-heading small{display:block}.accuracy-form-heading strong{color:#1e293b;font-size:13px}.accuracy-form-heading small{margin-top:4px;color:#64748b;font-size:11px}.accuracy-form label{display:grid;gap:6px;color:#475569;font-size:12px;font-weight:700}.accuracy-form input,.accuracy-form select,.accuracy-form textarea{width:100%;min-width:0;padding:10px 11px;color:#1e293b;font:inherit;font-weight:500;background:#fff;border:1px solid #cbd5e1;border-radius:8px}.accuracy-form textarea{resize:vertical}.accuracy-form-actions{display:flex;align-items:center;gap:12px}.accuracy-form-actions span{font-size:12px}.accuracy-form-actions .is-success{color:#15803d}.accuracy-form-actions .is-danger{color:#b91c1c}.accuracy-dimension-results,.accuracy-audit-matrix{overflow-x:auto;border:1px solid #dbe4ef;border-radius:12px}.accuracy-dimension-results table,.accuracy-audit-matrix table{width:100%;min-width:860px;border-collapse:collapse}.accuracy-dimension-results th,.accuracy-dimension-results td,.accuracy-audit-matrix th,.accuracy-audit-matrix td{padding:11px 12px;text-align:left;vertical-align:middle;border-bottom:1px solid #e2e8f0}.accuracy-dimension-results th,.accuracy-audit-matrix th{color:#64748b;font-size:11px;white-space:nowrap;background:#f8fafc}.accuracy-dimension-results td,.accuracy-audit-matrix td{color:#334155;font-size:12px}.accuracy-dimension-results tbody tr:last-child td,.accuracy-audit-matrix tbody tr:last-child td{border-bottom:0}.accuracy-dimension-results td strong,.accuracy-dimension-results td small,.accuracy-audit-matrix td strong,.accuracy-audit-matrix td small{display:block}.accuracy-dimension-results td small,.accuracy-audit-matrix td small{margin-top:3px;color:#94a3b8;font-size:10px}.dimension-status{display:inline-flex;padding:4px 8px;font-size:11px;font-weight:800;border-radius:999px}.dimension-status.is-passed{color:#15803d;background:#dcfce7}.dimension-status.is-failed{color:#b91c1c;background:#fee2e2}.dimension-status.is-missing,.dimension-status.is-insufficient_sample{color:#92400e;background:#fef3c7}.accuracy-matrix-form{grid-template-columns:minmax(0,1fr)}.accuracy-window-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.accuracy-window-options label{display:flex;align-items:center;gap:9px;padding:11px 12px;font-weight:600;cursor:pointer;border:1px solid #dbe4ef;border-radius:9px}.accuracy-window-options label.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.accuracy-window-options input{width:16px;flex:0 0 auto;padding:0}.accuracy-window-options span,.accuracy-window-options strong,.accuracy-window-options small{display:block}.accuracy-window-options small{margin-top:3px;color:#94a3b8;font-size:10px}.accuracy-audit-matrix input{width:78px;padding:7px 8px;text-align:center}.history-panel{min-width:0;padding:18px;background:#fff;border:1px solid #e2e8f0;border-radius:12px}.history-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.history-panel h4,.history-panel p{margin:0}.history-panel h4{color:#334155;font-size:14px}.history-panel header small{color:#94a3b8;font-size:11px}.retail-heatmap{display:grid;grid-template-columns:48px repeat(var(--heatmap-columns),minmax(22px,1fr));gap:5px;min-width:570px}.heatmap-panel{overflow-x:auto}.retail-heatmap>span,.retail-heatmap>strong{display:grid;min-height:26px;place-items:center;color:#64748b;font-size:10px}.retail-heatmap>button{display:block;min-height:27px;padding:0;background:rgb(37 99 235 / var(--heat));border:1px solid rgb(37 99 235 / 10%);border-radius:5px;cursor:pointer}.retail-heatmap>button:hover,.retail-heatmap>button:focus-visible{outline:2px solid #93c5fd}.history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.comparison-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-ranking{display:grid;gap:7px;margin:0;padding:0;list-style:none}.site-ranking li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;background:#f8fafc;border-radius:9px}.site-ranking li>b{display:grid;width:25px;height:25px;place-items:center;color:#1d4ed8;font-size:10px;background:#dbeafe;border-radius:7px}.site-ranking li>span{display:grid;gap:2px}.site-ranking li strong{color:#334155;font-size:12px}.site-ranking li small{color:#94a3b8;font-size:10px}.site-ranking li em{color:#172033;font-size:17px;font-style:normal;font-weight:800}.site-ranking li em small{display:block;margin-top:2px;font-size:9px;font-weight:600;text-align:right}@media(max-width:1050px){.guided-workflow{grid-template-columns:repeat(2,minmax(0,1fr))}.guided-report-step{grid-column:1 / -1}.results-layout{grid-template-columns:220px minmax(0,1fr)}.report-kpis,.store-signals>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.results-layout{grid-template-columns:1fr}.results-history{position:static}.results-history-list{display:flex;max-height:none;overflow-x:auto}.results-history-item{min-width:220px;border-right:1px solid #edf2f7;border-bottom:0}.report-grid{grid-template-columns:1fr}.report-trend-panel,.daypart-panel,.report-method-note{grid-column:auto}.daypart-grid,.report-tabs,.accuracy-summary,.accuracy-form{grid-template-columns:repeat(2,minmax(0,1fr))}.history-grid{grid-template-columns:1fr}}@media(max-width:680px){.guided-page,.results-page{gap:18px}.guided-heading,.results-heading{align-items:flex-start;gap:9px}.results-heading-actions{width:100%;flex-wrap:wrap;justify-content:flex-start}.guided-stepper{padding:0}.guided-stepper li{display:grid;justify-items:center;gap:5px;font-size:9px;text-align:center}.guided-stepper li:not(:last-child):after{top:14px;left:calc(50% + 18px);width:calc(100% - 36px)}.guided-stepper li>span{width:28px;height:28px;flex-basis:28px}.guided-workflow,.guided-loading,.results-loading,.guided-time-grid{grid-template-columns:1fr}.guided-loading>span:last-child,.guided-report-step{grid-column:auto}.guided-step-card{padding:18px}.guided-mini-kpis{gap:6px}.guided-mini-kpis>span{display:grid;padding:10px}.guided-task-heading,.report-hero{align-items:flex-start;flex-direction:column}.report-hero{padding:21px 19px}.report-tabs{gap:6px;padding:13px 19px 0}.report-tabs button{padding:10px}.report-tabs small{display:none}.report-conclusion{margin:17px 19px 0;padding:14px}.store-signals{margin:0 19px 17px;padding:15px}.store-signals>header{align-items:flex-start;flex-direction:column;gap:5px}.store-signals>div,.daypart-grid{grid-template-columns:1fr}.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:17px 19px}.report-kpis article{padding:15px}.report-kpis article.is-total{grid-column:1 / -1}.report-kpis strong{font-size:30px}.report-grid{gap:10px;padding:0 19px 19px}.report-panel{padding:16px}.report-panel>header{align-items:flex-start;flex-direction:column;gap:8px}.report-panel>header>small{max-width:none;text-align:left}.report-method-note{flex-direction:column;gap:5px}.report-actions{position:sticky;z-index:2;bottom:0;display:grid;grid-template-columns:1fr;padding:12px 19px}.report-actions a{min-height:44px;justify-content:center}.evidence-section,.accuracy-section,.history-section{gap:14px;padding:19px}.section-heading-row,.accuracy-form-actions,.history-panel>header{align-items:flex-start;flex-direction:column}.accuracy-summary,.accuracy-form,.comparison-cards{grid-template-columns:1fr}}.task-heading-actions{display:flex;align-items:center;gap:10px}.task-inline-error,.task-failure{padding:11px 14px;color:#991b1b;font-size:13px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.task-list{display:grid;gap:16px}.task-card{overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 7px 24px #0f172a0a}.task-card.is-highlighted{border-color:#60a5fa;box-shadow:0 0 0 3px #3b82f624,0 10px 28px #0f172a12}.task-location-notice{color:#1e40af;background:#eff6ff;border-color:#bfdbfe}.task-card-heading,.task-card-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px}.task-card-heading{border-bottom:1px solid #edf1f5}.task-card-heading h3{margin:0;color:#172033;font-size:17px}.task-card-heading .card-kicker{margin-bottom:5px}.task-schedule-progress{display:grid;gap:8px;padding:14px 22px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.task-schedule-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#475569;font-size:12px}.task-progress-track{overflow:hidden;height:7px;background:#e2e8f0;border-radius:999px}.task-progress-track i{display:block;height:100%;background:#2563eb;border-radius:inherit;transition:width .4s ease}.task-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;background:#edf1f5}.task-facts>div{min-width:0;padding:17px 22px;background:#fff}.task-facts dt,.task-card-footer span{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.task-facts dd{margin:7px 0 0;overflow:hidden;color:#334155;font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.task-failure{margin:16px 22px 0}.task-failure strong,.task-failure p,.task-failure small{display:block}.task-failure p{margin:5px 0 0;line-height:1.55}.task-failure small{margin-top:7px;color:#b91c1c;font-family:SFMono-Regular,Consolas,monospace}.task-failure.is-warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.task-resource-states{margin:16px 22px 0;padding:10px 13px;color:#475569;font-size:12px;line-height:1.55;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.task-card-footer{background:#f8fafc;border-top:1px solid #edf1f5}.task-card-footer>div{min-width:0}.task-card-footer span,.task-card-footer code{display:block}.task-card-footer code{margin-top:6px;overflow:hidden;color:#475569;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;text-overflow:ellipsis}.task-stop-button{flex:0 0 auto;min-height:36px;padding:7px 13px;color:#b91c1c;font-weight:700;background:#fff;border:1px solid #fecaca;border-radius:8px;cursor:pointer}.task-card-actions{display:flex;flex:0 0 auto;gap:9px}.task-retry-button{min-height:36px;padding:7px 13px;color:#1d4ed8;font-weight:700;background:#fff;border:1px solid #bfdbfe;border-radius:8px;cursor:pointer}.task-retry-button:hover{background:#eff6ff}.task-retry-button:disabled{cursor:wait;opacity:.6}.task-stop-button:hover{background:#fef2f2}.task-stop-button:disabled{cursor:wait;opacity:.6}.task-runtime-note{display:flex;align-items:center;justify-content:space-between;gap:24px}.task-runtime-note h3,.task-runtime-note p{margin:0}.task-runtime-note>p{max-width:660px;color:var(--muted);font-size:13px;line-height:1.6;text-align:right}.monitor-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:18px;align-items:start}.live-preview-card,.preview-config-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 7px 24px #0f172a0a}.live-preview-card{overflow:hidden}.live-preview-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px}.live-preview-header h3,.preview-config-card h3{margin:0;color:#172033;font-size:17px}.preview-device-copy{display:block;margin-top:5px;color:var(--muted);font-size:12px}.live-preview-header .card-kicker,.preview-config-card .card-kicker{margin-bottom:5px}.stream-status{display:inline-flex;align-items:center;gap:7px;color:#64748b;font-size:12px;font-weight:700}.stream-status i{width:8px;height:8px;background:#94a3b8;border-radius:50%}.stream-status.is-working i{background:#f59e0b}.stream-status.is-live{color:#15803d}.stream-status.is-live i{background:#22c55e;box-shadow:0 0 0 4px #22c55e26}.stream-status.is-error{color:#b91c1c}.stream-status.is-error i{background:#ef4444}.video-frame{position:relative;overflow:hidden;aspect-ratio:16 / 9;background:#020617}.video-frame video,.ezviz-player-container{display:block;width:100%;height:100%;background:#020617}.video-frame video,.preview-native-player{object-fit:contain}.preview-native-player,.ezviz-player-container{position:absolute;top:0;right:0;bottom:0;left:0}.ezviz-player-container>*{max-width:100%;max-height:100%}.video-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;color:#cbd5e1;text-align:center;background:radial-gradient(circle at 50% 40%,#1e293b,#020617 66%)}.video-placeholder>span{display:grid;width:58px;height:58px;margin-bottom:16px;place-items:center;color:#fff;background:#2563ebe0;border-radius:50%}.video-placeholder strong{font-size:16px}.video-placeholder p{margin:8px 0 0;color:#94a3b8;font-size:13px}.preview-error{display:flex;gap:9px;padding:13px 18px;color:#991b1b;font-size:13px;background:#fef2f2;border-top:1px solid #fecaca}.preview-config-card{padding:22px}.preview-config-copy{margin:10px 0 22px;color:var(--muted);font-size:13px;line-height:1.6}.preview-form{display:grid;gap:10px}.preview-form>label{color:#334155;font-size:13px;font-weight:700}.secure-input{display:grid;grid-template-columns:minmax(0,1fr) auto}.secure-input input{min-width:0;height:42px;padding:0 12px;color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-right:0;border-radius:8px 0 0 8px;outline:none}.secure-input input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.secure-input button{padding:0 12px;color:#1d4ed8;font-size:12px;font-weight:700;background:#eff6ff;border:1px solid #bfdbfe;border-radius:0 8px 8px 0;cursor:pointer}.field-help{margin:0;color:#94a3b8;font-size:12px;line-height:1.5}.preview-actions{display:flex;gap:10px;margin-top:8px}.preview-help-links{display:flex;flex-wrap:wrap;gap:8px}.primary-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;padding:8px 16px;color:#fff;font-weight:700;background:var(--primary);border:1px solid var(--primary);border-radius:8px;cursor:pointer}.primary-button:disabled{cursor:wait;opacity:.65}.security-note{margin-top:22px;padding:14px;color:#475569;font-size:12px;line-height:1.55;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.security-note strong{display:block;margin-bottom:5px;color:#334155}.security-note p{margin:0}.business-notice{padding:12px 15px;color:#334155;font-size:13px;line-height:1.55;background:#f8fafc;border:1px solid var(--border);border-radius:9px}.business-notice.is-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.business-notice.is-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.login-page{display:grid;min-height:100vh;place-items:center;padding:28px 18px;background:radial-gradient(circle at 15% 20%,rgb(37 99 235 / 13%),transparent 30%),linear-gradient(145deg,#eef4ff,#f8fafc 52%,#edf2f7)}.login-card{width:min(440px,100%);padding:clamp(28px,5vw,42px);background:#fff;border:1px solid #dbe4ef;border-radius:16px;box-shadow:0 24px 70px #0f172a1f}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:34px}.login-brand strong,.login-brand span{display:block}.login-brand strong{color:#172033;font-size:16px}.login-brand div>span{margin-top:3px;color:#64748b;font-size:12px}.login-card header h1{margin-bottom:10px;color:#0f172a;font-size:26px}.login-card header>p:not(.eyebrow){margin-bottom:22px;color:#64748b;font-size:14px}.login-card .business-notice{margin-bottom:16px}.login-form{display:grid;gap:16px}.login-form .primary-button{width:100%;min-height:44px;margin-top:4px}.login-security-note{margin:22px 0 0;color:#94a3b8;font-size:11px;line-height:1.6;text-align:center}.password-reset-bar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px;padding:16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9px}.password-reset-bar .field{width:min(440px,100%)}.user-inline-actions,.user-table-actions{display:flex;flex-wrap:wrap;gap:8px}.user-table{min-width:930px}.user-table td>strong,.user-table td>small{display:block}.user-table td>small{margin-top:4px;color:#2563eb;font-size:10px}.user-table input,.user-table select{width:100%;min-width:110px;height:36px;padding:0 9px;color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:7px}.user-table input:focus,.user-table select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.user-table select:disabled{color:#94a3b8;background:#f8fafc}.user-table-actions .text-button{padding:0;color:#1d4ed8;font-size:12px;font-weight:700;background:transparent;border:0;cursor:pointer}.user-table-actions .text-button:disabled{cursor:wait;opacity:.55}.user-boundary-note{margin:14px 0 0;color:#64748b;font-size:12px;line-height:1.6}.audit-filter-actions{display:flex;grid-column:1 / -1;flex-wrap:wrap;gap:9px}.audit-filter-summary{margin:0;color:#64748b;font-size:12px}.audit-filter-summary strong{color:#1e293b}.audit-log-table{min-width:940px}.audit-log-table td{vertical-align:top}.audit-log-table td>strong,.audit-log-table td>small{display:block}.audit-technical-label,.audit-resource-id{margin-top:5px;color:#64748b;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px}.audit-change-details{min-width:104px}.audit-change-details>summary{color:#1d4ed8;font-size:12px;font-weight:700;cursor:pointer}.audit-change-content{display:grid;width:min(440px,55vw);gap:10px;margin-top:10px}.audit-change-content h4{margin:0 0 5px;color:#475569;font-size:11px}.audit-change-content pre{max-height:240px;margin:0;overflow:auto;padding:10px;color:#334155;font-size:11px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px}.audit-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;color:#64748b;font-size:12px}.audit-pagination>div{display:flex;gap:8px}.profile-layout{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(360px,1.3fr);gap:18px;align-items:start}.profile-facts{display:grid;gap:1px;margin:0;overflow:hidden;background:#e9eef5;border:1px solid #e2e8f0;border-radius:9px}.profile-facts>div{padding:14px 16px;background:#f8fafc}.profile-facts dt{color:#94a3b8;font-size:11px;font-weight:700}.profile-facts dd{margin:5px 0 0;color:#334155;font-size:14px;font-weight:700;word-break:break-word}.profile-password-form{display:grid;gap:14px}.profile-password-form .primary-button{justify-self:start;margin-top:4px}.catalog-grid,.asset-layout,.deployment-layout,.config-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.asset-layout{grid-template-columns:minmax(360px,.85fr) minmax(0,1.15fr)}.management-card{min-width:0;padding:23px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 7px 24px #0f172a0a}.management-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.management-heading .card-kicker{margin-bottom:5px}.management-heading h3{margin:0;color:#172033;font-size:18px}.count-badge{display:inline-grid;min-width:28px;min-height:28px;place-items:center;padding:4px 8px;color:#475569;font-size:12px;font-weight:800;background:#f1f5f9;border-radius:999px}.compact-form{display:grid;gap:13px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e9eef5}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid>.primary-button{grid-column:1 / -1;justify-self:start}.provider-help{grid-column:1 / -1;padding:13px 14px;color:#334155;background:#f8fafc;border:1px solid #dbe4f0;border-left:4px solid #2563eb;border-radius:8px}.provider-help.is-hikvision{border-left-color:#dc2626}.provider-help strong{display:block;font-size:13px}.provider-help p{margin:5px 0 0;color:#64748b;font-size:12px;line-height:1.6}.field{display:grid;min-width:0;gap:7px;color:#334155;font-size:13px;font-weight:700}.field.is-full{grid-column:1 / -1}.field input,.field select,.field textarea{width:100%;min-width:0;color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none}.field input,.field select{height:42px;padding:0 11px}.field textarea{min-height:90px;padding:10px 11px;line-height:1.55;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.field input:disabled,.field select:disabled,.field textarea:disabled{color:#94a3b8;cursor:not-allowed;background:#f8fafc}.field>small{color:#94a3b8;font-size:11px;font-weight:500;line-height:1.5}.field>small.field-error{color:#b91c1c}.context-hint{margin:0 0 16px;color:var(--muted);font-size:13px;line-height:1.6}.context-hint strong{color:#334155}.inline-state{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:12px;padding:16px;color:#64748b;font-size:13px;line-height:1.55;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:9px}.inline-state.is-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.inline-state button{flex:0 0 auto;padding:5px 9px;color:inherit;font-size:12px;font-weight:700;background:#fff;border:1px solid currentColor;border-radius:6px;cursor:pointer}.resource-list,.device-list,.config-list{display:grid;gap:9px}.resource-list{max-height:390px;overflow-y:auto;padding-right:2px}.resource-row{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;color:#334155;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:8px}button.resource-row{cursor:pointer}button.resource-row:hover,.resource-row.is-selected{background:#eff6ff;border-color:#93c5fd}.resource-row.is-static{cursor:default}.resource-row-tall{min-height:66px}.resource-row>span:first-child{min-width:0}.resource-row strong,.resource-row small{display:block}.resource-row strong{overflow:hidden;color:#1e293b;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.resource-row small{margin-top:4px;overflow:hidden;color:#94a3b8;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.status-pill{display:inline-flex;flex:0 0 auto;align-items:center;min-height:24px;padding:3px 8px;color:#475569;font-size:11px;font-weight:700;white-space:nowrap;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px}.status-pill.is-positive{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.status-pill.is-unsupported{color:#b42318;background:#fff1f0;border-color:#fecaca}.selection-context{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 16px;color:#64748b;font-size:13px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9px}.selection-context span,.selection-context strong{display:block}.selection-context strong{color:#1e3a8a}.attach-form{display:grid;grid-template-columns:minmax(240px,1fr) 120px auto;gap:12px;align-items:end;margin-bottom:20px}.attach-form .primary-button{height:42px}.table-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:9px}.data-table{width:100%;min-width:520px;border-collapse:collapse}.data-table th,.data-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e9eef5}.data-table th{color:#64748b;font-size:11px;letter-spacing:.04em;background:#f8fafc}.data-table td{color:#334155;font-size:13px}.data-table tbody tr:last-child td{border-bottom:0}.organization-selector{align-items:end}.organization-selector .field{width:min(360px,100%)}.organization-selector p{margin:0;color:#475569;font-size:12px;text-align:right}.device-card{overflow:hidden;border:1px solid #e2e8f0;border-radius:9px}.device-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;background:#f8fafc;border-bottom:1px solid #e9eef5}.device-card>header>div{display:flex;min-width:0;align-items:center;gap:11px}.device-card-controls{flex:0 0 auto;justify-content:flex-end;flex-wrap:wrap}.device-card-controls .inline-button{min-height:32px;padding:6px 10px}.device-card header strong,.device-card header small{display:block}.device-card header strong{color:#1e293b;font-size:14px}.device-card header small{margin-top:3px;color:#94a3b8;font-size:11px}.device-icon{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;color:#1d4ed8;font-size:12px;font-weight:800;background:#dbeafe;border-radius:8px}.device-facts,.config-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;background:#e9eef5}.device-facts>div,.config-card dl>div{min-width:0;padding:12px 14px;background:#fff}.device-facts dt,.config-card dt{color:#94a3b8;font-size:10px;font-weight:700}.device-facts dd,.config-card dd{margin:5px 0 0;overflow:hidden;color:#334155;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.write-only-note{margin:0;padding:10px 14px;color:#64748b;font-size:11px;background:#f8fafc;border-top:1px solid #e9eef5}.device-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:16px 14px;background:#fbfdff;border-top:1px solid #dbe4f0}.device-edit-form>.is-full,.device-edit-heading{grid-column:1 / -1}.device-edit-heading strong{color:#172033;font-size:14px}.device-edit-heading p{margin:5px 0 0;color:#64748b;font-size:12px;line-height:1.55}.device-edit-actions{display:flex;align-items:center;gap:10px}.device-edit-error{margin:0;padding:10px 12px;color:#b42318;font-size:12px;background:#fff1f0;border:1px solid #fecaca;border-radius:7px}.context-card{padding-bottom:18px}.context-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.context-summary{margin:14px 0 0;color:#64748b;font-size:12px;line-height:1.55}.config-panel{overflow:hidden}.config-layout{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr)}.config-layout .compact-form{margin:0;padding:0 18px 0 0;border:0;border-right:1px solid #e9eef5}.config-card{overflow:hidden;border:1px solid #e2e8f0;border-radius:9px}.config-card>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;color:#1e293b;font-size:13px;background:#f8fafc;border-bottom:1px solid #e9eef5}.scene-selector-card{display:grid;gap:14px}.scene-selectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.scene-status-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 16px;color:#64748b;font-size:12px;background:#fff;border:1px solid var(--border);border-radius:9px}.scene-status-bar>div{display:flex;align-items:center;gap:10px}.scene-status-bar strong{color:#1e293b;font-size:13px}.unsaved-badge{display:inline-flex;padding:4px 8px;color:#a16207;font-weight:700;background:#fef3c7;border:1px solid #fde68a;border-radius:999px}.scene-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(340px,.75fr);gap:18px;align-items:start}.scene-canvas-card{overflow:hidden}.live-reference-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;padding:12px 14px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9px}.live-reference-actions{display:flex;align-items:center;gap:12px}.live-reference-button{min-height:36px;font-size:12px}.roi-live-status{background:#fff}.roi-preview-error{display:block;margin:0 0 12px;padding:10px 12px;border-radius:8px}.reference-file-row{display:flex;min-width:0;align-items:center;gap:12px;margin-bottom:8px}.reference-file-row>span{flex:1;overflow:hidden;color:#64748b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.reference-file-button{flex:0 0 auto;min-height:36px;font-size:12px}.reference-file-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.text-button{padding:3px 0;color:#1d4ed8;font-size:12px;font-weight:700;background:transparent;border:0;cursor:pointer}.local-image-note{margin:0 0 14px;color:#94a3b8;font-size:11px;line-height:1.55}.scene-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.scene-toolbar button{min-height:34px;padding:6px 10px;color:#475569;font-size:12px;font-weight:700;background:#fff;border:1px solid #cbd5e1;border-radius:7px;cursor:pointer}.scene-toolbar button:hover:not(:disabled),.scene-toolbar button.is-active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.scene-toolbar button:disabled{cursor:not-allowed;opacity:.48}.scene-view-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:-2px 0 12px}.scene-view-toolbar button{min-height:32px;padding:5px 10px;color:#334155;font-size:12px;font-weight:700;background:#f8fafc;border:1px solid #cbd5e1;border-radius:7px;cursor:pointer}.scene-view-toolbar button:disabled{cursor:not-allowed;opacity:.45}.scene-view-toolbar>span{min-width:52px;color:#475569;font-size:12px;font-weight:800;text-align:center}.roi-toolbar-help{margin:-4px 0 12px;color:#64748b;font-size:12px;line-height:1.6}.scene-canvas-viewport{max-height:min(72vh,760px);overflow:auto;background:#020617;border:1px solid #334155;border-radius:9px}.scene-canvas-shell{position:relative;overflow:hidden;min-width:100%;background-color:#0f172a;background-image:linear-gradient(rgb(148 163 184 / 10%) 1px,transparent 1px),linear-gradient(90deg,rgb(148 163 184 / 10%) 1px,transparent 1px);background-size:32px 32px;border-radius:8px}.scene-canvas-card:fullscreen{display:flex;height:100vh;padding:22px;flex-direction:column;overflow:hidden;background:#f8fafc;border-radius:0}.scene-canvas-card:fullscreen .scene-canvas-viewport{min-height:0;max-height:none;flex:1}.scene-canvas{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;touch-action:none;-webkit-user-select:none;user-select:none}.roi-ezviz-player-container,.roi-native-player{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;display:none;width:100%;height:100%;overflow:hidden;pointer-events:none;background:#020617}.roi-ezviz-player-container.is-visible,.roi-native-player.is-visible{display:block}.roi-native-player{object-fit:contain}.roi-ezviz-player-container>*{width:100%!important;height:100%!important;max-width:100%;max-height:100%;pointer-events:none!important}.roi-live-placeholder{position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#cbd5e1;font-size:13px;font-weight:700;pointer-events:none;background:radial-gradient(circle at 50% 40%,#1e293b,#020617 66%)}.scene-canvas.is-drawing{cursor:crosshair}.scene-canvas.is-dragging-roi{cursor:grabbing}.scene-canvas.is-drawing-roi .counting-line{pointer-events:none}.scene-empty-frame{fill:transparent}.full-frame-outline,.roi-polygon,.roi-polyline,.counting-line line,.counting-line circle,.roi-point,.pending-line-point{vector-effect:non-scaling-stroke}.full-frame-outline{fill:#2563eb14;stroke:#60a5fa;stroke-width:2px;stroke-dasharray:7 5}.roi-polygon{fill:#2563eb33;stroke:#60a5fa;stroke-width:2px;pointer-events:none}.roi-polyline{fill:none;stroke:#60a5fa;stroke-width:2px;stroke-dasharray:7 4;pointer-events:none}.roi-point{fill:#dbeafe;stroke:#2563eb;stroke-width:2px;pointer-events:none}.roi-point-handle{cursor:grab}.roi-point-handle:hover .roi-point{fill:#fff;stroke-width:3px}.roi-point-handle.is-selected .roi-point{fill:#fff;stroke:#f59e0b;stroke-width:4px}.roi-point-handle.is-dragging{cursor:grabbing}.roi-point-hit{fill:transparent;stroke:transparent;stroke-width:16px;vector-effect:non-scaling-stroke;pointer-events:all}.counting-line{cursor:pointer}.counting-line line{stroke:#fb923c;stroke-width:3px}.counting-line circle{fill:#ffedd5;stroke:#ea580c;stroke-width:2px}.counting-line.is-selected line{stroke:#facc15;stroke-width:4px}.counting-line.is-disabled{opacity:.4}.pending-line-point{fill:#fef08a;stroke:#eab308;stroke-width:3px}.empty-canvas-label{position:absolute;z-index:3;inset:50% auto auto 50%;color:#64748b;font-size:12px;font-weight:700;pointer-events:none;transform:translate(-50%,-50%)}.canvas-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;color:#64748b;font-size:11px}.canvas-legend span{display:inline-flex;align-items:center;gap:6px}.canvas-legend i{width:9px;height:9px;border-radius:3px}.canvas-legend i.is-roi{background:#60a5fa}.canvas-legend i.is-line{background:#fb923c}.scene-side-stack{display:grid;min-width:0;gap:18px}.class-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.class-selector label{display:flex;min-height:38px;align-items:center;gap:8px;padding:8px 10px;color:#334155;font-size:12px;font-weight:700;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px}.class-selector input{width:16px;height:16px;accent-color:var(--primary)}.readonly-note{margin:14px 0 0;color:#94a3b8;font-size:11px}.line-editor-list{display:grid;max-height:650px;gap:10px;overflow-y:auto}.line-editor-card{padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.line-editor-card.is-selected{background:#fffbeb;border-color:#fcd34d}.line-editor-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px;color:#334155;font-size:12px}.line-editor-card>header button{padding:3px 6px;color:#b91c1c;font-size:11px;font-weight:700;background:transparent;border:0;cursor:pointer}.line-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.line-form-grid .field{gap:4px}.line-form-grid .field>span{font-size:11px}.line-form-grid .field input,.line-form-grid .field select{height:36px;font-size:12px}.line-editor-card>code{display:block;margin-top:9px;overflow:hidden;color:#64748b;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.scene-actions-card{display:flex;align-items:center;justify-content:space-between;gap:24px}.scene-actions-card h3{margin:0 0 7px;color:#1e293b;font-size:17px}.scene-actions-card p:not(.card-kicker){max-width:720px;margin:0;color:#64748b;font-size:12px;line-height:1.6}.scene-action-buttons{display:flex;flex:0 0 auto;gap:9px}.scene-setup-page{max-width:1440px;margin:0 auto}.scene-setup-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}.scene-setup-steps li{display:flex;min-height:58px;align-items:center;gap:10px;padding:12px 14px;color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.scene-setup-steps li span{display:grid;width:28px;height:28px;flex:0 0 auto;place-items:center;color:#64748b;font-size:12px;font-weight:800;background:#f1f5f9;border-radius:50%}.scene-setup-steps li strong{font-size:13px}.scene-setup-steps li.is-complete{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.scene-setup-steps li.is-complete span{color:#fff;background:#22c55e}.scene-setup-steps li.is-current{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.scene-setup-steps li.is-current span{color:#fff;background:#2563eb}.scene-setup-camera-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;border:1px solid var(--border);border-radius:10px}.scene-setup-camera-card>div{flex:1}.scene-setup-camera-card strong{color:#0f172a;font-size:14px}.scene-setup-camera-card p{margin:3px 0 0;color:#64748b;font-size:12px}.scene-setup-camera-icon{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;color:#fff;font-size:13px;font-weight:800;background:#2563eb;border-radius:10px}.scene-status-bar.is-setup{align-items:center;padding:14px 16px;background:#f8fafc}.scene-status-bar.is-setup>div:first-child{display:grid;gap:3px}.scene-status-bar.is-setup>div:first-child span{font-size:12px}.scene-adjust-button{min-height:36px}.scene-setup-page .scene-canvas-card,.scene-setup-page .scene-side-stack>.management-card{border-radius:12px}.scene-setup-page .scene-canvas-shell{border-radius:10px}.scene-setup-object-flow{display:grid;gap:14px;margin:14px 0;padding:16px;background:#f8fbff;border:1px solid #bfdbfe;border-radius:12px}.scene-setup-object-heading,.scene-setup-line-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.scene-setup-object-heading>div,.scene-setup-line-actions>div{display:grid;min-width:0;flex:1;gap:3px}.scene-setup-object-heading strong,.scene-setup-line-actions strong{color:#1e293b;font-size:13px}.scene-setup-object-heading>div span,.scene-setup-line-actions>div span{color:#64748b;font-size:11px}.scene-setup-object-heading>span{flex:0 0 auto;padding:4px 8px;color:#1d4ed8;font-size:10px;font-weight:800;background:#dbeafe;border-radius:999px}.scene-inline-class-selector{grid-template-columns:repeat(3,minmax(0,1fr))}.scene-setup-line-actions>button{flex:0 0 auto;min-height:38px}.scene-setup-roi-options{padding-top:12px;border-top:1px solid #dbeafe}.scene-setup-roi-options>summary{color:#475569;font-size:11px;font-weight:800;cursor:pointer}.scene-setup-roi-options>p{margin:8px 0 10px;color:#64748b;font-size:11px;line-height:1.55}.scene-setup-roi-options .scene-toolbar{margin-bottom:0}.scene-setup-page .scene-roi-tool-button.is-active{color:#1d4ed8;background:#dbeafe;border-color:#60a5fa}.scene-setup-page .scene-line-tool-button.is-active{color:#c2410c;background:#ffedd5;border-color:#fb923c}.scene-setup-line-form .scene-setup-direction-field,.scene-setup-direction-summary{grid-column:1 / -1}.scene-setup-direction-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;color:#64748b;font-size:11px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.scene-setup-direction-summary button{min-height:32px;padding:0 10px;font-size:11px}.scene-setup-actions-card{border-color:#93c5fd;box-shadow:0 12px 28px #2563eb1a}.scene-setup-submit{min-width:240px;min-height:44px;font-size:14px}@media(max-width:760px){.guided-duration,.scene-setup-steps{grid-template-columns:1fr}.scene-setup-camera-card,.scene-status-bar.is-setup{align-items:flex-start}.scene-setup-object-heading,.scene-setup-line-actions,.scene-setup-direction-summary{align-items:stretch;flex-direction:column}.scene-inline-class-selector{grid-template-columns:repeat(2,minmax(0,1fr))}.scene-setup-line-actions>button,.scene-setup-direction-summary button{width:100%}.scene-setup-camera-card .status-pill{display:none}.scene-setup-submit{width:100%;min-width:0}}.geometry-boundary-note{display:flex;align-items:center;gap:22px;padding:16px 18px;color:#92400e;font-size:12px;background:#fffbeb;border:1px solid #fde68a;border-radius:9px}.geometry-boundary-note strong{flex:0 0 auto}.geometry-boundary-note ul{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0;padding-left:18px}.geometry-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.geometry-check-grid>div{display:flex;min-height:64px;align-items:center;gap:10px;padding:12px;color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.geometry-check-grid>div.is-passed{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.geometry-check-grid span{font-size:11px;font-weight:800}.geometry-check-grid strong{font-size:13px}.not-checked-copy{margin:14px 0 0;color:#92400e;font-size:12px;line-height:1.6}.not-found{min-height:360px}.not-found .state-icon{width:58px;height:58px;flex-basis:58px;border-radius:14px}.review-metrics .metric-card{display:flex;flex-direction:column}.review-metrics .metric-card strong{margin-bottom:13px}.review-metrics .metric-card small{margin-top:auto;color:#94a3b8;font-size:11px;line-height:1.45}.review-boundary-note{display:flex;gap:7px;padding:13px 16px;color:#92400e;font-size:13px;line-height:1.6;background:#fffbeb;border:1px solid #fde68a;border-radius:9px}.review-section-card{overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 7px 24px #0f172a0a}.review-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 23px;border-bottom:1px solid #edf1f5}.review-section-heading .card-kicker,.review-section-heading h3{margin-bottom:0}.review-section-heading h3{color:#172033;font-size:17px}.review-section-heading .card-kicker{margin-bottom:5px}.review-section-count{color:#64748b;font-size:12px;font-weight:700}.review-inline-state{display:flex;min-height:120px;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:24px;color:#64748b;font-size:13px;line-height:1.55;text-align:center}.review-inline-state strong{color:#334155;font-size:14px}.review-inline-state.is-unavailable{color:#92400e;background:#fffbeb}.review-inline-state.is-unavailable strong{color:#78350f}.review-inline-state.is-error{color:#991b1b;background:#fef2f2}.review-inline-state.is-error strong{color:#7f1d1d}.review-partial-note{margin:17px 22px 0;padding:10px 13px;color:#92400e;font-size:12px;background:#fffbeb;border:1px solid #fde68a;border-radius:7px}.analysis-run-list,.export-list{display:grid;gap:12px;padding:20px 22px}.analysis-run-row,.export-row{padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px}.analysis-run-main,.analysis-run-main>div,.export-row,.export-row>div,.export-row-status{display:flex;align-items:center}.analysis-run-main,.export-row{justify-content:space-between;gap:16px}.analysis-run-main>div,.export-row>div,.export-row-status{gap:9px}.analysis-run-main strong,.export-row strong{color:#1e293b;font-size:14px}.analysis-run-main>div>span,.export-row>div>span,.export-row-status small{color:#94a3b8;font-size:12px}.analysis-progress{height:6px;margin:14px 0;overflow:hidden;background:#e2e8f0;border-radius:999px}.analysis-progress>span{display:block;height:100%;background:#2563eb;border-radius:inherit}.review-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}.review-facts dt{color:#94a3b8;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.review-facts dd{margin:5px 0 0;overflow:hidden;color:#475569;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.review-status{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;color:#475569;font-size:11px;font-weight:800;white-space:nowrap;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px}.review-status.is-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.review-status.is-danger{color:#991b1b;background:#fef2f2;border-color:#fecaca}.review-status.is-active{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.review-failure{margin:12px 0 0;color:#991b1b;font-size:12px}.review-row-actions{display:flex;justify-content:flex-end;margin-top:13px}.review-action-bar{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:16px 22px;background:#f8fafc;border-bottom:1px solid #edf1f5}.review-action-bar .field{width:min(480px,100%)}.review-action-bar p{margin:0 0 7px;color:#64748b;font-size:12px}.phase-badge.is-ready{color:#166534;background:#dcfce7;border-color:#bbf7d0}.analysis-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.analysis-setup-grid .management-card{min-width:0}.analysis-config-list{display:grid;max-height:270px;gap:8px;margin:15px 0;overflow-y:auto}.analysis-config-row,.analysis-row-actions,.analysis-window-heading{display:flex;align-items:center}.analysis-config-row{justify-content:space-between;gap:14px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.analysis-config-row>div:first-child{display:grid;min-width:0;gap:4px}.analysis-config-row strong{overflow:hidden;color:#1e293b;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.analysis-config-row span:not(.review-status){overflow:hidden;color:#64748b;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.analysis-row-actions{flex:0 0 auto;gap:7px}.analysis-baseline-form{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.analysis-baseline-form .primary-button.is-full{grid-column:1 / -1;justify-self:start}.analysis-task-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0}.analysis-task-facts>div{display:grid;gap:4px;padding:11px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.analysis-task-facts span{color:#94a3b8;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.analysis-task-facts strong{overflow:hidden;color:#334155;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.analysis-run-actions{margin-top:16px}.analysis-run-card{padding:17px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.analysis-run-card>.inline-button{margin-top:14px}.analysis-window-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.analysis-window-card{min-width:0;padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.analysis-window-heading{justify-content:space-between;gap:9px}.analysis-window-heading>strong{overflow:hidden;color:#334155;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.analysis-window-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:11px 0 0}.analysis-window-card dl>div{min-width:0}.analysis-window-card dt{color:#94a3b8;font-size:10px}.analysis-window-card dd{margin:3px 0 0;overflow:hidden;color:#475569;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.analysis-window-error{margin:10px 0 0;color:#991b1b;font-size:11px}.result-version-layout{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:1px;background:#edf1f5}.pending-review-panel,.version-history-panel{min-width:0;padding:20px 22px;background:#fff}.pending-review-panel h4,.version-history-panel h4{margin:0 0 14px;color:#334155;font-size:13px}.review-mini-empty{padding:20px;color:#94a3b8;font-size:12px;line-height:1.5;text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px}.pending-review-list{display:grid;gap:9px}.pending-review-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.pending-review-list strong,.pending-review-list span{display:block}.pending-review-list strong{color:#334155;font-size:13px}.pending-review-list div>span{margin-top:4px;color:#94a3b8;font-size:11px}.review-table-wrap{overflow-x:auto}.review-table{width:100%;border-collapse:collapse;font-size:12px}.review-table th,.review-table td{padding:11px 10px;text-align:left;border-bottom:1px solid #edf1f5}.review-table th{color:#94a3b8;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.review-table td{color:#475569}.review-table code{font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.review-version-table{min-width:840px}.review-table-actions{display:flex;flex-wrap:wrap;gap:9px;min-width:150px}.review-table-actions .text-button:disabled{cursor:not-allowed;opacity:.45}.review-table-actions .text-button.is-danger{color:#b91c1c}.result-detail-panel{padding:20px 22px;border-top:1px solid #edf1f5}.result-detail-panel>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.result-detail-panel h4,.result-detail-panel .card-kicker{margin:0}.result-detail-panel h4{margin-top:4px;color:#334155;font-size:14px}.review-history-note{margin:15px 0 0;color:#64748b;font-size:12px;line-height:1.65}.export-row{flex-wrap:wrap}.export-row-status{margin-left:auto}.export-row-status .inline-button{text-decoration:none}.export-expired{color:#991b1b;font-size:11px;font-weight:700}@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.monitor-layout,.asset-layout,.config-layout,.scene-workspace{grid-template-columns:1fr}.config-layout .compact-form{padding:0 0 20px;border-right:0;border-bottom:1px solid #e9eef5}.context-form-grid,.scene-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.result-version-layout,.analysis-setup-grid,.profile-layout{grid-template-columns:1fr}}@media(max-width:860px){.sidebar{transform:translate(-100%);transition:transform .18s ease}.sidebar.is-open{transform:translate(0)}.sidebar-scrim{position:fixed;z-index:15;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;background:#0f172a73;border:0}.sidebar-scrim.is-visible{display:block}.content-shell{margin-left:0}.menu-button{display:inline-grid;place-items:center}.detail-grid,.catalog-grid,.deployment-layout{grid-template-columns:1fr}.task-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.scene-side-stack,.scene-selectors{grid-template-columns:1fr}.review-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.topbar{min-height:72px;padding:12px 16px}.context-item{display:none}.topbar-context{gap:8px}.user-context,.environment-badge{display:none}.main-content{padding:24px 16px}.page-heading,.dashboard-note,.task-runtime-note{align-items:flex-start;flex-direction:column}.dashboard-note>p{text-align:left}.task-heading-actions,.task-card-heading,.task-card-footer{width:100%;align-items:flex-start;flex-direction:column}.task-facts{grid-template-columns:1fr}.task-runtime-note>p{text-align:left}.metric-grid{grid-template-columns:1fr}.state-panel{align-items:flex-start;justify-content:flex-start;padding:22px}.phase-badge{align-self:flex-start}.form-grid,.context-form-grid,.device-edit-form{grid-template-columns:1fr}.device-card>header{align-items:flex-start;flex-direction:column}.device-card-controls,.device-edit-actions{width:100%;justify-content:flex-start}.attach-form{grid-template-columns:1fr}.attach-form .primary-button{width:100%}.selection-context,.organization-selector{align-items:flex-start;flex-direction:column}.organization-selector p{text-align:left}.management-card{padding:19px}.password-reset-bar{align-items:stretch;flex-direction:column}.user-inline-actions button{flex:1}.audit-pagination{align-items:flex-start;flex-direction:column}.audit-pagination>div,.audit-pagination button{width:100%}.resource-row{align-items:flex-start}.device-facts,.config-card dl{grid-template-columns:1fr}.scene-status-bar,.scene-actions-card,.geometry-boundary-note,.reference-file-row,.live-reference-row{align-items:flex-start;flex-direction:column}.live-reference-actions{width:100%;align-items:flex-start;flex-direction:column}.scene-action-buttons{width:100%;flex-direction:column}.scene-action-buttons button{width:100%}.scene-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.scene-toolbar button{width:100%}.class-selector,.line-form-grid,.geometry-check-grid{grid-template-columns:1fr}.geometry-boundary-note ul{display:grid}.review-boundary-note,.review-section-heading,.review-action-bar,.result-detail-panel>header,.analysis-run-main,.analysis-run-main>div,.export-row,.export-row>div,.export-row-status{align-items:flex-start;flex-direction:column}.review-facts,.analysis-baseline-form,.analysis-task-facts,.analysis-window-grid{grid-template-columns:1fr}.analysis-config-row,.analysis-window-heading{align-items:flex-start;flex-direction:column}.export-row-status{margin-left:0}}.field-collaboration-card{display:grid;gap:14px}.scene-drift-card{display:grid;gap:12px;margin:14px 0;padding:16px;border:1px solid #d8e3f4;border-radius:14px;background:#f8fbff}.scene-drift-heading,.scene-drift-reference,.scene-drift-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.scene-drift-heading p,.scene-drift-boundary{margin:4px 0 0;color:var(--muted)}.scene-drift-boundary{padding:10px 12px;border-radius:10px;background:#fff7e8;color:#805b10}.scene-drift-actions{justify-content:flex-start}.danger-button{min-height:42px;padding:0 16px;border:1px solid #f1aaaa;border-radius:10px;background:#fff1f1;color:#a92626;font:inherit;font-weight:750;cursor:pointer}.danger-button:disabled{cursor:not-allowed;opacity:.55}.field-session-controls{display:flex;align-items:end;gap:12px}.field-session-controls .field{width:min(260px,100%)}.field-session-result{display:grid;gap:10px;padding:16px;border:1px solid #bcd2fb;border-radius:14px;background:#f3f7ff}.field-session-result>div:first-child{display:flex;justify-content:space-between;gap:12px}.field-session-result input{width:100%;padding:11px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#334155}.field-session-message{margin:0;color:#12633c;font-weight:650}.device-diagnostics-panel{display:grid;gap:16px;padding:18px;border:1px solid #d7e2f5;border-radius:16px;background:#f8fbff}.device-diagnostics-heading,.device-acceptance-summary{display:flex;align-items:center;justify-content:space-between;gap:14px}.device-diagnostics-heading p{margin:4px 0 0;color:var(--muted)}.device-diagnostic-grid,.device-data-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.device-diagnostic-grid article,.device-data-summary>div{display:grid;gap:7px;padding:14px;border:1px solid #dfe7f3;border-radius:12px;background:#fff}.device-diagnostic-grid span,.device-data-summary span,.device-diagnostic-grid small,.device-compatibility-history small{color:var(--muted)}.device-diagnostic-grid strong.is-positive{color:#08783e}.device-diagnostic-grid strong.is-warning{color:#9a6700}.device-diagnostic-grid strong.is-unsupported{color:#c43232}.device-acceptance-summary{justify-content:flex-start;flex-wrap:wrap;padding:12px 14px;border-radius:12px;background:#eaf2ff}.device-acceptance-summary a{margin-left:auto;color:var(--primary);font-weight:700}.device-compatibility-history ul{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.device-compatibility-history li{display:grid;gap:3px;padding-top:8px;border-top:1px solid #e2e8f0}@media(max-width:760px){.scene-drift-heading,.scene-drift-reference,.scene-drift-actions{align-items:stretch;flex-direction:column}.field-session-controls,.field-session-result>div:first-child{align-items:stretch;flex-direction:column}.field-session-controls .field,.field-session-controls button{width:100%}.device-diagnostics-heading,.device-acceptance-summary{align-items:flex-start;flex-direction:column}.device-diagnostic-grid,.device-data-summary{grid-template-columns:1fr}.device-acceptance-summary a{margin-left:0}}.operations-page{width:min(1180px,100%);margin:0 auto}.operations-filter-card{padding-block:18px}.operations-filter-row{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(190px,.6fr) minmax(280px,1.5fr);gap:18px;align-items:end}.operations-filter-row>p{margin:0 0 9px;color:#64748b;font-size:12px;line-height:1.6;text-align:right}.operations-filter-row>p strong{color:#1e293b}.operations-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.operations-metrics article{padding:17px 18px;background:#fff;border:1px solid #dfe6ef;border-radius:11px}.operations-metrics article.is-critical{background:#fff8f8;border-color:#fecaca}.operations-metrics article.is-resolved{background:#f5fdf8;border-color:#bbf7d0}.operations-metrics span,.operations-metrics strong{display:block}.operations-metrics span{margin-bottom:8px;color:#64748b;font-size:11px;font-weight:700}.operations-metrics strong{color:#0f172a;font-size:27px}.alert-list{display:grid;gap:13px}.alert-card{overflow:hidden;background:#fff;border:1px solid #dfe6ef;border-left:4px solid #94a3b8;border-radius:12px;box-shadow:0 7px 24px #0f172a0a}.alert-card.is-warning{border-left-color:#f59e0b}.alert-card.is-critical{border-left-color:#dc2626}.alert-card.status-resolved{border-left-color:#16a34a}.alert-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;background:#f8fafc;border-bottom:1px solid #edf2f7}.alert-card>header>div{display:flex;flex-wrap:wrap;gap:7px}.alert-card>header time{color:#7c8ba1;font-size:11px}.operations-status{display:inline-flex;min-height:25px;align-items:center;padding:4px 9px;color:#475569;font-size:10px;font-weight:800;white-space:nowrap;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px}.operations-status.is-info,.operations-status.is-acknowledged,.operations-status.is-configuring{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.operations-status.is-warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.operations-status.is-critical,.operations-status.is-open{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.operations-status.is-resolved,.operations-status.is-available{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.alert-card-body{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:19px 20px 20px}.alert-card-body>div{min-width:0}.alert-card-body h3{margin-bottom:15px;color:#172033;font-size:16px;line-height:1.5}.alert-card-body .primary-button{flex:0 0 auto}.alert-facts{display:flex;flex-wrap:wrap;gap:12px 24px;margin:0}.alert-facts div{min-width:130px}.alert-facts dt,.alert-facts dd{margin:0}.alert-facts dt{margin-bottom:3px;color:#94a3b8;font-size:10px;font-weight:700}.alert-facts dd{color:#475569;font-size:12px}.alert-action-note{max-width:180px;flex:0 0 auto;color:#1d4ed8;font-size:11px;line-height:1.5;text-align:right}.alert-action-note.is-resolved{color:#15803d}.integration-truth-note{display:flex;align-items:flex-start;gap:11px;padding:14px 16px;color:#1e3a5f;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px}.integration-truth-note>span{display:grid;width:22px;height:22px;flex:0 0 22px;place-items:center;color:#fff;font-size:12px;font-weight:800;background:#2563eb;border-radius:50%}.integration-truth-note p{margin:0;font-size:12px;line-height:1.65}.organization-setting-card .operations-filter-row{grid-template-columns:minmax(240px,.8fr) minmax(300px,1.5fr)}.settings-section{display:grid;gap:16px}.settings-section>header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.settings-section>header h3,.settings-section>header p{margin:0}.settings-section>header h3{color:#172033;font-size:20px}.settings-section>header>p{color:#7c8ba1;font-size:11px}.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.integration-card{display:grid;gap:18px;padding:22px;background:#fff;border:1px solid #dfe6ef;border-radius:12px;box-shadow:0 7px 24px #0f172a0a}.integration-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.integration-card>header>div{display:flex;min-width:0;gap:12px}.integration-card h4,.integration-card p{margin:0}.integration-card h4{margin-bottom:6px;color:#172033;font-size:16px}.integration-card p{color:#64748b;font-size:11px;line-height:1.6}.integration-mark{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;color:#fff;font-size:13px;font-weight:800;background:#2563eb;border-radius:10px}.integration-mark.is-wecom{background:#16a34a}.integration-facts{display:grid;grid-template-columns:1.5fr 1fr;gap:1px;margin:0;overflow:hidden;background:#e6edf5;border:1px solid #e2e8f0;border-radius:9px}.integration-facts>div{min-width:0;padding:12px 13px;background:#f8fafc}.integration-facts dt,.integration-facts dd{margin:0}.integration-facts dt{margin-bottom:5px;color:#94a3b8;font-size:10px;font-weight:700}.integration-facts dd{color:#475569;font-size:11px;line-height:1.5;word-break:break-word}.integration-actions{display:flex;flex-wrap:wrap;gap:9px}.wecom-configuration-form{display:grid;gap:14px;padding-top:2px}.wecom-configuration-form .field{width:100%}.wecom-configuration-form input[type=password]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.04em}.wecom-configuration-form small{line-height:1.6}.wecom-configuration-form .danger-button{min-height:40px}.pricing-description{max-width:760px;margin:-5px 0 18px;color:#64748b;font-size:12px;line-height:1.65}.pricing-form{display:grid;grid-template-columns:minmax(260px,430px) auto;gap:16px;align-items:end}.money-input{display:grid;grid-template-columns:40px minmax(0,1fr)}.money-input>span{display:grid;place-items:center;color:#475569;background:#f8fafc;border:1px solid #cbd5e1;border-right:0;border-radius:8px 0 0 8px}.money-input input{border-radius:0 8px 8px 0}.field-deployment-page{min-height:100vh;padding:clamp(18px,4vw,46px) 16px;background:radial-gradient(circle at 12% 10%,rgb(37 99 235 / 15%),transparent 28%),linear-gradient(145deg,#eef4ff,#f8fafc 52%,#edf2f7)}.field-deployment-shell{display:grid;width:min(940px,100%);gap:18px;margin:0 auto}.field-public-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.field-public-header .login-brand{margin:0}.field-security-pill{padding:7px 11px;color:#166534;font-size:11px;font-weight:800;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px}.field-access-card,.field-task-hero,.field-action-card,.field-task-footer{background:#fff;border:1px solid #dbe4ef;border-radius:15px;box-shadow:0 18px 50px #0f172a14}.field-access-card{width:min(520px,100%);margin:clamp(20px,7vh,80px) auto 0;padding:clamp(25px,5vw,40px)}.field-access-card h1,.field-task-hero h1{margin-bottom:10px;color:#0f172a;font-size:clamp(25px,4vw,34px)}.field-access-card>p:not(.eyebrow){color:#64748b;font-size:13px;line-height:1.7}.field-access-card .business-notice{margin:18px 0}.field-access-form{display:grid;gap:16px;margin-top:22px}.field-access-form>.primary-button{width:100%;min-height:46px}.field-code-input{display:grid;grid-template-columns:minmax(0,1fr) auto}.field-code-input input{border-radius:8px 0 0 8px}.field-code-input button{padding:0 13px;color:#1d4ed8;font-size:12px;font-weight:700;background:#eff6ff;border:1px solid #bfdbfe;border-left:0;border-radius:0 8px 8px 0;cursor:pointer}.field-privacy-note{margin:18px 0 0!important;padding-top:16px;color:#7c8ba1!important;font-size:11px!important;border-top:1px solid #edf2f7}.field-task-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:clamp(23px,4vw,34px)}.field-task-hero p:last-child{margin:0;color:#64748b;font-size:12px}.field-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field-action-card{padding:clamp(21px,3vw,28px)}.field-action-card>header{display:flex;gap:12px;margin-bottom:21px}.field-action-card>header>span{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;color:#1d4ed8;font-size:12px;font-weight:800;background:#eff6ff;border:1px solid #bfdbfe;border-radius:50%}.field-action-card h2,.field-action-card p{margin:0}.field-action-card h2{margin-bottom:5px;color:#172033;font-size:18px}.field-action-card header p{color:#64748b;font-size:11px;line-height:1.55}.field-action-card form{display:grid;gap:16px}.field-action-card form>.primary-button{width:100%;min-height:43px}.field-result-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;border:0}.field-result-options legend{grid-column:1 / -1;margin-bottom:0;color:#334155;font-size:12px;font-weight:800}.field-result-options button{min-height:43px;color:#475569;font-size:12px;font-weight:700;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;cursor:pointer}.field-result-options button.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#60a5fa;box-shadow:inset 0 0 0 1px #60a5fa}.field-confirm-check{display:flex;align-items:flex-start;gap:11px;padding:13px;color:#334155;background:#f8fafc;border:1px solid #dbe4ef;border-radius:9px;cursor:pointer}.field-confirm-check input{width:17px;height:17px;margin:2px 0 0;accent-color:#2563eb}.field-confirm-check strong,.field-confirm-check small{display:block}.field-confirm-check strong{font-size:12px}.field-confirm-check small{margin-top:4px;color:#64748b;font-size:10px;line-height:1.5}.field-permission-note{padding:13px;color:#92400e;font-size:12px;background:#fffbeb;border:1px solid #fde68a;border-radius:9px}.field-task-footer{padding:18px 21px}.field-task-footer strong,.field-task-footer p{margin:0}.field-task-footer strong{display:block;margin-bottom:5px;color:#334155;font-size:12px}.field-task-footer p{color:#64748b;font-size:11px;line-height:1.6}@media(max-width:820px){.operations-filter-row,.organization-setting-card .operations-filter-row,.pricing-form{grid-template-columns:1fr}.operations-filter-row>p{text-align:left}.operations-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.integration-grid,.field-action-grid{grid-template-columns:1fr}}@media(max-width:560px){.operations-metrics{grid-template-columns:1fr}.alert-card>header,.alert-card-body,.settings-section>header,.integration-card>header,.field-public-header,.field-task-hero{align-items:flex-start;flex-direction:column}.alert-action-note{max-width:none;text-align:left}.alert-card-body .primary-button,.integration-actions button,.field-task-hero .secondary-button{width:100%}.integration-facts{grid-template-columns:1fr}.field-security-pill{align-self:flex-start}.field-access-card{margin-top:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
