/* ============================================================
   BAND UNIFORM ROSTER  -  L1 DESIGN SYSTEM
   All rules are scoped under #bur-app so they never affect the
   surrounding WordPress theme.
   ============================================================ */
#bur-app{
  --bur-bg:#ffffff; --bur-panel:#fafafa; --bur-panel2:#f5f5f5;
  --bur-border:#e0e0e0; --bur-border2:#d0d0d0;
  --bur-text:#333333; --bur-dim:#666666; --bur-low:#999999;
  --bur-blue:#2196f3; --bur-blue-dark:#1976d2; --bur-blue-bg:#e3f2fd; --bur-blue-border:#90caf9;
  --bur-orange:#ff9800; --bur-red:#f44336; --bur-yellow:#ffc107; --bur-green:#4caf50;
  font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;
  font-size:13px; line-height:1.35; color:var(--bur-text);
  background:var(--bur-panel2); padding:12px; border-radius:0;
  box-sizing:border-box;
  /* Fill the page container exactly. No 100vw full-bleed (that overflowed the
     viewport by the scrollbar width and clipped the right edge). Wide tables
     scroll inside their own .bur-table-scroll boxes instead of stretching. */
  width:100%; max-width:100%; position:relative;
}
#bur-app *{ box-sizing:border-box; }
#bur-app h1{ font-family:inherit; }

/* ---------- HEADER ---------- */
#bur-app .bur-appbar{display:flex;align-items:center;gap:12px;background:var(--bur-bg);
  border:1px solid var(--bur-border);border-radius:10px;padding:10px 14px;margin-bottom:12px;flex-wrap:wrap;}
#bur-app .bur-logo{width:46px;height:46px;flex:0 0 auto;}
#bur-app .bur-title-block{flex:1 1 auto;min-width:200px;}
#bur-app .bur-title-block h1{margin:0;font-size:18px;font-weight:700;color:var(--bur-text);letter-spacing:.2px;}
#bur-app .bur-subtitle{margin-top:1px;font-size:12px;color:var(--bur-dim);}
#bur-app .bur-version-badge{flex:0 0 auto;background:var(--bur-blue-bg);border:1px solid var(--bur-blue-border);
  color:var(--bur-blue-dark);font-weight:700;font-size:13px;padding:6px 12px;border-radius:20px;white-space:nowrap;}
#bur-app .bur-save-status{flex:0 0 auto;font-size:12px;font-weight:600;padding:5px 11px;border-radius:20px;
  border:1px solid var(--bur-border);background:var(--bur-panel2);color:var(--bur-dim);white-space:nowrap;}
#bur-app .bur-save-status.saving{background:#fff8e1;border-color:#ffe082;color:#e65100;}
#bur-app .bur-save-status.saved{background:#e8f5e9;border-color:#a5d6a7;color:#2e7d32;}
#bur-app .bur-save-status.error{background:#ffebee;border-color:#ef9a9a;color:#c62828;}

/* ---------- CARDS ---------- */
#bur-app .bur-card{background:var(--bur-bg);border:1px solid var(--bur-border);border-radius:10px;
  padding:12px 14px;margin-bottom:12px;}
#bur-app .bur-section-label{text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.8px;
  color:var(--bur-dim);margin-bottom:14px;display:flex;align-items:center;gap:10px;}
#bur-app .bur-badge{background:var(--bur-panel2);border:1px solid var(--bur-border);color:var(--bur-dim);
  font-size:11px;padding:2px 8px;border-radius:12px;letter-spacing:.3px;text-transform:none;font-weight:600;}

/* ---------- FORM ---------- */
#bur-app .bur-name-row{display:grid;grid-template-columns:1fr 1fr 90px 200px;gap:10px;max-width:720px;margin-bottom:16px;align-items:end;}
#bur-app .bur-check{display:flex;align-items:center;gap:8px;height:38px;font-size:13px;color:var(--bur-text);cursor:pointer;}
#bur-app .bur-check input{width:18px;height:18px;margin:0;cursor:pointer;}
#bur-app .bur-piece-group{border:1px solid var(--bur-border);border-radius:8px;padding:9px 10px;background:var(--bur-panel);}
#bur-app .bur-pg-title{text-transform:uppercase;font-size:10.5px;font-weight:700;letter-spacing:.5px;
  color:var(--bur-blue-dark);margin-bottom:7px;}
