:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;--navy-950:#061b35;--navy-900:#082441;--blue-700:#1754c6;--blue-600:#1d63dd;--blue-50:#edf4ff;--ink:#172033;--muted:#647084;--faint:#8b95a5;--line:#dfe4eb;--line-soft:#edf0f4;--surface:#fff;--surface-soft:#f7f9fb;--orange:#ec8a18;--orange-soft:#fff6e8;--green:#15925b;--green-soft:#edf8f3;--danger:#c83d3d;--shadow-sm:0 1px 3px #0f233c12;background:#f5f7fa;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html{background:#f5f7fa;min-width:320px}body{-webkit-font-smoothing:antialiased;background:#f5f7fa;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}svg{flex:none;width:17px;height:17px}.app-frame{min-height:100vh}.app-header{z-index:50;color:#fff;background:var(--navy-950);border-bottom:1px solid #ffffff14;align-items:center;gap:20px;height:56px;padding:0 18px;display:flex;position:sticky;top:0}.app-brand{color:#fff;cursor:pointer;letter-spacing:-.3px;background:0 0;border:0;align-items:center;gap:9px;min-width:max-content;padding:0;font-size:18px;font-weight:750;display:flex}.app-brand svg{width:27px;height:27px}.breadcrumbs{color:#c9d4e1;align-items:center;gap:4px;font-size:13px;display:flex}.breadcrumbs span{white-space:nowrap;align-items:center;gap:4px;display:flex}.breadcrumbs svg{width:14px;height:14px}.app-header-tools{align-items:center;gap:7px;margin-left:auto;display:flex}.project-switcher{color:#eaf0f7;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#0b2949;border:1px solid #35506d;border-radius:7px;align-items:center;gap:12px;max-width:360px;height:34px;padding:0 12px;display:flex;overflow:hidden}.project-switcher svg{width:14px;height:14px}.icon-btn{width:34px;height:34px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:inline-grid}.app-header .icon-btn:hover{background:#ffffff1a}.user-button{color:#fff;cursor:pointer;background:#1e62cc;border:0;border-radius:50%;width:34px;height:34px;font-size:12px}.btn{cursor:pointer;background:#fff;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:8px 13px;font-size:13px;font-weight:600;line-height:1;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.btn svg{width:15px;height:15px}.btn:hover{border-color:#bcc7d5}.btn:focus-visible,.icon-btn:focus-visible,.registry-row:focus-visible,.sidebar-record:focus-visible{outline-offset:1px;outline:3px solid #1d63dd38}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:var(--blue-600);border-color:var(--blue-600)}.btn-primary:hover{background:var(--blue-700);border-color:var(--blue-700)}.btn-secondary{color:#263348;background:#fff;border-color:#cfd6df}.btn-danger{color:var(--danger);background:#fff;border-color:#e8c6c6}.btn-block{width:100%}.text-button{min-height:34px;color:var(--blue-600);cursor:pointer;background:0 0;border:0;padding:0 6px}.spin{animation:.9s linear infinite rotate}@keyframes rotate{to{transform:rotate(360deg)}}.visually-hidden{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.eyebrow{color:var(--blue-600);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-size:11px;font-weight:750}.numeric{font-variant-numeric:tabular-nums}.notice{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:7px;padding:12px 14px;font-size:13px}.notice.error{color:#9e2f2f;background:#fff5f5;border-color:#efc5c5}.flash{z-index:80;color:#fff;background:#263348;border-radius:7px;padding:10px 16px;font-size:13px;position:fixed;top:70px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000002e}.page-loading{min-height:calc(100vh - 56px);color:var(--muted);place-items:center;display:grid}.dashboard-page{width:min(1320px,100% - 48px);margin:0 auto;padding:34px 0 58px}.dashboard-heading{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.dashboard-heading h1{color:var(--ink);letter-spacing:-.7px;margin:0;font-size:30px;line-height:1.2}.dashboard-heading p:last-child{color:var(--muted);margin:8px 0 0;font-size:14px}.dashboard-controls{border-bottom:1px solid var(--line);grid-template-columns:minmax(260px,1fr) 180px;gap:9px;margin-top:24px;padding-bottom:18px;display:grid}.dashboard-controls input,.dashboard-controls select{width:100%;height:38px;color:var(--ink);background:#fff;border:1px solid #d2d9e2;border-radius:6px;padding:0 11px;font-size:13px}.dashboard-controls input:focus,.dashboard-controls select:focus{border-color:var(--blue-600);outline:3px solid #1d63dd26}.dashboard-search{position:relative}.dashboard-search svg{width:16px;height:16px;color:var(--faint);position:absolute;top:11px;left:11px}.dashboard-search input{padding-left:35px}.recent-projects{grid-template-columns:82px minmax(0,1fr);align-items:center;gap:12px;margin:18px 0 20px;display:grid}.recent-projects>strong{color:var(--muted);font-size:12px}.recent-projects>div{gap:7px;min-width:0;display:flex;overflow-x:auto}.recent-projects button{color:#36516f;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#fff;border:1px solid #d7dee7;border-radius:6px;min-width:0;max-width:290px;padding:7px 11px;font-size:12px;overflow:hidden}.recent-projects button:hover{color:var(--blue-700);background:#f8fbff;border-color:#9eb8df}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.project-card{text-align:left;width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-sm);cursor:pointer;background:#fff;border-radius:9px;flex-direction:column;padding:18px;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.project-card:hover{border-color:#aabbd1;transform:translateY(-1px);box-shadow:0 6px 18px #0f233c14}.project-card:focus-visible{outline-offset:2px;outline:3px solid #1d63dd38}.project-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.project-card-head>span{min-width:0}.project-card-head strong{white-space:nowrap;text-overflow:ellipsis;font-size:16px;line-height:1.35;display:block;overflow:hidden}.project-card-head small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;margin-top:7px;font-size:11px;display:flex;overflow:hidden}.project-card-head small svg,.project-card-date svg,.project-progress-head svg,.project-card-foot svg{width:13px;height:13px}.project-status{border-radius:999px;flex:none;padding:4px 7px;font-size:10px;font-style:normal;font-weight:650}.status-进行中{color:var(--blue-700);background:var(--blue-50)}.status-资料待补充{color:#9b5b08;background:var(--orange-soft)}.status-已完成{color:#117048;background:var(--green-soft)}.project-card-date{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin-top:16px;font-size:11px;display:flex}.project-metrics{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);grid-template-columns:1fr 1fr;margin-top:17px;padding:13px 0;display:grid}.project-metrics>span+span{border-left:1px solid var(--line-soft);padding-left:18px}.project-metrics b{color:#1d3858;font-variant-numeric:tabular-nums;font-size:21px;display:block}.project-metrics small{color:var(--faint);margin-top:2px;font-size:10px;display:block}.project-progress-head{color:var(--muted);justify-content:space-between;align-items:center;margin-top:14px;font-size:11px;display:flex}.project-progress-head>span{align-items:center;gap:5px;display:flex}.project-progress-head strong{color:#39506a;font-size:11px}.project-card progress{background:#e9edf2;border:0;border-radius:999px;width:100%;height:6px;margin-top:7px;overflow:hidden}.project-card progress::-webkit-progress-bar{background:#e9edf2;border-radius:999px}.project-card progress::-webkit-progress-value{background:var(--blue-600);border-radius:999px}.project-card progress::-moz-progress-bar{background:var(--blue-600);border-radius:999px}.project-card-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:13px;display:flex}.project-card-foot small{color:var(--faint);font-size:10px}.project-card-foot em{color:#a45d00;align-items:center;gap:4px;font-size:10px;font-style:normal;display:flex}.project-card-foot em.complete{color:var(--green)}.dashboard-empty{min-height:260px;color:var(--muted);background:#fff;border:1px dashed #cbd3dd;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.dashboard-empty strong{color:var(--ink);font-size:16px}.dashboard-empty span{font-size:13px}.registry-page{width:min(1320px,100% - 48px);margin:0 auto;padding:34px 0 56px}.registry-heading{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:24px;display:flex}.registry-heading h1{color:var(--ink);letter-spacing:-.7px;margin:0;font-size:30px;line-height:1.2}.registry-heading p:last-child{color:var(--muted);margin:8px 0 0;font-size:14px}.heading-actions,.excel-tools{align-items:center;gap:8px;display:flex}.excel-tools{position:relative}.excel-error{z-index:15;color:#9e2f2f;width:330px;box-shadow:var(--shadow-sm);background:#fff5f5;border:1px solid #efc5c5;border-radius:7px;padding:10px 12px;font-size:12px;line-height:1.5;position:absolute;top:calc(100% + 8px);right:0}.import-success{color:#116c46;background:var(--green-soft);border:1px solid #bfe1d0;border-radius:7px;align-items:center;gap:8px;margin:-8px 0 18px;padding:10px 13px;font-size:13px;display:flex}.import-success svg{width:16px;height:16px}.registry-filter{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:9px;grid-template-columns:minmax(180px,1.3fr) repeat(5,minmax(120px,.75fr)) auto auto;align-items:center;gap:8px;margin-bottom:14px;padding:12px;display:grid}.registry-filter input,.registry-filter select{width:100%;min-width:0;height:36px;color:var(--ink);background:#fff;border:1px solid #d6dde6;border-radius:6px;padding:0 10px;font-size:13px}.registry-filter input:focus,.registry-filter select:focus{border-color:var(--blue-600);outline:3px solid #1d63dd29}.filter-search{position:relative}.filter-search svg{color:var(--faint);width:16px;height:16px;position:absolute;top:10px;left:10px}.filter-search input{padding-left:34px}.registry-table{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:9px;overflow:hidden}.registry-summary{border-bottom:1px solid var(--line);color:var(--muted);gap:22px;padding:13px 16px;font-size:13px;display:flex}.registry-summary strong{color:var(--ink);font-variant-numeric:tabular-nums}.registry-columns,.registry-row{grid-template-columns:1.35fr 2.15fr 1.3fr .9fr .7fr .8fr;align-items:center;gap:18px;display:grid}.registry-columns{min-height:38px;color:var(--faint);background:var(--surface-soft);border-bottom:1px solid var(--line);padding:0 16px;font-size:11px;font-weight:650}.registry-row{text-align:left;border:0;border-bottom:1px solid var(--line-soft);cursor:pointer;content-visibility:auto;contain-intrinsic-size:74px;background:#fff;width:100%;min-height:74px;padding:12px 16px}.registry-row:last-child{border-bottom:0}.registry-row:hover{background:#f8fbff}.registry-row>span{color:#445066;min-width:0;font-size:13px}.registry-row strong{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:680;display:block;overflow:hidden}.registry-row small{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:11px;display:block;overflow:hidden}.stake-cell,.photo-cell{align-items:center;gap:8px;display:flex}.stake-cell>svg{color:var(--blue-600)}.photo-cell svg{width:15px;height:15px;color:var(--faint)}.status-chip{border-radius:999px;align-items:center;gap:5px;width:max-content;padding:5px 8px;font-size:11px;display:inline-flex}.status-chip svg{width:13px;height:13px}.status-chip.complete{color:#117048;background:var(--green-soft)}.status-chip.incomplete{color:#a45d00;background:var(--orange-soft)}.table-empty{text-align:center;color:var(--muted);padding:64px 20px;font-size:14px}.detail-frame{height:100vh;overflow:hidden}.detail-shell{background:#fff;grid-template-columns:236px minmax(620px,1fr) 320px;height:calc(100vh - 56px);display:grid}.record-sidebar,.record-inspector{background:#fbfcfd;min-height:0;overflow:auto}.record-sidebar{border-right:1px solid var(--line)}.record-inspector{border-left:1px solid var(--line)}.sidebar-project{border-bottom:1px solid var(--line);padding:18px 14px 16px}.sidebar-project strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;display:block;overflow:hidden}.sidebar-project span{color:var(--muted);margin-top:7px;font-size:12px;display:block}.sidebar-list-head{color:var(--ink);padding:16px 12px 8px;font-size:12px;font-weight:700}.sidebar-list-head small{color:var(--faint);font-weight:500}.record-sidebar .excel-tools{grid-template-columns:1fr .72fr;padding:0 8px 8px;display:grid}.record-sidebar .excel-tools .btn{min-width:0;padding-inline:8px}.record-sidebar .excel-error{width:auto;box-shadow:none;grid-column:1/-1;margin-top:2px;position:static}.sidebar-records{padding:0 7px 12px}.sidebar-record{text-align:left;border:1px solid #0000;border-bottom-color:var(--line-soft);cursor:pointer;background:0 0;border-radius:6px;width:100%;padding:12px 10px;display:block}.sidebar-record:hover{background:#f3f7fb}.sidebar-record.active{background:var(--blue-50);border-color:#86acef}.sidebar-record-title{justify-content:space-between;align-items:center;gap:6px;display:flex}.sidebar-record strong{color:#214a91;font-size:13px}.sidebar-record i{white-space:nowrap;font-size:10px;font-style:normal}.sidebar-record i.complete{color:var(--green)}.sidebar-record i.progress{color:var(--blue-600)}.sidebar-record i.incomplete{color:var(--orange)}.sidebar-record>span:not(.sidebar-record-title),.sidebar-record small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:6px;font-size:11px;display:block;overflow:hidden}.sidebar-record small{color:var(--faint)}.drawing-workspace{background:#fff;min-width:0;padding:22px 14px 48px;overflow:auto}.workspace-heading{justify-content:space-between;align-items:flex-start;gap:20px;min-height:72px;padding:0 2px 18px;display:flex}.workspace-heading h1{color:#101827;letter-spacing:-.45px;margin:0;font-size:23px;line-height:1.25}.workspace-heading p{color:var(--muted);align-items:center;gap:7px;margin:10px 0 0;font-size:12px;display:flex}.workspace-heading p svg{width:14px;height:14px}.workspace-heading p svg:nth-of-type(2){margin-left:12px}.workspace-actions{gap:8px;display:flex}.card{border:1px solid var(--line);background:#fff;border-radius:8px}.zone-card{overflow:hidden}.zone-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 16px;display:flex}.zone-head h2{margin:0;font-size:15px}.zone-meta{color:var(--muted);margin:6px 0 0;font-size:11px}.zone-head-actions,.zone-export{gap:7px;display:flex}.zone-workspace .zone-head{display:none}.zone-workspace{border-radius:5px}.zone-workspace .diagramScroll{box-shadow:none;border-radius:0;margin:0}.diagram-stage{position:relative}.diagram-tools{z-index:3;box-shadow:var(--shadow-sm);background:#fff;border:1px solid #cfd6df;border-radius:6px;display:flex;position:absolute;top:12px;right:12px;overflow:hidden}.diagram-tools button{color:#586579;border:0;border-right:1px solid var(--line);cursor:pointer;background:#fff;place-items:center;width:32px;height:32px;padding:0;display:grid}.diagram-tools button:last-child{border-right:0}.diagram-tools button:hover,.diagram-tools button.active{color:var(--blue-600);background:var(--blue-50)}.diagram-tools svg{width:15px;height:15px}.zone-export{border-top:1px solid var(--line);background:#fbfcfd;justify-content:flex-end;padding:10px 12px}.diagramScroll{background-color:#fff;overflow:auto}.roadSvg{height:560px;display:block}.drawing-empty{background:var(--surface-soft);text-align:center;border:1px dashed #bbc6d3;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;min-height:560px;display:flex}.drawing-empty>svg{width:34px;height:34px;color:var(--blue-600)}.drawing-empty h2{margin:16px 0 6px;font-size:18px}.drawing-empty p{max-width:460px;color:var(--muted);margin:0 0 18px;font-size:13px}.record-inspector section{border-bottom:1px solid var(--line);padding:17px 14px}.record-inspector h2{color:#202a3a;margin:0 0 14px;font-size:14px}.record-inspector dl{margin:0}.record-inspector dl div{grid-template-columns:86px minmax(0,1fr);align-items:baseline;gap:9px;margin:0 0 10px;display:grid}.record-inspector dl div:last-child{margin-bottom:0}.record-inspector dt{color:var(--muted);font-size:11px}.record-inspector dd{color:#344055;text-align:left;word-break:break-word;margin:0;font-size:11px}.status-dot{vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.status-dot.complete{background:var(--green)}.status-dot.progress{background:var(--blue-600)}.status-dot.incomplete{background:var(--orange)}.inspector-empty{color:var(--faint);margin:0;font-size:12px}.evidence-phase{margin-bottom:16px}.evidence-phase:last-child{margin-bottom:0}.evidence-phase>div:first-child{border-left:3px solid var(--blue-600);justify-content:space-between;align-items:center;margin-bottom:8px;padding-left:7px;display:flex}.evidence-phase.missing>div:first-child{border-left-color:var(--orange)}.evidence-phase strong{font-size:12px}.evidence-phase span{color:var(--muted);font-size:11px}.evidence-thumbs{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.evidence-thumbs button{aspect-ratio:1;cursor:pointer;background:#e9edf2;border:0;border-radius:4px;padding:0;overflow:hidden}.evidence-thumbs img{object-fit:cover;width:100%;height:100%;display:block}.missing-evidence{color:#aa650b;background:var(--orange-soft);cursor:pointer;border:1px solid #f0c785;border-radius:6px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:70px;font-size:12px;font-weight:650;display:flex}.danger-link{color:var(--danger);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin:16px 14px 26px;font-size:12px;display:flex}.danger-link svg{width:14px;height:14px}.photo-workspace{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.section-heading h2{margin:0;font-size:18px}.phase-workspace-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.phase-card{padding:12px}.slot-head{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.slot-label{font-size:13px;font-weight:700}.slot-hint{color:var(--muted);font-size:11px}.phase-photos{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.phase-empty{min-height:86px;color:var(--faint);background:#fafbfc;border:1px dashed #cbd3dd;border-radius:6px;grid-column:1/-1;place-items:center;font-size:12px;display:grid}.thumb{aspect-ratio:4/3;background:#edf0f3;border-radius:5px;position:relative;overflow:hidden}.thumb img{object-fit:cover;cursor:pointer;width:100%;height:100%;display:block}.thumb-pending{outline:2px solid var(--blue-600);outline-offset:-2px}.thumb-del{color:#fff;cursor:pointer;background:#0c1623bd;border:0;border-radius:50%;place-items:center;width:22px;height:22px;padding:0;display:grid;position:absolute;top:4px;right:4px}.thumb-time{color:#fff;background:#0c1623bd;border-radius:3px;padding:2px 5px;font-size:9px;position:absolute;bottom:4px;left:4px}.phase-actions{gap:6px;margin-top:9px;display:flex}.phase-actions .btn{flex:1;padding-inline:6px;font-size:11px}.phase-actions input{display:none}.phase-capture{color:#fff;background:var(--blue-600);border-color:var(--blue-600)}.phase-upload{margin-top:8px}.is-disabled{opacity:.5;pointer-events:none}.photo-viewer{z-index:100;color:#fff;cursor:zoom-out;background:#040c18eb;border:0;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;height:100%;padding:28px;display:flex;position:fixed;inset:0}.photo-viewer img{object-fit:contain;max-width:min(1080px,94vw);max-height:88vh}.photo-viewer span{color:#ccd4df;font-size:12px}.page{width:min(980px,100% - 32px);margin:0 auto;padding:28px 0 56px}.page>.topbar{justify-content:space-between;align-items:center;min-height:54px;margin-bottom:14px;display:flex}.topbar h1{margin:0;font-size:22px}.topbar-spacer{width:82px}.form{padding:20px}.form label{color:var(--muted);margin-bottom:15px;font-size:12px;font-weight:600;display:block}.form input,.form select,.form textarea{width:100%;min-height:40px;color:var(--ink);background:#fff;border:1px solid #d4dbe4;border-radius:6px;margin-top:6px;padding:9px 11px;font-size:14px;font-weight:400}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--blue-600);outline:3px solid #1d63dd29}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.req,.field-error{color:var(--danger)}.field-error{margin:-8px 0 10px;font-size:11px}.zone-in-new{border-top:1px solid var(--line);margin:20px 0;padding-top:18px}.zone-form-toggle{align-items:center;gap:8px;color:var(--ink)!important;display:flex!important}.zone-form-toggle input{width:16px;min-height:auto;margin:0}.field-block{margin-bottom:15px}.field-label{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.seg{background:#edf0f4;border-radius:7px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.seg button{cursor:pointer;background:0 0;border:0;border-radius:5px;min-height:34px}.seg button.active{color:var(--blue-700);box-shadow:var(--shadow-sm);background:#fff;font-weight:700}.advanced{border-top:1px solid var(--line);margin:8px 0 16px}.advanced summary{color:var(--blue-700);cursor:pointer;padding:13px 0;font-size:12px}.advanced-body{padding-top:6px}.zone-form-preview{border:1px solid var(--line);border-radius:7px;margin:14px 0;overflow:auto}.zone-table{border-top:1px solid var(--line);padding:16px;overflow:auto}.zone-table h3{margin:0 0 10px;font-size:14px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line-soft);padding:8px 10px;font-size:11px}th{color:var(--muted);background:var(--surface-soft)}.zone-name{align-items:center;gap:6px;display:flex}.zone-name i{border-radius:2px;width:13px;height:8px}.tip{color:var(--muted);font-size:11px}@media (width<=1180px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-shell{grid-template-columns:220px minmax(600px,1fr)}.record-inspector{display:none}.registry-filter{grid-template-columns:repeat(4,1fr)}.registry-columns,.registry-row{grid-template-columns:1.3fr 2fr 1.2fr .9fr .7fr}.registry-columns span:nth-child(6),.registry-row>span:nth-child(6){display:none}}@media (width<=820px){.app-header{padding:0 12px}.breadcrumbs,.project-switcher,.app-header-tools .icon-btn{display:none}.app-header-tools{margin-left:auto}.registry-page,.dashboard-page{width:min(100% - 24px,1320px);padding-top:22px}.dashboard-heading{flex-direction:column;align-items:flex-start}.dashboard-controls,.recent-projects,.project-grid{grid-template-columns:1fr}.registry-heading{flex-direction:column;align-items:flex-start}.heading-actions{flex-wrap:wrap;width:100%}.registry-filter{grid-template-columns:1fr 1fr}.registry-columns{display:none}.registry-row{grid-template-columns:1fr auto;gap:7px 12px}.registry-row>span:nth-child(2),.registry-row>span:nth-child(3){grid-column:1/-1}.registry-row>span:nth-child(5){display:none}.registry-row>span:nth-child(4){grid-area:1/2}.detail-frame{height:auto;overflow:visible}.detail-shell{height:auto;display:block}.record-sidebar{border:0;border-bottom:1px solid var(--line)}.sidebar-project,.sidebar-list-head,.record-sidebar .excel-tools{display:none}.sidebar-records{gap:6px;padding:8px;display:flex;overflow-x:auto}.sidebar-record{border:1px solid var(--line);min-width:190px}.drawing-workspace{padding:18px 10px 38px;overflow:visible}.workspace-heading{flex-direction:column}.workspace-actions{width:100%}.workspace-actions .btn{flex:1}.roadSvg{height:440px}.phase-workspace-grid{grid-template-columns:1fr}.record-inspector{border:0;border-top:1px solid var(--line);display:block}.form-row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
