:root{--tld-bg:#f9f4ec;--tld-surface:#fefbf8;--tld-fg:#1d140d;--tld-muted:#645c55;--tld-border:#dfdad2;--tld-accent:#c64e31;--tld-danger:#9e170c;--tld-success:#135d1d;--tld-font-display:"Iowan Old Style","Charter",Georgia,serif;--tld-font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--tld-font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}*,:after,:before{box-sizing:border-box}html{font-family:var(--tld-font-body);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body,html{background:var(--tld-bg);color:var(--tld-fg)}body{margin:0;min-height:100vh}.sr-only{block-size:1px;border:0;clip:rect(0,0,0,0);clip-path:inset(50%);inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap}a{color:inherit;text-decoration:none}button,input{color:inherit;font:inherit}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.58}.mono{font-family:var(--tld-font-mono);font-variant-numeric:tabular-nums}.kicker{color:var(--tld-accent);font:12px/1.2 var(--tld-font-mono);letter-spacing:0;margin-block-end:10px;text-transform:uppercase}.tld-form{display:grid;gap:14px}.tld-field{color:var(--tld-muted);display:grid;font-size:13px;gap:8px}.tld-field__label{line-height:1.4}.tld-input{background:var(--tld-surface);border:1px solid var(--tld-border);min-block-size:44px;outline:none;padding:0 12px;width:100%}.tld-input:focus{outline:2px solid rgba(198,78,49,.35);outline-offset:2px}.tld-button{align-items:center;background:var(--tld-surface);border:1px solid var(--tld-border);display:inline-flex;justify-content:center;min-block-size:44px;padding:0 16px;text-decoration:none;transition:background .14s,border-color .14s,color .14s,opacity .14s}.tld-button--primary{background:var(--tld-fg);border-color:var(--tld-fg);color:var(--tld-surface)}.tld-button--compact{min-block-size:38px;white-space:nowrap}.tld-form .tld-button{inline-size:100%;margin-block-start:10px}.tld-button:hover{opacity:.88}.tld-form-error{color:var(--tld-danger);font-size:13px;line-height:20px;margin:0}.auth-page{display:grid;grid-template-columns:2fr .95fr;min-block-size:100vh}.brand-panel{background-color:var(--tld-bg);background-image:linear-gradient(90deg,#fefbf8fa,#fefbf8e0 36%,#fefbf842),url(../images/auth-orthophoto-bg.png);background-position:50%;background-repeat:no-repeat;background-size:cover;border-inline-end:1px solid var(--tld-border);display:grid;grid-template-rows:auto 1fr auto;padding:54px 64px}.brand,.mark{color:var(--tld-fg);letter-spacing:0;line-height:1}.brand-wordmark,.mark{width:-moz-fit-content;width:fit-content}.brand-wordmark{--brand-wordmark-font-size:28px;--brand-wordmark-ink:var(--tld-fg);--brand-wordmark-coral:#ed6f5c;color:var(--brand-wordmark-ink);font-size:var(--brand-wordmark-font-size);gap:.34em;line-height:.96;max-inline-size:100%;vertical-align:middle;white-space:nowrap}.brand-wordmark,.brand-wordmark__icon{align-items:center;display:inline-flex}.brand-wordmark__icon{background:radial-gradient(circle at 62% 38%,rgba(237,111,92,.18) 0 18%,transparent 19%),linear-gradient(135deg,#f7f1defa,#ddd2b69e);block-size:1.36em;border:max(1px,.05em) solid;border-radius:999px;box-shadow:inset 0 0 0 .14em #f7f1dec7;flex:0 0 auto;inline-size:1.36em;justify-content:center;overflow:hidden}.brand-wordmark__icon svg{block-size:.98em;display:block;inline-size:.98em}.brand-wordmark__text{align-items:baseline;display:inline-flex;flex:0 1 auto;min-inline-size:0}.brand-wordmark__char,.brand-wordmark__dot{display:inline-block}.brand-wordmark__char{font-family:Inter Tight,PingFang SC,Microsoft YaHei UI,Microsoft YaHei,system-ui,sans-serif;font-weight:950}.brand-wordmark__char+.brand-wordmark__char{margin-inline-start:-.035em}.brand-wordmark__char--de{color:var(--brand-wordmark-coral);font-family:var(--tld-font-display);font-style:italic;font-weight:500;margin-inline-start:-.07em}.brand-wordmark__dot{color:var(--brand-wordmark-ink);font-family:Inter Tight,PingFang SC,Microsoft YaHei UI,Microsoft YaHei,system-ui,sans-serif;font-weight:950;margin-inline-start:.02em}.hero{align-self:center}.hero h1{font:700 58px/.92 var(--tld-font-display);margin:0;max-inline-size:480px}.hero p{color:var(--tld-muted);font-size:18px;line-height:1.7;margin:22px 0 0;max-inline-size:560px}.empty-map,.mini-map{background:linear-gradient(35deg,transparent 0 38%,rgba(29,20,13,.05) 38% 41%,transparent 41% 100%),repeating-linear-gradient(0deg,hsla(37,17%,85%,.65) 0 1px,transparent 1px 28px),repeating-linear-gradient(90deg,hsla(37,17%,85%,.65) 0 1px,transparent 1px 28px),#eee7db;border:1px solid var(--tld-border);min-block-size:230px;overflow:hidden;position:relative}.mini-map{margin-block-start:44px}.empty-map:after,.mini-map:after{background:#c64e3129;border:1px solid var(--tld-accent);clip-path:polygon(9% 20%,76% 7%,94% 42%,79% 86%,18% 80%,0 45%);content:"";inset:36px 64px 30px 54px;position:absolute}.auth-helper{color:var(--tld-muted);font-size:13px;margin:0}.form-wrap{display:grid;padding:48px;place-items:center}.login-card{background:var(--tld-surface);border:1px solid var(--tld-border);inline-size:min(430px,100%);padding:28px}.login-card--compact{font-size:14px;gap:16px;inline-size:min(376px,100%);padding:28px 24px}.login-card--compact .tld-field{block-size:46px;font-size:14px;gap:0;height:46px;min-block-size:46px}.login-card--compact .tld-input{block-size:46px;font-size:14px;height:46px;line-height:20px;min-block-size:46px}.login-card--compact .tld-input:focus{border-color:#c64e31ad;box-shadow:inset 0 0 0 1px #c64e3138;outline:none}.login-card--compact .tld-button{font-size:14px;line-height:20px}.login-title{font:700 42px/1 var(--tld-font-display);margin:0}.login-deck{color:var(--tld-muted);font-size:14px;line-height:1.45;margin:-4px 0 0}.auth-tabs{align-items:center;display:flex;gap:24px}.auth-tabs,.auth-tabs button{block-size:24px;min-block-size:24px}.auth-tabs button{background:transparent;border:0;color:var(--tld-muted);font-size:14px;line-height:24px;padding:0}.auth-tabs button.active{color:var(--tld-fg);font-weight:500}.auth-mode-stack{block-size:108px;display:grid;height:108px;max-block-size:108px;min-block-size:108px;overflow:hidden}.auth-mode-stack>.auth-mode-panel{grid-area:1/1}.auth-mode-panel{align-items:stretch;block-size:108px;display:grid;gap:16px;grid-template-rows:46px 46px;height:108px;max-block-size:108px}.auth-mode-panel.is-hidden{pointer-events:none;visibility:hidden}.auth-code-row{align-items:stretch;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 118px}.auth-code-row .auth-code-button{inline-size:118px;margin-block-start:0;min-block-size:44px;padding-inline:0}.login-card--compact .auth-code-row{block-size:46px;gap:0;grid-template-columns:1fr;height:46px;min-block-size:46px;position:relative}.login-card--compact .auth-code-row .tld-input{padding-inline-end:112px}.login-card--compact .auth-code-row .auth-code-button{align-self:center;background:transparent;block-size:24px;border:0;color:#008aff;height:24px;inline-size:auto;inset-inline-end:14px;line-height:24px;margin-block-start:0;min-block-size:24px;padding-inline:0;position:absolute}.auth-agreement{align-items:flex-start;color:var(--tld-muted);display:flex;font-size:12px;gap:8px;justify-content:flex-start;line-height:1.6}.auth-agreement input{flex:0 0 auto;margin-block-start:3px}.auth-agreement a{color:var(--tld-accent);font-weight:700}.auth-switch{color:var(--tld-muted);font-size:13px;line-height:1.5;margin:0;text-align:center}.auth-switch a{color:var(--tld-accent);font-weight:700}.captcha-row{align-items:stretch;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 128px 80px}.captcha-image{align-items:center;background:var(--tld-surface);border:1px solid var(--tld-border);display:flex;inline-size:128px;justify-content:center;min-block-size:44px;overflow:hidden}.captcha-image svg{display:block;inline-size:128px;max-block-size:44px}.captcha-refresh{inline-size:80px;padding-inline:0}.app-shell{background:var(--tld-bg);color:var(--tld-fg);min-block-size:100vh}.app-shell--table-view{block-size:100vh;overflow:hidden}.app-top{align-items:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fefbf8f0;border-bottom:1px solid var(--tld-border);display:flex;gap:24px;inset-block-start:0;justify-content:space-between;padding:16px 40px;position:sticky;z-index:20}.brand{font-size:28px}.app-nav{display:flex;flex-wrap:wrap;gap:6px}.app-nav a,.app-nav button,.btn-sm{align-items:center;background:var(--tld-surface);border:1px solid var(--tld-border);color:var(--tld-fg);display:inline-flex;justify-content:center;min-block-size:38px;padding:0 14px}.app-nav button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.app-nav a.active,.app-nav a:hover,.app-nav button:hover{background:var(--tld-fg);border-color:var(--tld-fg);color:var(--tld-surface)}.page{margin:0 auto;max-inline-size:1440px;padding:36px 40px 52px}.image-page--table-view{block-size:calc(100vh - 71px);display:flex;flex-direction:column;min-block-size:0;overflow:hidden}.image-page--table-view .page-head{flex:0 0 auto}.app-shell--admin{background:#f6efe6;block-size:100dvh;flex-direction:column}.admin-page,.app-shell--admin{display:flex;min-block-size:0;overflow:hidden}.admin-page{flex:1 1 auto;flex-direction:column;max-inline-size:1560px;width:100%}.admin-metrics{display:grid;flex:0 0 auto;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-block-end:12px}.admin-metric{background:var(--tld-surface);box-shadow:0 1px 3px #1d140d1a;display:grid;gap:6px;min-block-size:88px;padding:12px 14px}.admin-metric span{color:var(--tld-muted);font-size:12px;line-height:1.35}.admin-metric .n-statistic-value{font-family:var(--tld-font-mono);font-variant-numeric:tabular-nums}.admin-workbench{background:var(--tld-surface);box-shadow:0 1px 3px #1d140d1a;display:flex;flex:1 1 auto;flex-direction:column;min-block-size:0;padding:12px}.admin-tabs-pane,.admin-tabs-pane-wrapper,.admin-workbench .n-tabs,.admin-workbench .n-tabs-pane-wrapper{display:flex;flex:1 1 auto;flex-direction:column;min-block-size:0}.admin-tabs-pane{block-size:100%;overflow:hidden}.admin-panel{block-size:100%;display:flex;flex-direction:column;gap:10px;min-block-size:0}.admin-filters{align-items:end;-moz-column-gap:10px;column-gap:10px;flex:0 0 auto;row-gap:8px}.admin-filters .n-form-item{min-inline-size:160px}.admin-filters .n-form-item:first-child{min-inline-size:min(300px,100%)}.admin-filter-actions{display:flex;gap:6px}.admin-inline-cell,.admin-storage-cell{display:block;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-storage-cell{display:grid;gap:3px}.admin-muted{color:var(--tld-muted);font-size:12px}.admin-number-cell{font-variant-numeric:tabular-nums;text-align:right}.admin-status-strip{align-items:center;color:var(--tld-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:6px}.admin-status-strip span{background:#f5eee7;padding:2px 5px}.admin-pagination{display:flex;flex:0 0 auto;justify-content:flex-end}.admin-action-cell{display:flex;gap:6px}.admin-detail-stack{display:grid;gap:18px;min-inline-size:0}.admin-detail-section{display:grid;gap:10px;min-inline-size:0}.admin-detail-section h2{font-size:18px;line-height:1.3;margin:0}.admin-page .n-data-table{font-variant-numeric:tabular-nums}.admin-page .n-data-table .n-data-table-td,.admin-page .n-data-table .n-data-table-th{line-height:1.25;padding-block:8px}.admin-main-table{flex:1 1 auto;min-block-size:0}.admin-detail-table{min-inline-size:0}.admin-page .n-data-table-td,.admin-page .n-data-table-th{vertical-align:middle}.page-head{align-items:flex-start;display:flex;flex:0 0 auto;gap:24px;justify-content:space-between;margin-block-end:24px}.head-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.user-badge{border:1px solid var(--tld-border);color:var(--tld-muted);font-size:13px;min-block-size:38px;padding:8px 12px}.page-title{font:700 56px/.95 var(--tld-font-display);margin:0}.page-desc{color:var(--tld-muted);line-height:1.7;margin:10px 0 0}.style-page,.style-preview{display:grid;gap:24px}.style-preview{align-items:center;background:var(--tld-surface);border:1px solid var(--tld-border);grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);padding:24px}.style-preview h2{font:700 38px/1 var(--tld-font-display);margin:0}.style-preview p{color:var(--tld-muted);line-height:1.7;margin:12px 0 0}.style-section{display:grid;gap:16px}.style-section__head{align-items:end;display:flex;gap:18px;justify-content:space-between}.style-section__head h2{font:700 30px/1.1 var(--tld-font-display);margin:0}.style-section__head p{color:var(--tld-muted);line-height:1.7;margin:0;max-inline-size:520px}.style-preview--landing{background:var(--paper);border-color:var(--ink);color:var(--ink)}.style-preview--landing .kicker{color:var(--coral)}.style-preview--landing p{color:var(--ink-mute)}.style-preview__sample{align-items:center;background:linear-gradient(35deg,transparent 0 42%,rgba(29,20,13,.06) 42% 45%,transparent 45% 100%),repeating-linear-gradient(0deg,hsla(37,17%,85%,.68) 0 1px,transparent 1px 26px),repeating-linear-gradient(90deg,hsla(37,17%,85%,.68) 0 1px,transparent 1px 26px),var(--tld-bg);border:1px solid var(--tld-border);display:flex;flex-wrap:wrap;gap:10px;min-block-size:164px;padding:18px}.style-preview__landing-card{align-content:center;background:var(--bone);border:1px solid var(--ink);color:var(--ink);display:grid;gap:10px;min-block-size:164px;padding:22px}.style-preview__landing-card strong{background:var(--coral);color:#fff;display:inline-flex;font-weight:800;inline-size:-moz-fit-content;inline-size:fit-content;min-block-size:38px;padding:9px 16px}.style-preview__landing-card span{color:var(--ink-mute);line-height:1.6}.style-token-grid{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.style-token-card{background:var(--tld-surface);border:1px solid var(--tld-border);display:grid;gap:14px;min-block-size:196px;padding:18px}.style-token-card__head{align-items:center;display:grid;gap:12px;grid-template-columns:46px minmax(0,1fr)}.style-token-card__head small,.style-token-card__head strong{display:block}.style-token-card__head strong{font-size:16px;line-height:1.3}.style-token-card__head small{color:var(--tld-muted);margin-block-start:4px}.style-token-card p{color:var(--tld-muted);font-size:13px;line-height:1.6;margin:0}.style-swatch{block-size:46px;border:1px solid var(--tld-border);box-shadow:inset 0 0 0 3px var(--tld-surface);display:block;inline-size:46px}.style-token-card__controls{align-items:center;display:grid;gap:10px;grid-template-columns:52px minmax(0,1fr);margin-block-start:auto}.style-token-card__controls input[type=color]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;block-size:44px;border:1px solid var(--tld-border);inline-size:52px;padding:4px}.style-token-card__controls input[type=color]::-webkit-color-swatch-wrapper{padding:0}.style-token-card__controls input[type=color]::-webkit-color-swatch{border:0}.page-error{background:#ffe8e3;border:1px solid #e68677;color:var(--tld-danger)}.page-error,.page-notice{font-size:13px;line-height:20px;margin:0 0 18px;padding:10px 12px}.page-notice{background:#faede8;border:1px solid #d49a88;color:var(--tld-accent)}.rename-toast{background:#e7ebe2;border:1px solid #89a686;color:var(--tld-success);font-size:13px;line-height:20px;margin:0 0 18px;padding:10px 12px}.card-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.image-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.image-card{background:var(--tld-surface);border:1px solid var(--tld-border);display:grid;grid-template-rows:auto 1fr auto;min-block-size:164px;min-inline-size:0;padding:13px}.card-row{align-items:flex-start;display:flex;gap:9px;justify-content:space-between;min-inline-size:0}.card-name{font-size:15px;font-weight:700;line-height:1.25;margin:0;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-name-wrap{flex:1 1 auto;min-inline-size:0}.card-name-action{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--tld-fg);cursor:pointer;display:inline-flex;gap:6px;inline-size:100%;min-block-size:28px;min-inline-size:0;padding:0;text-align:left}.card-name-action svg,.card-name-action:hover .card-name{color:var(--tld-accent)}.card-name-action svg{block-size:18px;fill:none;flex:0 0 auto;inline-size:18px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.card-name-edit{background:var(--tld-surface);border:1px solid var(--tld-accent);font-size:15px;font-weight:700;inline-size:100%;min-block-size:32px;min-inline-size:0;outline:2px solid rgba(198,78,49,.22);padding:0 8px}.card-meta{color:var(--tld-muted);font-size:12px;line-height:1.5}.image-facts{display:grid;gap:8px;margin:13px 0 0}.image-fact-line{align-items:baseline;display:grid;gap:8px;grid-template-columns:52px minmax(0,1fr);min-inline-size:0}.image-facts dt{color:var(--tld-muted)}.image-facts dd,.image-facts dt{font-size:12px;line-height:1.35;margin:0;white-space:nowrap}.image-facts dd{color:var(--tld-fg);overflow:hidden;text-overflow:ellipsis}.card-desc,.progress-copy{color:var(--tld-muted);line-height:1.6;margin:0}.card-status{align-items:center;border:1px solid var(--tld-border);-moz-column-gap:4px;column-gap:4px;display:inline-flex;flex:0 0 auto;font-size:12px;min-block-size:24px;padding:0 7px;white-space:nowrap}.vue-bits-counter,.vue-bits-fuzzy-text,.vue-bits-shiny-text{display:inline-block;font-variant-numeric:tabular-nums}.vue-bits-fuzzy-text{filter:blur(var(--fuzzy-blur,0));transform:translate(var(--fuzzy-x,0),var(--fuzzy-y,0))}.vue-bits-shiny-text{background:linear-gradient(var(--shiny-spread,105deg),var(--shiny-base,currentColor) 0,var(--shiny-base,currentColor) 35%,var(--shiny-color,#6dba70) 50%,var(--shiny-base,currentColor) 65%,var(--shiny-base,currentColor) 100%);background-clip:text;-webkit-background-clip:text;background-size:240% 100%;color:transparent;min-inline-size:6em}@media(prefers-reduced-motion:reduce){.vue-bits-shiny-text{background-position:50% 0}}.processing-count{align-items:baseline;display:inline-flex;font-weight:700}.status-ready{background:#e0f1e0;border-color:#91bf92;color:var(--tld-success)}.status-processing{background:#f9ebe6;border-color:var(--tld-accent);color:var(--tld-accent)}.status-error{background:#ffe8e3;border-color:#e68677;color:var(--tld-danger)}.progress-bar{background:var(--tld-bg);block-size:8px;border:1px solid var(--tld-border);overflow:hidden}.progress-fill{background:var(--tld-accent);block-size:100%;display:block}.card-actions{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-block-start:auto}.image-card .card-actions{justify-content:flex-end;margin-block-start:13px}.image-card .btn-sm{font-size:12px;min-block-size:28px;padding:0 8px}.image-card-more{position:relative}.image-card-more-button{font-weight:700;inline-size:32px;letter-spacing:0;padding-inline:0}.image-card-menu{background:var(--tld-surface);border:1px solid var(--tld-border);box-shadow:0 16px 36px #2d26201f;display:grid;gap:2px;inline-size:122px;inset-block-start:34px;inset-inline-end:0;padding:6px;position:absolute;z-index:20}.image-card-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--tld-fg);cursor:pointer;font:inherit;font-size:13px;line-height:1.2;padding:8px 9px;text-align:left;text-decoration:none;white-space:nowrap}.image-card-menu-item:hover{background:var(--tld-bg)}.image-card-menu-item.danger{color:var(--tld-danger)}.image-card-menu-item.is-disabled{color:var(--tld-muted);cursor:not-allowed;opacity:.45;pointer-events:none}.btn-sm{font-size:13px;min-block-size:34px;padding:0 10px}.btn-sm.primary{background:var(--tld-fg);border-color:var(--tld-fg);color:var(--tld-surface)}.btn-sm.danger{border-color:#c44132;color:var(--tld-danger)}.btn-sm:hover{background:var(--tld-bg)}.btn-sm.primary:hover{background:#3d342e}.btn-sm.danger:hover{background:#ffe8e3}.btn-sm.is-disabled{cursor:not-allowed;opacity:.72;pointer-events:none}.image-table{background:var(--tld-surface);border:1px solid var(--tld-border);max-block-size:calc(100vh - 250px);overflow:auto}.image-page--table-view .image-table{flex:1 1 auto;max-block-size:none;min-block-size:0}.image-table table{border-collapse:collapse;inline-size:100%;min-inline-size:1080px}.image-table td,.image-table th{border-bottom:1px solid var(--tld-border);font-size:13px;line-height:1.45;padding:12px;text-align:left;vertical-align:middle}.image-table th{background:#fbf6f0;color:var(--tld-muted);font-size:12px;font-weight:600;position:sticky;top:0;white-space:nowrap}.image-table tbody tr:hover{background:#fbf7f1}.image-table tbody tr:last-child td{border-bottom:0}.image-table-name{display:grid;max-inline-size:340px;min-inline-size:220px}.image-table-name span{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-table-actions{min-inline-size:200px}.image-table-nowrap{white-space:nowrap}.image-table-side-length{min-inline-size:72px;white-space:nowrap}.image-table-duration{min-inline-size:104px;white-space:nowrap}.empty-state{background:var(--tld-surface);border:1px dashed var(--tld-border);display:grid;min-block-size:420px;padding:48px 24px;place-items:center;text-align:center}.empty-map{inline-size:min(460px,100%);margin-block-end:24px;min-block-size:180px}.empty-map-image{block-size:auto;display:block;inline-size:min(560px,100%);margin-block-end:24px}.empty-title{font:700 38px/1 var(--tld-font-display);margin:0}.empty-desc{color:var(--tld-muted);line-height:1.7;margin:12px auto 24px;max-inline-size:520px}.delete-modal{background:#1d140d57;display:grid;inset:0;padding:24px;place-items:center;position:fixed;z-index:50}.dialog{background:var(--tld-surface);border:1px solid var(--tld-border);box-shadow:0 24px 80px #1d140d2e;inline-size:min(520px,100%);padding:24px}.dialog h2{font:700 30px/1 var(--tld-font-display);margin:0}.dialog p{color:var(--tld-muted);line-height:1.7;margin:12px 0 0}.dialog-target{border:1px solid var(--tld-border);color:var(--tld-fg);font-weight:600;padding:10px 12px}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-block-start:22px}.profile-grid{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.profile-card{background:var(--tld-surface);border:1px solid var(--tld-border);display:grid;gap:14px;min-block-size:280px;padding:20px}.profile-card__head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.profile-card h2{font:700 24px/1.15 var(--tld-font-display);margin:0}.metric{font-size:28px;line-height:1.2}.profile-progress{background:var(--tld-bg);block-size:8px;border:1px solid var(--tld-border);overflow:hidden}.profile-progress span{background:var(--tld-accent);block-size:100%;display:block}.plan-list,.profile-card .mono,.profile-card p{color:var(--tld-muted)}.profile-row{align-items:center;border-block-start:1px solid var(--tld-border);display:flex;gap:12px;justify-content:space-between;padding-block-start:12px}.profile-row span{color:var(--tld-muted)}.profile{display:flex;gap:14px}.avatar,.profile{align-items:center}.avatar{background:#f8eae4;border:1px solid var(--tld-fg);border-radius:999px;display:grid;flex:0 0 auto;font:700 24px/1 var(--tld-font-display);inline-size:64px;min-block-size:64px;place-items:center}.actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-block-start:auto}.plan-list{line-height:1.7;margin:0;padding-inline-start:18px}.visually-hidden{block-size:1px;clip:rect(0 0 0 0);clip-path:inset(50%);inline-size:1px;overflow:hidden;position:absolute;white-space:nowrap}.upload-page{max-inline-size:1240px}.upload-step,.upload-steps{display:grid;gap:16px}.upload-step{align-items:start;background:var(--tld-surface);border:1px solid var(--tld-border);grid-template-columns:42px minmax(0,1fr) auto;padding:18px}.upload-step h2{font:700 24px/1.15 var(--tld-font-display);margin:0 0 8px}.upload-step p{color:var(--tld-muted);line-height:1.7;margin:8px 0 0}.step-no{align-items:center;border:1px solid var(--tld-fg);display:grid;font:700 22px/1 var(--tld-font-display);inline-size:42px;min-block-size:42px;place-items:center}.drop-zone{background:#fdfaf6;border:1px dashed var(--tld-fg);display:grid;min-block-size:210px;overflow:hidden;padding:18px;place-items:center;position:relative;text-align:center}.drop-zone--selected{border-color:var(--tld-accent);border-style:solid}.drop-zone--selected:before{background:linear-gradient(155deg,transparent 0 46%,#b7cfb4 46% 58%,transparent 58% 100%),linear-gradient(28deg,#a7dce1 0 31%,transparent 31% 100%),repeating-linear-gradient(0deg,hsla(37,17%,85%,.7) 0 1px,transparent 1px 22px),repeating-linear-gradient(90deg,hsla(37,17%,85%,.7) 0 1px,transparent 1px 22px),#f0ebde;content:"";inset:0;position:absolute}.drop-zone--selected:after{background:#c64e312e;border:1px solid var(--tld-accent);clip-path:polygon(6% 22%,78% 5%,96% 42%,81% 86%,16% 80%,0 45%);content:"";inset:24px 38px 18px;position:absolute}.upload-picker{display:grid;gap:12px;inline-size:100%;justify-items:center;position:relative;z-index:1}.upload-picker__actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.upload-grid,.upload-meta{display:grid;gap:10px;margin-block-start:12px}.upload-meta{grid-template-columns:repeat(3,1fr)}.upload-grid{grid-template-columns:repeat(4,1fr)}.upload-meta div,.upload-panel{background:var(--tld-bg);border:1px solid var(--tld-border);padding:10px}.upload-panel--error{background:#ffe8e3;border-color:#e68677}.upload-meta .mono,.upload-panel .mono{color:var(--tld-muted)}.upload-panel--error .mono{color:var(--tld-danger);font-weight:700}.upload-blocking-alert{background:#ffe8e3;border:1px solid #c44132;color:var(--tld-danger);display:grid;gap:4px;line-height:1.6;margin-block-start:12px;padding:12px 14px}.upload-blocking-alert strong{color:var(--tld-danger);font-size:15px}.upload-blocking-alert span{font-size:13px}.upload-number-field{align-items:center;display:inline-flex;gap:8px}.upload-number-field .editor-input{inline-size:96px;padding:7px 9px}.side-actions{display:grid;gap:8px;justify-items:stretch}.status{align-items:center;background:var(--tld-surface);border:1px solid var(--tld-border);color:var(--tld-muted);display:inline-flex;font-size:12px;justify-content:center;min-block-size:26px;padding:0 9px;white-space:nowrap}.status.status-ready{background:#e0f1e0;border-color:#91bf92;color:var(--tld-success)}.upload-progress{margin-block-start:14px}.upload-error{color:var(--tld-danger)}.upload-modal{background:#1d140d57;display:grid;inset:0;padding:24px;place-items:center;position:fixed;z-index:50}.editor-shell{background:var(--tld-bg);block-size:100vh;color:var(--tld-fg);display:grid;grid-template-rows:auto minmax(0,1fr);min-block-size:100vh;overflow:hidden}.editor-shell:has(.editor-ortho-processing-alert){grid-template-rows:auto auto minmax(0,1fr)}.editor-top{align-items:center;background:var(--tld-surface);border-bottom:1px solid var(--tld-border);display:grid;gap:16px;grid-template-columns:auto minmax(0,1fr) auto auto;min-block-size:67px;padding:14px 18px}.editor-top--readonly{grid-template-columns:auto minmax(0,1fr)}.editor-top--share-readonly{grid-template-columns:minmax(0,1fr)}.editor-title{min-inline-size:0}.editor-name-text,.editor-title strong{display:block;font-size:18px;font-weight:700;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-name-action{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;display:inline-flex;gap:8px;inline-size:100%;min-block-size:28px;min-inline-size:0;padding:5px 0;text-align:left}.editor-name-action:hover .editor-name-text{color:var(--tld-accent)}.editor-name-action svg{block-size:18px;color:var(--tld-accent);fill:none;flex:0 0 auto;inline-size:18px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.editor-name-edit{background:var(--tld-surface);border:1px solid var(--tld-accent);color:var(--tld-fg);font-size:18px;font-weight:700;inline-size:100%;max-width:500px;min-block-size:34px;min-inline-size:0;outline:2px solid rgba(198,78,49,.22);padding:0 8px}.editor-field span,.editor-group p,.editor-map__notice,.editor-title span{color:var(--tld-muted)}.editor-title-meta{display:flex;flex-wrap:wrap;gap:6px 12px;line-height:1.35;margin-block-start:3px}.editor-title-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-title-remark{max-inline-size:min(460px,42vw)}.editor-remark-toggle{align-items:center;background:transparent;border:0;color:var(--tld-muted);display:inline-flex;flex:0 0 auto;font:inherit;gap:5px;line-height:1.35;min-block-size:18px;padding:0;white-space:nowrap}.editor-remark-toggle.active,.editor-remark-toggle:hover{color:var(--tld-fg)}.editor-remark-check{align-items:center;background:#fefbf8eb;block-size:13px;border:0;color:var(--tld-accent);display:inline-flex;flex:0 0 auto;inline-size:13px;justify-content:center}.editor-remark-toggle.active .editor-remark-check{background:#fff7ed}.editor-remark-check svg{block-size:11px;fill:none;inline-size:11px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.editor-title-meta .editor-remark-check+span:before{content:none;padding:0}.editor-title-center--mobile{display:none}.editor-ortho-processing-alert{align-items:center;background:#fff4df;border-bottom:1px solid rgba(180,91,51,.34);color:#7a341c;display:flex;gap:10px;justify-content:center;min-block-size:40px;padding:8px 18px;text-align:center}.editor-ortho-processing-alert strong{font-size:14px;line-height:1.3}.editor-workspace{block-size:100%;display:grid;grid-template-columns:300px minmax(0,1fr);min-block-size:0;overflow:hidden;position:relative}.editor-workspace--share{block-size:100vh;grid-template-rows:auto minmax(0,1fr)}.editor-shell--readonly,.editor-shell--readonly .editor-workspace{min-block-size:0}.public-share-page{--share-h5-active:rgba(198,78,49,.28);--share-h5-active-border:rgba(245,182,113,.38);--share-h5-bg:rgba(5,8,10,.72);--share-h5-border:hsla(41,48%,88%,.14);--share-h5-fg:#f7efe3;--share-h5-muted:#aeb8b5;--share-h5-panel:rgba(9,13,16,.62);--share-h5-panel-strong:rgba(13,18,22,.7);background:var(--share-h5-bg);block-size:100vh;color:var(--tld-fg);display:grid;grid-template-rows:minmax(0,1fr);overflow:hidden}.public-share-page .editor-shell{block-size:100%;min-block-size:0}.public-share-page .editor-workspace{block-size:100%}@media not (max-width:980px){.editor-shell--readonly{block-size:100%;grid-template-rows:auto minmax(0,1fr);min-block-size:0}.editor-shell--readonly .editor-map{min-block-size:0}.editor-shell--readonly .editor-view-mode-switch{left:12px;right:auto;top:18px}.editor-workspace--share-desktop-preview{block-size:100%;grid-template-columns:300px minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.editor-workspace--share-desktop-preview .share-mobile-tabs,.editor-workspace--share-desktop-preview .share-mobile-top{display:none}}.source-preview-page{background:var(--tld-bg)}.source-preview-main{display:grid;grid-template-columns:360px minmax(0,1fr);min-block-size:0;overflow:hidden}.source-preview-side{grid-template-rows:repeat(2,auto)}.source-preview-brand-actions{align-items:center;display:inline-flex;gap:14px;min-inline-size:0}.source-preview-brand-actions .brand{white-space:nowrap}.source-preview-back{flex:0 0 auto}.source-preview-stage{background:#100a05;display:grid;min-block-size:0;overflow:hidden;place-items:center}.source-panorama-viewer{block-size:100%;inline-size:100%;min-block-size:0;position:relative}.panorama-viewer .psv-container,.source-panorama-viewer .psv-container{background:#100a05;cursor:default!important}.source-panorama-viewer .psv-markers{z-index:2}.source-panorama-overlay{block-size:100%;inline-size:100%;inset:0;pointer-events:none;position:absolute;z-index:2}.source-panorama-vector-layer{overflow:visible;z-index:3}.source-panorama-draft-layer{pointer-events:none;z-index:5}.source-panorama-edit-layer{overflow:visible;pointer-events:none;z-index:6}.source-panorama-draft-path{fill:none;stroke:#facc15;stroke-dasharray:8 6;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.source-panorama-draft-polygon{fill:#facc152e;stroke:#facc15;stroke-dasharray:8 6;stroke-width:3}.source-panorama-draft-node{fill:#fffdfa;stroke:#facc15;stroke-width:2}.source-panorama-edit-handle{fill:#fffdfa;pointer-events:auto;stroke:#3b82f6;stroke-width:2.5}.source-panorama-edit-handle.dragging,.source-panorama-edit-handle:hover{fill:#eff6ff;stroke:#facc15;stroke-width:3}.source-panorama-draft-error{background:#2d2620d1;border:1px solid rgba(250,204,21,.5);border-radius:8px;color:#fff7ed;font-size:13px;inset-block-end:18px;inset-inline-start:50%;margin:0;max-inline-size:min(360px,calc(100% - 32px));padding:8px 12px;position:absolute;transform:translate(-50%);z-index:7}.source-panorama-arrow{fill:none;stroke-linecap:round;stroke-linejoin:round}.source-panorama-arrow.active{stroke-width:4}.source-panorama-marker-layer{z-index:4}.source-panorama-marker{background:transparent;border:0;color:var(--tld-fg);display:block;max-inline-size:220px;min-block-size:1px;padding:0;pointer-events:auto;position:absolute;transform-origin:0 0}.source-panorama-label,.source-panorama-marker__icon{inset-block-start:0;inset-inline-start:0;position:absolute}.source-panorama-marker__icon{display:block;max-inline-size:none}.source-panorama-label{font-size:13px;font-weight:700;line-height:1.1;white-space:nowrap}.source-panorama-marker.active{filter:drop-shadow(0 0 3px rgba(250,204,21,.9))}.share-mobile-tabs{display:none}.share-mobile-top{align-items:center;background:#fefbf8f5;border-bottom:1px solid var(--tld-border);display:flex;min-block-size:64px;padding:10px 18px;position:relative;z-index:4}.share-mobile-top>div{min-inline-size:0}.share-mobile-top strong{font-size:16px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-mobile-remark-box,.share-mobile-remark-toggle{display:none}.editor-properties,.editor-side{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fefbf8e0;min-block-size:0;padding:18px}.editor-side{align-content:start;border-inline-end:1px solid var(--tld-border);display:grid;gap:18px;grid-template-rows:repeat(2,auto);overflow-x:hidden;overflow-y:auto;position:relative;z-index:3}.editor-properties{border-inline-start:1px solid var(--tld-border);box-shadow:-18px 0 42px #1d140d1a;inline-size:430px;inset-block:0;inset-inline-end:0;overflow:auto;position:absolute;z-index:6}.editor-side .editor-group{margin-block-end:0;min-block-size:0}.editor-group{margin-block-end:24px}.editor-layer-toggle-enter-active,.editor-layer-toggle-leave-active{overflow:hidden;transition:opacity .2s ease,transform .2s ease,height .25s ease,margin-block-end .25s ease}.editor-layer-toggle-enter-from,.editor-layer-toggle-leave-to{margin-block-end:0;opacity:0;transform:translateY(-8px)}.editor-group h2,.editor-panel h2{font:700 22px/1.1 var(--tld-font-display);margin:0 0 12px}.editor-info-list{display:grid;gap:0;margin:0;padding:0}.editor-info-row{align-items:baseline;border-bottom:1px solid var(--tld-border);display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:5px 0}.editor-info-row dt{color:var(--tld-muted);flex:0 0 auto;white-space:nowrap}.editor-info-row dd{margin:0;min-inline-size:0;overflow-wrap:anywhere;text-align:right}.editor-camera-rotation{font-size:12px;white-space:nowrap}.editor-help-text{font-size:12px;line-height:1.6;margin:10px 0 0}.editor-switch-row{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-bottom:1px solid var(--tld-border);display:flex;inline-size:100%;justify-content:space-between;min-block-size:42px;padding:0;text-align:start}.editor-toggle{background:var(--tld-border);block-size:22px;border:1px solid var(--tld-muted);inline-size:38px;position:relative}.editor-toggle:after{background:var(--tld-surface);block-size:14px;content:"";inline-size:14px;inset-block-start:3px;inset-inline-start:3px;position:absolute;transition:inset-inline-start .14s}.editor-toggle.active{background:var(--tld-fg);border-color:var(--tld-fg)}.editor-toggle.active:after{inset-inline-start:19px}.editor-toggle--compact{block-size:16px;inline-size:28px}.editor-toggle--compact:after{block-size:10px;inline-size:10px;inset-block-start:2px;inset-inline-start:2px}.editor-toggle--compact.active:after{inset-inline-start:14px}.editor-tabs,.editor-tools{display:grid;gap:8px}.editor-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-tabs{grid-template-columns:repeat(4,minmax(0,1fr));margin-block-end:14px}.editor-tabs button,.editor-tools button{background:var(--tld-surface);border:1px solid var(--tld-border);min-block-size:36px;padding:0 10px}.editor-tabs button.active,.editor-tools button.active{background:#f8eae4;border-color:var(--tld-fg)}.editor-tools button.danger{border-color:#c44132;color:var(--tld-danger)}.editor-annotation-list{display:grid;gap:6px;margin-block-start:8px;min-block-size:0;overflow-y:auto;overscroll-behavior:contain}.editor-annotation-item{background:var(--tld-surface);border:1px solid var(--tld-border);inline-size:100%;min-block-size:44px;position:relative}.editor-annotation-item.active{background:#faede8;border-color:var(--tld-fg)}.editor-annotation-select{align-items:center;display:grid;gap:8px;grid-template-columns:24px minmax(0,1fr);inline-size:100%;min-block-size:42px;padding:6px 28px 6px 8px;text-align:start}.editor-annotation-delete,.editor-annotation-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0}.editor-annotation-delete{block-size:30px;inline-size:30px;inset-block-start:0;inset-inline-end:0;overflow:hidden;padding:0;position:absolute}.editor-annotation-delete:before{background:#f2e0dc;block-size:100%;clip-path:polygon(0 0,100% 0,100% 100%);content:"";display:block;inline-size:100%}.editor-annotation-delete:after{color:var(--tld-danger);content:"×";font:700 15px/1 var(--tld-font-body);inset-block-start:2px;inset-inline-end:4px;position:absolute}.editor-annotation-delete:hover:before{background:#edd2ce}.editor-annotation-copy{min-inline-size:0}.editor-annotation-copy strong{display:block;font-size:13px;line-height:1.25}.editor-annotation-copy small{color:var(--tld-muted);display:block;font:11px/1.45 var(--tld-font-mono);overflow-wrap:anywhere}.editor-empty-text,.editor-error-text{border:1px dashed var(--tld-border);color:var(--tld-muted);font-size:12px;line-height:1.6;margin:0;padding:10px}.editor-error-text{border-color:#c28279;color:var(--tld-danger);margin-block-start:8px}.editor-symbol{align-items:center;block-size:22px;border:1px solid var(--tld-fg);color:var(--tld-fg);display:grid;font:11px/1 var(--tld-font-mono);inline-size:22px;justify-items:center}.editor-symbol.point{background:#f5dfd8;border-radius:999px}.editor-symbol.line{background:var(--tld-fg);block-size:4px;border:0}.editor-symbol.area{background:#f5dfd8;clip-path:polygon(14% 18%,80% 8%,94% 48%,72% 88%,18% 75%)}.editor-map{background:linear-gradient(118deg,rgba(195,215,195,.36) 0 9%,transparent 9% 100%),linear-gradient(35deg,transparent 0 36%,rgba(173,163,151,.18) 36% 39%,transparent 39% 100%),repeating-linear-gradient(0deg,rgba(168,164,152,.2) 0 1px,transparent 1px 56px),repeating-linear-gradient(90deg,rgba(168,164,152,.2) 0 1px,transparent 1px 56px),#e3e1d9;min-block-size:0;overflow:hidden;position:relative}.editor-map-tools{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fefbf8f0;border:1px solid var(--tld-border);display:flex;flex-wrap:wrap;gap:6px;inset-block-start:18px;inset-inline-start:18px;max-inline-size:min(340px,calc(100% - 36px));padding:8px;position:absolute;z-index:5}.editor-map-tools button{align-items:center;background:var(--tld-surface);block-size:40px;border:1px solid var(--tld-border);color:var(--tld-fg);display:grid;inline-size:40px;justify-items:center;padding:0}.editor-map-tools button.active{background:#f8eae4;border-color:var(--tld-fg)}.editor-map-tools button.danger{color:var(--tld-danger)}.editor-map-tools svg{block-size:22px;fill:none;inline-size:22px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.editor-map-tools circle{fill:currentColor;stroke:none}.editor-map-home{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fefbf8f0;block-size:40px;border:1px solid var(--tld-border);color:var(--tld-fg);display:grid;inline-size:40px;inset-block-start:18px;inset-inline-end:18px;justify-items:center;padding:0;position:absolute;z-index:5}.editor-map-home svg{block-size:22px;fill:none;inline-size:22px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.editor-view-mode-switch{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fefbf8f0;border:1px solid var(--tld-border);display:flex;gap:6px;left:218px;padding:8px;position:absolute;top:18px;z-index:5}.editor-view-mode-disabled,.editor-view-mode-switch button{align-items:center;background:var(--tld-surface);block-size:40px;border:1px solid var(--tld-border);color:var(--tld-muted);display:grid;font-weight:700;inline-size:40px;justify-items:center;line-height:1;padding:0}.editor-view-mode-disabled{cursor:not-allowed;opacity:.48}.editor-view-mode-switch button.active{background:#f8eae4;border-color:var(--tld-fg);color:var(--tld-fg)}.editor-view-mode-switch svg{block-size:22px;fill:none;inline-size:22px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.editor-remark-panel{background:#fefbf8f5;border:1px solid rgba(45,38,32,.18);box-shadow:0 18px 46px #1d140d2e;color:var(--tld-fg);display:grid;gap:10px;inline-size:min(380px,calc(100% - 36px));inset-block-start:86px;inset-inline-start:18px;padding:14px;position:absolute;z-index:6}.editor-remark-header{align-items:center;display:flex;justify-content:space-between}.editor-remark-header strong{font:700 15px/1.2 var(--tld-font-display)}.editor-remark-close{align-items:center;background:transparent;block-size:28px;border:0;color:var(--tld-muted);display:grid;font-size:20px;inline-size:28px;justify-items:center;line-height:1;padding:0}.editor-remark-close:hover{color:var(--tld-fg)}.editor-remark-textarea{background:#fffdfa;border:1px solid var(--tld-border);color:var(--tld-fg);font:14px/1.6 var(--tld-font-body);min-block-size:128px;outline:none;padding:10px 11px;resize:vertical}.editor-remark-textarea:focus{border-color:var(--tld-accent);box-shadow:0 0 0 2px #c64e3129}.editor-remark-footer{align-items:center;display:flex;justify-content:space-between}.editor-remark-footer>span{color:var(--tld-muted);font-size:12px}.editor-remark-footer>div{display:flex;gap:8px}.editor-map__canvas{block-size:100%;inline-size:100%;min-block-size:0}.editor-map__gif-overlay{block-size:100%;inline-size:100%;inset:0;pointer-events:none;position:absolute;z-index:2}.editor-map .ol-rotate{inset:auto auto 16px 16px}.editor-panorama-stage{block-size:100%;inline-size:100%;min-block-size:0}.editor-map .ol-layer canvas,.editor-map .ol-viewport{outline:none}.editor-map__notice{background:#fefbf8eb;border:1px solid var(--tld-border);inset-block-start:16px;inset-inline-start:66px;margin:0}.editor-map-status,.editor-map__notice{padding:8px 10px;position:absolute;z-index:2}.editor-map-status{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fefbf8f0;border:1px solid hsla(0,0%,100%,.66);box-shadow:0 8px 24px #1d140d38;color:var(--tld-fg);display:flex;flex-wrap:wrap;font:12px/1.15 var(--tld-font-mono);gap:10px;inset-block-end:18px;inset-inline-start:18px;max-inline-size:min(560px,calc(100% - 36px));white-space:nowrap}.editor-map-status__coord{font-weight:700}.editor-map-status__level{background:var(--tld-fg);color:var(--tld-surface);font-weight:700;padding:4px 6px}.editor-panel{display:grid;gap:14px}.editor-title-input{background:transparent;border:0;border-bottom:1px solid var(--tld-border);color:var(--tld-fg);font:700 22px/1.1 var(--tld-font-display);min-inline-size:0;outline:none;padding:2px 0 6px;width:100%}.editor-title-input:focus{border-color:var(--tld-accent)}.editor-point-title-edit{background:var(--tld-surface);border:1px solid var(--tld-accent);border-radius:4px;box-shadow:0 0 0 2px #c64e311f;flex:1 1 auto;min-inline-size:0;position:relative}.editor-point-title-edit:focus-within{box-shadow:0 0 0 3px #c64e3147}.editor-property-header .editor-point-title-edit .editor-title-input{border:0;padding:8px 42px 8px 12px;padding-inline-end:42px}.editor-point-title-icon{align-items:center;block-size:30px;color:var(--tld-muted);display:grid;inline-size:30px;inset-block-start:50%;inset-inline-end:6px;justify-items:center;pointer-events:none;position:absolute;transform:translateY(-50%)}.editor-point-title-icon svg{block-size:17px;fill:none;inline-size:17px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.editor-property-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-block-end:14px}.editor-property-header .editor-selection-caption,.editor-property-header .editor-title-input{flex:1 1 auto}.editor-selection-caption{color:var(--tld-muted);margin-block-end:14px}.editor-property-header .editor-selection-caption{margin-block-end:0}.editor-property-close{align-items:center;background:var(--tld-surface);block-size:34px;border:1px solid var(--tld-border);color:var(--tld-muted);display:grid;flex:0 0 auto;inline-size:34px;justify-items:center;padding:0}.editor-property-close:hover{color:var(--tld-fg)}.editor-property-close svg{block-size:18px;fill:none;inline-size:18px;stroke:currentColor;stroke-linecap:round;stroke-width:1.8}.editor-field{display:grid;gap:8px}.editor-field span{font-size:13px}.editor-input{background:var(--tld-surface);border:1px solid var(--tld-border);min-block-size:42px;outline:none;padding:0 12px;width:100%}.editor-input:focus{outline:2px solid rgba(198,78,49,.35);outline-offset:2px}.editor-coordinate-text{align-items:baseline;color:var(--tld-muted);display:flex;font-size:13px;gap:10px;line-height:1.4;margin:0;min-inline-size:0;white-space:nowrap}.editor-coordinate-text .mono{overflow:hidden;text-overflow:ellipsis}.editor-line-measure-row{align-items:center;background:#fbf7f1;border:1px solid var(--tld-border);display:flex;flex-wrap:wrap;gap:6px;min-block-size:38px;padding:8px 10px}.editor-line-measure-row>span,.editor-line-measure-toggle span{color:var(--tld-muted);font-size:12px}.editor-line-measure-row>strong{color:var(--tld-fg);font-size:14px}.editor-line-unit-select{inline-size:96px;min-block-size:30px;padding-inline:8px}.editor-line-measure-toggle{align-items:center;display:inline-flex;gap:6px;margin-inline-start:auto}.editor-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-block-start:4px}.editor-point-icons{gap:10px}.editor-point-style-group{background:#fefbf8c7;border:1px solid hsla(37,17%,85%,.86);border-radius:6px;box-shadow:none;display:grid;gap:10px;padding:12px}.editor-point-style-group>strong{color:var(--tld-fg);display:block;font-size:13px;font-weight:700;line-height:1.2;padding:0 0 2px}.editor-module-header{align-items:center;display:flex;gap:10px;justify-content:space-between;min-block-size:20px}.editor-module-header>strong{color:var(--tld-fg);display:block;font-size:13px;font-weight:700;line-height:1.2;padding:0 0 2px}.editor-module-toggle{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--tld-muted);display:inline-flex;flex:0 0 auto;font-size:12px;gap:6px;min-block-size:22px;padding:0;white-space:nowrap}.editor-module-toggle:hover{color:var(--tld-fg)}.editor-point-style-group .editor-input{min-block-size:38px}.editor-point-style-group .editor-control-grid{border-block-start:1px solid hsla(37,17%,85%,.78);padding-block-start:10px}.editor-point-style-group--text .editor-control-grid{border-block-start:0;padding-block-start:0}.editor-point-icon-search-row{align-items:center;display:grid;gap:8px;grid-template-columns:42px minmax(0,1fr)}.editor-point-icon-preview{background:var(--tld-surface);block-size:38px;border:1px solid var(--tld-border);display:grid;inline-size:42px;place-items:center}.editor-point-icon-preview img{block-size:30px;inline-size:30px;-o-object-fit:contain;object-fit:contain}.editor-point-icon-option img{block-size:26px;flex:0 0 auto;inline-size:26px;-o-object-fit:contain;object-fit:contain}.editor-icon-categories{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;padding-block-end:2px;scrollbar-width:thin}.editor-icon-category{background:var(--tld-surface);border:1px solid var(--tld-border);color:var(--tld-muted);flex:0 0 auto;font-size:12px;min-block-size:30px;padding:0 10px}.editor-icon-category:hover{border-color:var(--tld-fg);color:var(--tld-fg)}.editor-icon-category.active{background:#f8eae4;border-color:var(--tld-accent);color:var(--tld-fg)}.editor-point-icon-list{background:#fbf7f2;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr));max-block-size:196px;min-block-size:0;overflow-y:auto;overscroll-behavior:contain;padding:8px;padding-inline-end:6px}.editor-point-icon-list,.editor-point-icon-option{border:1px solid var(--tld-border);border-radius:4px;display:grid}.editor-point-icon-option{align-items:center;background:var(--tld-surface);inline-size:100%;justify-items:center;min-block-size:36px;padding:4px;text-align:center}.editor-point-icon-option:hover{border-color:var(--tld-fg)}.editor-point-icon-option.active{background:#f9ebe6;border-color:var(--tld-accent)}.editor-control-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.editor-line-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-segmented{display:grid;gap:0;grid-template-columns:repeat(3,minmax(0,1fr))}.editor-segmented button{background:var(--tld-surface);border:1px solid var(--tld-border);color:var(--tld-muted);min-block-size:36px;padding:0 6px}.editor-segmented button+button{margin-inline-start:-1px}.editor-segmented button.active{background:#f8eae4;border-color:var(--tld-accent);color:var(--tld-fg);position:relative}.size-row{align-items:center;display:flex;gap:12px}.size-slider{flex:1;height:6px}.size-value{color:var(--tld-muted);font:12px/1 var(--tld-font-mono);min-inline-size:40px;text-align:end}.field-divider{border-block-start:1px solid var(--tld-border);margin-block:4px 0}.editor-text-color-grid{grid-template-columns:1fr}.editor-text-color-row{align-items:center;display:grid;gap:6px;grid-template-columns:max-content 64px;justify-content:start;max-inline-size:100%}.editor-text-color-swatches{display:grid;gap:4px;grid-template-columns:repeat(8,22px)}.editor-text-color-swatch{block-size:22px;border:1px solid var(--tld-border);inline-size:22px;padding:0}.editor-text-color-swatch.active{border-color:var(--tld-accent);box-shadow:0 0 0 1px #c64e3157}.editor-color-picker{display:flex;flex:0 0 64px;justify-content:flex-end}.editor-color-picker,.editor-color-picker .n-color-picker{inline-size:64px;max-inline-size:64px;min-inline-size:64px}.editor-color-picker .n-color-picker{block-size:26px}.editor-color-picker .n-color-picker__fill{inset:3px}.editor-color-picker .n-color-picker__value{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-modal{background:#1d140d57;display:grid;inset:0;padding:24px;place-items:center;position:fixed;z-index:50}.editor-share-qr-panel{align-items:center;background:var(--tld-bg);border:1px solid var(--tld-border);display:grid;gap:10px;justify-items:center;margin-block-start:12px;padding:14px}.editor-share-qr{aspect-ratio:1;background:var(--tld-surface);border:1px solid var(--tld-border);display:block;inline-size:184px;max-inline-size:100%;padding:8px}.editor-toast{background:var(--tld-surface);border:1px solid var(--tld-fg);inset-block-end:24px;inset-inline-start:50%;opacity:0;padding:10px 14px;pointer-events:none;position:fixed;transform:translate(-50%) translateY(20px);transition:opacity .18s,transform .18s;z-index:60}.editor-toast.show{opacity:1;transform:translate(-50%) translateY(0)}@media(max-width:1240px){.image-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-workbench{padding:10px}.style-token-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.auth-page{grid-template-columns:1fr}.brand-panel{border-bottom:1px solid var(--tld-border);border-inline-end:0;gap:36px;min-block-size:58vh;padding:34px 24px}.hero h1{font-size:52px}.form-wrap{padding:24px}.auth-code-row{grid-template-columns:1fr}.auth-code-button{inline-size:100%}.login-card--compact .auth-code-row .auth-code-button{inline-size:auto}.app-top,.page{padding-inline:20px}.page-head,.style-section__head{flex-direction:column}.style-section__head{align-items:flex-start}.head-actions{justify-content:flex-start}.admin-filters{display:grid}.admin-filters .n-form-item,.admin-filters .n-form-item:first-child{min-inline-size:0}.admin-filter-actions{flex-wrap:wrap}.card-grid{grid-template-columns:1fr}.image-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-top,.editor-workspace,.profile-grid,.style-preview,.style-token-grid,.upload-grid,.upload-meta,.upload-step{grid-template-columns:1fr}.editor-shell,.editor-workspace{block-size:auto;overflow:visible}.editor-shell--edit{block-size:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr);min-block-size:100dvh;overflow:hidden}.editor-top{align-items:stretch;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));min-block-size:auto;padding:10px 12px}.editor-shell--share .editor-top--readonly{display:none}.editor-top .editor-title{grid-column:1/-1;grid-row:2;min-inline-size:0}.editor-back-link,.editor-save-action,.editor-share-action{min-block-size:38px;padding-inline:8px}.editor-back-link{grid-column:1;grid-row:1}.editor-save-action{grid-column:2;grid-row:1}.editor-share-action{grid-column:3;grid-row:1}.editor-name-action{padding-block:0}.editor-name-text,.editor-title strong{font-size:16px;line-height:1.25}.editor-title-meta{flex-wrap:nowrap;font-size:12px;gap:0;line-height:1.45;min-inline-size:0;overflow:hidden;white-space:nowrap}.editor-title-meta span{flex:0 1 auto;min-inline-size:0}.editor-title-meta span+span:before{color:var(--tld-muted);content:"·";display:inline-block;padding-inline:6px}.editor-remark-toggle:before{color:var(--tld-muted);content:"·";display:inline-block;padding-inline:6px 0}.editor-save-status,.editor-title-center--desktop{display:none}.editor-title-center--mobile{display:inline}.editor-shell--edit .editor-workspace{--share-mobile-tabs-height:44px;block-size:100%;grid-template-rows:minmax(0,1fr);min-block-size:0;overflow:hidden;position:relative}.public-share-page{block-size:100dvh;color:var(--share-h5-fg)}.public-share-page .editor-shell{block-size:100%;min-block-size:0;overflow:hidden}.editor-workspace--share{--share-mobile-tabs-height:44px;background:var(--share-h5-bg);block-size:100vh;color:var(--share-h5-fg);grid-template-rows:minmax(0,1fr);inline-size:100vw;min-block-size:0;overflow:hidden;position:relative}.editor-properties,.editor-side{border:0;border-bottom:1px solid var(--tld-border)}.editor-properties{box-shadow:none;inline-size:auto;inset:auto;position:static}.editor-side{display:block;overflow:visible}.editor-annotation-list{max-block-size:min(420px,60vh)}.editor-map,.editor-map__canvas{min-block-size:680px}.editor-workspace--share .share-mobile-top{align-items:center;background:var(--share-h5-panel);border-bottom:1px solid var(--share-h5-border);box-shadow:0 10px 30px #00000047;color:var(--share-h5-fg);display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;inset-block-start:0;inset-inline:0;min-block-size:44px;order:1;padding:10px 14px;position:absolute;z-index:4}.editor-workspace--share .share-mobile-top>div{align-items:center;display:flex;gap:10px;min-inline-size:0;overflow:hidden}.share-mobile-top strong{flex:0 1 auto;font-size:15px;line-height:1.3;max-inline-size:min(128px,38vw);min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-mobile-top .editor-title-meta{color:var(--share-h5-muted);flex:0 0 auto;font-size:12px;min-inline-size:-moz-max-content;min-inline-size:max-content;white-space:nowrap}.share-mobile-remark-toggle{align-items:center;align-self:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--share-h5-muted);display:inline-flex;font:inherit;font-size:13px;justify-self:end;line-height:1;min-block-size:28px;padding:0 2px;text-shadow:none;white-space:nowrap}.share-mobile-remark-toggle.active{color:var(--share-h5-fg)}.editor-workspace--share .editor-view-mode-switch{background:var(--share-h5-panel);border:1px solid var(--share-h5-border);box-shadow:0 8px 24px #00000038;gap:4px;inline-size:-moz-max-content;inline-size:max-content;inset-block-start:56px;inset-inline-end:auto;inset-inline-start:14px;padding:3px}.editor-workspace--share .editor-view-mode-switch button{background:var(--share-h5-panel);block-size:30px;border-color:var(--share-h5-border);color:var(--share-h5-muted);inline-size:30px}.editor-workspace--share .editor-view-mode-switch button.active{background:var(--share-h5-active);border-color:var(--share-h5-active-border);color:var(--share-h5-fg)}.editor-workspace--share .editor-view-mode-switch svg{block-size:18px;inline-size:18px}.editor-workspace--share .share-mobile-remark-box{background:var(--share-h5-panel);border:1px solid hsla(0,0%,100%,.14);box-shadow:0 8px 24px #00000038;color:var(--share-h5-fg);display:block;font-size:12px;inline-size:-moz-max-content;inline-size:max-content;inset-block-start:98px;inset-inline-start:14px;line-height:1.55;max-inline-size:calc(33.33333vw - 9.33333px);overflow-wrap:anywhere;padding:8px 10px;position:absolute;z-index:5}.editor-workspace--share .editor-map{block-size:100vh;inline-size:100vw;min-block-size:0;order:1}.editor-workspace--share .editor-map .ol-zoom{display:none}.editor-workspace--share .editor-map__canvas{block-size:100vh;inline-size:100vw;min-block-size:0}.editor-workspace--share .editor-panorama-stage{block-size:100vh;inline-size:100vw}.editor-workspace--share .editor-map-status{display:none}.editor-workspace--share .editor-side{align-content:start;background:var(--share-h5-panel-strong);border:0;border-top:1px solid var(--share-h5-border);box-shadow:0 -18px 36px #0000004d;color:var(--share-h5-fg);display:grid;gap:0;inset-block-end:var(--share-mobile-tabs-height);inset-inline:0;max-block-size:min(32dvh,260px);order:3;overflow:hidden;padding:0;position:absolute;z-index:4}.editor-workspace--share.editor-workspace--share-panel-closed .editor-side{display:none}.editor-workspace--share .editor-share-panel{display:none;margin:0;min-block-size:0;padding:8px 0}.editor-workspace--share .editor-share-panel.active{display:grid;gap:0}.editor-workspace--share .editor-group h2{font-size:16px;margin-block-end:8px}.editor-workspace--share .editor-info-row{font-size:12px}.editor-workspace--share .editor-share-panel--info .editor-info-row{border-bottom:0}.editor-workspace--share .editor-annotation-list{max-block-size:none;min-block-size:0}.editor-workspace--share .editor-share-panel--annotations h2,.editor-workspace--share .editor-share-panel--layers h2{display:none}.editor-workspace--share .editor-share-panel--layers.active{gap:0}.editor-workspace--share .editor-share-panel--layers .editor-switch-row{border-bottom:1px solid var(--share-h5-border);color:var(--share-h5-fg);font-size:13px;min-block-size:36px;padding:0 12px}.editor-workspace--share .editor-share-panel--layers .editor-switch-row:last-child{border-bottom:0}.editor-workspace--share .editor-toggle{background:#ffffff24;block-size:16px;border-color:#efe6d247;flex:0 0 auto;inline-size:28px}.editor-workspace--share .editor-toggle:after{background:#f7efe3e0;block-size:10px;inline-size:10px;inset-block-start:2px;inset-inline-start:2px}.editor-workspace--share .editor-toggle.active:after{inset-inline-start:14px}.editor-workspace--share .editor-toggle.active{background:#c64e31;border-color:#f5b6718f}.editor-workspace--share .editor-share-panel--annotations.active{gap:0;min-block-size:0;overflow:hidden}.editor-workspace--share .editor-share-panel--annotations{padding:0}.editor-workspace--share .editor-share-panel--annotations .editor-annotation-list{gap:0;margin-block-start:0;max-block-size:none;min-block-size:0;overflow-y:auto;overscroll-behavior:contain}.editor-workspace--share .editor-annotation-item{background:transparent;border:0;border-bottom:1px solid var(--share-h5-border);min-block-size:36px}.editor-workspace--share .editor-annotation-item.active{background:var(--share-h5-active)}.editor-workspace--share .editor-annotation-item+.editor-annotation-item{margin-block-start:0}.editor-workspace--share .editor-annotation-item:last-child{border-bottom:0}.editor-workspace--share .editor-annotation-select{gap:8px;grid-template-columns:20px minmax(0,1fr);min-block-size:36px;padding:0 12px}.editor-workspace--share .editor-symbol{block-size:18px;border-color:#f7efe3bd;color:var(--share-h5-fg);font-size:11px;inline-size:18px}.editor-workspace--share .editor-symbol.area,.editor-workspace--share .editor-symbol.point{background:#c64e313d}.editor-workspace--share .editor-symbol.line{background:var(--share-h5-fg);block-size:3px;margin-block-start:7px}.editor-workspace--share .editor-annotation-copy{gap:0}.editor-workspace--share .editor-annotation-copy strong{font-size:13px;font-weight:400}.editor-workspace--share .editor-annotation-copy small{color:var(--share-h5-muted);font-size:11px}.editor-workspace--share .share-mobile-tabs{background:var(--share-h5-panel);block-size:var(--share-mobile-tabs-height);border-top:1px solid var(--share-h5-border);box-shadow:0 -10px 30px #00000047;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));inset-block-end:0;inset-inline:0;min-block-size:var(--share-mobile-tabs-height);order:4;position:absolute;z-index:5}.editor-workspace--share .share-mobile-tabs button{border-inline-end:1px solid var(--share-h5-border);color:var(--share-h5-muted);min-block-size:44px;text-shadow:none}.editor-workspace--share .share-mobile-tabs button.active{background:var(--share-h5-active);box-shadow:inset 0 1px 0 var(--share-h5-active-border);color:var(--share-h5-fg)}.editor-workspace--edit .editor-map{min-block-size:0;order:1}.editor-workspace--edit .editor-map__canvas{min-block-size:0}.editor-workspace--edit .editor-map-tools{flex-direction:column;gap:6px;inset-block-start:12px;inset-inline-start:12px;max-inline-size:56px;padding:7px}.editor-workspace--edit .editor-map-tools button{block-size:40px;inline-size:40px}.editor-workspace--edit .editor-map-home{inset-block-start:12px;inset-inline-end:12px;inset-inline-start:auto}.editor-workspace--edit .editor-view-mode-switch{inset-block-start:12px;inset-inline-end:auto;inset-inline-start:74px;max-inline-size:calc(100% - 86px)}.editor-workspace--edit .editor-remark-panel{inline-size:min(340px,calc(100% - 24px));inset-block-start:72px;inset-inline-start:12px}.editor-workspace--edit .editor-view-mode-switch button{block-size:40px;inline-size:40px}.editor-workspace--edit .editor-map-status{inset-block-end:calc(var(--share-mobile-tabs-height) + 12px);inset-inline-start:12px;max-inline-size:calc(100% - 24px)}.editor-workspace--edit .editor-side{align-content:start;background:#fefbf8f5;border:0;border-top:1px solid var(--tld-border);box-shadow:0 -18px 38px #1d140d14;display:grid;gap:0;inset-block-end:var(--share-mobile-tabs-height);inset-inline:0;max-block-size:min(32dvh,260px);order:2;overflow:hidden;padding:0;position:absolute;z-index:4}.editor-workspace--edit.editor-workspace--share-panel-closed .editor-side{display:none}.editor-workspace--edit .editor-share-panel{display:none;margin:0;min-block-size:0;padding:14px}.editor-workspace--edit .editor-share-panel.active{display:grid;gap:12px}.editor-workspace--edit .editor-share-panel--annotations h2,.editor-workspace--edit .editor-share-panel--layers h2{display:none}.editor-workspace--edit .editor-share-panel--layers.active{gap:6px}.editor-workspace--edit .editor-share-panel--layers .editor-switch-row{border-bottom:0;min-block-size:38px;padding:0 10px}.editor-workspace--edit .editor-share-panel--annotations{padding:0}.editor-workspace--edit .editor-share-panel--annotations.active{gap:0;min-block-size:0;overflow:hidden}.editor-workspace--edit .editor-share-panel--annotations .editor-annotation-list{gap:0;margin-block-start:0;max-block-size:none;min-block-size:0;overflow-y:auto;overscroll-behavior:contain}.editor-workspace--edit .editor-annotation-item{border:0;min-block-size:30px}.editor-workspace--edit .editor-annotation-item+.editor-annotation-item{margin-block-start:0}.editor-workspace--edit .editor-annotation-select{gap:4px;grid-template-columns:18px minmax(0,1fr);min-block-size:30px;padding:0 34px 0 7px}.editor-workspace--edit .editor-annotation-delete{block-size:30px;inline-size:30px}.editor-workspace--edit .editor-symbol{block-size:18px;font-size:11px;inline-size:18px}.editor-workspace--edit .editor-symbol.line{block-size:3px;margin-block-start:7px}.editor-workspace--edit .editor-annotation-copy{gap:0}.editor-workspace--edit .editor-annotation-copy strong{font-size:12px}.editor-workspace--edit .share-mobile-tabs{background:#fefbf8fa;block-size:var(--share-mobile-tabs-height);border-top:1px solid var(--tld-border);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));inset-block-end:0;inset-inline:0;min-block-size:var(--share-mobile-tabs-height);order:3;position:absolute;z-index:5}.editor-workspace--edit .editor-properties{background:#fefbf8fa;border:0;border-top:1px solid var(--tld-border);box-shadow:0 -18px 42px #1d140d24;inline-size:auto;inset-block:auto var(--share-mobile-tabs-height);inset-inline:0;max-block-size:min(46dvh,360px);overflow-y:auto;padding:12px 14px 16px;position:absolute;z-index:7}.editor-workspace--edit .editor-property-header{margin-block-end:10px}.share-mobile-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-inline-end:1px solid var(--tld-border);color:var(--tld-muted);font-weight:700;min-block-size:44px;padding:0 8px;position:relative;touch-action:manipulation;z-index:1}.share-mobile-tabs button:last-child{border-inline-end:0}.share-mobile-tabs button.active{background:#f8eae4;color:var(--tld-fg)}}@media(max-width:560px){.auth-page--login{align-content:start;background-color:var(--tld-bg);background-image:linear-gradient(90deg,#fefbf8f5,#fefbf8b8 58%,#fefbf838),linear-gradient(180deg,#fefbf8c7,#fefbf83d 46%,#fefbf8f2),url(../images/auth-orthophoto-bg.png);background-position:50%;background-repeat:no-repeat;background-size:cover;grid-template-rows:auto auto auto;min-block-size:100svh;padding:0;position:relative}.auth-page--login:before{background:linear-gradient(90deg,#fefbf8f5,#fefbf8b8 58%,#fefbf838),linear-gradient(180deg,#fefbf8c7,#fefbf83d 46%,#fefbf8f2);content:"";inset:0;pointer-events:none;position:absolute;z-index:0}.auth-page--login .brand-panel{background:transparent;border:0;display:contents;min-block-size:auto;padding:0}.auth-page--login .form-wrap,.auth-page--login .hero,.auth-page--login .mark{position:relative;z-index:1}.auth-page--login .mark{padding:26px 20px 0}.auth-page--login .brand-wordmark{font-size:20px}.auth-page--login .hero{align-self:start;margin-block-end:7px;margin-block-start:32px;max-inline-size:310px;padding:0 20px}.auth-page--login .kicker{margin-block-end:8px}.auth-page--login .hero h1{font-size:30px;line-height:1;max-inline-size:100%}.auth-page--login .hero p{font-size:13px;line-height:1.7;margin-block-start:10px;max-inline-size:100%}.auth-page--login .form-wrap{background:transparent;padding:26px 20px 20px;place-items:stretch}.auth-page--login .login-card--compact{background:#fffdfaf5;border:1px solid hsla(37,17%,85%,.92);box-shadow:0 18px 42px #1d140d1f;inline-size:100%;padding:22px 20px}.app-top{align-items:flex-start;flex-direction:column}.app-nav{inline-size:100%}.app-nav a,.app-nav button{flex:1 1 auto}.page-title{font-size:42px}.admin-metrics{grid-template-columns:1fr}.admin-workbench{margin-inline:-8px;padding:10px}.hero h1{font-size:42px}.card-grid:not(.image-card-grid) .card-row{flex-direction:column}.image-card-grid,.style-preview,.style-token-grid{grid-template-columns:1fr}.editor-workspace--edit .editor-map,.editor-workspace--edit .editor-map__canvas,.editor-workspace--share .editor-map,.editor-workspace--share .editor-map__canvas,.editor-workspace--share .editor-panorama-stage{min-block-size:0}.editor-workspace--edit .editor-side,.editor-workspace--share .editor-side{max-block-size:min(34dvh,240px)}.editor-workspace--edit .editor-map-status,.editor-workspace--share .editor-map-status{align-items:flex-end;gap:8px;inset-block-end:12px;inset-inline-start:12px;max-inline-size:calc(100% - 24px)}.editor-workspace--edit .editor-map-status{inset-block-end:calc(var(--share-mobile-tabs-height) + 12px)}.editor-workspace--share .psv-compass{block-size:80px!important;inline-size:80px!important}.editor-workspace--share .ol-rotate,.editor-workspace--share .psv-compass{inset:55px 8px auto auto!important}.editor-workspace--share .ol-rotate button{background:#181818bf!important;border-color:#ffffff1f!important;color:#000!important}.editor-workspace--share .ol-rotate button span,.editor-workspace--share .ol-rotate button:after,.editor-workspace--share .ol-rotate button:before{filter:invert(1)}.editor-workspace--share .ol-rotate button:hover{background:#242424d9!important;border-color:#ffffff40!important;color:#fff!important}}.psv-navbar--open{bottom:18px!important}