#bur-app .bur-groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;}
#bur-app .bur-field label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.4px;
  font-weight:600;color:var(--bur-dim);margin-bottom:4px;}
#bur-app .bur-field input,#bur-app .bur-field select{width:100%;padding:6px 8px;border:1px solid var(--bur-border2);
  border-radius:7px;font-size:13px;font-family:inherit;color:var(--bur-text);background:var(--bur-bg);height:32px;margin:0;}
#bur-app .bur-field select{cursor:pointer;}
#bur-app .bur-field input:focus,#bur-app .bur-field select:focus{outline:none;border-color:var(--bur-blue);
  box-shadow:0 0 0 3px var(--bur-blue-bg);}
#bur-app .bur-field input.bur-num{text-align:center;letter-spacing:1px;}
#bur-app .bur-row-2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
#bur-app .bur-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;}
#bur-app .bur-hint{font-size:11px;color:var(--bur-low);margin-top:4px;}

/* ---------- BUTTONS ---------- */
#bur-app button{font-family:inherit;font-size:13px;font-weight:600;border-radius:7px;border:1px solid transparent;
  padding:7px 12px;cursor:pointer;transition:background .12s,border-color .12s;line-height:1.2;}
#bur-app .bur-btn-primary{background:var(--bur-blue);color:#fff;}
#bur-app .bur-btn-primary:hover{background:var(--bur-blue-dark);}
#bur-app .bur-btn-green{background:var(--bur-green);color:#fff;}
#bur-app .bur-btn-green:hover{background:#3d9140;}
#bur-app .bur-btn-outline{background:var(--bur-bg);color:var(--bur-text);border:1px solid var(--bur-border2);}
#bur-app .bur-btn-outline:hover{background:var(--bur-panel2);}
#bur-app .bur-btn-danger-outline{background:var(--bur-bg);color:var(--bur-red);border:1px solid var(--bur-red);}
#bur-app .bur-btn-danger-outline:hover{background:#ffebee;}
#bur-app .bur-btn-sm{padding:5px 10px;font-size:12px;}
#bur-app .bur-form-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;align-items:center;}
#bur-app #bur-edit-indicator,#bur-app #bur-inv-edit-indicator{color:var(--bur-orange);font-weight:600;font-size:13px;}

/* ---------- TOOLBAR ---------- */
#bur-app .bur-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px;}
#bur-app .bur-search{flex:1 1 220px;min-width:180px;position:relative;}
#bur-app .bur-search input{width:100%;padding:6px 10px 6px 32px;border:1px solid var(--bur-border2);
  border-radius:7px;font-size:13px;font-family:inherit;height:32px;}
#bur-app .bur-search input:focus{outline:none;border-color:var(--bur-blue);box-shadow:0 0 0 3px var(--bur-blue-bg);}
#bur-app .bur-search-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--bur-low);font-size:14px;}
#bur-app .bur-spacer{flex:1 1 auto;}
#bur-app .bur-count-pill{background:var(--bur-panel2);border:1px solid var(--bur-border);color:var(--bur-dim);
  font-size:12px;font-weight:600;padding:5px 11px;border-radius:20px;}

/* ---------- TABLE ---------- */
#bur-app .bur-table-scroll{overflow-x:auto;border:1px solid var(--bur-border);border-radius:10px;}
#bur-app table.bur-roster{width:100%;border-collapse:collapse;font-size:11.5px;background:var(--bur-bg);}
#bur-app table.bur-roster thead th{text-transform:uppercase;font-size:9.5px;letter-spacing:.3px;color:var(--bur-dim);
  text-align:center;padding:5px 6px;background:var(--bur-panel);white-space:nowrap;border-bottom:1px solid var(--bur-border);}
