.platform-page{background:radial-gradient(ellipse at 0 0,#17253055,transparent 55%),var(--bg)}
.map-level{margin:30px 0 38px}.map-level-heading{display:flex;align-items:baseline;gap:22px;margin-bottom:16px}.map-level-heading h2{font-size:19px;white-space:nowrap;margin:0}.map-level-heading h2 span{font:11px var(--mono);color:var(--accent);margin-left:10px}.map-level-heading p{font-size:11px;color:var(--muted);line-height:1.8;margin:0}.map-card-content h3{margin:0 0 9px;font-size:18px;font-weight:500}.map-base-reference{display:block;font-size:10px;color:#a1c5d2;margin-top:8px}.map-card-actions .danger{flex:0 0 auto}.editor-hierarchy{display:flex;gap:8px;font-size:10px;color:var(--muted);margin-top:10px}.editor-hierarchy a{color:var(--accent)}#delete-map[hidden]{display:none}.map-delete-dialog{width:460px}.map-delete-dialog p{overflow-wrap:anywhere}@media(max-width:760px){.map-level-heading{align-items:flex-start;flex-direction:column;gap:8px}}
.map-viewport{position:relative}
.button-link.primary{background:var(--accent);border-color:var(--accent);color:#21170c}
.translate-gizmo{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:hidden;pointer-events:none;touch-action:none;user-select:none}
.gizmo-axis{outline:none;cursor:grab;touch-action:none}
.gizmo-hit{fill:none;stroke:transparent;stroke-width:22;pointer-events:stroke}
.gizmo-line{fill:none;stroke:var(--axis-color);stroke-width:3;stroke-linecap:round;pointer-events:none;filter:drop-shadow(0 1px 2px #000)}
.gizmo-tip{fill:var(--axis-color);stroke:#0b1923;stroke-width:1;pointer-events:all}
.gizmo-label{fill:var(--axis-color);stroke:#0b1923;stroke-width:3;paint-order:stroke;font:bold 14px sans-serif;text-anchor:middle;dominant-baseline:central;pointer-events:all}
.gizmo-origin{fill:#edf5fa;stroke:#14222d;stroke-width:2;pointer-events:none}
.gizmo-axis:hover .gizmo-line,.gizmo-axis:focus-visible .gizmo-line,.gizmo-axis.dragging .gizmo-line{stroke-width:5}
.gizmo-axis:hover,.gizmo-axis:focus-visible,.gizmo-axis.dragging{--axis-color:#ffe096!important}
.gizmo-axis.dragging{cursor:grabbing}
.gizmo-axis[aria-disabled=true]{opacity:.35;cursor:default}
.platform-page .editor-side{display:block}
.platform-page header{height:76px;gap:48px}.platform-page .brand{gap:0}.platform-nav{display:flex;gap:30px;align-items:center;font-size:12px}.platform-nav a{color:#8e9fac;padding:27px 0;border-bottom:2px solid transparent}.platform-nav a.active{color:var(--accent);border-color:var(--accent)}.platform-label{margin-left:auto;color:#617687;font:8px var(--mono);letter-spacing:1.2px}
.platform-page main{max-width:1600px;padding:32px 36px}.platform-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.platform-top h1{font-size:27px;margin:9px 0}.platform-top p{font-size:12px;color:#8c9eac;line-height:1.8;margin:8px 0 0}.toolbar{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.toolbar button,.toolbar a{font-size:11px;white-space:nowrap}.button-link{padding:10px 14px;border:1px solid #3b4c59;border-radius:5px;background:#1a2530}.subtle{color:#8ea5b4;font-size:10px;line-height:1.8}.platform-card{background:#111b24;border:1px solid #2b3c49;border-radius:8px;overflow:hidden}.maps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}.map-image{height:150px;position:relative;overflow:hidden}.map-image img{width:100%;height:100%;object-fit:cover;filter:brightness(.75)}.map-image .tag{position:absolute;top:15px;left:16px;background:#0d182bcc}.map-card-content{padding:20px}.map-card-content h2{margin:0 0 9px;font-size:18px;font-weight:500}.map-card-content p{font-size:11px;color:#8fa3b2;line-height:1.8;min-height:40px}.map-meta{display:flex;justify-content:space-between;padding:14px 0 18px;font:10px var(--mono);color:#88bda9}.map-card-actions{display:flex;gap:9px}.map-card-actions>*{flex:1;text-align:center;font-size:11px}.map-help{margin-top:24px;font-size:11px;line-height:1.9;color:#7f96a7}.empty-state{padding:40px;color:var(--muted)}
#platform-toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:90vw;padding:14px 22px;background:#213039;border:1px solid #63767f;color:#d9e5eb;border-radius:7px;z-index:10000;box-shadow:0 8px 30px #0006;font-size:12px}.error-text{color:#efad94!important}.status-pill{display:inline-block;color:var(--green);background:#17332c;border-radius:10px;font-size:9px;padding:4px 8px}.status-pill.failed{color:#efad94;background:#40272b}
.resource-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.metric-card{padding:22px}.metric-card label{color:#8ca5b6;font-size:11px}.metric-card strong{display:block;font:27px var(--mono);margin:16px 0 8px;color:#f0c69d}.metric-card p{font-size:10px;color:#8298a8;line-height:1.7;margin:7px 0}.meter{height:4px;background:#293a47;margin-top:18px;border-radius:4px;overflow:hidden}.meter span{display:block;background:#ddaa76;height:100%;width:0;transition:width .5s}.resource-table{overflow:auto}.resource-table table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}.resource-table th{font-size:10px;color:#7f99ab;font-weight:400;text-align:left;padding:18px 23px;background:#15222d}.resource-table td{padding:20px 23px;border-top:1px solid #233340}.resource-table td:not(:first-child){font:11px var(--mono)}.resource-table td small{display:block;color:#718e9f;margin-top:7px;font:10px sans-serif}.resource-bottom{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.resource-note{padding:20px;line-height:1.9;font-size:11px;color:#90a4b2}.resource-note b{color:#cad7df;font-weight:500}
.platform-page main.editor-main{max-width:none;padding:18px 22px}.editor-main .platform-top{margin-bottom:16px}.editor-heading input{background:transparent;border:0;border-bottom:1px solid #40515e;color:#e1ebf1;font:22px Inter,'Microsoft YaHei',sans-serif;padding:6px 0;width:320px;max-width:100%}.editor-heading .subtle{margin-top:6px}.editor-layout{display:grid;grid-template-columns:232px minmax(300px,1fr) 258px;gap:15px;height:calc(100vh - 195px);min-height:500px}.editor-side{overflow:auto;padding:17px;background:#101a23;border:1px solid #273846;border-radius:7px}.editor-side h2{font-size:13px;font-weight:500;margin:0 0 12px}.editor-side h3{font-size:11px;color:#8ca7b9;font-weight:500;margin:19px 0 11px}.library-actions{display:flex;gap:6px;margin-bottom:12px}.library-actions button{font-size:10px;padding:8px;flex:1}.asset-filter{width:100%;padding:9px;background:#09141e;color:#d3e1e9;border:1px solid #2c4251;border-radius:4px;margin-bottom:12px;font:11px inherit}.asset-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.asset-item{padding:11px 6px;background:#17232d;border-color:#2d4352;min-height:88px;text-align:center}.asset-item.selected{border-color:var(--accent);background:#332a21}.asset-icon{display:block;width:32px;height:32px;margin:0 auto 9px;background:#bdcddd}.asset-icon,.ui-icon{-webkit-mask:var(--icon-url) center/contain no-repeat;mask:var(--icon-url) center/contain no-repeat}.asset-item:hover .asset-icon,.asset-item.selected .asset-icon{background:var(--accent)}.ui-icon{display:inline-block;width:14px;height:14px;flex-shrink:0;background:currentColor}.library-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.asset-item b{font-weight:400;font-size:11px;display:block}.asset-item small{font-size:8px;color:#8a9fae;display:block;margin-top:6px;line-height:1.5}.asset-item .asset-state{color:#e7bb83}.editor-side .subtle{font-size:9px;margin:11px 0}.editor-center{position:relative;border:1px solid #2d4453;border-radius:8px;overflow:hidden;background:#08131e}.map-viewport{height:100%;width:100%}.editor-view-tools{position:absolute;top:14px;left:14px;z-index:2;display:flex;gap:7px;flex-wrap:wrap}.editor-view-tools button{background:#122330ef;font-size:10px;padding:9px 12px;border-color:#405665}.editor-view-tools button.active{color:#f1bb85;border-color:#d4985e}.editor-view-note{position:absolute;left:15px;right:15px;bottom:32px;background:#0d1a25dd;padding:11px 14px;font-size:10px;line-height:1.7;color:#a9c4d6;border:1px solid #375063;border-radius:5px;pointer-events:none}.object-list{max-height:150px;overflow:auto;display:flex;flex-direction:column;gap:5px}.object-list button{text-align:left;font-size:11px;background:#132330;padding:9px}.object-list button.selected{border-color:var(--accent);color:#f0ba7e}.transform-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.transform-grid label{font-size:9px;color:#819bac}.transform-grid input{display:block;width:100%;background:#0c1721;border:1px solid #314959;border-radius:4px;color:#dae9f2;padding:8px 5px;font:11px var(--mono);margin-top:6px}.object-name{width:100%;background:#0c1721;border:1px solid #314959;border-radius:4px;color:#dae9f2;padding:9px;margin-top:6px;font:11px inherit}.editor-object-actions{display:flex;gap:7px;margin-top:15px}.editor-object-actions button{flex:1;font-size:10px;padding:8px}.editor-label{font-size:10px;color:#7897aa}.editor-status{color:#85b9a2;font:10px var(--mono);margin-left:10px}.editor-status.dirty{color:#e5b581}.editor-save-note{margin-top:17px;padding-top:14px;border-top:1px solid #2a3d4a;font-size:10px;line-height:1.8;color:#829dac}.cesium-viewer-bottom{font-size:8px!important}.editor-upload-status{font-size:10px;line-height:1.8;color:#e8b27d}
@media(max-width:1150px){.platform-label{display:none}.editor-layout{grid-template-columns:190px minmax(270px,1fr) 225px;gap:10px}.editor-side{padding:13px}.platform-top{align-items:flex-start}.toolbar{max-width:470px;justify-content:flex-end}.resource-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.platform-page header{padding:0 16px;gap:20px}.platform-nav{gap:16px;font-size:10px}.platform-page .brand{font-size:19px}.platform-page main{padding:25px 16px}.platform-top{flex-direction:column}.toolbar{justify-content:flex-start}.editor-layout{grid-template-columns:160px minmax(250px,1fr);height:auto;overflow:auto}.editor-side:last-child{grid-column:1 / -1}.editor-center{min-height:520px}.editor-side:first-child{max-height:520px}.resource-bottom{grid-template-columns:1fr}.metric-card{padding:16px}.metric-card strong{font-size:22px}.platform-page main.editor-main{padding:16px 12px}}
