/* Shared dimensions for the upload, manual, recognition and results workspaces. */
.compact-layout{--font-size-body:13px;--font-size-section-title:15px;--font-size-page-title:18px;--font-size-caption:12px;--space-panel:12px;--space-grid:10px;--space-page-x:14px;--space-page-y:10px;font-size:13px;line-height:1.5}
.compact-layout>div[role=status]{padding:3px 14px!important;font-size:11px;line-height:18px;background:var(--ui-warning-soft)!important;border-color:var(--ui-warning-border)!important}
.compact-layout :is(button,input,select,textarea){font-size:13px;line-height:1.5}
.compact-layout :is(h2,h3){margin:0;font-size:15px;line-height:1.45}
.compact-layout :is(.small,small,.muted){font-size:12px;line-height:1.5}
.compact-layout .image2-workflow-shell{padding:10px 14px;gap:10px;max-width:none;align-content:start;grid-auto-rows:max-content;min-height:calc(100dvh - 25px)}
.compact-layout .image2-workflow-shell>.layout-editor-shell{display:contents}
.compact-layout .ui-navbar{min-height:48px;padding:7px 12px;gap:12px}
.compact-layout .ui-navbar h1{font-size:18px;white-space:nowrap}
.compact-layout .ui-navbar-mark{width:28px;height:28px;border-radius:7px}
.compact-layout .ui-navbar-actions{gap:6px;min-width:0;flex-wrap:wrap}
.compact-layout .ui-navbar-actions :is(button,select){height:32px;min-height:32px;padding:5px 9px;font-size:12px}
.compact-layout .image2-control{flex:1;min-width:130px;max-width:310px}
.compact-layout .image2-control select{max-width:100%;width:100%}
.compact-layout .tag{padding:3px 7px;font-size:11px;line-height:1.5;border-radius:5px}
.compact-layout .unified-workbench{gap:8px;min-width:0;align-items:start;align-content:start;grid-auto-rows:max-content}
.compact-layout .panel{backdrop-filter:none}
.compact-layout .unified-mode-bar{margin:0;padding:0;border:0;overflow:visible}
.compact-layout .unified-mode-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px;padding:0;overflow:visible}
.compact-layout .unified-mode-card{min-height:52px;max-height:none;height:52px;padding:7px 10px;grid-template-columns:26px minmax(0,1fr);gap:8px;border-radius:6px}
.compact-layout .mode-card-icon{width:26px;height:26px;transform:scale(.85);background:transparent;border:0}
.compact-layout .mode-card-copy strong{font-size:13px;line-height:18px}
.compact-layout .mode-card-copy small{font-size:11px;line-height:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compact-layout .unified-mode-card.active :is(strong,small){color:#fff}
.compact-layout .unified-mode-card:not(.active){background:#fff;border-color:var(--ui-border);color:var(--ui-text)}
.compact-layout .unified-mode-card:not(.active):hover{background:#eef4f4;border-color:var(--ui-primary-border)}
.compact-layout .ui-navbar button.danger{background:var(--ui-danger-soft);color:var(--ui-danger);border-color:var(--ui-danger-border)}
.compact-layout .ui-workflow-guide{min-height:32px;padding:4px 10px;gap:6px 10px;background:var(--ui-surface-soft);border-radius:6px;overflow:visible}
.compact-layout .ui-workflow-guide strong{font-size:12px}
.compact-layout .ui-workflow-guide span{font-size:11px}
.compact-layout .ui-workflow-guide button.ghost{min-height:26px;padding:2px 8px;font-size:12px}
.compact-layout .ui-help .ui-help-trigger{width:20px;height:20px;min-height:20px;padding:0;font-size:11px}
.compact-layout .unified-map-grid{grid-template-columns:minmax(0,1.65fr) minmax(350px,1fr)!important;gap:10px;align-items:stretch;min-width:0}
.compact-layout .unified-map-panel{padding:10px;gap:8px;min-width:0;align-self:stretch;display:flex;flex-direction:column;overflow:hidden}
.compact-layout .unified-map-panel>.section-head{margin:0;padding:0;min-height:26px;display:flex;align-items:center;gap:8px}
.compact-layout .unified-map-panel>.section-head>div:first-child{display:flex;align-items:center;gap:8px;min-width:0}
.compact-layout .unified-map-panel>.section-head>div:first-child>.tag{display:none}
.compact-layout .unified-map-panel>.section-head h3{font-size:14px;white-space:nowrap;margin:0}
.compact-layout .unified-map-panel>.section-head .small{font-size:11px}
.compact-layout .unified-map-panel>.section-head>.row{min-width:0;max-width:52%}
.compact-layout .unified-map-panel>.section-head .tag{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.compact-layout .unified-workbench:not(.results-mode):not(.review-workbench):not(.no-base-asset)>.unified-map-grid{height:clamp(440px,calc(100dvh - 286px),760px);overflow:visible}
.compact-layout .base-setup-workbench:not(.review-workbench):has(>[aria-label="户型核对摘要"])>.unified-map-grid{height:clamp(440px,calc(100dvh - 338px),720px)}
.compact-layout .unified-workbench:not(.results-mode):not(.no-base-asset) .unified-map-panel{height:100%;min-height:0}
.compact-layout .unified-workbench:not(.results-mode) :is(.unified-map-stage,.canvas-shell,.canvas-stage,.canvas-viewport){flex:1;min-height:0;height:100%;max-height:none}
.compact-layout .unified-side-panel{position:static;min-height:0;max-height:none;overflow:auto;padding:12px;gap:8px;align-content:start;scrollbar-gutter:stable}
.compact-layout .unified-inspector-head{margin:0;padding:0 0 8px}
.compact-layout .unified-inspector-head h3{font-size:15px}
.compact-layout .unified-inspector-head>.small{display:none}
.compact-layout :is(.base-mode-switch,.rule2-tab-strip){width:100%;gap:4px;padding:3px;margin:0;min-height:34px;border-radius:6px}
.compact-layout :is(.base-mode-button,.rule2-tab-strip button){min-height:28px;padding:3px 8px;font-size:12px;gap:5px;border-radius:4px}
.compact-layout .base-mode-status{font-size:10px}
.compact-layout .unified-form-section{padding:0;gap:8px;min-width:0}
.compact-layout .unified-form-section>.tag{display:none}
.compact-layout .unified-form-section h3{font-size:14px}
.compact-layout .unified-form-section :is(input:not([type=checkbox]):not([type=range]),select){min-height:32px;padding:5px 8px;width:100%}
.compact-layout .unified-form-section textarea{min-height:56px;padding:6px 8px}
.compact-layout .unified-form-section button{min-height:32px;padding:5px 9px;font-size:12px}
.compact-layout :is(.subtle-banner,.workflow-action-hint,.setup-next-alert){min-height:0;margin:0;padding:7px 9px;font-size:12px;line-height:1.5;border-radius:5px}
.compact-layout .unified-form-section :is(.list-item,.status-item){padding:8px 10px;gap:6px;background:var(--ui-surface-soft);border-style:solid;min-height:0}
.compact-layout .status-grid{gap:6px}
.compact-layout .status-label{font-size:11px}
.compact-layout .status-value{font-size:14px;line-height:1.4}
.compact-layout .unified-form-section>.row{gap:6px}
.compact-layout .unified-form-section .grow{flex:1;min-width:100px;width:auto!important}
.compact-layout .object-option-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:152px;gap:4px;padding-right:3px}
.compact-layout .object-option-card{min-height:30px!important;padding:4px!important;border-radius:5px;background:var(--ui-surface-soft);border-color:var(--ui-border)}
.compact-layout .object-option-card strong{font-size:12px;font-weight:500}
.compact-layout .object-option-card.active{background:var(--ui-primary);color:#fff}
.compact-layout .rule1-workbench .unified-side-panel{display:flex;flex-direction:column;overflow:hidden}
.compact-layout .rule1-workbench .unified-form-section{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
.compact-layout .layout-form-body{display:grid;align-content:start;gap:8px;min-height:0;overflow:auto;flex:1;padding-right:3px}
.compact-layout .layout-actionbar{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;gap:6px;padding-top:8px;margin-top:auto;border-top:1px solid var(--ui-border);background:#fff}
.compact-layout .layout-actionbar>button:not(.ghost):not(.danger):not(.secondary){order:2;margin-left:auto;min-width:80px}
.compact-layout .base-setup-workbench:not(.no-base-asset):not(.review-workbench) .unified-side-panel,.compact-layout .rule2-workbench .unified-side-panel{display:flex;flex-direction:column}
.compact-layout .base-setup-workbench:not(.no-base-asset):not(.review-workbench) .unified-form-section,.compact-layout .rule2-workbench .unified-form-section{display:flex;flex-direction:column;flex:1}
.compact-layout .rule2-workbench .rule2-step-nav{margin-top:auto;padding-top:8px;border-top:1px solid var(--ui-border)}
.compact-layout [data-workflow-mode="direction"] .status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.compact-layout [data-workflow-mode="center"] .list-item>.row{flex-wrap:nowrap}
.compact-layout [data-workflow-mode="center"] .list-item>.row>select{width:auto!important;flex:1;min-width:100px}
.compact-layout :is(.rule2-primary-actions,.rule2-secondary-actions,.rule2-step-nav){gap:6px;margin:0}
.compact-layout .rule2-current-summary{padding:6px;gap:6px}
.compact-layout .rule2-current-summary span{font-size:11px}
.compact-layout .rule2-current-summary strong{font-size:12px}
.compact-layout .unified-bottom-grid{margin:0;gap:8px;min-height:0}
.compact-layout .unified-bottom-card{padding:10px 12px;min-height:0}
.compact-layout .unified-card-head{gap:8px;margin:0 0 8px}
.compact-layout .unified-card-head h3{font-size:13px}
.compact-layout .unified-card-head button{min-height:30px;padding:4px 8px;font-size:12px}
.compact-layout .setup-summary-only{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px;align-items:center}
.compact-layout .setup-summary-only>.unified-card-head{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0}
.compact-layout .setup-checklist{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.compact-layout .setup-check-item{min-height:58px;padding:7px 9px;gap:1px;grid-template-columns:minmax(0,1fr) auto;align-content:center}
.compact-layout .setup-check-item strong{grid-column:1;grid-row:1;font-size:12px}
.compact-layout .setup-check-item>span{grid-column:2;grid-row:1;font-size:10px}
.compact-layout .setup-check-item small{grid-column:1/-1;font-size:11px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.compact-layout .unified-workbench>[aria-label="户型核对摘要"]{padding:6px 10px;min-height:0;gap:6px}
.compact-layout .unified-workbench>[aria-label="户型核对摘要"] button{min-height:28px;padding:3px 8px;font-size:12px}
.compact-layout .no-base-asset.base-setup-workbench .unified-map-grid{display:block;height:auto}
.compact-layout .no-base-asset.base-setup-workbench :is(.unified-side-panel,.base-summary-grid){max-width:none;width:100%;margin:0}
.compact-layout .no-base-asset.base-setup-workbench .unified-side-panel{padding:16px;overflow:visible}
.compact-layout .no-base-asset .base-mode-switch{display:none}
.compact-layout .no-base-asset .unified-form-section{display:grid;grid-template-columns:1fr;gap:10px;align-items:start}
.compact-layout .no-base-asset .upload-create-form{grid-template-columns:1fr 1fr;column-gap:16px}
.compact-layout .no-base-asset .unified-form-section>.ui-input-choice{grid-column:1/-1;padding:0 0 4px}
.compact-layout :is(.upload-details,.upload-file-settings){display:grid;align-content:start;gap:10px}
.compact-layout .compact-field{display:grid;gap:5px;font-size:12px;color:var(--ui-text-secondary)}
.compact-layout .upload-details textarea{min-height:90px}
.compact-layout .no-base-asset .unified-form-section>:is(button,.subtle-banner,.list){grid-column:1/-1}
.compact-layout .ui-input-options{gap:10px}
.compact-layout .ui-input-options button{min-height:62px!important;padding:9px 12px;font-size:13px}
.compact-layout .ui-input-options strong{font-size:14px}
.compact-layout .ui-input-options small{font-size:12px}
.compact-layout .ui-section-label{margin:0 0 6px;font-size:12px}
.compact-layout .no-base-asset .side-panel-notice{margin-top:10px}
.compact-layout .canvas-toolbar{width:38px!important;top:8px!important;left:8px!important;padding:4px!important}
.compact-layout .canvas-toolbar button{height:28px!important;min-height:28px!important;font-size:16px!important}
.compact-layout .canvas-minimap{width:96px;height:66px;left:8px;bottom:8px}
.compact-layout .model-canvas-guide{left:54px;right:8px;top:8px;padding:6px 8px;gap:2px 6px;box-shadow:none}
.compact-layout .model-canvas-guide strong{font-size:12px}
.compact-layout .model-canvas-guide span{font-size:12px}
.compact-layout .model-canvas-guide small{display:none}
.compact-layout .image2-workflow-shell:has(.review-workbench)>.ui-navbar{display:flex}
.compact-layout .unified-workbench.review-workbench{grid-template-columns:minmax(0,1.65fr) minmax(350px,1fr);grid-template-rows:auto auto minmax(0,1fr);height:calc(100dvh - 106px);min-height:500px;gap:8px;align-items:stretch}
.compact-layout .review-workbench>.unified-mode-bar{display:grid;grid-area:1/1/2/3}
.compact-layout .review-workbench>.ui-workflow-guide{grid-area:2/1/3/3}
.compact-layout .review-workbench>.model-annotation-review{grid-area:3/2/4/3;padding:10px;gap:7px;height:100%;max-height:100%}
.compact-layout .unified-workbench.review-workbench .unified-map-panel{grid-area:3/1/4/2;padding:10px}
.compact-layout .review-workbench :is(button,input,select){font-size:12px;min-height:30px}
.compact-layout .review-workbench .model-review-categories button{min-height:32px;padding:4px}
.compact-layout .review-workbench .model-annotation-review-head h3{font-size:14px}
.compact-layout .model-review-footer{padding-top:7px;gap:6px}
.compact-layout .results-mode .unified-map-grid{grid-template-columns:minmax(250px,.65fr) minmax(0,1.75fr)!important;grid-template-areas:'map analysis' 'annual annual';height:auto;align-items:start}
.compact-layout .results-mode .unified-map-panel{position:sticky;top:10px;display:block;height:auto;align-self:start}
.compact-layout .results-mode :is(.unified-map-stage,.canvas-shell,.canvas-stage,.canvas-viewport){height:340px;min-height:0}
.compact-layout .results-mode .unified-side-panel{padding:0;overflow:visible;height:auto;scrollbar-gutter:auto}
.compact-layout .ui-results h2{font-size:16px}
.compact-layout .ui-result-toolbar{gap:6px;padding-bottom:8px}
.compact-layout .ui-result-toolbar button{min-height:32px;padding:4px 8px;font-size:12px}
.compact-layout .ui-result-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.compact-layout .ui-result-group>h3{font-size:13px;padding:8px 10px}
.compact-layout .ui-result-item{padding:10px}
.compact-layout .ui-result-item p{font-size:13px;line-height:1.65;margin-top:5px}
.compact-layout .ui-object-link{font-size:13px}
.compact-layout .ui-result-item-head>.ghost{font-size:11px}
.compact-layout .unified-table{font-size:12px}
.compact-layout .layout-editor-launch{padding:6px 10px;min-height:30px;font-size:12px;right:10px;bottom:10px}
.compact-layout :is(.model-canvas-guide,.model-canvas-notice,.canvas-hint){display:none}
.compact-layout .is-model-correcting>.model-canvas-guide{display:grid;overflow-wrap:anywhere}
.compact-layout .is-model-correcting>.model-canvas-guide strong{font-size:14px;line-height:1.5}
.compact-layout .is-model-correcting>.model-canvas-guide button{align-self:start}
.compact-layout .floating-operation-guide{position:fixed;left:16px;bottom:14px;z-index:75;width:260px;max-width:calc(100vw - 24px);overflow:visible;background:rgba(246,251,252,.82);backdrop-filter:blur(5px);border:1px solid rgba(98,148,158,.5);border-radius:7px;box-shadow:0 4px 18px #24455018;color:#2c525b;pointer-events:none}
.compact-layout .floating-operation-guide header{display:flex;align-items:center;gap:5px;padding:5px 7px;border-bottom:1px solid #d0e0e377}
.compact-layout .floating-operation-guide button{pointer-events:auto;min-height:26px;height:auto;padding:2px 6px;font-size:11px;line-height:1.5;border:0;background:transparent;color:#315f68;box-shadow:none}
.compact-layout .floating-guide-drag{flex:1;min-width:0;text-align:left;font-weight:600;cursor:move;touch-action:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compact-layout .floating-operation-guide .floating-guide-cancel{background:#e2edef}
.compact-layout .floating-guide-content{position:absolute;left:0;bottom:calc(100% + 5px);width:100%;box-sizing:border-box;max-height:min(240px,calc(100dvh - 90px));overflow:auto;padding:8px 10px;background:rgba(246,251,252,.9);backdrop-filter:blur(5px);border:1px solid rgba(98,148,158,.5);border-radius:7px;pointer-events:auto;box-shadow:0 3px 14px #24455018}
.compact-layout .floating-guide-content strong{font-size:12px}
.compact-layout .floating-guide-content p{margin:4px 0 0;font-size:12px;line-height:1.6}
.compact-layout .floating-operation-guide header{border:0}
.compact-layout .floating-operation-guide.collapsed .floating-guide-content{display:none}
.compact-layout .floating-operation-guide:hover .floating-guide-content,.compact-layout .floating-operation-guide:has(.floating-guide-drag:focus-visible) .floating-guide-content{display:block}
.compact-layout .floating-operation-guide.open-down .floating-guide-content{bottom:auto;top:calc(100% + 5px)}
@media(max-width:1000px){
 .compact-layout .ui-navbar{flex-wrap:wrap;gap:6px}
 .compact-layout .ui-navbar-actions{flex:1}
 .compact-layout .ui-navbar-actions .image2-control{max-width:230px}
 .compact-layout .mode-card-copy small{display:none}
 .compact-layout .unified-mode-card{height:40px;min-height:40px}
 .compact-layout .unified-map-grid{grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr)!important}
 .compact-layout .unified-workbench.review-workbench{grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr)}
 .compact-layout .setup-summary-only{grid-template-columns:1fr;gap:6px}
 .compact-layout .setup-summary-only>.unified-card-head{flex-direction:row;align-items:center;justify-content:space-between}
 .compact-layout .ui-result-groups{grid-template-columns:1fr}
}
@media(max-width:760px){
 .compact-layout .floating-operation-guide{left:12px;bottom:12px;width:230px}
 .compact-layout .image2-workflow-shell{padding:8px;gap:8px}
 .compact-layout .ui-navbar-actions{flex-basis:100%}
 .compact-layout .ui-navbar-actions .image2-control{max-width:none}
 .compact-layout .ui-navbar-actions button{min-height:34px;height:auto}
 .compact-layout .unified-mode-card{display:flex;justify-content:center;padding:6px;gap:4px}
 .compact-layout .mode-card-icon{display:none}
 .compact-layout .ui-workflow-guide span{display:none}
 .compact-layout .unified-map-grid,.compact-layout .results-mode .unified-map-grid{grid-template-columns:minmax(0,1fr)!important;height:auto!important}
 .compact-layout .unified-workbench:not(.results-mode):not(.no-base-asset) .unified-map-panel{height:360px}
 .compact-layout .unified-side-panel{height:auto!important;max-height:none}
 .compact-layout .rule1-workbench .layout-form-body{max-height:none;overflow:visible}
 .compact-layout .setup-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}
 .compact-layout .no-base-asset .unified-form-section{display:flex;flex-direction:column}
 .compact-layout .no-base-asset .unified-form-section>*{width:100%}
 .compact-layout .ui-input-options button{min-height:76px!important}
 .compact-layout .results-mode .unified-map-grid{grid-template-areas:'map' 'analysis' 'annual'}
 .compact-layout .results-mode .unified-map-panel{position:static}
 .compact-layout .unified-workbench.review-workbench{height:auto;min-height:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 340px minmax(520px,70dvh)}
 .compact-layout .review-workbench>.unified-mode-bar{grid-area:1/1/2/2}
 .compact-layout .review-workbench>.ui-workflow-guide{grid-area:2/1/3/2}
 .compact-layout .unified-workbench.review-workbench:not(.results-mode):not(.no-base-asset) .unified-map-panel{grid-area:3/1/4/2;height:340px}
 .compact-layout .review-workbench>.model-annotation-review{grid-area:4/1/5/2}
}