#bur-app table.bur-roster thead tr.bur-grp th{background:var(--bur-panel2);border-bottom:1px solid var(--bur-border);
  color:var(--bur-blue-dark);font-weight:700;border-left:1px solid var(--bur-border);}
#bur-app table.bur-roster thead tr.bur-grp th:first-child{border-left:none;}
#bur-app table.bur-roster thead tr.bur-sub th{border-bottom:2px solid var(--bur-border);}
#bur-app table.bur-roster tbody td{padding:4px 6px;border-bottom:1px solid var(--bur-border);color:var(--bur-text);
  white-space:nowrap;text-align:center;}
#bur-app table.bur-roster tbody td.bur-name-cell{text-align:left;font-weight:600;position:sticky;left:0;background:var(--bur-bg);}
#bur-app table.bur-roster tbody tr:hover td{background:var(--bur-panel);}
#bur-app .bur-grp-sep{border-left:1px solid var(--bur-border);}
#bur-app th.bur-sortable{cursor:pointer;user-select:none;}
#bur-app th.bur-sortable:hover{background:var(--bur-blue-bg);color:var(--bur-blue-dark);}
#bur-app .bur-sort-arrow{color:var(--bur-blue);font-size:9px;}
#bur-app .bur-chip{display:inline-block;min-width:26px;padding:1px 5px;background:var(--bur-panel2);
  border:1px solid var(--bur-border);border-radius:5px;font-variant-numeric:tabular-nums;color:var(--bur-text);}
#bur-app .bur-chip.bur-empty{color:var(--bur-low);background:transparent;border-style:dashed;}
#bur-app .bur-tag{display:inline-block;padding:2px 7px;border-radius:6px;font-size:11px;font-weight:600;}
#bur-app .bur-tag.bur-m{background:var(--bur-blue-bg);color:var(--bur-blue-dark);border:1px solid var(--bur-blue-border);}
#bur-app .bur-tag.bur-f{background:#fce4ec;color:#c2185b;border:1px solid #f8bbd0;}
#bur-app td.bur-actions{white-space:nowrap;}
#bur-app td.bur-actions button{margin-left:4px;}
#bur-app .bur-empty-state{text-align:center;padding:34px 20px;color:var(--bur-low);}
#bur-app .bur-empty-state .bur-big{font-size:15px;color:var(--bur-dim);margin-bottom:4px;}

/* ---------- TOAST ---------- */
#bur-app #bur-toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(20px);
  background:#323232;color:#fff;padding:11px 20px;border-radius:8px;font-size:13px;opacity:0;
  pointer-events:none;transition:opacity .2s,transform .2s;z-index:99999;max-width:90%;}
#bur-app #bur-toast.bur-show{opacity:1;transform:translateX(-50%) translateY(0);}
#bur-app #bur-toast.bur-ok{background:#2e7d32;}
#bur-app #bur-toast.bur-warn{background:#e65100;}
#bur-app #bur-toast.bur-err{background:#c62828;}

#bur-app .bur-foot{text-align:center;color:var(--bur-low);font-size:12px;padding:6px 0 4px;}
#bur-app input[type=file]{display:none;}

