:root{--font-sans:"Hanken Grotesk", "IBM Plex Sans", "Avenir Next", "Segoe UI", "Helvetica Neue", sans-serif;--font-mono:"JetBrains Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;font-family:var(--font-sans);color:#181c20;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f9ff;font-size:15px}*{box-sizing:border-box}body{min-width:320px;margin:0;font-family:inherit;font-size:1rem;line-height:1.45}button,input,select,textarea{border-radius:4px;font-family:inherit}@media (width<=900px){:root{font-size:14px}}html,body{font-family:IBM Plex Sans,Avenir Next,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;line-height:1.45}.app-frame{background:var(--background);min-height:100vh;color:var(--ink);padding-bottom:76px;font-size:.95rem}.view-stack,.evaluation-layout{gap:32px;display:grid}.page-title h1,.form-hero h1{color:var(--primary);letter-spacing:0;text-wrap:balance;margin:0;font-size:42px;line-height:48px}.page-title p,.form-hero p{color:var(--muted);text-wrap:pretty;max-width:68ch;margin:8px 0 0;font-size:16px;line-height:25px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid}.metric-card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);flex-direction:column;justify-content:space-between;min-height:156px;padding:24px;display:flex}.metric-card div{color:var(--muted);text-transform:uppercase;align-items:center;gap:10px;font-size:13px;font-weight:800;display:flex}.metric-card strong{color:var(--primary);font-size:48px;line-height:1}.metric-card.critical{background:linear-gradient(90deg, var(--surface) 0, var(--surface) 82%, var(--error-bg) 82%);border-color:#f1b7b3}.metric-card.critical div,.metric-card.critical strong{color:var(--error)}.sync-panel{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.sync-panel.warning{border-color:var(--warning);background:var(--warning-bg)}.sync-panel h2,.sync-panel p{margin:0}.sync-panel h2{color:var(--primary);font-size:22px}.sync-panel p{color:var(--muted);margin-top:4px}.sync-panel span{color:var(--primary);margin-top:8px;font-weight:800;display:block}.section-toolbar{border-bottom:1px solid var(--outline);justify-content:space-between;align-items:flex-end;gap:18px;padding-bottom:10px;display:flex}.section-toolbar.compact{color:var(--muted);font-weight:700}.section-toolbar h2{color:var(--primary);margin:0;font-size:24px}.link-button{color:var(--secondary);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;min-height:44px;font-weight:800;display:inline-flex}.activity-list{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius)}.activity-row{border-bottom:1px solid var(--outline);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:16px;padding:24px;display:grid}.activity-row:last-child{border-bottom:0}.activity-row h3{margin:0;font-size:22px;line-height:28px}.activity-row p{color:var(--muted);margin:6px 0 10px}.activity-row time{color:var(--muted);white-space:nowrap}.status-icon{border-radius:var(--radius);place-items:center;width:40px;height:40px;display:grid}.status-icon.critical{background:var(--error-bg);color:var(--error)}.status-icon.warning{background:var(--warning-bg);color:var(--warning)}.status-icon.stable{background:var(--success-bg);color:var(--success)}.status-badge{border-radius:var(--radius);align-items:center;width:fit-content;min-height:28px;padding:0 8px;font-size:13px;font-weight:800;display:inline-flex}.status-badge.no_habitable{background:var(--error-bg);color:var(--error)}.status-badge.uso_restringido,.status-badge.pendiente{background:var(--warning-bg);color:var(--warning)}.status-badge.habitable{background:var(--success-bg);color:var(--success)}.badge-stack{justify-items:end;gap:6px;display:grid}.sync-badge{border-radius:var(--radius);background:var(--surface-high);width:fit-content;min-height:24px;color:var(--muted);align-items:center;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.sync-badge.synced{background:var(--success-bg);color:var(--success)}.sync-badge.pending,.sync-badge.local{background:var(--secondary-container);color:var(--secondary)}.sync-badge.conflict{background:var(--error-bg);color:var(--error)}.empty-state{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);justify-items:start;gap:12px;padding:40px;display:grid}.empty-state h2,.empty-state p{margin:0}.empty-state p{color:var(--muted);max-width:58ch}.search-panel{grid-template-columns:auto minmax(0,1fr) auto;gap:16px;display:grid}.search-mode-group{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface);grid-template-columns:repeat(3,auto);align-items:stretch;min-height:56px;display:inline-grid;overflow:hidden}.search-mode-group button{border:0;border-right:1px solid var(--outline);background:var(--surface);color:var(--muted);cursor:pointer;font:inherit;white-space:nowrap;padding:0 12px;font-weight:800}.search-mode-group button:last-child{border-right:0}.search-mode-group button.active{background:var(--primary);color:#fff}.search-input{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);align-items:center;gap:12px;min-height:56px;padding:0 14px;display:flex}.search-input svg{color:var(--muted);flex:none}.search-input input{width:100%;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.search-input input::placeholder,.field input::placeholder,.field textarea::placeholder{color:#575b63;opacity:1}.registry-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;display:grid}.property-registry-panel{gap:16px;display:grid}.property-result-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.property-result-card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);gap:14px;padding:20px;display:grid}.property-result-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.property-result-head span{background:var(--secondary-container);color:var(--secondary);border-radius:var(--radius);align-items:center;min-height:26px;padding:0 8px;font-size:12px;font-weight:900;display:inline-flex}.property-result-head strong{color:var(--muted);overflow-wrap:anywhere;text-align:right;font-size:13px}.property-result-card h2{color:var(--primary);margin:0;font-size:24px;line-height:30px}.property-result-card p{color:var(--muted);align-items:center;gap:8px;margin:0;display:flex}.property-result-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.property-result-card dl div{background:var(--surface-low);border:1px solid var(--outline);border-radius:var(--radius);min-height:72px;padding:10px}.property-result-card dt{color:var(--muted);text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:900}.property-result-card dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:700}.process-panel{gap:16px;display:grid}.process-list{gap:14px;display:grid}.process-card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);gap:14px;padding:18px;display:grid}.process-card.danger{background:color-mix(in srgb, var(--error-bg) 36%, var(--surface));border-color:#e5a5a0}.process-card.warning{background:color-mix(in srgb, var(--warning-bg) 38%, var(--surface));border-color:#e6c77e}.process-card.stable{background:color-mix(in srgb, var(--success-bg) 28%, var(--surface));border-color:#a5d4b1}.process-card-main{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.process-card-main span{color:var(--muted);font-size:12px;font-weight:900}.process-card-main h2,.process-card-main p{margin:0}.process-card-main h2{color:var(--primary);margin-top:3px;font-size:22px;line-height:28px}.process-card-main p{color:var(--muted);margin-top:5px}.moment-result-strip div{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface);gap:2px;padding:10px;display:grid}.moment-result-strip div.danger{background:var(--error-bg);color:var(--error);border-color:#e5a5a0}.moment-result-strip div.warning,.moment-result-strip div.pending{background:var(--warning-bg);color:var(--warning);border-color:#e6c77e}.moment-result-strip div.stable{background:var(--success-bg);color:var(--success);border-color:#a5d4b1}.moment-result-strip strong,.moment-result-strip span,.moment-result-strip small{overflow-wrap:anywhere}.moment-result-strip strong{font-size:13px}.moment-result-strip span{font-weight:900}.moment-result-strip small{font-weight:700}.process-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.dashboard-map-band{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);gap:14px;padding:18px;display:grid}.dashboard-map-band h2,.dashboard-map-band p{margin:0}.dashboard-map-band h2{color:var(--primary)}.dashboard-map-band p{color:var(--muted);margin-top:4px}.property-hint-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.property-hint-grid div{background:var(--surface);border:1px dashed var(--outline-strong);border-radius:var(--radius);gap:4px;padding:14px;display:grid}.property-hint-grid strong{color:var(--primary)}.property-hint-grid span{color:var(--muted);font-weight:700}.compact-empty{padding:28px}.entity-stat-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.entity-stat-card,.user-editor,.user-card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);padding:20px}.entity-stat-card{gap:16px;display:grid}.entity-stat-card span,.user-card span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.entity-stat-card h2,.user-editor h2,.user-card h2{color:var(--primary);margin:4px 0 0}.entity-stat-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.entity-stat-card dl div{background:var(--surface-low);border:1px solid var(--outline);border-radius:var(--radius);padding:12px}.entity-stat-card dt{color:var(--muted);font-size:12px;font-weight:900}.entity-stat-card dd{color:var(--primary);margin:4px 0 0;font-size:26px;font-weight:900}.google-map-shell{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface-mid);min-height:560px;position:relative;overflow:hidden}.google-map-shell iframe,.map-point-layer{width:100%;height:100%;position:absolute;inset:0}.google-map-shell iframe{border:0}.map-point-layer{pointer-events:none}.map-point{pointer-events:auto;border:2px solid #fff;border-radius:50%;width:16px;height:16px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 8px #00000047}.map-point.stable{background:var(--success)}.map-point.warning{background:var(--warning)}.map-point.danger{background:var(--error)}.map-label{opacity:0;pointer-events:none;background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);z-index:2;gap:4px;width:260px;padding:10px;transition:opacity .16s ease-out,transform .16s ease-out;display:grid;position:absolute;top:50%;left:18px;transform:translateY(-50%);box-shadow:0 8px 14px #00204624}.map-point:hover .map-label,.map-point:focus-visible .map-label{opacity:1;transform:translateY(-50%)translate(4px)}.map-label strong{color:var(--primary);font-size:13px}.map-label small,.map-label em{color:var(--muted);font-style:normal;font-weight:700;line-height:18px}.google-map-shell>.section-toolbar{border:1px solid var(--outline);border-radius:var(--radius);z-index:3;background:#fffffff0;padding:8px 10px;position:absolute;bottom:12px;left:12px;right:12px}.user-admin-grid{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.user-editor{gap:16px;display:grid}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.permission-grid label{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface-low);align-items:center;gap:8px;min-height:40px;padding:0 10px;font-weight:800;display:flex}.user-list{gap:14px;display:grid}.user-card{gap:12px;display:grid}.user-card p{color:var(--muted);text-transform:capitalize;margin:4px 0 0}.permission-tags{flex-wrap:wrap;gap:6px;display:flex}.permission-tags small{background:var(--secondary-container);color:var(--secondary);border-radius:var(--radius);padding:5px 7px;font-weight:900}.registry-card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);gap:14px;padding:24px;display:grid}.registry-card-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.registry-card-head>span{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:800}.registry-card h2{color:var(--primary);margin:0;font-size:28px;line-height:34px}.registry-card p{color:var(--muted);align-items:center;gap:8px;margin:0;display:flex}.approval-track{background:var(--surface-low);border:1px solid var(--outline);border-radius:var(--radius);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;display:grid}.approval-track span{color:var(--outline-strong);justify-items:center;gap:4px;font-size:12px;font-weight:800;display:grid}.approval-track span.done{color:var(--secondary)}.form-hero{grid-template-columns:minmax(0,1fr) 280px;align-items:end;gap:24px;display:grid}.section-label{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:800;display:block}.form-status-card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);gap:8px;padding:20px;display:grid}.form-status-card span,.form-status-card small{color:var(--muted);font-weight:700}.form-status-card strong{color:var(--primary);font-size:24px;line-height:28px}.mini-progress{background:var(--surface-mid);border-radius:var(--radius);height:6px;overflow:hidden}.mini-progress span{background:var(--secondary);height:100%;transition:width .18s ease-out;display:block}.moment-tabs{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.moment-tabs button{text-align:left;background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);cursor:pointer;min-height:74px;padding:14px}.moment-tabs button.active{border-color:var(--primary);background:var(--secondary-container)}.moment-tabs span,.moment-tabs strong{display:block}.moment-tabs span{color:var(--muted);font-size:13px}.moment-tabs strong{color:var(--primary);margin-top:4px}.stepper{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid;position:relative}.stepper:before{content:"";background:var(--surface-high);height:3px;position:absolute;top:18px;left:4%;right:4%}.stepper button{z-index:1;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-items:center;gap:8px;font-weight:700;display:grid;position:relative}.stepper button span{border:2px solid var(--surface-high);background:var(--surface);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.stepper button.active span,.stepper button.done span{background:var(--primary);border-color:var(--primary);color:#fff}.stepper button.active strong{color:var(--primary)}.field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.severity-select{font-weight:900;transition:background .16s ease-out,border-color .16s ease-out,color .16s ease-out}.severity-select[data-severity=ninguno],.severity-select[data-severity=menor]{background:var(--success-bg);color:var(--success);border-color:#a5d4b1}.severity-select[data-severity=moderado],.severity-select[data-severity=no_es_claro]{background:var(--warning-bg);color:var(--warning);border-color:#e6c77e}.severity-select[data-severity=severo]{background:var(--error-bg);color:var(--error);border-color:#e5a5a0}.lookup-box{gap:10px;margin-bottom:20px;display:grid}.lookup-results{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.lookup-results button{border:1px solid var(--outline);background:var(--surface-low);border-radius:var(--radius);text-align:left;cursor:pointer;padding:10px}.lookup-results strong,.lookup-results span{display:block}.lookup-results span{color:var(--muted);font-size:13px}.choice-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.binary-grid,.component-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.review-alert,.critical-banner,.info-banner{border-radius:var(--radius);align-items:flex-start;gap:14px;margin-bottom:20px;padding:18px;display:flex}.review-alert,.info-banner{background:var(--secondary-container);color:var(--primary);border:1px solid #b1c5ff}.critical-banner{background:var(--error-bg);border:1px solid var(--error);color:var(--error)}.review-alert span{color:var(--muted);font-weight:800}.review-alert strong,.critical-banner h2,.info-banner h2{margin:0;font-size:24px;display:block}.review-alert p,.critical-banner p,.info-banner p{margin:4px 0 0}.review-alert.stable{background:var(--success-bg);color:var(--success);border:1px solid #8dc5a4}.review-alert.warning{background:var(--warning-bg);color:var(--warning);border:1px solid #e6c77e}.review-alert.danger{background:var(--error-bg);border:1px solid var(--error);color:var(--error)}.form-status-card.stable{background:var(--success-bg);border-color:#8dc5a4}.form-status-card.stable strong{color:var(--success)}.form-status-card.warning{background:var(--warning-bg);border-color:#e6c77e}.form-status-card.warning strong{color:var(--warning)}.form-status-card.danger{background:var(--error-bg);border-color:#e6a19b}.form-status-card.danger strong{color:var(--error)}.evidence-panel{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface-low);margin-top:20px;padding:18px}.evidence-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.evidence-panel-head h3,.evidence-panel-head p{margin:0}.evidence-panel-head h3{color:var(--primary);font-size:20px;line-height:28px}.evidence-panel-head p{color:var(--muted);max-width:62ch;margin-top:4px}.evidence-upload-button{border-radius:var(--radius);background:var(--primary-container);color:#fff;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-weight:800;display:inline-flex}.evidence-upload-button input{display:none}.evidence-empty{border:1px dashed var(--outline-strong);border-radius:var(--radius);min-height:96px;color:var(--muted);text-align:center;background:var(--surface);place-items:center;gap:8px;display:grid}.evidence-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.evidence-card{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface);position:relative;overflow:hidden}.evidence-card.saved{border-color:var(--secondary)}.saved-evidence-section{border-top:1px solid var(--outline);margin-top:18px;padding-top:18px}.saved-evidence-section h4{color:var(--primary);margin:0 0 12px;font-size:16px;line-height:24px}.evidence-card .evidence-preview{min-height:140px}.evidence-card div{gap:2px;padding:10px;display:grid}.evidence-card strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.evidence-card span{color:var(--muted);font-size:12px;font-weight:700}.evidence-card button{border-radius:var(--radius);width:36px;height:36px;color:var(--error);cursor:pointer;background:#ffffffeb;border:1px solid #0020463d;place-items:center;display:grid;position:absolute;top:8px;right:8px}.view-loading{min-height:220px;color:var(--muted);place-items:center;font-weight:800;display:grid}.form-pager div,.summary-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.primary-button,.secondary-button{border-radius:var(--radius);min-height:44px;font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:800;display:inline-flex}.primary-button{background:var(--primary-container);border:1px solid var(--primary-container);color:#fff}.secondary-button{border:1px solid var(--primary-container);color:var(--primary-container);background:0 0}.secondary-button.danger{border-color:var(--error);color:var(--error)}.primary-button:hover,.secondary-button:hover{filter:brightness(.96)}.primary-button:disabled,.secondary-button:disabled{opacity:.45;cursor:not-allowed}.summary-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.summary-card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius)}.summary-card.completed{border-color:var(--secondary)}.summary-card-head{background:var(--surface-low);border-bottom:1px solid var(--outline);padding:18px}.summary-card-head span,.summary-card-head strong{display:block}.summary-card-head span{color:var(--muted);font-weight:800}.summary-card-head strong{color:var(--primary);margin-top:4px;font-size:22px}.summary-card>p{color:var(--muted);margin:0;padding:18px 18px 0}.summary-card dl{gap:14px;margin:0;padding:18px;display:grid}.summary-card dl div{gap:4px;display:grid}.summary-card dt{color:var(--muted);font-size:13px;font-weight:800}.summary-card dd{color:var(--ink);margin:0;font-weight:700}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.top-bar{padding:0 16px}.desktop-nav,.status-pill{display:none}.main-canvas{padding:32px 16px 96px}.page-title h1,.form-hero h1{font-size:40px;line-height:46px}.stats-grid,.summary-cards,.property-hint-grid,.form-hero,.field-grid,.choice-columns,.binary-grid,.component-grid,.search-panel,.sync-panel{grid-template-columns:1fr}.search-mode-group{grid-template-columns:repeat(3,minmax(0,1fr))}.sync-panel{flex-direction:column;align-items:stretch}.evidence-panel-head{flex-direction:column}.evidence-upload-button{width:100%}.moment-tabs{grid-template-columns:1fr}.stepper{grid-template-columns:repeat(5,96px);padding-bottom:4px;overflow-x:auto}.stepper:before{left:48px;right:48px}.stepper button strong{font-size:12px}.activity-row{grid-template-columns:auto minmax(0,1fr)}.activity-row time{grid-column:2}.form-pager{flex-direction:column;align-items:stretch;bottom:76px}.form-pager div{grid-template-columns:1fr 1fr;display:grid}}@media (width<=900px){.top-bar{min-height:54px;padding:7px 10px}.main-canvas{padding:14px 10px 88px}.page-title,.form-hero{padding:12px}.page-title h1,.form-hero h1{font-size:22px;line-height:28px}}:root{--background:#f6f7f9;--surface-low:#f8fafc;--surface-mid:#eef1f5;--outline:#dde2ea;--radius:8px;--container:1500px}.brand-button{gap:10px;min-height:38px;padding:2px}.brand-button small,.operator-card span,.registry-card-head>span,.property-result-head>span,.user-card span,.compact-table-head,.section-label{font-size:10px}.desktop-nav button{border-radius:9px;gap:8px;min-height:36px;padding:0 9px;font-size:13px}.top-actions{gap:6px}.operator-card small,.session-switcher select,.sync-button,.status-pill{font-size:11px}.page-title,.form-hero,.process-panel.elevated,.property-search-card,.property-registry-panel,.dashboard-map-band,.form-section,.sync-panel,.empty-state,.user-editor,.entity-stat-card,.summary-card{box-shadow:none;background:#fff;border-radius:12px;padding:14px}.page-title p,.form-hero p{max-width:82ch;margin-top:4px;font-size:13px;line-height:19px}.metric-card{min-height:82px;box-shadow:none;border-radius:12px;padding:12px}.metric-card div{gap:6px;font-size:10px}.dashboard-map-band{gap:10px}.dashboard-map-band p,.sync-panel p,.empty-state p,.property-hint-grid span{font-size:12px;line-height:17px}.section-toolbar{gap:10px;padding-bottom:7px}.property-search-card{gap:10px}.search-mode-group{border-radius:10px;min-height:40px;padding:3px}.property-hint-grid{gap:8px}.property-hint-grid div{border-radius:10px;padding:9px}.property-hint-grid strong{font-size:12px}.compact-table-head{gap:10px;min-height:36px;padding:0 12px}.process-card,.registry-card,.property-result-card,.user-card{border-radius:0}.status-badge,.sync-badge,.compact-chip,.compact-code,.permission-tags small{border-radius:999px;min-height:22px;padding:3px 7px;font-size:10px}.moment-result-strip{gap:4px}.process-actions,.compact-actions,.summary-actions{gap:5px}.form-status-card{border-radius:10px;gap:5px;padding:12px}.form-status-card span,.form-status-card small{font-size:11px}.moment-tabs span{font-size:11px}.stepper{border-radius:12px;gap:4px;padding:10px}.stepper button{gap:5px}.stepper button strong{font-size:11px}.form-section-title{gap:8px;margin-bottom:14px}.field-grid{gap:10px}.field span,.binary-field>span,.checkbox-panel legend{font-size:12px}.choice-columns,.binary-grid,.component-grid{gap:10px;margin-top:10px}.binary-field div{gap:5px;margin-top:8px}.damage-card>span{font-size:12px}.review-alert,.critical-banner,.info-banner{border-radius:10px;margin-bottom:12px;padding:12px}.evidence-panel-head{margin-bottom:10px}.evidence-panel-head h3{font-size:15px;line-height:20px}.evidence-panel-head p{font-size:12px;line-height:17px}.user-admin-grid{gap:14px}.permission-grid{gap:6px}.permission-grid label{border-radius:8px;min-height:32px;padding:0 8px;font-size:11px}.empty-state{gap:8px}.empty-state h2{font-size:17px;line-height:22px}@media (width<=900px){.top-bar{min-height:54px;padding:7px 10px}.main-canvas{padding:14px 10px 88px}.page-title,.form-hero{padding:12px}.page-title h1,.form-hero h1{font-size:22px;line-height:28px}}.compact-table{border:1px solid var(--outline);background:#fff;border-radius:18px;gap:0;display:grid;overflow:hidden;box-shadow:0 14px 36px #18243b12}.compact-table-head{border-bottom:1px solid var(--outline);min-height:48px;color:var(--primary);letter-spacing:0;text-transform:uppercase;background:#f3f6fb;align-items:center;gap:14px;padding:0 18px;font-size:12px;font-weight:900;display:grid}.compact-table>article{border:0;border-bottom:1px solid var(--outline);min-height:66px;box-shadow:none;background:#fff;border-radius:0;padding:10px 18px}.compact-table>article:last-child{border-bottom:0}.compact-table>article:hover{background:#fbfcff;transform:none;box-shadow:inset 3px 0 #2463d15c}.process-card,.registry-card,.property-result-card,.user-card{align-items:center;gap:14px;display:grid}.process-card.danger,.process-card.warning,.process-card.stable{background:#fff}.process-card.danger{box-shadow:inset 4px 0 0 var(--error)}.process-card.warning{box-shadow:inset 4px 0 #d79200}.process-card.stable{box-shadow:inset 4px 0 0 var(--success)}.compact-table .process-card:hover{box-shadow:inset 4px 0 0 var(--primary-container)}.process-card-main{min-width:0}.process-card-main h2,.registry-card-head strong,.property-result-head h2,.user-card h2{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.process-card-main h2{margin:1px 0 0;font-size:16px;line-height:21px}.process-card-main p,.registry-card-head small,.property-result-head p,.compact-owner,.compact-use,.user-card p{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px;overflow:hidden}.moment-result-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.moment-result-strip div{border-radius:999px;align-content:center;min-height:44px;padding:4px 10px}.moment-result-strip strong{display:none}.moment-result-strip small{display:none}.badge-stack{justify-items:start}.compact-actions,.process-actions,.summary-actions{flex-wrap:nowrap;justify-content:flex-end;gap:7px;display:flex}.compact-table .primary-button,.compact-table .secondary-button{white-space:nowrap;min-height:34px;box-shadow:none;border-radius:10px;padding:0 10px;font-size:12px}.registry-card-head,.property-result-head,.user-card>div:first-child{gap:2px;min-width:0;display:grid}.registry-card-head>span,.property-result-head>span,.user-card span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.registry-card-head strong,.property-result-head h2,.user-card h2{color:var(--primary);margin:0;font-size:15px;line-height:20px}.compact-date,.compact-chip,.compact-code,.compact-owner,.compact-use{min-width:0}.compact-date{color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:800;display:inline-flex}.compact-chip,.compact-code{background:var(--surface-low);width:fit-content;max-width:100%;color:var(--primary);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900;overflow:hidden}.property-result-card dl,.property-result-card>p,.property-result-card>h2,.registry-card>h2,.registry-card>p,.approval-track{display:none}.permission-tags{max-height:42px;overflow:hidden}.permission-tags small{border-radius:999px;padding:4px 7px;font-size:11px}@media (width<=1180px){.compact-table{overflow-x:auto}.compact-table-head,.process-card,.registry-card,.property-result-card,.user-card{min-width:900px}}@media (width<=900px){.compact-table{border-radius:16px}.compact-table-head{display:none}.compact-table>article{grid-template-columns:1fr;align-items:start;gap:10px;min-width:0;padding:14px}.process-actions,.compact-actions,.summary-actions{flex-wrap:wrap;justify-content:flex-start}.moment-result-strip{grid-template-columns:1fr}.badge-stack{justify-items:start}}@page{size:letter;margin:8mm}@media print{:root{--background:#fff;--surface:#fff}body{color:#16233b;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff}.app-frame{background:#fff;padding-bottom:0}.top-bar,.bottom-nav{display:none!important}.main-canvas{width:100%;max-width:none;padding:0!important}.view-stack{gap:0}}@media (width<=520px){.brand-button span{font-size:18px}.page-title h1,.form-hero h1{font-size:34px;line-height:40px}.binary-field div{grid-template-columns:repeat(2,minmax(0,1fr))}.form-pager div{grid-template-columns:1fr}}:root{--background:#f4f6fb;--surface:#fff;--surface-low:#f7f9fd;--surface-mid:#eef2f8;--surface-high:#dce3ee;--ink:#172033;--muted:#687083;--outline:#d9dfeb;--outline-strong:#9aa5b8;--primary:#18243b;--primary-container:#2463d1;--secondary:#0f766e;--secondary-container:#d9f4ef;--error:#b3261e;--error-bg:#fff0ee;--success:#12633d;--success-bg:#e6f5ec;--warning:#8a5a00;--warning-bg:#fff5da;--radius:12px;--container:1440px}.app-frame{min-height:100vh;padding-bottom:0;position:relative}.top-bar{z-index:40;width:272px;height:auto;color:var(--ink);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffdb;border:1px solid #d9dfebe6;border-radius:22px;flex-direction:column;justify-content:flex-start;gap:22px;padding:18px;display:flex;position:fixed;inset:16px auto 16px 16px;box-shadow:0 24px 70px #18243b1f}.brand-button{width:100%;color:var(--primary);justify-content:flex-start;padding:6px}.brand-button>span:last-child{text-align:left;letter-spacing:0;gap:1px;font-size:22px;display:grid}.brand-button small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.brand-mark{color:#fff;background:linear-gradient(135deg,#18243b,#2463d1);border-radius:14px;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 12px 22px #2463d13d}.desktop-nav{gap:8px;display:grid}.desktop-nav button{min-height:46px;color:var(--muted);border-radius:14px;justify-content:flex-start;align-items:center;gap:10px;padding:0 12px;display:flex}.desktop-nav button.active{box-shadow:inset 3px 0 0 var(--primary-container)}.top-actions{gap:10px;width:100%;margin-top:auto;display:grid}.operator-card{border:1px solid var(--outline);background:linear-gradient(#fff,#f6f8fc);border-radius:16px;gap:2px;padding:14px;display:grid}.operator-card span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.operator-card strong{color:var(--primary);font-size:16px;line-height:20px}.operator-card small{color:var(--muted);font-weight:800}.session-switcher,.sync-button,.status-pill,.icon-button{border-radius:14px;width:100%}.session-switcher{border-color:var(--outline);background:var(--surface-low)}.mobile-session-switcher{display:none}.session-switcher select{color:var(--ink)}.status-pill.online,.status-pill.offline{color:var(--success);background:var(--success-bg)}.sync-button{border-color:var(--outline);background:var(--primary);min-height:42px}.main-canvas{width:min(100%, var(--container));margin:0 auto;padding:32px 32px 72px 320px}.view-stack,.evaluation-layout{gap:24px}.page-title,.form-hero{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #d9dfebdb;border-radius:24px;padding:24px;box-shadow:0 18px 50px #18243b14}.page-title h1,.form-hero h1{color:var(--primary);font-size:clamp(34px,4vw,54px);line-height:1.04}.page-title p,.form-hero p{color:var(--muted);font-size:17px;line-height:26px}.metric-card,.sync-panel,.activity-list,.empty-state,.dashboard-map-band,.form-section,.registry-card,.property-result-card,.entity-stat-card,.user-editor,.user-card,.summary-card{border-color:#d9dfebe0;border-radius:20px;box-shadow:0 14px 36px #18243b12}.metric-card{min-height:132px;padding:20px;position:relative;overflow:hidden}.metric-card:after{content:"";background:#2463d117;border-radius:28px;width:84px;height:84px;position:absolute;top:-22px;right:-18px;transform:rotate(18deg)}.metric-card strong{color:var(--primary);font-size:42px}.dashboard-map-band{padding:20px}.google-map-shell{border-color:var(--outline);border-radius:22px;min-height:430px}.process-workbench{grid-template-columns:minmax(0,1.35fr) minmax(360px,.85fr);align-items:start;gap:20px;display:grid}.process-column,.search-column{gap:16px;display:grid}.search-column{position:sticky;top:32px}.process-panel.elevated,.property-search-card,.property-registry-panel{background:#ffffffd6;border:1px solid #d9dfebe6;border-radius:22px;padding:18px;box-shadow:0 18px 44px #18243b14}.property-search-card{gap:14px;display:grid}.property-search-card h2{color:var(--primary);margin:0;font-size:24px;line-height:30px}.search-panel{border-radius:20px}.search-mode-group{border:1px solid var(--outline);background:var(--surface-low);border-radius:16px;gap:4px;padding:4px;overflow:visible}.search-mode-group button{border:0;border-radius:12px;min-height:44px}.search-mode-group button.active{background:var(--primary);box-shadow:0 12px 22px #18243b2e}.search-input{border-color:var(--outline);background:#fff;border-radius:16px}.process-card{border-radius:18px;padding:18px;transition:transform .16s ease-out,box-shadow .16s ease-out,border-color .16s ease-out;box-shadow:0 12px 30px #18243b0f}.process-card:hover{transform:translateY(-2px);box-shadow:0 20px 42px #18243b1c}.process-card-main h2{font-size:24px}.moment-result-strip div{border-radius:14px;min-height:78px}.process-actions{justify-content:flex-start}.property-result-grid{grid-template-columns:1fr}.property-result-card{gap:12px;padding:18px}.property-result-card h2{font-size:22px;line-height:28px}.property-hint-grid{grid-template-columns:1fr}.property-hint-grid div{background:var(--surface-low);border-style:solid;border-radius:16px}.form-hero{grid-template-columns:minmax(0,1fr) 300px;align-items:stretch}.form-status-card{border-color:var(--outline);box-shadow:none;background:linear-gradient(#fff,#f6f9fd);border-radius:18px}.moment-tabs button{border-radius:18px;min-height:82px;transition:transform .16s ease-out,box-shadow .16s ease-out,border-color .16s ease-out}.moment-tabs button.active{border-color:var(--primary-container);background:#edf4ff;box-shadow:0 12px 24px #2463d11f}.moment-tabs button:hover{transform:translateY(-1px)}.stepper{background:#ffffffd1;border:1px solid #d9dfebe6;border-radius:20px;padding:16px}.form-section{background:#ffffffe6;padding:24px}.field input,.field select,.field textarea{background:#fff;border-radius:14px;min-height:52px}.field input[readonly]{background:var(--surface-low);color:var(--muted)}.binary-field,.checkbox-panel,.evidence-panel{border-radius:18px}.binary-field{background:var(--surface-low)}.binary-field button{border-radius:12px}.component-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.damage-card{border:1px solid var(--outline);background:var(--surface-low);border-radius:18px;gap:12px;padding:14px;display:grid}.damage-card>span{color:var(--primary);font-size:14px;font-weight:900}.damage-card>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.damage-option{border:1px solid var(--outline);min-height:42px;color:var(--muted);cursor:pointer;font:inherit;text-transform:capitalize;background:#fff;border-radius:12px;font-size:12px;font-weight:900;transition:transform .14s ease-out,box-shadow .14s ease-out,border-color .14s ease-out}.damage-option:hover{transform:translateY(-1px)}.damage-option.active.stable{background:var(--success-bg);color:var(--success);border-color:#8dc5a4;box-shadow:inset 0 -3px #12633d2e}.damage-option.active.warning{background:var(--warning-bg);color:var(--warning);border-color:#e6c77e;box-shadow:inset 0 -3px #8a5a002e}.damage-option.active.danger{background:var(--error-bg);color:var(--error);border-color:#e6a19b;box-shadow:inset 0 -3px #b3261e29}.form-pager{z-index:12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;border-radius:18px;position:sticky;bottom:18px;box-shadow:0 16px 44px #18243b24}.primary-button,.secondary-button,.link-button{border-radius:14px}.primary-button{background:var(--primary-container);border-color:var(--primary-container);box-shadow:0 10px 20px #2463d12e}.secondary-button{border-color:var(--outline);color:var(--primary);background:#fff}@media (width<=1100px){.process-workbench{grid-template-columns:1fr}.search-column{position:static}}@media (width<=900px){.app-frame{padding-bottom:86px}.top-bar{border-radius:0;flex-direction:row;align-items:center;gap:8px;width:auto;height:auto;min-height:68px;padding:10px;position:sticky;inset:0}.desktop-nav,.operator-card,.session-switcher,.sync-button,.icon-button{display:none}.brand-button{flex:none;width:auto}.status-pill{width:auto;margin-left:0;display:inline-flex}.top-actions{flex:none;width:auto;margin-left:0;display:flex}.mobile-session-switcher{border:1px solid var(--outline);min-width:136px;max-width:42vw;height:44px;color:var(--primary);background:#fff;border-radius:12px;flex:150px;align-items:center;gap:8px;padding:0 28px 0 10px;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 8px 18px #18243b14}.mobile-session-switcher:after{content:"⌄";color:var(--muted);pointer-events:none;font-size:16px;font-weight:900;position:absolute;top:50%;right:10px;transform:translateY(-54%)}.mobile-session-switcher>svg{color:var(--primary-container);flex:none}.mobile-session-switcher span{gap:0;min-width:0;display:grid}.mobile-session-switcher strong,.mobile-session-switcher small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-session-switcher strong{color:var(--primary);font-size:11px;font-weight:950;line-height:14px}.mobile-session-switcher small{color:var(--muted);font-size:9px;font-weight:900;line-height:12px}.mobile-session-switcher select{color:#0000;opacity:0;background:0 0;border:0;outline:0;width:100%;height:100%;position:absolute;inset:0}.main-canvas{padding:22px 14px 104px}.page-title,.form-hero{padding:20px}.form-hero,.component-grid,.damage-card>div{grid-template-columns:1fr}}body{background:#f6f7f9}.top-bar{width:232px;box-shadow:none;border-radius:14px;gap:12px;padding:12px;inset:10px auto 10px 10px}.brand-mark{width:34px;height:34px;box-shadow:none;border-radius:9px}.brand-button{min-height:38px;padding:2px}.brand-button>span:last-child{font-size:17px}.desktop-nav{gap:4px}.desktop-nav button{border-radius:9px;min-height:36px;padding:0 9px;font-size:13px}.operator-card{border-radius:10px;padding:9px}.operator-card strong{font-size:13px;line-height:17px}.session-switcher,.sync-button,.status-pill,.icon-button{border-radius:9px;min-height:32px}.main-canvas{padding:18px 20px 42px 260px}.view-stack,.evaluation-layout,.process-column,.search-column{gap:14px}.page-title,.form-hero,.process-panel.elevated,.property-search-card,.property-registry-panel,.dashboard-map-band,.form-section,.sync-panel,.empty-state,.user-editor,.entity-stat-card,.summary-card,.metric-card{box-shadow:none;background:#fff;border-radius:12px;padding:14px}.page-title p,.form-hero p{margin-top:4px;font-size:13px;line-height:19px}.stats-grid{gap:10px}.metric-card{min-height:82px}.metric-card:after{display:none}.metric-card div{font-size:10px}.dashboard-map-band,.property-search-card{gap:10px}.dashboard-map-band h2,.sync-panel h2,.section-toolbar h2,.property-search-card h2,.form-section-title h2{font-size:17px;line-height:22px}.google-map-shell{border-radius:12px;min-height:300px}.process-workbench{grid-template-columns:minmax(0,1.55fr) minmax(320px,.72fr);gap:14px}.section-toolbar{padding-bottom:7px}.section-toolbar.compact{font-size:12px}.search-input{border-radius:10px;min-height:40px;padding:0 10px}.search-input input{font-size:13px}.search-mode-group{border-radius:10px;min-height:40px}.search-mode-group button{border-radius:8px;min-height:32px;font-size:12px}.compact-table{box-shadow:none;border-radius:10px}.compact-table-head{gap:10px;min-height:36px;padding:0 12px;font-size:10px}.compact-table>article{gap:10px;min-height:52px;padding:7px 12px}.process-head,.process-card{grid-template-columns:minmax(240px,1.25fr) minmax(250px,1fr) minmax(116px,.42fr) minmax(250px,.8fr)}.registry-head,.registry-card{grid-template-columns:minmax(230px,1.3fr) minmax(96px,.35fr) minmax(92px,.32fr) minmax(145px,.48fr) minmax(100px,.32fr)}.entity-registry-head,.entity-registry-card{grid-template-columns:minmax(270px,1.55fr) minmax(112px,.38fr) minmax(160px,.52fr) minmax(132px,.42fr)}.property-head,.property-result-card{grid-template-columns:minmax(230px,1.35fr) minmax(170px,.75fr) minmax(150px,.62fr) minmax(105px,.38fr) minmax(76px,.28fr)}.user-head,.user-card{grid-template-columns:minmax(170px,.95fr) minmax(130px,.58fr) minmax(125px,.48fr) minmax(220px,.95fr) minmax(142px,.52fr)}.status-badge,.sync-badge,.compact-chip,.compact-code,.permission-tags small{min-height:22px;padding:3px 7px;font-size:10px}.moment-result-strip div{border-radius:999px;min-height:28px;padding:3px 8px}.moment-result-strip span{font-size:10px}.primary-button,.secondary-button,.link-button,.compact-table .primary-button,.compact-table .secondary-button{min-height:32px;box-shadow:none;border-radius:8px;padding:0 10px;font-size:12px}.form-hero{grid-template-columns:minmax(0,1fr) 220px;gap:12px}.form-status-card{border-radius:10px;padding:12px}.form-status-card strong{font-size:17px;line-height:21px}.moment-tabs{gap:6px}.moment-tabs button{border-radius:10px;min-height:52px;padding:9px}.stepper{border-radius:12px;padding:10px}.stepper button span{width:30px;height:30px;font-size:12px}.stepper button strong,.moment-tabs span,.form-status-card span,.form-status-card small{font-size:11px}.moment-tabs strong{font-size:13px}.form-section-title{margin-bottom:14px}.field-grid,.choice-columns,.binary-grid,.component-grid{gap:10px}.field span,.binary-field>span,.checkbox-panel legend,.damage-card>span{font-size:12px}.field input,.field select,.field textarea{border-radius:9px;min-height:40px;padding:8px 9px;font-size:13px}.field textarea{min-height:82px}.binary-field,.checkbox-panel,.evidence-panel,.damage-card{border-radius:10px;padding:10px}.binary-field button,.checkbox-panel label,.damage-option{border-radius:8px;min-height:32px;font-size:11px}.damage-card{gap:8px}.damage-card>div{gap:5px}.form-pager{border-radius:12px;padding:10px 12px;bottom:10px;box-shadow:0 10px 24px #18243b1f}.form-pager>span{font-size:12px}.permission-grid label{border-radius:8px;min-height:32px;font-size:11px}.evaluation-list-panel{border:1px solid var(--outline);background:#fff;border-radius:12px;gap:10px;padding:12px;display:grid}.evaluation-list-toolbar{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;display:grid}.compact-new-button{min-width:132px}.export-actions{align-items:center;gap:8px;display:flex}.export-button{white-space:nowrap;min-width:88px}.export-message{color:var(--text-muted);margin:0;font-size:.85rem}.map-evaluation-labels{border:1px solid var(--outline);background:#fff;border-radius:12px;align-content:start;gap:8px;max-height:300px;padding:10px;display:grid;overflow:auto}.map-labels-head{color:var(--primary);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.map-labels-head span{background:var(--surface-low);min-width:24px;min-height:22px;color:var(--muted);border-radius:999px;place-items:center;font-weight:900;display:inline-grid}.map-evaluation-label{border-left:3px solid var(--success);background:var(--surface-low);border-radius:8px;gap:2px;padding:8px;display:grid}.map-evaluation-label.warning{border-left-color:var(--warning)}.map-evaluation-label.danger{border-left-color:var(--error)}.map-evaluation-label strong,.map-evaluation-label span,.map-evaluation-label small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-evaluation-label strong{color:var(--primary);font-size:12px}.map-evaluation-label span,.map-evaluation-label small,.map-evaluation-labels p{color:var(--muted);font-size:11px;line-height:15px}.google-only-map .map-tile-layer,.google-only-map .map-point-layer,.google-only-map .map-controls{display:none}@media (width<=1100px){.predial-consultation-view .search-column,.google-map-layout,.evaluation-list-toolbar{grid-template-columns:1fr}}@media (width<=900px){.top-bar{min-height:54px;padding:7px 10px}.main-canvas{padding:14px 10px 88px}.page-title,.form-hero{padding:12px}.page-title h1,.form-hero h1{font-size:22px;line-height:28px}.bottom-nav{border-radius:14px;height:58px;bottom:8px;left:8px;right:8px}.bottom-nav button{font-size:10px}.google-map-shell{min-height:400px}}.real-map-shell{cursor:grab;isolation:isolate;-webkit-user-select:none;user-select:none}.real-map-shell:active{cursor:grabbing}.map-tile-layer{background:#dbe7df;position:absolute;inset:0;overflow:hidden}.map-tile-layer img{-webkit-user-select:none;user-select:none;pointer-events:none;width:256px;height:256px;position:absolute}.real-map-shell .map-point-layer{pointer-events:none;z-index:2;position:absolute;inset:0}.real-map-shell .map-point{z-index:3;border-width:3px;width:18px;height:18px}.map-controls{z-index:4;gap:4px;display:grid;position:absolute;top:10px;right:10px}.map-controls button{width:30px;height:30px;color:var(--primary);cursor:pointer;font:inherit;background:#ffffffeb;border:1px solid #18243b29;border-radius:8px;font-size:16px;font-weight:900;box-shadow:0 6px 14px #18243b1f}.real-map-shell>.section-toolbar{display:none}.page-title,.form-hero,.process-panel.elevated,.property-search-card,.property-registry-panel,.dashboard-map-band,.form-section{padding:12px}.page-title h1,.form-hero h1{font-size:22px;line-height:28px}.page-title p,.form-hero p{font-size:12px;line-height:17px}.metric-card{min-height:74px;padding:10px}.metric-card strong{font-size:26px}.compact-table>article{min-height:46px;padding-block:6px}.process-card-main h2,.registry-card-head strong,.property-result-head h2,.user-card h2{font-size:12px;line-height:16px}.process-card-main p,.registry-card-head small,.property-result-head p,.compact-owner,.compact-use,.user-card p,.compact-date{font-size:10px;line-height:14px}.form-hero{grid-template-columns:minmax(0,1fr) 190px}.moment-tabs button{min-height:42px;padding:7px 8px}.stepper{padding:8px}.stepper:before{top:22px}.stepper button span{width:26px;height:26px}.field input,.field select,.field textarea{min-height:36px}.binary-field button,.checkbox-panel label,.damage-option,.primary-button,.secondary-button,.link-button,.compact-table .primary-button,.compact-table .secondary-button{min-height:30px}.evaluation-list-panel .compact-table{box-sizing:border-box;scrollbar-width:thin;border-radius:8px;flex-direction:column;gap:0;width:100%;display:flex;overflow:auto hidden}.evaluation-list-panel .registry-head,.evaluation-list-panel .registry-card{box-sizing:border-box;grid-template-columns:minmax(230px,1.35fr) minmax(96px,.32fr) minmax(148px,.48fr) minmax(238px,.72fr) minmax(236px,.68fr);width:100%;min-width:960px;display:grid}.evaluation-list-panel .entity-registry-head,.evaluation-list-panel .entity-registry-card{grid-template-columns:minmax(250px,1.35fr) minmax(136px,.42fr) minmax(230px,.68fr) minmax(236px,.66fr);min-width:880px}.evaluation-list-panel .compact-table-head{background:#f7f9fc;border-radius:8px 8px 0 0;flex:none}.evaluation-list-panel .registry-card{flex:none;min-height:48px;padding:6px 12px}.evaluation-list-panel .registry-card>*{min-width:0}.evaluation-list-panel .registry-card-head{grid-template-columns:72px minmax(0,1fr);align-items:center;column-gap:8px;display:grid}.evaluation-list-panel .registry-card-head>span{background:var(--surface-low);border-radius:999px;grid-row:1/span 2;width:fit-content;max-width:100%;padding:3px 7px}.evaluation-list-panel .registry-card-head strong,.evaluation-list-panel .registry-card-head small{grid-column:2}.evaluation-list-panel .badge-stack{flex-wrap:wrap;justify-content:start;align-items:center;gap:4px;min-width:0;display:flex;overflow:hidden}.evaluation-list-panel .compact-table .status-badge,.evaluation-list-panel .compact-table .sync-badge{white-space:nowrap;max-width:100%}.evaluation-list-panel .registry-meta{display:contents}.evaluation-list-panel .compact-actions{scrollbar-width:thin;white-space:nowrap;justify-content:flex-end;gap:4px;min-width:0;padding-bottom:2px;overflow:auto hidden}.evaluation-list-panel .compact-actions .primary-button,.evaluation-list-panel .compact-actions .secondary-button{border-radius:7px;flex:none;min-height:28px;padding:0 7px;font-size:10px;line-height:1}.evaluation-list-panel .compact-actions svg{width:12px;height:12px}.entity-action-stack{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.entity-pill{min-height:28px;color:var(--muted);letter-spacing:0;white-space:nowrap;background:#f8fafc;border:1px solid #d7deea;border-radius:999px;align-items:center;gap:4px;padding:0 9px;font-size:10px;font-weight:900;display:inline-flex}.entity-pill.approved{color:#116b46;background:#e9f8f1;border-color:#a5d8bf}.entity-pill:disabled{cursor:not-allowed;opacity:.52}.compact-chip.approved{color:#116b46;background:#e9f8f1}.approve-row-button{min-width:66px}.report-row-button{min-width:68px}@media (width<=900px){.evaluation-list-panel .compact-table{background:0 0;border:0}.evaluation-list-panel .registry-card{border:1px solid var(--outline);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main status""meta status""entities entities""actions actions";align-items:center;min-width:0;min-height:58px;margin-bottom:7px;padding:8px 10px}.evaluation-list-panel .registry-card-head{grid-area:main;grid-template-columns:1fr;gap:1px}.evaluation-list-panel .registry-card-head>span{background:0 0;grid-row:auto;padding:0;font-size:10px}.evaluation-list-panel .registry-card-head strong{grid-column:auto;font-size:12px}.evaluation-list-panel .registry-card-head small{grid-column:auto;max-width:100%}.evaluation-list-panel .registry-meta{flex-wrap:wrap;grid-area:meta;align-items:center;gap:6px;min-width:0;display:flex}.evaluation-list-panel .badge-stack{flex-flow:column;grid-area:status;justify-content:flex-start;align-self:start;align-items:flex-end;min-width:92px}.evaluation-list-panel .entity-action-stack{grid-area:entities;justify-content:flex-start;padding-top:3px}.evaluation-list-panel .compact-actions{grid-area:actions;justify-content:flex-start}}.logout-button{border:1px solid var(--outline);min-height:30px;color:var(--muted);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:0 10px;font-size:12px;font-weight:700;transition:border-color .15s,color .15s,background .15s}.logout-button:hover{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.mobile-session-switcher .logout-button{min-height:26px;margin-left:4px;padding:0 8px;font-size:11px}.entity-scope{color:var(--secondary);opacity:.9;margin-top:2px;font-size:11px;font-weight:500;display:block}.operator-card .entity-scope{color:#d9e2ff}.association-tag{background:var(--secondary-container);color:var(--primary-container);border-radius:12px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.association-tag button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.association-select{border-radius:var(--radius);border:1px solid var(--outline);max-width:220px;padding:4px 6px;font-size:12px}.empty-inline{color:var(--muted);padding:16px;font-size:13px}.login-error{background:var(--error-bg);color:var(--error);border-radius:var(--radius);margin-bottom:12px;padding:10px 12px;font-size:13px}.picker-cards{border:1px solid var(--outline);background:var(--surface-low);border-radius:18px;gap:10px;padding:12px;display:grid;position:relative}.picker-cards.disabled{opacity:.55;pointer-events:none}.picker-cards-label{color:var(--primary);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:900}.picker-trigger{border:1px solid var(--outline);width:100%;min-height:42px;color:var(--ink);font:inherit;cursor:pointer;text-align:left;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:600;transition:border-color .14s ease-out,box-shadow .14s ease-out;display:flex}.picker-trigger:hover{border-color:var(--outline-strong)}.picker-trigger:focus-visible{outline:2px solid var(--secondary);outline-offset:1px}.picker-trigger-placeholder{color:var(--muted);font-weight:500}.picker-chevron{color:var(--muted);flex:none;transition:transform .18s ease-out}.picker-chevron.open{transform:rotate(180deg)}.picker-popup{z-index:120;border:1px solid var(--outline);background:#fff;border-radius:14px;gap:8px;padding:10px;animation:.14s ease-out both entity-modal-in;display:grid;position:fixed;box-shadow:0 18px 44px #00143238}.picker-cards-search{background:var(--surface-low);border:1px solid var(--outline);color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:flex}.picker-cards-search input{min-height:32px;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:13px}.picker-popup-list{gap:2px;max-height:min(300px,55vh);display:grid;overflow-y:auto}.picker-popup-option{width:100%;min-height:38px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex}.picker-popup-option:hover{background:var(--surface-low)}.picker-popup-option.active{background:var(--primary);color:#fff;font-weight:700}.picker-cards-empty{color:var(--muted);text-align:center;padding:10px;font-size:12px}.picker-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=768px){.picker-popup{right:12px;width:auto!important;left:12px!important}.picker-pair{grid-template-columns:1fr}}.picker-wrapper{flex-direction:column;gap:6px;min-width:0;display:flex}.picker-wrapper.has-error .picker-cards{border-color:var(--error)}.picker-wrapper.has-error .picker-trigger{border-color:var(--error);outline:1px solid var(--error);outline-offset:-1px}.picker-cards-error{color:var(--error);margin:0;font-size:12px;font-weight:700;line-height:1.35}.picker-trigger.tone-stable{background:var(--success-bg);color:var(--success);border-color:#8dc5a4}.picker-trigger.tone-warning{background:var(--warning-bg);color:var(--warning);border-color:#e6c77e}.picker-trigger.tone-danger{background:var(--error-bg);color:var(--error);border-color:#e6a19b}.picker-tone-dot{border-radius:50%;flex:none;width:9px;height:9px;box-shadow:inset 0 0 0 1px #0000000f}.picker-tone-dot.stable{background:var(--success)}.picker-tone-dot.warning{background:var(--warning)}.picker-tone-dot.danger{background:var(--error)}.picker-popup-option.tone-stable:hover,.picker-popup-option.tone-stable.active{background:var(--success-bg);color:var(--success)}.picker-popup-option.tone-warning:hover,.picker-popup-option.tone-warning.active{background:var(--warning-bg);color:var(--warning)}.picker-popup-option.tone-danger:hover,.picker-popup-option.tone-danger.active{background:var(--error-bg);color:var(--error)}.entity-filter-bar{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.entity-filter-chip{border:1px solid var(--outline);min-height:34px;color:var(--muted);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:0 14px;font-size:12px;font-weight:700;transition:background .14s ease-out,border-color .14s ease-out,color .14s ease-out,transform .14s ease-out}.entity-filter-chip:hover{border-color:var(--outline-strong);transform:translateY(-1px)}.entity-filter-chip.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:inset 0 -3px #0000002e}.general-filters{border:1px solid var(--outline);background:var(--surface);border-radius:16px;gap:12px;margin-bottom:20px;padding:14px;display:grid}.general-filters-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.clear-filters-button{justify-self:start}@media (width<=768px){.general-filters-grid{grid-template-columns:1fr}}.entities-toolbar{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.entities-toolbar .login-error,.entities-toolbar .save-message{margin-bottom:0}.table-search-row{align-items:center;gap:12px;margin-bottom:14px;display:flex}.table-search-row .table-search{flex:1;min-width:0}.table-search{border:1px solid var(--outline);min-height:42px;color:var(--muted);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:0 12px;transition:border-color .14s ease-out,box-shadow .14s ease-out,background .14s ease-out;display:flex}.table-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #2463d11f}.table-search svg{color:var(--muted);flex:none}.table-search input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:13px}.table-search input::placeholder{color:#575b63;opacity:1}.table-search-clear{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;transition:background .14s ease-out,color .14s ease-out;display:inline-flex}.table-search-clear:hover{background:var(--surface-low);color:var(--ink)}.search-result-count{color:var(--muted);white-space:nowrap;flex:none;font-size:12px;font-weight:700}@media (width<=768px){.table-search-row{flex-direction:column;align-items:stretch;gap:8px}.search-result-count{align-self:flex-start}}@keyframes entity-modal-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.entity-modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a12208c;justify-content:center;align-items:flex-start;padding:48px 20px 20px;display:flex;position:fixed;inset:0;overflow-y:auto}.entity-modal{background:var(--surface);border:1px solid var(--surface-mid);border-radius:14px;flex-direction:column;width:100%;max-width:620px;max-height:90vh;animation:.22s ease-out both entity-modal-in;display:flex;overflow:hidden;box-shadow:0 24px 60px #00143247}.entity-modal-head{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:#fff;flex:none;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px;display:flex}.entity-modal-kicker{letter-spacing:.08em;text-transform:uppercase;color:#bcd0ff;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.entity-modal-head h2{margin:0;font-size:20px;line-height:1.2}.entity-modal-close{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;transition:background .15s,transform .15s;display:inline-flex}.entity-modal-close:hover{background:#ffffff3d;transform:rotate(90deg)}.entity-modal-body{-webkit-overflow-scrolling:touch;flex:auto;padding:24px;overflow-y:auto}.entity-modal-body .field-grid.two{grid-template-columns:1fr 1fr;gap:16px;display:grid}.entity-admin-section{border:1px solid var(--surface-mid);background:var(--surface-low);border-radius:10px;margin-top:24px;padding:16px}.entity-admin-section h3{color:var(--primary);margin:0 0 4px;font-size:15px}.entity-admin-hint{color:var(--muted);margin:0 0 14px;font-size:12px}.entity-admin-section .field-grid.two{margin-top:12px}.entity-modal-actions{border-top:1px solid var(--surface-mid);background:var(--surface-low);flex:none;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}@media (width<=768px){.entity-modal-backdrop{background:var(--background);-webkit-backdrop-filter:none;backdrop-filter:none;align-items:stretch;padding:0;overflow:hidden}.entity-modal{width:100%;max-width:none;height:100dvh;min-height:0;max-height:none;box-shadow:none;border:0;border-radius:0}.entity-modal-head{padding:14px 16px}.entity-modal-body{padding:16px}.entity-modal-body .field-grid.two{grid-template-columns:1fr}.entity-modal-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.entity-modal-actions .primary-button,.entity-modal-actions .secondary-button{flex:1;justify-content:center}.entities-toolbar{flex-direction:column;align-items:stretch}.entities-toolbar .primary-button{justify-content:center;width:100%}}@media (width>=481px) and (width<=768px){.entity-modal-body .field-grid.two{grid-template-columns:1fr}}.sync-panel-actions{flex-direction:column;flex-shrink:0;align-items:stretch;gap:10px;display:flex}.sync-panel-actions .primary-button,.sync-panel-actions .secondary-button{white-space:nowrap;justify-content:center}.sync-pending-list{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.sync-pending-item{border:1px solid var(--outline);background:#ffffff8c;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:9px 12px;display:grid}.sync-pending-item .sync-pending-type{letter-spacing:.04em;text-transform:uppercase;color:var(--primary);white-space:nowrap;background:#2463d114;border-radius:999px;grid-row:1/span 2;align-self:center;padding:4px 8px;font-size:10px;font-weight:900}.sync-pending-item strong{color:var(--text);font-size:13px;line-height:17px}.sync-pending-item small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.sync-pending-item.conflict{border-color:var(--warning);background:var(--warning-bg)}.sync-pending-item.conflict .sync-pending-type{color:#9a6b00;background:#ffb40029}.mobile-sync-button{display:none}.sync-count-badge{background:var(--error);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:900;line-height:18px;display:inline-flex}.sync-button.warning .sync-count-badge{background:var(--warning);color:#3a2d00}@media (width<=900px){.mobile-sync-button{justify-content:center;align-items:center;gap:5px;min-width:40px;min-height:36px;padding:0 9px;font-size:12px;display:inline-flex}.sync-panel{flex-direction:column;align-items:stretch}.sync-panel-actions{flex-flow:wrap}.sync-panel-actions .primary-button,.sync-panel-actions .secondary-button{flex:160px}}.habitability-kpis{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);padding:20px}.habitability-kpis-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.habitability-kpis-head h2{color:var(--primary);margin:0;font-size:22px}.habitability-kpis-head span{color:var(--muted);font-size:12px;font-weight:700}.habitability-kpis .stats-grid{gap:16px}.metric-card.danger{background:linear-gradient(90deg, var(--surface) 0, var(--surface) 82%, var(--error-bg) 82%);border-color:#f1b7b3}.metric-card.danger div,.metric-card.danger strong{color:var(--error)}.metric-card.warning{background:linear-gradient(90deg, var(--surface) 0, var(--surface) 82%, var(--warning-bg) 82%);border-color:#f3d9a0}.metric-card.warning div,.metric-card.warning strong{color:#9a6b00}.metric-card.muted{opacity:.82}.metric-card.muted div,.metric-card.muted strong{color:var(--muted)}@media (width<=768px){.habitability-kpis-head{flex-direction:column;align-items:flex-start}.habitability-kpis .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.habitability-table{gap:6px;display:grid}.habitability-table-head,.habitability-table-row{border-radius:12px;grid-template-columns:minmax(140px,1.4fr) repeat(3,minmax(96px,1fr));align-items:center;gap:8px;padding:10px 14px;display:grid}.habitability-table-head{background:var(--surface-low);border:1px solid var(--outline);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px;font-weight:900}.habitability-table-row{border:1px solid var(--outline);color:var(--ink);background:#fff;font-size:14px;font-weight:700}.habitability-table-row.total{background:var(--surface-low);border-color:var(--outline-strong);font-weight:900}.habitability-table-entity{color:var(--primary);font-weight:900}.habitability-table-row.total .habitability-table-entity{color:var(--ink)}.habitability-table-head .col-danger,.habitability-table-row .col-danger{color:var(--error);text-align:center}.habitability-table-head .col-warning,.habitability-table-row .col-warning{color:#9a6b00;text-align:center}.habitability-table-head .col-success,.habitability-table-row .col-success{color:var(--success);text-align:center}@media (width<=768px){.habitability-table-head,.habitability-table-row{grid-template-columns:minmax(96px,1fr) repeat(3,minmax(72px,1fr));gap:6px;padding:9px 10px;font-size:12px}}html,body{overflow-x:hidden}.app-frame{min-width:0;max-width:100%}@media (width<=900px){.app-frame{padding-bottom:84px}.top-bar{top:0;left:0;right:0;border-left:0;border-right:0;border-radius:0;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px;width:100%;min-width:0;max-width:100%;height:auto;min-height:54px;padding:8px 12px;position:sticky;inset:0 auto auto 0;box-shadow:0 2px 14px #18243b14}.top-bar .brand-button{flex:none;width:auto;min-height:38px}.desktop-nav,.operator-card,.session-switcher,.icon-button,.top-actions .sync-button:not(.mobile-sync-button),.top-actions .logout-button,.top-actions .status-pill{display:none}.top-actions{flex:none;align-items:center;gap:6px;width:auto;margin-left:0;display:flex;overflow:visible}.mobile-sync-button{justify-content:center;align-items:center;gap:5px;min-width:40px;min-height:34px;padding:0 9px;font-size:12px;display:inline-flex}.main-canvas{width:100%;min-width:0;max-width:100%;padding:14px 12px 92px}.view-stack,.evaluation-layout{min-width:0;max-width:100%}}@media (width<=480px){.main-canvas{padding:10px 10px 88px}.top-bar{gap:6px;padding:6px 10px}.brand-button>span:last-child{font-size:15px}.top-actions{gap:4px}.mobile-sync-button{min-width:36px;padding:0 7px}.page-title,.form-hero,.general-filters{padding:12px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric-card{min-height:70px;padding:10px}.general-filters-grid{grid-template-columns:1fr}.entity-filter-chip{min-height:32px;padding:0 12px;font-size:11px}.process-workbench{grid-template-columns:1fr}.dashboard-map-band{padding:12px}.google-map-shell,.real-map-shell{min-height:320px}.habitability-table-head,.habitability-table-row{grid-template-columns:minmax(72px,1fr) repeat(3,minmax(56px,1fr));gap:4px;padding:8px;font-size:11px}}@media (width<=360px){.main-canvas{padding:8px 8px 84px}.top-bar{gap:4px;padding:6px 8px}.top-bar .brand-button>span:last-child{display:none}.brand-mark{width:30px;height:30px}.mobile-session-switcher{flex:120px;gap:5px;min-width:0;max-width:44vw;padding:0 22px 0 8px}.mobile-session-switcher strong{font-size:10px;line-height:12px}.mobile-session-switcher small{font-size:8px;line-height:10px}.top-actions{gap:4px}.mobile-sync-button{min-width:34px;padding:0 6px}.view-stack,.evaluation-layout{gap:10px}}.audit-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.audit-toolbar-left{flex:1;min-width:200px}.audit-filter-select{border:1px solid var(--outline);min-height:44px;color:inherit;background:#fff;border-radius:8px;max-width:260px;padding:0 12px;font-size:.9rem}.audit-panel .registry-head,.audit-panel .audit-row{box-sizing:border-box;grid-template-columns:minmax(150px,.9fr) minmax(180px,1.1fr) minmax(100px,.55fr) minmax(150px,.85fr) minmax(170px,.95fr) minmax(120px,.65fr) minmax(160px,.9fr);width:100%;min-width:1000px;display:grid}.audit-cell-date{white-space:nowrap;font-variant-numeric:tabular-nums}.audit-cell-action{font-weight:600}.audit-cell-id{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono,monospace);font-size:.78rem;overflow:hidden}.audit-pagination{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:10px;padding-top:10px;font-size:.85rem;display:flex}.role-head,.role-card{box-sizing:border-box;grid-template-columns:minmax(150px,.85fr) minmax(200px,1.15fr) minmax(110px,.5fr) minmax(240px,1fr);width:100%;min-width:780px;display:grid}.role-card .summary-actions{flex-wrap:wrap;justify-content:flex-start}.role-card{border:1px solid color-mix(in srgb, var(--outline) 74%, #dce4f5 26%);background:radial-gradient(circle at 100% 0,#2e66c40f 0,#0000 42%),linear-gradient(#fffffffa 0%,#f9fbfff5 100%);border-radius:12px;transition:transform .14s,box-shadow .18s}.role-card:hover{transform:translateY(-1px);box-shadow:0 12px 24px -18px #16244273}.role-card h2{align-items:center;gap:8px;display:inline-flex}.role-modal{border:1px solid color-mix(in srgb, var(--outline) 76%, #ccd7ef 24%);width:100%;max-width:940px;box-shadow:0 24px 70px -42px #0f182c80}.role-permission-title{justify-content:space-between;align-items:baseline;margin:16px 0 12px;display:flex}.role-permission-title span{font-weight:700}.role-permission-title small{color:var(--muted);font-weight:600}.role-permission-groups{flex-direction:column;gap:10px;max-height:440px;padding-right:4px;display:flex;overflow-y:auto}.role-permission-group{border:1px solid var(--outline);background:linear-gradient(#fff 0%,#fcfdff 100%);border-radius:12px;overflow:hidden;box-shadow:0 8px 18px -20px #192a4a99}.role-permission-group-head{cursor:pointer;text-align:left;background:linear-gradient(90deg,#f4f7fdeb 0%,#f9fbfff5 100%);border:0;align-items:flex-start;gap:10px;width:100%;padding:12px 14px;transition:background .14s,transform .12s;display:flex}.role-permission-group-head:hover{background:linear-gradient(90deg,#eef4fff2 0%,#f7fafffa 100%)}.role-permission-group-head.selected{background:linear-gradient(90deg,#e3f6ece6 0%,#f4fcf7f5 100%)}.role-permission-group-head.partial{background:linear-gradient(90deg,#fdf3e3e6 0%,#fff9f0f5 100%)}.role-permission-check{border:1px solid var(--outline);width:18px;height:18px;color:var(--primary,#1e3a5f);background:#fff;border-radius:4px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.role-permission-group-label-wrap{flex:1;gap:2px;min-width:0;display:grid}.role-permission-group-head strong{white-space:normal;text-wrap:pretty;font-size:.91rem;line-height:1.2;display:block;overflow:visible}.role-permission-group-head small{color:var(--muted);font-size:.76rem;font-weight:600}.role-chevron{color:color-mix(in srgb, var(--muted) 72%, #5f7196 28%);margin-top:2px;transition:transform .18s}.role-chevron.open{transform:rotate(180deg)}.role-permission-panel{opacity:0;display:none}.role-permission-panel.expanded{opacity:1;animation:.22s rolePanelReveal;display:block}@keyframes rolePanelReveal{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.role-group-actions{padding:10px 12px 2px}.role-group-actions .secondary-button{min-height:30px;padding:0 12px;font-size:.78rem}.role-permission-list{gap:3px;padding:6px 10px 10px;display:grid}.role-permission-item{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:7px 8px;font-size:.85rem;line-height:1.25;transition:background .12s;display:flex}.role-permission-item:hover{background:color-mix(in srgb, var(--surface,#f7f9fc) 88%, #edf2fd 12%)}.role-permission-item input{accent-color:var(--primary,#1e3a5f)}@media (width<=900px){.role-modal{max-width:100%}.role-permission-group-head{padding:11px 12px}.role-permission-item{font-size:.82rem}}.erde-dash{--d-primary:#00236f;--d-primary-container:#1e3a8a;--d-on-primary:#fff;--d-surface:#fff;--d-surface-low:#f2f4f6;--d-surface-mid:#e6e8ea;--d-background:#f7f9fb;--d-ink:#191c1e;--d-muted:#444651;--d-border:#cbd5e1;--d-outline:#757682;--d-habitable:#22c55e;--d-restricted:#eab308;--d-unsafe:#ef4444;--d-error-bg:#ffdad6;--d-on-error-container:#93000a;font-family:var(--font-sans,"Hanken Grotesk", sans-serif)}.dash-header{background:linear-gradient(120deg, #00236f0b 0%, transparent 46%), var(--d-surface);border:1px solid var(--d-border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex}.dash-header h1{color:var(--d-primary);letter-spacing:-.02em;margin:0;font-size:30px;font-weight:800;line-height:1.15}.dash-header p{color:var(--d-muted);margin:6px 0 0;font-size:14px}.dash-header-pill{border:1px solid var(--d-border);background:var(--d-surface-low);min-height:34px;color:var(--d-ink);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:12px;font-weight:500;display:inline-flex}.dash-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.dash-kpi-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.erde-dash .metric-card{background:var(--d-surface);border:1px solid var(--d-border);border-radius:12px;flex-direction:column;justify-content:space-between;gap:12px;min-height:132px;padding:16px 16px 14px;display:flex;position:relative;overflow:hidden}.erde-dash .metric-card div{color:var(--d-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:8px;min-width:0;font-size:11px;font-weight:700;display:flex}.erde-dash .metric-card div svg{color:var(--d-primary);flex-shrink:0}.erde-dash .metric-card div span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.erde-dash .metric-card strong{color:var(--d-primary);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:42px;font-weight:800;line-height:1}.erde-dash .metric-card.accent-habitable,.erde-dash .metric-card.accent-restricted,.erde-dash .metric-card.accent-unsafe{border-left-style:solid;border-left-width:4px}.erde-dash .metric-card.accent-habitable{border-left-color:var(--d-habitable)}.erde-dash .metric-card.accent-habitable div svg,.erde-dash .metric-card.accent-habitable strong{color:var(--d-habitable)}.erde-dash .metric-card.accent-restricted{border-left-color:var(--d-restricted)}.erde-dash .metric-card.accent-restricted div svg,.erde-dash .metric-card.accent-restricted strong{color:#9a6b00}.erde-dash .metric-card.accent-unsafe{border-left-color:var(--d-unsafe)}.erde-dash .metric-card.accent-unsafe div svg,.erde-dash .metric-card.accent-unsafe strong{color:var(--d-unsafe)}.erde-dash .metric-card.alert{background:var(--d-error-bg);border-color:color-mix(in srgb, var(--d-unsafe) 55%, var(--d-border))}.erde-dash .metric-card.alert:after{content:"";background:var(--d-unsafe);width:6px;height:100%;position:absolute;top:0;right:0}.erde-dash .metric-card.alert div,.erde-dash .metric-card.alert div svg,.erde-dash .metric-card.alert strong{color:var(--d-on-error-container)}.erde-dash .metric-card.alert .metric-chip{border-color:color-mix(in srgb, var(--d-unsafe) 40%, transparent);background:color-mix(in srgb, var(--d-unsafe) 10%, #fff);color:var(--d-on-error-container)}.erde-dash .metric-card.danger{border-left:4px solid var(--d-unsafe)}.erde-dash .metric-card.danger div,.erde-dash .metric-card.danger div svg,.erde-dash .metric-card.danger strong{color:var(--d-unsafe)}.erde-dash .metric-card.warning{border-left:4px solid var(--d-restricted)}.erde-dash .metric-card.warning div,.erde-dash .metric-card.warning div svg,.erde-dash .metric-card.warning strong{color:#9a6b00}.erde-dash .metric-card.critical{border-left:4px solid var(--d-primary);background:var(--d-surface)}.dash-split{grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);align-items:stretch;gap:16px;display:grid}.dash-split-side{flex-direction:column;gap:14px;display:flex}.dash-action-card{background:var(--d-surface);border:1px solid var(--d-border);border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.dash-action-head{border-bottom:1px solid var(--d-border);align-items:center;gap:8px;padding-bottom:10px;display:flex}.dash-action-head svg{color:var(--d-unsafe)}.dash-action-head.ok svg{color:var(--d-habitable)}.dash-action-head h3{color:var(--d-ink);margin:0;font-size:16px;font-weight:700}.dash-action-body{border:1px dashed color-mix(in srgb, var(--d-unsafe) 55%, transparent);background:color-mix(in srgb, var(--d-error-bg) 42%, #fff);text-align:center;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:16px 14px;display:flex}.dash-action-body.ok{border-color:color-mix(in srgb, var(--d-habitable) 45%, transparent);background:#eff9f2}.dash-action-icon{color:var(--d-unsafe)}.dash-action-body.ok .dash-action-icon{color:var(--d-habitable)}.dash-action-body strong{color:var(--d-ink);font-size:13px;display:block}.dash-action-body p{color:var(--d-muted);margin:0;font-size:12px}.dash-action-body .primary-button,.dash-action-body .secondary-button{justify-content:center}.dash-action-list{text-align:left;gap:6px;width:100%;margin:0;padding:0;list-style:none;display:grid}.dash-action-list li{border:1px solid var(--d-border);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 9px;display:grid}.dash-action-list li span{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--d-muted);text-transform:uppercase;letter-spacing:.05em;font-size:9px;font-weight:500}.dash-action-list li strong{color:var(--d-ink);font-size:12px}.dash-action-list li small{color:var(--d-muted);font-size:11px}.dash-charts-row{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);align-items:stretch;gap:16px;display:grid}.dash-table-card{background:var(--d-surface);border:1px solid var(--d-border);border-radius:12px;overflow:hidden}.dash-table-head{border-bottom:1px solid var(--d-border);background:var(--d-surface-low);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.dash-table-head h3{color:var(--d-ink);letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.dash-table-more{color:var(--d-primary);font-family:var(--font-mono,"JetBrains Mono", monospace);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;min-height:30px;padding:0 6px;font-size:12px;font-weight:500;display:inline-flex}.dash-table-more:hover{text-decoration:underline}.dash-table-scroll{overflow-x:auto}.dash-table{border-collapse:collapse;width:100%;min-width:760px}.dash-table th{text-align:left;font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.06em;text-transform:uppercase;color:var(--d-muted);border-bottom:1px solid var(--d-border);white-space:nowrap;background:#fff;padding:10px 18px;font-size:10px;font-weight:500}.dash-table td{border-bottom:1px solid var(--d-border);color:var(--d-ink);vertical-align:middle;padding:12px 18px;font-size:13px}.dash-table tbody tr{transition:background .12s}.dash-table tbody tr:hover{background:var(--d-surface-low)}.dash-table tbody tr:last-child td{border-bottom:0}.dash-cell-id{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--d-primary);white-space:nowrap;font-size:12px}.dash-cell-title{font-weight:700}.dash-cell-sub{color:var(--d-muted);font-size:11px;font-weight:500;display:block}.dash-cell-date{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--d-muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.dash-status{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.dash-status i{border-radius:999px;width:7px;height:7px;display:inline-block}.dash-status.habitable{background:color-mix(in srgb, var(--d-habitable) 12%, #fff);color:var(--d-habitable);border-color:color-mix(in srgb, var(--d-habitable) 28%, transparent)}.dash-status.habitable i{background:var(--d-habitable)}.dash-status.restricted{background:color-mix(in srgb, var(--d-restricted) 14%, #fff);color:#9a6b00;border-color:color-mix(in srgb, var(--d-restricted) 32%, transparent)}.dash-status.restricted i{background:var(--d-restricted)}.dash-status.unsafe{background:color-mix(in srgb, var(--d-unsafe) 12%, #fff);color:var(--d-unsafe);border-color:color-mix(in srgb, var(--d-unsafe) 28%, transparent)}.dash-status.unsafe i{background:var(--d-unsafe)}.dash-status.pending{background:var(--d-surface-low);color:var(--d-muted);border-color:var(--d-border)}.dash-status.pending i{background:var(--d-outline)}.dash-cell-action{text-align:right}.dash-eye-button{border:1px solid var(--d-border);width:32px;height:32px;color:var(--d-secondary,#505f76);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.dash-eye-button:hover{color:var(--d-primary);border-color:var(--d-primary);background:color-mix(in srgb, var(--d-primary) 6%, #fff)}.dash-table-empty{text-align:center;color:var(--d-muted);padding:30px;font-size:13px}.entity-table-card .dash-table-head{flex-wrap:wrap}.entity-table-summary{color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.02em;font-size:11px;font-weight:500}.dash-table.entity-table{min-width:1160px}.entity-geo{color:var(--d-muted,#444651);white-space:nowrap;font-size:12px;font-weight:500}.dash-table.entity-table th.num,.dash-table.entity-table td.num{text-align:right;font-variant-numeric:tabular-nums}.dash-table.entity-table th.col-danger,.dash-table.entity-table td.col-danger{color:var(--d-unsafe,#ef4444)}.dash-table.entity-table th.col-warning,.dash-table.entity-table td.col-warning{color:#9a6b00}.dash-table.entity-table th.col-success,.dash-table.entity-table td.col-success{color:var(--d-habitable,#22c55e)}.dash-table.entity-table th.col-primary,.dash-table.entity-table td.col-primary{color:var(--d-primary,#00236f);font-weight:700}.entity-type{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface-low,#f2f4f6);min-height:26px;color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:10px;font-weight:500;display:inline-flex}.dash-table.entity-table .entity-table-total td{background:var(--d-surface-low,#f2f4f6);border-top:1px solid var(--d-border,#cbd5e1);font-weight:800}.erde-dash .habitability-kpis{background:var(--d-surface);border:1px solid var(--d-border);border-radius:12px;gap:14px;padding:18px;display:grid}.erde-dash .habitability-kpis-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.erde-dash .habitability-kpis-head h2{color:var(--d-primary);margin:0;font-size:20px;font-weight:700}.erde-dash .habitability-kpis-head span{color:var(--d-muted);font-size:13px}.erde-dash .habitability-kpis .stats-grid{gap:14px}.erde-dash .dashboard-map-band{border-color:var(--d-border);background:var(--d-surface);border-radius:12px}.erde-dash .dashboard-map-band h2{color:var(--d-primary)}.erde-dash .dashboard-map-band p{color:var(--d-muted)}.erde-dash .entity-stat-grid{gap:14px}.erde-dash .entity-stat-card{border-color:var(--d-border);border-radius:12px;padding:18px}.erde-dash .entity-stat-card h2{color:var(--d-primary)}.erde-dash .entity-stat-card dl div{background:var(--d-surface-low);border-color:var(--d-border)}.erde-dash .entity-stat-card dd{color:var(--d-primary)}.erde-dash .general-filters{border-color:var(--d-border);background:var(--d-surface)}.erde-dash .entity-filter-chip{border-color:var(--d-border);background:var(--d-surface);color:var(--d-muted)}.erde-dash .entity-filter-chip:hover{border-color:var(--d-outline)}.erde-dash .entity-filter-chip.active{background:var(--d-primary);border-color:var(--d-primary);color:var(--d-on-primary);box-shadow:inset 0 -3px #0000002e}.date-range-filter{flex-wrap:wrap;align-items:flex-end;gap:10px;padding-top:2px;display:flex}.date-range-label{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface-low,#f2f4f6);min-height:40px;color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.04em;text-transform:uppercase;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:11px;font-weight:500;display:inline-flex}.date-range-field{gap:4px;display:grid}.date-range-field>span{color:var(--d-muted,#444651);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700}.date-range-field input[type=date]{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface,#fff);min-height:38px;color:var(--d-ink,#191c1e);font:inherit;font-family:var(--font-mono,"JetBrains Mono", monospace);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-radius:8px;padding:0 10px;font-size:12px;transition:border-color .14s,box-shadow .14s}.date-range-field input[type=date]:focus{border-color:var(--d-primary,#00236f);box-shadow:0 0 0 2px color-mix(in srgb, var(--d-primary,#00236f) 16%, transparent);outline:0}.date-range-reset{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface,#fff);min-height:38px;color:var(--d-primary,#00236f);font:inherit;cursor:pointer;border-radius:8px;padding:0 14px;font-size:12px;font-weight:700;transition:border-color .14s,background .14s,color .14s}.date-range-reset:hover{border-color:var(--d-primary,#00236f);background:color-mix(in srgb, var(--d-primary,#00236f) 6%, #fff)}@media (width<=1080px){.dash-kpi-grid,.dash-kpi-grid.four{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=980px){.dash-charts-row{grid-template-columns:1fr}}@media (width<=900px){.dash-split{grid-template-columns:1fr}}@media (width<=720px){.dash-kpi-grid,.dash-kpi-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-header{padding:16px}.dash-header h1{font-size:24px}}@media (width<=480px){.erde-dash .metric-card{min-height:108px;padding:13px 12px 12px}.erde-dash .metric-card strong{font-size:32px}.dash-table-head{padding:12px 14px}.dash-table th,.dash-table td{padding:10px 14px}}@media (width>=901px){.app-frame .main-canvas{padding-left:312px}.app-frame .top-bar{z-index:40;width:272px;height:auto;color:var(--ink);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border:1px solid #d9dfebe6;border-radius:22px;flex-direction:column;justify-content:flex-start;gap:22px;padding:18px;display:flex;position:fixed;inset:16px auto 16px 16px;box-shadow:0 24px 70px #18243b1f}.app-frame .top-bar .brand-button{width:100%;color:var(--primary);justify-content:flex-start;padding:6px;font-size:20px}.app-frame .top-bar .brand-button>span:last-child{text-align:left;gap:1px;font-size:22px;display:grid}.app-frame .top-bar .brand-button small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.app-frame .top-bar .desktop-nav{gap:8px;width:100%;display:grid}.app-frame .top-bar .desktop-nav button{width:100%;min-height:46px;color:var(--muted);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:14px;justify-content:flex-start;align-items:center;gap:10px;padding:0 12px;font-size:14px;font-weight:700;display:flex}.app-frame .top-bar .desktop-nav button:hover,.app-frame .top-bar .desktop-nav button.active{color:var(--primary-container);background:#edf4ff}.app-frame .top-bar .desktop-nav button.active{box-shadow:inset 3px 0 0 var(--primary-container)}.app-frame .top-bar .mobile-session-switcher{display:none}.app-frame .top-bar .top-actions{gap:10px;width:100%;margin-top:auto;display:grid}.app-frame .top-bar .operator-card{border:1px solid var(--outline);background:linear-gradient(#fff,#f6f8fc);border-radius:16px;gap:2px;padding:14px;display:grid}.app-frame .top-bar .operator-card span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.app-frame .top-bar .operator-card strong{color:var(--primary);font-size:16px;line-height:20px}.app-frame .top-bar .operator-card small{color:var(--muted);font-weight:800}.app-frame .top-bar .status-pill,.app-frame .top-bar .sync-button,.app-frame .top-bar .logout-button,.app-frame .top-bar .icon-button{border-radius:14px;width:100%}.app-frame .top-bar .status-pill{min-height:40px;color:var(--success);background:var(--success-bg);justify-content:center;align-items:center;gap:8px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex}.app-frame .top-bar .status-pill.offline{color:var(--error);background:var(--error-bg)}.app-frame .top-bar .sync-button{border:1px solid var(--outline);background:var(--primary);color:#fff;min-height:42px;font:inherit;justify-content:center;align-items:center;gap:8px;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.app-frame .top-bar .logout-button{border:1px solid var(--outline);min-height:40px;color:var(--muted);cursor:pointer;background:#fff;padding:0 10px;font-size:12px;font-weight:700}.app-frame .top-bar .icon-button{place-items:center;min-height:42px;display:grid}.app-frame .top-bar .sync-button.mobile-sync-button,.app-frame .top-bar .icon-button{display:none}}.erde-dash{font-size:14px}.erde-dash.view-stack{gap:28px}.erde-dash .dash-header h1{letter-spacing:-.015em;font-size:25px;font-weight:700}.erde-dash .dash-header p,.erde-dash .evo-head p,.erde-dash .kpi-timeline-head p{color:var(--d-muted,#444651);font-size:13px}.erde-dash .dash-card-head h3,.erde-dash .evo-head h3,.erde-dash .kpi-timeline-head h2,.erde-dash .dash-table-head h3,.erde-dash .habitability-kpis-head h2,.erde-dash .section-toolbar h2{letter-spacing:-.01em;font-size:16px;font-weight:600}.erde-dash .metric-card strong{letter-spacing:-.01em;font-size:34px;font-weight:700}.erde-dash .dash-donut-center strong{letter-spacing:-.015em;font-size:34px;font-weight:700}.erde-dash .metric-card div{letter-spacing:.04em;font-size:10.5px;font-weight:600}.erde-dash .metric-card div svg{color:var(--d-muted,#444651)}.erde-dash .metric-chip{padding:1px 7px;font-size:9px}.erde-dash .dash-header-pill{letter-spacing:.02em;min-height:30px;font-size:11px}.erde-dash .dash-table th{letter-spacing:.05em;font-size:9.5px;font-weight:500}.erde-dash .dash-table td{font-size:12.5px}.erde-dash .dash-cell-title{font-weight:600}.erde-dash .evo-legend,.erde-dash .radar-legend,.erde-dash .entity-table-summary,.erde-dash .radar-scale-note,.erde-dash .entity-type{font-size:10px}.erde-dash .entity-filter-chip{min-height:30px;font-size:11px;font-weight:600}.erde-dash .metric-card,.erde-dash .kpi-timeline-band,.erde-dash .dash-table-card,.erde-dash .radar-card,.erde-dash .dash-donut-card{box-shadow:0 1px 2px #17202e0a}.dash-selection-bar{border:1px solid color-mix(in srgb, var(--d-primary,#00236f) 32%, var(--d-border,#cbd5e1));background:color-mix(in srgb, var(--d-primary,#00236f) 6%, #fff);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.dash-selection-bar span{color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:500}.dash-selection-bar strong{color:var(--d-primary,#00236f);font-size:13px;font-weight:700}.dash-selection-bar small{color:var(--d-muted,#444651);font-size:12px}.dash-selection-clear{border:1px solid var(--d-border,#cbd5e1);min-height:30px;color:var(--d-primary,#00236f);font:inherit;cursor:pointer;background:#fff;border-radius:8px;margin-left:auto;padding:0 12px;font-size:11px;font-weight:700;transition:border-color .14s,background .14s}.dash-selection-clear:hover{border-color:var(--d-primary,#00236f);background:color-mix(in srgb, var(--d-primary,#00236f) 6%, #fff)}.evidence-preview{background:var(--surface-mid);width:100%}.evidence-preview-loading,.evidence-preview-media,.evidence-preview-placeholder{aspect-ratio:4/3;width:100%}.evidence-preview-media{object-fit:cover;background:var(--surface-mid);display:block}.evidence-preview-placeholder{color:var(--primary);text-align:center;background:linear-gradient(135deg, #2259bf14, #00204624), var(--surface);align-content:center;place-items:center;gap:6px;padding:14px;display:grid}.evidence-preview-placeholder.compact{gap:4px;padding:8px}.evidence-preview-placeholder strong{font-size:12px;line-height:16px}.evidence-preview-placeholder.compact strong{font-size:10px;line-height:12px}.evidence-preview-link{color:var(--secondary);font-size:11px;font-weight:800;text-decoration:none}.evidence-preview-link:hover,.evidence-preview-link:focus-visible{text-decoration:underline}.login-view{background:radial-gradient(1000px 500px at 20% -10%,#2563eb1f,#0000),#f7f9ff;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border:1px solid #e3e8f0;border-radius:14px;flex-direction:column;gap:16px;width:100%;max-width:400px;padding:32px 28px;display:flex;box-shadow:0 18px 45px #181c2014}.login-brand{text-align:center;margin-bottom:8px}.login-brand .brand-mark{color:#fff;background:linear-gradient(135deg,#2563eb,#1e40af);border-radius:12px;justify-content:center;align-items:center;width:52px;height:52px;display:inline-flex}.login-brand h1{letter-spacing:2px;color:#181c20;margin:12px 0 4px;font-size:24px}.login-brand p{color:#5b6472;margin:0;font-size:13px}.login-field{flex-direction:column;gap:6px;display:flex}.login-field span{color:#3c4552;font-size:12px;font-weight:600}.login-field input{color:#181c20;background:#fbfcfe;border:1px solid #d5dbe6;border-radius:8px;padding:11px 12px;font-size:15px;transition:border-color .15s,box-shadow .15s}.login-field input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.login-password-wrap{position:relative}.login-password-wrap input{box-sizing:border-box;width:100%;padding-right:42px}.login-password-toggle{color:#8a93a3;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;transition:color .15s,background .15s,transform 50ms;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.login-password-toggle:hover{color:#2563eb;background:#2563eb14}.login-password-toggle:active:not(:disabled){transform:translateY(-50%)scale(.94)}.login-password-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px #2563eb33}.login-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;font-size:13px}.login-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1e40af);border:none;border-radius:8px;margin-top:4px;padding:12px;font-size:15px;font-weight:600;transition:filter .15s,transform 50ms}.login-submit:hover:not(:disabled){filter:brightness(1.06)}.login-submit:active:not(:disabled){transform:translateY(1px)}.login-submit:disabled{opacity:.6;cursor:default}.login-hint{text-align:center;color:#8a93a3;margin:4px 0 0;font-size:12px}.metric-card.filterable{cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.metric-card.filterable:hover{border-color:color-mix(in srgb, var(--d-primary,#00236f) 36%, var(--d-border,#cbd5e1));transform:translateY(-2px);box-shadow:0 10px 22px -16px #00236f59}.metric-card.filterable:active{transform:translateY(0)}.metric-card.filterable.active{border-color:color-mix(in srgb, var(--d-primary,#00236f) 52%, var(--d-border,#cbd5e1));box-shadow:0 0 0 2px color-mix(in srgb, var(--d-primary,#00236f) 16%, transparent)}.metric-chip{font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.04em;text-transform:uppercase;border:1px solid color-mix(in srgb, var(--d-primary,#00236f) 24%, transparent);background:color-mix(in srgb, var(--d-primary,#00236f) 8%, #fff);color:var(--d-primary,#00236f);white-space:nowrap;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:10px;font-style:normal;font-weight:500}.metric-trend{font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.02em;align-items:center;gap:4px;font-size:11px;font-weight:500;display:inline-flex}.metric-trend.up{color:var(--d-habitable,#22c55e)}.metric-trend.down{color:var(--d-unsafe,#ef4444)}.metric-trend.flat{color:var(--d-muted,#444651)}.metric-spark{opacity:.5;pointer-events:none;width:100%;height:46%;color:var(--d-primary,#00236f);position:absolute;bottom:0;left:0;right:0}.metric-spark-line{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.metric-progress{background:var(--d-surface-low,#f2f4f6);border:1px solid var(--d-border,#cbd5e1);border-radius:999px;width:100%;height:6px;overflow:hidden}.metric-progress span{background:var(--d-primary,#00236f);border-radius:999px;height:100%;transition:width .5s;display:block}.kpi-timeline-band{background:var(--d-surface,#fff);border:1px solid var(--d-border,#cbd5e1);border-radius:12px;gap:14px;padding:18px;display:grid}.kpi-timeline-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.kpi-timeline-head h2{color:var(--d-primary,#00236f);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:700}.kpi-timeline-head p{color:var(--d-muted,#444651);margin:6px 0 0;font-size:13px}.kpi-timeline-badge{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface-low,#f2f4f6);min-height:32px;color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.02em;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:11px;font-weight:500;display:inline-flex}.kpi-timeline-layout{grid-template-columns:minmax(0,1.5fr) minmax(210px,.72fr);align-items:stretch;gap:14px;display:grid}.kpi-timeline-scroll{-webkit-overflow-scrolling:touch;min-width:0;padding-bottom:4px;overflow:auto hidden}.kpi-timeline-scroll::-webkit-scrollbar{height:7px}.kpi-timeline-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--d-border,#cbd5e1) 80%, transparent);border-radius:999px}.kpi-timeline-chart{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface-low,#f2f4f6);border-radius:12px;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:10px;min-width:430px;min-height:210px;padding:14px;display:grid}.kpi-day{align-content:end;justify-items:center;gap:8px;min-width:0;display:grid}.kpi-day strong{color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);font-size:12px;font-weight:500;line-height:1}.kpi-day-track{border:1px solid color-mix(in srgb, var(--d-border,#cbd5e1) 70%, transparent);background:#e9eef3;border-radius:999px;align-items:flex-end;width:100%;max-width:42px;height:118px;padding:3px;transition:box-shadow .22s;display:flex}.kpi-day-stack{background:color-mix(in srgb, var(--d-primary,#00236f) 12%, transparent);border-radius:999px;flex-direction:column;justify-content:flex-end;width:100%;min-height:4px;transition:height .5s;display:flex;overflow:hidden}.kpi-day-stack .approved{background:var(--d-habitable,#22c55e);width:100%;display:block}.kpi-day-stack .pending{background:var(--d-restricted,#eab308);width:100%;display:block}.kpi-day span{color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.02em;font-size:10px;font-weight:500}.kpi-day.active strong,.kpi-day.active span{color:var(--d-primary,#00236f);font-weight:700}.kpi-day.active .kpi-day-track{box-shadow:0 0 0 2px color-mix(in srgb, var(--d-primary,#00236f) 18%, transparent);border-color:color-mix(in srgb, var(--d-primary,#00236f) 46%, var(--d-border,#cbd5e1))}.kpi-accumulated-card{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface,#fff);border-radius:12px;align-content:center;gap:2px;margin:0;padding:14px;display:grid}.kpi-accumulated-card div{border-bottom:1px dashed var(--d-border,#cbd5e1);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:9px 2px;display:grid}.kpi-accumulated-card div:last-child{border-bottom:0}.kpi-accumulated-card dt{color:var(--d-muted,#444651);font-size:12px;font-weight:600}.kpi-accumulated-card dd{color:var(--d-primary,#00236f);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:700}.kpi-accumulated-card div:nth-child(2) dd{color:var(--d-primary,#00236f)}.kpi-accumulated-card div:last-child dd{color:var(--d-unsafe,#ef4444)}@media (width<=768px){.kpi-timeline-layout{grid-template-columns:1fr}.kpi-timeline-chart{gap:8px;min-width:390px;min-height:176px;padding:10px}.kpi-day-track{max-width:34px;height:92px}.kpi-accumulated-card dd{font-size:19px}}.dash-donut-card{background:var(--d-surface,#fff);border:1px solid var(--d-border,#cbd5e1);border-radius:12px;flex-direction:column;gap:14px;padding:18px;display:flex}.dash-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.dash-card-head h3{color:var(--d-ink,#191c1e);letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.dash-donut{justify-content:center;display:flex}.dash-donut-ring{width:186px;height:186px;position:relative}.dash-donut-svg{width:100%;height:100%}.dash-donut-track{stroke:var(--d-surface-low,#eceef0)}.dash-donut-seg{transition:stroke-dasharray .9s,stroke-dashoffset .9s}.dash-donut-center{flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.dash-donut-center strong{color:var(--d-primary,#00236f);letter-spacing:-.02em;font-size:40px;font-weight:800;line-height:1}.dash-donut-center span{color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.dash-donut-legend{gap:6px;margin:0;padding:0;list-style:none;display:grid}.dash-donut-legend li{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface,#fff);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.dash-donut-legend i{border-radius:999px;width:10px;height:10px;display:inline-block}.dash-donut-legend i.seg-habitable{background:var(--d-habitable,#22c55e)}.dash-donut-legend i.seg-restricted{background:var(--d-restricted,#eab308)}.dash-donut-legend i.seg-unsafe{background:var(--d-unsafe,#ef4444)}.dash-donut-legend span{color:var(--d-ink,#191c1e);font-size:13px;font-weight:600}.dash-donut-legend b{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--d-ink,#191c1e);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.dash-donut-legend b em{color:var(--d-muted,#444651);font-style:normal}.evo-card{background:var(--d-surface,#fff);border:1px solid var(--d-border,#cbd5e1);border-radius:12px;flex-direction:column;gap:14px;min-height:0;padding:18px;display:flex}.evo-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.evo-head h3{color:var(--d-ink,#191c1e);letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.evo-head p{color:var(--d-muted,#444651);margin:4px 0 0;font-size:12px}.evo-toggle{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface-low,#f2f4f6);border-radius:999px;gap:4px;padding:3px;display:inline-flex}.evo-toggle button{font:inherit;color:var(--d-muted,#444651);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:5px 14px;font-size:11px;font-weight:700;transition:background .14s,color .14s}.evo-toggle button:hover{color:var(--d-primary,#00236f)}.evo-toggle button.active{background:var(--d-primary,#00236f);color:var(--d-on-primary,#fff)}.evo-canvas{border:1px solid var(--d-border,#cbd5e1);background:var(--d-surface-low,#f2f4f6);border-radius:10px;flex:1;min-height:300px;position:relative;overflow:hidden}.evo-svg{width:100%;height:100%;animation:.42s evoFade;display:block}.evo-grid{stroke:#e3e7eb;stroke-width:1px}.evo-line{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:1.1s forwards evoDraw}.evo-card g circle{filter:drop-shadow(0 1px 1px #0000002e)}@keyframes evoDraw{to{stroke-dashoffset:0}}@keyframes evoFade{0%{opacity:0}to{opacity:1}}.evo-labels{pointer-events:none;position:absolute;inset:0}.evo-datalabel{font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.01em;white-space:nowrap;text-shadow:0 1px #ffffffd9;font-size:9px;font-weight:700;line-height:1;position:absolute;transform:translate(-50%,-140%)}.evo-axis-y{writing-mode:vertical-rl;font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.1em;text-transform:uppercase;color:var(--d-outline,#757682);pointer-events:none;white-space:nowrap;font-size:9px;font-weight:500;position:absolute;top:50%;left:14px;transform:translateY(-50%)rotate(180deg)}.evo-axis-x{font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.06em;text-transform:uppercase;color:var(--d-outline,#757682);pointer-events:none;white-space:nowrap;font-size:9px;font-weight:500;position:absolute;bottom:9px;left:50%;transform:translate(-50%)}.evo-legend{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.evo-legend span{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--d-muted,#444651);align-items:center;gap:6px;font-size:11px;font-weight:500;display:inline-flex}.evo-legend i{border-radius:999px;width:9px;height:9px}.evo-legend .evo-total{color:var(--d-outline,#757682);margin-left:auto}@media (width<=480px){.evo-canvas{min-height:240px}}.radar-card{background:var(--d-surface,#fff);border:1px solid var(--d-border,#cbd5e1);border-radius:12px;flex-direction:column;gap:14px;padding:18px;display:flex}.radar-scale-note{color:var(--d-muted,#444651);font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.02em;font-size:10px;font-weight:500}.radar-canvas{justify-content:center;align-items:center;min-height:260px;display:flex}.radar-svg{width:100%;max-width:264px;height:auto}.radar-grid{fill:none;stroke:#e3e7eb;stroke-width:1px}.radar-label{font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:.02em;text-transform:uppercase;font-size:9px;font-weight:500}.radar-tick{font-family:var(--font-mono,"JetBrains Mono", monospace);fill:var(--d-outline,#757682);text-anchor:start;font-size:6.5px;font-weight:500}.radar-value{font-family:var(--font-mono,"JetBrains Mono", monospace);paint-order:stroke;stroke:#ffffffeb;stroke-width:2.5px;stroke-linejoin:round;font-size:7px;font-weight:700}.radar-entity{transition:opacity .2s}.radar-legend{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;display:flex}.radar-legend span{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--d-muted,#444651);align-items:center;gap:6px;font-size:11px;font-weight:500;display:inline-flex}.radar-legend i{border-radius:999px;width:9px;height:9px}.radar-empty{text-align:center;color:var(--d-muted,#444651);font-size:12px}@media (width<=480px){.radar-canvas{min-height:200px}.radar-svg{max-width:220px}}.form-section{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);padding:24px}.form-section-title{color:var(--primary);align-items:center;gap:10px;margin-bottom:24px;display:flex}.form-section-title h2{margin:0;font-size:24px;line-height:32px}.field{gap:7px;display:grid}.field.wide{grid-column:1/-1}.field span,.binary-field>span,.checkbox-panel legend{color:var(--muted);font-size:14px;font-weight:800}.field input,.field select,.field textarea{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface);width:100%;min-height:48px;color:var(--ink);font:inherit;outline:0;padding:10px 12px}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field select:focus,.field textarea:focus,.search-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #00204629}.field.has-error input,.field.has-error select{border-color:var(--error)}.field small{color:var(--error);font-weight:700}.checkbox-panel{border:1px solid var(--outline);border-radius:var(--radius);margin:0;padding:16px}.checkbox-panel div{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.checkbox-panel label{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface-low);cursor:pointer;align-items:center;gap:8px;min-height:40px;padding:0 10px;display:inline-flex}.checkbox-panel input{accent-color:var(--primary)}.binary-field{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface);padding:14px}.binary-field div{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px;display:grid}.binary-field button{border:1px solid var(--outline);background:var(--surface-low);border-radius:var(--radius);min-height:40px;color:var(--ink);cursor:pointer;font-weight:700}.binary-field button.active{background:var(--primary);border-color:var(--primary);color:#fff}.form-pager{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.form-pager>span{color:var(--muted);font-weight:700}.save-message.warning{color:var(--error);font-weight:900}.compare-field{border:1px solid var(--outline);border-radius:var(--radius);background:var(--surface-low);padding:10px 12px}.compare-field dt{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:800}.compare-field dd{color:var(--ink);margin:0;font-size:14px}.bottom-nav{display:none}.bottom-nav button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0}@media (width<=900px){.bottom-nav{z-index:50;border:1px solid var(--outline);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-radius:16px;grid-template-columns:repeat(4,1fr);height:60px;display:grid;position:fixed;bottom:8px;left:8px;right:8px;box-shadow:0 18px 46px #18243b2e}.bottom-nav button{color:var(--muted);align-content:center;justify-items:center;gap:4px;font-size:10px;font-weight:800;display:grid}.bottom-nav button.active{color:var(--secondary)}}.top-bar{background:var(--primary);color:#fff;z-index:20;border-bottom:1px solid var(--outline);justify-content:space-between;align-items:center;gap:24px;height:64px;padding:0 48px;display:flex;position:sticky;top:0}.brand-button{min-height:44px;color:inherit;font-size:20px;font-weight:800;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;display:inline-flex}.desktop-nav{align-items:center;gap:6px;display:flex}.desktop-nav button,.icon-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0}.desktop-nav button{color:#ffffffc7;border-radius:var(--radius);min-height:44px;padding:0 12px;font-weight:700}.desktop-nav button:hover,.desktop-nav button.active,.icon-button:hover{color:#fff;background:#ffffff1f}.top-actions{align-items:center;gap:12px;display:flex}.status-pill{border-radius:var(--radius);align-items:center;gap:8px;min-height:36px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex}.status-pill.online{color:#e3f8e8;background:#d8f0df29}.status-pill.offline{color:#ffe4df;background:#ffdad62e}.sync-button{color:#fff;border-radius:var(--radius);min-height:36px;font:inherit;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff3d;align-items:center;gap:8px;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.sync-button.warning{border-color:#ffdad6cc}.sync-button:disabled{opacity:.72;cursor:not-allowed}.spinning{animation:.9s linear infinite spin}.icon-button{border-radius:var(--radius);place-items:center;width:44px;height:44px;display:grid}
