/* ============================================================
   THE PRINT LAB — page theme (scoped to the Print Lab only)
   A craftsman proofing room: press color bars, registration
   marks, crop marks, job tickets, proof stamps.
   Loaded after award.css; everything is scoped to this page.
   ============================================================ */

/* ---------- Layout defect fix + drop zone ----------
   The shipped .lab-drop was an inline <label> with 26px padding
   and no display property, so its dashed border painted across
   the copy above it. It is now a proper block in clean flow. */
body[data-page="/print-lab"] .lab-drop{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  position:relative;box-sizing:border-box;width:100%;
  border:2px dashed #9db1c9;border-radius:14px;padding:34px 26px;
  text-align:center;color:var(--ink);cursor:pointer;
  font:600 16.5px Inter,sans-serif;
  background:
    linear-gradient(rgba(23,69,197,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(23,69,197,.055) 1px,transparent 1px),
    #fbfcfe;
  background-size:22px 22px,22px 22px,auto;
  transition:border-color .2s,background-color .2s,box-shadow .2s;
}
body[data-page="/print-lab"] .lab-drop::before{
  content:"+";position:absolute;top:8px;left:12px;
  font:400 20px/1 Inter,sans-serif;color:#b9c6da;pointer-events:none;
}
body[data-page="/print-lab"] .lab-drop::after{
  content:"+";position:absolute;bottom:8px;right:12px;
  font:400 20px/1 Inter,sans-serif;color:#b9c6da;pointer-events:none;
}
body[data-page="/print-lab"] .lab-drop:hover,
body[data-page="/print-lab"] .lab-drop.over{
  border-color:var(--blue);background-color:#eef3ff;
  box-shadow:0 0 0 4px rgba(23,69,197,.12);
}
body[data-page="/print-lab"] .lab-drop .drop-formats{
  font:650 11px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5a6a82;
}
body[data-page="/print-lab"] .lab-drop #fc-name{font:550 13.5px Inter,sans-serif;color:var(--blue)}

/* ---------- Page ground: faint cutting-mat grid ---------- */
body[data-page="/print-lab"] main .section{
  background:
    linear-gradient(rgba(18,40,69,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(18,40,69,.045) 1px,transparent 1px),
    var(--paper);
  background-size:34px 34px,34px 34px,auto;
}

/* ---------- Hero: the proofing room ---------- */
body[data-page="/print-lab"] .lab-hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(1100px 480px at 85% -10%,rgba(23,69,197,.5),transparent 60%),
    radial-gradient(700px 420px at -10% 110%,rgba(207,41,53,.28),transparent 55%),
    var(--deep);
  padding:92px 0 0;color:#eef3fb;
}
body[data-page="/print-lab"] .lab-hero .wrap{position:relative;z-index:2}
/* crop marks in the hero corners */
body[data-page="/print-lab"] .lab-hero::before,
body[data-page="/print-lab"] .lab-hero::after{
  content:"";position:absolute;width:34px;height:34px;z-index:1;pointer-events:none;opacity:.55;
  background:
    linear-gradient(#eef3fb,#eef3fb) left 16px top 0/2px 100% no-repeat,
    linear-gradient(#eef3fb,#eef3fb) left 0 top 16px/100% 2px no-repeat;
}
body[data-page="/print-lab"] .lab-hero::before{top:22px;left:22px}
body[data-page="/print-lab"] .lab-hero::after{bottom:52px;right:22px;transform:rotate(180deg)}
body[data-page="/print-lab"] .lab-hero .tp-kicker{
  display:inline-block;color:#ffd9dc;border:1.5px solid rgba(238,243,251,.4);
  border-radius:6px;padding:8px 14px;background:rgba(255,255,255,.05);
  font:650 11.5px Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;
}
body[data-page="/print-lab"] .lab-hero h1{color:#fff}
body[data-page="/print-lab"] .lab-hero h1 .lab-dot{color:var(--red)}
body[data-page="/print-lab"] .lab-hero .chapter-stand{color:#c3d0e4;max-width:64ch}
body[data-page="/print-lab"] .lab-hero .free-note{color:#93a7c6}
body[data-page="/print-lab"] .lab-tickets{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
body[data-page="/print-lab"] .lab-ticket{
  font:650 11px Inter,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#eef3fb;
  border:1.5px dashed rgba(238,243,251,.45);border-radius:8px;padding:9px 13px;
  transform:rotate(-1.2deg);background:rgba(255,255,255,.04);
}
body[data-page="/print-lab"] .lab-ticket:nth-child(2){transform:rotate(.8deg)}
body[data-page="/print-lab"] .lab-ticket:nth-child(3){transform:rotate(-.5deg)}
body[data-page="/print-lab"] .lab-ticket b{color:var(--gold);font-weight:700}

/* ---------- Bench index ---------- */
body[data-page="/print-lab"] .bench-nav{
  display:flex;gap:10px;flex-wrap:wrap;align-items:center;
  margin-top:30px;
}
body[data-page="/print-lab"] .bench-nav .bench-label{
  font:650 11px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5a6a82;margin-right:2px;
}
body[data-page="/print-lab"] .bench-chip{
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
  background:#fff;border:1.5px solid var(--aw-line);border-radius:999px;padding:9px 16px;
  font:600 13.5px Inter,sans-serif;color:var(--ink);
  box-shadow:var(--aw-shadow-sm);transition:border-color .2s,transform .2s;
}
body[data-page="/print-lab"] .bench-chip:hover{border-color:var(--blue);transform:translateY(-1px)}
body[data-page="/print-lab"] .bench-chip i{width:9px;height:9px;border-radius:2px;flex:0 0 9px}
body[data-page="/print-lab"] .bench-chip .n{font:700 11px Inter,sans-serif;color:#5a6a82;letter-spacing:.08em}

/* ---------- Tool cards: specimens with ink bars ---------- */
body[data-page="/print-lab"] .lab-tool{position:relative;overflow:hidden;padding-top:44px}
body[data-page="/print-lab"] .lab-tool::before{
  content:"";position:absolute;top:0;left:0;right:0;height:7px;background:var(--ink);
}
body[data-page="/print-lab"] #file-check::before{background:linear-gradient(90deg,#00a3e0,#1745c5)}
body[data-page="/print-lab"] #true-size::before{background:linear-gradient(90deg,#e5007e,#cf2935)}
body[data-page="/print-lab"] #color::before{background:linear-gradient(90deg,#ffd200,#f5a800)}
body[data-page="/print-lab"] #templates::before{background:linear-gradient(90deg,#1a1a1a,#4a4f57)}
body[data-page="/print-lab"] .lab-tool::after{
  content:"+";position:absolute;top:16px;right:18px;
  font:400 18px/1 Inter,sans-serif;color:#c3ccd9;pointer-events:none;
}

/* ---------- Verdict: the proof stamp ---------- */
body[data-page="/print-lab"] .verdict{border-width:1.5px;position:relative}
body[data-page="/print-lab"] .verdict.show::after{
  content:"Proofed";position:absolute;top:10px;right:12px;
  font:700 9.5px Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase;
  border:1.5px solid currentColor;border-radius:4px;padding:3px 6px;opacity:.55;
  transform:rotate(3deg);pointer-events:none;
}
body[data-page="/print-lab"] .verdict.info{background:#eef3ff;border:1.5px solid #b9c8f5;color:var(--ink)}
body[data-page="/print-lab"] .verdict.info strong{color:var(--blue)}

/* ---------- True-size calibration card: never break the page ---------- */
body[data-page="/print-lab"] .ts-calwrap{overflow-x:auto;padding:4px 2px 10px;margin-top:4px}
body[data-page="/print-lab"] .ts-calwrap .ts-plate{box-shadow:var(--aw-shadow-sm)}

/* ---------- Section header above the tools ---------- */
body[data-page="/print-lab"] .lab-section-head{margin-top:8px}
body[data-page="/print-lab"] .lab-section-head h2{
  font-size:clamp(28px,3.4vw,40px);letter-spacing:-.03em;margin:0 0 6px;
}
body[data-page="/print-lab"] .lab-section-head p{color:#4c5c72;margin:0;max-width:66ch}

@media (max-width:760px){
  body[data-page="/print-lab"] .lab-hero{padding:64px 0 0}
  body[data-page="/print-lab"] .lab-hero::before{top:12px;left:12px}
  body[data-page="/print-lab"] .lab-hero::after{display:none}
  body[data-page="/print-lab"] .lab-tool{padding:34px 22px 28px}
}

/* --- Print-Ready Check v2: job form, report rows, send block --- */
body[data-page="/print-lab"] .fc-job { display: flex; flex-wrap: wrap; gap: 16px 22px; align-items: end; background: #fff; border: 1px solid #dfe5ee; border-radius: 10px; padding: 18px 20px; margin: 0 0 22px; }
body[data-page="/print-lab"] .fc-job .lab-field { margin: 0; min-width: 190px; }
body[data-page="/print-lab"] .fc-job select { max-width: 280px; }
body[data-page="/print-lab"] .fc-custom { display: flex; gap: 14px; }
body[data-page="/print-lab"] .fc-custom .lab-field { min-width: 110px; }
body[data-page="/print-lab"] .fc-radios { border: 0; margin: 0; padding: 0; display: flex; gap: 8px; align-items: center; }
body[data-page="/print-lab"] .fc-radios legend { font: 700 12px Inter, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #4c5c72; padding: 0; margin-bottom: 8px; float: left; width: 100%; }
body[data-page="/print-lab"] .fc-radios label { display: inline-flex; align-items: center; gap: 7px; font: 500 15px Inter, sans-serif; background: #f1f4f9; border: 1px solid #d5dce8; border-radius: 999px; padding: 9px 14px; cursor: pointer; }
body[data-page="/print-lab"] .fc-radios input { accent-color: var(--blue); width: 16px; height: 16px; }
body[data-page="/print-lab"] .report-rows { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 9px; }
body[data-page="/print-lab"] .report-row { display: flex; gap: 12px; align-items: flex-start; background: #fff; border: 1px solid #dfe5ee; border-left: 4px solid #8b98ab; border-radius: 8px; padding: 12px 14px; }
body[data-page="/print-lab"] .report-row.pass { border-left-color: #2e7d43; }
body[data-page="/print-lab"] .report-row.fix { border-left-color: #c22f1d; }
body[data-page="/print-lab"] .report-row.na { border-left-color: #8b98ab; }
body[data-page="/print-lab"] .report-row.unknown { border-left-color: #d99a16; }
body[data-page="/print-lab"] .report-row .chip { flex: none; font: 800 10.5px Inter, sans-serif; letter-spacing: .06em; border-radius: 4px; padding: 4px 7px; color: #fff; background: #8b98ab; margin-top: 2px; }
body[data-page="/print-lab"] .report-row.pass .chip { background: #2e7d43; }
body[data-page="/print-lab"] .report-row.fix .chip { background: #c22f1d; }
body[data-page="/print-lab"] .report-row.unknown .chip { background: #d99a16; color: #231a00; }
body[data-page="/print-lab"] .report-row-text { font-size: 15px; line-height: 1.55; }
body[data-page="/print-lab"] .report-send { margin-top: 20px; background: #fff; border: 1px dashed #aeb9c9; border-radius: 10px; padding: 16px 18px; }
body[data-page="/print-lab"] .report-send-head { font: 700 16px Inter, sans-serif; margin: 0 0 10px; }
body[data-page="/print-lab"] .report-send .lab-field { margin: 0 0 12px; }
body[data-page="/print-lab"] .report-send-status { font-size: 14.5px; margin: 10px 0 0; min-height: 1.2em; }

/* --- Converter: mode tabs + CMYK grid --- */
body[data-page="/print-lab"] .cvt-tabs { display: flex; gap: 8px; margin-bottom: 16px; flex-wrap: wrap; }
body[data-page="/print-lab"] .cvt-tab { font: 700 14px Inter, sans-serif; border: 1px solid #c3ccd9; background: #fff; color: #21334f; border-radius: 999px; padding: 9px 16px; cursor: pointer; }
body[data-page="/print-lab"] .cvt-tab.active { background: var(--blue); border-color: var(--blue); color: #fff; }
body[data-page="/print-lab"] .cvt-cmyk-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
body[data-page="/print-lab"] .cvt-cmyk-grid .lab-field { margin: 0; }

/* --- Template Library --- */
body[data-page="/print-lab"] .tpl-lib { display: grid; gap: 10px; margin-top: 6px; }
body[data-page="/print-lab"] .tpl-product { background: #fff; border: 1px solid #dfe5ee; border-radius: 10px; }
body[data-page="/print-lab"] .tpl-product summary { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; padding: 15px 18px; cursor: pointer; list-style: none; }
body[data-page="/print-lab"] .tpl-product summary::-webkit-details-marker { display: none; }
body[data-page="/print-lab"] .tpl-pname { font: 700 17px Inter, sans-serif; }
body[data-page="/print-lab"] .tpl-pname::before { content: "+ "; color: var(--red); font-weight: 800; }
body[data-page="/print-lab"] .tpl-product[open ] .tpl-pname::before { content: "– "; }
body[data-page="/print-lab"] .tpl-pmeta { font-size: 13.5px; color: #4c5c72; text-align: right; }
body[data-page="/print-lab"] .tpl-rows { border-top: 1px solid #edf1f6; padding: 8px 18px 14px; display: grid; gap: 2px; }
body[data-page="/print-lab"] .tpl-row2 { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 7px 0; border-bottom: 1px dotted #e4e9f1; flex-wrap: wrap; }
body[data-page="/print-lab"] .tpl-row2:last-child { border-bottom: 0; }
body[data-page="/print-lab"] .tpl-size { font: 600 15px Inter, sans-serif; }
body[data-page="/print-lab"] .tpl-variant { font-weight: 500; color: #4c5c72; font-size: 13.5px; }
body[data-page="/print-lab"] .tpl-fmts { display: flex; gap: 7px; flex-wrap: wrap; }
body[data-page="/print-lab"] .tpl-fmt { font: 700 12.5px Inter, sans-serif; text-decoration: none; color: var(--blue); border: 1px solid #b9c8e2; border-radius: 6px; padding: 6px 10px; background: #f4f8ff; }
body[data-page="/print-lab"] .tpl-fmt:hover { background: var(--blue); color: #fff; }
body[data-page="/print-lab"] .tpl-fmt small { font-weight: 500; opacity: .75; }
@media (max-width: 640px) {
  body[data-page="/print-lab"] .fc-job { padding: 14px; }
  body[data-page="/print-lab"] .fc-job .lab-field { min-width: 100%; }
  body[data-page="/print-lab"] .cvt-cmyk-grid { grid-template-columns: repeat(2, 1fr); }
  body[data-page="/print-lab"] .tpl-product summary { flex-direction: column; gap: 2px; }
  body[data-page="/print-lab"] .tpl-pmeta { text-align: left; }
}
body[data-page="/print-lab"] .fc-custom[hidden] { display: none; }
body[data-page="/print-lab"] .fc-radios label { white-space: nowrap; }
body[data-page="/print-lab"] .fc-radios { flex-wrap: wrap; }