/* notices shown when access is denied (rendered outside #bur-app) */
.bur-notice{font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;padding:14px 18px;border-radius:10px;
  border:1px solid #ffe082;background:#fff8e1;color:#e65100;font-size:14px;margin:10px 0;}
.bur-notice-warn{border-color:#ffe082;background:#fff8e1;color:#e65100;}

/* ---------- guard badge ---------- */
#bur-app .bur-guard-badge{display:inline-block;background:var(--bur-green);color:#fff;font-weight:700;
  font-size:11px;line-height:1;padding:2px 6px;border-radius:5px;margin-left:4px;vertical-align:middle;}

/* ---------- yes tag ---------- */
#bur-app .bur-tag.bur-yes{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7;}

/* ---------- repair controls in the form ---------- */
#bur-app .bur-repair-line{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap;}
#bur-app .bur-btn-repair{background:var(--bur-bg);color:var(--bur-red);border:1px solid var(--bur-red);}
#bur-app .bur-btn-repair:hover{background:#ffebee;}
#bur-app .bur-btn-repair.bur-on{background:var(--bur-red);color:#fff;}
#bur-app .bur-btn-repaired{background:var(--bur-bg);color:var(--bur-green);border:1px solid var(--bur-green);}
#bur-app .bur-btn-repaired:hover{background:#e8f5e9;}
#bur-app .bur-repair-status{font-size:11.5px;font-weight:600;}
#bur-app .bur-repair-status.bur-need{color:var(--bur-red);}
#bur-app .bur-repair-status.bur-done{color:var(--bur-green);}

/* ---------- needs-repair highlight in the roster (orange, not pink) ---------- */
#bur-app table.bur-roster tbody td.bur-repair{background:#ffe0b2;}
#bur-app table.bur-roster tbody tr:hover td.bur-repair{background:#ffd28a;}

/* ---------- legend ---------- */
#bur-app .bur-legend{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--bur-dim);
  padding:4px 8px;border:1px solid var(--bur-border);border-radius:8px;background:var(--bur-bg);}
#bur-app .bur-legend-swatch{display:inline-block;width:14px;height:14px;border-radius:3px;background:#ffe0b2;border:1px solid #ffb74d;}

/* ---------- roster section subheads (Band / Color Guard) ---------- */
#bur-app .bur-subhead{text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.6px;color:var(--bur-blue-dark);
  background:var(--bur-panel2);border:1px solid var(--bur-border);border-bottom:none;border-radius:8px 8px 0 0;padding:8px 12px;}
#bur-app .bur-scroll-top{border-radius:0 0 10px 10px;}

/* ---------- run repair report button (header) ---------- */
#bur-app .bur-btn-report-top{flex:0 0 auto;padding:8px 14px;font-size:13px;white-space:nowrap;}

/* ---------- repair report overlay ---------- */
#bur-app .bur-report-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99997;
  display:flex;align-items:flex-start;justify-content:center;padding:26px 16px;overflow:auto;}
#bur-app .bur-report{background:var(--bur-bg);border-radius:12px;max-width:840px;width:100%;padding:22px 26px;
  box-shadow:0 12px 44px rgba(0,0,0,0.3);}
#bur-app .bur-report-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;
  border-bottom:2px solid var(--bur-border);padding-bottom:12px;margin-bottom:14px;}
#bur-app .bur-report-title{font-size:20px;font-weight:700;color:var(--bur-text);}
#bur-app .bur-report-sub{font-size:12px;color:var(--bur-dim);margin-top:2px;}
#bur-app .bur-report-actions{display:flex;gap:8px;flex:0 0 auto;}
#bur-app .bur-report-meta{font-size:12px;color:var(--bur-dim);margin-bottom:6px;}
#bur-app .bur-report-section-title{text-transform:uppercase;font-size:12px;letter-spacing:.5px;color:var(--bur-blue-dark);
  font-weight:700;margin:16px 0 8px;border-bottom:1px solid var(--bur-border);padding-bottom:4px;}
#bur-app .bur-report-student{margin:0 0 12px;}
#bur-app .bur-report-student h4{margin:0 0 4px;font-size:15px;color:var(--bur-text);}
#bur-app .bur-report-item{padding:4px 0 4px 12px;border-left:3px solid var(--bur-orange);margin:4px 0;font-size:13.5px;}
#bur-app .bur-report-when{color:var(--bur-low);font-size:12px;}
#bur-app .bur-report-none{color:var(--bur-dim);font-size:13.5px;padding:4px 0;}
#bur-app .bur-audit-row{font-size:12.5px;padding:4px 0;border-bottom:1px dashed var(--bur-border);color:var(--bur-text);}
#bur-app .bur-audit-table{width:100%;border-collapse:collapse;font-size:12px;}
#bur-app .bur-audit-table th{text-align:left;text-transform:uppercase;font-size:10px;letter-spacing:.4px;color:var(--bur-dim);
  border-bottom:2px solid var(--bur-border);padding:5px 6px;position:sticky;top:0;background:var(--bur-bg);}
