:root{--panel:#fff;--bg:#f6f8fb;--border:#e0e6ee;--text:#243247;--muted:#7c8ba1;color:#243247;font-synthesis:none;background:#f6f8fb;font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:13px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button,.button{cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e0e6ee;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:7px 11px;transition:background .15s,border-color .15s;display:inline-flex}button:hover,.button:hover{background:#f1f5fa;border-color:#c6d3e3}button:disabled{opacity:.38;cursor:default}button.active{color:#2563eb;background:#eaf1ff;border-color:#c8dbff}button.primary{color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 2px 4px #2563eb18}button.primary:hover{background:#1e56d6}input,select,textarea{background:#fff;border:1px solid #dce4ed;border-radius:5px;min-width:0;padding:7px 8px}input:focus,select:focus,textarea:focus{border-color:#6d9df4;outline:2px solid #2563eb35}input.invalid{background:#fff5f5;border-color:#e57575}input[type=checkbox]{accent-color:#2563eb;width:14px;height:14px}input[type=color]{width:38px;height:29px;padding:3px}h1,h2,h3,p{margin:0}h3{font-size:13px;font-weight:600}h3 span{color:#8b98aa;float:right;font-size:11px;font-weight:400}p{line-height:1.7}.app-shell{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.app-header{z-index:10;background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;align-items:center;gap:22px;height:60px;padding:0 20px;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;display:flex}.brand-home>span:first-child{color:#2563eb;display:flex}.brand h1{letter-spacing:-.5px;font-size:19px;font-weight:700}.app-header nav{border-left:1px solid #edf1f5;align-items:center;gap:4px;height:100%;padding-left:18px;display:flex}.app-header nav button{color:#7b889a;border:0;border-radius:5px;padding:8px 13px;font-weight:500}.app-header nav button.active{color:#2563eb;background:#edf3ff}.project-title{color:#697990;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;max-width:220px;margin-left:auto;display:flex;overflow:hidden}.header-actions{align-items:center;gap:7px;display:flex}.header-actions>button:nth-child(-n+2){border:0;padding:7px}.header-divider{background:#e7ecf2;width:1px;height:21px;margin:0 4px}.editor{flex:1;grid-template-columns:244px minmax(0,1fr) 290px;min-height:0;display:grid}.library{background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;min-height:0;display:flex;overflow:auto}.panel-title{border-bottom:1px solid #edf1f6;flex-shrink:0;justify-content:space-between;align-items:center;height:49px;padding:0 17px;font-size:14px;font-weight:600;display:flex}.subtle{color:#94a0b1;font-size:11px;font-weight:400}.search-box{color:#8997ab;background:#f6f8fb;border:1px solid #e7ecf3;border-radius:6px;align-items:center;gap:7px;height:32px;margin:13px 13px 8px;padding:0 9px;display:flex}.search-box input{background:0 0;border:0;width:100%;padding:5px 0;font-size:12px}.search-box input:focus{outline:0}.library-tabs{gap:4px;padding:4px 12px 12px;display:flex}.library-tabs button{color:#8291a5;border:0;border-radius:4px;padding:5px 7px;font-size:11px}.asset-grid{grid-template-columns:1fr 1fr;gap:9px;padding:0 12px 15px;display:grid}.asset-card{color:#56667a;background:#fff;border:1px solid #e3e9f2;flex-direction:column;gap:0;min-width:0;padding:0;font-size:11px;position:relative;overflow:hidden}.asset-card>div{background:linear-gradient(135deg,#f2f5fa,#eaf0f6);justify-content:center;align-items:center;width:100%;height:82px;display:flex;position:relative}.asset-card img{object-fit:contain;width:108%;height:100%}.asset-card>span{text-align:center;width:100%;padding:7px 1px;font-size:11px}.asset-card:hover{border-color:#7ca9f7;box-shadow:0 3px 8px #0f347414}.asset-plus{color:#fff;background:#2563eb;border-radius:50%;padding:2px;display:none;position:absolute;bottom:5px;right:5px}.asset-card:hover .asset-plus{display:flex}.tree-heading{background:#fbfcfe;border-left:0;border-right:0;border-radius:0;flex-shrink:0;justify-content:flex-start;padding:12px 15px;font-weight:600}.tree-heading>span{color:#a2adbb;margin-left:auto;font-size:11px}.scene-tree{padding:7px 9px}.scene-tree button{color:#77859a;border:0;border-radius:4px;justify-content:flex-start;width:100%;padding:7px 9px;font-size:12px}.scene-tree button>span{text-overflow:ellipsis;overflow:hidden}.scene-tree small{color:#a4afbc;margin-left:auto;font-size:10px}.library-footer{white-space:nowrap;color:#a0abba;border-top:1px solid #edf1f5;align-items:center;gap:7px;margin-top:auto;padding:15px 13px;font-size:10px;display:flex}.scene-main{flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden}.scene-toolbar{background:#fff;border-bottom:1px solid #e4eaf2;flex-shrink:0;justify-content:space-between;align-items:center;gap:7px;height:49px;padding:0 14px;display:flex}.scene-toolbar>div{align-items:center;gap:4px;display:flex}.scene-toolbar button{color:#65758b;border:0;padding:7px 9px;font-size:12px}.scene-toolbar .toolbar-divider{background:#e5eaf1;width:1px;height:19px;margin:0 5px}.canvas-wrap{background:#f6f8fb;flex:1;min-height:0;position:relative}.viewport{position:absolute;inset:0}.scene-viewport-shell{flex-direction:column;min-width:0;min-height:0;display:flex;position:absolute;inset:0}.scene-viewport-shell>.viewport{flex:1;min-height:0;position:relative;inset:auto;overflow:hidden}.scene-viewbar{color:#64758a;background:#fff;border-bottom:1px solid #e1e8ef;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:8px 14px;font-size:11px;display:flex}.scene-viewbar-title,.scene-viewbar-actions{align-items:center;gap:8px;display:flex}.scene-viewbar-title strong{color:#304359;white-space:nowrap}.scene-viewbar-title span{white-space:nowrap;color:#8492a4}.scene-viewbar-actions button{white-space:nowrap;color:#435c78;background:#f8fafc;border:1px solid #dce5ef;border-radius:6px;padding:5px 8px;font-size:11px}.scene-viewbar-actions button[aria-pressed=true]{color:#2563eb;background:#edf3ff;border-color:#d5e2ff}.scene-selection-bar{border-top:1px solid #e1e8ef;border-bottom:none;min-height:34px}.scene-selection-bar>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.scene-selection-bar small{color:#95a1b2;white-space:nowrap}.scene-label-leaders{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.scene-label-leaders line{stroke:#9badbf;stroke-width:1px}.scene-label-leaders line.is-selected{stroke:#2563eb;stroke-width:1.5px}.label-layout-help{color:#8191a5;font-size:11px;line-height:1.6}@media (width<=1100px){.scene-viewbar{flex-wrap:wrap;gap:5px;padding:6px 10px}.scene-selection-bar small{display:none}}@media (width<=600px){.scene-viewbar-title span{font-size:10px}.scene-viewbar-actions{gap:5px}.scene-viewbar-actions button{padding:5px 6px;font-size:10px}}.viewport canvas{outline:none;width:100%;height:100%;display:block}.viewport-hint{color:#8b99aa;pointer-events:none;background:#f6f8fbcc;border:1px solid #e2e8f0;border-radius:18px;padding:7px 13px;font-size:11px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.scene-caption{pointer-events:none;flex-direction:column;gap:5px;display:flex;position:absolute;top:21px;left:23px}.scene-caption>span{color:#5a6b81;font-size:12px;font-weight:600}.scene-caption small{color:#98a4b5;font-size:10px}.port-pin{background:#2563eb;border:2px solid #fff;border-radius:50%;width:15px;height:15px;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #2563eb25}.port-pin:hover{background:#10b981;box-shadow:0 0 0 7px #10b98125}.connection-status{color:#2563eb;background:#e8f0ff;border-bottom:1px solid #bfd4fd;flex-shrink:0;padding:7px 14px;font-size:12px}.view-controls{background:#fff;border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;height:43px;padding:0 16px;display:flex}.view-controls>div{gap:5px;display:flex}.view-controls button{color:#8794a6;border:0;padding:5px 11px;font-size:11px}.inspector{background:#fff;border-left:1px solid #e2e8f0;overflow:auto}.inspector section{border-bottom:1px solid #edf1f5;padding:17px}.inspector section h3{margin-bottom:15px}.object-heading{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.object-heading strong{font-size:14px}.object-heading p{color:#8b98a9;margin-top:5px;font-size:10px}.object-heading button{color:#8a98ab;border:0;padding:5px}.field-line{color:#78869a;justify-content:space-between;align-items:center;gap:9px;margin-bottom:12px;font-size:12px;display:flex}.field-line>input:not([type=color]),.field-line>select{width:145px;font-size:12px}.field-line input[type=number]{text-align:right;width:100px}.check{color:#7a889a;align-items:center;gap:7px;margin-top:10px;font-size:12px;display:flex}.axis-row{align-items:center;gap:5px;margin-bottom:10px;display:flex}.axis-row>label{color:#8693a5;min-width:29px;font-size:12px}.axis-cell{flex:1;min-width:0;position:relative}.axis-cell>span{color:#a0adbe;font-size:10px;position:absolute;top:8px;left:7px}.axis-cell input{text-align:right;-moz-appearance:textfield;width:100%;padding:6px 3px 6px 18px;font-size:11px}.axis-cell input::-webkit-inner-spin-button{display:none}.port-row{background:#fbfcfe;border:1px solid #e9eef5;justify-content:flex-start;width:100%;margin-bottom:6px;padding:10px 9px;font-size:12px;display:flex}.port-row>i{background:#c4cdd8;border-radius:50%;width:7px;height:7px}.port-row>i.occupied{background:#38aa99}.port-row span{margin-left:3px}.port-row small{color:#a1adbd;margin-left:5px;font-size:10px}.port-row em{color:#8c9bb0;margin-left:auto;font-size:10px;font-style:normal}.text-button{color:#2563eb;border:0;padding:4px 0;font-size:11px}.segmented{gap:5px;margin:12px 0;display:flex}.segmented button{color:#8190a4;background:#f8fafc;flex:1;padding:7px 4px;font-size:11px}.danger-actions{flex-direction:column;gap:7px;display:flex}.danger-actions button,.danger{color:#b76a6a;padding:7px;font-size:11px}.empty-inspector{text-align:center;color:#8a98aa;padding:22px 5px}.empty-inspector p{color:#a7b2c1;margin-top:8px;font-size:11px}.statusbar{color:#94a0af;background:#fff;border-top:1px solid #e2e8f0;flex-shrink:0;align-items:center;gap:24px;height:32px;padding:0 17px;font-size:10px;display:flex}.statusbar>span:first-child{align-items:center;gap:6px;display:flex}.statusbar button{color:#8998ad;border:0;padding:3px 0;font-size:10px}.statusbar button.warning{color:#b88848}.status-right{margin-left:auto}.state-dot{background:#aab7c7;border-radius:50%;width:6px;height:6px;display:inline-block}.state-dot.on{background:#35ac91}.operation-dialog{background:#fffffffa;border:1px solid #dce5f1;border-radius:9px;width:335px;padding:17px;position:absolute;top:70px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #3c526426}.dialog-heading{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.dialog-heading h3{font-size:15px}.dialog-heading>button{color:#93a0b3;border:0;padding:3px}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:19px;display:flex}.helper{color:#98a4b5;font-size:11px;line-height:1.65}.form-error{color:#bd6868;font-size:11px;line-height:1.65}.toast{color:#6e7f94;z-index:80;background:#fff;border:1px solid #dce4ee;border-radius:8px;align-items:center;gap:9px;max-width:80vw;padding:13px 16px;display:flex;position:fixed;bottom:52px;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #324a661a}.toast>button{border:0;padding:3px}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#22324a33;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:450px;max-width:90vw;max-height:80vh;padding:24px;overflow:auto;box-shadow:0 24px 70px #1b304835}.export-options{flex-direction:column;gap:11px;margin-top:21px;display:flex}.export-options button{color:#5e7798;justify-content:flex-start;gap:14px;padding:17px}.export-options button>span{text-align:left;flex-direction:column;gap:5px;font-weight:500;display:flex}.export-options small{color:#98a4b4;font-size:11px;font-weight:400}.template-choices{gap:8px;margin:22px 0;display:flex}.template-choices button{flex-direction:column;flex:1;gap:10px;padding:19px 5px;font-size:11px}.wide{width:100%;padding:10px}.issue-list button{white-space:normal;text-align:left;border:0;border-bottom:1px solid #edf1f6;justify-content:flex-start;width:100%;padding:12px}.issue-list small{color:#a2aec0;margin-top:5px;font-size:10px;display:block}.projects-page,.fishery-page{background:#f6f8fb;flex:1;padding:35px 40px;overflow:auto}.page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:29px;display:flex}.eyebrow{letter-spacing:.7px;color:#96a4b8;font-size:11px}.page-heading h2{letter-spacing:-.5px;margin:8px 0 10px;font-size:25px}.page-heading p{color:#97a3b4;font-size:12px}.heading-actions{align-items:center;gap:10px;display:flex}.heading-actions button,.heading-actions .button{padding:9px 13px;font-size:12px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;display:grid}.project-card{background:#fff;border:1px solid #e0e7f0;border-radius:10px;overflow:hidden}.project-preview{color:#88a8c2;background:linear-gradient(140deg,#ebf1fa,#e3edf4);border:0;border-radius:0;flex-direction:column;gap:15px;width:100%;height:170px}.project-preview span{color:#8b9caf;font-size:11px}.project-card>div{padding:18px}.project-card h3{font-size:15px}.project-card p{color:#97a4b6;margin-top:8px;font-size:12px}.project-actions{gap:7px;margin-top:17px;display:flex}.project-actions button{color:#8899ad;border:0;margin-right:10px;padding:4px 0;font-size:11px}.new-project-card{color:#91a1b6;background:0 0;border:1px dashed #b4c4d9;border-radius:10px;flex-direction:column;gap:13px;min-height:290px}.pill{border-radius:20px;padding:6px 11px;font-size:11px}.pill.teal{color:#259f91;background:#e5f7f2}.metric-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px;display:grid}.metric{background:#fff;border:1px solid #e3e9f1;border-radius:9px;padding:21px 24px}.metric>div{color:#8a98ab;align-items:center;gap:9px;font-size:12px;display:flex}.metric strong{letter-spacing:-1px;color:#33485e;margin:22px 0 17px;font-size:33px;font-weight:600;display:block}.metric strong small{color:#a7b3c1;letter-spacing:0;margin-left:10px;font-size:12px;font-weight:400}.metric footer{color:#a5b0bf;font-size:10px}.fishery-grid{grid-template-columns:1.65fr 1fr;gap:20px;display:grid}.content-card{background:#fff;border:1px solid #e3e9f1;border-radius:9px;padding:23px}.content-card h3{margin-bottom:24px;font-size:14px}.trend{width:100%;height:210px}.chart-foot{color:#a2aec0;justify-content:space-between;font-size:10px;display:flex}.device-control{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:center;padding:18px 0;display:flex}.device-control>div{grid-template-columns:10px auto;align-items:center;gap:7px;display:grid}.device-control strong{font-size:13px;font-weight:500}.device-control small{color:#a5b1c0;grid-column:2;font-size:11px}.device-control button{color:#607c9f;background:#f7faff;font-size:11px}.command-state{color:#588ea1;margin:20px 0 10px;font-size:11px}.facility-flow{flex-wrap:wrap;gap:13px;margin-bottom:20px;display:flex}.facility-flow>div{background:#f9fbfd;border:1px solid #e7edf4;border-radius:7px;flex-direction:column;flex:1;gap:9px;min-width:86px;padding:15px 10px;display:flex}.facility-flow span{color:#a2b7c9;font-size:10px}.facility-flow strong{color:#6c8299;font-size:12px;font-weight:500}.facility-flow small{color:#a9b5c3;font-size:10px}.alarm-banner{color:#c48354;background:#fff5ef;border-radius:7px;align-items:center;gap:10px;padding:15px;display:flex}.alarm-banner.healthy{color:#52a590;background:#edf8f4}.alarm-banner>div{flex-direction:column;gap:6px;display:flex}.alarm-banner strong{font-size:12px;font-weight:500}.alarm-banner small{opacity:.8;font-size:10px}.alarm-banner button{margin-left:auto;padding:5px 7px;font-size:10px}.exercise-buttons{gap:7px;margin-top:17px;display:flex}.exercise-buttons button{padding:6px 8px;font-size:10px}.event-log{color:#889ab0;margin-top:17px;font-size:10px}.event-log>div{gap:17px;padding:6px 0;display:flex}.simulation-watermark{color:#2ea087;background:#e6f8f1;border:1px solid #cdeadd;border-radius:5px;padding:4px 7px;font-size:11px}.render-error{text-align:center;color:#b96c68;position:absolute;top:45%;left:10%;right:10%}.scene-label{box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;color:#7b8c9e;pointer-events:none;background:#fffffff2;border:1px solid #dce4ed;border-radius:4px;padding:4px 8px;font-size:11px;line-height:1.2;position:absolute;overflow:hidden;transform:none;box-shadow:0 2px 6px #334e6510}.scene-label.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#2563eb;font-weight:600}@media (width<=1200px){.app-header{gap:10px;padding:0 12px}.brand h1{font-size:16px}.app-header nav{padding-left:9px}.app-header nav button{padding:7px 9px}.project-title{display:none}.header-actions{margin-left:auto}.editor{grid-template-columns:210px minmax(0,1fr) 250px}.axis-cell input{font-size:10px}.inspector section{padding:15px 12px}.scene-toolbar{padding:0 7px}.scene-toolbar button{padding:6px;font-size:11px}.projects-page,.fishery-page{padding:25px}.metric{padding:18px}.heading-actions{flex-wrap:wrap;justify-content:flex-end}.page-heading{align-items:flex-start}}@media (width<=850px){.editor{grid-template-columns:170px minmax(0,1fr)}.inspector{z-index:15;width:230px;display:none;position:absolute;top:110px;bottom:75px;right:0;box-shadow:-6px 0 25px #30486215}.brand h1{font-size:14px}.app-header{gap:8px;height:55px}.app-header nav{border:0;padding-left:0}.app-header nav button{padding:7px;font-size:11px}.header-actions button{gap:0;padding:7px;font-size:0}.asset-grid{gap:7px;padding:0 8px 12px}.asset-card>div{height:68px}.asset-card>span{font-size:10px}.library-tabs{gap:0;padding:4px 7px 12px}.library-tabs button{padding:5px;font-size:10px}.scene-toolbar button{font-size:10px}.viewport-hint{white-space:nowrap;font-size:9px}.statusbar{gap:12px;padding:0 10px}.status-right{display:none}.fishery-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:1fr 1fr}.page-heading{flex-direction:column}.heading-actions{justify-content:flex-start}.fishery-page,.projects-page{padding:22px 15px}.metric strong{font-size:28px}}@media (width<=560px){.brand h1{display:none}.app-header{padding:0 9px}.app-header nav{gap:0}.header-actions{gap:2px}.header-divider{display:none}.editor{grid-template-columns:112px minmax(0,1fr)}.panel-title{padding:0 9px;font-size:12px}.library .subtle{display:none}.search-box{margin:9px 6px;padding:0 5px}.search-box input{font-size:10px}.library-tabs{overflow:auto}.asset-grid{grid-template-columns:1fr;padding:0 7px}.asset-card>div{height:72px}.library-footer{padding:10px 6px;font-size:8px}.scene-toolbar{flex-wrap:wrap;align-content:center;gap:4px;height:78px;padding:5px}.scene-toolbar>div{flex-wrap:wrap;gap:0}.scene-toolbar button{gap:3px;padding:5px 4px;font-size:9px}.scene-toolbar svg{width:12px}.toolbar-divider{display:none}.view-controls{padding:0 5px}.view-controls button{padding:5px 6px;font-size:9px}.operation-dialog{width:min(280px,95%)}.scene-caption{top:16px;left:12px}.metric-grid{gap:10px}.metric{padding:15px}.metric strong{margin:17px 0;font-size:24px}.content-card{padding:17px}.chart-foot{font-size:9px}.statusbar{gap:8px;font-size:8px}.statusbar button{font-size:8px}.statusbar>span:nth-child(2){display:none}.facility-flow,.heading-actions{gap:7px}.heading-actions button{font-size:11px}.exercise-buttons{flex-wrap:wrap}}.library{overflow:hidden}.search-box,.library-tabs,.tree-heading,.library-footer{flex-shrink:0}.asset-grid{flex:1;align-content:start;min-height:0;padding-bottom:13px;overflow:auto}.scene-tree{flex-shrink:0;max-height:210px;overflow:auto}.scene-tree button{display:flex}.library-footer{margin-top:0}.library .panel-title{flex-shrink:0}.color-editor{position:relative}.color-swatch{border:3px solid #fff;outline:1px solid #dce5f0;width:34px;height:25px;box-shadow:0 1px 4px #38516d10}.color-popover{z-index:40;background:#fff;border:1px solid #dce5f0;border-radius:8px;width:230px;padding:15px;position:absolute;top:32px;right:0;box-shadow:0 8px 30px #23374c24}.color-popover input{width:100%;font-size:12px}.palette{gap:7px;margin-top:13px;display:flex}.palette button{width:28px;height:25px;padding:0}.color-popover button{font-size:11px}.label-large{font-size:13px}.label-small{font-size:9px}.label-ground{background:#ffffffc9}.pipe-drop-marker{color:#2563eb;z-index:3;background:#fff;border:2px solid #2563eb;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #2563eb18}.operation-dialog .axis-row{margin:12px 0}.operation-dialog .axis-cell{min-width:0}.axis-cell input[type=range]{accent-color:#2563eb;width:100%;height:16px;margin-top:6px;padding:0}.scene-toolbar select{color:#5b6b80;background:#fff;border:1px solid #dbe3ed;border-radius:6px;padding:5px 3px;font-size:11px}.scene-label{pointer-events:none}.alignment-toolbar{background:#f0f5ff;border-bottom:1px solid #dce6f5;align-items:center;gap:8px;padding:6px 12px;font-size:11px;display:flex}.alignment-toolbar button{background:#fff;border:1px solid #dce6f5;border-radius:5px;padding:4px}.open-end-row{align-items:center;gap:5px;margin:10px 0;font-size:11px;display:flex}.open-end-row button{border:1px solid #dce6f5;border-radius:5px;padding:4px}.page-strip{background:#fff;border-top:1px solid #e2e8f0;align-items:center;gap:8px;padding:5px 12px;font-size:11px;display:flex;position:relative}.page-strip button{background:#fff;border:1px solid #dce6f5;border-radius:5px;padding:5px 8px}.page-tab-list{flex:1;gap:6px;display:flex;overflow:auto}.page-tab-list .active{color:#2563eb;background:#edf3ff;border-color:#9bb9f8}.page-strip summary{cursor:pointer;list-style:none}.page-manager{z-index:15;background:#fff;border:1px solid #dce6f5;border-radius:10px;gap:8px;width:240px;padding:14px;display:grid;position:absolute;bottom:35px;right:12px;box-shadow:0 8px 30px #1e293b20}.page-manager label{gap:5px;display:grid}.page-manager input,.page-manager select{border:1px solid #dce6f5;border-radius:5px;padding:6px}.project-search-row{align-items:center;gap:12px;margin-bottom:20px;display:flex}.project-search-row .search-box{width:320px;margin:0}.project-list{grid-template-columns:1fr}.project-list .project-card{max-width:100%;display:flex}.project-list .project-preview{width:220px;min-width:220px;height:120px}.project-list .project-card>div{flex:1}.page-strip .operation-dialog{top:auto;bottom:40px}.recording-panel{margin-top:20px}.recording-panel .exercise-buttons{flex-wrap:wrap}.global-statistics{color:#94a3b8;font-size:10px}.theme-dark{--panel:#1b293e;--bg:#101c2e;--border:#33445d;--text:#dbe5f4;--muted:#a5b7ce;color:#d7e3ee;background:#152331}.theme-dark .app-header,.theme-dark .library,.theme-dark .inspector,.theme-dark .scene-toolbar,.theme-dark .view-controls,.theme-dark .page-strip,.theme-dark .statusbar,.theme-dark .modal,.theme-dark .content-card,.theme-dark .metric,.theme-dark .project-card,.theme-dark .page-manager{color:#d7e3ee;background:#1c2d3e;border-color:#32465c}.theme-dark button,.theme-dark input,.theme-dark select,.theme-dark .search-box{color:#d7e3ee;background:#263c51;border-color:#456078}.theme-dark .metric strong,.theme-dark .content-card h3,.theme-dark h2{color:#d7e3ee}.theme-dark .scene-tree .active,.theme-dark .library-tabs .active{background:#304f73}.theme-dark .facility-flow>div{background:#263c51;border-color:#456078}.theme-dark .project-preview{background:#263c51}.theme-dark .alarm-banner.healthy{background:#254b47}.theme-dark .new-project-card{background:#1c2d3e}@media (width<=1200px){.global-statistics{display:none}}.scene-palette-buttons{flex-wrap:wrap;gap:5px;margin-bottom:14px;display:flex}.scene-palette-buttons button{border:1px solid;border-radius:5px;padding:5px 7px;font-size:10px}.connection-status button{margin-left:5px;padding:3px 5px;font-size:10px}.models-page{background:var(--bg);grid-template-columns:248px minmax(0,1fr);height:calc(100vh - 70px);display:grid;overflow:hidden}.models-sidebar{border-right:1px solid var(--border);background:var(--panel);padding:20px 14px;overflow:auto}.models-sidebar>.primary{justify-content:center;width:100%;margin-bottom:18px}.models-main{min-width:0;padding:28px 32px;overflow:auto}.private-model-card{border:1px solid var(--border);text-align:left;border-radius:10px;flex-direction:column;align-items:stretch;gap:6px;width:100%;margin-bottom:12px;padding:8px;display:flex}.private-model-card img{background:#eef3f7;border-radius:6px;height:130px}.private-model-card.active{background:#edf3ff;border-color:#3769ef}.private-model-card small{color:#778598}.import-form{border:1px solid var(--border);background:var(--panel);border-radius:16px;max-width:960px;padding:28px}.model-upload{color:#516882;background:#f4f8fe;border:2px dashed #c8d5e7;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:35px;display:flex}.model-upload input{max-width:100%}.model-options{grid-template-columns:2fr 1fr 1fr 1fr;gap:16px;margin:24px 0;display:grid}.models-page label{color:var(--muted);flex-direction:column;gap:8px;font-size:13px;display:flex}.models-page input,.models-page select,.models-page textarea{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:7px;min-width:0;max-width:100%;padding:9px}.model-meta{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.model-meta span{color:#49617d;background:#eef3fb;border-radius:6px;padding:8px;font-size:12px}.model-authoring{grid-template-columns:minmax(0,1fr) 300px;gap:24px;display:grid}.model-preview{border:1px solid var(--border);background:#eef3f7;border-radius:12px;width:100%;height:460px;position:relative;overflow:hidden}.model-preview canvas{max-width:100%;display:block}.model-preview.picking canvas{cursor:crosshair}.model-preview>p{position:absolute;top:20px;left:20px}.model-hint{color:#5c6d80;white-space:nowrap;pointer-events:none;background:#fffd;border-radius:16px;padding:7px 14px;font-size:12px;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.model-config{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:15px;height:max-content;padding:20px;display:flex}.model-config .panel-title{padding:0}.vector-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.model-actions{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.button-link{border:1px solid var(--border);color:var(--text);background:var(--panel);border-radius:7px;align-items:center;gap:6px;padding:9px 12px;font-size:13px;text-decoration:none;display:inline-flex}.port-tabs{flex-wrap:wrap;gap:5px;display:flex}.port-tabs .active{color:#275bdf;border-color:#8cacf7}.error-banner,.warning-banner,.success-banner{color:#a34e37;background:#fff4f1;border:1px solid #f2c2ba;border-radius:8px;padding:12px 16px}.warning-banner{color:#957329;background:#fff8ea;border-color:#efd29b}.success-banner{color:#347a59;background:#f0faf5;border-color:#b5dbc8}.part-config{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:12px 0;display:flex}.model-load-errors{color:#a34e37;z-index:3;background:#fff4f1;padding:10px;position:absolute;bottom:70px;left:20px}@media (width<=1100px){.models-page{grid-template-columns:200px minmax(0,1fr)}.model-authoring{grid-template-columns:1fr}.model-options{grid-template-columns:1fr 1fr}.model-preview{height:380px}.models-main{padding:20px}}@media (width<=650px){.models-page{height:auto;display:block;overflow:visible}.models-sidebar{border-right:0;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;display:flex}.models-sidebar .panel-title{width:100%}.private-model-card{width:calc(50% - 4px)}.model-options{grid-template-columns:1fr}.model-preview{height:300px}.models-main,.import-form{padding:16px}.model-upload{padding:20px}.app-header nav{overflow-x:auto}}.missing-model-banner{z-index:5;color:#987241;background:#fff7e8;border:1px solid #efdbb2;border-radius:8px;padding:10px 14px;position:absolute;top:58px;left:20px;right:20px}.library>.asset-grid{grid-auto-rows:110px;align-content:start}.library>.asset-grid .asset-card{height:110px;min-height:110px}.library>.asset-grid .asset-card>div{flex-shrink:0}.asset-center{background:var(--bg);min-height:0;color:var(--text);flex-direction:column;flex:1;display:flex;overflow:hidden}.asset-center-header{background:var(--panel);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;padding:22px 28px;display:flex}.asset-center-header h2{margin:2px 0 6px;font-size:25px}.asset-center-header p{color:var(--muted);margin:4px 0;font-size:12px}.asset-center-search{border:1px solid var(--border);background:var(--bg);border-radius:8px;align-items:center;gap:10px;width:420px;padding:10px 14px;display:flex}.asset-center-search input{background:0 0;border:0;flex:1;min-width:0}.asset-center-body{flex:1;grid-template-columns:225px minmax(0,1fr) 285px;min-height:0;display:grid}.asset-facets{border-right:1px solid var(--border);background:var(--panel);padding:16px;overflow:auto}.asset-facets>label{margin:12px 0;font-size:12px;display:block}.asset-facets select{width:100%;margin-top:8px}.save-filter{flex-wrap:wrap;gap:4px;display:flex}.save-filter input{width:100%}.asset-facets section{border-bottom:1px solid var(--border);padding:12px 0}.asset-facets h3{margin:0 0 12px;font-size:12px}.asset-facets section label{align-items:center;gap:7px;padding:5px 0;font-size:12px;display:flex}.asset-facets label span{color:var(--muted);margin-left:auto}.asset-results{padding:18px;overflow:auto}.asset-drone-entry{color:#245fe8;background:#edf3ff;width:100%;margin-bottom:10px;font-weight:600}.drone-station-library{margin-bottom:24px}.drone-station-library h3{margin:0 0 6px;font-size:19px}.drone-station-library p{color:var(--muted);font-size:12px;line-height:1.7}.drone-station-kits{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.drone-station-kits article{border:1px solid var(--border);background:var(--panel);border-radius:12px;flex-direction:column;padding:14px;display:flex}.drone-kit-images{background:#eff4f8;border-radius:8px;height:96px;display:flex;overflow:hidden}.drone-kit-images img{object-fit:contain;width:50%}.drone-station-kits h4{margin:12px 0 0;font-size:13px}.drone-station-kits p{flex:1}.drone-station-kits button{width:100%}.drone-kit-note{border-left:3px solid #7599d8;padding-left:10px}.drone-placement-dialog{background:var(--panel);width:min(600px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text);border-radius:14px;padding:24px;overflow:auto}.drone-placement-dialog header,.drone-placement-dialog footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.drone-placement-dialog h3{margin:0;font-size:18px}.drone-placement-dialog p,.drone-placement-dialog small{color:var(--muted);font-size:12px;line-height:1.8}.drone-placement-fields{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:20px 0;display:grid}.drone-placement-fields label{gap:8px;font-size:12px;display:grid}.drone-placement-fields input{width:100%;min-width:0}.drone-placement-dialog footer{flex-wrap:wrap;margin:20px 0 10px}.asset-results-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;font-size:12px;display:flex}.asset-results-tools>span{margin-right:auto}.asset-results-tools label{align-items:center;gap:4px;display:flex}.asset-results-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-content:start;gap:12px;display:grid}.asset-results-grid.small{grid-template-columns:repeat(auto-fill,minmax(115px,1fr))}.asset-results-grid.large{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.asset-center-card{border:1px solid var(--border);background:var(--panel);border-radius:9px;min-width:0;overflow:hidden}.asset-center-card.selected{border-color:#2470f5;box-shadow:0 0 0 1px #2470f5}.asset-select{text-align:left;background:0 0;border:0;flex-direction:column;gap:8px;width:100%;padding:0 0 12px;display:flex}.asset-center-image{background:#edf2f8;width:100%;height:135px;position:relative}.asset-center-image img{object-fit:contain;width:100%;height:100%}.asset-center-image span{color:#fff;background:#2468f1;border-radius:50%;padding:4px;display:flex;position:absolute;bottom:7px;right:7px}.asset-select strong,.asset-select small{margin:0 10px}.asset-select strong{white-space:nowrap;text-overflow:ellipsis;max-width:calc(100% - 20px);font-size:12px;overflow:hidden}.asset-select small{color:var(--muted);font-size:10px}.asset-card-tools{border-top:1px solid var(--border);gap:4px;padding:7px;display:flex}.asset-card-tools button{padding:4px 6px;font-size:11px}.asset-results-grid.list{grid-template-columns:1fr}.asset-results-grid.list .asset-select{flex-direction:row;align-items:center;padding:0}.asset-results-grid.list .asset-center-image{flex-shrink:0;width:90px;height:66px}.asset-results-grid.list .asset-center-card{display:flex}.asset-results-grid.list .asset-card-tools{border-top:0;align-items:center}.similar-expansion{border:1px solid #9fbdf6;border-radius:8px;margin:18px 0;padding:14px}.similar-expansion h3{justify-content:space-between;font-size:13px;display:flex}.asset-selection{background:var(--panel);border-left:1px solid var(--border);flex-direction:column;min-height:0;padding:18px;display:flex}.asset-selection h3{justify-content:space-between;margin:0;font-size:14px;display:flex}.asset-selection>p{color:var(--muted);font-size:11px}.selected-assets{flex:1;min-height:0;overflow:auto}.selected-assets article{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;padding:8px 0;display:flex}.selected-assets article>button:first-child{background:0 0;border:0;flex:1;min-width:0;padding:0}.selected-assets img{object-fit:contain;width:55px;height:45px}.selected-assets span{font-size:12px}.selected-assets small{color:var(--muted);font-size:10px;display:block}.selected-assets p{width:100%;font-size:11px}.selection-actions{border-top:1px solid var(--border);gap:8px;padding-top:14px;display:grid}.selection-actions>div{flex-wrap:wrap;gap:6px;display:flex}.selection-actions button{font-size:11px}.selection-actions p{color:var(--muted);font-size:10px}.empty-assets{color:var(--muted);text-align:center;padding:30px 8px;font-size:12px}.asset-preview-dialog{background:var(--panel);border-radius:12px;width:min(850px,94vw);padding:20px}.asset-preview-dialog header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.asset-preview-dialog h3{font-size:16px}.asset-preview-dialog .model-preview{height:440px}.asset-preview-dialog p{color:var(--muted);font-size:12px}@media (width<=1100px){.asset-center-body{grid-template-columns:180px minmax(0,1fr) 230px}.asset-center-header{padding:16px}.asset-center-search{width:300px}}@media (width<=700px){.asset-center{overflow:auto}.asset-center-header{flex-direction:column;align-items:stretch}.asset-center-search{width:auto}.asset-center-body{flex-direction:column;display:flex;overflow:visible}.asset-facets{border-right:0;max-height:180px}.asset-results{overflow:visible}.asset-selection{border-left:0;min-height:250px}.selected-assets{flex:auto;max-height:200px}.asset-preview-dialog .model-preview{height:300px}}.model-workbench{background:var(--panel);min-height:0;color:var(--text);flex:1;grid-template-columns:250px minmax(0,1fr) 295px;display:grid}.model-workbench-library{border-right:1px solid var(--border);flex-direction:column;min-height:0;display:flex}.model-library-filters{flex-wrap:wrap;gap:4px;padding:6px 12px 14px;display:flex}.model-library-filters button{padding:6px;font-size:11px}.model-library-filters select{width:100%;margin-top:5px}.model-library-grid{flex:1;grid-template-columns:1fr;grid-auto-rows:150px;align-content:start;gap:10px;min-height:0;padding:0 12px 12px;display:grid;overflow:auto}.model-library-grid button{border-radius:8px;flex-direction:column;gap:4px;min-height:150px;padding:8px;display:flex}.model-library-grid .selected{background:#eaf1ff;border:2px solid #2468f1}.model-library-grid img{object-fit:contain;background:#eef3f8;border-radius:5px;width:100%;height:100px}.model-library-grid span{font-size:12px}.model-library-grid small{color:var(--muted);font-size:10px}.model-workbench-main{background:var(--bg);flex-direction:column;min-width:0;min-height:0;display:flex}.model-workbench-main>header{border-bottom:1px solid var(--border);background:var(--panel);justify-content:space-between;align-items:center;gap:8px;padding:14px 18px;display:flex}.model-workbench-main header span{color:var(--muted);margin-top:5px;font-size:11px;display:block}.model-workbench-main header strong{font-size:14px}.model-workbench-main header button{font-size:11px}.model-canvas{background:repeating-conic-gradient(#eef2f6 0% 25%,#fff 0% 50%) 0 0/20px 20px;flex:1;min-height:320px;position:relative;overflow:hidden}.model-canvas canvas{display:block;position:absolute;inset:0}.model-canvas>p{z-index:1;text-align:center;background:var(--panel);border-radius:6px;padding:12px;font-size:13px;position:absolute;top:35%;left:15%;right:15%}.model-canvas-hint{color:#fff;white-space:nowrap;pointer-events:none;background:#314352c9;border-radius:16px;padding:7px 14px;font-size:11px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.model-frame{pointer-events:none;color:#90a0b5;text-align:right;border:1px dashed #90a0b530;padding:5px;font-size:10px;position:absolute;inset:0}.model-quick-views{border-top:1px solid var(--border);background:var(--panel);flex-wrap:wrap;align-items:center;gap:5px;padding:10px 14px;display:flex}.model-quick-views span{color:var(--muted);margin-right:8px;font-size:11px}.model-quick-views button{border-radius:12px;padding:5px 7px;font-size:10px}.model-workbench-main>footer{justify-content:space-between;align-items:center;gap:10px;padding:16px;display:flex}.model-workbench-main footer p{color:var(--muted);max-width:70%;font-size:11px;line-height:1.7}.model-workbench-main footer button{white-space:nowrap;font-size:11px}.model-workbench-inspector{border-left:1px solid var(--border);padding:0 18px;overflow:auto}.model-workbench-inspector section{border-bottom:1px solid var(--border);padding:18px 0}.model-workbench-inspector h3{justify-content:space-between;align-items:center;margin:0 0 14px;font-size:13px;display:flex}.model-workbench-inspector h3 button{color:#2869dc;border:0;padding:0;font-size:10px}.model-workbench-inspector h3 span,.model-workbench-inspector h3 small{color:var(--muted);font-size:11px}.model-pose{align-items:center;gap:6px;margin:10px 0;font-size:11px;display:flex}.model-pose input[type=range]{flex:1;min-width:0}.model-pose input[type=number]{text-align:right;width:55px;padding:5px}.model-zone-color{background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:6px 0;display:flex}.model-zone-color i{border:1px solid #b9c7d4;border-radius:5px;width:25px;height:25px}.model-zone-color span{font-size:12px}.model-zone-color code{color:var(--muted);margin-left:auto;font-size:11px}.model-palette{flex-wrap:wrap;gap:5px;margin-top:12px;display:flex}.model-palette button{border-radius:15px;padding:5px 6px;font-size:10px}.model-palette i{border-radius:50%;width:8px;height:8px}.model-color-dialog{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin-top:10px;padding:12px}.model-color-dialog label{align-items:center;gap:8px;font-size:11px;display:flex}.model-color-dialog>label input{width:calc(100% - 40px)}.model-rgb{gap:5px;margin:10px 0;display:flex}.model-rgb label{flex-direction:column;flex:1;gap:3px;display:flex}.model-rgb input{width:100%;min-width:0;padding:6px}.model-color-dialog>div:last-child{gap:7px;display:flex}.model-color-dialog button{padding:6px;font-size:10px}.model-actions-all,.model-style-buttons{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.model-actions-all button,.model-style-buttons button{font-size:11px}.model-part{border:1px solid var(--border);border-radius:7px;margin:8px 0;padding:10px}.model-part label,.model-switch,.model-clip{justify-content:space-between;align-items:center;gap:8px;margin:7px 0;font-size:12px;display:flex}.model-part label+label{color:var(--muted);font-size:10px}.model-part input[type=number]{width:75px;padding:4px}.model-speed{align-items:center;gap:8px;margin-top:12px;font-size:11px;display:flex}.model-speed input{flex:1;min-width:0}.model-presets{grid-template-columns:1fr 1fr;gap:8px;display:grid}.model-presets button{flex-direction:column;gap:6px;padding:12px 5px;font-size:11px;display:flex}.model-presets small{color:var(--muted);font-size:9px}.save-model-preset{flex-wrap:wrap;gap:5px;margin:10px 0;display:flex}.save-model-preset input{width:100%;font-size:11px}.save-model-preset button{font-size:10px}.model-workbench .active{color:#1b5ddb;background:#eaf1ff;border-color:#99baff}@media (width<=1200px){.model-workbench{grid-template-columns:180px minmax(0,1fr) 270px}.app-header nav{gap:0}.app-header nav button{padding:7px 8px}}@media (width<=700px){.model-workbench{flex-direction:column;display:flex;overflow:auto}.model-workbench-library{flex-shrink:0;height:250px}.model-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.model-workbench-main{flex-shrink:0;min-height:550px}.model-workbench-inspector{border-top:1px solid var(--border);overflow:visible}.model-canvas{min-height:400px}}.process-legend{color:#40596d;background:#fff;border-top:1px solid #e1e8ef;flex-shrink:0;padding:8px 14px;font-size:11px;position:relative}.process-legend summary{cursor:pointer;color:#425e78;font-weight:600}.process-legend summary small{margin-left:8px;font-weight:400;display:inline}.process-legend-body{max-height:120px;padding-top:4px;overflow:auto}.process-legend strong{color:#23485e;font-size:12px}.process-legend p{overflow-wrap:anywhere;margin:5px 0 0}.process-legend small{color:#6d7f8e;font-size:10px;display:block}@media (width<=800px){.process-legend{padding:8px;font-size:10px}}.aquaculture-wizard{width:min(720px,100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}.aquaculture-wizard>p,.aquaculture-preview p{color:var(--muted,#65768a);line-height:1.6}.aquaculture-choices{border:1px solid #dce5ef;border-radius:10px;margin:16px 0;padding:14px}.aquaculture-category{gap:8px;margin-bottom:12px;display:flex}.aquaculture-category button[aria-pressed=true]{color:#1669b8;background:#e6f1ff;border-color:#3085dc}.aquaculture-species{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:16px;display:grid}.aquaculture-species label{border:1px solid #e1e9f2;border-radius:8px;padding:10px}.aquaculture-species small,.aquaculture-preview small{overflow-wrap:anywhere;margin-top:4px;font-size:11px;display:block}.aquaculture-preview{border-top:1px solid #e3eaf1;padding-top:8px}.aquaculture-wizard [role=alert]{color:#855609;background:#fff4de;border-radius:8px;padding:12px}.aquaculture-wizard .dialog-actions{background:#fff;padding:12px 0 0;position:sticky;bottom:-1px}.cultivation-plan-panel{background:#f7fafc;border-bottom:1px solid #dce5ef;min-width:0;padding:8px 12px}.cultivation-summary{justify-content:space-between;align-items:center;gap:10px;display:flex}.cultivation-summary strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.cultivation-summary button{flex-shrink:0;font-size:11px}.cultivation-stages{gap:6px;padding-top:7px;display:flex;overflow-x:auto}.cultivation-stages button{flex-shrink:0;font-size:11px}.cultivation-stages button[aria-pressed=true]{color:#1d4ed8;background:#edf4ff;border-color:#93b4fa}.cultivation-stages small{color:#61758b;font-size:10px;display:block}.cultivation-details{max-height:240px;padding-top:8px;font-size:12px;overflow:auto}.cultivation-details table{border-collapse:collapse;width:100%}.cultivation-details td,.cultivation-details th{text-align:left;border-bottom:1px solid #dce5ef;padding:6px}.scene-context-menu{z-index:1000;border:1px solid var(--border,#dce3ed);background:var(--panel,white);width:min(230px,100vw - 16px);max-height:calc(100dvh - 16px);color:var(--text,#263649);border-radius:10px;flex-direction:column;padding:6px;display:flex;position:fixed;overflow-y:auto;box-shadow:0 10px 35px #142a4530}.scene-context-menu small{color:#68798d;padding:8px}.scene-context-menu button{text-align:left;color:inherit;background:0 0;border:0;border-radius:5px;justify-content:flex-start;padding:9px 10px}.scene-context-menu button:hover,.scene-context-menu button:focus-visible{color:#245bd8;background:#edf3ff;outline:none}.live-device-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));gap:18px;display:grid}.live-device-card{background:var(--panel,white);border:1px solid var(--border,#dce3ed);border-radius:12px;margin:18px 0;padding:20px}.live-device-card label{flex-direction:column;gap:8px;margin:8px 16px 8px 0;display:inline-flex}.live-device-card input,.live-device-card select{border:1px solid #c5cfdb;border-radius:6px;max-width:100%;min-height:36px;padding:7px}.live-point{border-top:1px solid #dce3ed;padding:14px 0}.live-point small{overflow-wrap:anywhere;margin:6px 0;display:block}.live-alarms{color:#7b3e00;background:#fff1e3;border-radius:8px;padding:12px}.live-command{border-top:1px solid #dce3ed;flex-wrap:wrap;align-items:center;gap:14px;padding:14px 0;display:flex}.live-command details{width:100%}.live-devices-page .notice{color:#284578;background:#e9f0fe;border-radius:8px;padding:12px}@media (width<=700px){.live-device-card{padding:12px}.live-register label{margin-right:0;display:flex}}.mobile-scene-tools{display:none}.husbandry-grid{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:20px;margin:20px 0;display:grid}.husbandry-form,.husbandry-lists{gap:14px;min-width:0;display:grid}.husbandry-form label{gap:6px;display:grid}.husbandry-form textarea{resize:vertical;min-height:80px}.husbandry-row{border-bottom:1px solid var(--border);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.husbandry-row>div{min-width:0}.record-table{overflow-x:auto}.record-table table{border-collapse:collapse;width:100%}.record-table td,.record-table th{text-align:left;border-bottom:1px solid var(--border);padding:10px}.husbandry-page .metric strong{font-size:26px}@media (width<=1100px){.app-header{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:2px 8px;height:104px;padding:5px 10px;display:grid}.brand{min-width:0}.brand h1{white-space:normal;font-size:13px;display:block}.header-actions{grid-area:1/2;min-width:0;max-width:100%;margin-left:0;overflow-x:auto}.app-header nav{grid-area:2/1/auto/-1;width:100%;min-width:0;padding:0;overflow-x:auto}.app-header nav button{min-height:42px;font-size:12px}.project-title{display:none}.editor{grid-template-rows:48px minmax(0,1fr);grid-template-columns:minmax(0,1fr);position:relative}.mobile-scene-tools{background:var(--panel);border-bottom:1px solid var(--border);grid-row:1;gap:6px;padding:4px 8px;display:flex;overflow-x:auto}.mobile-scene-tools button{flex-shrink:0;min-height:40px}.scene-main{grid-area:2/1;min-width:0}.editor .library,.editor .inspector{z-index:20;background:var(--panel);width:min(320px,90%);display:none;position:absolute;top:48px;bottom:0;box-shadow:0 4px 24px #30486230}.editor .library{left:0}.editor .inspector{right:0}.editor.panel-library .library{display:flex}.editor.panel-inspector .inspector{display:block}.viewport-hint{display:none}.view-controls{max-width:100%;overflow-x:auto}.scene-toolbar{flex-wrap:wrap;height:auto;min-height:52px}.scene-toolbar>div{flex-wrap:wrap}.operation-dialog{max-width:calc(100% - 16px);max-height:85%;overflow-y:auto}.husbandry-page,.live-devices-page{min-width:0}}@media (width<=700px){.husbandry-grid{grid-template-columns:minmax(0,1fr)}.husbandry-page .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.husbandry-page .content-card{min-width:0}.husbandry-row{flex-wrap:wrap}.scene-toolbar button{min-height:34px;padding:7px;font-size:11px}.modal{max-width:calc(100vw - 20px);max-height:calc(100dvh - 24px);overflow:auto}}@media (pointer:coarse){button,.button{min-height:44px}input,select,textarea{min-height:44px;font-size:16px}.viewport{touch-action:none}}.husbandry-form fieldset{border:0;margin:0;padding:0;display:contents}.brand .brand-home{text-align:left;white-space:inherit;background:0 0;border:0;gap:10px;max-width:100%;padding:0}.brand-home>span:first-child{flex-shrink:0}.brand-home:hover{opacity:.85}.brand-home:focus-visible{outline-offset:4px;outline:2px solid #2563eb}.port-pin.is-occupied{background:#b46b36;border-style:dashed}.port-row{flex-wrap:wrap}.port-row .port-connections{text-align:left;width:100%;margin:5px 0 0 10px}.port-row .port-connections small{overflow-wrap:anywhere;margin:2px 0;display:block}.gis-page{flex-direction:column;flex:1;min-height:0;display:flex}.gis-toolbar{border-bottom:1px solid var(--border,#dce5ef);background:var(--panel,#fff);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex}.gis-toolbar>div{flex-direction:column;gap:4px;margin-right:auto;display:flex}.gis-toolbar small{color:#78869b}.gis-workspace{flex:1;min-height:540px;position:relative}.gis-map{background:#e9eff5;position:absolute;inset:0}.gis-status{color:#36516b;pointer-events:none;background:#ffffffeb;border:1px solid #dce5ef;border-radius:9px;flex-wrap:wrap;gap:10px;max-width:calc(100% - 32px);padding:8px 12px;font-size:12px;display:flex;position:absolute;bottom:30px;left:16px}.gis-status span{color:#78869b}.gis-panel{background:var(--panel,#fff);border:1px solid #dce5ef;border-radius:12px;width:320px;max-width:calc(100% - 32px);padding:16px;position:absolute;top:16px;bottom:80px;right:16px;overflow:auto;box-shadow:0 8px 30px #20395520}.gis-panel label{color:#526980;flex-direction:column;gap:6px;margin:10px 0;font-size:12px;display:flex}.gis-panel input,.gis-panel select{width:100%;min-width:0;padding:9px}.gis-coordinate{gap:8px;display:flex}.gis-coordinate>label{flex:1;min-width:0}.gis-panel label.check{flex-direction:row;align-items:center}.gis-panel .check input{width:auto}.gis-device-list{gap:5px;max-height:200px;display:grid;overflow:auto}.gis-device-list button{text-align:left;justify-content:space-between;gap:8px;display:flex}.gis-device-list small{color:#78869b;font-size:10px}.gis-error{color:#81512c;z-index:3;background:#fff2e7;border:1px solid #f4b589;border-radius:10px;width:calc(100% - 32px);max-width:560px;padding:14px;position:absolute;top:16px;left:16px}.gis-error button{margin:6px}.gis-move-confirm{z-index:4;background:#fff;border:1px solid #c6d9f4;border-radius:10px;padding:16px;position:absolute;bottom:90px;left:16px;box-shadow:0 6px 25px #21406322}.gis-move-confirm button{margin-right:10px}@media (width<=768px){.gis-toolbar{gap:5px;padding:9px}.gis-toolbar>div{width:100%}.gis-toolbar button{padding:8px;font-size:12px}.gis-workspace{min-height:540px}.gis-panel{width:320px;top:8px;bottom:70px;right:8px}.gis-status{bottom:30px;left:8px}.gis-status span{display:none}}.gis-map{z-index:0}.gis-panel,.gis-status{z-index:2}.pipe-edit-inspector{background:var(--panel,#fff);min-width:0;overflow:auto}.pipe-edit-inspector .operation-dialog.pipe-side-editor{width:100%;max-width:none;max-height:none;box-shadow:none;background:var(--panel,#fff);border:0;border-radius:0;margin:0;padding:16px;position:static;inset:auto;transform:none}.operation-dialog.pipe-side-editor{width:320px;max-width:calc(100% - 24px);max-height:calc(100% - 24px);padding:16px;inset:12px 12px auto auto;overflow:auto;transform:none}.pipe-side-editor .axis-row{gap:5px;margin:8px 0}.pipe-side-editor .axis-cell{min-width:0}.pipe-side-editor h4{margin:12px 0 6px;font-size:12px}.pipe-side-editor label{font-size:12px;display:block}.port-side-options{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.route-point-handle{pointer-events:auto;color:#fff;cursor:grab;touch-action:none;z-index:4;background:#2466ef;border:2px solid #fff;border-radius:50%;width:26px;height:26px;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #2466ef80}.route-point-handle:active{cursor:grabbing}.port-edit-trigger{color:#3263a0;background:#f3f7ff;width:100%;margin:0 0 8px;font-size:11px}.port-editor-row .port-row{width:100%}@media (width<=1100px){.mobile-presentation .app-header,.mobile-presentation .scene-toolbar,.mobile-presentation .cultivation-plan-panel,.mobile-presentation .page-strip,.mobile-presentation .statusbar,.mobile-presentation .scene-viewbar,.mobile-presentation .editor .library,.mobile-presentation .editor .inspector{display:none!important}.mobile-presentation .scene-label:not(.is-selected),.mobile-presentation .scene-label-leaders,.mobile-presentation .process-legend summary small{display:none}.mobile-presentation .mobile-scene-tools{justify-content:space-between}.mobile-presentation .mobile-scene-tools button{min-height:40px;font-size:13px}.mobile-presentation .process-legend-body{max-height:90px}}.mobile-page-switch,.asset-mobile-tabs{display:none}.asset-local-notice{color:var(--muted);background:var(--panel);flex-shrink:0;margin:0;padding:8px 16px;font-size:12px}.asset-center-header{flex-shrink:0}.asset-preview-dialog{max-height:calc(100dvh - 32px);overflow:auto}@media (width<=700px),(width<=1100px) and (pointer:coarse){.app-header{flex-shrink:0;grid-template-rows:1fr;height:54px;min-height:54px}.app-header nav{display:none}.mobile-page-switch{background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:6px 12px;font-size:13px;display:flex}.mobile-page-switch select{flex:1;min-width:0;min-height:40px;font-size:16px}.asset-center{overflow:hidden}.asset-center-header{gap:8px;padding:10px 12px}.asset-center-header h2{font-size:20px}.asset-center-header .eyebrow{display:none}.asset-center-search{padding:6px 10px}.asset-mobile-tabs{background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0;gap:6px;padding:6px 8px;display:flex}.asset-mobile-tabs button{flex:1;min-width:0;padding:8px 4px;font-size:13px}.asset-mobile-tabs button[aria-pressed=true]{color:#245fe8;background:#edf3ff}.asset-center-body{overscroll-behavior:contain;flex:1;min-height:0;display:block;overflow:auto}.asset-results{min-width:0;padding:12px}.asset-facets{max-height:none;overflow:visible}.mobile-assets-browse .asset-facets,.mobile-assets-browse .asset-selection,.mobile-assets-filters .asset-results,.mobile-assets-filters .asset-selection,.mobile-assets-selection .asset-facets,.mobile-assets-selection .asset-results{display:none}.asset-selection{min-height:0}.selected-assets{flex:none;max-height:none;overflow:visible}.asset-select strong{white-space:normal;overflow-wrap:anywhere}.asset-results-grid.large{grid-template-columns:minmax(0,1fr)}.asset-preview-dialog{padding:12px}.asset-preview-dialog header{background:var(--panel);z-index:2;position:sticky;top:-12px}.asset-preview-dialog .model-preview{height:min(300px,44dvh)}.gis-page{overflow:hidden}.gis-toolbar{flex-shrink:0;gap:5px}.gis-toolbar h2{margin:0 0 4px;font-size:18px}.gis-workspace{flex:1;min-height:0}.gis-panel{z-index:10;border-radius:0;width:auto;max-width:none;padding:12px;inset:0}.gis-panel .dialog-heading{background:var(--panel);z-index:2;padding:6px 0;position:sticky;top:-12px}.gis-error{box-sizing:border-box;width:calc(100% - 16px);max-height:120px;padding:10px;font-size:12px;top:8px;left:8px;overflow:auto}.gis-status{pointer-events:none;font-size:11px;bottom:12px;left:8px;right:8px}.editor .library{overscroll-behavior:contain;overflow-y:auto}.editor .library>.asset-grid{flex:none;min-height:auto;overflow:visible}.editor .library .scene-tree{max-height:none;overflow:visible}.asset-center-header{grid-template-columns:minmax(0,1fr);display:grid}.asset-center-header>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.asset-center-header h2{margin:0}.asset-center-header p{display:none}.asset-center-header>div>button{min-height:36px;padding:6px 10px;font-size:12px}}@media (width>=701px) and (width<=1100px) and (pointer:coarse){.asset-center-header{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width<=700px),(width<=1100px) and (pointer:coarse){.asset-center{overscroll-behavior:contain;display:block;overflow-y:auto}.asset-center-body{min-height:auto;overflow:visible}.asset-mobile-tabs{z-index:4;position:sticky;top:0}}.gis-placement{z-index:4;background:var(--panel,#fff);border:1px solid #c6d9f4;border-radius:12px;width:420px;max-width:calc(100% - 32px);padding:18px;position:absolute;top:16px;left:16px;box-shadow:0 6px 25px #21406322}.gis-placement h3{margin:0}.gis-placement p{line-height:1.6}.gis-placement .dialog-actions{flex-wrap:wrap}.gis-placement .dialog-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.gis-cancel-placement{z-index:3;background:var(--panel,#fff);position:absolute;top:16px;left:16px;box-shadow:0 4px 16px #21406322}html.mobile-fixed-ui,.mobile-fixed-ui body{touch-action:pan-x pan-y;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}.mobile-fixed-ui :is(button,a,input,textarea,select){touch-action:manipulation}.mobile-fixed-ui :is(input,textarea,select){font-size:16px!important}.mobile-fixed-ui [data-map-gestures]{touch-action:none}.site-filing{color:inherit;flex-shrink:0;text-decoration:none}.site-filing:hover{text-decoration:underline}.assistant-shell{isolation:isolate;background:#f6f8fb;height:100dvh;position:relative;overflow:hidden}.assistant-main{width:100%;min-width:0;height:100dvh;position:relative;overflow:auto;transform:translateZ(0)}.assistant-main .app-shell{height:100%}.assistant-main .field-mobile{min-height:100%}.assistant-worker .assistant-main{transform:none}.assistant-floating{z-index:110;flex-direction:column;align-items:center;gap:4px;width:64px;height:100px;display:flex;position:fixed}.assistant-trigger{opacity:.72;touch-action:none;cursor:grab;background:#dcecffb8;border:1px solid #fffa;border-radius:50%;width:56px;min-width:56px;height:56px;min-height:56px;padding:0;overflow:hidden;box-shadow:0 3px 14px #183e6c28}.assistant-trigger:hover,.assistant-trigger:focus-visible,.assistant-trigger-active{opacity:1}.assistant-trigger-active{outline-offset:3px;outline:2px solid #55ac98}.assistant-trigger span,.assistant-trigger svg{width:100%;height:100%;display:block}.assistant-trigger svg{object-fit:cover}.assistant-view{color:#365676;background:#ffffffe0;border:1px solid #d0ddeb99;border-radius:14px;min-width:44px;min-height:30px;padding:4px 10px;font-size:12px}.assistant-floating-controls,.assistant-floating-note{background:#fffffff2;border:1px solid #d8e3ed;border-radius:12px;align-items:center;gap:8px;width:max-content;max-width:min(250px,100vw - 24px);padding:7px 9px;font-size:12px;display:flex;position:absolute;bottom:104px;right:0;box-shadow:0 4px 14px #183e6c14}.assistant-floating-controls button{color:#355675;background:#edf3fa;border:0;border-radius:7px;min-width:44px;min-height:32px}.assistant-floating-note{overflow-wrap:anywhere;color:#9a471a;bottom:142px}.assistant-panel{color:#243247;z-index:120;background:#fff;border:1px solid #dce6f2;border-radius:16px;flex-direction:column;width:min(360px,100vw - 24px);height:min(520px,100dvh - 136px);min-height:0;display:flex;position:fixed;bottom:112px;right:12px;overflow:hidden;box-shadow:0 12px 36px #20416b26}.assistant-panel.assistant-keyboard{top:calc(var(--assistant-view-top,0px) + 8px);height:calc(var(--assistant-view-height,100dvh) - 16px);bottom:auto}.assistant-panel>header{border-bottom:1px solid #e4edf8;flex-shrink:0;justify-content:space-between;align-items:center;min-height:60px;padding:10px 12px;display:flex}.assistant-panel strong{font-size:17px}.assistant-panel em{color:#2563eb;background:#e3eeff;border-radius:5px;padding:3px 6px;font-size:11px;font-style:normal}.assistant-panel button{min-width:44px;min-height:44px}.assistant-panel>header button{color:#59718c;background:0 0;border:0;padding:0;font-size:26px}.assistant-avatar{background:radial-gradient(at top,#fcfdff,#e5f2ff);flex-shrink:0;height:240px;position:relative;overflow:hidden}.assistant-avatar-stage{width:100%;height:100%}.assistant-avatar svg{width:100%;height:100%;padding:18px}.assistant-avatar-badge{color:#56758d;background:#ffffffe0;border-radius:20px;padding:4px 8px;font-size:11px;position:absolute;bottom:10px;left:12px}.assistant-welcome{flex:1;padding:16px;line-height:1.6;overflow:auto}.assistant-welcome p{margin:8px 0}.assistant-welcome small{color:#8291a5;font-size:11px}.assistant-initial-input{gap:7px;padding:12px;font-size:12px;display:grid}.assistant-initial-input textarea{resize:none;width:100%;min-height:70px;font:inherit;border:1px solid #cbdcf3;border-radius:10px;padding:10px}.assistant-voice-actions{gap:5px;margin-bottom:4px;display:flex}.assistant-voice-actions button{flex:1;padding:4px;font-size:12px}.assistant-voice-actions button[aria-pressed=true]{color:#2563eb;background:#e3efff}.assistant-voice-hint{color:#7b8da5;font-size:10px;display:block}.assistant-narrow .assistant-keyboard .assistant-avatar{display:none}.assistant-narrow .assistant-panel.assistant-keyboard{overscroll-behavior:contain;overflow-y:auto}.assistant-narrow .assistant-keyboard .assistant-notices{max-height:44px}.assistant-narrow .assistant-keyboard .assistant-compose textarea{min-height:44px;max-height:44px}.assistant-narrow .assistant-keyboard .assistant-chat{min-height:0}.assistant-narrow .assistant-keyboard>header{min-height:44px;padding:0 12px}@media (height<=650px){.assistant-avatar{height:145px}.assistant-welcome{padding:8px 12px}.assistant-panel>header{min-height:48px;padding:2px 12px}}@media (prefers-reduced-motion:reduce){.assistant-shell *{scroll-behavior:auto}}.assistant-trigger svg{width:100%;height:100%}.assistant-trigger svg image{transform:translateY(-75px)}.assistant-avatar{background:linear-gradient(135deg,#f4f8ff,#daeafa);justify-content:center;height:260px;display:flex}.assistant-avatar>svg{aspect-ratio:604/941;border-radius:0 0 16px 16px;width:auto;height:100%;padding:0}.assistant-wave{background:#ffffffdf;border-radius:14px;align-items:center;gap:3px;height:24px;padding:4px 8px;display:flex;position:absolute;bottom:14px;right:15px}.assistant-wave i{background:#4c8de9;border-radius:3px;width:3px;height:3px}.assistant-wave-active i{animation:.7s ease-in-out infinite alternate assistant-wave}@keyframes assistant-wave{0%{height:4px}to{height:18px}}@media (height<=650px){.assistant-avatar{height:160px}}@media (prefers-reduced-motion:reduce){.assistant-wave-active i{height:8px;animation:none}}.assistant-status{color:#59718e;border-bottom:1px solid #edf2f8;flex-shrink:0;align-items:center;gap:7px;padding:10px 14px;font-size:12px;display:flex}.assistant-status-dot{background:#56aa94;border-radius:50%;width:7px;height:7px}.assistant-status-dot.thinking,.assistant-status-dot.listening{background:#3d8cf5}.assistant-status-dot.error{background:#d98e45}.assistant-chat{overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:60px;padding:12px;overflow:auto}.assistant-greeting{color:#365576;background:#f2f7ff;border:1px solid #e4eefb;border-radius:12px;padding:13px;line-height:1.6}.assistant-greeting small{color:#8293a9;margin-top:5px;font-size:10px;display:block}.assistant-message{overflow-wrap:anywhere;white-space:pre-wrap;max-width:100%;margin:12px 0;font-size:13px;line-height:1.7}.assistant-message>div:first-child{background:#f4f7fc;border-radius:12px;padding:10px 12px}.assistant-user{margin-left:28px}.assistant-user>div:first-child{color:#244e8f;background:#e5efff}.assistant-message>small{color:#8e9cb1;font-size:10px}.assistant-sources{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.assistant-sources button{color:#3576ca;min-height:32px;padding:4px 7px;font-size:11px}.assistant-notices{color:#865b2b;background:#fffaf1;flex-shrink:0;max-height:90px;padding:0 12px;font-size:12px;overflow:auto}.assistant-notices p{margin:5px 0}.assistant-compose{border-top:1px solid #e7edf6;flex-shrink:0;padding:10px 12px 12px}.assistant-compose label{color:#6e819b;font-size:11px}.assistant-compose textarea{resize:vertical;width:100%;min-height:62px;max-height:120px;font:inherit;border:1px solid #ccdff9;border-radius:10px;margin:5px 0 8px;padding:9px;display:block}.assistant-actions{align-items:center;gap:6px;display:flex}.assistant-actions small{color:#94a1b4;margin-right:auto;font-size:10px}.assistant-actions button{border-radius:9px}@media (height<=650px){.assistant-avatar{height:115px}.assistant-compose{padding:5px 10px}.assistant-compose textarea{min-height:44px;max-height:66px}.assistant-status{padding:5px 10px}.assistant-chat{padding:6px}}@media (height<=450px){.assistant-avatar{display:none}.assistant-chat{min-height:0}.assistant-notices{max-height:32px}}.assistant-service-actions{border-bottom:1px solid #e7edf6;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:4px 12px;display:flex}.assistant-service-actions button{min-height:32px;font-size:12px}.assistant-settings{overscroll-behavior:contain;flex:1;min-height:0;padding:12px;font-size:12px;line-height:1.6;overflow-y:auto}.assistant-settings-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.assistant-settings-heading h3{margin:0;font-size:16px}.assistant-settings fieldset{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.assistant-settings label{color:#365576;flex-direction:column;gap:4px;display:flex}.assistant-settings input:not([type=checkbox]){width:100%;min-height:40px;font:inherit;box-sizing:border-box;background:#fff;border:1px solid #ccdff9;border-radius:8px;padding:8px}.assistant-settings .assistant-setting-checkbox{flex-direction:row;align-items:flex-start;gap:8px}.assistant-settings small{color:#6e819b}.assistant-settings-buttons{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.assistant-settings [role=alert]{color:#9a471a;overflow-wrap:anywhere;background:#fff6e9;border-radius:8px;padding:8px}.assistant-settings [role=status]{overflow-wrap:anywhere}.assistant-reference-voice{border-top:1px solid #e7edf6;margin-top:12px;padding-top:12px}.assistant-panel>header{gap:8px;min-height:48px;padding:4px 10px}.assistant-panel>header strong{flex:1;font-size:15px}.assistant-panel>header .assistant-avatar{border-radius:50%;flex-shrink:0;width:32px;height:32px;display:block}.assistant-panel>header .assistant-avatar svg{width:100%;height:100%;padding:0}.assistant-panel>header .assistant-avatar-badge,.assistant-panel>header .assistant-wave{display:none}@media (height<=450px){.assistant-panel{height:calc(100dvh - 24px);bottom:12px}}@media (width>=701px){.assistant-panel{bottom:124px}}@media (width<=700px){.assistant-panel{height:min(520px,100dvh - 236px);bottom:212px}}.assistant-floating-left .assistant-floating-controls,.assistant-floating-left .assistant-floating-note{left:0;right:auto}.assistant-floating-top .assistant-floating-controls,.assistant-floating-top .assistant-floating-note{top:104px;bottom:auto}@media (height<=450px){.assistant-panel{height:calc(100dvh - 24px);bottom:12px}}.assistant-panel.assistant-keyboard{bottom:auto}.language-selector{flex:none;align-items:center;gap:5px;max-width:175px;font-size:14px;display:inline-flex}.language-selector select{background:var(--panel,#fff);width:100%;min-width:0;height:34px;color:inherit;border:1px solid #d7e1ee;border-radius:7px;padding:4px 6px;font-size:16px}.field-mobile-head .language-selector{max-width:125px}[dir=rtl] .app-header,[dir=rtl] .field-mobile-head,[dir=rtl] .field-tabs{direction:rtl}[dir=rtl] .field-mobile main,[dir=rtl] .assistant-panel,[dir=rtl] .field-dispatch{text-align:start;direction:rtl}[dir=rtl] input[type=url],[dir=rtl] input[type=number],[dir=rtl] input[type=password],[dir=rtl] .axis-row,[dir=rtl] canvas,[dir=rtl] .base-map,[dir=rtl] .field-map{direction:ltr}.assistant-message[data-l10n=off]{text-align:start;unicode-bidi:plaintext}@media (width<=700px){.language-selector{max-width:135px}.field-mobile-head{flex-wrap:wrap}}
