/* The artboard is the only element transformed by the camera. */
.desk{--rail:215px;--props:269px;--chrome:#f6f8fb;--line:#d9d9d0;--ink:#2f332d;--muted:#697066;--accent:#3b5c87;color-scheme:light;color:var(--ink);background:var(--chrome);font:13px system-ui,"Segoe UI",sans-serif;box-sizing:border-box}
.desk *{box-sizing:border-box}
#editor.desk,body.desk{width:100%;max-width:none;height:100vh;height:100dvh;margin:0;display:flex;flex-direction:column;overflow:hidden}
body.editing{overflow:hidden}body.editing>.nav{display:none}body.editing #organicFrame{height:100vh;height:100dvh}
.desk .deskTop{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;height:53px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--chrome)}
.desk .deskTools,.desk .deskExports,.desk .viewTools{display:flex;align-items:center;gap:4px;flex:none}
.desk .deskTop h1{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;margin:0;font:normal 21px/1.2 Georgia,serif;letter-spacing:-.6px}
.desk .deskBack{font-size:12px;color:var(--accent);text-decoration:none;padding:7px 6px;margin-right:6px;white-space:nowrap}
.desk button,.desk select{color:var(--ink);background:var(--chrome);border:1px solid var(--line);border-radius:5px;padding:6px 8px;cursor:pointer}
.desk button:hover{background:#e4e9ef;border-color:#a6aa9b}
.desk button[aria-pressed=true],.desk .viewTools button[aria-pressed=true]{background:#d6dde7;color:#2c394a}
.desk button.solid,.desk button.export{background:#29342c;color:white;border-color:#29342c}
.desk .deskTools button,.desk .viewTools button{padding:4px 6px;border-color:transparent;background:transparent;min-width:25px}
.desk .deskTools button[aria-expanded=true]{background:#e0e5ec}.desk .deskTools button,.desk .viewTools button{font-size:14px}
.desk .toolIcon{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.desk .deskBody{position:relative;flex:1;min-height:0;display:grid;grid-template-columns:0 minmax(0,1fr) 0}
.desk.show-left{--left-size:var(--rail)}.desk.show-right{--right-size:var(--props)}
.desk .deskBody{grid-template-columns:var(--left-size,0px) minmax(0,1fr) var(--right-size,0px)}
.desk .rail,.desk .props{min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;background:var(--chrome);border:0;border-radius:0;max-height:none;position:relative;display:none}
.desk .rail{grid-column:1;border-right:1px solid var(--line)}
.desk .props{grid-column:3;border-left:1px solid var(--line)}
.desk.show-left .rail,.desk.show-right .props{display:block}
.desk .sideTitle{padding:14px 15px;border-bottom:1px solid var(--line);font-size:13px;font-weight:650;color:var(--ink);display:flex;align-items:center;gap:7px}
.desk .sideTitle small{font:10px Consolas,monospace;color:var(--muted);margin-left:auto;letter-spacing:.8px}
.desk .sheet,.desk .board{grid-column:2;grid-row:1;display:flex;flex-direction:column;min-height:0;min-width:0;border:none;background:#e7ebf1;border-radius:0;overflow:hidden}
.desk .viewHead{display:flex;align-items:center;justify-content:space-between;flex:none;height:40px;padding:0 12px;border:0;border-bottom:1px solid var(--line);background:#f0f3f6;color:var(--muted);gap:7px}
.desk .viewHead strong{font-size:11px;font-weight:600}.desk .viewHead .dim,.desk [data-zoom-value]{font:10px Consolas,monospace;color:var(--muted);white-space:nowrap}
.desk .viewTools{gap:1px}.desk [data-zoom-value]{min-width:31px;text-align:center}
.desk .viewPort{height:auto;flex:1;min-height:0;min-width:0;overflow:hidden;position:relative;isolation:isolate;touch-action:none;user-select:none;padding:0;display:block;background-color:#dfe5ec;background-image:radial-gradient(#b6bbaf .65px,transparent .8px);background-size:12px 12px}
.desk .viewPort svg.artPaper,.desk .viewPort svg#art{display:block;position:absolute;inset:auto;left:50%;top:50%;max-width:none;max-height:none;transform-origin:center;box-shadow:0 0 0 1px #b9bcb255,0 4px 16px #29312913;background-color:#eff4fa}
.desk .viewPort #art{background-color:#eef3f9}.desk .viewPort.dots #art{background-image:radial-gradient(#b9b7aa .7px,transparent .85px);background-size:16px 16px}
.desk .viewPort.hand-mode,.desk .viewPort.hand-mode svg *{cursor:grab!important}.desk .viewPort.panning,.desk .viewPort.panning *{cursor:grabbing!important}
.desk .sheet footer,.desk .boardFoot{padding:7px 12px;min-height:29px;border-top:1px solid var(--line);background:#f0f3f6;color:var(--muted);font-size:10px;line-height:1.35}
.desk .deskStatus{height:25px;flex:none;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:0 14px;background:var(--chrome);font:10px Consolas,monospace;color:var(--muted);gap:8px}
.desk .rowlist{max-height:none}.desk .block,.desk .panel{border-color:var(--line);padding:13px 14px}.desk .field,.desk .typeControls,.desk .groupTitle,.desk .hint{color:var(--muted)}
.desk .block .widebtn{margin-top:10px}.desk .smallcaps,.desk .micro{color:var(--accent)}.desk .datarow,.desk .layer{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;color:var(--ink);width:100%;text-align:left}
.desk .datarow:hover,.desk .layer:hover,.desk .layer.active{background:#dde3eb}.desk .layer small{color:var(--muted)}
.desk input:not([type=range]):not([type=checkbox]):not([type=color]),.desk select,.desk textarea{background:#fafcff;border:1px solid var(--line);color:var(--ink);border-radius:4px;padding:6px 8px;font:12px system-ui}
.desk textarea#nodeTitle{flex:1;min-width:0;resize:vertical;min-height:38px;height:45px;max-height:150px}
.desk .badge{color:var(--ink);background:#e4e8ef;border-color:var(--line)}.desk .range{background:linear-gradient(to right,#5f7b9f var(--pct),#d0d8e3 var(--pct))}.desk .range::-webkit-slider-thumb{background:#547094}
.desk .swatches button{border-radius:50%;border:0;padding:0}.desk .swatch.chosen{outline-color:#484d42}.desk .custom{background:#dddcd5;color:#444}.desk .mini,.desk .bare{background:transparent;border:0;padding:3px}.desk .panelNode{display:block}.desk .menu{margin:12px}.desk .menuBox{left:0;right:auto;min-width:175px;background:var(--chrome);border-color:var(--line)}.desk .menuBox button{color:var(--ink)}.desk .menuBox button:hover{background:#dde3eb}
.desk .tools{z-index:2;background:var(--chrome);border-color:var(--line);box-shadow:0 2px 8px #212a3621;color:var(--ink)}.desk .tools button{color:var(--ink)}.desk .tools button.active{background:#ccd5e1}.desk .sep{background:var(--line)}.desk .stageNote,.desk .stageFoot{display:none}
.desk .typeControls button[aria-pressed=true]{background:#d0d8e3;color:#212b37}.desk .deskExports button{white-space:nowrap}.desk #restore{margin:14px;font-size:12px}.desk .selectedTag{font-size:10px;color:var(--muted)}.desk dialog{color:var(--ink);background:var(--chrome);border-color:var(--line)}
@media(max-width:1100px){.desk{--rail:180px;--props:235px}}
@media(max-width:800px){.desk .deskBody{grid-template-columns:0 minmax(0,1fr) 0}.desk .rail,.desk .props{position:absolute;top:0;bottom:0;z-index:4;width:min(285px,82vw);box-shadow:0 2px 18px #2029352b}.desk .rail{left:0;grid-column:1/-1}.desk .props{right:0;grid-column:1/-1}.desk .deskTop{height:47px;padding:0 6px;gap:4px}.desk .deskTop h1{font-size:16px}.desk .deskTools,.desk .deskExports{gap:1px}.desk .deskBack{font-size:11px;margin:0}.desk .deskStatus{font-size:9px}.desk .deskExports button{padding:6px;font-size:11px}.desk .viewHead{padding:0 7px}.desk .deskStatus .extraStatus{display:none}}
@media(max-width:520px){.desk .deskTop h1{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.desk .boardFoot,.desk .sheet footer{font-size:10px}.desk .deskTools{gap:2px}.desk .deskExports .ico{width:14px}.desk .viewHead .dim{font-size:9px}}
