:root{font-family:'Segoe UI Variable','Segoe UI',Arial,sans-serif;color:#24364b;background:#f4f7fb;font-size:15px}*{box-sizing:border-box}body{margin:0}a{color:#0f6cbd;text-decoration:none}a:hover{text-decoration:underline}.topbar{background:#fff;border-bottom:1px solid #dfe5ed}.top-inner{max-width:1140px;margin:auto;min-height:66px;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;gap:15px}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:650;color:#223a55}.brand-light{font-weight:400}.logo,.brand-icon{display:inline-grid;place-items:center;background:#0f6cbd;color:white;border-radius:9px;width:36px;height:36px;font-size:25px}nav{display:flex;gap:20px;flex-wrap:wrap}nav a{font-weight:550}.main{max-width:1140px;margin:28px auto;padding:0 20px;min-height:calc(100vh - 160px)}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}h1{font-size:30px;margin:5px 0 8px;letter-spacing:-.6px}h2{font-size:19px;margin:0 0 18px}.eyebrow{font-size:11px;letter-spacing:1.5px;font-weight:700;color:#0f6cbd;margin:0}.muted,small{color:#68788b}.panel,.login-card{background:#fff;border:1px solid #e0e6ee;border-radius:13px;padding:24px;box-shadow:0 3px 18px rgba(20,44,75,.035)}.stack{display:grid;gap:18px}.panel+.panel{margin-top:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wide{grid-column:1/-1}label{display:block;font-weight:600;font-size:13px;color:#3a4b60;margin-bottom:15px}input,select,textarea{display:block;width:100%;padding:11px 12px;margin-top:7px;border:1px solid #c9d4e0;border-radius:7px;background:#fff;color:#203246;font:inherit;min-height:43px}input:focus,select:focus,textarea:focus{outline:2px solid #93c5f7;border-color:#0f6cbd}input[readonly]{background:#f3f6fa;color:#5a6c80}.button,button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbd5e1;background:#fff;color:#263c53;border-radius:7px;padding:11px 17px;font:600 14px 'Segoe UI',Arial;cursor:pointer;text-decoration:none;min-height:43px}.button:hover,button:hover{text-decoration:none;background:#f1f6fb}.primary{background:#0f6cbd;color:#fff;border-color:#0f6cbd}.primary:hover{background:#115ea3;color:#fff}.actions{display:flex;justify-content:flex-end;margin-top:15px}.login-wrap{display:flex;justify-content:center;align-items:center;min-height:65vh}.login-card{width:100%;max-width:420px;padding:36px}.login-card .brand-icon{width:48px;height:48px;font-size:32px}.login-card h1{margin-top:25px}.full{width:100%;margin-top:10px}.search{display:flex;gap:10px;margin-bottom:20px}.search input{margin:0}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left}th,td{padding:14px;border-bottom:1px solid #e9edf3}th{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#63748a;background:#f8fafc}.status{display:inline-block;background:#e9f2fd;color:#125fa1;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:600}.entry{border-top:1px solid #e7edf4;padding:18px 0}.entry-head{display:flex;gap:15px;justify-content:space-between}.note{white-space:normal;line-height:1.6;margin:12px 0}.attachment{display:inline-block;margin:5px 10px 5px 0}.alert,.success,.hint{padding:14px 16px;border-radius:8px;margin-bottom:18px}.alert{background:#fff0ef;color:#9a2525}.success{background:#e9f7ee;color:#236a3e}.hint{background:#eaf3fc;color:#235c92}footer{text-align:center;padding:24px;color:#8290a0;font-size:12px}@media(max-width:650px){.main{margin:20px auto;padding:0 13px}.top-inner{padding:12px}.brand{font-size:15px}nav{gap:10px;font-size:13px}.heading{align-items:flex-start;flex-direction:column}h1{font-size:26px}.panel{padding:18px}.form-grid{grid-template-columns:1fr}.login-card{padding:26px}.search{flex-direction:column}}

/* HVAC-022: Job History photo thumbnails */
.photo-thumb {
    display: inline-flex;
    flex-direction: column;
    vertical-align: top;
    width: 160px;
    max-width: 46%;
    margin: 8px 8px 8px 0;
    padding: 6px;
    border: 1px solid #d8e1ee;
    border-radius: 12px;
    background: #fff;
    color: #334155;
    text-decoration: none;
    overflow: hidden;
    box-sizing: border-box;
}
.photo-thumb img {
    display: block;
    width: 100%;
    height: 115px;
    object-fit: cover;
    border-radius: 8px;
    background: #eef2f7;
}
.photo-thumb span {
    display: block;
    padding: 7px 3px 2px;
    font-size: 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.photo-thumb:hover {
    border-color: #3675c5;
    box-shadow: 0 3px 12px rgba(0,0,0,.09);
}
@media (max-width: 600px) {
    .photo-thumb {
        width: calc(50% - 10px);
        max-width: none;
    }
    .photo-thumb img {
        height: 110px;
    }
}
/* HVAC-024 GREEN BUTTONS START */

button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.btn,
a.btn,
a.button {
    background: #16A34A !important;
    color: #FFFFFF !important;
    border: 1px solid #15803D !important;
    border-radius: 10px !important;
    padding: 11px 18px;
    font-weight: 600;
    cursor: pointer;
    transition: background .18s ease, box-shadow .18s ease;
}

button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
.btn:hover,
a.btn:hover,
a.button:hover {
    background: #166534 !important;
    border-color: #166534 !important;
    color: #FFFFFF !important;
    box-shadow: 0 3px 10px rgba(22,101,52,.20);
}

button:focus-visible,
input[type="submit"]:focus-visible,
.btn:focus-visible,
a.btn:focus-visible {
    outline: 3px solid #86EFAC;
    outline-offset: 2px;
}

button:disabled,
input[type="submit"]:disabled {
    opacity: .55;
    cursor: not-allowed;
    box-shadow: none;
}

@media (max-width: 600px) {
    button,
    input[type="submit"],
    .btn,
    a.btn,
    a.button {
        min-height: 44px;
    }
}

/* HVAC-024 GREEN BUTTONS END */