#bur-app .bur-audit-table td{border-bottom:1px solid var(--bur-border);padding:5px 6px;vertical-align:top;}
#bur-app .bur-audit-table td:first-child{white-space:nowrap;color:var(--bur-dim);}
#bur-app .bur-audit-table td:nth-child(2){white-space:nowrap;font-weight:600;}

/* ---------- export dialog ---------- */
#bur-app .bur-export-modal{max-width:560px;}
#bur-app .bur-export-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;}
#bur-app .bur-export-lbl{font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:700;color:var(--bur-dim);min-width:96px;}
#bur-app .bur-radio,#bur-app .bur-check2{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer;}
#bur-app .bur-radio input,#bur-app .bur-check2 input{width:16px;height:16px;margin:0;cursor:pointer;}
#bur-app .bur-export-tplname{padding:7px 9px;border:1px solid var(--bur-border2);border-radius:8px;font-family:inherit;font-size:13px;flex:1 1 160px;min-width:120px;}
#bur-app #bur-export-tpl{padding:7px 9px;border:1px solid var(--bur-border2);border-radius:8px;font-family:inherit;font-size:13px;flex:1 1 160px;}
#bur-app .bur-export-colshead{display:flex;align-items:center;gap:10px;margin-top:14px;}
#bur-app .bur-export-cols{margin-top:8px;border:1px solid var(--bur-border);border-radius:8px;padding:10px;max-height:230px;overflow:auto;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 10px;background:var(--bur-panel);}
#bur-app .bur-export-cols label{display:flex;align-items:center;gap:6px;font-size:12.5px;cursor:pointer;}
#bur-app .bur-export-cols input{width:15px;height:15px;margin:0;}

/* ================================================================
   PRINTING
   A single print root is mounted as a DIRECT child of <body> (moved
   there by app.js). When printing we set every other body child to
   display:none — this removes them from the page flow entirely, so
   there are NO extra blank pages (visibility:hidden left them in flow).
   ================================================================ */
#bur-print-root{ display:none; }
#bur-print-root h2{font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;font-size:18px;margin:0 0 4px;}
#bur-print-root .bur-print-meta{font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;font-size:12px;color:#555;margin-bottom:12px;}
#bur-print-root table.bur-doc{border-collapse:collapse;width:100%;font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;font-size:11px;}
#bur-print-root table.bur-doc th,#bur-print-root table.bur-doc td{border:1px solid #999;padding:4px 6px;text-align:left;}
#bur-print-root table.bur-doc th{background:#eee;}
#bur-print-root .bur-report-meta{font-size:11px;color:#555;margin-bottom:8px;}
#bur-print-root .bur-report-section-title{font-weight:700;text-transform:uppercase;font-size:11px;border-bottom:1px solid #999;margin:14px 0 6px;}
#bur-print-root .bur-report-student{margin:0 0 10px;}
#bur-print-root .bur-report-student h4{margin:0 0 3px;font-size:13px;}
#bur-print-root .bur-report-item{padding:2px 0 2px 10px;border-left:3px solid #ff9800;margin:3px 0;font-size:12px;}
#bur-print-root .bur-report-when{color:#777;font-size:11px;}
#bur-print-root .bur-audit-row{font-size:11px;padding:3px 0;border-bottom:1px dashed #ccc;}
#bur-print-root .bur-report-none{font-size:12px;color:#555;}

