:root{font-family:system-ui,sans-serif;color:#173247;background:#f2f6f7;--blue:#155f80;--line:#dce5e9;--muted:#697b87}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;background:white;border:1px solid var(--line);border-radius:8px;padding:11px 15px;color:#173247;min-height:44px}button:hover{border-color:var(--blue)}button.primary{color:white;background:var(--blue)}button:disabled{opacity:.5}a{color:var(--blue)}h1{font-size:30px;letter-spacing:-.6px;margin:0 0 8px}h2{font-size:20px;margin:0 0 14px}h3{font-size:16px}.muted,small{color:var(--muted)}.brand{font-size:22px;font-weight:900;letter-spacing:-2px;border:2px solid #d39b50;padding:10px;display:inline-block}.brand span{color:#d39b50}.login{max-width:420px;margin:10vh auto;padding:28px;background:white;border:1px solid var(--line);border-radius:14px}.login .brand{margin-bottom:24px}.shell{display:grid;grid-template-columns:225px 1fr;min-height:100vh}.sidebar{background:#102b3f;color:white;padding:24px 14px;position:sticky;top:0;height:100vh;overflow:auto}.sidebar small{display:block;margin:16px 0;color:#b8ccd7}.nav{display:grid;gap:5px}.nav button{text-align:left;background:transparent;border-color:transparent;color:#d6e3e9}.nav button.active{background:#254a61;color:white}.workspace{min-width:0}.topbar{background:white;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:17px 28px;gap:15px;flex-wrap:wrap}.content{max-width:1440px;padding:28px;margin:auto}.titlebar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.metric{background:white;border:1px solid var(--line);border-radius:12px;padding:20px}.metric strong{font-size:32px;display:block;margin:8px 0}.panel{background:white;border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:18px}.notice{background:#fff3d7;border:1px solid #ebd3a2;border-radius:9px;padding:14px 18px;margin:18px 0;line-height:1.6}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cards{display:grid;gap:12px}.card{padding:16px;border:1px solid var(--line);border-radius:10px}.card p{margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.card header{display:flex;justify-content:space-between;gap:12px}.badge{font-size:12px;padding:5px 9px;border-radius:20px;background:#eaf0f3;display:inline-block;white-space:nowrap}.badge.pending{background:#fff3d7;color:#79551b}.badge.approved{background:#e1f3eb;color:#24674f}.badge.rejected{background:#fbe6e9;color:#9f2638}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:13px 12px;vertical-align:top}th{color:var(--muted);white-space:nowrap}td small{display:block;margin-top:4px}.vin{font-family:monospace;font-size:12px;white-space:nowrap}label{display:block;font-size:14px;font-weight:600;margin:14px 0 6px}input,select,textarea{width:100%;background:white;border:1px solid #bacbd4;border-radius:8px;padding:11px;color:#173247;min-height:44px}textarea{min-height:100px;resize:vertical}input[type=checkbox]{width:auto;min-height:0}input[type=search]{max-width:430px;margin:0 0 18px}form{max-width:800px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.actions,.row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;align-items:center}.empty{color:var(--muted);padding:24px;text-align:center}.error{color:#9f2638;margin:12px 0}details summary{cursor:pointer;color:var(--blue);padding:9px 0}pre{background:#f4f6f7;white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;font-size:12px;border-radius:7px}#toast{position:fixed;bottom:20px;right:20px;max-width:450px;background:#173247;color:white;border-radius:9px;padding:14px 20px;display:none;z-index:20}@media(max-width:1000px){.metrics{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}}@media(max-width:640px){.shell{display:block}.sidebar{position:static;height:auto;padding:12px}.sidebar .brand{display:none}.sidebar small{margin:0 0 8px}.nav{display:flex;overflow:auto}.nav button{white-space:nowrap;padding:9px 12px}.content{padding:18px 12px}.topbar{padding:12px}.panel{padding:16px}.formgrid{display:block}.metrics{gap:10px}.metric{padding:14px}.metric strong{font-size:26px}h1{font-size:25px}.login{margin:4vh 16px}.vin{font-size:11px}#toast{left:12px;right:12px;bottom:12px}.card header{flex-wrap:wrap}}


/* THE FAVIS GROUP LLC — emerald branding and mobile enhancements */
:root{color:#143b34;background:#f1f7f5;--blue:#138c76;--line:#d5e8e2;--muted:#5e7770}
body{color:#143b34;background:#f1f7f5}
a,details summary{color:#087c68}
button{color:#143b34;border-color:#cfe3dc}
button:hover{border-color:#138c76;background:#f0faf6}
button.primary{background:#128872;color:#fff;border-color:#128872}
button.primary:hover{background:#0c6f5e;color:#fff}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #67cdb0;outline-offset:2px}
.sidebar{background:#087761;color:#fff}
.sidebar small{color:#d6f3e8}
.nav button{color:#ecfff8}
.nav button:hover{background:#16917a;color:#fff}
.nav button.active{background:#bceadd;color:#064c40;font-weight:700}
.topbar{background:#fff;border-color:var(--line)}
.metric,.panel,.card,.login{border-color:var(--line)}
.metric{background:#fff}
.metric strong{color:#087761}
.badge{background:#e6f3ee;color:#245b4e}
.notice{background:#fff7e4;border-color:#f0d9a5;color:#604b22}
input,select,textarea{color:#143b34;border-color:#b6d1c7}
pre{background:#eef7f3}
#toast{background:#064c40}
.brand-logo{display:block;width:92px;height:92px;object-fit:contain;border-radius:10px;margin:0 0 16px;background:#168a73}
.sidebar .brand-logo{width:106px;height:106px;margin:0 0 12px}
.login .brand-logo{width:120px;height:120px;margin:0 0 18px}
@media(max-width:640px){
 .shell{display:block}
 .sidebar{position:relative;height:auto;padding:12px 12px 10px}
 .sidebar .brand-logo{display:block;width:58px;height:58px;margin:0 0 6px}
 .sidebar small{margin:0 0 8px}
 .nav{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding-bottom:5px;-webkit-overflow-scrolling:touch}
 .nav button{flex:0 0 auto;white-space:nowrap;min-height:44px;padding:10px 12px}
 .content{padding:18px 12px}
 .topbar{padding:12px;gap:10px}
 .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .metric{min-width:0;padding:13px}
 .metric strong{font-size:26px}
 .panel{padding:15px}
 .grid,.formgrid{display:block}
 .tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
 table{min-width:540px}
 .actions button,.row button{min-height:44px}
 input,select,textarea{font-size:16px}
 .login{margin:4vh 12px;padding:20px}
}
@media(max-width:360px){.metrics{grid-template-columns:1fr}}
.inspection-print-btn {
  margin-left: 16px;
}

@media (max-width: 600px) {
  .inspection-print-btn {
    margin-left: 0;
    margin-top: 12px;
  }
}
/* Electronic signature pad */
.signature-pad {
    display: block;
    width: 100%;
    max-width: 600px;
    height: 180px;
    box-sizing: border-box;
    border: 2px solid #b7d9d0;
    border-radius: 10px;
    background: #ffffff;
    cursor: crosshair;
    touch-action: none;
    user-select: none;
}

.signature-section {
    width: 100%;
    min-width: 0;
    margin-top: 24px;
    padding: 16px;
    box-sizing: border-box;
}

@media (max-width: 600px) {
    .signature-pad {
        height: 180px;
    }
}
