:root{--ink:#253a35;--muted:#74817b;--line:#e4e9e5;--paper:#fff;--surface:#f5f7f4;--accent:#28594b;--sidebar:204px;--panel:308px;font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;color:var(--ink);font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--paper)}button,a,input,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #638f7f;outline-offset:3px}button{border:0;background:none}svg{display:block}h1,h2,h3,p{margin:0}button,a{touch-action:manipulation}.app-shell{min-height:100dvh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:34px 18px 24px;background:#f5f7f3;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:40}.brand{display:flex;align-items:baseline;gap:10px;margin:0 9px 51px}.brand strong{font-size:30px;letter-spacing:-1.6px;font-weight:550}.brand span{font-size:12px;color:#607367}.nav-section{margin-top:25px}.nav-section h2,.nav-section-title,.nav-caption{font-size:10px;font-weight:500;letter-spacing:1.4px;color:#8c9890;padding:0 12px;margin:0 0 12px}.nav-link{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:11px 13px;border-radius:6px;color:#68776e;font-size:13px;margin-bottom:5px}.nav-link.active,.nav-link[aria-current=page]{background:#e6ede5;color:#274e40;font-weight:600}.nav-link:hover{background:#ecf0e9}.nav-floor{display:block;margin:0 0 3px 17px;padding:9px 17px;min-height:37px;font-size:12px;color:#738075;border-left:1px solid #d6dfd4}.nav-floor.active{border-left:2px solid #39654f;color:#2c5745;background:#ecf1e8}.sidebar-footer{margin-top:auto;padding:22px 11px 0;font-size:11px;color:#8a978e;line-height:1.8}.main{grid-column:2;min-width:0}.topbar{height:66px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 40px;gap:14px}.breadcrumbs{display:flex;gap:10px;align-items:center;font-size:12px;color:#7c8b82}.breadcrumbs a:hover{color:var(--ink)}.breadcrumbs span:last-child{color:#354c40}.preview-label{font-size:10px;letter-spacing:1px;color:#8b978e}.mobile-menu{display:none}.page{max-width:1510px;margin:auto;padding:42px 44px 60px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px;flex-wrap:wrap}.eyebrow{font-size:10px;letter-spacing:2px;color:#839387;margin-bottom:12px}.page-heading h1{font-size:32px;font-weight:550;letter-spacing:-.7px;line-height:1.35}.page-meta{font-size:12px;color:var(--muted);line-height:1.7}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0 0 34px;margin-bottom:38px;border-bottom:1px solid var(--line);gap:24px}.metric{padding:0 24px;border-left:1px solid var(--line)}.metric:first-child{padding-left:0;border-left:0}.metric-label{font-size:12px;color:#6b7c71;margin-bottom:12px}.metric-value{font-size:35px;letter-spacing:-1.5px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.metric-value small{font-size:11px;letter-spacing:0;margin-left:8px;color:#7e8b83;font-weight:400}.metric-note{font-size:11px;color:#8a968d;margin-top:10px;line-height:1.6}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 18px}.section-heading h2{font-size:17px;font-weight:550}.section-heading p,.section-heading>span{font-size:11px;color:var(--muted)}.building-table-head,.building-row{display:grid;grid-template-columns:minmax(170px,1.1fr) minmax(115px,.8fr) minmax(115px,.8fr) minmax(160px,1.2fr) 24px;align-items:center;gap:20px}.building-table-head{min-height:38px;color:#8a968e;font-size:10px}.building-row{padding:25px 0;border-top:1px solid var(--line)}.building-identity{display:flex;gap:16px;align-items:center}.building-number{width:46px;height:52px;display:grid;place-items:center;font-size:25px;font-weight:400;color:#63806d;background:#eef2eb;border-radius:3px;letter-spacing:-1px;flex-shrink:0}.building-name{font-size:16px;font-weight:550;display:inline-block;padding:5px 0}.building-name:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.building-meta{font-size:11px;color:#8a968e;margin-top:5px}.building-area{font-variant-numeric:tabular-nums;font-size:17px;letter-spacing:-.3px}.building-area small{display:none}.composition-bar{height:7px;display:flex;overflow:hidden;border-radius:2px;background:#edf0ec}.composition-bar span{height:100%;min-width:0}.composition-caption{display:flex;justify-content:space-between;font-size:10px;color:#8a958c;margin-top:9px}.building-arrow{color:#8c9d91;font-size:19px;padding:8px 0}.composition-legend{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:20px;color:var(--muted);font-size:11px}.composition-legend i,.legend-dot{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:7px}.floor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.floor-card{border:1px solid var(--line);border-radius:7px;overflow:hidden;background:white;transition:border-color .15s}.floor-card:hover{border-color:#a7b7a7}.floor-thumb{display:block;background:#f7f9f5;width:100%;height:205px;padding:25px 28px;border-bottom:1px solid var(--line)}.floor-thumb svg{width:100%;height:100%;pointer-events:none}.floor-thumb>span{height:100%;display:flex;align-items:center;justify-content:center;color:#98a296;font-size:12px}.floor-card-body{padding:20px}.floor-card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:19px;font-weight:550}.floor-card-title a:hover{color:var(--accent)}.floor-card-metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px 8px}.floor-card-metrics>div,.floor-card-metrics>span{display:flex;flex-direction:column;gap:7px;font-size:10px;color:var(--muted)}.floor-card-metrics strong{font-weight:500;font-size:16px;color:var(--ink);font-variant-numeric:tabular-nums}.floor-card-metrics small{font-size:10px}.floor-page{height:calc(100dvh - 66px);display:flex;flex-direction:column;min-height:520px}.floor-header{padding:25px 30px 20px;display:flex;align-items:center;flex-wrap:wrap;gap:20px 30px;border-bottom:1px solid var(--line)}.floor-heading h1{font-size:23px;font-weight:550}.floor-heading span,.floor-heading p{font-size:11px;color:var(--muted);margin-top:7px}.floor-switcher{display:flex;gap:5px;align-items:center;margin-left:auto}.floor-switcher a,.floor-switcher button{min-width:38px;height:36px;display:grid;place-items:center;font-size:12px;border-radius:4px;color:#758579}.floor-switcher .active{background:#e8efe6;color:#244f3d;font-weight:600}.floor-switcher a:hover{background:#f0f4ed}.floor-metrics{display:flex;gap:25px;flex-basis:100%;color:#7c8b80;font-size:11px}.floor-metrics strong{font-size:14px;font-weight:500;color:#3f5547;margin:0 5px;font-variant-numeric:tabular-nums}.floor-workspace{display:grid;grid-template-columns:minmax(0,1fr) var(--panel);flex:1;min-height:0}.drawing-area{display:flex;flex-direction:column;min-width:0;min-height:0;background:#fafbf8}.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 20px;border-bottom:1px solid #e9ede6;background:#fff}.mode-switch{display:inline-flex;padding:3px;background:#f0f3ee;border-radius:6px;gap:2px}.mode-switch button{font-size:12px;padding:7px 14px;border-radius:4px;min-height:32px;color:#83907f}.mode-switch button.active,.mode-switch button[aria-pressed=true]{background:#fff;color:#2b5340;box-shadow:0 1px 3px #253a3510}.filter-summary{font-size:11px;color:#6d8073;display:flex;gap:8px;align-items:center}.filter-summary button{font-size:15px}.canvas-wrap{position:relative;flex:1;min-height:0;overflow:hidden}#planMount{position:absolute;inset:0}#planMount svg{width:100%;height:100%}.map-controls{position:absolute;right:18px;bottom:24px;display:flex;gap:0;background:#fff;border:1px solid #dce4da;border-radius:5px;box-shadow:0 2px 8px #253a3506;overflow:hidden}.map-controls button{width:37px;height:37px;font-size:17px;border-right:1px solid #e6ece1}.map-controls button:last-child{border:0}.map-controls button:hover{background:#f0f5eb}.map-legend{position:absolute;left:20px;top:14px;display:flex;gap:12px;flex-wrap:wrap;font-size:10px;color:#7e8c80;max-width:calc(100% - 40px);pointer-events:none}.map-legend span{display:inline-flex;align-items:center;gap:5px}.map-legend i{display:inline-block;width:7px;height:7px;border-radius:2px}.detail-panel{background:#fff;border-left:1px solid var(--line);min-width:0;overflow:auto;overscroll-behavior:contain}.sheet-toggle{display:none}.panel-content{padding:24px 22px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:23px}.panel-heading h2{font-size:16px;font-weight:550}.panel-heading span,.panel-heading small{font-size:10px;color:var(--muted)}.panel-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:10px}.panel-tabs button{font-size:12px;padding:10px 0 12px;color:#94a08f;position:relative}.panel-tabs button.active{color:#31563d}.panel-tabs button.active:after{content:'';height:2px;background:#416c4d;position:absolute;bottom:-1px;left:0;right:0}.category-row,.region-row{width:100%;display:flex;align-items:center;text-align:left;gap:10px;min-height:47px;padding:10px 4px;border-bottom:1px solid #eff2ec;font-size:12px;line-height:1.5}.category-row:hover,.region-row:hover{background:#f5f8f0}.category-row.active,.region-row.active{background:#edf3e6}.category-row i,.region-row i{width:8px;height:8px;border-radius:2px;flex-shrink:0}.category-row strong,.region-row strong{margin-left:auto;font-size:12px;font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}.category-row small,.region-row small{font-size:10px;color:var(--muted)}.region-row>span{max-width:150px}.region-row .status{font-size:10px}.detail-back{font-size:11px;padding:0 0 24px;color:#7b8e7d}.selection-card h2{font-weight:550;font-size:20px;line-height:1.6;margin-bottom:14px}.detail-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#6d8370;background:#eff4eb;padding:5px 8px;border-radius:3px}.detail-area{margin:27px 0;font-size:35px;letter-spacing:-1px;font-weight:500;font-variant-numeric:tabular-nums}.detail-area small{font-size:12px;letter-spacing:0;color:var(--muted);margin-left:7px}.detail-area span{display:block;font-size:11px;margin-bottom:8px;letter-spacing:0;color:var(--muted)}.detail-facts{margin:0}.detail-facts>div{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line);font-size:12px;gap:15px}.detail-facts dt{color:var(--muted)}.detail-facts dd{margin:0;text-align:right}.structure-details{margin-top:23px;border-top:1px solid var(--line);padding-top:18px;color:var(--muted);font-size:11px;line-height:1.8}.structure-details summary{cursor:pointer;min-height:30px}.structure-details>div{display:flex;justify-content:space-between;padding:5px 0}.empty-floor{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;color:#8c9b8e}.empty-floor h2{font-size:18px;font-weight:500}.empty-floor p{font-size:12px}.button{padding:10px 16px;border:1px solid var(--line);border-radius:5px;font-size:12px}.icon-button{padding:8px;min-width:38px;min-height:38px}.text-button{font-size:12px;color:#557361}.nav-backdrop{display:none}.main [hidden]{display:none!important}
@media(min-width:1550px){:root{--sidebar:226px;--panel:340px}.page{padding:52px 64px}.floor-grid{gap:27px}.floor-thumb{height:235px}.floor-header{padding:28px 36px}.panel-content{padding:28px}}
@media(max-width:1200px) and (min-width:761px){:root{--sidebar:176px;--panel:278px}.page{padding:34px 28px}.topbar{padding:0 28px}.metric-value{font-size:29px}.building-table-head,.building-row{grid-template-columns:minmax(135px,1fr) 100px 100px minmax(130px,1fr) 18px;gap:12px}.building-number{width:36px;height:45px;font-size:22px}.building-identity{gap:10px}.building-area{font-size:15px}.floor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.floor-header{padding:20px}.floor-metrics{gap:16px}.panel-content{padding:21px 17px}.brand{gap:7px}.brand span{font-size:10px}}
@media(max-width:760px){:root{--sidebar:248px;font-size:14px}.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:transform .2s ease;padding-top:max(30px,env(safe-area-inset-top));box-shadow:8px 0 35px #1e302617}.nav-open .sidebar{transform:translateX(0)}.nav-open .nav-backdrop{display:block;position:fixed;inset:0;background:#23362c55;z-index:35}.main{width:100%}.topbar{height:57px;padding:0 16px;justify-content:flex-start;position:relative;background:white;z-index:20}.mobile-menu{display:grid;place-items:center;width:34px;height:38px;padding:0;font-size:18px}.breadcrumbs{font-size:11px;gap:7px}.preview-label{margin-left:auto;font-size:9px;letter-spacing:0;white-space:nowrap}.page{padding:29px 20px 40px}.page-heading{margin-bottom:26px;gap:10px}.page-heading h1{font-size:27px}.eyebrow{font-size:9px;margin-bottom:8px}.page-meta{font-size:11px}.metrics{grid-template-columns:1fr 1fr;gap:22px 15px;margin-bottom:29px;padding-bottom:26px}.metric{border:0;padding:0}.metric:first-child{grid-column:1 / -1;padding-bottom:18px;border-bottom:1px solid var(--line)}.metric:first-child .metric-value{font-size:35px}.metric-label{font-size:11px;margin-bottom:9px}.metric-value{font-size:26px;letter-spacing:-.7px}.metric-value small{font-size:10px;margin-left:5px}.metric-note{margin-top:6px;font-size:10px}.section-heading{margin-bottom:14px}.section-heading h2{font-size:16px}.section-heading>span{font-size:10px}.building-table-head{display:none}.building-row{display:grid;grid-template-columns:1fr 1fr 20px;gap:17px 12px;padding:23px 0}.building-identity{grid-column:1 / 3;gap:12px}.building-number{width:39px;height:43px;font-size:23px}.building-name{font-size:17px}.building-meta{font-size:10px;margin-top:3px}.building-arrow{grid-column:3;grid-row:1;align-self:center}.building-area{font-size:20px;display:flex;flex-direction:column;gap:6px}.building-area:before{content:attr(data-label);font-size:10px;letter-spacing:0;color:var(--muted)}.building-area small{display:inline;font-size:10px;font-weight:400;color:var(--muted)}.building-composition{grid-column:1 / -1}.composition-bar{height:6px}.composition-caption{font-size:10px}.floor-grid{grid-template-columns:1fr;gap:18px}.floor-card{display:grid;grid-template-columns:130px minmax(0,1fr);min-height:158px}.floor-thumb{height:100%;padding:17px 12px;border-bottom:0;border-right:1px solid var(--line)}.floor-card-body{padding:17px 15px}.floor-card-title{font-size:18px;margin-bottom:15px}.floor-card-metrics{gap:11px 8px}.floor-card-metrics>div,.floor-card-metrics>span{font-size:9px}.floor-card-metrics strong{font-size:14px}.floor-page{height:calc(100dvh - 57px);min-height:0;overflow:hidden}.floor-header{padding:14px 16px 12px;gap:12px 10px;flex-shrink:0}.floor-heading h1{font-size:20px}.floor-heading span,.floor-heading p{display:none}.floor-switcher{gap:1px}.floor-switcher a,.floor-switcher button{min-width:32px;height:33px;font-size:11px}.floor-metrics{font-size:9px;gap:7px 14px;flex-wrap:wrap}.floor-metrics strong{font-size:12px;margin:0 3px}.floor-workspace{position:relative;display:flex;flex-direction:column;min-height:0;overflow:hidden}.drawing-area{flex:1;min-height:0;padding-bottom:86px}.map-toolbar{padding:9px 14px;gap:7px;min-height:52px}.mode-switch button{font-size:11px;padding:6px 12px;min-height:30px}.filter-summary{font-size:10px}.map-legend{left:14px;top:12px;gap:6px 9px;max-width:calc(100% - 28px);font-size:9px}.map-controls{right:12px;bottom:15px}.map-controls button{width:36px;height:36px}.detail-panel{position:absolute;inset:auto 0 0;width:100%;max-height:60%;border:1px solid #dde5d9;border-bottom:0;border-radius:15px 15px 0 0;box-shadow:0 -4px 20px #2d46320a;z-index:15;overflow:hidden;background:#fff;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom)}.sheet-toggle{display:flex;position:relative;flex-shrink:0;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:23px 20px 17px;min-height:76px;font-size:14px;font-weight:500}.sheet-toggle:before{content:'';position:absolute;top:8px;left:calc(50% - 17px);width:34px;height:3px;border-radius:3px;background:#d6dfd3}.sheet-toggle>span:last-child{font-size:11px;color:var(--muted)}.panel-content{padding:0 20px 22px;overflow-y:auto;overscroll-behavior:contain}.detail-panel[data-expanded=false] .panel-content{display:none}.detail-panel[data-expanded=true]{max-height:66%}.panel-heading{margin:6px 0 16px}.panel-heading h2{font-size:15px}.panel-tabs{margin-bottom:8px}.panel-tabs button{min-height:40px}.category-row,.region-row{min-height:46px;font-size:12px}.category-row strong,.region-row strong{font-size:13px}.region-row>span{max-width:none}.selection-card h2{font-size:20px;margin-bottom:10px}.detail-back{padding:4px 0 16px}.detail-area{font-size:32px;margin:18px 0}.detail-facts>div{padding:11px 0}.structure-details{margin-top:16px;padding-top:13px}.empty-floor{padding:20px;min-height:200px}.composition-legend{gap:12px;font-size:10px}.sidebar .nav-link{min-height:46px}.sidebar .nav-floor{min-height:42px}.main{overflow-x:clip}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Component alignment */
.nav-section{font-size:10px;letter-spacing:1px;color:#8c9890;padding:0 12px;margin:22px 0 10px}.nav-link{justify-content:flex-start;gap:12px}.nav-building-icon{width:18px;text-align:center;font-size:12px}.nav-floor{display:none;padding:0;margin:0 0 12px 22px;border:0}.nav-floor.visible{display:flex;flex-wrap:wrap;gap:3px}.nav-floor a{padding:8px 7px;border-radius:4px}.nav-floor a.active{background:#e6ede5;color:#28594b}.page-heading{display:block}.page-meta{margin-top:10px}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric{padding:0 16px}.metric-value{font-size:30px}.mobile-label{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.floor-switcher select{padding:9px 30px 9px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:5px;max-width:190px}.floor-heading h1 span{font-size:inherit;color:inherit}.category-row>span,.region-row>span{display:flex;align-items:center;gap:8px}.region-row>span>span>small{display:block;margin-top:3px}.selection-card .panel-heading{display:block}.selection-card h2{margin-top:12px}.structure-details dl{margin:0}.structure-details dl>div{display:flex;justify-content:space-between;padding:5px 0}.structure-details dd{margin:0}.status-tag{font-size:11px;background:#f0f2ee;padding:4px 8px;border-radius:3px}.basement-card .empty-floor{height:205px;background:#f7f9f5}.empty-floor>span{font-size:34px;font-weight:300}.loading-state{padding:60px;color:var(--muted)}.loading-state button{display:block;margin-top:18px}.floor-card-title h3{font-size:18px;font-weight:550}
@media(max-width:1200px) and (min-width:761px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:26px}.metric:nth-child(3){padding-left:0;border-left:0}}
@media(max-width:760px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 15px}.metric{padding:0}.metric:first-child{grid-column:auto;border:0;padding:0}.metric:first-child .metric-value,.metric-value{font-size:27px}.mobile-label{display:block;font-size:10px;letter-spacing:0;color:var(--muted)}.building-area:before{display:none}.floor-heading h1 span{display:inline}.floor-switcher select{font-size:11px;max-width:145px;padding:8px}.sheet-handle{display:none}.sheet-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.basement-card .empty-floor{height:100%;min-height:158px}.sidebar .nav-floor{min-height:0}}

#planMount g[role=button]{outline:none}#planMount g[role=button]:focus-visible path{stroke:#28594b;stroke-width:2px}.detail-panel[data-expanded=true] .sheet-chevron{transform:rotate(180deg)}
@media(max-width:760px){.detail-panel[data-expanded=true]{max-height:56%}.selection-card .panel-heading{margin-bottom:8px}.selection-card h2{font-size:18px;margin:8px 0}.detail-area{margin:12px 0;font-size:29px}.detail-facts>div{padding:9px 0}.sheet-toggle{min-height:62px;padding-top:20px;padding-bottom:12px}}

/* Account entry uses the same restrained palette as the project. */
.login-page{min-height:100dvh;display:grid;place-items:center;background:#f5f7f3;padding:32px 22px}.login-card{width:100%;max-width:380px}.login-brand{font-size:38px;font-weight:550;letter-spacing:-2px;display:flex;align-items:baseline;gap:14px;margin-bottom:62px}.login-brand span{font-size:13px;font-weight:400;letter-spacing:0;color:#74817b}.login-card h1{font-size:28px;font-weight:550;margin:10px 0 30px}.login-form{display:grid;gap:22px}.login-form label{display:grid;gap:9px;font-size:12px;color:#68796d}.login-form input{width:100%;height:48px;padding:0 13px;font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1px solid #d7e0d5;border-radius:6px;outline-offset:3px}.login-form input:focus{outline:2px solid #6d9e90;border-color:transparent}.login-error{font-size:12px;color:#a34436;line-height:1.6;min-height:19px;margin-top:-7px}.login-submit{height:47px;border-radius:6px;background:#28594b;color:#fff;font-size:14px;margin-top:-8px}.login-submit:hover{background:#204b3f}.login-submit:disabled{opacity:.6}.sidebar-footer{display:flex;flex-wrap:wrap;gap:7px 13px;align-items:center}.account-name{overflow-wrap:anywhere}.logout-button{padding:5px 0;font-size:11px}.nav-open{overflow:hidden}.sidebar nav{min-height:0;overflow-y:auto;overscroll-behavior:contain}.sidebar-footer{flex-shrink:0}.region-row>span>span{overflow-wrap:anywhere}.floor-switcher{min-width:0}.floor-switcher select{max-width:100%}.login-page button:focus-visible{outline:2px solid #6d9e90;outline-offset:3px}
@media(max-width:760px){.login-page{align-items:start;padding-top:15dvh}.login-brand{margin-bottom:44px}.login-card{max-width:345px}.sidebar-footer{padding-bottom:12px}.floor-heading{min-width:0}.floor-switcher{max-width:45%}.login-form input{font-size:16px}.topbar .breadcrumbs{min-width:0;flex-wrap:wrap}}

.perspective-slot{margin-left:auto;flex-shrink:0}.perspective-switch{display:flex;gap:2px;background:#f1f4ee;padding:3px;border-radius:6px}.perspective-switch button{padding:7px 11px;font-size:11px;color:#7c8b80;border-radius:4px}.perspective-switch button[aria-pressed=true]{background:white;color:#28594b;box-shadow:0 1px 3px #253a3510}.area-perspective-label{color:#7c8b80;font-size:11px}.lease-badge{display:inline-block;font-size:11px;line-height:1.5;color:#6b756d;background:#eef1eb;padding:4px 8px;border-radius:4px}.lease-badge[data-lease=full]{background:#e6efe8;color:#36684c}.lease-badge[data-lease=vacant]{background:#f5ebdc;color:#907042}.lease-badge[data-lease=partial]{background:#e8edf0;color:#5b7380}.floor-card-body>.lease-badge{margin:-5px 0 16px}.floor-metrics{align-items:center}.lease-panel-summary{border-bottom:1px solid var(--line);padding-bottom:19px;margin-bottom:24px}.lease-panel-summary dl{margin:16px 0 0}.lease-panel-summary dl>div{display:flex;justify-content:space-between;gap:12px;font-size:11px;padding:6px 0}.lease-panel-summary dt{color:var(--muted)}.lease-panel-summary dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.lease-panel-summary p,.region-basis-note{color:var(--muted);font-size:11px;line-height:1.8;margin-top:10px}.selection-card+.lease-panel-summary{margin-top:24px}.floor-card-metrics{align-items:start}
@media(max-width:760px){.topbar{gap:7px}.perspective-switch button{padding:7px 7px;font-size:10px}.perspective-switch{gap:0}.topbar .breadcrumbs{font-size:10px;gap:4px}.area-perspective-label{font-size:10px}.floor-card-title{margin-bottom:12px}.floor-card-body>.lease-badge{font-size:10px;margin-bottom:12px}.floor-card-metrics{grid-template-columns:1fr}.floor-card-metrics>div{gap:4px}.floor-card{min-height:190px}.lease-panel-summary{margin-bottom:18px;padding-bottom:15px}.floor-metrics{gap:6px 10px}.lease-panel-summary dl{margin-top:10px}}

.composition-caption{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:space-between}.composition-caption>span{float:none}.basement-plan-page .floor-workspace{grid-template-columns:1fr}.basement-plan-page .drawing-area{width:100%}.basement-plan-page .canvas-wrap{height:calc(100dvh - 240px);min-height:420px}.basement-card .floor-thumb{background:#fafbf7}

.parking-toolbar{flex-wrap:wrap;gap:12px 24px}.parking-legend{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:#52705e}.parking-legend i{width:11px;height:11px;background:#deeee5;border:1px solid #4c8569;border-radius:2px}.parking-legend.mechanical{color:#95703a}.parking-legend.mechanical i{background:#f3dfb9;border-color:#a77933}.parking-selection{margin-left:auto;font-size:12px;color:#294f3c}