/* browse-shared templates list */
#bur-app .bur-browse-list{margin-top:10px;border:1px solid var(--bur-border);border-radius:8px;max-height:320px;overflow:auto;}
#bur-app .bur-browse-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--bur-border);}
#bur-app .bur-browse-row:last-child{border-bottom:none;}
#bur-app .bur-browse-row .bn{font-weight:600;}
#bur-app .bur-browse-row .bu{font-size:11px;color:var(--bur-dim);}
#bur-app .bur-browse-row .bur-spacer{flex:1 1 auto;}
#bur-app .bur-browse-empty{padding:14px;color:var(--bur-dim);font-size:13px;text-align:center;}

/* Avery 8877 tag sheet: 2 cols x 5 rows, 3.5in x 2in cells (10 per sheet). */
#bur-print-root .bur-tag-sheet{display:grid;grid-template-columns:3.5in 3.5in;grid-auto-rows:2in;width:7in;}
#bur-print-root .bur-tag-sheet.bur-more{break-after:page;page-break-after:always;}
#bur-print-root .bur-tag{position:relative;box-sizing:border-box;width:3.5in;height:2in;overflow:hidden;
  font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;color:#111;}
#bur-print-root .bur-tag .tinner{position:absolute;inset:0;box-sizing:border-box;padding:0.14in 0.18in;overflow:hidden;}
#bur-print-root .bur-tag.bur-portrait .tinner{inset:auto;top:50%;left:50%;width:2in;height:3.5in;padding:0.12in 0.14in;
  transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center center;}
#bur-print-root .bur-tag .tname{font-size:20pt;font-weight:700;line-height:1.22;margin-bottom:3pt;padding-bottom:1pt;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#bur-print-root .bur-tag .tname.wrap{white-space:normal;overflow-wrap:break-word;word-break:break-word;text-overflow:clip;}
#bur-print-root .bur-tag .tfields{display:grid;grid-template-columns:1fr 1fr;gap:2pt 12pt;font-size:11pt;line-height:1.3;}
#bur-print-root .bur-tag .tfields.one{grid-template-columns:1fr;}
#bur-print-root .bur-tag .tfields > div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#bur-print-root .bur-tag .tlbl{color:#555;text-transform:uppercase;font-size:0.72em;letter-spacing:.2px;font-weight:700;}

@media print {
  body.bur-printing > * { display:none !important; }
  body.bur-printing > #bur-print-root { display:block !important; position:absolute; left:0; top:0; background:#fff; }
}
@page { size: letter; margin: 0.5in 0.75in; }

/* ---------- inline click-to-edit ---------- */
#bur-app td.bur-editable{cursor:pointer;}
#bur-app td.bur-editable:hover{outline:2px solid var(--bur-blue-border);outline-offset:-2px;}
#bur-app .bur-spec-val.bur-editable:hover{outline:2px solid var(--bur-blue-border);outline-offset:-2px;border-radius:4px;}
#bur-app .bur-inline-input{width:60px;max-width:90%;padding:4px 6px;border:1px solid var(--bur-blue);
  border-radius:6px;font-family:inherit;font-size:13px;text-align:center;}
#bur-app .bur-inline-select{padding:4px 6px;border:1px solid var(--bur-blue);border-radius:6px;font-family:inherit;font-size:13px;background:#fff;}
#bur-app td.bur-na{color:var(--bur-low);background:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(0,0,0,0.015) 4px,rgba(0,0,0,0.015) 8px);}

/* ---------- inventory spec chips ---------- */
#bur-app .bur-spec-wrap{display:flex;flex-wrap:wrap;gap:6px;}
#bur-app .bur-spec{display:inline-flex;align-items:center;gap:5px;background:var(--bur-panel);border:1px solid var(--bur-border);
  border-radius:8px;padding:3px 8px;}
#bur-app .bur-spec-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.3px;color:var(--bur-low);font-weight:700;}
#bur-app .bur-spec-val{display:inline-block;}
#bur-app .bur-spec-val .bur-chip,#bur-app .bur-spec-val .bur-tag{border:none;background:transparent;padding:0;min-width:0;}

