/* Bottom-docked operations keep the model full-width. */
.app{flex-direction:column}
[hidden]{display:none!important}
html body #pag-launch{bottom:auto!important;top:158px!important;right:12px!important;left:auto!important}
#stage{flex:1 1 auto;min-height:260px;background:#f7f9fc}
.panel{width:100%;flex:0 0 auto;max-height:none;border:0;border-top:1px solid var(--line);overflow:visible;display:block}
.tool-tabs{display:flex;align-items:center;gap:5px;padding:8px 14px;border-bottom:1px solid var(--line);background:#f7f9fc}
.tool-tabs button,.view-tools button{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;background:transparent;border-radius:7px;padding:8px 12px;color:var(--muted);font:600 12px inherit;cursor:pointer}
.tool-tabs button[aria-selected=true]{background:var(--navy);color:white}
.tool-tabs button:hover,.view-tools button:hover{border-color:#aebbd0}
.tool-tabs svg,.view-tools svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.tool-tabs .units{margin-left:auto;font-size:11px;color:var(--muted)}
.tool-content{height:184px;padding:12px 16px;overflow:auto}
.tool-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1400px;margin:auto}
.tool-page[hidden]{display:none}
.tool-page .pb{border:0;padding:0;min-width:0}
.tool-page .lbl{margin-bottom:6px}
.tool-page input:not([type=checkbox]):not([type=range]),.tool-page select{border:1px solid #cdd6e2;border-radius:6px;padding:7px 8px;font:inherit;background:white;min-width:0;color:var(--ink)}
.tool-page input:focus,.tool-page select:focus,.tool-tabs button:focus-visible{outline:2px solid #3c72be;outline-offset:1px}
#tool-stock{grid-template-columns:1.4fr 1fr}
#tool-bends{grid-template-columns:.8fr 1fr 1.5fr}
.tool-page .editor{position:static;width:auto;box-shadow:none;border-radius:8px}
.tool-page .editor .eh{padding:5px 9px;cursor:default}
.tool-page .editor .eb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:8px}
.tool-page .editor label{grid-row:1;margin:0;font-size:10px}
.tool-page .editor input{grid-row:2;min-width:0}
.tool-page .editor label:nth-of-type(1),.tool-page .editor #edAng{grid-column:1}
.tool-page .editor label:nth-of-type(2),.tool-page .editor #edRoll{grid-column:2}
.tool-page .editor label:nth-of-type(3),.tool-page .editor #edRad{grid-column:3}
.tool-page .editor .del{grid-column:1/-1;margin:4px 0 0;padding:4px}
#tool-swage,#tool-thread,#tool-finish,#tool-files{display:block}
#tool-swage[hidden],#tool-thread[hidden],#tool-finish[hidden],#tool-files[hidden]{display:none}
.end-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.end-card{border:1px solid var(--line);border-radius:8px;padding:8px 12px;margin:0;min-width:0}
.end-card legend{font-size:12px;font-weight:700;color:var(--navy);padding:0 5px}
.end-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.end-fields label{font-size:11px;color:var(--muted);display:block}
.end-fields input,.end-fields select{display:block;width:100%;margin-top:4px}
.end-fields[hidden]{display:none}
.end-help{font-size:11px;color:var(--muted);margin:5px 0}
.thread-fields{grid-template-columns:1.05fr 1.4fr .75fr}
.end-card{background:#fbfcfe;border-color:#ccd7e6}
.end-card legend{font-size:13px}
.end-fields label{font-size:12px;font-weight:600;color:#344761}
.end-help{line-height:1.4;color:#465973}
.thread-guidance{display:flex;align-items:center;gap:12px;justify-content:space-between}
.thread-guidance button{flex-shrink:0;margin-top:6px;border:1px solid #ccd7e6;background:#fff;color:#1c3461;border-radius:6px;padding:5px 9px;font-weight:600;cursor:pointer}
.tool-tabs button{font-family:inherit;font-size:13px;font-weight:600}
.tool-status{font-size:11px;color:var(--muted);margin:8px 0 0;line-height:1.35}
.tool-status.error{color:#ad2037}
.panel:has(#tab-bungs[aria-selected=true]) .tool-content{height:290px}
#tool-bungs .end-card>select,#tool-bungs label>select{display:block;width:100%;margin:5px 0}
#tool-bungs fieldset fieldset{margin-top:8px;padding:7px;border-color:#e0e6ee}
#tool-bungs .thread-fields{grid-template-columns:1fr 1fr}
#tool-bungs .thread-fields label:nth-child(2){grid-column:1/-1;grid-row:2}
#tool-bungs{display:block}#tool-bungs[hidden]{display:none}
#tool-bungs .end-grid{display:block}#tool-bungs>.tool-status{margin:0 0 6px}
#tool-bungs .end-card{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}#tool-bungs .end-card[hidden]{display:none}
#tool-bungs .end-card>select{grid-column:1/-1;max-width:360px}#tool-bungs .end-card>legend{font-size:12px}
#tool-bungs .end-card>div,#tool-bungs .end-card>label{min-width:0}#tool-bungs .end-card>p{grid-column:2}
.end-switch{display:flex;gap:6px;margin:3px 0 8px}.end-switch button{border:1px solid #cad5e4;background:white;border-radius:6px;padding:6px 24px;font:600 12px system-ui;cursor:pointer}.end-switch button[aria-pressed=true]{background:#1c3461;color:white}
.engineering-notes{font:11px/1.5 system-ui;color:#617085;margin-top:8px}.engineering-notes summary{cursor:pointer}
@media(max-width:760px){#tool-bungs .end-card{display:block}#tool-bungs .end-card[hidden]{display:none}}
.paintgrid{grid-template-columns:repeat(9,minmax(0,1fr));margin:4px 0;gap:4px}
.paintchoice{font-size:10px;padding:4px}
.cost{margin:0;padding:8px 16px;display:flex;align-items:center;gap:16px;background:#f7f9fc;border-top:1px solid var(--line)}
.cost>.lbl,.cost>.total,.cost>.note{display:none}
.cost #bomRows{flex:1;min-width:0}
.cost .bsub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cost .bomrow{padding:0;border:0}
.cost .bthumb,.cost .bprice{display:none}
.cost #cTotal{font-size:14px;font-weight:800;margin:0;white-space:nowrap}
.cost .bomact{margin:0;flex:0 0 auto}
.cost .bomact button{white-space:nowrap;padding:9px 14px}
button:disabled{opacity:.45;cursor:not-allowed}
.view-tools{position:absolute;right:116px;top:10px;z-index:5;display:flex;background:#fff;border:1px solid var(--line);border-radius:8px}
.hint{max-width:245px;font-size:11px}
.reptag{font-size:10px;max-width:calc(100% - 28px);white-space:normal}
.end-label{position:absolute;z-index:4;pointer-events:none;background:#1c3461;color:white;border:2px solid white;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;font-size:12px;font-weight:800;box-shadow:0 1px 5px #33415544}
.end-label[hidden]{display:none}
@media(max-width:760px){
  #stage{flex:1 1 auto;min-height:220px}
  .panel{flex:0 0 auto}
  .tool-tabs{gap:0;padding:5px;overflow-x:auto}.tool-tabs button{padding:7px}.tool-tabs .units{display:none}
  .tool-content{height:202px;padding:10px}
  #tool-stock{grid-template-columns:1fr;gap:10px}
  #tool-bends{grid-template-columns:1fr 1fr}.tool-page .editor{grid-column:1/-1}
  .end-grid{gap:7px}.end-card{padding:6px}.end-fields{gap:5px}.thread-fields{grid-template-columns:1fr 1fr}.thread-fields label:nth-child(2){grid-column:1/-1;grid-row:2}.thread-fields label:last-child{grid-column:2;grid-row:1}
  .thread-guidance button{display:none}
  .paintgrid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .cost{padding:7px;gap:6px}.cost #bomRows{display:none}.cost .bomact{margin-left:auto}.cost .bomact button{padding:8px}
  .view-tools{right:100px}.hint{display:none}
}
