
/* Warranty & Service (job portal). TWO columns that fill the viewport — the coverage table
   and the service history are the only regions that scroll, inside their own cards. Nothing
   is below a fold, because there is no page scroll. */
#jp-warranty .jw-wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:14px;align-items:start}
#jp-warranty .jw-col{display:flex;flex-direction:column;gap:14px;min-width:0}
#jp-warranty .jw-card{padding:16px 18px;margin-bottom:0}
#page-jobportal.jpwarr-fit .jp-scroll{overflow:hidden;display:flex;flex-direction:column;min-height:0}
#page-jobportal.jpwarr-fit #jp-warranty{flex:1;min-height:0;display:flex;flex-direction:column}
#page-jobportal.jpwarr-fit .jw-wrap{flex:1;min-height:0;align-items:stretch}
#page-jobportal.jpwarr-fit .jw-col{min-height:0}
#page-jobportal.jpwarr-fit .jw-col > .jw-card{min-height:0;display:flex;flex-direction:column;flex:0 0 auto}
#page-jobportal.jpwarr-fit .jw-col > .jw-card.jw-fill{flex:1 1 0}
#page-jobportal.jpwarr-fit .jw-fill > .jw-scroll,#page-jobportal.jpwarr-fit .jw-fill > .jw-tblwrap{flex:1;min-height:0;max-height:none;overflow-y:auto}
#page-jobportal.jpwarr-fit .jw-alert{flex:0 1 auto;overflow-y:auto}
/* A short or narrow window can't hold the minimums — fall back to normal page scrolling
   rather than squeezing the coverage table into nothing. */
@media (max-width:1100px),(max-height:640px){
  #jp-warranty .jw-wrap{grid-template-columns:1fr}
  #page-jobportal.jpwarr-fit .jp-scroll{overflow-y:auto;display:block}
  #page-jobportal.jpwarr-fit .jw-col > .jw-card.jw-fill{flex:none}
  #page-jobportal.jpwarr-fit .jw-fill > .jw-scroll,#page-jobportal.jpwarr-fit .jw-fill > .jw-tblwrap{max-height:52vh}
}
/* Inputs match the rest of the app (.fld convention) instead of the browser's defaults. */
#jp-warranty .jw-in{border:1px solid var(--border);border-radius:var(--r-sm);padding:7px 10px;font-size:12.5px;color:var(--text);background:#13161b;outline:none;font-family:inherit;transition:all .15s;height:34px}
#jp-warranty textarea.jw-in{height:auto;resize:vertical}
#jp-warranty .jw-in:hover{border-color:var(--gray-m)}
#jp-warranty .jw-in:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,154,166,.18)}
#jp-warranty select.jw-in{appearance:none;-webkit-appearance:none;padding-right:26px;cursor:pointer;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' fill='none' stroke='%238c98a6' stroke-width='1.6' stroke-linecap='round'/></svg>");
  background-repeat:no-repeat;background-position:right 9px center}
#jp-warranty input[type=date].jw-in::-webkit-calendar-picker-indicator{filter:invert(.62);cursor:pointer}
#jp-warranty .jw-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:10px}
#jp-warranty .jw-t{font-size:15px;font-weight:800;color:var(--text);letter-spacing:-.2px}
#jp-warranty .jw-sub{font-size:11.5px;color:var(--text3);line-height:1.5;max-width:640px}
#jp-warranty .jw-clock{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#jp-warranty .jw-lab{font-size:12px;font-weight:700;color:var(--text2)}
#jp-warranty .jw-clock .jw-in{width:170px}
#jp-warranty .jw-clock-note{font-size:12px;color:var(--text3)}
#jp-warranty .jw-clock-note b{color:var(--text2)}
#jp-warranty .jw-warn{color:var(--amber,#e0a23b)}
#jp-warranty .jw-alert{border-color:rgba(55,179,192,.5);background:rgba(55,179,192,.06)}
#jp-warranty .jw-req{padding:7px 0;border-top:1px solid var(--border);font-size:13px}
#jp-warranty .jw-req:first-of-type{border-top:none}
#jp-warranty .jw-req-m{font-size:11px;color:var(--text3);margin-top:2px}
#jp-warranty .jw-tblwrap{overflow-x:auto;max-height:46vh;overflow-y:auto;border:1px solid var(--border);border-radius:8px}
#jp-warranty .jw-scroll{overflow-y:auto;max-height:46vh}
#jp-warranty .jw-tbl{width:100%;border-collapse:collapse;font-size:12.5px}
#jp-warranty .jw-tbl th{position:sticky;top:0;background:#15181d;text-align:left;padding:8px 10px;font-size:11px;letter-spacing:.4px;text-transform:uppercase;color:var(--text3);border-bottom:1px solid var(--border);z-index:1}
#jp-warranty .jw-tbl td{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top;color:var(--text2)}
#jp-warranty .jw-tbl tr:last-child td{border-bottom:none}
#jp-warranty .jw-tbl{table-layout:fixed}
#jp-warranty .jw-tbl th:nth-child(1){width:34%}
#jp-warranty .jw-tbl th:nth-child(2),#jp-warranty .jw-tbl th:nth-child(3){width:12%}
#jp-warranty .jw-tbl th:nth-child(4){width:26%}
#jp-warranty .jw-tbl th:nth-child(5){width:16%}
#jp-warranty .jw-item{color:var(--text);font-weight:600}
#jp-warranty .jw-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#jp-warranty .jw-form .jw-in{height:32px;font-size:12.5px}
#jp-warranty .jw-grow{flex:1;min-width:200px}
#jp-warranty .jw-check{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text3);white-space:nowrap}
#jp-warranty .jw-entry{border-top:1px solid var(--border);padding:10px 0}
#jp-warranty .jw-entry:first-of-type{border-top:none}
#jp-warranty .jw-internal{opacity:.72}
#jp-warranty .jw-entry-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}
#jp-warranty .jw-entry-d{font-size:11.5px;color:var(--text3)}
#jp-warranty .jw-entry-k{font-size:11.5px;color:var(--text3)}
#jp-warranty .jw-entry-x{margin-left:auto;cursor:pointer;color:var(--text3);font-size:13px;padding:0 4px}
#jp-warranty .jw-entry-x:hover{color:var(--red,#e5534b)}
#jp-warranty .jw-entry-b{font-size:13px;color:var(--text2);margin-top:4px;white-space:pre-wrap}
#jp-warranty .jw-entry-m{font-size:11.5px;color:var(--text3);margin-top:2px}
#jp-warranty .jw-shots{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
#jp-warranty .jw-shots img{width:88px;height:66px;object-fit:cover;border-radius:6px;border:1px solid var(--border)}
#jp-warranty .jw-entry-f{display:flex;gap:8px;align-items:center;margin-top:7px}
#jp-warranty .jw-mini{height:28px;font-size:12px;width:150px;flex:none}
#jp-warranty .jw-entry-f .jw-in{height:28px;font-size:12px}
