:root {
  --ink: #131718;
  --muted: #687578;
  --line: #d9e0e0;
  --surface: #ffffff;
  --canvas: #f4f7f6;
  --brand: #101314;
  --brand-2: #09a99e;
  --pass: #15816b;
  --fail: #c53e32;
  --na: #6d7780;
  --warning: #9b5900;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--canvas);
}

* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }

.shell { max-width: 720px; min-height: 100vh; margin: 0 auto; background: var(--canvas); }
.topbar { display:flex; align-items:center; justify-content:space-between; padding:18px 20px; color:#fff; background:linear-gradient(110deg,#090d0e,#172126); border-bottom:1px solid #35dd91; box-shadow:0 7px 21px #00000042; }.topbar-actions { display:flex; align-items:center; gap:10px; }
.hamburger { width:36px; height:36px; margin-right:8px; border:1px solid #ffffff25; border-radius:8px; color:#fff; background:#ffffff12; font-size:22px; line-height:1; }.brand { margin-right:auto; }.main-menu-backdrop { position:fixed; inset:0; z-index:40; background:#000000b5; backdrop-filter:blur(2px); }.main-menu-drawer { position:fixed; z-index:41; top:0; bottom:0; left:0; display:grid; align-content:start; width:min(84vw,330px); padding:18px; color:#f5fbf8; background:linear-gradient(145deg,#11191c,#071012); box-shadow:12px 0 32px #0000008a; }.main-menu-drawer[hidden],.main-menu-backdrop[hidden] { display:none; }.drawer-head { display:flex; align-items:center; justify-content:space-between; padding:7px 4px 10px; color:#f5fbf8; font-size:20px; }.drawer-mark { display:flex; align-items:center; gap:9px; }.drawer-mark img { width:30px; height:30px; border-radius:8px; }.drawer-head button { border:0; color:#fff; background:transparent; font-size:28px; }.drawer-project { margin:0 4px 14px; color:#8da5a5; font-size:11px; font-weight:800; letter-spacing:1.1px; text-transform:uppercase; }.main-menu-drawer > button { display:flex; align-items:center; gap:13px; margin-top:5px; padding:14px 10px; border:0; border-radius:9px; color:#f4f8f7; background:transparent; text-align:left; font-size:20px; font-weight:800; }.main-menu-drawer > button span { font-size:16px; }.main-menu-drawer > button:active { color:#fff; background:#22c8782b; }.main-menu-drawer .drawer-safety { color:#ffae61; background:#e75f1022; }.main-menu-drawer .drawer-admin { margin-top:16px; border-top:1px solid #ffffff1c; border-radius:0; padding-top:18px; color:#84eab4; }.main-menu-drawer .drawer-signout { margin-top:6px; color:#a8b9b9; }
.brand { display:flex; align-items:center; gap:8px; border:0; color:inherit; background:transparent; padding:0; font-weight:800; letter-spacing:.2px; }
.brand-logo { width:111px; height:35px; object-fit:contain; object-position:left center; padding:3px 6px; border-radius:5px; background:#fff; }
.brand-divider { width:1px; height:25px; background:#ffffff4d; }.sitecheck-mark { width:31px; height:31px; border-radius:8px; object-fit:cover; }.sitecheck-name { color:#fff; font-size:16px; letter-spacing:-.25px; }
.icon-button { border:0; color:inherit; background:transparent; font-size:22px; padding:5px 4px; }.project-switch { border:1px solid #ffffff61; border-radius:7px; padding:6px 8px; color:#fff; background:#ffffff17; font-size:12px; font-weight:800; }
.topbar-logout { border:1px solid #ffffff52; border-radius:7px; padding:6px 8px; color:#fff; background:#ffffff12; font-size:12px; font-weight:800; white-space:nowrap; }
.content { padding: 22px 16px 96px; }
.eyebrow { margin:0 0 5px; color:var(--brand-2); text-transform:uppercase; font-weight:800; font-size:11px; letter-spacing:1.2px; }
h1 { font-size:28px; line-height:1.14; margin:0 0 8px; letter-spacing:-.6px; }
h2 { font-size:20px; margin:0; letter-spacing:-.25px; }
.lead, .help, .empty p { color:var(--muted); margin:0; line-height:1.5; }
.section-heading { display:flex; align-items:end; justify-content:space-between; margin:28px 0 12px; }
.section-heading button { border:0; background:transparent; color:var(--brand); font-weight:750; padding:0; }

.primary, .secondary, .text-button { border-radius:10px; min-height:48px; padding:0 16px; font-weight:800; }
.primary { width:100%; border:1px solid var(--brand); color:#fff; background:var(--brand); box-shadow:0 6px 14px #0d485722; }
.primary:disabled { opacity:.45; cursor:not-allowed; }
.secondary { border:1px solid var(--line); color:var(--brand); background:#fff; }
.text-button { min-height:auto; padding:6px; border:0; color:var(--brand); background:transparent; }
.new-inspection { display:flex; align-items:center; gap:14px; text-align:left; padding:17px; margin-top:22px; border:0; width:100%; color:#fff; background:linear-gradient(135deg, var(--brand), var(--brand-2)); border-radius:15px; box-shadow:0 8px 20px #0d485730; }
.new-inspection strong { display:block; font-size:16px; }
.new-inspection small { display:block; margin-top:3px; opacity:.8; }
.round-plus { display:grid; place-items:center; flex:0 0 auto; width:38px; height:38px; border-radius:50%; color:var(--brand); background:#fff; font-size:25px; font-weight:400; }
.flow-card { padding:16px; margin-top:20px; }.flow-card .section-heading { margin:0 0 13px; align-items:center; }.flow-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.flow-stats > div { min-width:0; padding:12px 8px; border-radius:10px; background:#f7faf9; }.flow-stats strong { display:block; font-size:25px; line-height:1; }.flow-stats small { color:var(--muted); font-size:11px; font-weight:750; }.flow-dot { display:inline-block; width:7px; height:7px; border-radius:50%; margin:7px 4px 1px 0; }.open-dot { background:#c28a00; }.progress-dot { background:#15869a; }.completed-dot { background:var(--pass); }

.card { border:1px solid var(--line); background:var(--surface); border-radius:14px; box-shadow:0 2px 5px #122a3220; }
.inspection-row { display:grid; grid-template-columns:minmax(72px,auto) minmax(0,1fr) auto 14px; gap:10px; align-items:center; padding:14px; margin-bottom:9px; text-align:left; }
.inspection-code { display:inline-flex; align-items:center; min-height:38px; padding:7px 9px; border-radius:9px; color:#0d5960; background:#e2f4f2; font-size:13px; font-weight:900; letter-spacing:.15px; }
.inspection-row .row-main { min-width:0; }
.inspection-row strong, .inspection-row small { display:block; overflow:hidden; text-overflow:ellipsis; }
.inspection-row strong { white-space:nowrap; font-size:14px; }.inspection-row small { color:var(--muted); margin-top:3px; font-size:12px; white-space:nowrap; }
.row-side { display:grid; justify-items:end; gap:3px; }.row-side small { font-size:11px; color:var(--muted); }.row-side .status { white-space:nowrap; }
.deadline-text.overdue { color:var(--fail); font-weight:850; }.deadline-text.due-soon { color:#9b6900; font-weight:850; }.deadline-text.on-track { color:var(--pass); font-weight:850; }
.status { display:inline-flex; align-items:center; gap:5px; border-radius:999px; padding:5px 8px; font-size:10px; font-weight:850; letter-spacing:.4px; }
.status.open { color:#775000; background:#fff1ca; }.status.in-progress { color:#075d70; background:#d9f1f5; }.status.completed { color:var(--pass); background:#daf1e4; }.status.failed { color:var(--fail); background:#fae0dc; }
.item-comment { margin-top:11px; }.item-comment label { display:flex; justify-content:space-between; margin-bottom:5px; color:var(--muted); font-size:12px; font-weight:800; }.item-comment label small { color:#789095; font-size:11px; font-weight:650; }.item-comment textarea { min-height:54px; resize:vertical; }
.date-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }.deadline-card { padding:15px; margin:0 0 14px; }.deadline-card .section-heading { margin-bottom:10px; }.deadline-card .section-heading small { color:var(--muted); font-size:12px; }.deadline-bar { display:flex; height:13px; overflow:hidden; border-radius:999px; background:#edf1f1; }.deadline-bar span { display:block; min-width:0; }.deadline-overdue { background:#c93838; }.deadline-soon { background:#d49d08; }.deadline-track { background:#268261; }.deadline-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin-top:11px; }.deadline-stats span { display:grid; grid-template-columns:auto 8px 1fr; align-items:center; gap:4px; color:var(--muted); font-size:10px; line-height:1.2; }.deadline-stats b { color:var(--ink); font-size:19px; }.deadline-stats i { width:7px; height:7px; border-radius:50%; }
.row-chevron { color:var(--muted); font-size:22px; }
.search { position:relative; margin-bottom:16px; }.search input { width:100%; padding:13px 14px 13px 39px; border:1px solid var(--line); border-radius:10px; background:#fff; }.search span { position:absolute; left:13px; top:10px; color:var(--muted); }

.form-card { padding:18px; margin-top:18px; }.field { display:block; margin-bottom:16px; }.field label { display:block; font-weight:750; font-size:13px; margin-bottom:7px; }.field input, .field select, .field textarea { width:100%; border:1px solid #bdcbd0; background:#fff; border-radius:9px; padding:12px; color:var(--ink); }.field textarea { min-height:90px; resize:vertical; }.field small { display:block; color:var(--muted); margin-top:5px; }
.form-actions { display:grid; grid-template-columns:1fr 1.8fr; gap:9px; margin-top:22px; }.form-actions.single { grid-template-columns:1fr; }.remember-login { display:flex; align-items:center; gap:9px; margin-top:14px; font-size:14px; color:var(--muted); cursor:pointer; }.remember-login input { width:18px; height:18px; accent-color:var(--teal); }.form-card .text-action { display:block; width:max-content; margin:16px auto 0; padding:4px; color:var(--teal); font-weight:700; background:transparent; }
.password-input { position:relative; }.password-input input { padding-right:62px; }.password-toggle { position:absolute; top:50%; right:7px; transform:translateY(-50%); border:0; border-radius:6px; padding:6px 7px; color:var(--brand); background:#e6f4f2; font-size:12px; font-weight:800; }.password-strength { margin:10px 0 8px; }.password-strength > div { display:flex; justify-content:space-between; color:var(--muted); font-size:12px; }.password-strength strong { color:var(--fail); }.password-strength i { display:block; width:100%; height:5px; margin-top:6px; overflow:hidden; border-radius:99px; background:#e2e7e7; }.password-strength i::after { content:''; display:block; width:28%; height:100%; border-radius:inherit; background:var(--fail); transition:width .2s ease,background .2s ease; }.password-strength.good strong { color:var(--warning); }.password-strength.good i::after { width:65%; background:#d68b13; }.password-strength.strong strong { color:var(--pass); }.password-strength.strong i::after { width:100%; background:var(--pass); }.password-rules { display:grid; grid-template-columns:1fr 1fr; gap:5px 10px; margin:0; padding:0; list-style:none; color:var(--muted); font-size:12px; }.password-rules li::before { content:'○'; margin-right:5px; color:#9aa6a8; }.password-rules li.met { color:var(--pass); }.password-rules li.met::before { content:'✓'; color:var(--pass); font-weight:900; }.password-match.valid { color:var(--pass); }.password-match.invalid { color:var(--fail); }

.progress { display:flex; align-items:center; gap:7px; margin:15px 0 19px; }.progress i { display:block; height:5px; flex:1; background:#d6e0e2; border-radius:99px; }.progress i.active { background:var(--brand-2); }
.checklist-title { margin-bottom:15px; }.checklist-title small { color:var(--muted); }
.question { padding:15px; margin-bottom:11px; }.question-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }.question-number { flex:0 0 auto; display:grid; place-items:center; width:25px; height:25px; border-radius:50%; color:var(--brand); background:#e4f2f0; font-size:12px; font-weight:800; }.question-text { flex:1; font-weight:760; line-height:1.35; }.answered-dot { width:9px; height:9px; border-radius:50%; background:var(--pass); }.result-options { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin-top:14px; }.result-options button { min-height:39px; border:1px solid var(--line); background:#fff; border-radius:8px; color:var(--muted); font-weight:800; font-size:12px; }.result-options button.selected.pass { color:#fff; border-color:var(--pass); background:var(--pass); }.result-options button.selected.fail { color:#fff; border-color:var(--fail); background:var(--fail); }.result-options button.selected.na { color:#fff; border-color:var(--na); background:var(--na); }
.issue-panel { margin-top:13px; padding-top:13px; border-top:1px dashed var(--line); }.issue-title { color:var(--fail); font-size:12px; font-weight:850; margin-bottom:10px; }.issue-panel textarea { min-height:66px; }.photo-actions { display:flex; gap:8px; align-items:center; }.photo-actions button { display:flex; align-items:center; gap:7px; color:var(--brand); border:1px solid #bbd1d3; background:#eff8f7; border-radius:8px; padding:9px 11px; font-weight:750; }.thumb { width:50px; height:42px; object-fit:cover; border-radius:6px; border:1px solid var(--line); }
.sticky-actions { position:sticky; bottom:0; padding:13px 0 3px; background:linear-gradient(transparent, var(--canvas) 25%); }

.summary-hero { padding:20px; margin:18px 0; color:#fff; background:linear-gradient(145deg,#0d4857,#147269); border-radius:15px; }.summary-hero .status { margin-top:10px; color:#fff; background:#ffffff2b; }.meta-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:16px; }.meta-grid small { display:block; color:var(--muted); }.meta-grid strong { display:block; margin-top:3px; font-size:14px; }
.stats { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin:14px 0; }.stat { text-align:center; padding:14px 4px; border-radius:11px; background:#fff; border:1px solid var(--line); }.stat strong { display:block; font-size:23px; }.stat span { font-size:10px; font-weight:800; color:var(--muted); letter-spacing:.5px; }.stat.pass strong{color:var(--pass)}.stat.fail strong{color:var(--fail)}.stat.na strong{color:var(--na)}
.notice { padding:12px; border-left:4px solid #d68918; border-radius:7px; color:#744600; background:#fff4d8; font-size:13px; line-height:1.4; }
.template-list { display:grid; gap:10px; }.template-choice { padding:15px; text-align:left; border:1px solid var(--line); background:#fff; border-radius:11px; }.template-choice.selected { border:2px solid var(--brand-2); background:#f0faf8; }.template-choice strong, .template-choice small { display:block; }.template-choice small { margin-top:3px; color:var(--muted); }
.empty { padding:32px 15px; text-align:center; }.empty .empty-icon { font-size:38px; margin-bottom:10px; }
.back { display:inline-flex; gap:6px; align-items:center; border:0; background:transparent; color:var(--brand); font-weight:800; padding:0 0 15px; }
.modal-backdrop { position:fixed; inset:0; display:grid; align-items:end; z-index:5; background:#122a3260; }.modal-backdrop[hidden] { display:none; }.modal { width:100%; max-width:720px; margin:0 auto; padding:22px 16px 28px; border-radius:20px 20px 0 0; background:#fff; }.modal h2 { margin-bottom:7px; }.modal .form-actions { margin-top:17px; }
.toast { position:fixed; left:50%; bottom:23px; transform:translateX(-50%); z-index:20; padding:11px 16px; color:#fff; border-radius:99px; background:#1c343c; box-shadow:0 5px 15px #0003; font-size:13px; white-space:nowrap; }
.offline-banner,.online-banner { display:block; width:100%; padding:8px 16px; border:0; color:#fff; background:#a83b30; font-size:12px; font-weight:750; text-align:center; }.online-banner { color:#31585d; background:#e7f4f1; }
.report-brand { display:none; }
.attachment-controls { display:flex; align-items:center; gap:12px; color:var(--muted); font-size:13px; }.compact { min-height:40px; padding:0 12px; }
.evidence-card { padding:16px; margin:17px 0; }.evidence-card h2 { font-size:17px; }.evidence-card p { margin:5px 0 13px; color:var(--muted); font-size:13px; line-height:1.45; }
.evidence-trigger { display:flex; align-items:center; width:100%; gap:11px; border:0; padding:0; color:var(--ink); background:transparent; text-align:left; }.evidence-trigger > span:first-child { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; color:var(--brand); background:#e6f3f1; font-size:19px; }.evidence-trigger > span:nth-child(2) { flex:1; }.evidence-trigger strong,.evidence-trigger small { display:block; }.evidence-trigger small { margin-top:2px; color:var(--muted); font-size:12px; }.evidence-trigger b { color:var(--muted); font-size:22px; font-weight:400; }
.drop-hint { margin-top:12px; padding:10px; border:1px dashed #9bbbc5; border-radius:9px; color:#5a747d; background:#f6fafb; text-align:center; font-size:12px; }.evidence-card.drag-over { border-color:#168ebd; background:#eaf7fc; box-shadow:0 0 0 3px #168ebd2b; }.evidence-card.drag-over .drop-hint { border-color:#168ebd; color:#075b86; background:#dff4fc; }
.attachment-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin-top:14px; }.attachment-tile { min-width:0; }.attachment-tile img { display:block; width:100%; aspect-ratio:1; object-fit:cover; border:1px solid var(--line); border-radius:8px; cursor:zoom-in; }.attachment-tile .text-button { width:100%; padding:5px 0 0; color:var(--fail); font-size:12px; }
.admin-card { padding:16px; margin-top:14px; }.admin-card .section-heading { margin:0 0 12px; align-items:center; }.admin-row { display:flex; align-items:center; justify-content:space-between; padding:11px 0; border-top:1px solid var(--line); }.admin-row strong,.admin-row small { display:block; }.admin-row small { color:var(--muted); font-size:12px; margin-top:2px; }.admin-note { padding:15px; margin-top:14px; background:#eff8f7; }.admin-note p { color:var(--muted); font-size:13px; line-height:1.45; margin:6px 0 0; }
.row-actions { display:flex; align-items:center; gap:5px; }.project-filter { padding:14px; margin-top:16px; }.project-filter label { display:block; margin-bottom:7px; font-size:13px; font-weight:750; }.project-filter select { width:100%; border:1px solid #bdcbd0; border-radius:9px; background:#fff; padding:11px; color:var(--ink); }
.project-checks { display:grid; gap:8px; padding:11px; border:1px solid #bdcbd0; border-radius:9px; background:#fff; }.project-checks label { display:flex; align-items:center; gap:5px; font-weight:650; font-size:14px; }.project-checks input { width:16px; height:16px; }
.history-filters,.diary-controls { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:12px 0 16px; }.history-filters select,.diary-controls select { width:100%; min-width:0; border:1px solid #bdcbd0; border-radius:8px; background:#fff; padding:10px; color:var(--ink); font-size:13px; }.history-filters select:last-child { grid-column:1/-1; }.album-form { padding:14px; margin:-5px 0 14px; }.album-form .form-actions { margin-top:8px; }
.inspection-row[hidden] { display:none !important; }.album-strip { display:flex; gap:7px; overflow-x:auto; padding:0 0 12px; }.album-chip { flex:0 0 auto; border:1px solid #bdcbd0; border-radius:99px; padding:7px 10px; color:#31585d; background:#fff; font-size:12px; font-weight:750; }.album-chip b { margin-left:4px; color:var(--brand); }.album-chip.active { color:#fff; border-color:#0e5d68; background:#0e5d68; }.album-chip.active b { color:#d6fffa; }
.main-menu { display:grid; gap:11px; margin:20px 0; }.main-menu-choice { display:flex; align-items:center; width:100%; gap:13px; padding:17px; color:var(--ink); text-align:left; }.main-menu-choice[href] { text-decoration:none; }.main-menu-choice > span:nth-child(2) { flex:1; }.main-menu-choice strong,.main-menu-choice small { display:block; }.main-menu-choice strong { font-size:17px; }.main-menu-choice small { margin-top:4px; color:var(--muted); line-height:1.35; }.main-menu-choice b { color:var(--muted); font-size:23px; font-weight:400; }.muted-choice { opacity:.72; }.menu-icon { display:grid; place-items:center; flex:0 0 auto; width:42px; height:42px; border-radius:12px; color:#fff; background:linear-gradient(145deg,#0e5d68,#168174); font-size:21px; font-weight:850; }

/* Length is retained in existing records, but is not requested when starting an inspection. */
.form-card .field:has(#length) { display:none; }

.admin-hub { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; margin-top:16px; }
.admin-hub-card { min-height:170px; display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:18px; text-align:left; color:var(--ink); }
.admin-hub-card > span:nth-child(2) { flex:1; }.admin-hub-card strong,.admin-hub-card small { display:block; }.admin-hub-card strong { font-size:17px; }.admin-hub-card small { margin-top:6px; color:var(--muted); line-height:1.35; }.admin-hub-card b { align-self:flex-end; font-size:24px; font-weight:400; color:var(--muted); }
.admin-hub-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:linear-gradient(145deg,#0e5d68,#168174); color:#fff; font-size:20px; font-weight:800; }
.admin-hub-card-safety { border-color:#f4b183; background:linear-gradient(145deg,#fff8f3,#fff); box-shadow:0 8px 22px rgba(190,70,18,.13); }
.admin-hub-card-safety .admin-hub-icon { background:linear-gradient(145deg,#d94916,#f58220); }
.admin-hub-card-safety strong { color:#9f300c; }
.admin-hub-card-safety small,.admin-hub-card-safety b { color:#a54d2b; }
.safety-group { margin-top:24px; }
.safety-group h2 { color:#a13c16; font-size:18px; margin:0 0 10px; }
.safety-form-choice .menu-icon { background:linear-gradient(145deg,#d94916,#f58220); }
.danger-card { border-color:#efb3ad; background:#fff8f7; }
.danger-card h2 { color:#a62820; }
.danger-button { background:#b52c25; }
.safety-menu-choice { border-color:#f4b183; background:linear-gradient(135deg,#fff9f5,#fff); }
.safety-menu-choice .menu-icon { background:linear-gradient(145deg,#d94916,#f58220); }
.safety-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.inspection-type-intro { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:16px; padding:20px; border-color:#9ac8c4; background:linear-gradient(135deg,#effaf8,#fff); }.inspection-type-intro h2 { margin:0 0 6px; }.inspection-type-intro p { max-width:610px; margin:0; color:#49676b; font-size:14px; line-height:1.45; }.inspection-type-intro .primary { flex:0 0 auto; white-space:nowrap; }
.inspection-type-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px; }.inspection-type-card { display:flex; min-height:205px; flex-direction:column; gap:14px; padding:18px; border-color:#c8dcda; background:linear-gradient(145deg,#fff,#f4fbfa); }.inspection-type-card:hover { border-color:#70aaa5; box-shadow:0 8px 20px rgba(14,93,104,.13); }.inspection-type-card-head { display:flex; align-items:center; justify-content:space-between; }.inspection-type-icon { display:grid; width:42px; height:42px; place-items:center; border-radius:13px; color:#fff; background:linear-gradient(145deg,#0e5d68,#168174); font-size:22px; font-weight:800; }.inspection-type-badge { padding:5px 8px; border-radius:99px; color:#376a68; background:#e0f1ef; font-size:11px; font-weight:850; text-transform:uppercase; letter-spacing:.3px; }.custom-inspection-type { border-color:#8bb8db; background:linear-gradient(145deg,#f5fbff,#fff); }.custom-inspection-type .inspection-type-icon { background:linear-gradient(145deg,#195c93,#3c8fc0); }.custom-inspection-type .inspection-type-badge { color:#1d5d8d; background:#dcedfa; }.inspection-type-card h2 { margin:0; font-size:19px; line-height:1.2; }.inspection-type-card p { margin:6px 0 0; color:var(--muted); font-size:13px; line-height:1.35; }.inspection-type-card-actions { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; }.inspection-type-card-actions > span { color:#4b7274; font-size:12px; font-weight:800; }.inspection-type-card-actions .secondary { white-space:nowrap; }.inspection-type-form { margin-top:16px; }
.safety-tile { min-height:152px; padding:16px; border-radius:16px; color:#fff; text-decoration:none; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; box-shadow:0 8px 18px rgba(17,32,37,.16); }
.safety-tile strong { font-size:18px; line-height:1.12; }.safety-tile small { color:rgba(255,255,255,.9); font-weight:700; }.safety-tile-icon { font-size:28px; line-height:1; }
.permit-tile { background:linear-gradient(145deg,#087da1,#12a5c9); }.plant-tile { background:linear-gradient(145deg,#4b317f,#7d56a8); }
.safety-tile.muted-choice { opacity:.72; filter:saturate(.7); }
@media(max-width:390px){.safety-grid{grid-template-columns:1fr}.safety-tile{min-height:126px}}
@media(max-width:620px){.inspection-type-intro{align-items:stretch;flex-direction:column}.inspection-type-intro .primary{width:100%}.inspection-type-grid{grid-template-columns:1fr}.inspection-type-card{min-height:0}}
@media(max-width:560px){.admin-hub{grid-template-columns:1fr}.admin-hub-card{min-height:0; flex-direction:row; align-items:center}.admin-hub-card > span:nth-child(2){flex:1}.admin-hub-card b{align-self:auto}}
.diary-add { margin:17px 0 16px; }.diary-timeline { display:grid; gap:12px; }.diary-entry { display:grid; grid-template-columns:118px 1fr; gap:12px; padding:10px; text-align:left; }.diary-entry img { width:118px; height:108px; object-fit:cover; border-radius:8px; cursor:zoom-in; }.diary-entry strong,.diary-entry small { display:block; }.diary-entry small { color:var(--muted); font-size:12px; }.diary-entry strong { margin-top:5px; }.diary-entry p { margin:5px 0; color:#425c62; font-size:13px; line-height:1.4; }.diary-gps { display:inline-block; margin-top:4px; padding:3px 6px; border-radius:4px; color:#0d5960; background:#e6f3f1; font-size:10px; font-weight:750; }.diary-draft { display:block; width:100%; max-height:280px; margin-bottom:15px; border-radius:10px; object-fit:cover; }.diary-picker { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }.diary-pick { min-width:0; padding:0; overflow:hidden; color:var(--ink); text-align:left; }.diary-pick img { display:block; width:100%; height:132px; object-fit:cover; }.diary-pick span { display:block; padding:9px; }.diary-pick strong,.diary-pick small { display:block; }.diary-pick small { margin-top:3px; color:var(--muted); font-size:11px; }
.diary-delete { display:block; margin-top:7px; padding:0; color:var(--fail); font-size:12px; }
.diary-album { display:inline-block; margin-top:5px; padding:3px 6px; border-radius:4px; color:#654a00; background:#fff0bd; font-size:10px; font-weight:800; }
.diary-album-manager { margin:14px 0; padding:14px; }
.diary-album-manager .section-heading { margin-bottom:4px; }
.diary-album-manager h2 { margin:0; font-size:17px; }
.album-manage-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 0; border-top:1px solid #dce8e8; }
.album-manage-row span { display:grid; gap:2px; }
.album-manage-row small { color:#60747a; }
.chosen-project { display:flex; align-items:center; justify-content:space-between; padding:11px 12px; border:1px solid #bdcbd0; border-radius:9px; background:#f7faf9; font-weight:800; }.project-entry { padding-top:44px; }.project-picker { display:grid; gap:10px; margin-top:24px; }.project-choice { display:flex; align-items:center; justify-content:space-between; width:100%; padding:17px; text-align:left; color:var(--ink); }.project-choice strong,.project-choice small { display:block; }.project-choice strong { font-size:18px; }.project-choice small { margin-top:3px; color:var(--muted); }
.camera-modal { position:fixed; inset:0; z-index:50; display:grid; align-items:end; background:#07161bbb; }.camera-panel { width:100%; max-width:720px; margin:0 auto; padding:18px 16px 26px; color:#fff; background:#102b34; border-radius:18px 18px 0 0; }.camera-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }.camera-head button { border:0; color:#fff; background:transparent; font-weight:800; }.camera-panel video { display:block; width:100%; max-height:56vh; object-fit:cover; border-radius:11px; background:#000; }.camera-panel p { color:#dce8e9; font-size:13px; line-height:1.4; }.camera-panel .primary { background:#117168; border-color:#117168; }
.camera-modal[hidden] { display:none; }
.photo-choice { display:grid; gap:10px; }.photo-choice h2 { margin:0; }.photo-choice p { margin:0 0 4px; color:var(--muted); line-height:1.45; }.photo-choice .text-button { justify-self:center; }.photo-preview-modal { position:fixed; inset:0; z-index:60; display:grid; place-items:center; padding:25px; background:#07161be8; }.photo-preview-modal[hidden] { display:none; }.photo-preview-modal img { max-width:100%; max-height:85vh; border-radius:10px; object-fit:contain; }.photo-preview-close { position:fixed; top:14px; right:16px; border:0; border-radius:8px; padding:9px 12px; color:#fff; background:#ffffff2b; font-weight:800; }
.signature-modal { position:fixed; inset:0; z-index:70; display:grid; place-items:center; padding:14px; color:#fff; background:#07161bf0; }.signature-modal[hidden] { display:none; }.signature-modal-panel { width:min(100%,900px); padding:18px; border-radius:14px; background:#102b34; }.signature-modal-panel p { margin:0 0 10px; color:#dce8e9; font-size:13px; }.signature-modal-panel canvas { display:block; width:100%; height:min(50vh,360px); border-radius:10px; background:#fff; touch-action:none; }.signature-modal-actions { display:grid; grid-template-columns:1fr 2fr; gap:9px; margin-top:12px; }.signature-modal-actions .primary { background:#117168; border-color:#117168; }.signature-launch { display:block; width:100%; height:74px; margin-top:5px; border:1px dashed #90a8ad; border-radius:7px; color:var(--muted); background:#fff; text-align:center; font-weight:750; }.signature-launch img { max-width:100%; max-height:68px; }.signature-launch:active { border-color:var(--brand); }
.closeout-card { padding:16px; margin-top:14px; }.closeout-card h2 { margin-bottom:14px; }.signoff-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }.signoff-grid > div { padding:12px; border:1px solid var(--line); border-radius:9px; background:#f8fbfa; }.signoff-grid small { display:block; color:var(--muted); font-weight:800; margin-bottom:9px; }.signoff-grid label { display:block; margin-top:9px; color:var(--muted); font-size:11px; font-weight:750; }.signoff-grid input { width:100%; border:0; border-bottom:1px solid #aebfc2; background:transparent; padding:7px 1px; font-weight:750; }.signature-pad { display:block; width:100%; height:105px; margin-top:5px; border:1px dashed #90a8ad; border-radius:7px; background:#fff; touch-action:none; }.clear-signature { padding:5px 0 0; color:var(--fail); font-size:12px; }.signoff-grid strong { display:block; margin-top:9px; color:var(--muted); font-size:11px; }
.client-contact { margin-top:7px; padding:7px; border-radius:6px; color:#31585d !important; background:#eaf5f3; font-weight:650 !important; line-height:1.4; }
.summary-nav { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }.summary-nav .back { margin:0; }.reopen-top { white-space:nowrap; }.dashboard-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:15px; }.dashboard-heading h1 { margin-bottom:5px; }.dashboard-heading .lead { margin:0; }.dashboard-heading .primary { flex:0 0 auto; margin-top:3px; }.history-filters { grid-template-columns:1fr 1fr; }.history-filters #history-sort,.history-filters #history-status { grid-column:1 / -1; }
.inspection-actions { position:relative; }.action-gear { width:42px; height:42px; font-size:20px; }.inspection-actions-menu { position:absolute; z-index:8; top:48px; right:0; display:grid; min-width:180px; overflow:hidden; border:1px solid var(--line); border-radius:10px; background:#fff; box-shadow:0 9px 22px #102b3430; }.inspection-actions-menu[hidden] { display:none; }.inspection-actions-menu button { padding:12px 14px; border:0; border-bottom:1px solid var(--line); color:var(--ink); background:#fff; text-align:left; font-weight:800; }.inspection-actions-menu button:last-child { border-bottom:0; }.inspection-actions-menu button:active { background:#eaf5f3; }.inspection-actions-menu .delete-inspection { color:var(--fail); }.timeline { display:grid; gap:10px; }.timeline-entry { position:relative; padding:15px 15px 15px 21px; border-left:4px solid var(--brand); }.timeline-entry strong,.timeline-entry span,.timeline-entry small { display:block; }.timeline-entry span { margin-top:5px; color:var(--muted); font-size:13px; }.timeline-entry small { margin-top:3px; color:#789095; font-size:12px; }.report-actions { display:flex; gap:9px; margin:13px 0; }.report-actions button { flex:1; }.report-row { display:flex; align-items:center; gap:12px; padding:14px; margin-bottom:8px; }.report-row input { width:20px; height:20px; accent-color:var(--brand); }.report-row span { min-width:0; flex:1; }.report-row strong,.report-row small { display:block; }.report-row small { margin-top:3px; color:var(--muted); font-size:12px; }.report-row b { color:var(--brand); font-size:12px; }

/* Premium project command centre. */
.home-premium { min-height:calc(100vh - 82px); color:#edf5f1; background:radial-gradient(circle at 88% 2%,#193f39 0,#101819 34%,#071012 100%); }
.home-premium .home-hero { position:relative; padding:8px 2px 24px; overflow:hidden; }.home-premium .home-hero::after { content:''; position:absolute; width:160px; height:160px; right:-70px; top:-45px; border:1px solid #49e49842; border-radius:50%; box-shadow:0 0 0 18px #49e4980c,0 0 0 36px #49e49808; }.home-premium .eyebrow { color:#54e69d; }.home-premium .home-hero h1 { position:relative; z-index:1; margin-bottom:8px; color:#fff; font-size:31px; }.home-premium .home-hero p { position:relative; z-index:1; margin:0; color:#b6cac4; font-size:15px; }
.premium-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.premium-card { position:relative; display:grid; min-height:160px; overflow:hidden; padding:17px; border:1px solid #ffffff1e; border-radius:17px; color:#f6fbf8; text-align:left; background:#152224; box-shadow:0 12px 24px #00000030; }.premium-card::after { content:''; position:absolute; width:130px; height:130px; right:-46px; bottom:-62px; border:1px solid #ffffff20; border-radius:50%; }.premium-card > * { position:relative; z-index:1; }.premium-card strong,.premium-card small { display:block; }.premium-card strong { font-size:17px; line-height:1.12; }.premium-card small { margin-top:4px; color:#b2c3bf; font-size:12px; line-height:1.35; }.premium-card > b { position:absolute; top:18px; right:16px; color:#dcebe5; font-size:26px; font-weight:400; }.premium-icon { display:grid; width:40px; height:40px; place-items:center; margin-bottom:14px; border:1px solid #5be8a164; border-radius:12px; color:#56f0a1; background:#0b1716a8; font-size:21px; font-weight:900; }.premium-inspection,.premium-safety { grid-column:1 / -1; min-height:188px; }.premium-inspection { background:linear-gradient(135deg,#073529,#0c1719 72%); border-color:#32d5808a; }.premium-inspection .premium-card-head { margin-left:56px; margin-top:-56px; }.premium-inspection .premium-card-head strong,.premium-safety .premium-card-head strong { font-size:22px; }.premium-stats,.premium-safety-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:20px; }.premium-stats i,.premium-safety-stats i { padding-right:8px; border-right:1px solid #ffffff25; font-style:normal; }.premium-stats i:last-child,.premium-safety-stats i:last-child { border-right:0; }.premium-stats strong,.premium-safety-stats strong { color:#54f0a2; font-size:26px; }.premium-stats small,.premium-safety-stats small { margin-top:2px; color:#c9dbd5; font-weight:750; }.premium-safety { background:linear-gradient(135deg,#b73b0b,#401609 80%); border-color:#ff985b; }.premium-safety .premium-icon { color:#fff1df; border-color:#ffd4b27a; background:#4a1a0a80; }.premium-safety .premium-card-head { margin-left:56px; margin-top:-56px; }.premium-safety-stats { grid-template-columns:repeat(2,1fr); }.premium-safety-stats strong { color:#fff4df; }.premium-diary { background:linear-gradient(145deg,#123534,#0e1a1c); }.premium-documents { background:linear-gradient(145deg,#252d31,#11191b); }.premium-team { background:linear-gradient(145deg,#293631,#15201d); }.premium-reports { background:linear-gradient(145deg,#123128,#0f1919); }.premium-recent-heading { margin-top:30px; }.home-premium .section-heading h2 { color:#f6fbf8; }.home-premium .section-heading button { color:#54e69d; }.premium-recent .inspection-row { color:var(--ink); background:#f9fcfa; }
@media(max-width:390px){.premium-grid{gap:9px}.premium-card{min-height:150px;padding:14px}.premium-inspection,.premium-safety{min-height:176px}.premium-card strong{font-size:15px}.premium-card small{font-size:11px}.premium-stats strong,.premium-safety-stats strong{font-size:23px}}

/* Visual home cards: construction, diary, safety and team are distinct at a glance. */
.visual-home{padding-top:0}.visual-hero{position:relative;display:flex;min-height:220px;align-items:flex-end;justify-content:space-between;margin:0 -20px 18px;padding:32px 22px 26px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#071010 2%,#133f36 58%,#20322c)}.visual-hero::before{content:'';position:absolute;inset:auto -16px -43px auto;width:240px;height:240px;border:1px solid #70ffac45;border-radius:50%;box-shadow:0 0 0 28px #63e9a30b,0 0 0 57px #63e9a307}.visual-hero>div,.visual-hero>span{position:relative;z-index:1}.visual-hero .eyebrow{color:#72f3af}.visual-hero h1{margin:4px 0 7px;color:#fff;font-size:32px}.visual-hero p{margin:0;color:#c8d9d4}.hero-live{display:inline-flex;gap:6px;align-items:center;margin-top:17px;padding:8px 10px;border:1px solid #71e4a65e;border-radius:999px;background:#07121085;color:#dff7ec;font-size:12px;font-weight:800}.hero-live b{color:#51e99c}.hero-crane{margin-right:-5px;margin-bottom:-7px;color:#fff;font-size:104px;filter:drop-shadow(0 12px 18px #0008)}.visual-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.visual-card{position:relative;display:grid;min-height:174px;overflow:hidden;padding:16px;border:1px solid #ffffff22;border-radius:18px;color:#f8fffb;background:#172123;text-align:left;box-shadow:0 12px 25px #00000036}.visual-card>*{position:relative;z-index:1}.visual-card strong,.visual-card small{display:block}.visual-card strong{font-size:17px;line-height:1.12}.visual-card small{margin-top:4px;color:#bed0ca;font-size:12px;line-height:1.3}.visual-symbol{display:grid;width:38px;height:38px;place-items:center;margin-bottom:13px;border:1px solid #6ceaa370;border-radius:12px;color:#61eea7;background:#0b1817a8;font-size:20px;font-weight:900}.visual-card-copy{max-width:78%}.inspection-visual{grid-column:1/-1;min-height:196px;background:linear-gradient(125deg,#063528,#122022 72%)}.inspection-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,#60e79f12)}.inspection-visual .visual-card-copy{margin-left:53px;margin-top:-51px}.inspection-visual .visual-card-copy strong{font-size:22px}.crane-mini{position:absolute;right:17px;top:14px;font-size:57px;opacity:.95}.visual-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:23px}.visual-stats i{display:grid;gap:3px;padding-right:7px;border-right:1px solid #ffffff24;color:#bcd2ca;font-size:11px;font-style:normal;font-weight:700}.visual-stats i:last-child{border:0}.visual-stats b{color:#61eda7;font-size:27px;line-height:1}.diary-visual{background:linear-gradient(145deg,#1c3537,#112023)}.diary-calendar{position:absolute;right:13px;bottom:14px;display:grid;width:82px;overflow:hidden;border-radius:10px;background:#f8fcfa;color:#10201d;text-align:center;box-shadow:0 6px 15px #0005}.diary-calendar b{padding:4px;background:#e16a2d;color:#fff;font-size:10px;letter-spacing:.8px}.diary-calendar i{padding:4px 0 0;font-size:25px;font-style:normal;font-weight:900;line-height:1}.diary-calendar small{margin:0;padding:3px;color:#69827a;font-size:7px;letter-spacing:.2px;white-space:nowrap}.safety-visual{background:linear-gradient(145deg,#ba480d,#4d1908)}.safety-visual .visual-symbol{color:#fff0da;border-color:#ffd0ac85;background:#5a1c0b8c}.helmet{position:absolute;right:12px;top:10px;font-size:65px;filter:drop-shadow(0 9px 8px #3b120b8a)}.safety-overdue{position:absolute;right:16px;bottom:18px;color:#ffead4;font-size:11px;font-weight:800}.safety-overdue b{display:block;font-size:25px;line-height:1}.team-visual{padding:0;background:#101a18}.team-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.team-image-shade{position:absolute;inset:0;background:linear-gradient(0deg,#071312e8 7%,#07131215 85%)}.team-visual .visual-card-copy{align-self:end;padding:16px;max-width:100%}.team-visual small{color:#def0e8}.team-label{position:absolute;top:12px;left:12px;padding:5px 7px;border-radius:5px;background:#0d201dc7;color:#8ff0ba;font-size:9px;font-weight:900;letter-spacing:.6px}.documents-visual{background:linear-gradient(145deg,#242c2f,#10191b)}.reports-visual{background:linear-gradient(145deg,#17342c,#0d1818)}.card-arrow{position:absolute;right:15px;top:13px;color:#81e9af;font-size:27px;font-weight:400}.visual-home .premium-recent-heading{margin-top:30px}.visual-home .section-heading h2{color:#f6fbf8}.visual-home .section-heading button{color:#67f0ad}@media(max-width:390px){.visual-hero{min-height:200px;padding:27px 18px 22px}.visual-hero h1{font-size:28px}.hero-crane{font-size:84px}.visual-card{min-height:164px;padding:13px}.inspection-visual{min-height:183px}.visual-card strong{font-size:15px}.inspection-visual .visual-card-copy strong{font-size:20px}.diary-calendar{transform:scale(.88);transform-origin:bottom right}}

.visual-hero{min-height:260px;background-image:linear-gradient(90deg,#071010f5 0%,#071010c7 50%,#07101052 100%),url('sitecheck-model-dark.png');background-repeat:no-repeat;background-size:cover,auto 100%;background-position:center,right center}.team-visual{background-image:url('sitecheck-model-dark.png');background-repeat:no-repeat;background-size:auto 100%;background-position:center}.team-visual img{display:none}

.holidays-visual{background:linear-gradient(145deg,#183743,#0f1d22)}.holiday-card-days{position:absolute;right:17px;bottom:17px;color:#81f1c0;font-size:32px;font-weight:900;line-height:.8}.holiday-card-days small{margin-top:5px;color:#bed6cf;font-size:11px}.holidays-page .lead{margin-top:4px}.holiday-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.holiday-summary>div{min-width:0;padding:13px 8px;border:1px solid #d8e5e1;border-radius:12px;background:#fff;text-align:center}.holiday-summary small,.holiday-summary span{display:block;color:#667f7a;font-size:10px;font-weight:800}.holiday-summary strong{display:inline-block;margin:4px 3px 1px 0;color:#12493e;font-size:24px}.holiday-summary .holiday-remaining{border-color:#54d896;background:#e8faf0}.holiday-calendar{margin:14px 0}.calendar-line{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #e1ebe8}.calendar-line:last-child{border:0}.calendar-line>b{min-width:48px;color:#13755e;font-size:12px}.calendar-line>span{flex:1;font-weight:800;font-size:13px}.holiday-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:10px;align-items:start;padding:13px;margin:8px 0}.holiday-date{display:grid;gap:2px;padding:7px 3px;border-radius:9px;background:#e8f6f1;text-align:center}.holiday-date b{color:#105c4d;font-size:12px}.holiday-date small{color:#66827b;font-size:10px}.holiday-main{min-width:0}.holiday-main strong,.holiday-main small,.holiday-main em,.holiday-main a{display:block}.holiday-main small{margin-top:3px;color:#617c75;font-size:11px;line-height:1.35}.holiday-main em{margin-top:5px;color:#405d55;font-size:12px;font-style:normal}.holiday-main a{margin-top:5px;color:#08795d;font-size:12px;font-weight:800}.holiday-status{padding:5px 7px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap}.holiday-status.pending{color:#955d00;background:#fff3d7}.holiday-status.approved{color:#08784f;background:#def8ea}.holiday-status.declined,.holiday-status.cancelled{color:#a53434;background:#fde5e5}.holiday-actions{grid-column:2/-1;display:flex;gap:8px}.holiday-actions .approve{color:#08784f}.holiday-actions .decline{color:#bd3333}@media(max-width:390px){.holiday-summary{gap:5px}.holiday-summary>div{padding:10px 4px}.holiday-summary strong{font-size:20px}.holiday-summary small,.holiday-summary span{font-size:9px}.holiday-row{grid-template-columns:56px minmax(0,1fr)}.holiday-row>.holiday-status{grid-column:2;justify-self:start}.holiday-actions{grid-column:2}}

@media (min-width: 620px) { .content { padding:32px 28px 100px; }.topbar { padding:18px 30px; }.new-inspection { padding:21px; } }
@media (max-width: 420px) { .topbar { min-height:58px; padding:10px 12px; gap:7px; }.hamburger { flex:0 0 34px; width:34px; height:34px; margin-right:0; }.brand { min-width:0; gap:0; }.brand span { display:none; }.brand-logo { width:96px; height:34px; padding:3px 4px; }.topbar-actions { min-width:0; gap:4px; }.project-switch { max-width:72px; overflow:hidden; padding:6px; text-overflow:ellipsis; white-space:nowrap; }.icon-button { padding:5px 2px; }.topbar-logout { width:32px; padding:6px 0; font-size:18px; line-height:1; }.topbar-logout span { display:none; }.password-rules { grid-template-columns:1fr; }.signoff-grid { grid-template-columns:1fr; }.dashboard-heading { align-items:stretch; flex-direction:column; }.dashboard-heading .primary { width:100%; }.reopen-top { font-size:12px; }.inspection-row { grid-template-columns:70px minmax(0,1fr) auto 10px; gap:7px; }.inspection-code { padding:6px 7px; font-size:12px; }.inspection-row strong { font-size:13px; }.inspection-row small { font-size:11px; }.row-side .status { padding:4px 5px; font-size:9px; }.row-side small { font-size:10px; }.date-grid { grid-template-columns:1fr; }.deadline-stats span { font-size:9px; } }

/* Administrator controls for inspection type cards. */
.inspection-type-tools { display:flex; align-items:center; gap:7px; }.type-settings { display:grid; width:36px; height:36px; place-items:center; border:1px solid #b7cbca; border-radius:9px; color:#0e5d68; background:#fff; font-size:18px; }.type-settings:active { color:#fff; border-color:#0e5d68; background:#0e5d68; }.no-list-needed { color:#668084; font-size:12px; font-weight:750; }
@media print { .topbar, .no-print, .sticky-actions { display:none !important; }.shell { max-width:none; }.content { padding:0; }.card { box-shadow:none; }.summary-hero { print-color-adjust:exact; -webkit-print-color-adjust:exact; }.report-brand { display:flex; align-items:center; justify-content:space-between; padding:0 0 18px; border-bottom:1px solid var(--line); margin-bottom:18px; color:var(--brand); font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:.7px; }.report-brand img { width:180px; height:57px; object-fit:contain; object-position:left center; } }

/* Restored blue-and-white SiteCheck layout. */
.topbar{background:#075b86;border-bottom-color:#20a4e3;box-shadow:none}.hamburger{background:#ffffff18}.main-menu-drawer{background:#fff;box-shadow:12px 0 32px #00000045}.drawer-head{color:#075b86}.drawer-head button{color:var(--ink)}.main-menu-drawer>button{color:var(--ink);background:transparent}.main-menu-drawer>button:active{color:#075b86;background:#e8f6fb}.classic-home{background:var(--canvas)}.classic-home .main-menu{margin:20px 0}.classic-home .main-menu-choice{min-height:78px}.classic-home .menu-icon{background:linear-gradient(145deg,#075b86,#168ebd)}.classic-home .safety-choice .menu-icon{background:linear-gradient(145deg,#d85b25,#ad3213)}.classic-home .safety-choice{border-color:#f1c4ae}.classic-recent .inspection-row{background:#fff}.classic-recent-heading{margin:28px 0 12px}.classic-home .flow-card{margin-top:22px}.classic-home .section-heading button{color:#075b86}.classic-home .flow-stats>div{background:#f4f9fb}.classic-home .lead{max-width:460px}
