:root{
  --bg:#0d0f11;--bg-soft:#111418;--panel:#15181c;--panel-2:#191d22;--panel-hover:#1d2228;
  --sidebar:#0a0c0e;--text:#f6f7f8;--muted:#8e959e;--muted-2:#626a74;--line:#252a31;--line-soft:#1d2228;
  --yellow:#f2c94c;--yellow-soft:#2b2615;--yellow-text:#f5d874;--danger:#e16d66;--danger-soft:#2d1b1b;
  --warning:#e0a953;--warning-soft:#2b2215;--success:#63b88c;--success-soft:#16251d;--info:#70a5da;--info-soft:#172331;
  --radius:10px;--radius-lg:14px;--sidebar-width:272px;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);font-size:14px;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr)}
a{color:inherit}.sidebar{background:var(--sidebar);border-right:1px solid #171a1e;color:#fff;padding:20px 16px 16px;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh;z-index:40}.brand-row{display:flex;align-items:center}.brand{display:flex;align-items:center;gap:12px;padding:2px 6px 24px;text-decoration:none;min-width:0}.brand-mark{width:40px;height:40px;border-radius:9px;background:#f4f5f6;color:#101214;display:grid;place-items:center;font-weight:900;letter-spacing:-1.2px;font-size:13px;flex:0 0 auto}.brand-mark.yellow{background:var(--yellow);color:#111}.brand-copy strong{display:block;font-size:13px;letter-spacing:-.01em}.brand-copy span{display:block;color:#6e7680;font-size:10px;margin-top:4px}.sidebar-close{display:none;background:none;border:0;color:#888;font-size:24px;margin-left:auto}.nav{overflow:auto;padding-right:2px;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav-section{margin:8px 0 22px}.nav-heading{font-size:9px;letter-spacing:.17em;color:#545b64;padding:0 10px 8px;font-weight:800}.nav-link{position:relative;color:#9ca3ab;text-decoration:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:8px;font-size:12px;font-weight:500;margin:1px 0;transition:background .14s ease,color .14s ease,transform .14s ease}.nav-link:hover{background:#12161a;color:#eef0f2}.nav-link.active{background:#171a1e;color:#fff}.nav-link.active:before{content:"";position:absolute;left:-16px;top:8px;bottom:8px;width:2px;background:var(--yellow);border-radius:2px}.nav-badge{font-size:9px;background:#1e2328;color:#9198a0;border-radius:20px;padding:3px 7px;font-weight:700}.nav-badge.warning{background:var(--warning-soft);color:#e5b862}.nav-badge.danger{background:var(--danger-soft);color:#ec8983}.sidebar-footer{margin-top:auto;border-top:1px solid #1a1e22;padding:14px 6px 0}.user-card{display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;border-radius:50%;background:#1d2227;border:1px solid #2a3036;display:grid;place-items:center;font-size:11px;font-weight:800;color:var(--yellow-text)}.user-copy{min-width:0}.user-copy span,.user-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-copy span{font-size:11px;font-weight:700;color:#e7e9eb}.user-copy small{color:#5f6770;margin-top:3px;font-size:9px}.logout-btn{border:0;background:none;color:#636b74;padding:10px 0 0 42px;cursor:pointer;font-size:10px}.logout-btn:hover{color:#b8bec5}.main{min-width:0;background:linear-gradient(180deg,#0f1114 0,#0d0f11 260px)}.topbar{height:70px;background:rgba(13,15,17,.88);border-bottom:1px solid var(--line-soft);display:flex;align-items:center;gap:16px;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:30;backdrop-filter:blur(16px)}.menu-btn{display:none}.global-search{height:38px;width:min(560px,55vw);border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:#707781;background:#121519;font-size:11px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.global-search:hover{border-color:#353b43;background:#15191d}.global-search kbd,.command-footer kbd{border:1px solid #30363d;border-bottom-color:#3b424a;border-radius:5px;padding:2px 6px;background:#181c20;color:#777f88;font-family:inherit;font-size:9px}.primary-btn{background:var(--yellow);color:#15130b;border:1px solid #f2c94c;border-radius:8px;padding:10px 14px;font-weight:800;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 0 0 0 rgba(242,201,76,0);transition:transform .14s ease,box-shadow .14s ease,filter .14s ease;text-decoration:none}.primary-btn:hover{transform:translateY(-1px);filter:brightness(1.035);box-shadow:0 7px 22px rgba(242,201,76,.09)}.primary-btn:active{transform:translateY(0)}.content{padding:34px 34px 60px;max-width:1560px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:26px}.page-heading h1{font-size:28px;line-height:1.15;letter-spacing:-.045em;margin:5px 0 8px;font-weight:730}.page-heading p{color:var(--muted);margin:0;font-size:12px}.eyebrow{font-size:9px!important;font-weight:800;letter-spacing:.17em;color:#626a73!important}.yellow-text{color:var(--yellow-text)!important}.date-chip{border:1px solid var(--line);background:#121519;border-radius:8px;padding:9px 11px;font-size:10px;color:#7b838c;white-space:nowrap}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px 18px 17px;text-decoration:none;transition:transform .15s ease,border-color .15s ease,background .15s ease}.stat-card:hover{transform:translateY(-2px);border-color:#363c43;background:var(--panel-hover)}.stat-top{display:flex;align-items:center;justify-content:space-between}.stat-card span{display:block;color:#8b929a;font-size:11px;font-weight:600}.stat-arrow{font-size:12px!important;color:#4f565f!important}.stat-card strong{display:block;font-size:30px;letter-spacing:-.05em;margin:12px 0 10px;color:#fff}.stat-card small{font-size:9px;color:#5f6770}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.72fr);gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:19px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}.panel-head h2{font-size:15px;letter-spacing:-.02em;margin:4px 0 0}.panel-head a{font-size:9px;color:#767e87;text-decoration:none;padding-top:5px}.panel-head a:hover{color:var(--yellow-text)}.action-row{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:12px;padding:15px 2px;border-bottom:1px solid var(--line-soft);text-decoration:none;transition:padding .14s ease}.action-row:hover{padding-left:6px}.action-row:last-child{border-bottom:0}.action-row strong,.action-row span{display:block}.action-row strong{font-size:11px;color:#e8eaec}.action-row span{font-size:9px;color:#6d747c;margin-top:4px}.row-arrow{color:#515861!important;margin:0!important;font-size:12px!important}.status-dot{width:7px;height:7px;border-radius:50%;background:#7f8790;box-shadow:0 0 0 3px rgba(127,135,144,.08)}.status-dot.danger{background:var(--danger);box-shadow:0 0 0 3px rgba(225,109,102,.08)}.status-dot.warning{background:var(--warning);box-shadow:0 0 0 3px rgba(224,169,83,.08)}.status-dot.info{background:var(--info);box-shadow:0 0 0 3px rgba(112,165,218,.08)}.success-state{display:flex;align-items:center;gap:12px;padding:26px 2px 13px}.success-mark{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--success-soft);color:var(--success);font-weight:800}.success-state strong,.success-state span{display:block}.success-state strong{font-size:11px}.success-state span{font-size:9px;color:#6a727a;margin-top:5px}.metric{display:flex;justify-content:space-between;align-items:center;padding:14px 2px;border-bottom:1px solid var(--line-soft)}.metric:last-child{border-bottom:0}.metric span{font-size:10px;color:#777f88}.metric strong{font-size:14px;letter-spacing:-.02em}.recent-panel{margin-top:16px;padding-bottom:10px}.recent-list{display:grid}.recent-job{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(130px,.8fr) 130px 90px;gap:18px;align-items:center;padding:13px 2px;border-bottom:1px solid var(--line-soft);text-decoration:none}.recent-job:last-child{border-bottom:0}.recent-job strong,.recent-job span{display:block}.recent-job strong{font-size:11px}.recent-job>div:first-child span{font-size:9px;color:#717881;margin-top:4px}.recent-client{font-size:10px;color:#a1a7ae}.recent-job small{font-size:9px;color:#5f6770;text-align:right}.empty-state{padding:42px 12px;text-align:center;color:#78808a;font-size:10px}.premium-empty{display:flex;flex-direction:column;align-items:center}.premium-empty .empty-symbol{width:42px;height:42px;border:1px solid #30353c;border-radius:10px;display:grid;place-items:center;color:#666e77;font-weight:900;font-size:10px;margin-bottom:13px;background:#121519}.premium-empty strong{color:#c6cbd0;font-size:11px}.premium-empty span{max-width:460px;margin-top:6px;color:#616972;font-size:9px;line-height:1.6}.module-placeholder{min-height:360px;display:grid;place-items:center}.table-panel{padding:0 18px 10px}.table-toolbar{display:flex;gap:9px;padding:16px 0}.filter-search{flex:1;position:relative}.filter-search>span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#606872}.table-toolbar input,.table-toolbar select{border:1px solid var(--line);border-radius:8px;background:#111419;color:#cfd3d7;padding:10px 11px;outline:none;font-size:10px}.table-toolbar input{width:100%;padding-left:32px}.table-toolbar input:focus,.table-toolbar select:focus{border-color:#454c55}.table-toolbar select{min-width:180px}.clear-filter{display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;padding:0 11px;text-decoration:none;font-size:9px;color:#868e97}.job-row{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(130px,1fr) minmax(120px,.8fr) minmax(100px,.7fr) minmax(110px,.7fr);gap:16px;align-items:center;padding:13px 8px;border-top:1px solid var(--line-soft);font-size:10px;text-decoration:none;color:#b7bdc3;transition:background .14s ease}.job-row:not(.head):hover{background:#171b20}.job-row.head{font-size:8px;color:#606871;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.job-row strong,.job-row small{display:block}.job-row strong{font-size:11px;color:#eceeef}.job-row small{color:#6d757e;margin-top:4px;font-size:9px}.job-row .row-arrow{float:right}.status-pill{display:inline-flex;align-items:center;border-radius:30px;background:#22272d;padding:5px 8px;font-size:8px!important;font-weight:700!important;color:#aeb4ba!important;white-space:nowrap}.status-pill:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:6px;opacity:.9}.status-booked{background:var(--info-soft);color:#8db9e4!important}.status-on_site{background:#221e31;color:#a995dc!important}.status-works_complete{background:#152825;color:#70c7b3!important}.status-awaiting_audit{background:var(--warning-soft);color:#e7b866!important}.status-revisit_required,.status-revisit_booked{background:var(--danger-soft);color:#eb8882!important}.status-completed{background:var(--success-soft);color:#77c79d!important}.status-new,.status-planning{background:#20242a;color:#9da4ac!important}.status-cancelled{background:#26282b;color:#777d84!important}.command-backdrop[hidden]{display:none!important}
.command-backdrop{position:fixed;inset:0;background:rgba(3,4,5,.68);backdrop-filter:blur(4px);z-index:100;display:grid;place-items:start center;padding-top:12vh;opacity:0;transition:opacity .12s ease}.command-backdrop.open{opacity:1}.command-panel{width:min(620px,calc(100vw - 32px));background:#14171b;border:1px solid #30363d;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.42);overflow:hidden;transform:translateY(-8px);transition:transform .12s ease}.command-backdrop.open .command-panel{transform:none}.command-input-wrap{height:58px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:0 17px}.command-input-wrap>span{color:#6e7680;font-size:20px}.command-input-wrap input{flex:1;background:transparent;border:0;outline:0;color:#fff;font-size:14px}.command-input-wrap input::placeholder{color:#5d646d}.command-empty{padding:35px 24px;display:flex;flex-direction:column;text-align:center}.command-empty strong{font-size:12px}.command-empty span{font-size:9px;color:#666e77;margin-top:8px}.command-footer{border-top:1px solid var(--line-soft);padding:9px 14px;display:flex;justify-content:space-between;color:#575f68;font-size:8px}.mobile-scrim{display:none}
/* Login */
.login-body{min-height:100vh;background:#090b0d}.login-grid{min-height:100vh;display:grid;grid-template-columns:minmax(420px,.9fr) minmax(500px,1.1fr)}.login-hero{position:relative;background:radial-gradient(circle at 18% 18%,rgba(242,201,76,.08),transparent 26%),linear-gradient(145deg,#0d1012,#090b0d);border-right:1px solid #181c20;padding:42px 48px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.login-hero:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(242,201,76,.08);border-radius:50%;right:-230px;bottom:-180px;box-shadow:0 0 0 70px rgba(242,201,76,.018),0 0 0 140px rgba(242,201,76,.01)}.login-hero-brand{display:flex;align-items:center;gap:12px;position:relative;z-index:1}.login-hero-brand strong,.login-hero-brand span{display:block}.login-hero-brand strong{font-size:12px}.login-hero-brand span{color:#626a73;font-size:9px;margin-top:3px}.login-hero-copy{position:relative;z-index:1;max-width:530px}.login-hero-copy h1{font-size:48px;line-height:1.04;letter-spacing:-.055em;margin:10px 0 18px;max-width:480px}.login-hero-copy>p:last-child{color:#7b838c;font-size:12px;line-height:1.75;max-width:450px}.login-hero-footer{display:flex;align-items:center;gap:12px;color:#4f565e;font-size:9px;position:relative;z-index:1}.hero-line{width:34px;height:1px;background:var(--yellow);opacity:.55}.login-panel{display:grid;place-items:center;background:#101316;padding:32px}.login-card{width:min(390px,100%)}.login-mobile-brand{display:none}.login-card h2{font-size:30px;letter-spacing:-.045em;margin:7px 0 8px}.login-intro{color:#727a83;font-size:11px;line-height:1.6;margin:0 0 26px}.login-form{display:grid;gap:16px}.login-form label{font-size:9px;font-weight:700;color:#9299a1;letter-spacing:.02em}.field-wrap{margin-top:7px}.login-form input{width:100%;display:block;border:1px solid #2a3036;border-radius:8px;background:#15191d;color:#f4f5f6;padding:11px 12px;outline:none;font-size:11px;transition:border-color .15s ease,box-shadow .15s ease}.login-form input:focus{border-color:#625a32;box-shadow:0 0 0 3px rgba(242,201,76,.05)}.login-submit{width:100%;margin-top:5px;padding:11px 13px;justify-content:space-between}.login-error{background:#231616;border:1px solid #3a2020;color:#df8a85;padding:11px 12px;border-radius:8px;font-size:9px;margin-bottom:17px;display:flex;flex-direction:column;gap:4px}.login-security{display:flex;align-items:center;justify-content:center;gap:7px;color:#4f565e;font-size:8px;margin-top:24px}.security-dot{width:5px;height:5px;border-radius:50%;background:var(--success)}
@media(max-width:1100px){:root{--sidebar-width:240px}.content{padding:28px 26px 50px}.topbar{padding:0 26px}.stats-grid{grid-template-columns:repeat(2,1fr)}.recent-job{grid-template-columns:1.5fr .8fr 120px}.recent-job small{display:none}.login-grid{grid-template-columns:.85fr 1.15fr}.login-hero{padding:36px}.login-hero-copy h1{font-size:42px}}
@media(max-width:820px){.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;width:min(300px,86vw);transform:translateX(-102%);transition:transform .18s ease;box-shadow:20px 0 50px rgba(0,0,0,.35)}body.sidebar-open .sidebar{transform:none}.sidebar-close{display:block}.mobile-scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:35;opacity:0;pointer-events:none;transition:opacity .18s ease}body.sidebar-open .mobile-scrim{opacity:1;pointer-events:auto}.menu-btn{display:inline-flex;border:1px solid var(--line);border-radius:8px;background:#13171b;color:#8c949c;padding:8px 10px;font-size:9px}.topbar{height:64px;padding:0 18px}.global-search{width:48vw}.search-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding:24px 18px 44px}.dashboard-grid{grid-template-columns:1fr}.login-grid{display:block}.login-hero{display:none}.login-panel{min-height:100vh}.login-mobile-brand{display:flex;align-items:center;gap:11px;margin-bottom:38px}.login-mobile-brand strong{font-size:12px}.job-row{grid-template-columns:1.4fr .8fr .8fr}.job-row>span:nth-child(2),.job-row>span:nth-child(4){display:none}.job-row.head>span:nth-child(2),.job-row.head>span:nth-child(4){display:none}.recent-job{grid-template-columns:1.5fr 120px}.recent-client{display:none}}
@media(max-width:560px){.topbar .primary-btn{padding:9px 10px}.topbar .primary-btn span{display:none}.global-search{flex:1;width:auto}.global-search kbd{display:none}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:15px}.stat-card strong{font-size:26px}.page-heading{margin-bottom:20px}.page-heading h1{font-size:24px}.date-chip{display:none}.table-toolbar{flex-wrap:wrap}.filter-search{flex-basis:100%}.table-toolbar select{flex:1;min-width:0}.job-row{grid-template-columns:1.3fr .9fr}.job-row>span:nth-child(5){display:none}.job-row.head>span:nth-child(5){display:none}.recent-job{grid-template-columns:1fr}.recent-job>.status-pill{justify-self:start}.content{padding-left:14px;padding-right:14px}.panel{padding:16px}.table-panel{padding:0 12px 8px}.login-panel{padding:26px 22px}.login-card h2{font-size:27px}}

/* =========================================================
   SJH HYBRID WORKSPACE THEME
   Dark navigation + light operational workspace
   ========================================================= */
:root{
  --workspace:#f4f5f7;
  --workspace-panel:#ffffff;
  --workspace-panel-hover:#fafbfc;
  --workspace-text:#171a1f;
  --workspace-muted:#6f7782;
  --workspace-muted-2:#9299a3;
  --workspace-line:#e2e5e9;
  --workspace-line-soft:#eceef1;
}

/* Keep the product chrome dark, turn the working canvas light. */
.main{background:var(--workspace);color:var(--workspace-text)}
.content{color:var(--workspace-text)}

/* Page headings */
.page-heading h1{color:#171a1f}
.page-heading p{color:var(--workspace-muted)}
.content .eyebrow{color:#858d98!important}
.date-chip{background:#fff;border-color:var(--workspace-line);color:#737b86;box-shadow:0 1px 2px rgba(16,24,40,.02)}

/* Dashboard cards */
.stat-card,
.panel{background:var(--workspace-panel);border-color:var(--workspace-line);box-shadow:0 1px 2px rgba(16,24,40,.025),0 5px 18px rgba(16,24,40,.018)}
.stat-card:hover{background:#fff;border-color:#d4d9df;box-shadow:0 6px 20px rgba(16,24,40,.05);transform:translateY(-2px)}
.stat-card span{color:#69727d}
.stat-card .stat-arrow{color:#a1a7af!important}
.stat-card strong{color:#171a1f}
.stat-card small{color:#9299a3}
.panel-head{border-color:var(--workspace-line-soft)}
.panel-head h2{color:#22262c}
.panel-head a{color:#7d858f}
.panel-head a:hover{color:#282d33}
.action-row{border-color:var(--workspace-line-soft)}
.action-row:hover{background:#fafbfc;margin-left:-8px;margin-right:-8px;padding-left:14px;padding-right:10px;border-radius:8px}
.action-row strong{color:#282d33}
.action-row span{color:#858d97}
.row-arrow{color:#a0a7af!important}
.success-state strong{color:#24292f}
.success-state span{color:#8a929c}
.success-mark{background:#ebf7f0;color:#3e956a}
.metric{border-color:var(--workspace-line-soft)}
.metric span{color:#7d858f}
.metric strong{color:#20242a}
.recent-job{border-color:var(--workspace-line-soft);color:#535b65}
.recent-job:hover{background:#fafbfc;margin-left:-8px;margin-right:-8px;padding-left:10px;padding-right:10px;border-radius:8px}
.recent-job strong{color:#23272d}
.recent-job>div:first-child span{color:#838b95}
.recent-client{color:#5f6771}
.recent-job small{color:#969da6}

/* Empty states */
.empty-state{color:#7f8791}
.premium-empty .empty-symbol{background:#f5f6f8;border-color:#e1e4e8;color:#757d87}
.premium-empty strong{color:#3b4148}
.premium-empty span{color:#858d97}

/* Job register + forms */
.table-panel{background:#fff}
.table-toolbar input,
.table-toolbar select{background:#fff;border-color:#dfe3e7;color:#282d33}
.table-toolbar input::placeholder{color:#a0a7af}
.table-toolbar input:focus,
.table-toolbar select:focus{border-color:#b9bec5;box-shadow:0 0 0 3px rgba(23,26,31,.035)}
.filter-search>span{color:#979ea7}
.clear-filter{border-color:#dfe3e7;color:#747c86;background:#fff}
.clear-filter:hover{background:#f7f8f9;color:#2d3238}
.job-row{border-color:var(--workspace-line-soft);color:#525a64}
.job-row:not(.head):hover{background:#fafbfc}
.job-row.head{color:#9299a3}
.job-row strong{color:#252a30}
.job-row small{color:#858d97}

/* Status pills tuned for light surfaces */
.status-pill{background:#f0f2f4;color:#737b85!important}
.status-booked{background:#edf5fc;color:#4f82af!important}
.status-on_site{background:#f1eef9;color:#765fae!important}
.status-works_complete{background:#eaf7f4;color:#3e8e7e!important}
.status-awaiting_audit{background:#fff5df;color:#a87016!important}
.status-revisit_required,.status-revisit_booked{background:#fff0ee;color:#b6514b!important}
.status-completed{background:#eaf7ef;color:#448a63!important}
.status-new,.status-planning{background:#f0f2f4;color:#747c85!important}
.status-cancelled{background:#f2f2f3;color:#878d94!important}

/* The dark chrome remains deliberately separate from the workspace. */
.topbar{box-shadow:0 1px 0 rgba(255,255,255,.015)}
.topbar + .content{min-height:calc(100vh - 70px)}

/* Very subtle SJH signature on primary content actions */
.content .primary-btn{box-shadow:0 2px 7px rgba(177,136,12,.10)}

@media(max-width:820px){
  .topbar + .content{min-height:calc(100vh - 64px)}
}

/* =========================================================
   RELEASE 0.2 — CORE JOBS
   Functional job register + Job Workspace
   ========================================================= */
.secondary-btn{background:#fff;color:#3d444c;border:1px solid #dfe3e7;border-radius:8px;padding:10px 14px;font-weight:700;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;transition:background .14s ease,border-color .14s ease,transform .14s ease}.secondary-btn:hover{background:#f7f8f9;border-color:#cfd4da;transform:translateY(-1px)}.compact{padding:9px 12px!important}.table-main{font-size:11px!important}.toast-stack{display:grid;gap:8px;margin:0 0 18px}.toast{background:#fff;border:1px solid #dfe3e7;border-left:3px solid #7f8791;border-radius:8px;padding:11px 13px;color:#4d555f;font-size:10px;box-shadow:0 3px 14px rgba(16,24,40,.04)}.toast.success{border-left-color:#55a978}.toast.error{border-left-color:#d4615a}

/* Create job */
.create-layout{display:grid;gap:14px;max-width:1120px}.form-panel{padding:22px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.section-heading h2{font-size:15px;letter-spacing:-.025em;margin:0 0 5px;color:#24282e}.section-heading p{font-size:10px;line-height:1.6;color:#8a929c;margin:0}.form-grid{display:grid;gap:15px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field.wide{grid-column:1/-1}.field label{display:block;color:#555e68;font-size:10px;font-weight:700;margin-bottom:7px}.field label span{font-weight:500;color:#a0a7af}.field input,.field textarea,.field select,.note-composer textarea,.note-controls select,.status-control select{display:block;width:100%;background:#fff;color:#252a30;border:1px solid #dce0e5;border-radius:8px;padding:10px 11px;outline:none;font-size:11px;transition:border-color .14s ease,box-shadow .14s ease}.field textarea,.note-composer textarea{resize:vertical;line-height:1.6}.field input:focus,.field textarea:focus,.field select:focus,.note-composer textarea:focus,.note-controls select:focus,.status-control select:focus{border-color:#b8bec5;box-shadow:0 0 0 3px rgba(22,27,32,.035)}.field .errorlist,.form-errors .errorlist{list-style:none;padding:0;margin:6px 0 0;color:#b8514c;font-size:9px}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:8px 0 24px}

/* Job Workspace */
.workspace-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:20px}.back-link{display:inline-block;color:#8a929b;text-decoration:none;font-size:10px;margin-bottom:13px}.back-link:hover{color:#33383f}.workspace-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.workspace-title-row h1{font-size:28px;letter-spacing:-.045em;margin:0;color:#171a1f}.workspace-head h2{font-size:17px;letter-spacing:-.025em;color:#353a41;margin:10px 0 5px}.workspace-head p{font-size:10px;color:#838b95;margin:0}.status-control{min-width:190px}.status-control label{display:block;font-size:9px;font-weight:700;color:#8a929b;margin-bottom:6px}.priority-pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:700}.priority-high{background:#fff6df;color:#9c701f}.priority-urgent{background:#fff0ee;color:#b6514b}.workspace-tabs{display:flex;align-items:center;gap:3px;border-bottom:1px solid #dde1e6;margin-bottom:17px;overflow:auto;scrollbar-width:none}.workspace-tabs::-webkit-scrollbar{display:none}.workspace-tabs a{position:relative;text-decoration:none;color:#777f89;font-size:10px;font-weight:650;padding:11px 13px;white-space:nowrap}.workspace-tabs a:hover{color:#2f343a}.workspace-tabs a.active{color:#1f242a}.workspace-tabs a.active:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:var(--yellow);border-radius:3px}.workspace-tabs a span{background:#eceff2;color:#737b85;border-radius:999px;padding:2px 6px;margin-left:4px;font-size:8px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,340px);gap:15px;align-items:start}.workspace-main{display:grid;gap:15px}.workspace-side{display:grid;gap:15px;position:sticky;top:87px}.next-action-card{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:3px solid var(--yellow)}.next-action-card h2{font-size:19px;margin:4px 0 6px;color:#20242a;letter-spacing:-.03em}.next-action-card>div>p:last-child{font-size:10px;color:#858d97;margin:0;line-height:1.6}.next-action-marker{width:34px;height:34px;border-radius:50%;background:#f8f2d8;display:grid;place-items:center;color:#8c6d14;font-weight:800;flex:0 0 auto}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #eceef1;border-radius:9px;overflow:hidden}.detail-grid>div{padding:14px;border-right:1px solid #eceef1;border-bottom:1px solid #eceef1}.detail-grid>div:nth-child(3n){border-right:0}.detail-grid>div:nth-last-child(-n+3){border-bottom:0}.detail-grid span,.description-block>span{display:block;color:#9098a2;font-size:9px;font-weight:650;margin-bottom:5px}.detail-grid strong{font-size:10px;color:#333941}.description-block{border-top:1px solid #eceef1;margin-top:16px;padding-top:15px}.description-block p{font-size:11px;color:#555e68;line-height:1.7;margin:0}.side-summary h3{font-size:17px;letter-spacing:-.03em;margin:5px 0 15px;color:#252a30}.health-line{border-top:1px solid #eceef1;padding:11px 0}.health-line:last-child{padding-bottom:0}.health-line span,.health-line strong{display:block}.health-line span{font-size:9px;color:#949ba4}.health-line strong{font-size:10px;color:#454c55;margin-top:4px;line-height:1.45}

/* Notes */
.note-composer{border:1px solid #e3e6ea;border-radius:10px;padding:11px;background:#fafbfc}.note-composer textarea{border:0;background:transparent;padding:5px;box-shadow:none!important;min-height:84px}.note-controls{display:flex;align-items:center;gap:9px;border-top:1px solid #eceef1;padding-top:10px;margin-top:7px}.note-controls select{width:auto;min-width:120px;background:#fff;padding:8px 10px}.check-label{display:flex;align-items:center;gap:6px;color:#68717b;font-size:9px;margin-right:auto}.check-label input{accent-color:#d0a718}.notes-list{display:grid;gap:9px;margin-top:13px}.note-item{border:1px solid #e7e9ec;border-radius:9px;padding:13px;background:#fff}.note-item.pinned{border-left:3px solid var(--yellow);background:#fffdfa}.note-meta{display:flex;justify-content:space-between;gap:10px;align-items:center}.note-meta>span:last-child{font-size:8px;color:#a0a7af}.note-category{display:inline-flex;border-radius:999px;padding:4px 7px;background:#f0f2f4;color:#6c747e;font-size:8px;font-weight:700}.category-important{background:#fff5df;color:#9c701f}.category-site{background:#edf7f2;color:#4b8d68}.category-client{background:#edf5fc;color:#4f82af}.note-item p{font-size:11px;color:#4a525b;line-height:1.65;margin:10px 0 8px}.note-item small{font-size:8px;color:#979ea7}.inline-empty{padding:20px 4px;color:#9aa1a9;font-size:9px;text-align:center}.placeholder-workspace{display:flex;justify-content:space-between;align-items:center;gap:30px;scroll-margin-top:90px}.placeholder-workspace h2{font-size:15px;color:#30353c;margin:4px 0 5px}.placeholder-workspace p:last-child{font-size:10px;color:#8a929c;line-height:1.6;margin:0}.placeholder-workspace>span{font-size:8px;font-weight:700;color:#8d761f;background:#fff7d9;border-radius:999px;padding:6px 9px;white-space:nowrap}

/* Activity timeline */
.timeline{display:grid}.timeline-item{position:relative;display:grid;grid-template-columns:13px 1fr;gap:9px;padding:0 0 16px}.timeline-item:not(:last-child):before{content:"";position:absolute;left:4px;top:10px;bottom:0;width:1px;background:#e4e7eb}.timeline-dot{width:9px;height:9px;border:2px solid #fff;background:#c5a437;border-radius:50%;box-shadow:0 0 0 1px #d9dde1;margin-top:3px;z-index:1}.timeline-item strong{font-size:9px;color:#454c55;line-height:1.4}.timeline-item p{font-size:8px;color:#858d97;line-height:1.45;margin:3px 0}.timeline-item small{display:block;color:#a0a7af;font-size:7px;margin-top:4px}

/* Command palette live results */
.command-results{display:grid;max-height:370px;overflow:auto;padding:7px}.command-result{display:grid;grid-template-columns:85px 1fr auto;gap:12px;align-items:center;padding:10px;border-radius:8px;text-decoration:none;color:#dfe3e7}.command-result:hover,.command-result.active{background:#1a1e23}.command-result-label{font-size:9px;font-weight:800;color:var(--yellow-text)}.command-result-title{display:block;font-size:11px;font-weight:650}.command-result-meta{display:block;font-size:8px;color:#6f7781;margin-top:3px}.command-result-arrow{color:#555d66}.command-empty.search-hidden{display:none}

@media(max-width:1050px){.workspace-grid{grid-template-columns:1fr}.workspace-side{position:static;grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:repeat(2,1fr)}.detail-grid>div{border-right:1px solid #eceef1!important;border-bottom:1px solid #eceef1!important}.detail-grid>div:nth-child(2n){border-right:0!important}.detail-grid>div:nth-last-child(-n+2){border-bottom:0!important}.form-grid.three{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.workspace-head{align-items:flex-start;flex-direction:column}.status-control{width:100%}.workspace-side{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.detail-grid>div{border-right:0!important;border-bottom:1px solid #eceef1!important}.detail-grid>div:last-child{border-bottom:0!important}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.field.wide{grid-column:auto}.note-controls{flex-wrap:wrap}.check-label{margin-right:0}.note-controls .primary-btn{margin-left:auto}.placeholder-workspace{align-items:flex-start;flex-direction:column;gap:12px}.command-result{grid-template-columns:72px 1fr}.command-result-arrow{display:none}}

/* 0.2.2 click-safety */
.sidebar-version{font-size:8px;color:#444b53;padding:0 10px 8px;letter-spacing:.08em}
.global-search{text-decoration:none}
a,button,input,select,textarea{pointer-events:auto}
.content,.topbar,.sidebar{pointer-events:auto}

/* 0.3.0 Job Templates */
.template-picker{margin-bottom:14px;padding:22px}.text-link{font-size:10px;color:#69717b;text-decoration:none;font-weight:700}.text-link:hover{color:#252a30}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.template-card{display:block;text-decoration:none;background:#fff;border:1px solid #e1e5e9;border-radius:10px;padding:15px;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.template-card:hover{border-color:#cfd4da;box-shadow:0 5px 18px rgba(20,28,38,.055);transform:translateY(-1px)}.template-card.selected{border-color:#d5b343;box-shadow:0 0 0 2px rgba(242,201,76,.13)}.template-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.template-card-head strong{font-size:12px;color:#23282e}.template-card-head span{font-size:8px;font-weight:750;color:#876d17;background:#fff6d8;border-radius:999px;padding:4px 7px}.template-card p{font-size:9px;line-height:1.55;color:#858d97;margin:0}.template-flags{display:flex;gap:5px;flex-wrap:wrap;margin-top:11px}.template-flags span{font-size:7px;font-weight:700;color:#68717b;background:#f2f4f6;border-radius:999px;padding:4px 6px}.template-empty{grid-column:1/-1;padding:18px;border:1px dashed #dce1e6;border-radius:10px;color:#8a929b;font-size:9px}.template-summary{padding:22px;display:grid;grid-template-columns:minmax(220px,.7fr) 1.5fr;gap:28px}.template-summary h2{font-size:15px;color:#282d33;margin:5px 0}.template-summary>div>p:last-child{font-size:9px;color:#89919a;line-height:1.6}.template-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #e8ebee;border-radius:9px;overflow:hidden}.template-summary-grid div{padding:12px;border-right:1px solid #e8ebee;border-bottom:1px solid #e8ebee}.template-summary-grid div:nth-child(3n){border-right:0}.template-summary-grid div:nth-last-child(-n+3){border-bottom:0}.template-summary-grid span,.template-summary-grid strong{display:block}.template-summary-grid span{font-size:8px;color:#989fa7;margin-bottom:4px}.template-summary-grid strong{font-size:9px;color:#424951}.template-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.admin-template-card{text-decoration:none;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.admin-template-card:hover{transform:translateY(-1px);border-color:#d7dce1;box-shadow:0 6px 22px rgba(20,28,38,.055)}.admin-template-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.admin-template-card h2{font-size:16px;color:#282d33;margin:5px 0 0}.admin-template-card>p{font-size:9px;color:#868e98;line-height:1.6;margin:12px 0 16px}.template-state{font-size:8px;font-weight:750;padding:5px 8px;border-radius:999px;background:#f1f2f4;color:#7f8790}.template-state.active{background:#edf7f2;color:#4f8d69}.template-requirements{display:flex;gap:7px;flex-wrap:wrap}.template-requirements span{font-size:8px;color:#626b75;background:#f7f8f9;border:1px solid #e9ecef;border-radius:7px;padding:6px 8px}.admin-template-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eceef1;margin-top:16px;padding-top:12px}.admin-template-footer span{font-size:8px;color:#9299a2}.admin-template-footer strong{font-size:9px;color:#5e6670}.check-field{display:flex;align-items:end;padding-bottom:9px}.check-field label{display:flex!important;align-items:center;gap:8px;margin:0!important}.check-field input{width:auto!important;accent-color:#c9a72f}.requirement-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.requirement-checks label{display:flex;align-items:flex-start;gap:9px;border:1px solid #e4e7eb;border-radius:9px;padding:13px;background:#fbfcfc;cursor:pointer}.requirement-checks input{margin-top:2px;accent-color:#c9a72f}.requirement-checks span{display:block}.requirement-checks strong,.requirement-checks small{display:block}.requirement-checks strong{font-size:10px;color:#454c55}.requirement-checks small{font-size:8px;color:#9299a2;line-height:1.5;margin-top:3px}
@media(max-width:900px){.template-grid{grid-template-columns:1fr 1fr}.template-summary{grid-template-columns:1fr}.template-admin-grid{grid-template-columns:1fr}.requirement-checks{grid-template-columns:1fr}.template-summary-grid{grid-template-columns:1fr 1fr}.template-summary-grid div{border-right:1px solid #e8ebee!important;border-bottom:1px solid #e8ebee!important}.template-summary-grid div:nth-child(2n){border-right:0!important}.template-summary-grid div:nth-last-child(-n+2){border-bottom:0!important}}
@media(max-width:620px){.template-grid{grid-template-columns:1fr}.template-summary-grid{grid-template-columns:1fr}.template-summary-grid div{border-right:0!important;border-bottom:1px solid #e8ebee!important}.template-summary-grid div:last-child{border-bottom:0!important}}

/* 0.4.0 Documentation Engine */
.document-page-head{align-items:flex-end}.document-slot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:14px}.document-slot{padding:20px;min-height:210px;display:flex;flex-direction:column}.document-slot-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.document-slot h2{font-size:17px;color:#292e34;margin:4px 0 0}.document-state{font-size:8px;font-weight:750;color:#777f88;background:#f2f4f6;border-radius:999px;padding:5px 8px;white-space:nowrap}.document-state.current{background:#edf7f2;color:#4f8d69}.document-state.redesign{background:#fff4dc;color:#956b18}.document-profile{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eef0f2;border-bottom:1px solid #eef0f2;padding:10px 0;margin:15px 0 13px}.document-profile span{font-size:8px;color:#959ca5}.document-profile strong{font-size:8px;color:#505862;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.document-current{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:auto}.document-current>div{min-width:0}.document-current strong,.document-current span{display:block}.document-current strong{font-size:9px;color:#3f464f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-current span{font-size:8px;color:#939aa3;margin-top:4px}.document-empty-copy{font-size:9px;line-height:1.6;color:#8b939d;margin:auto 0 0}.document-slot-redesign{background:#fffdf8}.version-history{border-top:1px solid #eef0f2;margin-top:13px;padding-top:10px}.version-history summary{cursor:pointer;font-size:8px;font-weight:700;color:#6e7680}.version-list{display:grid;margin-top:8px}.version-list a,.file-list a{display:flex;justify-content:space-between;gap:14px;text-decoration:none;border-top:1px solid #eef0f2;padding:10px 0}.version-list a:first-child,.file-list a:first-child{border-top:0}.version-list span,.file-list span{font-size:8px;color:#9299a2}.version-list strong,.file-list strong{font-size:9px;color:#4a525b}.upload-document-panel,.other-documents{margin-top:14px;padding:22px}.document-upload-form{display:grid;grid-template-columns:220px 1fr;gap:13px}.document-upload-form .wide{grid-column:1/-1}.document-upload-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.documentation-preview{display:flex;justify-content:space-between;align-items:center;gap:30px}.documentation-preview h2{font-size:15px;color:#30353c;margin:4px 0 5px}.documentation-preview p:last-child{font-size:10px;color:#8a929c;line-height:1.6;margin:0}.file-list{display:grid}
@media(max-width:850px){.document-slot-grid{grid-template-columns:1fr}.document-upload-form{grid-template-columns:1fr}.document-upload-form .wide,.document-upload-actions{grid-column:auto}.documentation-preview{align-items:flex-start;flex-direction:column}}

/* Sprint 1 · Core Workspace */
.workspace-actions{display:flex;align-items:flex-end;gap:10px}.workspace-actions .status-control{min-width:180px}
.readiness-panel{padding:22px}.readiness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.readiness-card{position:relative;border:1px solid #e3e6ea;background:#fafbfc;border-radius:10px;padding:14px;min-height:100px}.readiness-card>div:first-child strong,.readiness-card>div:first-child span{display:block}.readiness-card strong{font-size:11px;color:#30363d}.readiness-card span{font-size:8px;color:#8d959e;margin-top:4px}.readiness-card small{display:block;font-size:7px;line-height:1.45;color:#9a7d24;margin-top:12px;padding-right:24px}.readiness-state{position:absolute;right:13px;top:13px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#fff4dc;color:#9b711d;font-weight:800;font-size:10px}.readiness-card.ready{background:#f8fcfa;border-color:#dfece4}.readiness-card.ready .readiness-state{background:#e9f6ef;color:#43855e}.readiness-card.ready span{color:#5e9271}
.people-on-site-panel{padding:22px}.person-add-form{display:flex;gap:9px;margin:13px 0}.person-add-form select{flex:1}.job-people-list{border:1px solid #e8ebee;border-radius:9px;overflow:hidden}.job-person-row{display:grid;grid-template-columns:minmax(190px,1.3fr) 1fr 1fr auto;align-items:center;gap:12px;padding:12px;border-top:1px solid #eef0f2}.job-person-row:first-child{border-top:0}.job-person-row strong,.job-person-row small{display:block}.job-person-row strong{font-size:10px;color:#3f464e}.job-person-row small,.job-person-row>span{font-size:8px;color:#89919a}.row-remove{border:0;background:transparent;color:#a35d5d;font-size:8px;font-weight:700;cursor:pointer}.row-remove:hover{text-decoration:underline}
.form-section{margin-bottom:16px}.form-section h2{font-size:15px;margin:4px 0 5px;color:#2d3339}.form-section>p:last-child{font-size:9px;color:#8b939c;margin:0}.form-section.separated{border-top:1px solid #eceef1;padding-top:22px;margin-top:24px}.scope-field textarea{min-height:190px}.scope-field small{display:block;font-size:8px;color:#9299a2;margin-top:6px}.form-error-box{margin-top:14px;border:1px solid #f0d7d7;background:#fff8f8;color:#9c5a5a;padding:10px 12px;border-radius:8px;font-size:9px}
.people-toolbar{padding:14px 18px;margin-bottom:12px}.list-search{display:flex;gap:9px}.list-search input{flex:1}.people-list-panel{padding:0;overflow:hidden}.people-table{display:grid}.people-row{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1fr 50px;gap:14px;align-items:center;padding:13px 17px;border-top:1px solid #edf0f2}.people-row:first-child{border-top:0}.people-row>div strong,.people-row>div small{display:block}.people-row strong{font-size:9px;color:#3d444c}.people-row small,.people-row>span{font-size:8px;color:#818a94}.people-head{background:#fafbfc}.people-head span{font-size:7px;font-weight:800;letter-spacing:.06em;color:#9aa1a9;text-transform:uppercase}.inactive-row{opacity:.55}
@media(max-width:900px){.readiness-grid{grid-template-columns:1fr}.workspace-actions{width:100%;flex-wrap:wrap}.workspace-actions .status-control{flex:1}.people-row{grid-template-columns:1fr 1fr}.people-head{display:none}.job-person-row{grid-template-columns:1fr 1fr}.job-person-row form{justify-self:end}}
@media(max-width:620px){.person-add-form{flex-direction:column}.job-person-row,.people-row{grid-template-columns:1fr}.job-person-row form{justify-self:start}.workspace-actions{align-items:stretch;flex-direction:column}.workspace-actions .secondary-btn{text-align:center}}
.document-readiness{margin:-5px 0 13px;border-radius:8px;background:#fff7e8;border:1px solid #f0dfba;padding:9px 10px}.document-readiness strong,.document-readiness span{display:block}.document-readiness strong{font-size:8px;color:#8d6b26}.document-readiness span{font-size:7px;color:#9a865e;margin-top:3px;line-height:1.45}.document-readiness.ready{background:#f2faf5;border-color:#dcebe2}.document-readiness.ready strong{color:#508867}

/* Sprint 3.1 — live document engine */
.document-current-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.generate-document-form{border-top:1px solid #eef0f2;margin-top:13px;padding-top:12px;display:grid;gap:8px}.generate-document-form input{width:100%;border:1px solid #dfe3e7;border-radius:7px;padding:9px 10px;font:inherit;font-size:9px;background:#fff}.document-generate-btn{width:100%;justify-content:center}.document-generate-btn:disabled{opacity:.42;cursor:not-allowed}.version-row{display:grid;grid-template-columns:1fr 30px;align-items:center;border-top:1px solid #eef0f2}.version-row:first-child{border-top:0}.version-row>a:first-child{border:0!important;padding-right:8px}.version-row small{display:block;font-size:7px;color:#9a8b67;margin-top:3px}.mini-download{display:grid;place-items:center;width:26px;height:26px;border:1px solid #e5e8eb;border-radius:6px;text-decoration:none;color:#626a73;background:#fff}.pdf-preview-panel{margin-top:14px;padding:20px;scroll-margin-top:90px}.preview-actions{display:flex;gap:8px}.pdf-frame{width:100%;height:760px;border:1px solid #dfe3e7;border-radius:9px;background:#f2f3f4;margin-top:12px}.document-slot .primary-btn{font-size:9px}.document-current{align-items:flex-end}
@media(max-width:700px){.document-current{align-items:flex-start;flex-direction:column}.document-current-actions,.preview-actions{width:100%}.document-current-actions a,.preview-actions a{flex:1;text-align:center}.pdf-frame{height:580px}}


/* Sprint 3.2 — streamlined Job Workspace */
.editable-overview-panel{padding:26px}.workspace-edit-form{display:grid;gap:24px}.workspace-form-section{display:grid;gap:14px}.workspace-form-section h3{margin:0;font-size:15px}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-save-row{display:flex;align-items:center;gap:16px;padding-top:4px;border-top:1px solid var(--line,#e6e6e6)}.workspace-save-row span,.bulk-generate-form span{font-size:12px;color:var(--muted,#737373)}.quick-documents-panel{scroll-margin-top:24px}.quick-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quick-document-card{position:relative;border:1px solid var(--line,#e4e4e4);border-radius:14px;padding:16px;background:#fafafa;min-height:110px}.quick-document-card>div:first-child{display:grid;gap:4px;padding-right:34px}.quick-document-card strong{font-size:15px}.quick-document-card span,.quick-document-card small{font-size:12px;color:var(--muted,#6d6d6d)}.quick-document-card small{display:block;margin-top:12px;line-height:1.4}.quick-document-card.ready{border-color:#d7bf68;background:#fffdf4}.quick-document-card.generated{border-color:#bfd8c3;background:#f7fbf7}.quick-document-state{position:absolute;right:14px;top:14px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#ececec;font-weight:800}.quick-document-card.ready .quick-document-state{background:#f5b400;color:#171717}.quick-document-card.generated .quick-document-state{background:#dcecdf;color:#24592d}.bulk-generate-form{display:flex;align-items:center;gap:16px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line,#e6e6e6)}.bulk-generate-btn{min-width:190px}.next-action-side h3{margin:5px 0 8px}.inline-form-errors{background:#fff1f1;border:1px solid #e7bcbc;border-radius:10px;padding:10px 12px;color:#8a2929;font-size:13px}
@media(max-width:1100px){.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-document-grid{grid-template-columns:1fr}.bulk-generate-form{align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.editable-overview-panel{padding:18px}.form-grid.three,.form-grid.four{grid-template-columns:1fr}.workspace-save-row{align-items:flex-start;flex-direction:column}.bulk-generate-btn{width:100%}}

/* Sprint 3.3 — workflow polish */
.global-search{display:flex;align-items:center;gap:8px;flex:1;max-width:560px;padding:0!important;background:transparent!important;border:0!important}.global-search input{flex:1;height:38px;border:1px solid #dfe3e7;border-radius:9px;padding:0 12px;font:inherit;font-size:12px;background:#fff;color:#30353c}.global-search button{height:38px;border:0;border-radius:8px;padding:0 13px;background:#f2c94c;color:#181818;font-weight:800;font-size:10px;cursor:pointer}.global-search-page{padding:16px;display:flex;gap:10px;margin-bottom:14px}.global-search-page input{flex:1;border:1px solid #dfe3e7;border-radius:9px;padding:11px 12px;font:inherit}.search-results-panel{padding:0;overflow:hidden}.search-result-list>a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border-top:1px solid #edf0f2;text-decoration:none}.search-result-list>a:first-child{border-top:0}.search-result-list>a>div{display:flex;gap:12px;align-items:center}.search-result-list>a>div:first-child{display:grid;gap:4px}.search-result-list strong{font-size:11px;color:#343a41}.search-result-list span{font-size:9px;color:#828b95}
.new-job-complete-form{margin-top:14px}.vat-toggle{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid #e2e5e8;background:#fafbfc;border-radius:9px;margin-top:12px}.vat-toggle input{margin-top:3px}.vat-toggle span{display:grid;gap:3px}.vat-toggle strong{font-size:10px;color:#343a41}.vat-toggle small,.vat-inline-toggle small{font-size:8px;color:#8a929c}.vat-inline-toggle{display:flex!important;align-items:flex-start;justify-content:center;gap:5px}.vat-inline-toggle label{display:flex!important;gap:6px;align-items:center}
.job-summary-panel{padding:24px}.job-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.job-summary-grid>div,.job-commercial-grid>div{border:1px solid #e8ebee;background:#fafbfc;border-radius:9px;padding:12px}.job-summary-grid span,.job-commercial-grid span{display:block;font-size:7px;color:#959da6;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.job-summary-grid strong,.job-commercial-grid strong{display:block;margin-top:5px;font-size:10px;color:#343a41;line-height:1.4}.job-summary-section{border-top:1px solid #edf0f2;margin-top:18px;padding-top:17px}.summary-section-head h3{margin:0 0 10px;font-size:13px}.job-commercial-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.scope-summary{font-size:10px;line-height:1.7;color:#4e5660;background:#fafbfc;border:1px solid #e8ebee;border-radius:9px;padding:14px}
.planner-heading{align-items:center}.planner-nav{display:flex;align-items:center;gap:8px}.planner-panel{padding:0;overflow:auto}.planner-grid{display:grid;grid-template-columns:180px repeat(5,minmax(155px,1fr));min-width:955px}.planner-head-row{background:#fafbfc;border-bottom:1px solid #e7eaed}.planner-person-head,.planner-day-head{padding:12px 13px;border-left:1px solid #eef0f2}.planner-person-head{border-left:0;font-size:8px;font-weight:800;color:#8f98a2}.planner-day-head strong,.planner-day-head span{display:block}.planner-day-head strong{font-size:10px;color:#3a4149}.planner-day-head span{font-size:8px;color:#929aa3;margin-top:3px}.planner-person-row{border-top:1px solid #eef0f2}.planner-person-row:first-of-type{border-top:0}.planner-person{padding:12px 13px;background:#fff}.planner-person strong,.planner-person span{display:block}.planner-person strong{font-size:10px;color:#333a41}.planner-person span{font-size:8px;color:#9098a1;margin-top:3px}.planner-cell{min-height:74px;padding:7px;border-left:1px solid #eef0f2;background:#fff}.planner-job{display:grid;gap:3px;padding:8px;border-radius:8px;text-decoration:none;background:#fff8df;border:1px solid #ead991;margin-bottom:5px}.planner-job strong{font-size:8px;color:#3c4148}.planner-job span{font-size:7px;color:#747c85;line-height:1.35}.planner-empty{display:block;text-align:center;color:#c4c8cc;padding-top:18px}.planner-unassigned{margin-top:14px;padding:20px}.planning-action-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.planning-action-panel{padding:20px}.planning-action-panel h2{font-size:14px;margin:4px 0 12px}.planning-action-list{display:grid}.planning-action-list>a{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #edf0f2;text-decoration:none}.planning-action-list>a:first-child{border-top:0}.planning-action-list strong,.planning-action-list span{display:block}.planning-action-list strong{font-size:9px;color:#3c434b}.planning-action-list span,.planning-action-list small{font-size:8px;color:#8a929c;margin-top:3px}.dashboard-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media(max-width:1000px){.job-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.job-commercial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-action-columns{grid-template-columns:1fr}.planner-nav{width:100%;flex-wrap:wrap}.global-search{max-width:none}}
@media(max-width:700px){.job-summary-grid,.job-commercial-grid{grid-template-columns:1fr}.global-search-page{flex-direction:column}.global-search{display:none}}


/* Sprint 3.4 — planner clarity + document actions */
.planner-team-panel{padding:0;margin-bottom:12px;overflow:hidden}.planner-team-panel>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px}.planner-team-panel>summary::-webkit-details-marker{display:none}.planner-team-panel>summary>div{display:grid;gap:3px}.planner-team-panel>summary strong{font-size:14px;color:#30363d}.planner-team-panel>summary span:not(.secondary-btn){font-size:11px;color:#87909a}.planner-team-form{border-top:1px solid #e8ebee;padding:16px 18px}.planner-person-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.planner-person-option{display:flex;gap:9px;align-items:flex-start;border:1px solid #e5e8eb;border-radius:10px;padding:10px;background:#fbfbfc;cursor:pointer}.planner-person-option input{margin-top:3px}.planner-person-option span,.planner-person-option strong,.planner-person-option small{display:block}.planner-person-option strong{font-size:10px;color:#333a41}.planner-person-option small{font-size:8px;color:#8c949c;margin-top:3px;line-height:1.35}.planner-team-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:14px}.planner-team-actions>span,.planner-team-readonly{font-size:10px;color:#838b94}.planner-legend{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0 0 10px;padding:0 2px}.planner-legend span{display:flex;align-items:center;gap:6px;font-size:9px;color:#707983;font-weight:600}.planner-legend i{width:11px;height:11px;border-radius:3px;display:block}.legend-planned{background:#f5c84b}.legend-confirmed{background:#72c68b}.legend-live{background:#6fa8dc}.legend-audit{background:#a88ad6}.legend-revisit{background:#e67d7d}
.planner-board{overflow:auto}.planner-board .planner-grid{grid-template-columns:190px repeat(5,minmax(185px,1fr));min-width:1115px}.planner-bar-row{position:relative;grid-template-rows:repeat(var(--planner-lanes),minmax(82px,auto));border-top:1px solid #e6eaed}.planner-day-background{border-left:1px solid #e8ecef;background:#fff;min-height:82px}.planner-person{z-index:2;border-right:1px solid #e5e9ec;display:flex;flex-direction:column;justify-content:center;min-height:82px}.planner-job-bar{z-index:4;align-self:stretch;margin:9px 8px;padding:11px 13px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;border:0;box-shadow:0 1px 2px rgba(0,0,0,.08),inset 0 0 0 1px rgba(0,0,0,.10);transition:transform .12s ease,box-shadow .12s ease}.planner-job-bar:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.13),inset 0 0 0 1px rgba(0,0,0,.12)}.planner-job-main{min-width:0}.planner-job-main strong,.planner-job-main span{display:block}.planner-job-main strong{font-size:12px;line-height:1.2;color:#1f252b}.planner-job-main span{font-size:10px;line-height:1.35;color:#30373f;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-job-meta{margin-left:auto;text-align:right;flex:0 0 auto}.planner-job-meta span,.planner-job-meta b{display:block}.planner-job-meta span{font-size:8px;color:#4d5660}.planner-job-meta b{font-size:8px;color:#293139;margin-top:4px;text-transform:uppercase;letter-spacing:.03em}.planner-row-empty{z-index:3;align-self:center;text-align:center;font-size:9px;color:#b1b7bd;pointer-events:none}
.planner-job-bar.status-new,.planner-job-bar.status-planning{background:#f7cf5d}.planner-job-bar.status-booked{background:#7fd097}.planner-job-bar.status-on_site{background:#7fb2df}.planner-job-bar.status-works_complete,.planner-job-bar.status-awaiting_audit{background:#ad95d4}.planner-job-bar.status-revisit_required{background:#ec8f8f}.planner-job-bar.status-revisit_booked{background:#eda55d}.planner-job-bar.status-completed{background:#c7ccd1}.planner-job-bar.status-cancelled{background:#d9dde0;opacity:.7}
.quick-document-card.generated{min-height:150px}.quick-document-filename{word-break:break-word}.quick-document-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.quick-document-actions .secondary-btn{font-size:10px;padding:7px 9px}.quick-document-card.generated .quick-document-state{top:14px}.quick-document-card.generated>div:first-child{padding-right:34px}
@media(max-width:1000px){.planner-person-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-team-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.planner-person-picker{grid-template-columns:1fr}.planner-team-panel>summary{align-items:flex-start}.quick-document-grid{grid-template-columns:1fr}}

/* Sprint 4.0 — Field Portal */
.field-body{margin:0;background:#f3f4f5;color:#1c2126;font-family:Inter,system-ui,sans-serif}.field-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:18px;justify-content:space-between;padding:13px 18px;background:#111315;color:#fff;border-bottom:3px solid #f5c84b}.field-brand{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none}.field-brand span{display:grid;place-items:center;width:40px;height:30px;background:#f5c84b;color:#111;font-weight:900;font-size:13px;border-radius:6px}.field-brand strong{font-size:13px}.field-topbar nav{display:flex;gap:8px;flex:1;justify-content:center}.field-topbar nav a,.field-topbar form button{border:0;background:transparent;color:#d8dde1;text-decoration:none;font:inherit;font-size:12px;font-weight:700;padding:9px 11px;border-radius:7px;cursor:pointer}.field-topbar nav a:hover,.field-topbar form button:hover{background:#24282c;color:#fff}.field-main{max-width:920px;margin:0 auto;padding:24px 18px 48px}.field-messages{display:grid;gap:8px;margin-bottom:14px}.field-message{padding:11px 13px;border-radius:8px;background:#eef1f3;font-size:12px;font-weight:700}.field-message.success{background:#e6f4ea;color:#27633a}.field-message.error{background:#f9e5e5;color:#873b3b}.field-message.warning{background:#fff4d7;color:#785e14}.field-hero{padding:10px 0 18px}.field-hero h1,.field-page-head h1,.field-job-head h1{margin:3px 0 5px;font-size:30px;line-height:1.1}.field-hero p,.field-page-head p,.field-job-head p{margin:0;color:#7b848d;font-size:12px}.field-job-list{display:grid;gap:12px}.field-job-card{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px;border-radius:14px;text-decoration:none;color:#1c2126;background:#fff;border-left:8px solid #f5c84b;box-shadow:0 1px 2px rgba(0,0,0,.06)}.field-job-card.status-booked{border-left-color:#72c68b}.field-job-card.status-on_site{border-left-color:#6fa8dc}.field-job-card.status-awaiting_audit,.field-job-card.status-works_complete{border-left-color:#a88ad6}.field-job-card.status-revisit_required{border-left-color:#e67d7d}.field-job-card span{font-size:10px;font-weight:800;color:#7d858d;text-transform:uppercase}.field-job-card h2{font-size:19px;margin:5px 0}.field-job-card p{font-size:11px;color:#79818a;margin:0}.field-job-status{display:grid;gap:8px;text-align:right;font-size:11px;font-weight:800}.field-job-status b{font-size:10px;color:#7b838c}.field-empty,.field-alert{padding:24px;border:1px dashed #cfd5da;border-radius:12px;background:#fff;display:grid;gap:5px}.field-empty strong{font-size:15px}.field-empty span,.field-alert{font-size:11px;color:#727c86}.field-page-head,.field-job-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.field-week-nav{display:flex;gap:8px}.field-week-nav a{width:42px;height:42px;border-radius:9px;background:#fff;border:1px solid #dfe3e7;display:grid;place-items:center;text-decoration:none;color:#222;font-weight:900}.field-planner{background:#fff;border:1px solid #e2e5e8;border-radius:14px;overflow:auto}.field-planner-head,.field-planner-grid{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));min-width:725px}.field-planner-head{background:#f8f9fa;border-bottom:1px solid #e5e8ea}.field-planner-head>div{padding:12px;border-left:1px solid #edf0f2}.field-planner-head>div:first-child{border-left:0}.field-planner-head strong,.field-planner-head span{display:block}.field-planner-head strong{font-size:11px}.field-planner-head span{font-size:9px;color:#8b939b;margin-top:3px}.field-planner-grid{position:relative;grid-template-rows:minmax(110px,auto)}.field-day-bg{grid-row:1;border-left:1px solid #edf0f2;min-height:110px}.field-day-bg:first-child{border-left:0}.field-planner-bar{grid-row:1;align-self:stretch;z-index:2;margin:10px 8px;padding:12px;border-radius:10px;background:#f7cf5d;color:#1d2328;text-decoration:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}.field-planner-bar.status-booked{background:#7fd097}.field-planner-bar.status-on_site{background:#7fb2df}.field-planner-bar.status-awaiting_audit,.field-planner-bar.status-works_complete{background:#ad95d4}.field-planner-bar.status-revisit_required{background:#ec8f8f}.field-planner-bar strong,.field-planner-bar span,.field-planner-bar small{display:block}.field-planner-bar strong{font-size:12px}.field-planner-bar span{font-size:10px;margin-top:4px}.field-planner-bar small{font-size:8px;margin-top:8px;text-transform:uppercase;font-weight:800}.field-planner-empty{grid-column:1/-1;grid-row:1;align-self:center;margin:20px}.field-back{display:inline-block;margin-bottom:16px;color:#68727c;text-decoration:none;font-size:11px;font-weight:800}.field-status{padding:8px 11px;border-radius:999px;background:#f7cf5d;font-size:10px;font-weight:800}.field-status.status-booked{background:#7fd097}.field-status.status-on_site{background:#7fb2df}.field-status.status-awaiting_audit{background:#ad95d4}.field-panel{background:#fff;border:1px solid #e1e5e8;border-radius:14px;padding:20px;margin-bottom:14px}.field-section-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:14px}.field-section-head h2{margin:2px 0;font-size:18px}.field-section-head>span{font-size:10px;font-weight:800;color:#858d95}.field-primary-action,.field-primary,.field-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:9px;padding:0 15px;text-decoration:none;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.field-primary-action,.field-primary{background:#f5c84b;color:#181818;border:0}.field-secondary{background:#f2f4f5;color:#333;border:1px solid #dfe3e6}.field-primary:disabled{opacity:.45;cursor:not-allowed}.field-help{font-size:10px;line-height:1.55;color:#737c84}.field-success,.field-warning,.field-info{margin-top:12px;padding:12px 13px;border-radius:9px;font-size:10px;line-height:1.5}.field-success{background:#e8f5eb;color:#2b6b3d}.field-warning{background:#fff3d4;color:#765c10}.field-info{background:#eef3f7;color:#52606d}.field-sign-form{margin-top:15px}.signature-pad{width:100%;height:160px;border:2px dashed #c9ced3;border-radius:10px;background:#fafafa;touch-action:none}.signature-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:9px}.team-signatures{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid #edf0f2}.team-signatures strong{font-size:10px;margin-right:6px}.team-signatures span{font-size:9px;background:#f1f3f4;border-radius:999px;padding:5px 8px}.scope-checklist{display:grid;gap:8px}.scope-checklist label{display:block;cursor:pointer}.scope-checklist input{position:absolute;opacity:0;pointer-events:none}.scope-checklist span{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid #e1e5e8;border-radius:10px;background:#fafbfb;font-size:11px;line-height:1.45}.scope-checklist b{display:grid;place-items:center;min-width:28px;height:28px;border-radius:7px;background:#eceff1;font-size:9px}.scope-checklist input:checked+span{background:#e9f6ec;border-color:#9ac8a6}.scope-checklist input:checked+span b{background:#72c68b;color:#102917}.field-outcome{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}.field-outcome label{cursor:pointer}.field-outcome input{position:absolute;opacity:0}.field-outcome span{display:grid;gap:4px;height:100%;padding:12px;border:1px solid #dfe3e6;border-radius:10px;background:#fafbfb}.field-outcome strong{font-size:11px}.field-outcome small{font-size:9px;line-height:1.4;color:#7b848c}.field-outcome input:checked+span{border-color:#d6ae2f;background:#fff7dc;box-shadow:inset 0 0 0 1px #d6ae2f}.field-notes{display:grid;gap:7px;margin-top:14px}.field-notes>span{font-size:10px;font-weight:800}.field-notes textarea{width:100%;box-sizing:border-box;border:1px solid #dfe3e6;border-radius:9px;padding:11px;font:inherit;font-size:11px;resize:vertical}.field-submit-work{width:100%;margin-top:12px}.eyebrow{font-size:8px!important;font-weight:800!important;color:#9a7b19!important;letter-spacing:.12em!important;margin:0!important}.field-messages+.field-hero{padding-top:0}
@media(max-width:650px){.field-main{padding:18px 14px 38px}.field-topbar{padding:11px 13px;gap:8px}.field-topbar nav{justify-content:flex-start}.field-topbar nav a{padding:9px 7px;font-size:10px}.field-brand strong{display:none}.field-job-card{align-items:flex-start;flex-direction:column}.field-job-status{text-align:left;display:flex;justify-content:space-between;width:100%}.field-page-head,.field-job-head{flex-direction:column}.field-outcome{grid-template-columns:1fr}.field-hero h1,.field-page-head h1,.field-job-head h1{font-size:25px}.field-panel{padding:16px}.signature-pad{height:150px}}
.field-progress-panel{padding:22px}.field-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.field-progress-grid>div{background:#fafbfc;border:1px solid #e5e8eb;border-radius:10px;padding:13px}.field-progress-grid span,.field-progress-grid strong,.field-progress-grid small{display:block}.field-progress-grid span{font-size:8px;color:#8e969e;text-transform:uppercase;font-weight:800}.field-progress-grid strong{font-size:18px;margin-top:6px;color:#2d343b}.field-progress-grid small{font-size:8px;color:#8b939c;margin-top:4px}.field-progress-note{margin-top:10px;padding:12px;border-radius:9px;background:#fff7dc;border:1px solid #ead68b}.field-progress-note strong{font-size:9px}.field-progress-note p{font-size:10px;margin:5px 0 0;line-height:1.5;color:#5e6570}@media(max-width:700px){.field-progress-grid{grid-template-columns:1fr}}
.audit-item{padding:18px 0;border-bottom:1px solid #e7e8ea}.audit-item textarea{width:100%;margin-top:10px;min-height:64px;border:1px solid #d8dadd;border-radius:8px;padding:10px;font:inherit}.form-stack p{display:grid;gap:7px;margin:0 0 18px}.form-stack input,.form-stack select,.form-stack textarea{padding:11px;border:1px solid #d8dadd;border-radius:8px;font:inherit}
.camera-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.quick-photo-form{padding:12px 0;border-top:1px solid #edf0f2}.field-camera-button{width:100%;margin-top:10px}.scope-progress-list{display:grid;gap:12px}.scope-progress-item{padding:14px;border:1px solid #e1e5e8;border-radius:12px;background:#fafbfb}.scope-progress-title{display:flex;gap:10px;align-items:flex-start}.scope-progress-title b{display:grid;place-items:center;min-width:30px;height:30px;border-radius:7px;background:#eceff1;font-size:9px}.scope-progress-title strong{font-size:11px;line-height:1.45;padding-top:6px}.scope-outcomes{margin-top:12px}.progress-stamp{display:block;margin-top:8px;color:#89929a;font-size:8px}.field-work-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.field-work-actions button{width:100%}@media(max-width:650px){.field-work-actions{grid-template-columns:1fr}.scope-outcomes{grid-template-columns:1fr}}

/* RC02.2 evidence gallery */
.evidence-counts{display:flex;gap:8px;flex-wrap:wrap}.evidence-counts span{font-size:10px;font-weight:800;background:#f2f3f4;border:1px solid #e1e3e5;border-radius:999px;padding:6px 9px}.evidence-panel h3{font-size:13px;margin:20px 0 10px}.evidence-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.evidence-photo{display:block;text-decoration:none;color:inherit;border:1px solid #e1e3e5;border-radius:12px;overflow:hidden;background:#fafafa}.evidence-photo img{display:block;width:100%;height:150px;object-fit:cover;background:#eee}.evidence-photo span{display:block;padding:9px;font-size:9px;line-height:1.45;color:#666}.evidence-photo strong{color:#292d31}.audit-upload-status{display:block;margin-top:7px;font-size:10px;color:#2f7d4a;font-weight:700}@media(max-width:800px){.evidence-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.evidence-gallery{grid-template-columns:1fr}.evidence-photo img{height:210px}}
