:root{--blue:#275df5;--navy:#101c31;--ink:#25334a;--muted:#6c7a91;--line:#e6eaf1}html,body{min-width:0;height:100%;min-height:0;background:#f5f7fb;color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif}button,input,select,textarea{font-family:inherit}button{transition:background .18s,color .18s,border-color .18s,transform .18s}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #4678ff;outline-offset:3px}.app-header{height:78px;padding:0 24px;gap:24px;background:white;border-bottom:1px solid var(--line)}.brand{gap:12px;flex:none}.brand img{width:39px;height:39px;border-radius:10px;box-shadow:0 4px 13px #2b5de52a}.brand strong{font-size:24px;letter-spacing:-1.3px;color:#13213a}.brand strong span{color:#275df5}.brand strong sup{font-size:9px;font-weight:400;margin-left:3px;vertical-align:top;display:inline-block;padding-top:3px}.brand small{font-size:8px;letter-spacing:1.55px;color:#7c899e;margin-top:3px}.version{font-size:8px;color:#2c64da;background:#edf3ff;border:1px solid #d8e4fe;border-radius:5px;margin-left:5px;padding:4px 6px;letter-spacing:1px}.document-name{flex:1;justify-content:center;min-width:30px;color:#63718a;font-size:12px}.document-name:before{content:"/";color:#cbd3df;margin-right:14px}.header-actions{gap:8px}.button{font-size:12px;font-weight:500;border-radius:8px;padding:10px 13px;min-height:37px;background:#fff;border-color:#e1e6ef;color:#41536f}.button:hover:not(:disabled){background:#f2f6ff;border-color:#baccf8;color:#2456d1}.button.primary{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 4px 12px #275df51c}.button.primary:hover:not(:disabled){background:#184cde;color:#fff;border-color:#184cde;box-shadow:0 5px 16px #275df535}.button .icon{width:16px;height:16px}#open-btn{background:#eff4ff;color:#245de2;border-color:#d8e4fd}#mobile-layers{display:none}.workspace{height:calc(100dvh - 78px);grid-template-columns:66px 240px minmax(0,1fr) 314px;gap:0;min-width:0;min-height:0}.workspace-nav{display:flex;flex-direction:column;align-items:center;background:var(--navy);padding:18px 7px 15px;gap:11px;border:0}.nav-tool{width:52px;height:59px;border:none;border-radius:9px;background:transparent;color:#94a4bc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.nav-tool .icon{width:21px;height:21px}.nav-tool>span:last-child{font-size:8px;font-weight:500}.nav-tool:hover{background:#213049;color:#dbe8ff}.nav-tool.active{color:#a8c1ff;background:#24477c66}.nav-tool.active:before{content:"";width:3px;height:26px;background:#5387ff;position:absolute;left:0;border-radius:0 4px 4px 0}.nav-spacer{flex:1}.rail-caption{font-size:10px;color:#677c9b;letter-spacing:3px;padding-left:3px;margin-top:8px}.left-panel{border-right:1px solid var(--line);background:#fff}.panel-top{padding:27px 22px 22px}.eyebrow{font-size:9px;color:#7a8ca8;letter-spacing:1.6px;font-weight:550}.panel-top h1{font-size:24px;letter-spacing:-.9px;margin:10px 0;font-weight:600;line-height:1.25}.panel-top p{font-size:11px;line-height:1.8;color:#79869c}.local-badge{display:inline-flex;align-items:center;gap:6px;margin-top:13px;color:#78879c;font-size:9px;background:#f7f9fc;border:1px solid #e8edf4;border-radius:5px;padding:5px 7px}.local-badge i{width:5px;height:5px;border-radius:50%;background:#46b893}.tabs{padding:0 13px;gap:7px}.tabs button{font-size:12px;padding:12px 7px}.tabs button[aria-selected=true]{color:#245fe6}.tabs button>span{font-size:9px;padding:2px 5px;background:#edf3fc;border-radius:4px;color:#7990b3}.search{margin:14px 0 11px}.search input{font-size:11px;padding:10px 9px}.list-pane{padding:0 13px}.layer-row{min-height:37px}.layer-row label{font-size:11px;color:#566784}.layer-total{font-size:9px;color:#7b8ba2}.layer-actions button{font-size:9px;color:#7587a0}.zone-list-tools{padding:16px 0 7px;font-size:10px}.zone-row{min-height:64px;padding:11px 10px;margin:4px 0;border-radius:8px}.zone-row strong{font-size:11px;max-width:152px;color:#3b4e6b}.zone-row small{font-size:9px;color:#7e8fa6;margin-top:5px}.zone-row.active{background:#f0f5ff;border-color:#d6e3fc}.zone-color{width:28px;height:30px;border-radius:6px;box-shadow:inset 0 0 0 1px #0000000d}.left-bottom{padding:16px 14px;color:#72829b;font-size:9px}.status-dot{background:#50b995}.left-bottom .icon{width:15px;height:15px}.canvas-section{min-width:0;background:#f5f7fa;border-right:1px solid var(--line)}.canvas-top{height:80px;padding:0 23px;background:#fbfcfe;border-bottom:1px solid var(--line);gap:10px}.canvas-top h2{font-size:13px;color:#4c5b73;margin:8px 0 0;max-width:260px;font-weight:500}.heading-separator{color:#bdc7d6;margin:0 7px}.view-switch{padding:3px;background:#eef2f7;border:1px solid #e2e8f0;border-radius:8px;gap:1px}.view-switch button{font-size:10px;padding:7px 9px;color:#71829c}.view-switch button.active{background:#fff;color:#2c5bb6;box-shadow:0 1px 4px #172b5012;border-radius:5px}.canvas-wrap{background-color:#f5f7fa;background-image:radial-gradient(#dae1ed 0.7px,transparent 0.7px);background-size:18px 18px;min-height:260px}.canvas-wrap.drag-active:after{content:"Suelta tu DXF o proyecto aquí";position:absolute;inset:16px;border:2px dashed #3972ef;border-radius:18px;background:#edf3fff5;display:flex;align-items:center;justify-content:center;font-size:23px;color:#2a5dcf;pointer-events:none;z-index:12}#drawing-canvas{touch-action:none}.canvas-footer{height:43px;font-size:9px;background:#fbfcfe;padding:0 14px;color:#738198}.canvas-footer>div{gap:10px}.canvas-footer .check{font-size:9px}.canvas-footer select{font-size:9px;padding:4px;border-radius:4px}.floating-tools{left:50%;bottom:24px;border-radius:11px;border-color:#dee6f2;padding:5px 7px;background:#fffffff2;box-shadow:0 7px 23px #223b6112;backdrop-filter:blur(10px)}.floating-tools button{width:33px;height:33px;border-radius:6px}.floating-tools .icon{width:17px;height:17px}.right-panel{background:#fff;min-width:0}.right-tabs{height:60px;border-color:var(--line);padding:0 18px;gap:24px}.right-tabs button{font-size:12px;font-weight:550}.right-tabs button[aria-selected=true]{color:#2f62d7}.right-content{padding:23px 22px}.right-content>h3{font-size:23px;font-weight:600;letter-spacing:-.8px;margin-top:10px}.section-label{font-size:9px;font-weight:600;color:#7e8ca2;letter-spacing:1.3px;margin-top:24px}.field{font-size:10px;color:#66768e;margin:17px 0 0;line-height:1.5;gap:7px}.field input,.field select,.field textarea{font-size:11px;color:#475973;border-radius:7px;background:#fafbfe;border-color:#e2e7f0;padding:9px 10px;min-height:37px}.field textarea{line-height:1.7;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{background:#fff;border-color:#8eaef6}.field-row{gap:11px}.help-text{font-size:10px;line-height:1.8;color:#7a8a9f}.render-intro{font-size:11px;margin-top:9px}.render-summary{background:#f6f9ff;border:1px solid #e0eafa;color:#7389ac;border-radius:7px;font-size:9px;padding:12px;margin:18px 0 12px}#generate-btn{height:43px;font-size:12px;font-weight:550;gap:9px;border-radius:8px}#export-references{font-size:10px;margin-top:16px;color:#6e819e}#render-provider-note,.fidelity-note{font-size:9px}.prompt-link{font-size:9px;margin-top:10px}.result-heading{margin-top:24px}.results-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.results-list>.muted-empty{grid-column:1/-1}.result-thumb{width:100%;min-width:0;height:auto;border-radius:8px;padding:0;overflow:hidden;background:#f8fafd}.result-thumb img{display:block;width:100%;height:auto!important;aspect-ratio:1;object-fit:cover;border-radius:0}.result-thumb span{display:block;padding:9px 7px;font-size:8px;color:#7e8ca3}.result-image-wrap{height:min(63vh,620px);background:#eef1f6}.result-footer{flex-wrap:wrap;gap:12px}.selection-empty{padding:39px 2px 18px;text-align:left}.selection-empty>.icon{width:40px;height:40px;color:#809fcc;margin-bottom:19px}.selection-empty h3{font-size:21px;letter-spacing:-.6px;line-height:1.4;color:#354b6e;font-weight:550}.selection-empty p{font-size:11px;line-height:1.85;color:#7d8da6}.types-preview{justify-content:flex-start;gap:6px}.types-preview span{font-size:8px;border-radius:5px;padding:5px 7px}.area-card{background:#f5f8ff;border:1px solid #dfebfc;border-radius:8px;padding:16px}.area-card strong{font-size:28px;letter-spacing:-.6px;color:#3d628f}.material-swatch{height:73px;border-radius:8px}.material-swatch>span{font-size:12px}.zone-origin{font-size:9px}.reading-card{margin:0 12px 10px;padding:13px 12px}.reading-card strong{font-size:11px;color:#3d5e98}.reading-card p{font-size:10px}.reading-actions .text-button{font-size:9px}.detection-launch{padding-top:6px;margin-bottom:4px}.detection-launch .button{font-size:10px;min-height:31px}.empty-state{padding:30px;text-align:center}.empty-visual{width:72px;height:72px;border-radius:20px;background:#eaf1ff;border:1px solid #dce6fb;box-shadow:0 12px 25px #225fea0c;margin-bottom:24px}.empty-visual .icon{width:35px;height:35px;color:#6b94e7}.empty-state h2{font-size:30px;letter-spacing:-1.1px;font-weight:600;color:#263d61;margin:13px 0}.empty-state p{font-size:12px;line-height:1.9;color:#7a8da9;margin-bottom:24px}.empty-steps{font-size:10px;color:#8a9bb4;margin-top:38px;gap:24px}.empty-steps b{font-size:9px;color:#6a8dcb;margin-right:6px}.demo-button{font-size:10px;color:#6f8ab6}.dialog{border-radius:17px;max-width:calc(100vw - 30px);max-height:calc(100dvh - 30px);border-color:#dfe7f2}.dialog-heading h2{font-size:25px;font-weight:600;color:#294267}.dialog-intro{font-size:12px;color:#73849d;line-height:1.8}.service-card{display:flex;align-items:flex-start;gap:11px;border-radius:10px;padding:16px;background:#f4f7fc;border:1px solid #e2e9f4;margin:18px 0}.service-card .status-dot{margin-top:5px;background:#9faeca}.service-card.connected .status-dot{background:#43b598}.service-card strong{font-size:12px;color:#4d658c}.service-card p{font-size:11px;color:#8291a8;line-height:1.7;margin:6px 0 0}.model-info input{background:#f6f8fc;color:#8e9bb0}.projects-dialog{width:620px}.recent-projects{display:grid;gap:9px;max-height:55vh;overflow:auto}.recent-project{padding:18px;display:flex;flex-direction:column;text-align:left;gap:9px;background:#f8faff;border:1px solid #e1e9f6;border-radius:10px}.recent-project:hover{background:#edf4ff;border-color:#b9d0fb}.recent-project strong{font-size:13px;color:#3c557b}.recent-project small{font-size:10px;color:#8193ad}.unit-suggestion{font-size:9px;line-height:1.6;padding:9px 14px}.muted-empty{font-size:11px;line-height:1.85;color:#8393aa}body.ready .canvas-section{animation:studio-reveal .45s ease both}@keyframes studio-reveal{from{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.scroll-list{scrollbar-width:thin;scrollbar-color:#dae3f0 transparent}.toast{bottom:65px;font-size:12px;max-width:min(630px,calc(100vw - 30px));padding:13px 19px;border-radius:10px}.text-button{color:#5381c7}.zone-bottom-actions .text-button{font-size:10px}
@media(min-width:1600px){.workspace{grid-template-columns:72px 270px minmax(0,1fr) 340px}.panel-top{padding:32px 25px}.right-content{padding:26px}.canvas-top{padding:0 28px}.layer-row label,.zone-row strong{font-size:12px}.zone-row strong{max-width:172px}.field input,.field select,.field textarea{font-size:12px}.field{font-size:11px}}
@media(max-width:1250px){.workspace{grid-template-columns:60px 216px minmax(0,1fr) 288px}.app-header{padding:0 18px;gap:17px}.brand strong{font-size:21px}.brand small{font-size:7px}.header-actions .button{padding:9px 10px;font-size:10px}.panel-top{padding:23px 18px}.canvas-top{padding:0 15px;height:77px}.canvas-top .eyebrow{font-size:8px}.canvas-top h2{max-width:180px;font-size:11px}.view-switch button{padding:7px;font-size:9px}.right-content{padding:21px 18px}.zone-row strong{max-width:137px}.canvas-footer .check{font-size:8px}.canvas-footer>div{gap:7px}.canvas-footer{padding:0 10px;font-size:8px}.document-name{font-size:10px}}
@media(max-width:1100px){.workspace{grid-template-columns:60px minmax(0,1fr) 300px}.left-panel{display:none;position:fixed;left:60px;top:78px;bottom:0;width:260px;z-index:15;box-shadow:15px 0 40px #16305a18}.show-layers .left-panel{display:flex}.header-actions #projects-btn{font-size:0;width:35px;padding:8px}.header-actions #projects-btn .icon{width:16px;height:16px}.document-name{justify-content:flex-start}.brand small,.brand .version{display:none}#mobile-layers{display:inline-flex}.canvas-top h2{max-width:230px}.canvas-footer>div .check:first-of-type{display:none}}
@media(max-width:850px){.workspace{grid-template-columns:52px minmax(0,1fr) 267px}.workspace-nav{padding-left:3px;padding-right:3px}.nav-tool{width:46px}.nav-tool>span:last-child{font-size:7px}.left-panel{left:52px}.app-header{padding:0 12px;gap:10px}.document-name{display:none}.header-actions{margin-left:auto;gap:5px}.header-actions .button{font-size:9px;padding:8px}.brand img{width:32px;height:32px}.brand strong{font-size:20px}.brand{gap:9px}.canvas-top{height:88px;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px}.canvas-top h2{margin-top:5px}.view-switch button{padding:6px 9px}.right-content{padding:20px 15px}.canvas-footer>div{gap:6px}.canvas-footer label.check{display:none}.canvas-footer #coords{max-width:110px;overflow:hidden;white-space:nowrap}.floating-tools{bottom:18px;gap:0;padding:4px;max-width:calc(100% - 16px)}.floating-tools button{width:28px}.floating-tools .icon{width:15px;height:15px}.tool-separator{margin:0 2px}.detection-layout{grid-template-columns:minmax(200px,.9fr) minmax(250px,1fr)}}
@media(max-width:720px){html,body{height:auto;min-height:100dvh;overflow:auto}.app-header{height:68px;position:sticky;top:0;z-index:18}.brand strong{font-size:20px}.header-actions #save-btn,.header-actions #export-btn{font-size:0;width:33px;padding:8px;gap:0}.header-actions #open-btn{font-size:10px;padding:8px 10px}.header-actions #projects-btn{display:none}.workspace{height:auto;min-height:calc(100dvh - 68px);display:flex;flex-direction:column}.workspace-nav{display:none}.left-panel{left:0;top:68px;width:min(300px,90vw);z-index:17}.canvas-section{height:66dvh;min-height:410px;border-right:0}.canvas-top{height:80px;flex-direction:row;align-items:center;justify-content:space-between;padding:0 14px;gap:9px}.canvas-top .eyebrow{font-size:7px}.canvas-top h2{font-size:10px;max-width:170px}.heading-separator{margin:0 4px}.view-switch button{font-size:8px;padding:6px}.canvas-footer{height:39px}.right-panel{border-top:1px solid #e3e9f4;min-height:400px}.right-content{padding:22px;max-height:none;overflow:visible}.right-tabs{height:55px}.field{font-size:11px}.field input,.field select,.field textarea{font-size:12px}.results-list{grid-template-columns:repeat(3,minmax(0,1fr))}.right-content>h3{font-size:25px}.result-footer{font-size:10px}.result-footer .button{margin-left:0}.detection-dialog{padding:20px 16px;overflow:auto}.detection-layout{display:flex;flex-direction:column;overflow:visible}.candidate-list{max-height:180px}.candidate-preview-wrap{height:170px}.candidate-detail{overflow:visible}.detection-options{gap:12px}.detection-dialog .dialog-actions{flex-wrap:wrap;gap:8px}.dialog{padding:23px 20px}.empty-state{padding:20px}.empty-state h2{font-size:25px}.empty-steps{gap:10px;font-size:8px;flex-wrap:wrap}.demo-examples{gap:13px}.selection-empty{padding-top:5px}.types-preview span{font-size:10px}.floating-tools{padding:5px 7px}.floating-tools button{width:32px}}
@media(prefers-reduced-motion:reduce){button{transition:none}body.ready .canvas-section{animation:none}.spinner{animation-duration:1.5s}}
@media(max-width:720px){.brand>div{display:none}.header-actions #projects-btn{display:inline-flex;font-size:0;width:33px;padding:8px;gap:0}}
@media(max-width:430px){.header-actions #open-btn{font-size:0;width:33px;padding:8px;gap:0}.canvas-top h2{max-width:145px}}
