/* Shared responsive layout; print output keeps its existing sizing. */
@media screen {
  [hidden]{display:none!important}
  .button{display:inline-flex;align-items:center;justify-content:center;max-width:100%;white-space:normal;line-height:1.4;text-align:center;overflow-wrap:anywhere}
  .studio-archive-actions{display:grid;gap:16px;min-width:0}
  .studio-archive-actions>.button{width:100%;padding:12px 16px}
  .studio-archive-actions summary,.studio-save a,.studio-save button{overflow-wrap:anywhere}
  .studio-layout>*{min-width:0}
  .studio-actions{flex-wrap:wrap}
  .studio-layout{grid-template-columns:minmax(220px,1fr) minmax(0,1.5fr) minmax(220px,1fr)}
}
@media screen and (max-width:1200px){
  .studio-layout{grid-template-columns:minmax(220px,280px) minmax(0,1fr)}
  .studio-save{grid-column:1/-1;position:static}
}
@media screen and (max-width:900px){
  .app-main,.app-shell,.app-main>main,.card,.form-grid>*,.two-col>*,.quote-layout>*,.quote-grid>*,.quote-item-row>*,.prepress-grid>*,fieldset{min-width:0}
  .app-main>main{width:100%;margin:24px auto;padding:0 16px}
  .heading,.quote-heading,.library-heading{flex-wrap:wrap;align-items:flex-start;gap:16px}
  .heading>div,.quote-heading>div{min-width:0}
  h1,h2,h3,p,.message,.customer-quote-list a{overflow-wrap:anywhere}
  .card{padding:18px}
  .quote-summary{padding:0}
  input,select,textarea{max-width:100%;font-size:16px!important}
  input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,button,.button,summary{min-height:44px}
  button,.button{white-space:normal;line-height:1.4;overflow-wrap:anywhere;font-size:14px}
  label,.quote-section label{font-size:14px}
  input[type=checkbox],input[type=radio]{width:22px;height:22px;flex:0 0 22px}
  .check,.check-row{align-items:flex-start}
  input[type=range]{padding:0;touch-action:pan-y}
  .search,.move-form,.summary,.studio-actions,.prepress-toolbar,.inventory-actions{flex-wrap:wrap}
  .search>*{min-width:0}
  .search input,.search select{flex:1 1 180px}
  table{display:block;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  th,td{padding:12px;font-size:14px}
  .production-board,.progress-track{max-width:100%;min-width:0;overscroll-behavior-x:contain}
  .side-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:12px}
  .side-nav .nav-group{display:flex;flex-direction:column;min-width:0;gap:2px}
  .side-nav .nav-label{display:block;font-size:12px}
  .side-nav a{white-space:normal;min-height:44px;align-items:center;gap:8px}
  .side-nav .inbox-badge{display:inline-block}
  .sidebar-user{display:block;padding:12px 10px}
  .sidebar-user form{max-width:220px}
  .sidebar-mobile-closed .side-nav,.sidebar-mobile-closed .sidebar-user{display:none}
  .sidebar-toggle{min-width:44px;min-height:44px}
  .activity-tabs>a,.report-tabs>a,.inbox-pagination>a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink)}
  .activity-tabs>a{color:#000}
  .activity-tabs .inbox-badge,.inbox-pagination>span{display:inline-block}
  .activity-tabs{flex-wrap:wrap;gap:4px}
  .inbox-toolbar a{display:inline-flex;align-items:center;min-height:44px;gap:6px}
  .quote-layout{grid-template-columns:minmax(0,1fr)}
  .quote-summary{position:static;order:initial}
  .quote-item-row{grid-template-columns:28px minmax(0,1fr) 44px;align-items:end}
  .quote-item-row>label{grid-column:2}
  .quote-item-number{grid-column:1;grid-row:1;align-self:start;margin-top:24px}
  .quote-remove-item{grid-column:3;grid-row:1;min-width:44px}
  .product-library{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
  .settings-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
  .options-dropdown-panel{max-width:calc(100vw - 32px)}
  .prepress-grid{grid-template-columns:minmax(0,1fr)}
  .prepress-controls{border-right:0;border-bottom:1px solid var(--line);padding:0 0 18px}
  .prepress-preview-wrap{min-height:240px;padding:10px}
  .prepress-status{white-space:normal}
  .studio-stage.is-expanded{padding:12px;justify-content:flex-start;overflow-y:auto;height:100dvh}
  .studio-stage.is-expanded canvas{height:auto;width:auto;max-height:calc(100dvh - 180px);max-width:100%;flex-shrink:1;min-height:0}
  .studio-stage.is-expanded .studio-actions{flex-shrink:0;width:100%}
}
@media screen and (max-width:720px){
  .studio-layout{grid-template-columns:minmax(0,1fr)}
  .studio-stage{grid-row:1;padding:12px}
  .studio-save{grid-column:auto}
  .studio-actions>button{flex:1 1 140px}
  .prepress-toolbar>*{flex:1 1 100%;min-width:0}
  .form-grid,.two-col,.quote-grid.two,.quote-grid.three{grid-template-columns:minmax(0,1fr)}
  .form-grid>.full{grid-column:auto}
  .quote-item-row select{font-size:16px}
  .product-card{grid-template-columns:80px minmax(0,1fr);gap:12px}
  .product-thumb{height:120px}
  .quote-total{gap:12px;flex-wrap:wrap}
  .production-board+.card{display:block}
  .stage-column{min-width:min(82vw,320px);max-width:100%}
  .inventory-filters{grid-template-columns:minmax(0,1fr)}
  .inventory-filters label:first-child{grid-column:auto}
  .equipment-actions details form{min-width:0;width:100%}
  .equipment-actions details{width:100%}
  .page-options{justify-content:flex-start;gap:8px}
  .options-dropdown{max-width:100%}
  .options-dropdown-panel{position:static;min-width:0;width:100%;margin-top:6px}
  .options-dropdown[open]{width:100%}
}
