/* 236px library + flexible drawing + 340px parameter panel; two 1px rules live inside those columns. */
.workspace{grid-template-columns:236px minmax(340px,1fr) 340px;height:calc(100vh - 118px);min-height:620px}
.library{min-height:0}.library #templates{overflow:auto;min-height:0;padding:2px;flex:1}.library-bottom{margin-top:12px;padding-top:12px;flex-shrink:0}.library .categories{gap:4px}.library .categories button{font-size:11px;padding:5px 7px}
main{overflow:auto}.canvas{height:clamp(300px,46vh,540px)}.canvas-note #canvasName{display:block;font-size:9px;letter-spacing:1px;margin:0;color:#818b78}.canvas-note #templateId{margin-top:6px}.canvas-actions{display:flex;gap:10px;align-items:center}.canvas-actions>button:not(.fit){font-size:19px;width:22px;padding:0;color:#6f7c62}.canvas-actions>button:disabled{opacity:.3;cursor:default}.tabs{gap:15px}.fit span{font-size:11px}.tabs button span{font-size:11px}.legend{font-size:10px;gap:12px}.legend label{font-size:10px}.legend input{height:12px;width:12px}.scale-note{font-size:10px}.zoom span{font-size:11px}.canvas-bottom .zoom{height:31px}.title-row p{font-size:12px}.breadcrumbs{font-size:11px}.local-badge{color:#6e7e60;background:#e7ecdf;border:1px solid #dce3d2;border-radius:4px;padding:5px 8px;font-size:9px;letter-spacing:1px}.settings{min-height:0;overflow:hidden;padding:24px 20px 16px}.settings>.muted{font-size:11px;margin-bottom:13px}.settings-scroll{overflow:auto;min-height:0;flex:1;padding:2px 9px 0 2px;margin-right:-9px;scrollbar-width:thin;scrollbar-color:#d7decd transparent}.settings .setting-label{margin-top:0;margin-bottom:9px}.settings h3{font-size:12px}.field-hint{color:#929b88;font-size:10px;line-height:1.6;margin:0 0 12px}.field-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 12px}.field-grid>.field{min-width:0}.field{font-size:11px;color:#758169}.field>div{height:36px;margin-top:6px}.field input{font-size:13px;font-variant-numeric:tabular-nums;padding:9px;outline:none}.field .unit-label{font-size:10px;padding-right:9px}.field input[aria-invalid=true]{background:#fff3ed;border-radius:5px;color:#a23e22}.field>div:has(input[aria-invalid=true]){border-color:#c86f4b}.unit-toggle button{font-size:11px}.size-tools{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:11px;color:#7f8c72}.size-tools label{display:flex;align-items:center;gap:4px;margin-right:auto}.size-tools input{accent-color:#566d46;width:13px;height:13px}.size-tools button{font-size:11px;border-bottom:1px solid #dfe5d7;padding:2px}.scale-control{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;margin:14px 0}.scale-control>div{display:flex;align-items:center;gap:6px;height:30px;border:1px solid var(--line);border-radius:5px;overflow:hidden}.scale-control input{width:68px;border:0;padding:6px;font-size:12px;font-variant-numeric:tabular-nums;outline:0}.scale-control span{font-size:10px;color:#8a967e}.scale-control button{align-self:stretch;padding:0 10px;border-left:1px solid var(--line);background:#f5f7f0;font-size:11px}.preset-label{font-size:10px}.presets{margin-bottom:12px}.presets button{font-size:10px;padding:6px 12px}.custom-preset-row{display:flex;gap:7px;margin-bottom:20px}.custom-preset-row select{flex:1;min-width:0;border:1px solid var(--line);border-radius:5px;background:white;padding:8px;font-size:11px}.custom-preset-row button{border:1px solid var(--line);border-radius:5px;padding:0 8px;font-size:11px;white-space:nowrap}.settings details{padding-top:15px;margin-bottom:15px}.settings summary{font-size:12px}.settings-file-tools{display:flex;gap:8px;margin:0 0 12px}.settings-file-tools button{font-size:11px;border:1px solid var(--line);border-radius:5px;flex:1;padding:8px 5px}.export{margin-top:12px;padding-top:13px;border-top:1px solid var(--line);flex-shrink:0}.export-label{font-size:11px}.download-row button span{font-size:12px}.download-row select{font-size:11px}.print{font-size:11px}.export p{font-size:9px;line-height:1.5}.dimension-summary{display:grid;grid-template-columns:1fr 1fr 1.2fr;border-top:1px solid var(--line);padding-top:16px;gap:12px;margin-bottom:14px}.dimension-summary div{display:flex;flex-direction:column;gap:7px;min-width:0}.dimension-summary span{font-size:10px;color:#8d9783}.dimension-summary b{font-size:12px;line-height:1.5;font-weight:550;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.dimension-summary small{font-size:9px;color:#99a18e;line-height:1.6}.dimension-summary small.warning{color:#b34d28}.prototype-note{font-size:10px;color:#929b87;line-height:1.7}.under-canvas{gap:12px}.under-canvas,.under-canvas button{font-size:10px}.under-canvas div{line-height:1.7}.under-canvas button{white-space:nowrap}#validation{font-size:11px;line-height:1.5;background:#fff2eb;border:1px solid #e7b39b;border-radius:5px;color:#a24928;padding:10px;margin-top:10px;max-height:100px;overflow:auto}#staleDrawing{position:absolute;top:55px;left:20px;right:20px;text-align:center;font-size:11px;background:#fff0df;color:#99592c;border:1px solid #edcfac;padding:7px;border-radius:4px}.modal-primary{background:#425337;color:white;font-size:12px;padding:11px 18px;border-radius:5px}.field>input{display:block;width:100%;border:1px solid var(--line);border-radius:5px;margin:8px 0 17px;padding:10px}button:disabled{cursor:not-allowed;opacity:.45}.template:hover:not(.selected){border-color:#c2cbb6}.size-tools button:hover,.settings-file-tools button:hover,.custom-preset-row button:hover,.presets button:hover{background:#eff3e8}.settings-scroll:focus-within{scrollbar-color:#b9c3ac transparent}
@media(min-width:1600px){.workspace{grid-template-columns:260px minmax(340px,1fr) 360px}.canvas{height:clamp(350px,48vh,610px)}}
@media(max-width:1150px){.workspace{grid-template-columns:190px minmax(310px,1fr) 320px}.legend{gap:8px;font-size:9px}.legend label{font-size:9px}.legend i{width:12px}.title-row p{font-size:11px}.fit span{display:none}.tabs{gap:10px}.canvas-actions{gap:5px}.canvas-bar{padding:0 10px}.dimension-summary{gap:9px}.dimension-summary b{font-size:11px}.dimension-summary small{font-size:8px}}
@media(max-width:850px){.workspace{grid-template-columns:165px minmax(0,1fr);height:auto;min-height:0}.library{grid-row:1/3}.library #templates{flex:initial;overflow:visible}.settings{display:flex;grid-column:2;overflow:visible}.settings-scroll{overflow:visible;flex:initial}.settings .field-grid{grid-template-columns:1fr 1fr}.canvas{height:390px}.dimension-summary{grid-template-columns:1fr 1fr}.dimension-summary div:last-child{grid-column:1/-1}.legend label{font-size:0}.canvas-actions button{font-size:16px}.tabs button span{font-size:10px}.under-canvas button{font-size:10px}}
@media(max-width:580px){.workspace{display:block}.library #templates{display:flex;overflow:auto;padding-top:14px}.library .categories{height:31px}.library-bottom{display:none}.settings{padding:20px}.settings-scroll{padding:0;margin:0}.settings .field input{font-size:15px}.field>div{height:40px}.size-tools{font-size:12px}.size-tools button{font-size:12px}.field-grid{gap:0 12px}.settings summary{font-size:13px}.field{font-size:12px}.settings-file-tools button,.custom-preset-row select,.custom-preset-row button{font-size:12px}.canvas{height:375px}.canvas-actions{gap:4px}.canvas-bar{padding:0 9px}.canvas-actions>button:not(.fit){width:18px}.tabs{gap:10px}.tabs button{gap:4px}.canvas-note #canvasName{font-size:8px}.title-line h1{font-size:22px}.local-badge{display:none}.dimension-summary{padding-top:14px}.dimension-summary b{font-size:13px}.dimension-summary span,.dimension-summary small{font-size:10px}.prototype-note{font-size:10px}.canvas-note{left:16px}.under-canvas{justify-content:flex-end}.export{padding-top:15px}.export p{font-size:10px}.legend{gap:12px;font-size:9px}}
.library #templates{grid-auto-rows:max-content;align-content:start}.template{flex-shrink:0}.template .thumb{flex-shrink:0}.template strong,.template small{position:relative}
@media print{.workspace{height:auto!important;min-height:0!important;overflow:visible!important}main{overflow:visible!important}.editor .canvas{position:relative!important;height:0!important;overflow:visible!important}#drawing{display:block!important}.dimension-summary,.prototype-note,#staleDrawing{display:none!important}}
#flapShapes{padding:0 0 12px;margin-bottom:12px;border-bottom:1px solid var(--line)}#flapShapes .field select{display:block;width:100%;margin:6px 0 12px;border:1px solid var(--line);border-radius:5px;padding:8px;background:#fff;font-size:12px;color:#4c5a41}#flapShapes .field{min-width:0}
