﻿:root{--blue:#0a5f93;--blue-dark:#08496f;--lime:#b6df3c;--ink:#17222c;--muted:#667580;--line:#dfe7eb;--paper:#fff;--wash:#f4f8fa}*{box-sizing:border-box}body{margin:0;background:var(--wash);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5}.site-header{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100% - 1160px)/2))}.brand,.logo-large{font-size:26px;font-weight:800;color:var(--blue);text-decoration:none;letter-spacing:-1.2px}.brand span,.logo-large span{color:#26343d}.brand small{font-size:10px;background:var(--lime);color:#1a2d31;padding:3px 5px;border-radius:3px;letter-spacing:.5px;margin-left:4px;vertical-align:middle}.site-header nav{display:flex;gap:20px}.site-header nav a{color:var(--muted);text-decoration:none;font-weight:600;font-size:14px}.site-header nav a:hover{color:var(--blue)}.app-main{max-width:1160px;margin:0 auto;padding:38px 20px 54px}.auth-main{min-height:calc(100vh - 51px);display:grid;place-items:center;padding:24px}footer{text-align:center;padding:16px;color:var(--muted);font-size:12px}.welcome{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.welcome h1{margin:3px 0;font-size:28px}.welcome p{margin:0;color:var(--muted)}.eyebrow{color:var(--blue)!important;text-transform:uppercase;font-size:12px;font-weight:bold;letter-spacing:.08em}.button,button{border:0;border-radius:6px;background:var(--blue);color:#fff;cursor:pointer;display:inline-block;font:inherit;font-weight:700;padding:11px 16px;text-decoration:none}.button:hover,button:hover{background:var(--blue-dark)}.secondary{background:var(--lime);color:#1a2d31}.secondary:hover{background:#9fc72f}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat,.panel,.auth-card,.install-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 4px rgba(16,42,58,.03)}.stat{padding:19px}.stat span{font-size:13px;color:var(--muted);display:block;min-height:38px}.stat strong{font-size:26px;color:var(--blue);display:block;margin-top:8px}.content-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.panel{padding:22px}.panel-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:4px}.panel h2{font-size:18px;margin:0}.panel-heading span{font-size:13px;color:var(--muted)}.schedule-item{display:flex;gap:16px;padding:15px 2px;border-bottom:1px solid var(--line)}.schedule-item:last-child{border-bottom:0}.schedule-item time{font-weight:700;color:var(--blue);min-width:42px}.schedule-item strong{display:block}.schedule-item p{font-size:13px;color:var(--muted);margin:2px 0}.schedule-item small{font-size:12px;color:var(--muted)}.upcoming-list{list-style:none;padding:0;margin:0}.upcoming-list li{display:flex;gap:13px;padding:14px 0;border-bottom:1px solid var(--line)}.upcoming-list time{font-size:12px;background:#e6f1f6;color:var(--blue);font-weight:bold;padding:3px 5px;height:max-content;border-radius:3px}.upcoming-list span{display:grid}.upcoming-list small{color:var(--muted);font-size:12px}.empty{color:var(--muted);font-size:14px;padding:17px 0}.next{margin-top:20px;border-left:4px solid var(--lime)}.next p{color:var(--muted);margin-bottom:0}.auth-card,.install-card{width:min(100%,460px);padding:34px}.install-card{width:min(100%,600px)}.logo-large{font-size:36px;text-align:center}.tagline,.intro{text-align:center;color:var(--muted);font-size:14px;margin:2px 0 25px}.auth-card h1,.install-card h1{text-align:center;font-size:23px;margin:22px 0}.install-card h2{font-size:16px;margin:22px 0 2px}.form-stack{display:grid;gap:14px}.form-stack label{font-size:14px;font-weight:700}.form-stack input{margin-top:5px;width:100%;border:1px solid #b9c9d1;border-radius:6px;padding:11px;font:inherit}.form-stack input:focus{outline:2px solid #b9dfef;border-color:var(--blue)}.form-stack small{font-weight:normal;color:var(--muted)}.form-stack button{margin-top:6px}.alert{padding:10px 12px;border-radius:6px;font-size:14px}.error{background:#fff0ef;color:#99251c;border:1px solid #f4c7c2}.success{background:#ecf7e4;color:#38671d;border:1px solid #cfe6c1}@media(max-width:780px){.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.welcome{align-items:flex-start;gap:16px;flex-direction:column}.app-main{padding-top:26px}}@media(max-width:440px){.stats-grid{grid-template-columns:1fr}.site-header{padding:0 16px}.site-header nav{gap:12px}.auth-card,.install-card{padding:26px 20px}}

/* Unified action buttons — Add / Continue / Save / Schedule / Search / Delete */
.btn-row,.action-buttons,.job-invoice-line-actions,.quote-actions,.form-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}
.button,.btn,button.button,a.button,input[type=submit].button{border:0;border-radius:999px;background:var(--blue);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:700;padding:11px 18px;text-decoration:none;line-height:1.2;min-height:42px;box-shadow:0 2px 6px rgba(10,95,147,.12)}
.button:hover,.btn:hover,button.button:hover,a.button:hover{background:var(--blue-dark)}
.button.secondary,.btn.secondary,button.secondary{background:var(--lime);color:#1a2d31;box-shadow:0 2px 6px rgba(155,199,47,.18)}
.button.secondary:hover,.btn.secondary:hover,button.secondary:hover{background:#9fc72f}
.button.ghost,.btn.ghost,button.ghost{background:#fff;color:var(--blue);border:1px solid #9fb8c7;box-shadow:none}
.button.ghost:hover,.btn.ghost:hover,button.ghost:hover{background:#eef6fb}
.button.danger,.btn.danger,button.danger,.link-button.danger{background:#fff;color:#a33100;border:1px solid #e2b0a1;box-shadow:none}
.button.danger:hover,.btn.danger:hover,button.danger:hover{background:#fff0ed}
.button.success,.btn.success{background:#2f7a3e;color:#fff}
.button.success:hover,.btn.success:hover{background:#256432}
.button:disabled,.btn:disabled,button:disabled{opacity:.55;cursor:not-allowed}
.saved-line-remove.button{min-width:42px;padding:8px 12px;font-size:18px;line-height:1}
.item-choice-panel{margin-top:12px;padding:14px;border:1px solid #c5d6df;border-radius:12px;background:#f4fafc;display:none}
.item-choice-panel.show{display:block}
.item-choice-panel p{margin:0 0 12px;font-weight:700;color:#075984}
/* --- Desktop: top menu bar spans the full screen width (was centred to 1160px) --- */
@media(min-width:900px){
.site-header{padding-left:24px!important;padding-right:24px!important}
}