/* ---------- modal ---------- */
#bur-app .bur-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99998;
  display:flex;align-items:center;justify-content:center;padding:20px;}
#bur-app .bur-modal{background:var(--bur-bg);border-radius:12px;max-width:460px;width:100%;padding:20px 22px;
  box-shadow:0 10px 40px rgba(0,0,0,0.3);}
#bur-app .bur-modal-title{font-size:17px;font-weight:700;color:var(--bur-text);}
#bur-app .bur-modal-sub{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--bur-blue-dark);font-weight:700;margin-top:2px;}
#bur-app .bur-modal-label{display:block;font-size:12px;color:var(--bur-dim);margin:14px 0 6px;font-weight:600;}
#bur-app .bur-modal textarea{width:100%;border:1px solid var(--bur-border2);border-radius:8px;padding:10px;
  font-family:inherit;font-size:14px;resize:vertical;color:var(--bur-text);}
#bur-app .bur-modal textarea:focus{outline:none;border-color:var(--bur-blue);box-shadow:0 0 0 3px var(--bur-blue-bg);}
#bur-app .bur-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;}

/* ---- Tag print preview / setup ---- */
#bur-app .bur-modal.bur-tagprev-modal{max-width:1000px;width:96vw;display:flex;flex-direction:column;max-height:92vh;}
#bur-app .bur-tagprev-modal .bur-modal-title{display:flex;align-items:center;justify-content:space-between;}
#bur-app .bur-x{background:none;border:none;font-size:22px;line-height:1;color:var(--bur-dim);cursor:pointer;padding:0 4px;}
#bur-app .bur-x:hover{color:var(--bur-text);}
#bur-app .bur-tagprev-body{display:grid;grid-template-columns:230px 1fr;gap:16px;margin-top:12px;min-height:0;flex:1;}
#bur-app .bur-tagprev-controls{border:1px solid var(--bur-border);border-radius:10px;background:var(--bur-panel);padding:12px 14px;overflow:auto;}
#bur-app .bur-export-section-lbl{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--bur-blue-dark);font-weight:700;margin-bottom:8px;}
#bur-app .bur-prev-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--bur-text);font-weight:600;margin-bottom:12px;cursor:pointer;}
#bur-app .bur-prev-ctl{margin-bottom:12px;}
#bur-app .bur-prev-ctl-lbl{font-size:12px;color:var(--bur-dim);font-weight:600;margin-bottom:4px;display:flex;justify-content:space-between;}
#bur-app .bur-prev-val{color:var(--bur-blue-dark);font-weight:700;}
#bur-app .bur-prev-ctl input[type=range]{width:100%;accent-color:var(--bur-blue);}
#bur-app .bur-prev-pertag{font-size:12px;}
#bur-app .bur-prev-hint{color:var(--bur-low);font-size:12px;line-height:1.4;}
#bur-app .bur-prev-pertag-title{font-size:12px;color:var(--bur-text);margin-bottom:8px;line-height:1.4;}
#bur-app .bur-prev-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--bur-dim);font-weight:600;margin-bottom:8px;}
#bur-app .bur-prev-row input{width:80px;height:30px;border:1px solid var(--bur-border2);border-radius:6px;padding:0 8px;font-family:inherit;font-size:13px;color:var(--bur-text);}
#bur-app .bur-tagprev-viewport{border:1px solid var(--bur-border);border-radius:10px;background:#e9edf1;overflow:auto;padding:12px;min-height:300px;}
#bur-app .bur-tagprev-stage{width:672px;margin:0 auto;}
/* Show tags on-screen in the preview (the print CSS lives under #bur-print-root). */
#bur-app .bur-tagprev-stage .bur-tag-sheet{display:grid;grid-template-columns:3.5in 3.5in;grid-auto-rows:2in;width:7in;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.15);margin-bottom:14px;}
#bur-app .bur-tagprev-stage .bur-tag{box-sizing:border-box;width:3.5in;height:2in;overflow:hidden;
  font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;color:#111;border:1px dashed #c8ccd0;cursor:pointer;position:relative;}
