:root{--cream:#f4efe5;--paper:#fff;--navy:#0d2a47;--navy-2:#173e62;--ink:#172639;--muted:#687484;--line:#ded7ca;--yellow:#f2c230;--orange:#e56d12;--green:#23734b;--shadow:0 18px 50px rgba(31,39,47,.1)}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.portal-bar{min-height:74px;padding:0 clamp(1rem,5vw,4rem);background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:1rem;position:sticky;top:0;z-index:5}.portal-brand{color:#fff;text-decoration:none;font-weight:950;letter-spacing:.14em}.portal-brand span{color:var(--yellow)}.portal-brand small{display:block;color:#c1d2e1;font-size:.52rem;letter-spacing:.18em;margin-top:.28rem}.session{display:flex;gap:.8rem;align-items:center;color:#c1d2e1;font-size:.8rem}.portal-shell{width:min(1280px,calc(100% - 32px));margin:auto;padding:clamp(2rem,5vw,4rem) 0 6rem}.auth-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem;align-items:start;max-width:1120px;margin:4rem auto}.auth-intro h1,.workspace-head h1{margin:.4rem 0 1rem;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;font-size:clamp(3rem,7vw,6.5rem);line-height:.9;letter-spacing:.02em}.auth-intro>p:not(.eyebrow){max-width:42ch;color:var(--muted);font-size:1.1rem}.eyebrow,.panel-kicker{margin:0;color:var(--orange);font-size:.7rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.auth-panels{display:grid;gap:1rem}.panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(1.2rem,3vw,2rem)}.panel-soft{background:#fffaf0}.panel h2,.panel h3{margin:.3rem 0 1.2rem;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;line-height:1}.panel h2{font-size:2.2rem}.panel h3{font-size:1.45rem}.muted,.label-help{color:var(--muted);font-size:.82rem}.label-help{font-weight:400;text-transform:none;letter-spacing:0}.panel>p.muted{margin-top:-.6rem}label{display:grid;gap:.38rem;margin:.8rem 0;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}input,select,textarea{width:100%;font:inherit;border:1px solid #c9c4ba;background:#fff;color:var(--ink);padding:.7rem .75rem;border-radius:0}textarea{resize:vertical;min-height:80px}input:focus,select:focus,textarea:focus{outline:3px solid rgba(229,109,18,.25);border-color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--yellow);background:var(--yellow);color:#151719;padding:.72rem 1rem;cursor:pointer;text-transform:uppercase;font-size:.7rem;font-weight:950;letter-spacing:.08em;text-decoration:none}.button:hover{background:#ffd951}.button-dark{background:var(--navy);border-color:var(--navy);color:#fff}.button-dark:hover{background:var(--navy-2)}.button-quiet{background:transparent;border-color:var(--line);color:inherit}.portal-bar .button-quiet{border-color:#66839c;color:#fff}.text-link{color:var(--navy);font-weight:900;text-decoration-color:var(--orange);text-underline-offset:5px}.form-message{min-height:1.3rem;color:var(--orange);font-weight:800;font-size:.82rem}.workspace-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:2rem}.workspace-head h1{font-size:clamp(2.5rem,5vw,5.3rem);max-width:12ch}.workspace-actions{display:flex;gap:.6rem;flex-wrap:wrap}.tabs{display:flex;gap:.35rem;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:1.4rem}.tab{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:.75rem .8rem;font:inherit;font-weight:900;cursor:pointer}.tab.active,.tab:hover{color:var(--navy);border-color:var(--yellow)}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.8rem;margin-bottom:1.2rem}.metric{background:#fff;border:1px solid var(--line);padding:1.1rem;box-shadow:var(--shadow)}.metric span,.metric small{display:block;color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.metric strong{display:block;color:var(--navy);font-size:1.7rem;margin:.25rem 0}.section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.section-title{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-bottom:1rem}.section-title h2{margin:.25rem 0;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;font-size:clamp(2rem,4vw,3.7rem);line-height:.95}.checklist{list-style:none;padding:0;margin:1rem 0}.checklist li{padding:.65rem 0;border-top:1px solid var(--line);font-weight:800}.checklist li:before{content:"✓";color:var(--green);font-weight:950;margin-right:.7rem}.data-list,.record-grid,.job-list{display:grid;gap:.7rem}.data-row,.record,.job-card{border-top:1px solid var(--line);padding:.9rem 0}.data-row:first-child,.record:first-child,.job-card:first-child{border-top:0}.data-row{display:grid;grid-template-columns:1fr auto;gap:1rem}.data-row strong,.record strong{display:block}.tag{display:inline-block;padding:.18rem .45rem;border:1px solid var(--line);font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.05em}.tag.urgent{border-color:#bd3b2f;color:#bd3b2f}.tag.soon{border-color:var(--orange);color:var(--orange)}.record-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1rem}.record{background:#fff;border:1px solid var(--line);padding:1rem;box-shadow:var(--shadow)}.record h3{margin:.2rem 0 .5rem;font-size:1.15rem}.record-actions{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.7rem}.small-button{border:1px solid var(--line);background:transparent;color:var(--navy);padding:.4rem .55rem;cursor:pointer;font:inherit;font-size:.7rem;font-weight:900;text-transform:uppercase}.small-button:hover{border-color:var(--orange);color:var(--orange)}.narrow-panel{max-width:900px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.check-field{display:flex;align-items:center;gap:.55rem}.check-field input{width:auto}.job-card{background:#fff;border:1px solid var(--line);padding:1.1rem;box-shadow:var(--shadow)}.job-head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.job-head h3{margin:0;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;font-size:1.5rem}.job-meta{display:flex;gap:.4rem;flex-wrap:wrap;margin:.55rem 0}.job-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.9rem 0}.job-stats span{display:block;background:var(--cream);padding:.5rem;font-size:.7rem;color:var(--muted);font-weight:800;text-transform:uppercase}.job-stats b{display:block;color:var(--navy);font-size:1rem}.toast{position:fixed;right:1rem;bottom:1rem;max-width:360px;background:var(--navy);color:#fff;padding:.8rem 1rem;border-left:5px solid var(--yellow);box-shadow:var(--shadow);display:none}.toast.show{display:block}@media(max-width:1000px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.auth-layout,.section-grid{grid-template-columns:1fr}.workspace-head{display:block}.workspace-actions{margin-top:1rem}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.record-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.job-stats{grid-template-columns:repeat(2,1fr)}.portal-shell{width:min(100% - 20px,1280px)}.tabs{overflow:auto;flex-wrap:nowrap}.tab{white-space:nowrap}.data-row{grid-template-columns:1fr}.session span{display:none}}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
:root{--cream:#f4efe5}[hidden]{display:none!important}
.portal-brand{display:flex;align-items:center;gap:.7rem}.portal-logo{width:76px;height:44px;object-fit:contain;background:#111820;border:1px solid rgba(242,194,48,.25)}.portal-brand-copy{display:grid;gap:.15rem;color:#fff}.portal-brand-copy b{letter-spacing:.14em}.portal-brand-copy b span{color:var(--yellow)}.portal-brand-copy small{color:#c1d2e1;font-size:.52rem;letter-spacing:.18em}.demo-entry{max-width:1080px;margin:clamp(2rem,7vw,6rem) auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem;align-items:center}.demo-entry-copy h1{margin:.5rem 0 1rem;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;font-size:clamp(3.3rem,7vw,6.8rem);line-height:.88;letter-spacing:.02em}.demo-entry-copy>p:not(.eyebrow){color:var(--muted);font-size:1.1rem;max-width:40ch}.demo-badge,.demo-role-pill{display:inline-flex;border:1px solid var(--line);background:#fffaf0;color:var(--orange);padding:.28rem .5rem;font-size:.64rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.role-grid{display:grid;gap:.7rem}.role-card{width:100%;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:.9rem;text-align:left;padding:1.1rem 1rem;border:1px solid var(--line);border-left:5px solid var(--yellow);background:#fff;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;font:inherit}.role-card:hover{border-color:var(--orange);transform:translateX(4px)}.role-card strong,.role-card small{display:block}.role-card small{color:var(--muted);font-size:.8rem;margin-top:.12rem}.role-card>b{color:var(--orange);font-size:1.3rem}.role-icon{width:42px;height:42px;display:grid;place-items:center;background:var(--navy);color:var(--yellow);font-weight:950;border-radius:50%}.demo-entry-footer{grid-column:1/-1;display:flex;justify-content:center;gap:.8rem;align-items:center;color:var(--muted);font-size:.8rem}.text-button{border:0;background:none;color:var(--navy);font:inherit;font-weight:950;text-decoration:underline;text-decoration-color:var(--orange);cursor:pointer}.back-demo{grid-column:1/-1;justify-self:start}.demo-app-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.demo-app-head h1{margin:.25rem 0 0;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;font-size:clamp(2.5rem,5vw,5rem);line-height:.9}.demo-content{min-height:420px}.demo-section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.demo-section-head h2{margin:.25rem 0 0;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;font-size:clamp(2.2rem,5vw,4.3rem);line-height:.9}.demo-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-bottom:1rem}.demo-metric{background:#fff;border:1px solid var(--line);padding:1rem;box-shadow:var(--shadow)}.demo-metric span,.demo-metric small{display:block;color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.demo-metric strong{display:block;color:var(--navy);font-size:1.65rem;margin:.3rem 0}.demo-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.demo-card{background:#fff;border:1px solid var(--line);padding:1.2rem;box-shadow:var(--shadow)}.demo-card h3{margin:.25rem 0 .8rem;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;font-size:1.5rem}.demo-list,.demo-order-list{display:grid;gap:0}.demo-list>div,.demo-order-list>div{position:relative;border-top:1px solid var(--line);padding:.85rem 0;padding-right:6rem}.demo-list>div:first-child,.demo-order-list>div:first-child{border-top:0}.demo-list strong,.demo-list small,.demo-order-list strong,.demo-order-list small{display:block}.demo-list small,.demo-order-list small{color:var(--muted);font-size:.8rem}.demo-tag{display:inline-block;color:var(--navy);border:1px solid var(--line);padding:.2rem .35rem;font-size:.62rem;font-weight:950;letter-spacing:.06em}.demo-list .demo-tag,.demo-order-list .demo-tag{position:absolute;right:0;top:1rem}.demo-tag.soon{color:var(--orange);border-color:var(--orange)}.demo-tag.urgent{color:#b7372e;border-color:#b7372e}.demo-actions{display:flex;gap:.5rem;flex-wrap:wrap}.demo-actions button{border:1px solid var(--navy);background:transparent;color:var(--navy);padding:.55rem .7rem;font:inherit;font-size:.7rem;font-weight:950;text-transform:uppercase;cursor:pointer}.demo-actions button:hover{background:var(--yellow);border-color:var(--yellow)}.next-job{margin-bottom:1rem}.demo-bottom-nav{display:flex;justify-content:center;gap:.2rem;margin:2rem auto 0;padding:.5rem;background:var(--navy);box-shadow:var(--shadow);position:sticky;bottom:1rem;z-index:4;width:max-content;max-width:100%;border:1px solid #46657d}.demo-nav-item{display:grid;gap:.15rem;justify-items:center;border:0;background:transparent;color:#c1d2e1;padding:.55rem .8rem;font:inherit;font-size:.68rem;font-weight:900;cursor:pointer}.demo-nav-item span{font-size:1.05rem;color:var(--yellow)}.demo-nav-item.active,.demo-nav-item:hover{background:var(--yellow);color:var(--navy)}.demo-nav-item.active span,.demo-nav-item:hover span{color:var(--navy)}@media(max-width:800px){.demo-entry{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}.demo-entry-footer{grid-column:auto;display:grid;justify-content:start}.demo-metrics{grid-template-columns:repeat(2,1fr)}.demo-columns{grid-template-columns:1fr}.demo-app-head{align-items:start;display:block}.demo-role-pill{margin-top:.8rem}.portal-logo{width:64px;height:38px}.portal-brand-copy{display:none}.portal-shell{padding-bottom:5rem}.demo-bottom-nav{position:fixed;bottom:.6rem;left:50%;transform:translateX(-50%);width:calc(100% - 1rem);justify-content:space-around;margin:0}.demo-nav-item{flex:1;padding:.55rem .35rem}.demo-nav-item span{font-size:.9rem}}
@media(min-width:801px){.demo-bottom-nav{position:static}}

/* Native iPhone shell polish */
body{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}
button,.button,.small-button,.demo-nav-item,.role-card{-webkit-appearance:none;appearance:none}
input,select,textarea{font-size:16px}
.portal-bar{padding-top:calc(1rem + env(safe-area-inset-top));padding-bottom:calc(1rem + env(safe-area-inset-bottom))}
.portal-shell{padding-bottom:calc(6rem + env(safe-area-inset-bottom))}
.demo-bottom-nav{bottom:calc(.6rem + env(safe-area-inset-bottom))}
@media(max-width:800px){
  .portal-bar{min-height:calc(74px + env(safe-area-inset-top))}
  .demo-bottom-nav{width:100%;max-width:none;left:0;transform:none;border-left:0;border-right:0;border-bottom:0;border-radius:0}
}
 .job-scope{white-space:pre-line}.job-detail{border-top:1px solid var(--line);margin-top:1rem;padding-top:.8rem}.job-detail summary{cursor:pointer;color:var(--navy);font-weight:950;text-transform:uppercase;font-size:.7rem;letter-spacing:.08em}.job-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.job-timeline{list-style:none;padding:0;margin:0}.job-timeline li{border-top:1px solid var(--line);padding:.6rem 0}.job-timeline li:first-child{border-top:0}.job-timeline strong,.job-timeline span,.job-timeline small{display:block}.job-timeline span,.job-timeline small{color:var(--muted);font-size:.78rem}.job-detail-kicker{margin-top:1rem}.job-detail-line{border-top:1px solid var(--line);padding:.55rem 0}.job-detail-line:first-of-type{border-top:0}.job-detail-line strong,.job-detail-line span{display:block}.job-detail-line span{color:var(--muted);font-size:.8rem}.demo-live-job{margin-bottom:1rem}.demo-job-top{display:flex;justify-content:space-between;gap:1rem;align-items:start}.demo-job-top h3{max-width:28ch}.demo-job-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:1rem 0}.demo-job-facts span{background:var(--cream);padding:.55rem;color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase}.demo-job-facts b{display:block;color:var(--navy);font-size:.82rem;margin-top:.2rem;text-transform:none}.demo-detail-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.demo-work-order{margin-bottom:1rem}.demo-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0;margin:1rem 0}.demo-detail-grid>div{display:grid;gap:.2rem}.demo-detail-grid>div>span{font-size:.8rem;color:var(--muted)}.demo-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.demo-scope{list-style:none;padding:0;margin:0}.demo-scope li{border-top:1px solid var(--line);padding:.55rem 0}.demo-scope li:first-child{border-top:0}.demo-timeline{list-style:none;padding:0;margin:0;border-left:2px solid var(--line);margin-left:.35rem}.demo-timeline-item{position:relative;padding:0 0 .8rem 1rem}.demo-timeline-dot{position:absolute;left:-.42rem;top:.2rem;width:.65rem;height:.65rem;background:var(--yellow);border:2px solid var(--navy);border-radius:50%}.demo-timeline-item strong,.demo-timeline-item small,.demo-timeline-item p{display:block}.demo-timeline-item small{color:var(--muted);font-size:.75rem}.demo-timeline-item p{margin:.2rem 0 0;color:var(--muted);font-size:.8rem}.demo-messages{display:grid;gap:.7rem}.demo-message{border-top:1px solid var(--line);padding:.65rem 0}.demo-message:first-child{border-top:0}.demo-message strong,.demo-message span{display:block}.demo-message span{color:var(--muted);font-size:.74rem}.demo-message p{margin:.25rem 0 0}.demo-lines{display:grid;margin-bottom:.7rem}.demo-line{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:.65rem 0}.demo-line:first-child{border-top:0}.demo-line strong,.demo-line small{display:block}.demo-line small{color:var(--muted);font-size:.76rem}@media(max-width:800px){.job-detail-grid,.demo-detail-columns{grid-template-columns:1fr}.demo-job-facts{grid-template-columns:repeat(2,1fr)}.demo-detail-grid{grid-template-columns:repeat(2,1fr)}.demo-detail-head{align-items:start;display:grid}.demo-job-top{display:block}.demo-job-top .demo-tag{margin-top:.5rem}}
 .demo-work-order-header{display:flex;justify-content:space-between;align-items:start;gap:1.2rem}.demo-work-order-header h2{margin:.25rem 0 .35rem;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;text-transform:uppercase;font-size:clamp(2rem,5vw,4.4rem);line-height:.9;max-width:18ch}.demo-header-side{display:grid;gap:.5rem;justify-items:end;min-width:170px}.demo-status-badge{display:inline-flex;border:2px solid var(--orange);color:var(--orange);padding:.45rem .6rem;font-size:.7rem;font-weight:950;text-transform:uppercase;letter-spacing:.06em;text-align:center}.demo-assignee{font-size:.74rem;color:var(--muted);text-align:right}.demo-status-panel{border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem}.demo-status-rail{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:.4rem;overflow-x:auto}.demo-status-step{min-height:64px;border:1px solid var(--line);background:#faf8f2;color:var(--muted);padding:.45rem .5rem;text-align:left;font:inherit;font-size:.66rem;font-weight:950;line-height:1.2;text-transform:uppercase;cursor:pointer}.demo-status-step span{display:grid;place-items:center;width:22px;height:22px;margin-bottom:.3rem;border-radius:50%;background:#ded7ca;color:#687484}.demo-status-step.complete{border-color:#9fb6a5;color:var(--green);background:#f2f8f3}.demo-status-step.complete span{background:var(--green);color:#fff}.demo-status-step.current{border-color:var(--orange);color:var(--navy);background:#fff7ed;box-shadow:inset 0 -4px 0 var(--orange)}.demo-status-step.current span{background:var(--orange);color:#fff}.demo-status-step:disabled{cursor:default;opacity:.85}.demo-primary-actions{margin-top:1rem}.demo-action-stack{width:100%;display:grid;gap:.55rem}.demo-action-stack .demo-actions{margin-top:.1rem}.demo-field-label{display:block;margin:.7rem 0 .35rem;color:var(--navy);font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.demo-scope-editor{min-height:180px;border:2px solid var(--orange);background:#fffdf8;line-height:1.6}.demo-composer,.demo-note-form,.demo-material-form{display:grid;gap:.5rem;margin-top:1rem;border-top:1px solid var(--line);padding-top:1rem}.demo-composer textarea,.demo-note-form textarea,.demo-material-form input{border-color:#c9c4ba;background:#fff}.demo-material-form{grid-template-columns:1.4fr .55fr .75fr 1fr auto;align-items:end}.demo-material-form label{margin:0}.demo-material-form label span{display:block;color:var(--muted);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.3rem}.demo-material-form .button{height:42px;white-space:nowrap}.demo-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.demo-photo{border:1px solid var(--line);background:#faf8f2;padding:.55rem}.demo-photo-art{min-height:86px;display:grid;place-items:center;background:linear-gradient(135deg,#d9d5cb,#f6f1e7);color:#8a867d;font-size:.62rem;font-weight:950;letter-spacing:.16em}.demo-photo strong,.demo-photo small{display:block;margin-top:.35rem}.demo-photo small{color:var(--muted);font-size:.7rem}.demo-upload{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:.7rem;border:1px dashed var(--orange);background:#fffaf0;color:var(--orange);cursor:pointer;font-size:.7rem;font-weight:950;text-transform:uppercase;letter-spacing:.07em}.demo-upload input{display:none}.note-alert{border-left:4px solid #bd3b2f;padding-left:.65rem;background:#fff8f7}.demo-message.from-owner{background:#f6f9fc;padding-left:.65rem;border-left:3px solid var(--navy)}@media(max-width:900px){.demo-status-rail{grid-template-columns:repeat(7,120px)}.demo-material-form{grid-template-columns:1fr 1fr}.demo-material-form .button{grid-column:1/-1}.demo-work-order-header{display:grid}.demo-header-side{justify-items:start}.demo-assignee{text-align:left}}@media(max-width:600px){.demo-detail-grid{grid-template-columns:1fr}.demo-job-facts{grid-template-columns:1fr 1fr}.demo-detail-head .demo-badge{justify-self:start}.demo-photo-grid{grid-template-columns:1fr 1fr}.demo-status-step{min-height:72px}.demo-actions.demo-primary-actions{display:grid;grid-template-columns:1fr}.demo-actions.demo-primary-actions .button{width:100%}}
 .demo-live-job-list{display:grid}.demo-live-job-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-top:1px solid var(--line);padding:.85rem 0}.demo-live-job-row:first-child{border-top:0}.demo-live-job-row strong,.demo-live-job-row small,.demo-job-owner{display:block}.demo-live-job-row small,.demo-job-owner{color:var(--muted);font-size:.78rem}.demo-job-owner{margin-top:.25rem}.demo-row-side{display:grid;justify-items:end;gap:.45rem}.demo-activity-list{display:grid}.demo-activity-item{display:grid;grid-template-columns:12px 1fr;gap:.7rem;border-top:1px solid var(--line);padding:.7rem 0}.demo-activity-item:first-child{border-top:0}.demo-activity-dot{width:9px;height:9px;margin-top:.35rem;border-radius:50%;background:var(--orange);box-shadow:0 0 0 3px #fff0df}.demo-activity-item strong,.demo-activity-item small{display:block}.demo-activity-item small{color:var(--muted);font-size:.72rem}.demo-activity-item p{margin:.25rem 0 0;color:var(--muted);font-size:.8rem}.demo-owner-shortcuts{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem}.demo-my-jobs{margin-bottom:1rem}.demo-next-action{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;border-left:5px solid var(--yellow)}.demo-next-action h3{font-size:1.8rem}.demo-big-action{min-height:58px;font-size:.78rem;padding:1rem 1.2rem}.demo-client-hero,.demo-client-report{display:flex;justify-content:space-between;align-items:center;gap:1rem}.demo-client-hero{margin-bottom:1rem}.demo-client-hero h3{font-size:2rem;margin:.2rem 0}.demo-client-jobs{margin-bottom:1rem}.demo-client-report{border-top:4px solid var(--yellow)}@media(max-width:700px){.demo-owner-shortcuts,.demo-next-action,.demo-client-hero,.demo-client-report{display:grid;align-items:start}.demo-row-side{justify-items:start}.demo-live-job-row{align-items:start}.demo-status-badge{justify-self:start}}
 .demo-property-list{display:grid;gap:1rem}.demo-property-card{margin:0}.demo-property-meta{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:1rem 0}.demo-property-meta span{background:var(--cream);padding:.55rem;color:var(--muted);font-size:.7rem;font-weight:850;text-transform:uppercase}.demo-property-meta b{display:block;color:var(--navy);font-size:.85rem;margin-top:.2rem;text-transform:none}.demo-entity-form{background:#fffaf0;border:1px solid var(--line);padding:1rem;margin-bottom:1rem;box-shadow:var(--shadow)}.demo-entity-form label{margin:.55rem 0}.demo-people-sections{display:grid;gap:1.4rem}.demo-person-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.demo-person-card{height:100%}.demo-person-card h3{margin-bottom:.4rem}@media(max-width:700px){.demo-person-grid{grid-template-columns:1fr}.demo-property-meta{grid-template-columns:1fr}.demo-property-card .demo-section-head{align-items:start;display:block}.demo-property-card .demo-tag{display:inline-flex;margin-top:.5rem}}
 .demo-content{display:grid;gap:1rem}.demo-card+.demo-card{margin-top:0}.demo-tag,.demo-status-badge{border-radius:999px}.demo-tag.status-requested,.demo-status-badge.status-requested{border-color:#8b6fbd;color:#6d4fa0;background:#f8f3ff}.demo-tag.status-scoped,.demo-status-badge.status-scoped{border-color:#3d7ca8;color:#276388;background:#f0f8fd}.demo-tag.status-assigned,.demo-status-badge.status-assigned{border-color:#7a8794;color:#536170;background:#f4f6f8}.demo-tag.status-in-progress,.demo-status-badge.status-in-progress{border-color:var(--orange);color:#b34f06;background:#fff7ed}.demo-tag.status-completed-by-sub,.demo-status-badge.status-completed-by-sub{border-color:var(--orange);color:#b34f06;background:#fff7ed}.demo-tag.status-reviewed-by-tom,.demo-status-badge.status-reviewed-by-tom{border-color:#8b6fbd;color:#6d4fa0;background:#f8f3ff}.demo-tag.status-closed-with-customer,.demo-status-badge.status-closed-with-customer{border-color:var(--green);color:var(--green);background:#f2f8f3}.empty-state,.loading-state{border:1px dashed var(--line);background:#fffaf0;color:var(--muted);padding:1.25rem}.empty-state{font-size:.85rem}.loading-state{min-height:180px;display:grid;align-content:center;gap:.35rem}.loading-state h2{margin:.1rem 0;font-size:1.6rem}.demo-actions .button,.demo-actions .small-button,.demo-actions button,.button,.small-button,.demo-nav-item,.role-card{min-height:44px}.demo-actions .button,.demo-actions .small-button,.demo-actions button,.button,.small-button{display:inline-flex;align-items:center;justify-content:center}.demo-material-form input,.demo-material-form select,.demo-entity-form input,.demo-entity-form select,.demo-entity-form textarea,.demo-composer textarea,.demo-note-form textarea,.demo-action-stack textarea{min-height:44px}.report-toolbar{align-items:center}.report-toolbar .demo-actions{justify-content:flex-end}.report-page{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(1.25rem,4vw,3rem);color:var(--ink)}.report-header{display:flex;justify-content:space-between;gap:1.25rem;border-bottom:2px solid var(--orange);padding-bottom:1.25rem}.report-brand{display:flex;align-items:center;gap:1rem}.report-brand img{width:86px;height:62px;object-fit:contain;background:#111820;border:1px solid #293b4b}.report-overline{margin:0;color:var(--navy);font-size:1.05rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.report-company-meta{margin:.25rem 0 0;color:var(--muted);font-size:.76rem;line-height:1.5}.report-header-meta{display:grid;justify-items:end;align-content:start;gap:.45rem}.report-header-meta small{color:var(--muted);font-size:.62rem;font-weight:950;letter-spacing:.12em}.report-title{padding:1.5rem 0 1rem}.report-title h1{margin:.3rem 0 .4rem;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;font-size:clamp(2rem,5vw,4rem);line-height:.92;text-transform:uppercase}.report-title>p:last-child{margin:0;color:var(--muted)}.report-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.report-meta-grid>div{background:var(--cream);padding:.8rem;border:1px solid var(--line)}.report-meta-grid span{display:block;color:var(--muted);font-size:.62rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.report-meta-grid strong{display:block;margin-top:.3rem;color:var(--navy);font-size:.88rem}.report-meta-grid p{margin:.25rem 0 0;color:var(--muted);font-size:.76rem}.report-section{border-top:1px solid var(--line);margin-top:1.6rem;padding-top:1.15rem}.report-section-heading h2{margin:.2rem 0 .8rem;font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;font-size:1.75rem;line-height:1;text-transform:uppercase}.report-scope{margin:0;padding-left:1.35rem}.report-scope li{padding:.35rem 0}.report-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.report-photo-slot{border:1px solid var(--line);background:#faf8f2;padding:.65rem}.report-photo-art{min-height:132px;display:grid;place-items:center;background:linear-gradient(135deg,#d9d5cb,#f6f1e7);color:#8a867d;font-size:.62rem;font-weight:950;letter-spacing:.16em}.report-photo-after{background:linear-gradient(135deg,#d5dfd7,#f4f8f4)}.report-photo-slot strong,.report-photo-slot small{display:block;margin-top:.4rem}.report-photo-slot small{color:var(--muted);font-size:.72rem}.report-materials{display:grid}.report-material-row{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:.7rem 0}.report-material-row:first-child{border-top:0}.report-material-row strong,.report-material-row span{display:block}.report-material-row span{color:var(--muted);font-size:.74rem}.report-material-row>div:last-child{text-align:right}.report-total{display:flex;justify-content:space-between;gap:1rem;border-top:2px solid var(--navy);padding-top:.7rem;margin-top:.25rem;font-weight:950}.report-notes{display:grid}.report-note{border-top:1px solid var(--line);padding:.7rem 0}.report-note:first-child{border-top:0}.report-note strong,.report-note span{display:block}.report-note span{color:var(--muted);font-size:.74rem}.report-note p{margin:.3rem 0 0}.report-alert{border-left:4px solid #bd3b2f;padding-left:.7rem;background:#fff8f7}.report-empty{color:var(--muted);margin:0}.report-footer{display:flex;justify-content:space-between;gap:1rem;border-top:2px solid var(--navy);margin-top:1.8rem;padding-top:1rem}.report-footer strong,.report-footer span{display:block}.report-footer span{color:var(--muted);font-size:.74rem}.report-footer-mark{color:var(--orange)!important;font-weight:950!important;letter-spacing:.14em}@media(max-width:800px){.report-header,.report-footer{display:grid;justify-content:stretch}.report-header-meta{justify-items:start}.report-meta-grid{grid-template-columns:1fr 1fr}.report-toolbar{display:grid;align-items:stretch}.report-toolbar .demo-actions{display:grid;grid-template-columns:1fr 1fr}.report-toolbar .demo-actions .button{width:100%}}@media(max-width:600px){.report-meta-grid,.report-photo-grid{grid-template-columns:1fr}.report-material-row{display:grid;gap:.35rem}.report-material-row>div:last-child{text-align:left}.report-footer-mark{justify-self:start}}
 .demo-content>*{min-width:0}.demo-work-order,.demo-detail-columns,.demo-detail-columns>.demo-card,.demo-status-panel,.demo-status-rail{min-width:0;max-width:100%}
 .demo-dashboard{display:grid;gap:1rem}.demo-dashboard-hero{position:relative;display:flex;justify-content:space-between;align-items:end;gap:2rem;min-height:246px;padding:clamp(1.35rem,4vw,2.5rem);overflow:hidden;color:#fff}.demo-dashboard-hero:after{content:'';position:absolute;right:-90px;bottom:-110px;width:330px;height:330px;border:1px solid rgba(242,194,48,.28);border-radius:50%;box-shadow:0 0 0 22px rgba(242,194,48,.06),0 0 0 44px rgba(242,194,48,.04)}.demo-owner-hero{background:linear-gradient(125deg,#081c31,#173e62 62%,#254f70)}.demo-field-hero{background:linear-gradient(125deg,#172639,#31556c 60%,#3a6575)}.demo-client-hero-large{background:linear-gradient(125deg,#173e62,#235d72 58%,#367a75)}.demo-hero-copy,.demo-hero-actions,.demo-hero-number,.demo-trust-chip{position:relative;z-index:1}.demo-hero-copy{max-width:670px}.demo-hero-copy .panel-kicker{color:var(--yellow)}.demo-hero-copy h2{margin:.45rem 0 .85rem;font-family:'Arial Narrow',Impact,ui-sans-serif,sans-serif;font-size:clamp(2.4rem,6vw,5.3rem);line-height:.88;letter-spacing:.01em;text-transform:uppercase}.demo-hero-copy h2 span{color:var(--yellow)}.demo-hero-copy>p:last-child{max-width:48ch;margin:0;color:#d8e5ee;font-size:.96rem}.demo-hero-actions{display:grid;gap:.6rem;min-width:190px}.demo-hero-actions .button{width:100%}.demo-hero-actions .button-quiet{border-color:rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.06)}.dashboard-new-order{box-shadow:0 8px 0 rgba(0,0,0,.18)}.demo-dashboard-metrics{margin:0}.demo-metric.metric-primary{border-top:4px solid var(--yellow)}.demo-metric.metric-attention{border-top:4px solid var(--orange);background:#fffaf0}.demo-review-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.15rem 1.2rem}.demo-review-card.is-attention{border-left:5px solid var(--orange);background:linear-gradient(90deg,#fff9ee,#fff)}.demo-review-card.is-clear{border-left:5px solid var(--green)}.demo-review-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--orange);color:#fff;font-size:1.3rem;font-weight:950}.demo-review-card.is-clear .demo-review-mark{background:var(--green)}.demo-review-copy h3{margin:.15rem 0 .25rem}.demo-review-copy p{margin:0}.demo-count-pill{display:inline-flex;align-items:center;border:1px solid var(--line);padding:.3rem .5rem;color:var(--muted);font-size:.64rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.demo-dashboard-progress{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--line)}.demo-flow-bar{height:8px;background:#ece7dd;overflow:hidden;border-radius:999px}.demo-flow-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--orange),var(--yellow));border-radius:999px}.demo-flow-meta{display:flex;justify-content:space-between;gap:.6rem;margin-top:.45rem;color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.demo-flow-meta strong{color:var(--navy)}.demo-hero-number{display:grid;justify-items:end;align-content:end;min-width:135px}.demo-hero-number strong{font-family:'Arial Narrow',Impact,ui-sans-serif,sans-serif;color:var(--yellow);font-size:5.6rem;line-height:.75}.demo-hero-number span{margin-top:.65rem;color:#d8e5ee;font-size:.68rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.demo-my-jobs-panel{border-top:4px solid var(--yellow)}.demo-dashboard-actions{margin-top:1rem}.demo-dashboard-actions .button{min-height:50px}.demo-next-step-card{border-left:4px solid var(--yellow)}.demo-field-note-card{background:#fffaf0}.demo-trust-chip{display:grid;gap:.35rem;min-width:190px;padding:.75rem .9rem;border:1px solid rgba(255,255,255,.35);background:rgba(7,24,42,.25);backdrop-filter:blur(6px)}.demo-trust-chip span{color:#d8e5ee;font-size:.64rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.demo-trust-chip strong{color:#fff;font-size:.98rem}.demo-client-property-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-top:4px solid var(--yellow)}.demo-client-property-card h3{font-size:2rem;margin:.2rem 0}.demo-client-job-card{padding-bottom:1.25rem}.demo-client-trust-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;background:#fbfcfb;border-left:4px solid var(--green)}.demo-trust-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e4f2e8;color:var(--green);font-weight:950;font-size:1.25rem}.demo-client-trust-card h3{margin:.15rem 0 .3rem}.demo-client-trust-card p{margin:0}.demo-client-trust-card .button{white-space:nowrap}@media(max-width:700px){.demo-dashboard-hero{display:grid;align-items:start;min-height:0;gap:1.5rem}.demo-hero-actions{width:100%}.demo-hero-number{justify-items:start;min-width:0}.demo-hero-number strong{font-size:4.4rem}.demo-review-card,.demo-client-trust-card{grid-template-columns:auto minmax(0,1fr)}.demo-review-card>.button,.demo-client-trust-card>.button{grid-column:1/-1;width:100%}.demo-client-property-card{display:grid;align-items:start}.demo-client-property-card .demo-status-badge{justify-self:start}.demo-trust-chip{min-width:0;width:100%}.demo-flow-meta{display:grid;gap:.18rem}.demo-client-trust-card{align-items:start}}
 .demo-edit-card{border-top:4px solid var(--yellow)}.demo-job-edit-form{display:grid;gap:.5rem}.demo-job-edit-form .demo-section-head{margin-bottom:.2rem}.demo-job-edit-form input{min-height:44px}.demo-cost-table{display:grid;border-top:1px solid var(--line)}.demo-cost-head,.demo-cost-row{display:grid;grid-template-columns:minmax(0,1.6fr) .45fr .7fr .75fr minmax(120px,.95fr);gap:.65rem;align-items:center}.demo-cost-head{padding:.5rem 0;color:var(--muted);font-size:.62rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.demo-cost-row{border-top:1px solid var(--line);padding:.7rem 0}.demo-cost-row:first-of-type{border-top:0}.demo-cost-row strong,.demo-cost-row small{display:block}.demo-cost-row small{color:var(--muted);font-size:.72rem}.demo-cost-row>span{font-size:.78rem;color:var(--muted)}.demo-cost-row>span b{color:var(--navy)}@media(max-width:700px){.demo-cost-head{display:none}.demo-cost-row{grid-template-columns:1fr 1fr;gap:.45rem .75rem}.demo-cost-row>div{grid-column:1/-1}.demo-cost-row>span{display:flex;justify-content:space-between;border-top:1px solid #eee8dc;padding-top:.35rem}.demo-cost-row>span::before{content:attr(data-label);color:var(--muted);font-size:.62rem;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.demo-job-edit-form .form-grid{grid-template-columns:1fr}}
 .demo-record-view{display:grid;gap:1rem}.demo-property-record{border-top:4px solid var(--yellow)}.demo-record-heading{display:flex;justify-content:space-between;align-items:start;gap:1rem}.demo-record-heading h3{margin:.25rem 0 .2rem;font-size:2.15rem}.demo-record-heading p{margin:0}.demo-record-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin:1.2rem 0}.demo-record-facts>div{padding:.75rem;background:var(--cream);border:1px solid var(--line)}.demo-record-facts span,.demo-person-details span{display:block;color:var(--muted);font-size:.64rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.demo-record-facts strong{display:block;margin-top:.25rem;color:var(--navy);font-size:1.15rem}.demo-linked-records{display:grid;grid-template-columns:1fr 1.35fr;gap:1rem;border-top:1px solid var(--line);padding-top:1rem}.demo-linked-record{display:grid;align-content:start;gap:.35rem}.demo-linked-record>strong{color:var(--navy)}.demo-linked-record>span{color:var(--muted);font-size:.8rem}.demo-linked-record .small-button{justify-self:start;margin-top:.35rem}.demo-linked-list{display:grid}.demo-linked-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-top:1px solid var(--line);padding:.55rem 0}.demo-linked-item:first-child{border-top:0;padding-top:0}.demo-linked-item strong,.demo-linked-item span{display:block}.demo-linked-item span{color:var(--muted);font-size:.74rem}.demo-people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.demo-person-record{height:100%;border-top:4px solid var(--navy)}.demo-person-heading{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--line);padding-bottom:.85rem}.demo-person-avatar{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:var(--navy);color:var(--yellow);font-size:1.2rem;font-weight:950}.demo-person-heading h3{margin:.18rem 0 0;font-size:1.55rem}.demo-person-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:1rem}.demo-person-details>div{min-width:0}.demo-person-details strong{display:block;margin-top:.2rem;color:var(--navy);font-size:.82rem;overflow-wrap:anywhere}.demo-person-details small{display:block;margin-top:.15rem;color:var(--muted);font-size:.73rem;line-height:1.4}.demo-person-details a{color:var(--navy);text-decoration-color:var(--orange);text-underline-offset:3px}.demo-person-actions{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--line)}.demo-light-edit-form{margin:0;border-top:4px solid var(--yellow)}@media(max-width:700px){.demo-record-heading{display:grid}.demo-record-heading .demo-tag{justify-self:start}.demo-record-facts{grid-template-columns:1fr 1fr}.demo-linked-records,.demo-people-grid{grid-template-columns:1fr}.demo-person-details{grid-template-columns:1fr 1fr}}
 .report-approval-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:1.25rem 0 0}.report-approval-strip>div{background:var(--cream);border:1px solid var(--line);padding:.75rem}.report-approval-strip span{display:block;color:var(--muted);font-size:.62rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.report-approval-strip strong{display:block;margin-top:.3rem;color:var(--navy);font-size:.82rem}.report-page{position:relative;overflow:hidden}.report-page:before{content:'IRONCLAD';position:absolute;right:-1rem;top:5.7rem;color:rgba(13,42,71,.035);font-family:'Arial Narrow',Impact,sans-serif;font-size:6.5rem;font-weight:950;letter-spacing:.08em;pointer-events:none;transform:rotate(90deg)}.report-header,.report-title,.report-meta-grid,.report-section,.report-footer{position:relative;z-index:1}.report-header-meta .demo-status-badge{max-width:200px;justify-content:center}.report-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.report-section-heading h2{margin-bottom:.5rem}.report-scope{background:#fffdf9;padding-top:.35rem;padding-bottom:.35rem}.report-scope li::marker{color:var(--orange);font-weight:950}.report-photo-slot{min-width:0}.report-photo-art{border:1px solid #c8c2b8}.report-total strong{color:var(--navy)}.report-footer{align-items:end}.report-footer strong{font-size:.85rem}.portal-shell,.demo-content{scroll-margin-top:1rem}@media(max-width:700px){.report-approval-strip{grid-template-columns:1fr}.report-section-heading{display:grid;gap:.1rem}.report-page:before{display:none}}@media print{ @page{size:Letter;margin:.45in}body{background:#fff!important}.report-page{max-width:none;border:0;box-shadow:none;padding:0}.report-page:before{display:none}.report-section,.report-approval-strip,.report-photo-slot,.report-meta-grid>div{break-inside:avoid}.report-toolbar{display:none!important}.report-header{padding-top:0}.report-footer{margin-bottom:0}}.demo-status-badge,.demo-tag{font-variant-numeric:tabular-nums}.demo-card,.demo-metric,.demo-property-record,.demo-person-record{border-radius:2px}.demo-card,.demo-metric,.demo-property-record,.demo-person-record{transition:box-shadow .2s ease,transform .2s ease}.demo-card:hover,.demo-metric:hover,.demo-property-record:hover,.demo-person-record:hover{box-shadow:0 24px 60px rgba(31,39,47,.14)}.demo-actions .button,.demo-actions .small-button,.demo-status-step,.demo-nav-item,.role-card{touch-action:manipulation}.demo-actions .button:disabled,.demo-actions button:disabled{cursor:default;opacity:.62}
 .demo-install-hint{color:var(--navy);font-size:.74rem;font-weight:850}.demo-photo-art.has-image{padding:0;background:#111820}.demo-photo-art.has-image img{display:block;width:100%;height:100%;min-height:86px;object-fit:cover}.report-photo-art.report-photo-has-image{padding:0;background:#111820}.report-photo-art.report-photo-has-image img{display:block;width:100%;height:100%;min-height:132px;object-fit:cover}@media(max-width:800px){.demo-install-hint{display:block;max-width:30ch}}

/* Work-order detail: field photos and conversation polish */
.demo-photo-gallery{display:grid;gap:1rem}
.demo-photo-stage{border-top:1px solid var(--line);padding-top:.85rem}
.demo-photo-stage:first-child{border-top:0;padding-top:0}
.demo-photo-stage-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.65rem}
.demo-photo-stage-head h4{margin:.18rem 0 0;color:var(--navy);font-size:1.05rem}
.demo-photo-count{color:var(--muted);font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.demo-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.demo-photo-empty{display:grid;place-items:center;min-height:86px;border:1px dashed var(--line);background:#fffaf0;color:var(--muted);font-size:.76rem}
.demo-photo-uploader{display:grid;gap:.55rem;margin-top:1rem;border-top:1px solid var(--line);padding-top:1rem}
.demo-photo-stage-picker{display:grid;gap:.35rem;margin:0;color:var(--navy);font-size:.68rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.demo-photo-stage-picker select{min-height:44px;background:#fff;border-color:#c9c4ba;color:var(--ink);font:inherit;font-size:16px;text-transform:none;letter-spacing:0}
.demo-photo-uploader .demo-upload{margin-top:0}
.demo-photo-uploader>small{display:block}
.demo-thread-message{width:min(88%,520px);border:1px solid var(--line);border-radius:14px;padding:.75rem .85rem;box-shadow:0 5px 16px rgba(31,39,47,.05)}
.demo-thread-message.from-owner{justify-self:end;border-color:#c7d6e3;background:#f1f6fa;border-left:1px solid #c7d6e3}
.demo-thread-message.from-subcontractor,.demo-thread-message.from-client{justify-self:start;background:#fffaf0}
.demo-thread-message p{margin:.3rem 0 0}
@media(max-width:600px){.demo-photo-grid{grid-template-columns:1fr 1fr}.demo-thread-message{width:92%}}

/* Focused owner intake flow */
.demo-new-order-view{gap:1rem}
.demo-new-order-form{display:grid;gap:1rem;border-top:4px solid var(--yellow)}
.demo-new-order-form>label{margin:0}
.demo-new-order-intro{display:flex;align-items:flex-start;gap:.75rem;border-bottom:1px solid var(--line);padding-bottom:.75rem}
.demo-step-number{display:grid;place-items:center;flex:0 0 38px;height:38px;background:var(--navy);color:var(--yellow);font-size:.72rem;font-weight:950;letter-spacing:.08em}
.demo-new-order-intro h3{margin:.15rem 0 .25rem}
.demo-new-order-intro p{margin:0}
.demo-inline-create{background:#fffaf0;border:1px dashed var(--orange);padding:.85rem}
.demo-inline-create[hidden]{display:none}
.demo-inline-create .panel-kicker{margin-bottom:.45rem}
.demo-inline-create label{margin:.4rem 0}
.demo-new-order-actions{border-top:1px solid var(--line);padding-top:1rem}
.demo-new-order-actions .button:first-child{min-width:220px}
.demo-form-footnote{margin:0}
.report-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.report-bottom-grid>.report-section{min-width:0}
@media(max-width:700px){.demo-new-order-view>.demo-detail-head{display:flex;flex-direction:column;align-items:stretch}.demo-new-order-view>.demo-detail-head .button{align-self:flex-start}.report-bottom-grid{grid-template-columns:1fr}}
@media print{
  @page{size:Letter;margin:.3in}
  body{background:#fff!important;font-size:9px!important;line-height:1.25!important;width:7.8in!important;min-width:7.8in!important}
  .report-page{width:7.8in!important;max-width:none!important;border:0!important;box-shadow:none!important;padding:0!important}
  .report-header,.report-footer{display:flex!important}
  .report-header-meta{justify-items:end!important;text-align:right!important}
  .report-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .report-photo-grid{grid-template-columns:1fr 1fr!important}
  .report-bottom-grid{grid-template-columns:1fr 1fr!important}
  .report-material-row{display:flex!important}
  .report-material-row>div:last-child{text-align:right!important}
  .report-header{gap:10px!important;padding-bottom:6px!important}
  .report-brand{gap:7px!important}
  .report-brand img{width:54px!important;height:38px!important}
  .report-overline{font-size:10px!important}
  .report-company-meta{font-size:8px!important;line-height:1.25!important}
  .report-header-meta small{font-size:7px!important}
  .demo-status-badge{padding:3px 5px!important;font-size:8px!important}
  .report-title{padding:7px 0 6px!important}
  .report-title h1{font-size:21px!important;margin:2px 0 3px!important}
  .report-title>p:last-child{font-size:8px!important}
  .report-approval-strip{gap:4px!important;margin:6px 0 0!important;grid-template-columns:repeat(3,1fr)!important}
  .report-approval-strip>div{padding:5px!important}
  .report-approval-strip span{font-size:7px!important}
  .report-approval-strip strong{font-size:8.5px!important;margin-top:2px!important}
  .report-meta-grid{gap:4px!important}
  .report-meta-grid>div{padding:5px!important}
  .report-meta-grid span{font-size:7px!important}
  .report-meta-grid strong{font-size:8.5px!important;margin-top:2px!important}
  .report-meta-grid p{font-size:7.5px!important;margin:2px 0 0!important}
  .report-section{margin-top:8px!important;padding-top:6px!important}
  .report-section-heading h2{font-size:12px!important;margin:1px 0 4px!important}
  .report-scope{padding-top:0!important;padding-bottom:0!important}
  .report-scope li{padding:1px 0!important;font-size:8.5px!important}
  .report-photo-grid{gap:5px!important}
  .report-photo-slot{padding:4px!important}
  .report-photo-art{min-height:58px!important;font-size:8px!important}
  .report-photo-slot strong,.report-photo-slot small{margin-top:3px!important;font-size:7.5px!important}
  .report-material-row{padding:3px 0!important;gap:7px!important}
  .report-material-row strong{font-size:8.5px!important}
  .report-material-row span{font-size:7.5px!important}
  .report-total{padding-top:4px!important;margin-top:2px!important;font-size:8.5px!important}
  .report-note{padding:3px 0!important}
  .report-note strong{font-size:8.5px!important}
  .report-note span{font-size:7.5px!important}
  .report-note p{font-size:8px!important;margin:2px 0 0!important}
  .report-bottom-grid{gap:8px!important}
  .report-footer{margin-top:8px!important;padding-top:6px!important;font-size:8px!important}
  .report-footer strong{font-size:8px!important}
  .report-footer span{font-size:7px!important}
  .report-footer-mark{font-size:9px!important}
  .report-section,.report-approval-strip,.report-photo-slot,.report-meta-grid>div{break-inside:avoid}
}

/* Final app shell polish */
.demo-app-head-tools{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}
.demo-reset-button{min-height:36px;border:1px solid var(--line);background:transparent;color:var(--muted);padding:.45rem .6rem;font:inherit;font-size:.62rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}
.demo-reset-button:hover,.demo-reset-button:focus-visible{border-color:var(--orange);color:var(--orange);background:#fffaf0}
.demo-footer-note{margin:1.25rem 0 0;text-align:center;color:var(--muted);font-size:.68rem;letter-spacing:.04em}
.portal-legal-links{display:inline-flex;gap:.35rem;margin-left:.55rem}.portal-legal-links a{color:var(--navy);font-weight:850;text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:3px}.portal-legal-links a:hover,.portal-legal-links a:focus-visible{color:var(--orange)}
.demo-device-note{color:var(--muted);font-size:.72rem}
.empty-state{display:grid;gap:.2rem}
.empty-state strong{color:var(--navy);font-size:.82rem}
.empty-state span{color:var(--muted);font-size:.78rem}
.demo-activity-item p{max-width:62ch}
@media(max-width:700px){.demo-app-head-tools{justify-content:flex-start;margin-top:.85rem}.demo-role-pill{margin-top:0}.demo-reset-button{min-height:44px}.demo-footer-note{padding:0 .5rem;line-height:1.35}.demo-entry-footer .demo-device-note{display:block;max-width:32ch}}
.demo-time-card{border-top:4px solid var(--orange);margin-top:1rem}.demo-time-card>.demo-section-head{align-items:flex-start}.demo-time-card>.demo-section-head>.demo-time-total{display:grid;gap:.15rem;min-width:130px;padding:.75rem;background:var(--cream);border:1px solid var(--line);text-align:right}.demo-time-card>.demo-section-head>.demo-time-total span,.demo-time-card>.demo-section-head>.demo-time-total small{color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.demo-time-card>.demo-section-head>.demo-time-total strong{color:var(--navy);font-size:1.35rem;line-height:1}.demo-time-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:1.1rem 0 1.1rem;padding:1rem;background:#fffdf8;border:1px solid var(--line)}.demo-time-field{display:grid;gap:.3rem;min-width:0}.demo-time-field label{color:var(--navy);font-size:.66rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.demo-time-field input,.demo-time-field textarea{width:100%;min-height:46px;border:1px solid #c9c4ba;background:#fff;color:var(--ink);font:inherit}.demo-time-field textarea{resize:vertical;line-height:1.4}.demo-time-field input:focus,.demo-time-field textarea:focus{border-color:var(--orange);outline:3px solid rgba(229,109,18,.15)}.demo-time-total input{background:#f3eee4!important;color:var(--navy);font-weight:950}.demo-time-wide{grid-column:span 2}.demo-time-input-suffix{position:relative}.demo-time-input-suffix input{padding-right:3.2rem}.demo-time-input-suffix span{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:var(--muted);font-size:.7rem;font-weight:850}.demo-time-form-actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:end}.demo-time-entries{display:grid;gap:.6rem;border-top:1px solid var(--line);padding-top:1rem}.demo-time-entry{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.8rem;background:#fff;border:1px solid var(--line);border-left:4px solid var(--yellow)}.demo-time-entry-main{min-width:0}.demo-time-entry-top{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.demo-time-entry-top strong{color:var(--navy);font-size:1rem}.demo-time-entry p{margin:.2rem 0 0;color:var(--muted);font-size:.78rem}.demo-time-entry small{display:block;margin-top:.35rem;color:var(--ink);font-size:.82rem}.demo-time-hours{color:var(--orange);font-size:.86rem;font-weight:950;white-space:nowrap}.demo-time-created{display:block;margin-top:.45rem;color:var(--muted);font-size:.68rem;letter-spacing:.03em}.demo-time-entry-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem;flex-shrink:0}.button-danger{border-color:#bd3b2f!important;color:#9b2f26!important;background:#fff8f7!important}.button-danger:hover,.button-danger:focus-visible{border-color:#bd3b2f!important;background:#bd3b2f!important;color:#fff!important}.demo-hours-summary{display:block;margin-top:.35rem;color:var(--orange);font-size:.72rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.demo-dashboard-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:900px){.demo-dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-time-form{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-time-wide{grid-column:1/-1}}
@media(max-width:600px){.demo-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-time-card>.demo-section-head{display:grid;gap:.8rem}.demo-time-card>.demo-section-head>.demo-time-total{text-align:left;width:100%}.demo-time-form{grid-template-columns:1fr 1fr;padding:.85rem}.demo-time-wide{grid-column:1/-1}.demo-time-form-actions{display:grid;grid-template-columns:1fr;width:100%}.demo-time-form-actions .button{width:100%}.demo-time-entry{display:grid;gap:.7rem}.demo-time-entry-actions{justify-content:flex-start}.demo-time-entry-actions .small-button{flex:1}}
.demo-supplies-card{border-top:4px solid var(--yellow);margin-top:1rem}.demo-supply-count{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:.35rem .65rem;border:1px solid var(--line);background:var(--cream);color:var(--navy);font-size:.68rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.demo-supply-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:1rem 0}.demo-supply-summary>div{display:grid;gap:.15rem;padding:.8rem;background:var(--cream);border:1px solid var(--line)}.demo-supply-summary span,.demo-supply-summary small{color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.demo-supply-summary strong{color:var(--navy);font-size:1.3rem;line-height:1}.demo-supply-form{display:grid;grid-template-columns:2fr .65fr .85fr .9fr 1.2fr .9fr;gap:.7rem;margin:1rem 0;padding:1rem;background:#fffdf8;border:1px solid var(--line)}.demo-supply-field{display:grid;gap:.3rem;min-width:0}.demo-supply-field label:not(.demo-supply-receipt-picker){color:var(--navy);font-size:.64rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.demo-supply-field input,.demo-supply-field select,.demo-supply-field textarea{width:100%;min-height:46px;border:1px solid #c9c4ba;background:#fff;color:var(--ink);font:inherit}.demo-supply-field textarea{resize:vertical;line-height:1.4}.demo-supply-field input:focus,.demo-supply-field select:focus,.demo-supply-field textarea:focus{border-color:var(--orange);outline:3px solid rgba(229,109,18,.15)}.demo-supply-description{grid-column:span 2}.demo-supply-wide{grid-column:1/-1}.demo-supply-receipt-picker{display:flex;justify-content:space-between;align-items:center;gap:.8rem;min-height:48px;padding:.65rem .8rem;border:1px dashed var(--orange);background:#fffaf0;color:var(--orange);cursor:pointer}.demo-supply-receipt-picker span{font-size:.68rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.demo-supply-receipt-picker small{color:var(--muted);font-size:.72rem}.demo-supply-receipt-picker input{display:none}.demo-supply-form-actions{display:flex;flex-wrap:wrap;gap:.55rem}.demo-supply-lists{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.demo-supply-list{min-width:0;padding:1rem;background:#fffdf8;border:1px solid var(--line)}.demo-supply-list:first-child{border-top:3px solid var(--orange)}.demo-supply-list:last-child{border-top:3px solid var(--green)}.demo-supply-list-head{display:flex;justify-content:space-between;align-items:start;gap:1rem;margin-bottom:.7rem}.demo-supply-list-head h4{margin:.15rem 0 0;color:var(--navy);font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;font-size:1.45rem;text-transform:uppercase}.demo-supply-list-head>strong{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--navy);color:#fff;font-size:.8rem}.demo-supply-item{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;border-top:1px solid var(--line);padding:.8rem 0}.demo-supply-item:first-of-type{border-top:0}.demo-supply-main{min-width:0}.demo-supply-top{display:flex;align-items:start;gap:.55rem;flex-wrap:wrap}.demo-supply-top strong{color:var(--navy);font-size:.95rem}.demo-supply-status{display:inline-flex;border:1px solid;padding:.2rem .4rem;font-size:.6rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.demo-supply-needed{border-color:var(--orange);color:#b34f06;background:#fff7ed}.demo-supply-purchased{border-color:#3d7ca8;color:#276388;background:#f0f8fd}.demo-supply-reimbursed{border-color:var(--green);color:var(--green);background:#f2f8f3}.demo-supply-facts{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.45rem;color:var(--muted);font-size:.72rem}.demo-supply-facts span{display:inline-flex;gap:.2rem}.demo-supply-facts b{color:var(--navy)}.demo-supply-notes{margin:.45rem 0 0;color:var(--ink);font-size:.78rem;line-height:1.4}.demo-supply-receipt{display:block;margin-top:.45rem;color:var(--muted);font-size:.68rem}.demo-supply-actions{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.demo-supply-readonly{margin:1rem 0;padding:.8rem;background:var(--cream);border:1px solid var(--line)}
@media(max-width:900px){.demo-supply-form{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-supply-description{grid-column:1/-1}.demo-supply-wide{grid-column:1/-1}}
@media(max-width:600px){.demo-supply-summary{grid-template-columns:1fr 1fr}.demo-supply-summary>div:last-child{grid-column:1/-1}.demo-supply-form{grid-template-columns:1fr 1fr;padding:.85rem}.demo-supply-description,.demo-supply-wide{grid-column:1/-1}.demo-supply-form-actions{display:grid;grid-template-columns:1fr;width:100%}.demo-supply-form-actions .button{width:100%}.demo-supply-lists{grid-template-columns:1fr}.demo-supply-item{display:grid;gap:.65rem}.demo-supply-actions{justify-content:flex-start}.demo-supply-actions .small-button{flex:1}.demo-supply-receipt-picker{align-items:flex-start;display:grid;gap:.25rem}}

/* Job financials: fast owner read, thumb-friendly ledger */
.demo-financial-card{border-top:4px solid var(--navy);margin-top:1rem}.demo-financial-badge{display:inline-flex;align-items:center;min-height:32px;padding:.35rem .65rem;border:1px solid var(--line);background:var(--cream);color:var(--navy);font-size:.68rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.demo-financial-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:1rem 0 .7rem}.demo-financial-metric{display:grid;gap:.2rem;padding:.85rem;background:var(--cream);border:1px solid var(--line);min-width:0}.demo-financial-metric span,.demo-financial-metric small{color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.demo-financial-metric strong{color:var(--navy);font-size:1.4rem;line-height:1.1}.demo-financial-metric small{letter-spacing:0;text-transform:none;font-weight:700;line-height:1.35}.demo-financial-metric.financial-price{border-top:3px solid var(--yellow)}.demo-financial-metric.financial-balance{border-top:3px solid var(--orange);background:#fff8ef}.demo-financial-breakdown{display:flex;flex-wrap:wrap;gap:.5rem .9rem;padding:.75rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:.74rem}.demo-financial-breakdown span{display:inline-flex;gap:.25rem}.demo-financial-breakdown b{color:var(--navy)}.demo-financial-summary-form,.demo-financial-entry-form{display:grid;gap:.7rem;margin:1rem 0;padding:1rem;background:#fffdf8;border:1px solid var(--line)}.demo-financial-summary-form label,.demo-financial-entry-form label{margin:0;color:var(--navy);font-size:.64rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.demo-financial-summary-form input,.demo-financial-summary-form select,.demo-financial-summary-form textarea,.demo-financial-entry-form input,.demo-financial-entry-form select,.demo-financial-entry-form textarea{min-height:46px;border:1px solid #c9c4ba;background:#fff;color:var(--ink);font:inherit}.demo-financial-summary-form textarea,.demo-financial-entry-form textarea{resize:vertical;line-height:1.4}.demo-financial-form-actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.demo-financial-form-actions .muted{font-size:.72rem}.demo-financial-summary-note{margin:1rem 0;padding:.8rem;background:var(--cream);border:1px solid var(--line)}.demo-financial-summary-note p:last-child{margin:.35rem 0 0;white-space:pre-line}.demo-financial-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.demo-financial-panel{min-width:0;padding:1rem;background:#fffdf8;border:1px solid var(--line)}.demo-financial-panel h4{margin:.15rem 0 0;color:var(--navy);font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;font-size:1.4rem;text-transform:uppercase}.demo-financial-list{display:grid;gap:.6rem}.demo-financial-payment,.demo-financial-payable{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;border-top:1px solid var(--line);padding:.8rem 0}.demo-financial-payment-main,.demo-financial-payable-main{min-width:0}.demo-financial-payment-top,.demo-financial-payable-top{display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.demo-financial-payment-top>strong,.demo-financial-payable-top>strong{color:var(--navy);font-size:1rem;white-space:nowrap}.demo-financial-payment p{margin:.25rem 0 0;color:var(--muted);font-size:.76rem}.demo-financial-payment-kind{display:inline-flex;border:1px solid;padding:.2rem .4rem;font-size:.6rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.demo-financial-inbound{border-color:#3d7ca8;color:#276388;background:#f0f8fd}.demo-financial-outbound{border-color:var(--orange);color:#b34f06;background:#fff7ed}.demo-financial-payment-parties,.demo-financial-payable-facts{display:flex;flex-wrap:wrap;gap:.5rem .8rem;margin-top:.4rem;color:var(--muted);font-size:.72rem}.demo-financial-payment-parties b,.demo-financial-payable-facts b{color:var(--navy)}.demo-financial-payment small,.demo-financial-payable small{display:block;margin-top:.4rem;color:var(--ink);font-size:.78rem;line-height:1.4}.demo-financial-payable-top>div{display:grid;gap:.12rem;min-width:0}.demo-financial-payable-top>div>strong{color:var(--navy)}.demo-financial-payable-top>div>span{color:var(--muted);font-size:.72rem}.demo-financial-payable-top>strong{color:var(--orange)}.demo-financial-actions{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.demo-financial-actions .small-button{min-height:36px}
@media(max-width:900px){.demo-financial-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-financial-columns{grid-template-columns:1fr}}
@media(max-width:600px){.demo-financial-card>.demo-section-head{display:grid;gap:.75rem}.demo-financial-summary-grid{grid-template-columns:1fr 1fr}.demo-financial-metric strong{font-size:1.25rem}.demo-financial-breakdown{display:grid;gap:.35rem}.demo-financial-summary-form,.demo-financial-entry-form{padding:.85rem}.demo-financial-form-actions{display:grid;grid-template-columns:1fr}.demo-financial-form-actions .button{width:100%}.demo-financial-payment,.demo-financial-payable{display:grid;gap:.65rem}.demo-financial-actions{justify-content:flex-start}.demo-financial-actions .small-button{flex:1}}

/* Fluid, phone-first interaction pass */
html{scroll-behavior:smooth}.demo-content{animation:demo-page-in .22s ease-out both}.demo-card,.demo-metric,.demo-live-job-row,.demo-photo,.demo-time-entry,.demo-supply-item,.demo-financial-payment,.demo-financial-payable{transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}.button,.small-button,.demo-nav-item,.demo-status-step,.role-card,.demo-reset-button{transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.button:active,.small-button:active,.demo-status-step:active,.demo-nav-item:active,.role-card:active{transform:translateY(1px)}.demo-card:focus-within{border-color:#c8a331}.demo-status-rail{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.demo-status-step{scroll-snap-align:start;min-width:120px;min-height:72px}.demo-status-note-form{display:grid;gap:.55rem;margin-top:.8rem;padding:.85rem;background:#fffaf0;border:1px solid var(--line);border-left:4px solid var(--orange);animation:demo-panel-in .18s ease-out both}.demo-status-note-form label{margin:0;color:var(--navy);font-size:.66rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.demo-status-note-form textarea{min-height:82px;border:1px solid #c9c4ba;background:#fff;color:var(--ink);font:inherit;line-height:1.4}.demo-status-note-form textarea:focus{border-color:var(--orange);outline:3px solid rgba(229,109,18,.15)}.demo-status-note-actions{display:flex;flex-wrap:wrap;gap:.55rem}.demo-status-note-actions .button{min-height:46px}.demo-status-note-actions .muted{align-self:center}.demo-detail-head>.button{min-height:48px}.demo-composer,.demo-note-form,.demo-time-form,.demo-supply-form,.demo-financial-summary-form,.demo-financial-entry-form{scroll-margin-top:1rem}.demo-time-form input,.demo-time-form select,.demo-time-form textarea,.demo-supply-form input,.demo-supply-form select,.demo-supply-form textarea,.demo-financial-summary-form input,.demo-financial-summary-form select,.demo-financial-summary-form textarea,.demo-financial-entry-form input,.demo-financial-entry-form select,.demo-financial-entry-form textarea{border-radius:3px}.demo-financial-panel,.demo-supply-list{border-radius:3px}.demo-actions.demo-primary-actions .button{min-height:48px}.demo-bottom-nav{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
@keyframes demo-page-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes demo-panel-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:800px){.portal-shell{width:min(100% - 16px,1280px);padding-top:1.25rem;padding-bottom:calc(7.25rem + env(safe-area-inset-bottom))}.demo-app-head{margin-bottom:1rem}.demo-content{gap:.8rem}.demo-card{padding:1rem}.demo-section-head{align-items:flex-start;gap:.7rem}.demo-section-head h2{font-size:clamp(2rem,11vw,3.2rem)}.demo-card h3{font-size:1.32rem}.demo-actions.demo-primary-actions{gap:.65rem}.demo-actions.demo-primary-actions .button,.demo-status-note-actions .button{min-height:50px}.demo-nav-item{min-height:54px;padding:.65rem .3rem}.demo-nav-item span{font-size:1rem}.demo-bottom-nav{bottom:0;padding-top:.45rem;padding-bottom:calc(.45rem + env(safe-area-inset-bottom));box-shadow:0 -8px 24px rgba(13,42,71,.16)}.demo-status-rail{margin-right:-.2rem;padding-right:.2rem}.demo-status-note-actions{display:grid;grid-template-columns:1fr}.demo-status-note-actions .button{width:100%}}
@media(max-width:600px){.demo-detail-grid{gap:.55rem}.demo-detail-grid>div{padding:.45rem 0;border-bottom:1px solid var(--line)}.demo-detail-grid>div:last-child{border-bottom:0}.demo-header-side{gap:.4rem}.demo-assignee{font-size:.78rem}.demo-status-panel{padding-top:.85rem}.demo-status-step{min-width:116px}.demo-time-card>.demo-section-head>.demo-time-total{padding:.85rem}.demo-financial-summary-grid{gap:.5rem}.demo-financial-metric{padding:.7rem}.demo-financial-metric span{font-size:.58rem}.demo-financial-metric small{font-size:.68rem}.demo-financial-badge{justify-self:start}.demo-supply-count{justify-self:start}.demo-footer-note{margin-top:.9rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.demo-content,.demo-status-note-form{animation:none}.button,.small-button,.demo-nav-item,.demo-status-step,.role-card,.demo-reset-button,.demo-card,.demo-metric,.demo-live-job-row,.demo-photo,.demo-time-entry,.demo-supply-item,.demo-financial-payment,.demo-financial-payable{transition:none}}
.demo-status-action-note{display:grid;grid-column:1/-1;gap:.35rem;width:100%;margin:0;padding:.7rem;background:#fffaf0;border:1px solid var(--line);color:var(--navy);text-align:left;font-size:.66rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.demo-status-action-note textarea{width:100%;min-height:72px;margin-top:.1rem;border:1px solid #c9c4ba;background:#fff;color:var(--ink);font:inherit;line-height:1.4;text-transform:none;letter-spacing:0}.demo-status-action-note textarea:focus{border-color:var(--orange);outline:3px solid rgba(229,109,18,.15)}
.demo-detail-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}.demo-detail-head-actions .demo-badge{margin:0}.demo-export-view{display:grid;gap:1rem}.demo-export-head{align-items:flex-end}.demo-export-head h2{margin:.25rem 0 .4rem;color:var(--navy);font-family:"Arial Narrow",Impact,ui-sans-serif,sans-serif;font-size:clamp(2rem,5vw,4rem);line-height:.92;text-transform:uppercase}.demo-export-card{border-top:4px solid var(--yellow)}.demo-export-callout{display:grid;gap:.25rem;padding:1rem;background:#fffaf0;border:1px solid var(--line);border-left:4px solid var(--orange)}.demo-export-callout strong{color:var(--navy);font-size:1rem}.demo-export-callout span{color:var(--muted);font-size:.82rem;line-height:1.45}.demo-export-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:1rem 0}.demo-export-meta span{display:grid;gap:.2rem;padding:.7rem;background:var(--cream);border:1px solid var(--line);color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.demo-export-meta b{color:var(--navy);font-size:.78rem;letter-spacing:0;text-transform:none;overflow-wrap:anywhere}.demo-export-table-wrap{overflow-x:auto;border:1px solid var(--line)}.demo-export-table{width:100%;min-width:700px;border-collapse:collapse;background:#fff}.demo-export-table th,.demo-export-table td{padding:.75rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.76rem}.demo-export-table th{background:var(--navy);color:#fff;font-size:.62rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.demo-export-table tr:last-child td{border-bottom:0}.demo-export-table td:first-child{color:var(--navy);font-weight:950}.demo-export-copy-label{display:block;margin-top:1.2rem;color:var(--navy);font-size:.68rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.demo-export-text{width:100%;min-height:520px;margin-top:.45rem;padding:1rem;border:1px solid #c9c4ba;background:#fbfaf6;color:var(--ink);font:700 .78rem/1.5 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;resize:vertical;white-space:pre;overflow:auto}.demo-export-text:focus{border-color:var(--orange);outline:3px solid rgba(229,109,18,.15)}.demo-export-bottom-actions{margin-top:.75rem}.demo-export-bottom-actions .button{min-height:46px}
@media(max-width:800px){.demo-detail-head-actions{justify-content:flex-start;display:grid;width:100%;margin-top:.75rem}.demo-detail-head-actions .button{width:100%;min-height:48px}.demo-export-head{display:block}.demo-export-meta{grid-template-columns:1fr 1fr}.demo-export-card{padding:.9rem}.demo-export-text{min-height:640px;font-size:.72rem}.demo-export-bottom-actions{display:grid;grid-template-columns:1fr}.demo-export-bottom-actions .button{width:100%}}
@media(max-width:500px){.demo-export-meta{grid-template-columns:1fr}.demo-export-table th,.demo-export-table td{padding:.65rem;font-size:.7rem}}
.demo-export-view,.demo-export-card,.demo-export-table-wrap{min-width:0;max-width:100%}.demo-export-text{display:block;box-sizing:border-box;max-width:100%;width:100%}
.demo-work-order-number-row,.demo-order-number-line,.report-number-row{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem}.demo-work-order-number,.demo-order-number,.report-work-order-number{display:inline-flex;align-items:center;border:1px solid var(--orange);background:var(--navy);color:var(--yellow);padding:.35rem .55rem;font:900 .76rem/1 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;letter-spacing:.09em;white-space:nowrap}.demo-order-number{font-size:.68rem;padding:.26rem .42rem}.demo-direction-badge,.report-direction-badge{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fffaf0;color:var(--muted);padding:.25rem .42rem;font-size:.58rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.demo-copy-number{min-height:34px!important;padding:.35rem .5rem!important;font-size:.62rem!important}.demo-live-job-row>div:first-child{min-width:0}.demo-live-job-row strong{margin-top:.4rem}.demo-job-top .demo-order-number-line{margin-bottom:.5rem}.report-quick-reference{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;max-width:860px;margin:0 auto .75rem;padding:.7rem 1rem;border:1px solid var(--line);border-left:4px solid var(--orange);background:#fffaf0}.report-quick-reference span,.report-quick-reference em{color:var(--muted);font-size:.68rem;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.report-quick-reference strong{color:var(--navy);font:950 1.1rem/1 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;letter-spacing:.08em}.report-header-number{color:var(--navy);font:950 .92rem/1 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;letter-spacing:.07em}.demo-next-order-preview{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid var(--line);border-left:4px solid var(--orange);background:#fffaf0}.demo-next-order-preview div{display:grid;gap:.22rem}.demo-next-order-preview strong{color:var(--navy);font:950 1.25rem/1 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;letter-spacing:.08em}.demo-next-order-preview p{margin:0;color:var(--muted);font-size:.78rem;max-width:45ch}.demo-export-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-export-meta span:first-child{border-left:3px solid var(--orange)}
@media(max-width:700px){.demo-next-order-preview{display:grid;gap:.55rem}.demo-order-number-line{align-items:flex-start}.demo-live-job-row{gap:.75rem}.demo-live-job-row .demo-order-number{font-size:.62rem}.demo-export-meta{grid-template-columns:1fr 1fr}.report-quick-reference{align-items:flex-start;display:grid;gap:.25rem}.demo-work-order-number-row{align-items:flex-start}.demo-work-order-number-row .demo-direction-badge{margin-top:.15rem}}
.next-work-order-preview{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem;margin:1rem 0;padding:.75rem 1rem;border-left:4px solid var(--orange);background:#fffaf0;color:var(--muted);font-size:.8rem}.next-work-order-preview strong{color:var(--navy);font:950 1rem/1 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;letter-spacing:.08em}.next-work-order-preview span{font-size:.72rem}@media(max-width:700px){.next-work-order-preview{display:grid;gap:.25rem}}
.demo-reference-badge{display:inline-flex;align-items:center;border:1px solid #d7ad25;background:#fff9e5;color:#7b5b00;padding:.2rem .42rem;font-size:.62rem;font-weight:950;letter-spacing:.05em;text-transform:uppercase;overflow-wrap:anywhere}.demo-copy-reference{border-color:#d7ad25;color:#7b5b00}.job-reference-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem .7rem;align-items:end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.job-reference-form label{margin:0;grid-column:1/-1}.job-reference-form .form-message{grid-column:1/-1;margin:0}.job-reference-form .small-button{min-height:40px}@media(max-width:600px){.demo-reference-badge{max-width:100%;white-space:normal}.job-reference-form{grid-template-columns:1fr}.job-reference-form .small-button{width:100%}}
.portal-brand-copy em{display:block;color:var(--yellow);font-size:.5rem;font-style:normal;font-weight:850;letter-spacing:.12em;margin-top:.18rem;text-transform:uppercase}.portal-entry-slogan{margin:-.25rem 0 1rem;color:var(--orange);font-size:.78rem;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.report-slogan-inline{color:var(--orange)!important;font-weight:950!important;letter-spacing:.1em!important}.report-slogan{margin:.15rem 0 .25rem;color:var(--orange);font-size:.68rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
