.slicer-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.slicer-page-head h2{margin:0;color:var(--orange);font-size:1.35rem}
.slicer-page-head p{margin:5px 0 0;color:var(--muted);font-size:.9rem}
.slicer-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:24px;align-items:start}
.slicer-input-band,.slicer-result-band{min-width:0;border-top:1px solid var(--border);padding-top:16px}
.slicer-section-title{font-size:.78rem;font-weight:900;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.slicer-page-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.slicer-page-fields label{display:grid;gap:7px;min-width:0;color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}
.slicer-page-fields .wide{grid-column:1/-1}
.slicer-page-fields input,.slicer-page-fields select{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--border);background:var(--card2);color:var(--text);border-radius:7px;padding:12px;font:inherit;text-transform:none;font-weight:400}
.slicer-page-message{display:none;margin-top:14px;border:1px solid var(--border);padding:11px;border-radius:7px;font-size:.86rem}
.slicer-page-message.active{display:block}.slicer-page-message.loading{color:var(--orange)}.slicer-page-message.error{color:#b53a35;border-color:#b53a35}.slicer-page-message.success{color:var(--green);border-color:var(--green)}
.slicer-page-empty{min-height:300px;display:grid;place-content:center;text-align:center;gap:8px;border:1px dashed var(--border);border-radius:8px;color:var(--muted);padding:24px}
.slicer-page-empty[hidden],#slicer-page-result[hidden]{display:none!important}
.slicer-page-empty strong{color:var(--text)}
.slicer-file-name{font-weight:900;overflow-wrap:anywhere;margin-bottom:12px}
.slicer-result-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--border);border-left:1px solid var(--border)}
.slicer-result-grid>div{padding:12px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0}
.slicer-result-grid span{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase;font-weight:900}
.slicer-result-grid strong{display:block;margin-top:4px;font-size:1rem;overflow-wrap:anywhere}
.slicer-result-grid .price strong{color:var(--orange);font-size:1.25rem}
.slicer-page-note{font-size:.8rem;color:var(--muted);line-height:1.45;margin:14px 0}
.slicer-result-actions{display:flex;flex-wrap:wrap;gap:10px}
#slicer-editor{margin-bottom:20px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:10px 0}
#slicer-editor [hidden]{display:none!important}
.slicer-editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px}
.slicer-editor-toolbar button{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border:1px solid var(--border);border-radius:6px;color:var(--text);background:var(--card2);cursor:pointer}
.slicer-editor-toolbar button[aria-pressed="true"]{background:var(--orange);color:white}.slicer-editor-toolbar button:disabled{opacity:.4;cursor:default}
.slicer-editor-toolbar label{display:flex;gap:6px;align-items:center;font-size:12px}.slicer-editor-toolbar input[type=number]{width:66px}.slicer-editor-toolbar input[type=range]{width:80px}
.slicer-editor-toolbar select,.slicer-editor-toolbar input,.slicer-editor-sidebar input,.slicer-editor-sidebar select,#slicer-text-dialog input,#slicer-text-dialog select{min-width:0;max-width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:5px;background:var(--card2);color:var(--text);padding:7px;font:inherit}
.slicer-editor-stage{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px;min-width:0}
#slicer-editor #slicer-model-view{position:relative;display:block!important;min-width:0;width:100%;height:540px;margin:0;border:0;border-radius:0;overflow:hidden}
#slicer-model-view canvas{display:block;touch-action:none;width:100%;height:100%}
.slicer-editor-sidebar{min-width:0;max-height:540px;overflow:auto;border-left:1px solid var(--border);padding-left:12px;font-size:12px}
.slicer-editor-sidebar label,#slicer-text-dialog label{display:grid;gap:4px;margin:8px 0}.slicer-editor-sidebar fieldset{min-width:0;padding:6px;border:1px solid var(--border);margin:8px 0}.slicer-transform-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.slicer-object{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:9px;border:0;border-bottom:1px solid var(--border);color:var(--text);background:transparent;font:inherit;overflow-wrap:anywhere;cursor:pointer}.slicer-object span{width:12px;height:12px;border-radius:50%;flex:0 0 12px}.slicer-object[aria-pressed="true"]{background:var(--card2);outline:1px solid var(--orange);outline-offset:-1px}
#slicer-editor-message{font-size:13px;color:var(--muted);margin:8px 0;overflow-wrap:anywhere}#slicer-editor-count{font-size:12px;color:var(--muted)}#slicer-object-size{font-size:12px;color:var(--muted)}
.slicer-repair-option{display:flex!important;align-items:center;gap:8px!important;font-size:12px!important;text-transform:none!important}.slicer-repair-option input{width:16px!important;height:16px;flex:0 0 16px}
#slicer-text-dialog{background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:20px;width:min(400px,calc(100vw - 32px));box-sizing:border-box}#slicer-text-dialog::backdrop{background:#0008}#slicer-text-dialog .slicer-transform-fields{grid-template-columns:1fr 1fr}
@media(max-width:700px){.slicer-editor-stage{grid-template-columns:1fr}#slicer-editor #slicer-model-view{height:360px}.slicer-editor-sidebar{max-height:420px;border-left:0;padding-left:0;border-top:1px solid var(--border);padding-top:8px}.slicer-editor-toolbar button{width:38px;height:38px;flex-basis:38px}.slicer-editor-toolbar{gap:4px}.slicer-editor-sidebar input{font-size:16px}}
@media(max-width:700px){.slicer-workspace{grid-template-columns:1fr}.slicer-page-fields{grid-template-columns:1fr}.slicer-page-fields .wide{grid-column:auto}.slicer-page-empty{min-height:190px}.slicer-page-head{align-items:center}.slicer-page-head .badge{white-space:nowrap}}