#bur-app .bur-tagprev-stage .bur-tag .tinner{position:absolute;inset:0;box-sizing:border-box;padding:0.14in 0.18in;overflow:hidden;}
#bur-app .bur-tagprev-stage .bur-tag.bur-portrait .tinner{inset:auto;top:50%;left:50%;width:2in;height:3.5in;padding:0.12in 0.14in;
  transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center center;}
#bur-app .bur-tagprev-stage .bur-tag:hover{outline:2px solid var(--bur-blue-border);outline-offset:-2px;}
#bur-app .bur-tagprev-stage .bur-tag.bur-tag-selected{outline:2px solid var(--bur-blue);outline-offset:-2px;background:#fbfdff;}
#bur-app .bur-tagprev-stage .bur-tag .tname{font-weight:700;line-height:1.22;margin-bottom:3pt;padding-bottom:1pt;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#bur-app .bur-tagprev-stage .bur-tag .tname.wrap{white-space:normal;overflow-wrap:break-word;word-break:break-word;text-overflow:clip;}
#bur-app .bur-tagprev-stage .bur-tag .tfields{display:grid;grid-template-columns:1fr 1fr;gap:2pt 12pt;line-height:1.3;}
#bur-app .bur-tagprev-stage .bur-tag .tfields.one{grid-template-columns:1fr;}
#bur-app .bur-tagprev-stage .bur-tag .tfields > div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#bur-app .bur-tagprev-stage .bur-tag .tlbl{color:#555;text-transform:uppercase;font-size:0.72em;letter-spacing:.2px;font-weight:700;}
/* skip-label controls (preview only) */
#bur-app .bur-tagprev-stage .bur-tag .bur-skipx{position:absolute;top:2px;right:2px;z-index:5;width:20px;height:20px;line-height:16px;
  border:1px solid var(--bur-red);background:#fff;color:var(--bur-red);border-radius:50%;font-size:15px;font-weight:700;cursor:pointer;padding:0;
  display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px rgba(0,0,0,.15);}
#bur-app .bur-tagprev-stage .bur-tag .bur-skipx:hover{background:var(--bur-red);color:#fff;}
#bur-app .bur-tagprev-stage .bur-slot-skip{box-sizing:border-box;width:3.5in;height:2in;border:2px dashed var(--bur-red);background:repeating-linear-gradient(45deg,#fff,#fff 8px,#ffecec 8px,#ffecec 16px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;color:var(--bur-red);font-family:"Segoe UI",Tahoma,sans-serif;}
#bur-app .bur-tagprev-stage .bur-slot-skip span:first-child{font-weight:700;letter-spacing:1px;font-size:13px;}
#bur-app .bur-tagprev-stage .bur-slot-skip .bur-slot-restore{font-size:11px;color:var(--bur-dim);text-decoration:underline;}
#bur-app .bur-prev-skipnote{font-size:12px;color:var(--bur-red);font-weight:600;margin:6px 0 0;min-height:14px;}
/* blank (skipped) label when printing — occupies its grid cell, prints nothing */
#bur-print-root .bur-slot-blank{box-sizing:border-box;width:3.5in;height:2in;}
/* segmented orientation toggle */
#bur-app .bur-seg{display:flex;border:1px solid var(--bur-border2);border-radius:8px;overflow:hidden;}
#bur-app .bur-seg-btn{flex:1;border:none;background:var(--bur-bg);color:var(--bur-dim);font-family:inherit;font-size:12px;font-weight:600;padding:7px 6px;cursor:pointer;}
#bur-app .bur-seg-btn + .bur-seg-btn{border-left:1px solid var(--bur-border2);}
#bur-app .bur-seg-btn.bur-seg-on{background:var(--bur-blue);color:#fff;}

@media (max-width:640px){
  #bur-app .bur-name-row{grid-template-columns:1fr;}
  #bur-app .bur-tagprev-body{grid-template-columns:1fr;}
}
