/* TrailSurge Workshop • Hub v3
   Keeps the original six-card Quick Actions home, with quiet workflow enhancements.
*/
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased}
.content{max-width:1440px;margin:0 auto;padding-top:29px}
.heading{margin-bottom:18px}
.heading h1{letter-spacing:-.9px}
.hero{min-height:0;padding:25px 30px;margin-bottom:25px}
.hero h2{font-size:25px}
.hero:after{pointer-events:none}
.actions{margin-bottom:27px}
.section-head{margin-bottom:13px}
.section-head h3{font-size:17px}
.action-card{min-height:165px;position:relative;padding:20px;box-shadow:0 1px 2px #142c4305}
.action-card .arrow{position:absolute;right:21px;bottom:18px}
.action-card p{padding-right:12px}
.action-card:hover{box-shadow:0 12px 24px #1b49660e}
.action-card:focus-visible{outline:3px solid #12a4d3}
.stat-heading{margin-top:1px;margin-bottom:13px}
.stat-heading>div{display:flex;align-items:baseline;gap:13px;flex-wrap:wrap}
.refresh-button{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 12px;color:#4f6b80;font-weight:800;font-size:11px}
.refresh-button svg,.tool-buttons svg,.storage-symbol svg,.searchbox svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;fill:none}
.refresh-button:disabled,.tool-buttons button:disabled,.finder-filters button:disabled{opacity:.47;cursor:not-allowed}
.refresh-button:not(:disabled):hover{border-color:#a9cbd8;background:#f4fbff}
.stats{margin-bottom:18px}
.stat{padding:17px 19px;min-height:128px}
.stat .number{font-size:29px;margin:10px 0 7px}
.bottom-grid{align-items:start;grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr);margin-top:2px}
.panel{box-shadow:0 1px 2px #142c4305}
.panel-head{align-items:flex-start;margin-bottom:15px}
.panel-head>div{min-width:0}
.panel h3{font-size:17px;letter-spacing:-.25px}
.panel .minor.hint{margin:6px 0 0;color:#8a9aa8;font-weight:500;line-height:1.5}
.panel-kicker{font-size:10px;font-weight:800;letter-spacing:1.35px;color:#1483ab;margin:0 0 8px}
.text-link{font-size:11px;font-weight:800;color:#098dbb;white-space:nowrap;align-self:start}
.text-link:hover{text-decoration:underline}
.search-line{margin-top:9px}
.searchbox{display:flex;gap:10px;align-items:center;border:1px solid #d9e5ee;border-radius:10px;background:#fbfdff;padding:0 13px;transition:border-color .12s,box-shadow .12s}
.searchbox svg{width:18px;height:18px;color:#8ea1b0;flex:0 0 18px}
.searchbox:focus-within{border-color:#26a4d4;box-shadow:0 0 0 3px #1da3ce17}
.searchbox input{height:45px;border:0;background:transparent;outline:0;color:var(--ink);min-width:0;width:100%;font-size:13px}
.searchbox input::placeholder{color:#9dabb7}
.finder-filters{display:flex;align-items:center;gap:5px;flex-wrap:wrap;border-bottom:1px solid #eaf0f5;padding:14px 0 10px}
.finder-filters button{border:1px solid transparent;color:#8797a6;background:transparent;border-radius:7px;padding:7px 11px;font-size:11px;font-weight:800}
.finder-filters button.active{background:#eaf7fb;color:#0488b5;border-color:#d5eff7}
.finder-filters button:not(:disabled):hover{color:#007fac;background:#f3f8fa}
.jobs{min-height:105px}
.job-row{align-items:center;gap:12px;padding:13px 1px}
.job-row:hover{background:#fbfdff}
.job-row .job-main{min-width:0}
.job-main strong{font-size:12px;color:#263e53}
.job-main small{font-size:11px;margin-top:4px}
.job-icon{background:#edf8fd;color:#188fb9;width:37px;height:37px;font-size:17px}
.job-row .pill{font-size:10px;margin-left:3px}
.job-go{font-size:13px;color:#078ab9;font-weight:800;white-space:nowrap}
.panel-footer{border-top:1px solid #edf2f5;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;margin-top:3px;min-height:28px}
.panel-footer .minor{font-size:11px}
.attention-count{display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#647b90;background:#edf3f7;min-width:22px;height:22px;border-radius:20px;padding:0 6px;vertical-align:middle;margin-left:4px}
.priority-list{min-height:100px;max-height:300px;overflow:auto}
.priority-item{border-top:1px solid #edf2f6;display:flex;align-items:center;gap:10px;padding:13px 0}
.priority-item:first-child{border-top:0}
.priority-dot{width:35px;height:35px;background:#fef5eb;border-radius:10px;flex:0 0 35px;display:grid;place-items:center;color:#bb8127}
.priority-dot.overdue{color:#bd6251;background:#fff0ed}
.priority-dot.parts{color:#2089ad;background:#eaf7fc}
.priority-dot svg{stroke:currentColor;width:18px;height:18px;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.priority-main{min-width:0;flex:1}
.priority-main strong{font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.priority-main small{font-size:11px;display:block;color:#8594a2;line-height:1.55;margin-top:2px}
.priority-item a{padding:7px 9px;color:#078cb7;font-size:11px;font-weight:800;border:1px solid #d9ebf2;border-radius:8px}
.priority-item a:hover{background:#f3faff}
.attention-panel .empty{padding:25px 12px}
.support-tools{margin-top:17px;border-top:1px solid #eef2f6;padding-top:16px}
.support-tools h4{font-size:12px;margin:0 0 10px}
.support-tools p{font-size:10px;color:#8999a7;line-height:1.55;margin:10px 0 0}
.tool-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tool-buttons button{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dbe6ee;border-radius:8px;background:#fafdff;font-size:11px;color:#406a82;padding:10px 11px;font-weight:800}
.tool-buttons button:not(:disabled):hover{border-color:#95cddd;background:#ecf8fc}
.storage-reminder{display:flex;gap:13px;align-items:center;margin-top:17px;border:1px solid #dde9f0;background:#fff;border-radius:12px;padding:16px 19px}
.storage-symbol{flex:0 0 37px;width:37px;height:37px;border-radius:10px;display:grid;place-items:center;background:#ecf6fa;color:#3689ad}
.storage-symbol svg{width:21px;height:21px}
.storage-reminder>div:nth-child(2){flex:1;min-width:0}
.storage-reminder strong{display:block;font-size:12px;color:#3b546a}
.storage-reminder p{font-size:11px;color:#8191a2;margin:5px 0 0;line-height:1.55}
.storage-reminder a{font-size:11px;color:#1688ae;font-weight:800;white-space:nowrap}
.shift-select{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;color:#6c8092;white-space:nowrap}
.shift-select select{appearance:auto;border:1px solid #dce6ed;border-radius:8px;padding:8px 9px;background:#fff;color:#33556b;font:700 11px 'DM Sans',system-ui,sans-serif;max-width:130px}
.shift-select select:disabled{opacity:.5}
.top-actions{gap:10px}
#findJob{scroll-margin-top:25px}
#priorityList .empty{background:#f9fcfd;border-radius:8px}
#printSheet{display:none}
@media(max-width:1240px){.side{width:238px}.shift-select{display:none}.bottom-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr)}}
@media(max-width:1040px){.actions{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-grid{grid-template-columns:1fr}.shift-select{display:flex}.hero{padding:25px}.action-card{min-height:151px}}
@media(max-width:850px){.shift-select{display:flex}.content{padding-top:23px}.storage-reminder{align-items:flex-start}}
@media(max-width:600px){.top{gap:4px}.top-actions{gap:6px}.shift-select{font-size:0}.shift-select select{max-width:109px;padding:7px 5px;font-size:10px}.who{max-width:85px}.staff-chip{padding:4px 6px 4px 4px;gap:5px}.avatar{width:28px;height:28px}.verified{font-size:9px}.logout{font-size:10px;padding:8px}.hero{margin-bottom:23px}.actions{gap:10px}.action-card{padding:16px;min-height:158px}.action-card h4{font-size:13px}.action-card p{font-size:11px;line-height:1.5}.action-icon{margin-bottom:10px;width:37px;height:37px}.action-icon svg{width:20px;height:20px}.action-card .arrow{right:15px;bottom:12px}.section-head span{font-size:11px}.panel-head{gap:8px}.panel-head .text-link{font-size:10px}.storage-reminder{padding:13px}.storage-reminder a{display:none}.stat-heading>div{gap:4px;flex-direction:column}.stat-heading .refresh-button{font-size:10px}.stat{min-height:114px}.stat .number{font-size:26px}.priority-list{max-height:none}}
@media(max-width:390px){.top-sub{display:none}.staff-chip{display:none}.action-card{min-height:151px}.action-card p{padding-right:0}.hero-buttons .btn{padding:11px}.finder-filters{gap:1px}.finder-filters button{padding:7px 9px}}
@media print{body{background:white}.app,.mobile-bar{display:none!important}#printSheet{display:block!important;padding:12mm;color:#182b3b;font:12px/1.5 Arial,sans-serif}#printSheet h1{font-size:22px;margin:0 0 10px}#printSheet p{color:#6b7784}#printSheet table{width:100%;border-collapse:collapse;table-layout:fixed}#printSheet th,#printSheet td{border-bottom:1px solid #dce2e6;padding:8px;text-align:left;white-space:pre-line;overflow-wrap:anywhere}#printSheet th{background:#f4f7f8;font-size:10px;text-transform:uppercase}}

/* V4 — subtle source markers in the job finder */
.hub-job-type{display:inline-flex;width:max-content;font:800 9px/1.5 Arial,sans-serif;letter-spacing:.45px;border-radius:5px;padding:2px 5px;margin-bottom:4px}
.hub-job-booking{background:#fff4d8;color:#856524}
.hub-job-signed{background:#eaf5fa;color:#147b9f}
.job-row .pill.blue{background:#fff5db;color:#92692e}
.job-row .pill.muted{background:#f0f2f4;color:#768595}

.actions{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:370px){.actions{grid-template-columns:1fr}}
