/* Desktop CAD layout, based on the user's DXF-Werkstatt reference. */
:root{--ink:#e0e6ea;--muted:#a7b1b9;--line:#50565b;--green:#dbb45e;--mint:#395463;--paper:#3d4247;--bg:#383d42;--accent:#efb24e}
body{background:#383d42;font-size:12px}button,input,select,textarea{border-radius:0}button{background:#484e54;border-color:#535b62;color:#e0e6ea}button:hover{background:#59636c;border-color:#d6b66c}button.primary{background:#4b7185;border-color:#729bad;color:#fff}input,select,textarea{background:#30363b;color:#e1e7eb;border-color:#606970}label{color:#c1cbd2}dialog{background:#3b4248;color:#e1e7eb;border-color:#67737e;border-radius:3px}dialog::backdrop{background:#1119;backdrop-filter:none}.dialog-heading h2{color:#edf1f4}.dialog-form p,.muted{color:#acbac4}.error{color:#ffb1a6}.badge{background:#3b6465;color:#cae8df}.badge.off{background:#734b46;color:#ffd5cc}
.auth-form{background:#30373d}.auth-art{background:#232b31}.auth-form h2,.auth-form input{color:#e1e7eb}.auth-form .primary{background:#4c768b}.auth-art .brand-icon{background:#537d91}.auth-art .eyebrow{color:#dab86b}
.topbar{height:24px;padding:0 7px;background:#ededed;color:#1d252b;border-bottom:1px solid #777;gap:5px}.topbar>.brand{display:none}.top-actions{margin-left:auto;gap:0}.top-actions button{font-size:10px;color:#2d3942;padding:3px 7px;height:22px;white-space:nowrap}.desktop-menu{display:flex;height:24px;align-items:stretch;gap:0;min-width:0}.desktop-menu button{border:0;background:transparent;color:#1e2931;padding:3px 8px;font-size:11px}.desktop-menu button:hover,.desktop-menu button[aria-expanded=true]{background:#cfdae2}.menubar{display:none}.ribbon{height:109px;min-height:109px;background:#464b50;padding:4px 2px 1px;gap:0;border-bottom:1px solid #222;overflow-x:auto;overflow-y:hidden}.ribbon-group{padding:0 5px;border-right:1px solid #373c40;justify-content:space-between;align-items:stretch}.ribbon-group>small{color:#bac5cf;text-align:center;font-size:10px;margin:0 0 3px;letter-spacing:.3px}.ribbon-buttons{align-items:stretch;gap:2px}.ribbon button{color:#e0e7ec;font-size:10px;padding:6px 6px;min-width:51px;gap:4px;justify-content:flex-start}.ribbon button:hover,.ribbon button.active{background:#596670;border-color:#718894}.ribbon button .cad-icon{width:25px;height:25px;flex-shrink:0}.ribbon .ribbon-stack{display:flex;flex-direction:column;justify-content:flex-start;min-width:86px}.ribbon .ribbon-stack button{flex-direction:row;justify-content:flex-start;align-items:center;padding:3px 5px;height:25px;min-height:25px;white-space:nowrap;gap:6px}.ribbon .ribbon-stack .cad-icon{width:17px;height:17px}.ribbon .ribbon-stack .split-arrow{margin-left:auto;font-size:9px;color:#e5bb64}.ribbon button:disabled{opacity:.35;cursor:default}
.document-bar{height:23px;font-size:10px;background:#e5e6e7;color:#26323b;padding:0 8px;gap:8px;border-bottom:1px solid #aaa}.document-dot{display:none}.document-bar button{color:#35434d}.document-bar #document-detail{font-size:10px;color:#5d6972;margin-left:10px}.editor{position:relative;background:#202428}.drawing-tools{width:79px;flex:0 0 79px;order:0;padding:8px 4px;background:#3d4247;border-right:3px solid #7d8488;overflow:auto;scrollbar-width:thin;scrollbar-color:#8e979d #373c40}.drawing-tools h2{text-align:center;font-size:11px;margin:0 0 10px;color:#e2e7eb}.drawing-tools .tool-item{display:flex;position:relative;margin-bottom:3px;min-height:48px}.drawing-tools .tool-main{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 4px;font-size:10px;border:0;background:#484e54;min-height:47px}.drawing-tools .tool-main.active{background:#627580;box-shadow:inset 2px 0 #e1b653}.drawing-tools .cad-icon{width:21px;height:21px}.drawing-tools .variant-arrow{position:absolute;right:0;bottom:1px;border:0;padding:0 3px;background:transparent;color:#e0b461;font-size:9px;min-width:14px;height:16px}.drawing-tools .tool-main:hover{background:#59656f}.drawing-area{order:1;background:#202327}.layers-panel{order:2;width:238px;flex:0 0 238px;min-width:190px;max-width:350px;background:#3b4045;border-right:0;border-left:1px solid #69737a;padding:10px 9px;resize:none}.panel-title h2{font-size:12px;color:#e4eaf0}.layer-tools{gap:3px;flex-wrap:wrap;margin-bottom:10px}.layer-tools button{background:#454c52;font-size:10px;padding:4px 6px;border:0}.layer-row{padding:7px 3px;border:0;gap:5px}.layer-row.active{background:#31566b;color:#edf6fb}.layer-row .name{font-size:11px;font-weight:600}.layer-row button{color:#d7e4ed}.layer-row small{color:#abc0ce}.object-row{font-size:10px;color:#cad6de}.object-row.selected{background:#31566b;color:#f0cf83}.objects-heading{border-color:#586169}.options-panel{display:none;position:absolute;right:238px;top:0;bottom:0;width:258px;z-index:5;background:#3b4248;border:1px solid #71818b;box-shadow:-5px 0 15px #0005}.options-panel.drawer-open{display:block}.options-panel input,.options-panel select{background:#30363b;color:#e1e7eb}.options-panel>button{background:#48545d;color:#e1e7eb}.canvas-tools{display:none}.canvas-corner span{background:#2b333ad9;border-color:#65717a;color:#b3c4d0}.empty-state{background:#202428ed;color:#dae5eb}.empty-state h2{font-size:19px}.empty-icon{color:#b7d5e4}.empty-state button{background:#444e56}.empty-state .primary{background:#507b90}.statusbar{height:27px;background:#e9e9e9;color:#26313a;border-top:1px solid #9ea4a8;font-size:10px;gap:13px}.statusbar button{color:#25333d;background:transparent}.statusbar #selection-mode-indicator{color:#324b5c;font-weight:600}.log-panel{background:#2b3238;border-color:#64727d;color:#d9e6ee}.log-panel pre{font-size:11px}.toast{background:#294e61;border:1px solid #7390a0;color:#f1f5f7;border-radius:3px}.error-toast{background:#75463e!important}.table th{color:#bcc9d2}.table td{color:#e0e8ee}.cad-icon{display:inline-block;vertical-align:middle;color:#b3d4e6;pointer-events:none}.cad-icon .gold{stroke:#e4bd69}.cad-icon .red{stroke:#e3928a}
.context-menu{position:fixed;z-index:100;min-width:225px;max-width:340px;max-height:calc(100dvh - 16px);overflow:auto;background:#3d464d;border:1px solid #82919d;box-shadow:3px 6px 18px #0008;padding:4px;color:#e4edf2}.context-menu .menu-title{padding:7px 9px;font-size:10px;letter-spacing:.4px;color:#b3c6d2;border-bottom:1px solid #65727c;margin-bottom:3px}.context-menu button{width:100%;min-height:27px;border:0;background:transparent;text-align:left;padding:5px 9px;font-size:11px;display:flex;align-items:center;gap:10px;white-space:nowrap}.context-menu button:hover,.context-menu button:focus-visible{background:#315e78;outline:1px solid #87a3b7;outline-offset:-1px}.context-menu button:disabled{color:#83909a;opacity:.55;cursor:default}.context-menu button .menu-shortcut{margin-left:auto;color:#a6bac8;font-size:10px;padding-left:15px}.context-menu hr{border-color:#63717c;margin:4px 5px}.context-menu .danger{color:#ffc0b4}.context-menu .checked{color:#efcc7b}.ribbon-group .selection-split{position:relative}.selection-split .split-arrow-button{position:absolute;right:0;bottom:6px;min-width:14px;padding:2px 3px;height:20px;min-height:20px;color:#dfb866;font-size:9px}.open-contour path{stroke-linejoin:round;stroke-linecap:round}
@media(max-width:1000px){.layers-panel{width:205px;flex-basis:205px}.options-panel{right:205px}.top-actions button{padding:3px 4px}.desktop-menu button{padding:3px 5px;font-size:10px}.ribbon-group{padding:0 3px}.ribbon button{min-width:46px}.drawing-tools{width:72px;flex-basis:72px}}@media(max-width:750px){.topbar{height:auto;min-height:24px;flex-wrap:wrap}.desktop-menu{overflow:auto;width:100%;height:25px}.top-actions{height:23px}.ribbon{height:100px;min-height:100px}.layers-panel{width:170px;flex-basis:170px;min-width:155px;padding:7px}.drawing-tools{width:65px;flex-basis:65px}.drawing-tools .tool-main{font-size:9px}.options-panel{right:0;width:250px}.options-panel.drawer-open{display:block}.document-bar #document-detail{display:none}.statusbar{gap:7px}.statusbar #cursor{font-size:9px}}

.cad-icon{width:18px;height:18px;max-width:18px;max-height:18px;flex:0 0 18px}.context-menu .cad-icon{width:16px;height:16px;flex-basis:16px}.ribbon .cad-icon{max-width:none;max-height:none}
#project-select{margin-left:auto;max-width:280px;min-width:150px;height:24px;background:#343b40;color:#e2e8ed;border:1px solid #626b72;padding:0 6px}.web-version{padding:0 10px;color:#43515d;white-space:nowrap}
.drawing-confirm{position:absolute;right:22px;bottom:42px;display:flex;gap:10px;z-index:8;padding:8px;background:#30363de8;border:1px solid #68727b;border-radius:6px}.drawing-confirm[hidden]{display:none}.drawing-confirm button{width:44px;height:44px;padding:0;font-size:30px;line-height:1;border:1px solid #69757d;border-radius:5px;background:#3c454d}.drawing-confirm .drawing-cancel{color:#ff6868}.drawing-confirm .drawing-accept{color:#8fdaa7}.drawing-confirm button:disabled{opacity:.35}.drawing-confirm button:hover:not(:disabled){background:#505e69}
#modal.simulation-dialog{width:94vw;max-width:94vw;height:92vh;max-height:94vh;box-sizing:border-box;overflow:auto}#modal.simulation-dialog .sim-canvas{display:block;width:100%;max-width:none;height:calc(92vh - 230px);min-height:200px;border-radius:4px}#modal.simulation-dialog .sim-controls{flex-wrap:wrap}#modal.simulation-dialog .sim-controls input[type=range]{min-width:150px}#modal.simulation-dialog .sim-controls select{width:80px}#modal.simulation-dialog .check{display:flex;align-items:center;gap:8px;margin-top:10px}#modal.simulation-dialog .check input{width:auto}
.operation-preview{display:block;width:100%;height:230px;background:#20262b;border:1px solid #65717c;border-radius:4px;margin-bottom:8px}.layers-panel{position:relative}.layer-resize{position:absolute;left:-5px;top:0;bottom:0;width:10px;cursor:ew-resize;z-index:12;touch-action:none}.layer-resize:hover,.layer-resize:focus{background:#efb55560;outline:none}
#modal.simulation-dialog{width:98vw;max-width:98vw;height:96vh;max-height:98vh;padding:10px;background:#303740;overflow:hidden}#modal.simulation-dialog .dialog-heading{height:26px;margin:0 0 4px;padding:0 4px}#modal.simulation-dialog .dialog-heading h2{font-size:13px}#modal.simulation-dialog #modal-content{height:calc(100% - 30px)}.sim-dashboard{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;height:100%;color:#edf2f7;font-size:12px;gap:6px}.sim-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:4px}.sim-header strong{color:#ffa72f;font-size:15px;margin-right:8px}.sim-header select{width:235px}.sim-dashboard button{background:#444f5d;color:#eef4ff;border:0;border-radius:0;padding:9px 12px;font-size:12px}.sim-dashboard button:hover{background:#576677}.sim-dashboard input,.sim-dashboard select{border-radius:0;min-height:24px;padding:3px 5px;font-size:12px}.sim-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:10px;min-height:0}.sim-left{display:flex;flex-direction:column;background:#1b2026;min-height:0;min-width:0}.sim-viewbar{display:flex;gap:5px;align-items:center;flex-wrap:wrap;padding:4px;background:#23292f}.sim-viewbar small{color:#afbfce;margin-left:8px}#modal.simulation-dialog .sim-canvas{flex:1;min-height:0;min-width:0;width:100%;height:100%;max-width:none;display:block;border-radius:0}.sim-sidebar{min-height:0;display:flex;flex-direction:column;overflow:auto;border:3px solid #d7dce0;background:#303740}.sim-tabs{display:flex;background:#e4e8eb}.sim-tabs button{padding:5px 8px}.sim-tabs button[aria-selected=true]{background:#f0f2f4;color:#17212b}.sim-operations{display:flex;flex-direction:column;gap:7px;padding:5px;flex:1;min-height:0}.sim-operations[hidden],.sim-display[hidden]{display:none}.sim-display{padding:10px}.sim-dashboard h3{font-size:13px;margin:3px 0 5px}.sim-layer-scroll{overflow:auto;border:1px solid #d8dee2;flex:1;min-height:90px;background:#242b33}.sim-layer-table{width:100%;border-collapse:collapse;font-size:11px}.sim-layer-table th{position:sticky;top:0;background:#fff;color:#1d2833;padding:6px}.sim-layer-table td{padding:6px 4px}.sim-layer-table tr.selected{background:#007bd1}.sim-layer-table input{width:14px;height:14px;min-height:0}.sim-layer-editor{border:1px solid #8a939c;margin:0;padding:7px;min-width:0}.sim-layer-editor button,.sim-operations>button{width:100%}.sim-field{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:6px;align-items:center;margin:6px 0;font-size:11px}.sim-field input,.sim-field select{width:100%;min-width:0;background:#fff;color:#17212b}.sim-check{display:flex;gap:6px;align-items:center;white-space:nowrap;font-size:11px}.sim-check input{width:15px;height:15px;min-height:0;margin:0}.sim-bottom{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sim-bottom>input[type=range]{flex:1;min-width:140px;width:auto}.sim-bottom>select{width:65px}.sim-clock{min-width:100px;text-align:right}.sim-status{padding:4px;color:#d1dfeb;font-size:11px;background:#242b33}.sim-plate-dialog{width:460px;max-width:90vw;background:#303740;color:#edf2f7}.sim-plate-dialog>select{width:100%;margin-bottom:10px}.sim-plate-dialog>button{margin:5px 5px 0 0}.sim-display>select{width:100%;margin:6px 0}.sim-display p{line-height:1.5;color:#bccbd9}@media(max-width:1000px){.sim-body{grid-template-columns:minmax(0,1fr) 280px}.sim-field{grid-template-columns:minmax(0,1fr) 100px}}@media(max-width:650px){.sim-body{grid-template-columns:minmax(0,1fr)}.sim-sidebar{max-height:35vh}.sim-header select{width:180px}.sim-viewbar small{display:none}}
