:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17202a;background:#eef2f6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--sidebar: #132238;--sidebar-muted: #9fb0c3;--line: #d9e1ea;--panel: #ffffff;--text-muted: #667485;--primary: #0f766e;--primary-dark: #0b5e58;--warning: #b45309;--danger: #b91c1c;--ok: #15803d;--success: #15803d}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:244px 1fr}.sidebar{background:var(--sidebar);color:#fff;display:flex;flex-direction:column;min-height:100vh}.brand{height:68px;display:flex;align-items:center;gap:10px;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.11)}.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:#19a39a;border-radius:8px;font-weight:800}.brand strong,.brand span{display:block}.brand span{color:var(--sidebar-muted);font-size:11px;margin-top:3px}.sidebar-scroll{overflow-y:auto;padding:12px 9px 22px}.sidebar-group{margin-bottom:12px}.sidebar-group-title{display:flex;align-items:center;gap:8px;color:#dbe7f3;padding:7px;font-size:13px;font-weight:700}.sidebar-links{display:grid;gap:4px}.sidebar-link{border:0;width:100%;min-height:34px;color:var(--sidebar-muted);background:transparent;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 7px 7px 23px;border-radius:6px;cursor:pointer;font-size:13px}.sidebar-link:hover{color:#fff;background:#ffffff14}.sidebar-link.active{color:#fff;background:#19a39a3d}.sidebar-link small{color:#c2d1df;font-size:10px;border:1px solid rgba(255,255,255,.16);padding:1px 4px;border-radius:999px}.main{min-width:0;padding:20px}.topbar{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;gap:14px;align-items:center;margin-bottom:20px}.page-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.topbar h1{margin:0;font-size:24px;line-height:1.25}.topbar p{margin:5px 0 0;color:var(--text-muted)}.demo-badge{display:inline-flex;align-items:center;min-height:24px;border:1px solid #c7e7e3;border-radius:999px;padding:2px 9px;background:#ecfdf9;color:#0b5e58;font-size:12px;font-weight:800;white-space:nowrap}.demo-badge.strong{min-height:28px;background:#ffffff24;border-color:#ffffff3d;color:#dffaf7}.topbar-status{min-height:40px;border:1px solid #d8e6ef;border-radius:8px;background:#fff;display:flex;align-items:center;gap:8px;padding:0 12px;color:#344255;white-space:nowrap}.topbar-status svg{color:var(--primary)}.topbar-status span,.topbar-status strong{font-size:13px}.topbar-status strong{color:var(--danger)}.wecom-auth-banner{border:1px solid #c7e7e3;border-radius:8px;background:#ecfdf9;color:#0b5e58;padding:10px 12px;margin-bottom:16px;font-weight:800}.icon-button,.primary-button,.secondary-button{border:1px solid var(--line);background:#fff;color:#17202a;border-radius:7px;min-height:40px;cursor:pointer}.icon-button{width:42px;display:grid;place-items:center}.primary-button{border-color:var(--primary);background:var(--primary);color:#fff;padding:0 18px;font-weight:700}.primary-button:hover{background:var(--primary-dark)}.secondary-button{padding:0 14px}a.secondary-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:700}.secondary-button.danger{border-color:#f3b4b4;color:var(--danger)}.primary-button:disabled,.secondary-button:disabled{border-color:#d9e2eb;background:#edf2f7;color:#8b98a7;cursor:not-allowed}.primary-button:disabled:hover,.secondary-button:disabled:hover{background:#edf2f7}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}.demo-hero{min-height:188px;border:1px solid #0b5e58;border-radius:8px;background:linear-gradient(135deg,#0f766ef2,#132238f7),#132238;color:#fff;padding:22px;margin-bottom:16px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.8fr);gap:20px;align-items:end}.demo-hero h2{margin:12px 0 8px;font-size:29px;line-height:1.2}.demo-hero p{margin:0;max-width:820px;color:#dbe7f3;line-height:1.65}.demo-hero-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.demo-hero-grid>div{min-height:82px;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:12px;background:#ffffff17;display:grid;align-content:space-between}.demo-hero-grid span,.demo-hero-grid strong{display:block}.demo-hero-grid span{color:#cbd8e4;font-size:12px}.demo-hero-grid strong{font-size:16px}.cockpit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.cockpit-card{min-height:136px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:15px;display:grid;align-content:start;gap:10px}.cockpit-card svg{color:var(--primary)}.cockpit-card strong{color:#1d2a3a;line-height:1.35}.cockpit-card span{color:var(--text-muted);font-size:13px;line-height:1.55}.metric-card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px}.metric-card{min-height:108px;padding:15px;display:grid;align-content:space-between}.metric-card span,.metric-card small{color:var(--text-muted)}.metric-card strong{font-size:22px}.content-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.85fr);gap:16px}.wide-panel{grid-column:span 1}.content-grid .wide-panel:last-child{grid-column:1 / -1}.panel{min-width:0}.panel-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}.panel-header.compact{min-height:66px}.panel-header h2{margin:0;font-size:17px}.panel-header p{margin:5px 0 0;color:var(--text-muted);font-size:13px}.table-wrap{overflow-x:auto}table{width:100%;min-width:830px;border-collapse:collapse}th,td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:middle}th{color:#506071;background:#f6f8fb;font-weight:700}td strong,td span{display:block}td span{margin-top:4px;color:var(--text-muted);font-size:12px}.risk-pill{width:42px;text-align:center;border-radius:999px;padding:4px 8px;font-weight:700;font-size:12px}.risk-pill.low{color:var(--ok);background:#dcfce7}.risk-pill.medium{color:var(--warning);background:#fef3c7}.risk-pill.high{color:var(--danger);background:#fee2e2}.risk-list{display:grid;gap:10px;padding:14px}.risk-item{display:grid;grid-template-columns:24px 1fr;gap:9px;align-items:start;padding:12px;border:1px solid #e8eef5;border-radius:8px;background:#fbfcfe}.risk-item svg{color:var(--warning);margin-top:2px}.risk-item strong,.risk-item span{display:block}.risk-item span{margin-top:5px;color:var(--text-muted);font-size:13px;line-height:1.5}.roadmap{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:16px}.roadmap-step{border:1px solid #dce6ef;border-radius:8px;min-height:92px;padding:12px;display:grid;align-content:space-between;background:#f9fbfd}.roadmap-step span{width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800}.roadmap-step strong{font-size:14px}.blueprint-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:16px}.blueprint-card{min-height:92px;border:1px solid #dce6ef;border-radius:8px;background:#fbfcfe;padding:13px;display:grid;align-content:start;gap:8px}.blueprint-card strong,.blueprint-card span{display:block}.blueprint-card span{color:var(--text-muted);font-size:13px;line-height:1.55}.placeholder-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:16px}.placeholder-card{min-height:112px;border:1px solid #dce6ef;border-radius:8px;padding:14px;background:#f9fbfd;display:grid;align-content:start;gap:9px}.placeholder-card strong{font-size:15px}.placeholder-card span{color:var(--text-muted);line-height:1.55;font-size:13px}.vehicle-page{display:grid;gap:12px}.vehicle-page>.panel .panel-header{min-height:58px;padding:12px 16px}.vehicle-page>.panel .panel-header p{display:none}.vehicle-page>.panel th,.vehicle-page>.panel td{padding:9px 14px;font-size:13px}.vehicle-page>.panel tbody tr{height:56px}.text-link{padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.text-link strong,.text-link span{display:block}.text-link span{margin-top:4px;color:var(--text-muted);font-size:12px}.text-link.selected strong{color:var(--primary)}.text-link .plate-main{color:#111827;font-size:14px;font-weight:900}.text-link.selected .plate-main{color:var(--primary-dark)}.model-cell strong{display:block;font-size:13px}.asset-risk-cell{display:grid;gap:5px;justify-items:start;min-width:118px}.asset-risk-cell span:last-child{color:var(--text-muted);font-size:12px;line-height:1.25}.release-pill{display:inline-grid;grid-template-columns:9px 1fr;gap:2px 7px;align-items:center;min-width:118px}.release-pill i{width:9px;height:9px;border-radius:50%;grid-row:1 / span 2}.release-pill strong{font-size:13px;line-height:1.15}.release-pill span{color:var(--text-muted);font-size:12px;line-height:1.25}.release-pill.green i,.release-summary.green,.release-card.green{background:#ecfdf5}.release-pill.green i{background:#10b981}.release-pill.yellow i,.release-summary.yellow,.release-card.yellow{background:#fffbeb}.release-pill.yellow i{background:#f59e0b}.release-pill.red i,.release-summary.red,.release-card.red{background:#fef2f2}.release-pill.red i{background:#ef4444}.release-pill.gray i,.release-summary.gray,.release-card.gray{background:#f4f6f8}.release-pill.gray i{background:#94a3b8}.detail-shell{display:grid;gap:12px}.detail-hero{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-height:90px;padding:12px 16px;display:grid;grid-template-columns:minmax(0,1fr) 160px 160px 160px;gap:10px;align-items:center}.detail-hero span,.detail-profit span,.detail-profit small{color:var(--text-muted);font-size:13px}.detail-hero h2{margin:4px 0 3px;font-size:22px}.detail-hero p{margin:0;color:var(--text-muted)}.detail-profit{min-height:66px;border:1px solid #dce6ef;border-radius:8px;padding:10px;display:grid;align-content:space-between;background:#f9fbfd}.detail-profit strong{font-size:18px}.release-card{border-color:#d7e5e1}.detail-tabs{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;display:flex;gap:8px;flex-wrap:wrap}.detail-tabs button{min-height:36px;border:1px solid #dce6ef;border-radius:7px;background:#f8fbfd;color:#17202a;cursor:pointer;padding:0 14px;font-weight:700}.detail-tabs button.active{border-color:var(--primary);background:#ecfdf9;color:var(--primary-dark)}.detail-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.detail-section-grid .panel:first-child{grid-column:1 / -1}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px}.detail-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));padding:0}.detail-item{min-height:70px;border:1px solid #e4ebf2;border-radius:8px;padding:11px;display:grid;align-content:space-between;background:#fbfcfe}.release-gate{display:grid;gap:14px;padding:14px}.release-summary{border:1px solid #dbe7ef;border-radius:8px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:14px}.release-summary span{color:var(--text-muted);font-size:13px}.release-summary strong{display:block;margin-top:4px;font-size:22px}.release-summary p{margin:6px 0 0;color:var(--text-muted)}.insurance-stack{display:grid;gap:12px}.rollback-note{border:1px dashed #bfd1df;border-radius:8px;background:#f8fbfd;padding:12px;display:grid;gap:8px}.rollback-note span{color:var(--text-muted);line-height:1.6}.rollback-note div{display:flex;gap:8px;flex-wrap:wrap}.rollback-note button{border:1px solid #cddce8;border-radius:7px;background:#fff;color:#17202a;min-height:32px;padding:0 10px;font-weight:700}.detail-item span{color:var(--text-muted);font-size:12px}.detail-item strong{font-size:14px;line-height:1.35}.license-detail{padding:16px;display:grid;gap:16px}.license-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.license-preview-grid article{min-height:112px;border:1px solid #dce6ef;border-radius:8px;background:#f8fbfd;padding:13px;display:grid;align-content:space-between}.license-preview-grid span,.license-preview-grid small,.license-section h3{color:var(--text-muted)}.license-preview-grid strong{font-size:17px}.license-section{display:grid;gap:10px}.license-section h3{margin:0;font-size:13px}.model-standard-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.model-standard-card>div{min-height:96px;border:1px solid #dce6ef;border-radius:8px;background:#f8fbfd;padding:13px;display:grid;align-content:space-between}.model-standard-card span,.model-standard-card small{color:var(--text-muted);font-size:13px}.model-standard-card strong{font-size:18px}.section-help{margin:0;color:var(--text-muted);font-size:13px;line-height:1.6}.responsibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.responsibility-card{border:1px solid #dce6ef;border-radius:8px;background:#fff;padding:12px;display:grid;gap:9px}.responsibility-card.enabled{border-color:#b7d4c5;background:#f6fbf8}.responsibility-card label,.optional-responsibility label{display:flex;align-items:center;gap:8px;color:#17202a;font-weight:800}.responsibility-card input,.optional-responsibility input{width:15px;height:15px;accent-color:#15803d}.responsibility-card dl{margin:0;display:grid;grid-template-columns:64px minmax(0,1fr);gap:5px 8px;font-size:12px}.responsibility-card dt{color:var(--text-muted)}.responsibility-card dd{margin:0;color:#17202a;line-height:1.45}.responsibility-card small{color:var(--text-muted);line-height:1.5}.optional-responsibility{border:1px solid #dce6ef;border-radius:8px;padding:10px 12px;background:#fbfcfe;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.optional-responsibility span{color:var(--text-muted);font-size:12px;font-weight:800}.optional-responsibility label{color:#596675;font-size:12px;font-weight:700}.page-loading{min-height:220px;border:1px solid #dce6ef;border-radius:8px;background:#fbfcfe;display:grid;place-content:center;gap:8px;text-align:center}.page-loading strong{color:#17202a;font-size:16px}.page-loading span{color:var(--text-muted);font-size:13px}.command-button-row{display:flex;flex-wrap:wrap;gap:10px;padding:0 16px 16px}.command-button-row button{min-height:36px;border:1px solid #cbd8e4;border-radius:7px;background:#fff;color:#17202a;padding:0 13px;font-weight:700;cursor:pointer}.command-button-row button:hover{border-color:#2563eb;color:#1d4ed8}.timeline{display:grid;gap:0;padding:16px 18px}.timeline-item{display:grid;grid-template-columns:18px 1fr;gap:10px;min-height:58px;position:relative}.timeline-item:not(:last-child):before{content:"";position:absolute;left:5px;top:18px;bottom:0;width:1px;background:#cfd9e3}.timeline-dot{width:11px;height:11px;margin-top:4px;border-radius:999px;background:var(--primary);position:relative;z-index:1}.timeline-item strong,.timeline-item span{display:block}.timeline-item span{margin-top:5px;color:var(--text-muted);font-size:13px}.ledger-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px}.ledger-item{min-height:72px;border:1px solid #e4ebf2;border-radius:8px;padding:11px;display:grid;align-content:space-between;background:#fbfcfe}.ledger-item span{color:var(--text-muted);font-size:13px}.ledger-item.income strong{color:var(--ok)}.ledger-item.cost strong,.ledger-item.loss strong{color:var(--danger)}.ledger-item.profit strong{color:var(--primary);font-size:20px}.mini-list{display:grid;gap:10px;padding:16px}.mini-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e4ebf2;border-radius:8px;padding:12px;background:#fbfcfe}.mini-list-item strong,.mini-list-item span,.mini-list-item small{display:block}.mini-list-item span,.mini-list-item small{color:var(--text-muted);margin-top:4px}.linked-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.linked-records>div{border:1px solid #e4ebf2;border-radius:8px;padding:12px;background:#fbfcfe;min-height:112px}.linked-records span,.linked-records strong{display:block}.linked-records span{color:var(--text-muted);font-size:13px;margin-bottom:10px}.linked-records strong{font-size:13px;margin-top:7px}.linked-table-stack{display:grid;gap:14px;padding:16px}.linked-table-stack .table-wrap{margin:0}.workflow-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.workflow-action-card{min-height:218px;border:1px solid #dce6ef;border-radius:8px;background:#fbfcfe;padding:14px;display:grid;align-content:start;gap:12px}.workflow-action-card>div{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}.workflow-action-card strong{line-height:1.35}.workflow-action-card span{flex:0 0 auto;border:1px solid #cfe8e4;border-radius:999px;padding:3px 8px;color:var(--primary-dark);background:#effaf8;font-size:12px;font-weight:800}.workflow-action-card p{margin:0;color:#354252;line-height:1.55}.workflow-action-card dl{display:grid;grid-template-columns:42px 1fr;gap:7px 9px;margin:0;color:var(--text-muted);font-size:13px;line-height:1.45}.workflow-action-card dt{font-weight:800;color:#233142}.workflow-action-card dd{margin:0}.trace-chain{display:grid;gap:10px;padding:16px}.trace-link{border:1px solid #dce6ef;border-left:4px solid var(--primary);border-radius:8px;background:#fbfcfe;padding:12px;display:grid;gap:8px}.trace-link.异常,.trace-link.暂停{border-left-color:var(--danger);background:#fff8f8}.trace-link.待确认{border-left-color:#d89b2b;background:#fffaf0}.trace-link.可放行,.trace-link.已完成{border-left-color:var(--success)}.trace-link>div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.trace-link span{flex:0 0 auto;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:800;color:#233142;background:#edf3f7}.trace-link b{font-size:14px}.trace-link p{margin:0;color:#354252;line-height:1.55}.trace-link small{color:var(--text-muted);font-weight:700}.damage-page,.inspection-page,.contract-page,.finance-page,.driver-page,.operations-page,.imports-page,.sandbox-page{display:grid;gap:16px}.sandbox-hero{min-height:150px;border:1px solid #0f766e;border-radius:8px;background:#fff;padding:18px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}.sandbox-hero span{display:inline-flex;width:fit-content;min-height:24px;align-items:center;border-radius:999px;background:#ecfdf9;color:var(--primary-dark);font-size:12px;font-weight:800;padding:2px 9px}.sandbox-hero h2{margin:10px 0 8px;font-size:24px;line-height:1.25}.sandbox-hero p{margin:0;max-width:860px;color:var(--text-muted);line-height:1.65}.sandbox-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.sandbox-notice{min-height:54px;border:1px solid #bfe7ce;border-left:4px solid var(--ok);border-radius:8px;background:#f0fdf4;padding:10px 12px;display:grid;align-content:center;gap:4px}.sandbox-notice.warn{border-color:#f7d4a9;border-left-color:var(--warning);background:#fffaf0}.sandbox-notice strong,.sandbox-notice span{display:block}.sandbox-notice span{color:#354252;line-height:1.55}.sandbox-next-step{min-height:70px;border:1px solid #bae6fd;border-left:4px solid #0284c7;border-radius:8px;background:#f0f9ff;padding:12px 14px;display:grid;align-content:center;gap:5px}.sandbox-next-step strong{color:#0f172a;font-size:15px}.sandbox-next-step span{color:#334155;line-height:1.55}.sandbox-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.sandbox-stat-grid article{min-height:104px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px;display:grid;align-content:space-between}.sandbox-stat-grid span,.sandbox-stat-grid small{color:var(--text-muted)}.sandbox-stat-grid strong{font-size:22px}.sandbox-flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px 16px 0}.sandbox-flow-grid article{min-height:86px;border:1px solid #dce6ef;border-radius:8px;background:#f8fbfd;padding:12px;display:grid;align-content:start;gap:6px}.sandbox-flow-grid strong,.sandbox-flow-grid span{display:block}.sandbox-flow-grid span{color:var(--text-muted);line-height:1.5}.sandbox-chain-shell{padding:16px;display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px}.sandbox-vehicle-picker{border:1px solid var(--line);border-radius:8px;background:#f8fbfd;padding:12px;display:grid;align-content:start;gap:8px}.sandbox-vehicle-picker>strong{margin-bottom:4px}.sandbox-vehicle-picker button{min-height:56px;border:1px solid #dce6ef;border-radius:8px;background:#fff;color:#17202a;text-align:left;cursor:pointer;padding:8px 10px;display:grid;gap:2px}.sandbox-vehicle-picker button.active{border-color:var(--primary);background:#ecfdf9}.sandbox-vehicle-picker span,.sandbox-vehicle-picker small{display:block}.sandbox-vehicle-picker small{color:var(--text-muted)}.sandbox-chain-main{display:grid;gap:12px}.sandbox-chain-line{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sandbox-chain-line article,.sandbox-chain-money article,.sandbox-chain-risk,.sandbox-chain-damages{border:1px solid #dce6ef;border-radius:8px;background:#fff;padding:12px}.sandbox-chain-line article{min-height:108px;display:grid;align-content:space-between;gap:6px}.sandbox-chain-line span,.sandbox-chain-line small,.sandbox-chain-money span,.sandbox-chain-risk span,.sandbox-chain-damages span,.sandbox-chain-damages small{color:var(--text-muted)}.sandbox-chain-line strong,.sandbox-chain-money strong,.sandbox-chain-risk strong,.sandbox-chain-damages strong,.sandbox-chain-empty{color:#17202a}.sandbox-chain-money{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sandbox-chain-money article{min-height:80px;display:grid;align-content:space-between}.sandbox-chain-risk{border-left:4px solid var(--primary);background:#f8fcfb;display:grid;gap:5px}.sandbox-chain-damages{display:grid;gap:8px}.sandbox-chain-damages article{border-top:1px solid var(--line);padding-top:8px;display:grid;gap:3px}.sandbox-chain-empty{border:1px dashed #bfd0df;border-radius:8px;background:#f8fbfd;min-height:180px;display:grid;place-items:center;padding:16px}.sandbox-warning-list{display:grid;gap:10px;padding:16px}.sandbox-warning{min-height:62px;border:1px solid #f7d4a9;border-left:4px solid var(--warning);border-radius:8px;background:#fffaf0;padding:11px 12px;display:grid;align-content:center;gap:5px}.sandbox-warning.ok{border-color:#bfe7ce;border-left-color:var(--ok);background:#f0fdf4}.sandbox-warning strong,.sandbox-warning span{display:block}.sandbox-warning span{color:#354252;line-height:1.55}.sandbox-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sandbox-form{padding:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sandbox-form.wide{grid-template-columns:repeat(3,minmax(0,1fr))}.sandbox-field{display:grid;gap:6px}.sandbox-field span{color:#506071;font-size:12px;font-weight:800}.sandbox-field input,.sandbox-field select{width:100%;min-height:38px;border:1px solid #cfd9e3;border-radius:7px;background:#fff;padding:0 10px;color:#17202a;font:inherit}.sandbox-field input:focus,.sandbox-field select:focus{outline:2px solid rgba(15,118,110,.18);border-color:var(--primary)}.sandbox-form .primary-button{grid-column:1 / -1}.sandbox-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:end}.sandbox-checkbox{min-height:38px;border:1px solid #cfd9e3;border-radius:7px;background:#fff;padding:0 10px;display:flex;align-items:center;gap:8px;color:#17202a;font-weight:800}.sandbox-checkbox input{width:15px;height:15px;accent-color:var(--primary)}.sandbox-responsibility-preview{padding:16px;display:grid;gap:9px}.sandbox-responsibility-preview>strong{font-size:16px}.sandbox-responsibility-preview article{min-height:58px;border:1px solid #dce6ef;border-radius:8px;background:#f8fbfd;padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center}.sandbox-responsibility-preview article.disabled{opacity:.55}.sandbox-responsibility-preview.compact{padding:12px 0 0;grid-template-columns:repeat(2,minmax(0,1fr))}.responsibility-toggle{display:inline-flex;align-items:center;gap:8px;min-width:0}.responsibility-toggle input{width:15px;height:15px;accent-color:var(--primary)}.sandbox-responsibility-preview select{min-height:30px;border-radius:999px;border:1px solid #cfe1ef;background:#fff;color:var(--primary-dark);padding:0 8px;font-size:12px;font-weight:800}.sandbox-responsibility-preview span{color:#17202a;font-weight:800}.sandbox-responsibility-preview b{border-radius:999px;background:#ecfdf9;color:var(--primary-dark);padding:3px 8px;font-size:12px}.sandbox-responsibility-preview small{grid-column:1 / -1;color:var(--text-muted)}.sandbox-responsibility-preview .responsibility-rule{color:#8a5a00;background:#fff8e6;border:1px solid #f5deb0;border-radius:7px;padding:7px 8px}.sandbox-template-note{grid-column:1 / -1;border:1px solid #dce6ef;background:#f8fafc;border-radius:8px;padding:10px 12px;color:var(--text-muted);font-size:13px;line-height:1.6}.sandbox-finance-summary{padding:16px 16px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sandbox-finance-summary article{min-height:74px;border:1px solid #dce6ef;border-radius:8px;background:#fff;padding:11px 12px;display:grid;align-content:space-between}.sandbox-finance-summary span{color:var(--text-muted);font-size:12px}.sandbox-finance-summary strong{color:#17202a}.sandbox-settlement-result{margin:12px 16px 0;border:1px solid #bfdbfe;background:#eff6ff;border-radius:8px;padding:12px 14px;display:grid;gap:8px}.sandbox-settlement-result.done{border-color:#bbf7d0;background:#f0fdf4}.sandbox-settlement-result strong{color:#17202a;font-size:13px}.sandbox-settlement-result div{display:flex;flex-wrap:wrap;gap:8px}.sandbox-settlement-result span{border:1px solid rgba(15,23,42,.12);background:#fff;border-radius:999px;padding:5px 9px;color:var(--text-muted);font-size:12px}.sandbox-money-lab{margin:14px 16px 0;border:1px solid #d9e5ee;background:#fbfdfe;border-radius:8px;overflow:hidden}.sandbox-money-lab .sandbox-section-title{border:0;border-bottom:1px solid #d9e5ee;border-radius:0;background:#f4f8fb;padding:12px 14px}.sandbox-money-lab .sandbox-contract-actions{padding:12px 14px 0}.sandbox-money-lab .sandbox-finance-summary{padding:12px 14px 0;grid-template-columns:repeat(3,minmax(0,1fr))}.sandbox-money-lab .table-wrap{margin-top:12px;border-radius:0;border-left:0;border-right:0;border-bottom:0}.sandbox-money-lab .sandbox-empty-state{margin:12px 14px 14px}.sandbox-legal-handoff{margin:12px 16px 0;border:1px solid #fde68a;background:#fffbeb;border-radius:8px;overflow:hidden}.sandbox-legal-handoff .sandbox-section-title{border:0;border-bottom:1px solid #fde68a;border-radius:0;background:transparent;padding:12px 14px}.sandbox-reconditioning-flow{margin:12px 16px 0;border:1px solid #dce6ef;background:#fff;border-radius:8px;overflow:hidden}.sandbox-reconditioning-flow .sandbox-section-title{border:0;border-bottom:1px solid #dce6ef;border-radius:0;background:#f8fafc;padding:12px 14px}.sandbox-reconditioning-flow .sandbox-contract-actions{padding:12px 14px;border-bottom:1px solid #edf2f7}.sandbox-next-rental-result{margin:12px 14px;border:1px solid #bbf7d0;background:#f0fdf4;border-radius:8px;padding:11px 12px;display:grid;gap:4px}.sandbox-next-rental-result.warn{border-color:#fed7aa;background:#fff7ed}.sandbox-next-rental-result strong{color:#17202a;font-size:13px}.sandbox-next-rental-result span{color:var(--text-muted);font-size:13px;line-height:1.5}.sandbox-change-ledger{margin:12px 16px 0;border:1px solid #dbeafe;background:#f8fbff;border-radius:8px;overflow:hidden}.sandbox-change-ledger .sandbox-section-title{border:0;border-bottom:1px solid #dbeafe;border-radius:0;background:transparent;padding:12px 14px}.sandbox-retention-board{border:1px solid #c7d2fe;background:#f8faff;border-radius:8px;overflow:hidden}.sandbox-retention-board .sandbox-section-title{border:0;border-bottom:1px solid #c7d2fe;border-radius:0;background:transparent;padding:12px 14px}.sandbox-retention-board .sandbox-finance-summary{padding:12px 14px;grid-template-columns:repeat(6,minmax(0,1fr))}.sandbox-stage-section{display:grid;gap:16px}.sandbox-section-title{border:1px solid #dce6ef;border-radius:8px;background:#fff;padding:16px}.sandbox-section-title span{color:var(--primary-dark);font-size:12px;font-weight:900}.sandbox-section-title h3{margin:5px 0;color:#17202a}.sandbox-section-title p{margin:0;color:var(--text-muted)}.sandbox-current-object,.sandbox-empty-state{margin:16px 16px 0;border:1px solid #dce6ef;border-radius:8px;background:#f8fbfd;padding:12px;display:grid;gap:4px}.sandbox-current-object span,.sandbox-empty-state{color:var(--text-muted)}.sandbox-evidence-bar{margin:16px 16px 0;border:1px solid #dce6ef;border-radius:8px;background:#f8fbfd;padding:12px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}.sandbox-evidence-bar div{display:grid;gap:4px}.sandbox-evidence-bar strong{color:#17202a}.sandbox-evidence-bar span{color:var(--text-muted)}.sandbox-contract-gate{padding:16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:stretch}.sandbox-contract-gate article{border:1px solid #dce6ef;border-radius:8px;background:#f8fbfd;padding:12px;display:grid;gap:4px}.sandbox-contract-gate span,.sandbox-contract-gate small{color:var(--text-muted)}.sandbox-contract-gate strong{color:#17202a;font-size:22px}.sandbox-contract-actions{padding:0 16px 16px;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.sandbox-gate-message{margin-right:auto;border:1px solid #dce6ef;border-radius:8px;padding:8px 10px;display:grid;gap:2px;max-width:640px}.sandbox-gate-message.ok{background:#f0fdf9;border-color:#bde7dd}.sandbox-gate-message.warn{background:#fff8e6;border-color:#f5deb0}.sandbox-gate-message strong{color:#17202a}.sandbox-gate-message span{color:var(--text-muted)}.sandbox-contract-actions .primary-button{min-width:150px}.sandbox-contract-rules{margin:0 16px 16px;border:1px solid #dce6ef;border-radius:8px;background:#fff;display:grid;gap:12px;padding:14px}.sandbox-contract-rules.compact{background:#f8fbfd}.sandbox-section-title{display:grid;gap:4px}.sandbox-section-title strong{color:#17202a;font-size:15px}.sandbox-section-title span{color:var(--text-muted);line-height:1.55}.sandbox-approval-hint{border:1px solid #dce6ef;border-radius:8px;display:grid;gap:4px;padding:10px 12px}.sandbox-approval-hint.ok{background:#f0fdf9;border-color:#bde7dd}.sandbox-approval-hint.warn{background:#fff8e6;border-color:#f5deb0}.sandbox-approval-hint strong{color:#17202a}.sandbox-approval-hint span{color:var(--text-muted)}.table-action-button{border:1px solid #cddce8;border-radius:7px;background:#fff;color:#17202a;min-height:30px;padding:0 10px;font-weight:800}.damage-detail-shell{display:grid;gap:16px}.damage-hero{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-height:118px;padding:18px;display:grid;grid-template-columns:minmax(0,1fr) 190px 190px;gap:14px;align-items:center}.damage-hero span,.damage-hero-card span,.damage-hero-card small{color:var(--text-muted);font-size:13px}.damage-hero h2{margin:6px 0 5px;font-size:22px}.damage-hero p{margin:0;color:var(--text-muted)}.damage-hero-card{min-height:82px;border:1px solid #dce6ef;border-radius:8px;padding:12px;display:grid;align-content:space-between;background:#f9fbfd}.damage-hero-card strong{font-size:18px}.contract-finance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.finance-page>.contract-finance-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.damage-flow,.photo-task-list{display:grid;gap:10px;padding:16px}.damage-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px}.damage-rule-card{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;gap:7px}.damage-rule-card.low{border-color:#bbf7d0;background:#f7fef9}.damage-rule-card.medium{border-color:#fde68a;background:#fffbeb}.damage-rule-card.high{border-color:#fecaca;background:#fff7f7}.damage-rule-card span,.damage-rule-card p,.damage-rule-card small{color:var(--text-muted);line-height:1.55}.damage-rule-card strong{color:#17202a}.damage-rule-card p{margin:0;font-size:13px}.damage-rule-card small{font-size:12px}.damage-flow-step,.photo-task{display:grid;grid-template-columns:24px 1fr;gap:10px;border:1px solid #e4ebf2;border-radius:8px;padding:12px;background:#fbfcfe}.damage-flow-step.done svg,.photo-task.done svg{color:var(--ok)}.damage-flow-step.current svg,.photo-task.review svg{color:var(--warning)}.damage-flow-step.blocked svg,.photo-task.missing svg{color:var(--danger)}.damage-flow-step.pending svg{color:#64748b}.damage-flow-step strong,.damage-flow-step span,.photo-task strong,.photo-task span,.photo-task small{display:block}.damage-flow-step span,.photo-task span,.photo-task small{color:var(--text-muted);margin-top:4px;line-height:1.5}.photo-task small{font-size:12px}.audit-note{padding:16px}.audit-note strong{display:inline-block;color:var(--danger);background:#fee2e2;border-radius:999px;padding:5px 10px;font-size:13px}.audit-note p{margin:14px 0 0;line-height:1.7;color:#354252}.photo-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px}.photo-template-card{border:1px solid #dce6ef;border-radius:8px;min-height:128px;padding:12px;background:#f9fbfd;display:grid;align-content:start;gap:8px}.photo-template-card span{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800;font-size:12px}.photo-template-card strong{font-size:15px}.photo-template-card p{margin:0;color:var(--text-muted);line-height:1.55;font-size:13px}.score-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px}.score-card{min-height:126px;border:1px solid #e4ebf2;border-radius:8px;padding:12px;background:#fbfcfe;display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center}.score-ring{--score: 0;width:58px;height:58px;border-radius:999px;display:grid;place-items:center;background:radial-gradient(circle at center,#fff 58%,transparent 60%),conic-gradient(var(--primary) calc(var(--score) * 1%),#dbe5ee 0)}.score-ring strong{color:var(--primary-dark);font-size:17px}.score-card>div:last-child strong,.score-card>div:last-child span{display:block}.score-card>div:last-child span{color:var(--text-muted);font-size:13px;margin-top:5px;line-height:1.5}.driver-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.driver-alert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.driver-alert-grid article{min-height:102px;border:1px solid #e4ebf2;border-radius:8px;padding:12px;background:#fbfcfe;display:grid;align-content:space-between}.driver-alert-grid span{color:var(--text-muted);font-size:13px}.driver-alert-grid strong{line-height:1.55}.operations-stat-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.manual-task-form{padding:16px;display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(140px,1fr)) auto;gap:12px;align-items:end}.manual-task-form label{display:grid;gap:6px}.manual-task-form span{color:var(--text-muted);font-size:12px}.manual-task-form input,.manual-task-form select{width:100%;min-height:38px;border:1px solid #d6e0ea;border-radius:7px;background:#fff;color:#17202a;padding:0 10px}.manual-task-form+.action-gate-hint{margin:0 16px 16px}.todo-supervisor-controls{display:flex;align-items:center;gap:6px}.todo-urgency-select,.todo-due-input{width:82px;min-height:32px;border:1px solid #cbd8e5;border-radius:6px;background:#fff;color:#17202a;padding:0 8px;font-size:12px}.todo-due-input{width:128px}.todo-manual-note{color:var(--text-muted);font-size:12px;white-space:nowrap}.message-template-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.message-template-card{min-height:184px;border:1px solid #e4ebf2;border-radius:8px;padding:14px;background:#fbfcfe;display:grid;align-content:space-between;gap:12px}.message-template-card span,.message-template-card small{display:block;color:var(--text-muted);font-size:13px}.message-template-card strong{display:block;margin-top:7px;font-size:16px}.message-template-card p{margin:10px 0 0;line-height:1.65;color:#354252}.message-template-card small{border-top:1px solid #e4ebf2;padding-top:10px;line-height:1.5}.import-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:16px}.import-flow-step{border:1px solid #dce6ef;border-radius:8px;min-height:138px;padding:12px;background:#f9fbfd;display:grid;align-content:start;gap:9px}.import-flow-step span{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800}.import-flow-step strong{font-size:15px}.import-flow-step p{margin:0;color:var(--text-muted);line-height:1.55;font-size:13px}.hardware-page{display:grid;gap:16px}.hardware-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.hardware-stat-card{min-height:122px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px;display:flex;justify-content:space-between;gap:12px}.hardware-stat-card span,.hardware-stat-card small{display:block;color:var(--text-muted)}.hardware-stat-card strong{display:block;margin:10px 0 8px;font-size:25px}.hardware-stat-card svg{color:var(--primary);flex:0 0 auto}.hardware-main-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);gap:16px}.map-placeholder{display:grid;grid-template-columns:minmax(240px,1fr) minmax(240px,.9fr);gap:14px;padding:16px}.map-canvas{min-height:286px;border:1px solid #dce6ef;border-radius:8px;background:linear-gradient(#e8eef4 1px,transparent 1px),linear-gradient(90deg,#e8eef4 1px,transparent 1px),#f8fafc;background-size:36px 36px;display:grid;place-items:center;align-content:center;gap:10px;text-align:center;padding:24px}.map-canvas svg{color:var(--primary)}.map-canvas span{max-width:330px;color:var(--text-muted);line-height:1.6;font-size:13px}.map-signal-list{display:grid;gap:10px}.map-signal-list article{min-height:84px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;align-content:center;gap:4px}.map-signal-list span,.map-signal-list small{color:var(--text-muted);font-size:12px}.map-signal-list b{color:var(--primary-dark);font-size:13px}.hardware-flow{display:grid;gap:11px;padding:16px}.hardware-flow article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:13px;display:grid;grid-template-columns:34px 1fr;column-gap:10px;row-gap:4px;align-items:start}.hardware-flow span{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800;grid-row:span 2}.hardware-flow p{margin:0;color:var(--text-muted);line-height:1.55;font-size:13px}.hardware-boundary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.hardware-boundary article{min-height:150px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:14px;display:grid;align-content:start;gap:10px}.hardware-boundary svg{color:var(--primary)}.hardware-boundary p{margin:0;color:var(--text-muted);line-height:1.65;font-size:13px}.repairs-page{display:grid;gap:16px}.repairs-stat-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.repair-detail-shell{display:grid;gap:16px}.repair-hero{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(160px,.55fr));gap:12px}.repair-hero>div,.repair-hero>article{min-height:116px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px}.repair-hero span,.repair-hero small{display:block;color:var(--text-muted)}.repair-hero h2{margin:8px 0 6px;font-size:27px}.repair-hero p{margin:0;color:var(--text-muted)}.repair-hero article strong{display:block;margin:10px 0 6px;font-size:20px}.repair-approval-flow{display:grid;gap:10px;padding:16px}.repair-approval-step{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start}.repair-approval-step.done svg{color:var(--ok)}.repair-approval-step.current svg{color:var(--warning)}.repair-approval-step.blocked svg{color:var(--danger)}.repair-approval-step.pending svg{color:var(--text-muted)}.repair-approval-step strong,.repair-approval-step span{display:block}.repair-approval-step span{margin-top:4px;color:var(--text-muted);font-size:13px;line-height:1.5}.repair-evidence-list{display:grid;gap:10px;padding:16px}.repair-evidence{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:24px 1fr;gap:10px}.repair-evidence.done svg{color:var(--ok)}.repair-evidence.review svg{color:var(--warning)}.repair-evidence.missing svg{color:var(--danger)}.repair-evidence strong,.repair-evidence span,.repair-evidence small{display:block}.repair-evidence span,.repair-evidence small{margin-top:4px;color:var(--text-muted);font-size:13px;line-height:1.45}.repair-audit-note{margin:16px;border:1px solid #f1d1d1;border-radius:8px;background:#fff7f7;padding:15px;display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start}.repair-audit-note svg{color:var(--danger)}.repair-audit-note p{margin:0;color:#4a1f1f;line-height:1.7}.analysis-page{display:grid;gap:16px}.analysis-stat-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.analysis-top-grid,.analysis-bottom-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:16px}.analysis-bottom-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.analysis-model-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:16px}.analysis-model-grid article{min-height:154px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:13px;display:grid;align-content:start;gap:9px}.analysis-model-grid span{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800}.analysis-model-grid p{margin:0;color:var(--text-muted);line-height:1.55;font-size:13px}.analysis-signal-list{display:grid;gap:12px;padding:16px}.analysis-signal-list article{min-height:82px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:13px;display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center}.analysis-signal-list svg{color:var(--primary)}.analysis-signal-list strong,.analysis-signal-list span{display:block}.analysis-signal-list span{margin-top:4px;color:var(--text-muted);line-height:1.5;font-size:13px}.analysis-note{margin:16px;border:1px solid #dce6ef;border-radius:8px;background:#fbfcfe;padding:15px;display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start}.analysis-note svg{color:var(--primary)}.analysis-note p{margin:0;color:#354252;line-height:1.7}.analysis-performance-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:16px;padding:16px}.analysis-metric-stack{display:grid;gap:10px}.analysis-metric-stack article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start}.analysis-metric-stack strong,.analysis-metric-stack span{display:block}.analysis-metric-stack span,.analysis-metric-stack p{color:var(--text-muted);font-size:13px;line-height:1.55}.analysis-metric-stack p{grid-column:1 / -1;margin:0}.analysis-command-card{border:1px solid #dce6ef;border-radius:8px;background:#fff;padding:14px;display:grid;gap:12px;align-content:start}.analysis-command-card>strong{font-size:15px}.analysis-command-card>p{margin:0;color:#354252;line-height:1.65;font-size:13px}.analysis-command-card .command-button-row{padding:0}.analysis-channel-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:16px;padding:16px}.analysis-channel-list{display:grid;gap:10px}.analysis-channel-list article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start}.analysis-channel-list strong,.analysis-channel-list span{display:block}.analysis-channel-list span,.analysis-channel-list p{color:var(--text-muted);font-size:13px;line-height:1.55}.analysis-channel-list p{grid-column:1 / -1;margin:0}.analysis-profit-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:16px;padding:16px}.analysis-profit-list{display:grid;gap:10px}.analysis-profit-list article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start}.analysis-profit-list strong,.analysis-profit-list span{display:block}.analysis-profit-list span,.analysis-profit-list p{color:var(--text-muted);font-size:13px;line-height:1.55}.analysis-profit-list p{grid-column:1 / -1;margin:0}.analysis-driver-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:16px;padding:16px}.analysis-driver-list{display:grid;gap:10px}.analysis-driver-list article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start}.analysis-driver-list strong,.analysis-driver-list span{display:block}.analysis-driver-list span,.analysis-driver-list p{color:var(--text-muted);font-size:13px;line-height:1.55}.analysis-driver-list p{grid-column:1 / -1;margin:0}.analysis-fleet-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:16px;padding:16px}.analysis-fleet-list{display:grid;gap:10px}.analysis-fleet-list article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start}.analysis-fleet-list strong,.analysis-fleet-list span{display:block}.analysis-fleet-list span,.analysis-fleet-list p{color:var(--text-muted);font-size:13px;line-height:1.55}.analysis-fleet-list p{grid-column:1 / -1;margin:0}.analysis-boss-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:16px;padding:16px}.analysis-boss-summary{display:grid;gap:10px}.analysis-boss-summary article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:14px;display:grid;gap:8px}.analysis-boss-summary span{color:var(--text-muted);font-size:12px}.analysis-boss-summary strong{font-size:16px}.analysis-boss-summary p{margin:0;color:var(--text-muted);line-height:1.6;font-size:13px}.risk-page{display:grid;gap:16px}.risk-stat-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.risk-detail-shell{display:grid;gap:16px}.risk-hero{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(170px,.6fr));gap:12px}.risk-hero>div,.risk-hero>article{min-height:122px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px}.risk-hero span,.risk-hero small{display:block;color:var(--text-muted)}.risk-hero h2{margin:8px 0 6px;font-size:26px}.risk-hero p{margin:0;color:var(--text-muted);line-height:1.55}.risk-hero article strong{display:block;margin:10px 0 6px;font-size:19px;line-height:1.35}.risk-decision{margin:16px;border:1px solid #f1d1d1;border-radius:8px;background:#fff7f7;padding:15px;display:grid;grid-template-columns:28px 1fr;gap:10px}.risk-decision svg{color:var(--danger)}.risk-decision strong{display:block;margin-bottom:6px}.risk-decision p{margin:0 0 12px;color:#4a1f1f;line-height:1.7}.risk-decision p:last-child{margin-bottom:0}.risk-evidence-grid{display:grid;gap:10px;padding:16px}.risk-evidence-card{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:24px 1fr;gap:10px}.risk-evidence-card.完整 svg{color:var(--ok)}.risk-evidence-card.待复核 svg{color:var(--warning)}.risk-evidence-card.冲突 svg,.risk-evidence-card.缺失 svg{color:var(--danger)}.risk-evidence-card strong,.risk-evidence-card span{display:block}.risk-evidence-card span{margin-top:4px;color:var(--text-muted);font-size:13px}.risk-evidence-card p{margin:8px 0 0;color:#354252;line-height:1.55;font-size:13px}.risk-gate-list{display:grid;gap:10px;padding:16px}.risk-gate-card{border:1px solid #dce6ef;border-left:4px solid var(--primary);border-radius:8px;background:#fbfcfe;padding:12px;display:grid;gap:9px}.risk-gate-card.阻断,.risk-gate-card.冲突{border-left-color:var(--danger);background:#fff8f8}.risk-gate-card.待补充{border-left-color:var(--warning);background:#fffaf0}.risk-gate-card.已满足{border-left-color:var(--success)}.risk-gate-card>div{display:flex;gap:10px;justify-content:space-between}.risk-gate-card span{flex:0 0 auto;border-radius:999px;padding:3px 8px;background:#edf3f7;font-size:12px;font-weight:800}.risk-gate-card p{margin:0;color:#354252;line-height:1.55}.risk-gate-card small{color:var(--text-muted);font-weight:700}.risk-timeline{display:grid;gap:10px;padding:16px}.risk-timeline article{border-left:3px solid var(--primary);background:#fbfcfe;padding:10px 12px;border-radius:0 8px 8px 0}.risk-timeline span{display:block;color:var(--text-muted);font-size:12px}.risk-timeline strong{display:block;margin-top:5px}.risk-timeline p{margin:6px 0 0;color:#354252;line-height:1.5;font-size:13px}.risk-bottom-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.risk-boundary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.risk-boundary article{min-height:148px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:14px;display:grid;align-content:start;gap:10px}.risk-boundary svg{color:var(--primary)}.risk-boundary p{margin:0;color:var(--text-muted);line-height:1.65;font-size:13px}.settings-page{display:grid;gap:16px}.settings-stat-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.settings-stat-card{min-height:122px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px;display:flex;justify-content:space-between;gap:12px}.settings-stat-card span,.settings-stat-card small{display:block;color:var(--text-muted)}.settings-stat-card strong{display:block;margin:10px 0 8px;font-size:25px}.settings-stat-card svg{color:var(--primary);flex:0 0 auto}.settings-principle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px}.settings-principle-grid article{min-height:138px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:13px;display:grid;align-content:start;gap:9px}.settings-principle-grid span{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800}.settings-principle-grid p{margin:0;color:var(--text-muted);line-height:1.6;font-size:13px}.settings-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:16px}.settings-note{margin:16px;border:1px solid #dce6ef;border-radius:8px;background:#fbfcfe;padding:15px;display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start}.settings-note svg{color:var(--primary)}.settings-note p{margin:0;color:#354252;line-height:1.7}.wecom-panel{display:grid;gap:14px;padding:16px}.wecom-status-card{border:1px solid #dce6ef;border-radius:8px;background:#fbfcfe;padding:15px;display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start}.wecom-status-card svg{color:var(--primary)}.wecom-status-card span,.wecom-config-item span{display:block;color:var(--text-muted);font-size:12px}.wecom-status-card strong{display:block;margin-top:4px;font-size:20px}.wecom-status-card p{margin:7px 0 0;color:#354252;line-height:1.65}.wecom-config-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.wecom-config-item{min-height:72px;border:1px solid #e4ebf2;border-radius:8px;background:#fff;padding:12px}.wecom-config-item strong{display:block;margin-top:8px;color:#17202a}.wecom-roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.wecom-roadmap article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px;display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:start}.wecom-roadmap span{width:26px;height:26px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800}.wecom-roadmap p{margin:0;color:#354252;line-height:1.55;font-size:13px}.wecom-missing{margin:0}.settlements-page{display:grid;gap:16px}.settlement-stat-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.settlement-detail-shell{display:grid;gap:16px}.settlement-hero{display:grid;grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(170px,.55fr));gap:12px}.settlement-hero>div,.settlement-hero>article{min-height:120px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px}.settlement-hero span,.settlement-hero small{display:block;color:var(--text-muted)}.settlement-hero h2{margin:8px 0 6px;font-size:26px}.settlement-hero p{margin:0;color:var(--text-muted)}.settlement-hero article strong{display:block;margin:10px 0 6px;font-size:22px}.settlement-decision{margin:16px;border:1px solid #dce6ef;border-radius:8px;background:#fbfcfe;padding:15px;display:grid;grid-template-columns:28px 1fr;gap:10px}.settlement-decision.blocked{border-color:#f1d1d1;background:#fff7f7}.settlement-decision svg{color:var(--primary)}.settlement-decision.blocked svg{color:var(--danger)}.settlement-decision strong{display:block;margin-bottom:6px}.settlement-decision p{margin:0 0 12px;color:#354252;line-height:1.7}.settlement-decision.blocked p{color:#4a1f1f}.settlement-decision p:last-child{margin-bottom:0}.settlement-boundary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.settlement-boundary article{min-height:145px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:14px;display:grid;align-content:start;gap:10px}.settlement-boundary svg{color:var(--primary)}.settlement-boundary p{margin:0;color:var(--text-muted);line-height:1.65;font-size:13px}.command-simulator{display:grid;grid-template-columns:240px minmax(0,1fr);gap:14px;padding:16px}.command-actions{display:grid;align-content:start;gap:10px}.command-stack{display:grid;gap:12px;padding:16px}.command-context{border:1px dashed #cbd8e4;border-radius:7px;background:#fbfcfe;padding:12px;display:grid;gap:5px}.command-context span,.command-context small{color:var(--text-muted)}.command-context strong{color:#17202a}.command-button-wrap{display:grid;gap:5px}.command-button-wrap button{width:100%}.command-button-wrap small{color:#8a2d2d;font-size:12px;line-height:1.45}.action-gate-hint{border:1px dashed #cbd8e4;border-radius:7px;background:#fbfcfe;padding:11px 12px;color:var(--text-muted);font-size:13px}.action-gate-hint strong{display:block;color:#17202a;margin-bottom:6px}.action-gate-hint ul{margin:0;padding-left:18px;display:grid;gap:5px}.command-result{border:1px solid #dbe5ee;border-radius:8px;background:#fbfcfe;padding:14px;display:grid;gap:12px}.command-result.empty{color:var(--text-muted)}.command-result.blocked{border-color:#fecaca;background:#fff7f7}.command-result-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.command-result-head span,.command-result-objects span{display:block;font-size:12px;color:var(--text-muted)}.command-result-head strong,.command-result-objects strong{display:block;margin-top:4px}.command-result-head code{color:var(--text-muted);font-size:12px;word-break:break-all}.command-result-alert{border-left:3px solid #ef4444;background:#fff;padding:10px 12px;color:#7f1d1d}.command-result-alert p,.command-result-alert ul{margin:6px 0 0;color:#7f1d1d}.command-result-objects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.command-result-objects article{border:1px solid #e4ebf2;border-radius:7px;background:#fff;padding:10px}.command-result-objects small{display:block;margin-top:5px;color:var(--text-muted)}.ocr-page{display:grid;gap:16px}.ocr-stat-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.ocr-main-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);gap:16px}.ocr-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:16px}.ocr-flow article{min-height:142px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:13px;display:grid;align-content:start;gap:9px}.ocr-flow span{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800}.ocr-flow p{margin:0;color:var(--text-muted);line-height:1.55;font-size:13px}.ocr-decision{margin:16px;border:1px solid #dce6ef;border-radius:8px;background:#fbfcfe;padding:15px;display:grid;grid-template-columns:28px 1fr;gap:10px}.ocr-decision.blocked{border-color:#f1d1d1;background:#fff7f7}.ocr-decision svg{color:var(--primary)}.ocr-decision.blocked svg{color:var(--danger)}.ocr-decision strong{display:block;margin-bottom:6px}.ocr-decision p{margin:0 0 12px;color:#354252;line-height:1.7}.ocr-decision.blocked p{color:#4a1f1f}.ocr-decision p:last-child{margin-bottom:0}.ocr-detail-shell{display:grid;gap:16px}.ocr-review-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.ocr-hero{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(170px,.65fr));gap:12px}.ocr-hero>div,.ocr-hero>article{min-height:122px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px}.ocr-hero span,.ocr-hero small{display:block;color:var(--text-muted)}.ocr-hero h2{margin:8px 0 6px;font-size:25px}.ocr-hero p{margin:0;color:var(--text-muted)}.ocr-hero article strong{display:block;margin:10px 0 6px;font-size:18px;line-height:1.35}.ocr-boundary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.ocr-boundary article{min-height:145px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:14px;display:grid;align-content:start;gap:10px}.ocr-boundary svg{color:var(--primary)}.ocr-boundary p{margin:0;color:var(--text-muted);line-height:1.65;font-size:13px}.costs-page{display:grid;gap:16px}.costs-stat-grid{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}.costs-top-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);gap:16px}.cost-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px}.cost-flow article{min-height:150px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:13px;display:grid;align-content:start;gap:9px}.cost-flow span{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#dff7f4;color:var(--primary-dark);font-weight:800}.cost-flow p{margin:0;color:var(--text-muted);line-height:1.55;font-size:13px}.cost-summary-grid{display:grid;gap:10px;padding:16px}.cost-summary-grid article{border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:12px}.cost-summary-grid article>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.cost-summary-grid span,.cost-summary-grid small{color:var(--text-muted)}.cost-summary-grid strong{font-size:18px}.cost-summary-grid p{margin:8px 0 0;color:#354252;line-height:1.55;font-size:13px}.cost-boundary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:16px}.cost-boundary article{min-height:158px;border:1px solid #e4ebf2;border-radius:8px;background:#fbfcfe;padding:14px;display:grid;align-content:start;gap:10px}.cost-boundary svg{color:var(--primary)}.cost-boundary p{margin:0;color:var(--text-muted);line-height:1.65;font-size:13px}@media(max-width:1180px){.metric-grid,.cockpit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-grid,.demo-hero{grid-template-columns:1fr}.roadmap,.placeholder-grid,.blueprint-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-hero,.damage-hero,.detail-section-grid,.contract-finance-grid,.finance-page>.contract-finance-grid{grid-template-columns:1fr}.detail-grid,.photo-template-grid,.score-grid,.workflow-action-grid,.driver-metric-grid,.driver-alert-grid,.operations-stat-grid,.repairs-stat-grid,.analysis-stat-grid,.risk-stat-grid,.settings-stat-grid,.wecom-config-grid,.settlement-stat-grid,.ocr-stat-grid,.costs-stat-grid,.message-template-list,.import-flow,.ocr-flow,.cost-flow,.hardware-stat-grid,.hardware-boundary,.analysis-model-grid,.risk-boundary,.wecom-roadmap,.settings-principle-grid,.settlement-boundary,.ocr-boundary,.cost-boundary{grid-template-columns:repeat(2,minmax(0,1fr))}.hardware-main-grid,.map-placeholder,.repair-hero,.analysis-top-grid,.analysis-bottom-grid,.analysis-performance-grid,.analysis-channel-grid,.analysis-profit-grid,.analysis-driver-grid,.analysis-fleet-grid,.analysis-boss-grid,.sandbox-form-grid,.sandbox-stat-grid,.risk-hero,.risk-bottom-grid,.settings-grid,.settlement-hero,.ocr-main-grid,.ocr-review-grid,.ocr-hero,.costs-top-grid,.sandbox-hero{grid-template-columns:1fr}.sandbox-actions{justify-content:flex-start}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto;max-height:46vh}.topbar{grid-template-columns:42px 1fr}.topbar-status,.primary-button{grid-column:1 / -1}.metric-grid,.cockpit-grid,.demo-hero-grid,.roadmap,.placeholder-grid,.blueprint-grid,.detail-grid,.ledger-grid,.linked-records,.photo-template-grid,.score-grid,.workflow-action-grid,.driver-metric-grid,.driver-alert-grid,.operations-stat-grid,.repairs-stat-grid,.analysis-stat-grid,.risk-stat-grid,.settings-stat-grid,.wecom-config-grid,.settlement-stat-grid,.ocr-stat-grid,.costs-stat-grid,.message-template-list,.import-flow,.ocr-flow,.cost-flow,.hardware-stat-grid,.hardware-boundary,.analysis-model-grid,.risk-boundary,.wecom-roadmap,.settings-principle-grid,.settlement-boundary,.ocr-boundary,.ocr-review-grid,.cost-boundary,.sandbox-form,.sandbox-form-grid,.sandbox-stat-grid{grid-template-columns:1fr}}
