:root{--ink:#14202a;--muted:#6e767b;--paper:#f2efe9;--card:#fffefb;--line:#ddd9d1;--red:#ef7617;--red2:#cf5f08;--amber:#b97920;--green:#32735f;--blue:#3c647d;--shadow:0 16px 42px rgba(20,27,32,.12)}
    *{box-sizing:border-box}html{background:var(--paper)}body{margin:0;background:radial-gradient(circle at 82% -12%,rgba(239,118,23,.09),transparent 32rem),var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body.locked{overflow:hidden}
    button,input,select,textarea{font:inherit}button,select{cursor:pointer}.shell{width:min(1420px,calc(100% - 64px));margin:auto}
    .topbar{height:62px;padding:0 18px;background:#101a22;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:3px solid var(--red);position:sticky;top:0;z-index:30;overflow:hidden}
    .brandlogo{display:block;width:100px;height:48px;object-fit:contain}
    .brand{display:flex;align-items:center;gap:12px;flex:0 0 auto}.mark{width:40px;height:40px;border:1px solid #64717a;display:grid;place-items:center;font:italic 20px Georgia,serif;transform:skew(-5deg)}.brandtext{display:grid;line-height:1}.brandtext strong{font:20px Georgia,serif;letter-spacing:3px}.brandtext span{margin-top:6px;color:#d8d1c5;font-size: 14px;letter-spacing:4px}.topactions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;flex:1}.topbtn{height:34px;border:1px solid #53616b;background:#172631;color:#e8ecee;border-radius:3px;padding:0 10px;font-size: 14px;font-weight:750;white-space:nowrap}.topbtn:hover{background:#273944}.orderalert{display:inline-flex;align-items:center;min-width:0;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;background:#fff3e8;color:#ef7617;border:1px solid #b75a14;padding:6px 9px;font:800 14px Arial,sans-serif;cursor:pointer}.orderalert[hidden]{display:none}.orderalert:hover{background:#ffe5d0;color:#cf5f08}.orderalert:focus-visible{outline:3px solid #ef7617;outline-offset:2px}.orderalert.attention-pulse{animation:notificationPulse 1.25s ease-in-out infinite;will-change:transform,background-color,box-shadow}@keyframes notificationPulse{0%,100%{background:#fff3e8;color:#ef7617;border-color:#b75a14;box-shadow:0 0 0 0 rgba(239,118,23,0);transform:scale(1)}50%{background:#ef7617;color:#fff;border-color:#ffc08b;box-shadow:0 0 0 8px rgba(239,118,23,.28),0 0 26px rgba(239,118,23,.62);transform:scale(1.035)}}@media(prefers-reduced-motion:reduce){.orderalert.attention-pulse{animation:none;background:#ef7617;color:#fff;border-color:#ffc08b;box-shadow:0 0 0 5px rgba(239,118,23,.25)}}.private{display:flex;align-items:center;gap:8px;color:#bdc4c8;font-size: 15px;margin-left:4px;white-space:nowrap}.lockicon{width:14px;height:12px;border:1.7px solid currentColor;border-radius:2px;position:relative}.lockicon:before{content:"";position:absolute;width:7px;height:6px;border:1.7px solid currentColor;border-bottom:0;border-radius:6px 6px 0 0;left:1.7px;top:-7px}.avatar{width:34px;height:34px;margin-left:4px;border-radius:50%;border:1px solid #53616b;background:#273642;color:white;font-weight:800;font-size: 15px;flex:0 0 auto}
    .hero{padding:48px 0 30px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.eyebrow,.kicker{margin:0 0 9px;color:var(--red);font-size: 14px;font-weight:850;letter-spacing:.2em}.hero h1{font:500 clamp(39px,5vw,60px)/1 Georgia,serif;letter-spacing:-.035em;margin:0}.intro{color:var(--muted);margin:12px 0 0}.primary,.dark,.ghost{min-height:44px;border-radius:4px;padding:0 18px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750}.primary{background:var(--red);color:white;box-shadow:0 7px 20px rgba(239,118,23,.24)}.primary:hover{background:var(--red2)}.dark{background:var(--ink);color:white}.ghost{border:1px solid var(--line);background:transparent}.plus{font-size:22px;font-weight:300;line-height:0}
    .stats{background:rgba(255,255,255,.75);border:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}.stat{min-height:105px;border:0;border-right:1px solid var(--line);background:transparent;padding:21px 26px;text-align:left;display:grid;align-content:center;position:relative}.stat:last-child{border:0}.stat:hover,.stat.sel{background:white}.stat.sel:after{content:"";position:absolute;left:22px;right:22px;bottom:-1px;height:3px;background:var(--red)}.num{font:31px/1 Georgia,serif}.num.red{color:var(--red)}.num.amber{color:var(--amber)}.label{color:var(--muted);font-size: 16px;font-weight:650;margin-top:8px}.mini{height:4px;background:#dedbd4;margin-top:10px}.mini i{height:100%;display:block}.mini.green i{background:#4f9c70}.mini.orange i{background:#df902f}.mini.warning i{background:#bd671f}.mini.red i{background:#b7392f}
    .workspace{padding:29px 0 38px}.toolbar{display:flex;gap:18px;justify-content:space-between;align-items:center}.search{height:44px;width:min(460px,100%);display:flex;align-items:center;gap:10px;padding:0 14px;background:#ffffffc9;border:1px solid var(--line);border-radius:4px}.search:before{content:"";width:13px;height:13px;border:1.7px solid var(--muted);border-radius:50%;box-shadow:6px 7px 0 -5px var(--muted);transform:rotate(-4deg)}.search input{width:100%;border:0;outline:0;background:transparent}.filters{display:flex;align-items:center;gap:8px}.filterword{font-size: 16px;font-weight:750;margin-right:4px}.filters select,.field input,.field select{height:42px;padding:0 12px;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:3px;outline:0}.filters select:focus,.field input:focus,.field select:focus,textarea:focus{border-color:var(--red)}
    .resultline{height:56px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size: 16px}.resultline button{border:0;background:transparent;color:var(--red);text-decoration:underline}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{border:1px solid var(--line);background:var(--card);transition:.2s;min-width:0;cursor:pointer}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#c8c2b8}.photo{height:205px;background-position:center;background-size:cover;position:relative;overflow:hidden}.photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,10,13,.35),transparent 47%,rgba(5,10,13,.34));pointer-events:none}.pill{display:inline-flex;align-items:center;gap:7px;background:#111a21e8;color:white;font-size: 14px;letter-spacing:.06em;text-transform:uppercase;padding:7px 10px;font-weight:800;position:relative;z-index:2}.photo .pill{position:absolute;left:13px;top:13px}.pill i{width:6px;height:6px;border-radius:50%;background:#75c5a4}.pill.wait i{background:#efb45a}.pill.plan i{background:#82a5b8}.pill.done i{background:#c9d1d3}.priority{position:absolute;z-index:2;top:13px;right:13px;padding:7px 9px;background:#f2e7d3;color:#7d4b0f;font-size: 14px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.priority.Urgent{background:#b7392f;color:white}.photos{position:absolute;z-index:2;right:12px;bottom:11px;background:#10171dcc;color:white;border-radius:14px;padding:5px 8px;font-size: 14px}.projectday{position:absolute;z-index:2;left:12px;bottom:11px;max-width:calc(100% - 95px);padding:8px 10px;background:#10171de8;color:white;border-left:3px solid #899399;box-shadow:0 5px 16px #0004}.projectday span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#cbd1d4;font-size: 14px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.projectday strong{display:block;margin-top:3px;font-size: 16px}.projectday.live{background:#173f31ed;border-color:#70c69f}.projectday.live span{color:#a8e6c8}.projectday .livepulse{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#70c69f;box-shadow:0 0 0 4px #70c69f2b;animation:livepulse 1.5s infinite}@keyframes livepulse{50%{box-shadow:0 0 0 8px #70c69f05}}.body{padding:20px 21px 18px}.titleline{display:flex;justify-content:space-between;gap:10px;align-items:center}.titleline h2{font:500 24px Georgia,serif;margin:0}.titleline p{margin:5px 0 0;color:var(--muted);font-size: 16px}.chev{font:28px Georgia,serif;color:#7b8083}.progresshead{display:flex;justify-content:space-between;color:var(--muted);font-size: 15px;margin-top:20px}.progresshead strong{color:var(--ink)}.track{height:6px;background:#e8e4dd;margin-top:7px}.track i{height:100%;display:block;background:var(--red)}.laborbudget{margin-top:11px;padding:9px 10px;background:#f5f2ec}.laborbudget div{display:flex;justify-content:space-between;gap:8px;font-size: 14px;color:var(--muted)}.laborbudget strong{color:var(--ink)}.laborbudget .estimatebar{margin-top:6px}.next{background:#f3f0e9;border-left:2px solid var(--red);padding:12px 14px;margin-top:19px}.next span{color:var(--red);font-size: 14px;font-weight:850;letter-spacing:.13em}.next p{font-size: 16px;line-height:1.35;margin:5px 0 0}.meta{border-top:1px solid #e9e5de;padding-top:14px;margin-top:16px;display:flex;gap:13px;color:var(--muted);font-size: 14px}.meta .updated{margin-left:auto}.empty{text-align:center;border:1px dashed #bbb4aa;padding:55px;color:var(--muted)}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0 34px;color:#888;font-size: 14px}
    .favoritebtn{position:absolute;z-index:4;right:12px;bottom:45px;width:34px;height:34px;border-radius:50%;border:1px solid #ffffff88;background:#10171dcc;color:white;font-size: 20px;line-height:1}.favoritebtn:hover{background:#273944}.favoritebtn.on{background:#b97920;border-color:#f2cf94;color:white}.favoritebtn:focus-visible{outline:3px solid white;outline-offset:2px}
    .layer{position:fixed;inset:0;z-index:100;display:none}.layer.open{display:flex}.shade{position:absolute;inset:0;border:0;background:#091016ad;backdrop-filter:blur(3px)}.drawer{position:relative;margin-left:auto;width:min(1100px,96vw);height:100%;overflow:auto;background:var(--paper);box-shadow:-20px 0 60px #0004;animation:slide .25s ease-out;scroll-behavior:smooth}@keyframes slide{from{transform:translateX(30px);opacity:.6}}.detailhero{height:290px;background-size:cover;background-position:center;position:relative;color:white;padding:22px 29px}.back{height:38px;border:1px solid #ffffff66;background:#0b121866;color:white;border-radius:3px;padding:0 12px}.coverchange{position:absolute;right:25px;top:22px;height:38px;border:1px solid #ffffff66;background:#0b1218b8;color:white;border-radius:3px;padding:0 12px;display:flex;align-items:center;font-size: 15px;font-weight:750;cursor:pointer}.coverchange input{display:none}.detailhead{position:absolute;left:30px;right:30px;bottom:24px}.detailhead h2{font:500 43px/1 Georgia,serif;margin:14px 0 5px}.detailhead p{margin:0;color:#d9ddde;font-size: 17px}.detailbody{padding:0 25px 25px}.detailnav{position:sticky;top:0;z-index:7;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 -25px 25px;padding:13px 25px;background:#101a22;border-bottom:3px solid var(--red)}.detailnav button{width:100%;min-width:0;min-height:42px;border:1px solid #5a666e;background:#17232c;color:white;padding:7px 8px;font-size: 14px;font-weight:850;line-height:1.2;letter-spacing:.045em;text-transform:uppercase;cursor:pointer;white-space:normal}.detailnav button:hover,.detailnav button:focus-visible{background:var(--red);border-color:var(--red);outline:0}.detailsectionanchor{scroll-margin-top:124px}.panel{background:var(--card);border:1px solid var(--line);padding:22px;margin-bottom:18px}.sectitle{display:flex;justify-content:space-between;align-items:start;margin-bottom:18px}.sectitle .kicker{font-size: 14px;margin-bottom:6px}.sectitle h3{font:500 26px Georgia,serif;margin:0}.big{font:500 35px Georgia,serif;color:var(--red)}.range{width:100%;accent-color:var(--red)}.milestones{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:17px 0 22px}.mile{border:0;background:transparent;color:var(--muted);font-size: 14px;display:grid;justify-items:center;gap:6px}.mile b{width:23px;height:23px;border:1px solid #c7c2ba;border-radius:50%;display:grid;place-items:center;color:transparent}.mile.on{color:var(--ink);font-weight:750}.mile.on b{background:var(--green);color:white;border-color:var(--green)}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:6px;color:var(--muted);font-size: 14px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin:12px 0}.field input,.field select,.field textarea{width:100%;font-size: 17px;text-transform:none;letter-spacing:0}.field textarea{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:10px 12px;resize:vertical;outline:0}.count{min-width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e9e5de;font-size: 15px;font-weight:750}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.galleryitem,.upload{aspect-ratio:4/3;position:relative;overflow:hidden;background:#e9e5de}.galleryitem img{width:100%;height:100%;object-fit:cover}.centralphoto{display:block}.centralbadge{position:absolute;left:7px;bottom:7px;background:#173f31e8;color:#bce8d3;padding:6px 8px;font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.remove{position:absolute;right:7px;top:7px;width:28px;height:28px;border-radius:50%;border:0;background:#10171dcc;color:white}.setcover{position:absolute;left:7px;bottom:7px;height:27px;border:0;background:#10171dcc;color:white;padding:0 8px;font-size: 14px;border-radius:2px}.setcover.current{background:var(--green)}.upload{border:1px dashed #b6afa4;display:grid;place-content:center;text-align:center;gap:5px;color:var(--muted);cursor:pointer}.upload input{display:none}.upload strong{font-size: 15px;color:var(--ink)}.upload span{font-size: 14px}.hint{font-size: 14px;color:var(--muted)}.noteform{border:1px solid var(--line);background:#faf8f3;padding:11px}.noteform textarea{width:100%;border:0;outline:0;background:transparent;resize:vertical;line-height:1.5}.noteform button{display:block;margin-left:auto;min-height:36px}.notelist{display:grid;gap:9px;margin-top:14px}.note{display:grid;grid-template-columns:1fr auto;gap:12px;border:1px solid #e4e0d9;padding:13px}.note p{margin:0 0 7px;font-size: 16px;line-height:1.45}.note span{color:var(--muted);font-size: 14px}.note button{border:0;background:transparent;color:#888}.nothing{text-align:center;color:var(--muted);font-size: 16px;padding:15px}
    .detailnav{grid-template-columns:repeat(6,minmax(0,1fr));gap:0;padding:0 25px;box-shadow:0 8px 18px #101a2220}.detailnav>button,.detailmore>button{width:100%;min-width:0;height:48px;min-height:48px;border:0;border-bottom:3px solid transparent;background:transparent;color:#dce1e4;padding:0 9px;font-size: 14px;font-weight:850;line-height:1.2;letter-spacing:.045em;text-transform:uppercase;cursor:pointer;white-space:nowrap}.detailnav>button:hover,.detailnav>button:focus-visible,.detailmore>button:hover,.detailmore>button:focus-visible,.detailnav>button.active{background:#17232c;color:#fff;border-color:transparent;border-bottom-color:var(--red);outline:0}.detailmore{position:relative;min-width:0}.detailmoremenu{position:absolute;right:0;top:48px;width:300px;padding:8px;background:#101a22;border:1px solid #53616a;border-top:3px solid var(--red);box-shadow:0 18px 35px #0005;display:grid;grid-template-columns:1fr 1fr;gap:6px}.detailmoremenu[hidden]{display:none}.detailmoremenu button{min-height:38px;border:1px solid #53616a;background:#17232c;color:#fff;padding:8px 10px;text-align:left;font-size: 14px;font-weight:800;text-transform:uppercase;cursor:pointer}.detailmoremenu button:hover,.detailmoremenu button:focus-visible{background:var(--red);border-color:var(--red);outline:0}.detailsectionanchor{scroll-margin-top:72px}.detailcompactsection{margin-bottom:10px;border:1px solid var(--line);background:var(--card);transition:border-color .18s ease,box-shadow .18s ease}.detailcompactsection.expanded{border-color:#cfc8bd;box-shadow:0 7px 20px #14202a0b}.detailcollapsebutton{width:100%;min-height:60px;border:0;border-left:4px solid #c8c3ba;background:var(--card);color:var(--ink);padding:10px 16px 10px 14px;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left}.detailcollapsebutton:hover,.detailcollapsebutton:focus-visible{background:#faf7f1;border-left-color:var(--red);outline:0}.expanded>.detailcollapsebutton{border-left-color:var(--red);background:#faf7f1}.detailcollapseheading{display:grid;gap:2px;min-width:0}.detailcollapseheading small{font-size:11px;font-weight:850;letter-spacing:.11em;color:var(--muted)}.detailcollapseheading strong{font:500 20px Georgia,serif}.detailcollapseaction{display:flex;align-items:center;gap:10px;flex:0 0 auto;color:var(--muted);font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.detailcollapseaction i{width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}.expanded>.detailcollapsebutton .detailcollapseaction i{transform:rotate(225deg) translate(-2px,-2px)}.detailcollapsebody[hidden]{display:none}.detailcollapsebody>.panel{margin:0;border:0;border-top:1px solid var(--line)}
    @media(min-width:701px){.detailnav{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}}.detailmore>button.active{background:#17232c;color:#fff;border-bottom-color:var(--red)}
    .noteformfoot{display:flex;align-items:center;justify-content:space-between;gap:12px}.noteformfoot button{min-height:36px}.noteactions{display:flex;align-items:center;gap:7px}.noteactions select{height:32px;border:1px solid var(--line);background:#f7f4ee;color:var(--ink);padding:0 8px;font-size: 14px;font-weight:800}.noteactions button{border:0;background:transparent;color:#888}
    .projectupdateform{border:1px solid var(--line);background:#f7f4ee;padding:16px;margin-bottom:22px}.projectupdateform textarea{min-height:105px}.updateformfoot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:11px}.updateactions{display:flex;align-items:center;gap:8px}.textassist{height:40px;border:1px solid #a9a094;background:white;color:var(--ink);padding:0 13px;font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.textassist:hover{border-color:var(--red);color:var(--red)}.textreview{border:1px solid #b9b1a5;background:white;padding:15px;margin-top:13px}.textreview[hidden]{display:none}.textreview h4{font:600 20px Georgia,serif;margin:0 0 5px}.textreview>p{font-size: 15px;color:var(--muted);margin:0 0 12px}.textcompare{display:grid;grid-template-columns:1fr 1fr;gap:10px}.textchoice{border:1px solid var(--line);background:#f8f6f1;padding:12px}.textchoice.recommended{border-color:#91a99e;background:#f2f8f4}.textchoice span{display:block;font-size: 14px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.textchoice.recommended span{color:#357255}.textchoice p{font-size: 16px;line-height:1.5;white-space:pre-wrap;margin:0 0 12px}.textchoice button{width:100%;height:37px;border:0;background:#26343d;color:white;font-size: 14px;font-weight:850}.textchoice.recommended button{background:#357255}.updateupload{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size: 15px;font-weight:800;cursor:pointer}.updateupload input{position:absolute;opacity:0;pointer-events:none}.updateupload span{display:inline-grid;place-items:center;width:31px;height:31px;background:#e4ded4;border-radius:50%;font-size: 20px}.projectupdatesloaderror{margin:14px 0;padding:14px 15px;border-left:4px solid var(--orange);background:#fff5e9}.projectupdatesloaderror strong{display:block;font-size:17px}.projectupdatesloaderror p{margin:5px 0 11px;color:var(--muted);line-height:1.45}.updatetimeline{display:grid;gap:0}.projectupdate{display:grid;grid-template-columns:85px 1fr;gap:18px;padding:0 0 26px;position:relative}.projectupdate:before{content:"";position:absolute;left:70px;top:9px;bottom:-2px;width:1px;background:#d7d1c7}.projectupdate:last-child:before{display:none}.updatedate{text-align:right;color:var(--muted);font-size: 14px;line-height:1.45}.updatedate strong{display:block;color:var(--ink);font-size: 15px}.updatecontent{position:relative;border:1px solid var(--line);background:white;padding:16px}.updatecontent:before{content:"";position:absolute;left:-23px;top:7px;width:10px;height:10px;border-radius:50%;background:var(--red);border:4px solid var(--paper)}.updateauthor{display:block;color:var(--red);font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;margin-bottom:9px}.updatetext{white-space:pre-wrap;font-size: 17px;line-height:1.55;margin:0}.updatebuttons{display:flex;gap:6px;flex-wrap:wrap;margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}.updatebuttons button{border:1px solid var(--line);background:#f7f4ee;height:31px;padding:0 9px;font-size: 14px;font-weight:850;text-transform:uppercase}.updatebuttons .deleteupdate{color:#9b332c}.updateedit{display:grid;gap:9px;margin-top:12px;padding:12px;background:#f6f3ed;border:1px solid var(--line)}.updateedit[hidden]{display:none}.updateedit textarea{min-height:95px}.updateeditactions{display:flex;gap:7px;justify-content:flex-end}.updateeditactions button{height:35px;border:1px solid var(--line);background:white;padding:0 11px;font-size: 14px;font-weight:850}.updateeditactions .saveupdate{background:#26343d;color:white;border-color:#26343d}.updatephotos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:13px}.updatephotos a{display:block;aspect-ratio:4/3;background:#e5e1da;overflow:hidden}.updatephotos img{width:100%;height:100%;object-fit:cover;display:block;transition:.2s}.updatephotos a:hover img{transform:scale(1.025)}
    .timebox{background:#101a22;color:white;padding:17px;margin-bottom:14px}.timebox.running{border-left:4px solid #70c69f}.timehead{display:flex;align-items:center;justify-content:space-between;gap:15px}.timehead strong{font:500 28px Georgia,serif}.timehead span{display:block;color:#b8c1c6;font-size: 14px;margin-top:4px}.liveclock{font:500 32px/1 Georgia,serif;color:#8bd3b4;letter-spacing:.04em}.timerform{display:grid;grid-template-columns:1fr 1.4fr auto;gap:8px;margin-top:14px}.timerform input,.timerform select{height:40px;min-width:0;border:1px solid #51606b;background:#1c2a34;color:white;padding:0 10px;outline:0}.timerform input::placeholder{color:#9ba7ae}.startbtn,.stopbtn{height:40px;border:0;padding:0 15px;font-weight:800;border-radius:3px}.startbtn{background:#70c69f;color:#10221b}.stopbtn{background:var(--red);color:white}.timewarning{padding:12px;background:#f5e9d8;color:#78501b;font-size: 15px;margin-bottom:12px}.timestats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:13px}.timestat{background:#f2efe8;padding:12px}.timestat strong{display:block;font:500 23px Georgia,serif}.timestat span{color:var(--muted);font-size: 14px;text-transform:uppercase;letter-spacing:.08em}.timelist{display:grid;gap:7px}.timeentry{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border:1px solid #e4e0d9;padding:11px}.timeentry strong{font-size: 15px}.timeentry p{font-size: 14px;color:var(--muted);margin:4px 0 0}.timeentry .duration{font-weight:800;font-size: 16px}.timeentry button{border:0;background:transparent;color:#888}
    .timeeditwrap{border:1px solid #cfc8bd;background:#f7f4ee;padding:14px;margin:7px 0 12px}.timeeditwrap h4{font:500 20px Georgia,serif;margin:0 0 7px}.timeeditgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.timeeditactions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.timeentryactions{display:flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.timeentryactions button{border:1px solid var(--line);background:#f7f4ee;padding:6px 8px;font-size: 14px;font-weight:800}.timeentryactions .partnerhoursedit{border-color:var(--orange);background:var(--orange);color:#fff;white-space:nowrap}.timeentryactions .danger{color:var(--red)}.timedaygroup{border:1px solid var(--line);margin-top:10px}.timedayhead{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f1eee8;border-bottom:1px solid var(--line);padding:10px 12px}.timedayhead strong{font-size: 16px}.timedayhead span{font-weight:850;color:#1d612a}.timedaygroup .timeentry{border:0;border-bottom:1px solid #e4e0d9}.timedaygroup .timeentry:last-child{border-bottom:0}
    .ratelist{display:grid;gap:8px}.rateitem{display:grid;grid-template-columns:1.1fr 1.3fr 130px 90px auto;gap:9px;align-items:end;border:1px solid var(--line);padding:12px;background:#faf8f3}.rateitem .field{margin:0}.rateactions{display:flex;gap:6px}.rateactions button{height:42px;border:1px solid var(--line);background:white;padding:0 11px;font-size: 14px;font-weight:800}.rateactions .danger{color:var(--red)}.projecttypes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.projecttype{display:grid;grid-template-columns:1fr minmax(150px,.8fr);gap:10px;align-items:center;border:1px solid var(--line);padding:11px}.projecttype strong{font-size: 16px}.projecttype select{height:39px;border:1px solid var(--line);background:white;padding:0 9px}
    .worktypelist{display:flex;gap:8px;flex-wrap:wrap}.worktypeform{display:grid;grid-template-columns:minmax(180px,1fr) 80px auto;gap:7px;align-items:end;border:1px solid var(--line);padding:10px;background:#faf8f3;min-width:min(100%,430px)}.worktypeform .field{margin:0}.estimatehead{display:grid;grid-template-columns:minmax(0,1fr) 95px 95px 70px 105px;gap:9px;padding:0 10px 7px;color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase}.estimaterow{display:grid;grid-template-columns:minmax(0,1fr) 95px 95px 70px 105px;gap:9px;align-items:center;border:1px solid var(--line);padding:11px 10px;margin-top:7px}.estimatename strong{display:block;font-size: 16px}.estimatename small{display:block;color:var(--muted);font-size: 14px;margin-top:4px}.estimateinput{height:38px;width:100%;border:1px solid var(--line);padding:0 8px}.estimatebar{height:9px;background:#e6e2db;margin-top:8px;overflow:hidden}.estimatebar i{display:block;height:100%;min-width:0}.estimatebar.green i{background:#4f9c70}.estimatebar.orange i{background:#df902f}.estimatebar.warning i{background:#bd671f}.estimatebar.red i{background:#b7392f}.estimatepercent{font-weight:850;text-align:right}.clocktoggle{display:flex;align-items:center;gap:7px;font-size: 14px;font-weight:850;text-transform:uppercase;color:var(--ink)}.clocktoggle input{width:18px;height:18px;accent-color:var(--green)}.calcmode{display:block;margin-top:4px;color:var(--muted);font-size: 14px}.calcmode.nacalculation{color:#a45c17;font-weight:850}.managementbadge{display:inline-block;margin-left:6px;padding:3px 5px;background:#17232c;color:#fff;font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.estimatesummary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.estimatesummary div{background:#f2efe8;padding:11px}.estimatesummary strong{display:block;font:500 22px Georgia,serif}.estimatesummary span{font-size: 14px;color:var(--muted);text-transform:uppercase}.estimatelegend{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size: 14px}.estimatelegend i{display:inline-block;width:9px;height:9px;margin-right:4px;border-radius:50%}
    @media(max-width:700px){.projectupdate{grid-template-columns:1fr;padding-left:17px}.projectupdate:before{left:0}.updatecontent:before{left:-23px}.updatedate{text-align:left}.updatephotos,.updateattachments{grid-template-columns:1fr 1fr}.updateformfoot{align-items:stretch;flex-direction:column}.updateactions{display:grid;grid-template-columns:1fr}.updateformfoot .primary,.textassist{width:100%}.textcompare{grid-template-columns:1fr}}
    .employeeprofileline{display:flex;align-items:center;gap:12px;margin:12px 0;padding:12px;background:#f5f1ea;border:1px solid var(--line)}.employeeprofilephoto,.updateavatar{width:48px;height:48px;border-radius:50%;background:#273642;color:#fff;display:grid;place-items:center;font-size: 15px;font-weight:850;overflow:hidden;flex:0 0 auto}.employeeprofilephoto img,.updateavatar img{width:100%;height:100%;object-fit:cover}.employeeprofileline strong,.employeeprofileline span{display:block}.employeeprofileline span{margin-top:3px;color:var(--muted);font-size: 14px}.employeeprofileactions{display:flex;gap:7px;flex-wrap:wrap;margin-left:auto}.customerpermissions{margin:16px 0;padding:14px;border-left:4px solid var(--red);background:#fff8ef}.customerpermissions h4{font:600 20px Georgia,serif;margin:0 0 5px}.customerpermissions>.hint{margin-bottom:10px}.customerstatus{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px;padding:5px 8px;font-size: 14px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.customerstatus.internal{background:#ece9e3;color:#60676b}.customerstatus.pending{background:#fff0d9;color:#8a4d12}.customerstatus.published{background:#e5f3eb;color:#256749}.customerstatus.rejected{background:#f8e6e4;color:#92372f}.customerstatus.milestone{margin-left:6px;background:#fff0dc;color:#a74f0b}.updateauthorline{display:flex;align-items:center;gap:9px;margin-bottom:10px}.updateauthorline .updateavatar{width:36px;height:36px}.updateauthorline .updateauthor{margin:0}.reviewactions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.reviewactions button{min-height:34px;border:0;padding:0 11px;font-size: 14px;font-weight:850;text-transform:uppercase}.reviewactions .approveupdate{background:#32735f;color:#fff}.reviewactions .rejectupdate{background:#8f352e;color:#fff}@media(max-width:700px){.employeeprofileline{align-items:flex-start;flex-wrap:wrap}.employeeprofileactions{width:100%;margin-left:0}.employeeprofileactions>*{flex:1}}
    .dialoglayer{align-items:center;justify-content:center;padding:20px}.dialog{position:relative;width:min(590px,96vw);max-height:calc(100dvh - 40px);display:flex;flex-direction:column;overflow:hidden;background:var(--card);box-shadow:0 25px 80px #0005}.dialog.projectdialog{width:min(780px,96vw)}.dialog.orderdialog{width:min(1080px,98vw)}.dialoghead{display:flex;flex:0 0 auto;align-items:start;justify-content:space-between;padding:24px 26px 18px;border-bottom:1px solid var(--line)}.dialoghead h2{font:500 31px Georgia,serif;margin:0}.dialoghead button{border:0;background:transparent;font-size:24px}.dialogbody{min-height:0;overflow:auto;padding:18px 26px}.dialogfoot{display:flex;flex:0 0 auto;justify-content:flex-end;gap:9px;padding:16px 26px 22px;border-top:1px solid var(--line);background:var(--card);box-shadow:0 -8px 18px #101a220c}.orderdialog>.dialogfoot{flex-wrap:wrap}.messagepopup{position:fixed;z-index:500;right:22px;bottom:22px;width:min(520px,calc(100vw - 32px));display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:#101a22;color:#fff;border-left:5px solid var(--red);box-shadow:0 16px 42px #0005}.messagepopup[hidden]{display:none}.messagepopup p{flex:1;white-space:pre-wrap;font-size:17px;line-height:1.5;margin:0}.messagepopup button{flex:0 0 auto;border:0;background:transparent;color:#fff;font-size:24px;line-height:1;padding:0;cursor:pointer}@media(max-width:600px){.messagepopup{left:16px;right:16px;bottom:76px;width:auto}}
    .newprojectteamleader{margin-top:18px;padding:18px;border:1px solid var(--line);border-top:4px solid var(--red);background:#faf8f3}.newprojectteamleader h3{margin:0;font:500 24px Georgia,serif}.newprojectteamleader .hint{margin:6px 0 12px;line-height:1.45}.inlinefind{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.inlinefind .field{margin:0}.teamleaderchoices{display:grid;gap:7px;margin:10px 0}.teamleaderchoice{display:flex;gap:10px;align-items:flex-start;padding:11px;border:1px solid var(--line);background:#fff;cursor:pointer}.teamleaderchoice.selected{border-color:var(--green);box-shadow:inset 4px 0 var(--green)}.teamleaderchoice input{margin-top:2px;accent-color:var(--green)}.teamleaderchoice strong{display:block;font-size: 16px}.teamleaderchoice small{display:block;margin-top:3px;color:var(--muted);font-size: 14px;line-height:1.4}.newprojectresult{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.newprojectresult strong{font-size: 16px}.newprojectresult p{margin:3px 0 0;color:var(--muted);font-size: 14px}.newprojectselected{margin:10px 0 0;padding:11px;background:#eef8f3;border-left:4px solid var(--green);font-size: 15px}.newprojectselected strong{display:block}.newprojectselected span{display:block;margin-top:3px;color:var(--muted);font-size: 14px}.newprojectsearchresults{max-height:190px;overflow:auto}.newprojectsearchresults .nothing,.newprojectsearchresults .hint{margin:0}.newprojectmode{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}@media(max-width:700px){.inlinefind{grid-template-columns:1fr}.inlinefind button{width:100%}}
    .newcustomermodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:14px 0}.newcustomermode{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid var(--line);background:#fff;cursor:pointer}.newcustomermode.selected{border-color:var(--green);box-shadow:inset 4px 0 var(--green)}.newcustomermode input{margin-top:2px;accent-color:var(--green)}.newcustomermode strong,.newcustomermode small{display:block}.newcustomermode strong{font-size: 14px}.newcustomermode small{margin-top:3px;color:var(--muted);font-size: 14px;line-height:1.35}.newcustomerpanel{padding:13px;border:1px solid var(--line);background:#fff}.newcustomerpanel[hidden]{display:none}.newcustomergrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.newcustomergrid .wide{grid-column:1/-1}@media(max-width:700px){.newcustomermodes,.newcustomergrid{grid-template-columns:1fr}.newcustomergrid .wide{grid-column:auto}}
    .hrdrawer{width:min(1540px,99vw)}.hrtop{position:sticky;top:0;z-index:20;background:#101a22;color:white;padding:15px 24px 0}.hrtoprow{display:flex;justify-content:space-between;gap:20px;align-items:start}.hrtop h2{font:500 30px Georgia,serif;margin:0;line-height:1.05}.hrtop p{color:#bac2c7;margin:4px 0 0;font-size: 15px}.hrtop .kicker{font-size: 14px}.hrclose{border:1px solid #53616b;background:transparent;color:white;width:34px;height:34px;font-size:20px}.hrtabs{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0 4px;margin-top:10px;overflow:visible}.hrtab{display:flex;align-items:center;justify-content:center;min-width:0;min-height:38px;border:0;background:transparent;color:#aeb8bd;padding:6px 4px;border-bottom:3px solid transparent;white-space:normal;text-align:center;line-height:1.15;font-weight:750;font-size: 14px}.hrtab.on{color:white;border-color:var(--red)}.hrbody{padding:20px 18px}.hrstats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.hrstat{background:var(--card);border:1px solid var(--line);padding:16px}.hrstat strong{display:block;font:500 29px Georgia,serif}.hrstat span{font-size: 14px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.hrgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.hrcard{background:var(--card);border:1px solid var(--line);padding:18px}.hrcard h3{font:500 23px Georgia,serif;margin:0 0 14px}.articlelistpanel{padding:12px 14px}.articlelisttop{display:grid;grid-template-columns:minmax(250px,1fr) minmax(280px,.8fr) auto;gap:14px;align-items:center}.articlelisttop h3{margin:0}.articlelisttop .field{margin:0}.articlelist{margin-top:12px;border:1px solid var(--line);overflow:auto}.articlelisthead,.articlerow{display:grid;grid-template-columns:90px 105px minmax(220px,1.6fr) 70px 90px 90px minmax(145px,1fr) 92px;gap:8px;align-items:center;min-width:950px}.articlelisthead{padding:7px 10px;background:#101a22;color:#fff;font-size: 14px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.articlerow{min-height:45px;padding:6px 10px;border-top:1px solid #e6e1d9;background:#fff;font-size: 14px}.articlerow:first-child{border-top:0}.articlerow:nth-child(even){background:#faf8f3}.articlerow.inactive{opacity:.55}.articlerow .articlename{font-size: 15px;font-weight:800}.articlerow .articleprice{text-align:right;font-variant-numeric:tabular-nums}.articlekind{display:inline-flex;width:max-content;padding:4px 7px;border-radius:12px;background:#e9e5de;font-size: 14px;font-weight:850;text-transform:uppercase}.articlekind.service{background:#fff0e4;color:#a24712}.articlerow .smallbtn{min-height:31px;padding:0 9px}.employeesection{margin-top:14px}.employeesection.inactive{margin-top:26px;padding-top:20px;border-top:4px solid #8b9499}.employeesectionhead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;background:#eef3ee;color:#274d34;font-size: 15px;text-transform:uppercase;letter-spacing:.06em}.employeesection.inactive .employeesectionhead{background:#ecebe8;color:#60686d}.employeesectionhead span{display:inline-grid;place-items:center;min-width:27px;height:27px;border-radius:14px;background:#fff;font-weight:900}.employeeitem,.leaveitem,.clockitem{border:1px solid #e3ded6;padding:12px;margin-top:8px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.employeeitem.inactive{background:#f7f6f3}.employeeitem p,.leaveitem p,.clockitem p{color:var(--muted);font-size: 14px;margin:5px 0 0}.role,.leavebadge{display:inline-flex;padding:4px 7px;border-radius:12px;background:#e9e5de;color:#596267;font-size: 14px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.leavebadge.pending{background:#f4e5cb;color:#7b5319}.leavebadge.approved{background:#e2f0e9;color:#26654e}.leavebadge.rejected{background:#f1dddd;color:#843229}.schedule{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.schedule label{display:grid;gap:4px;text-align:center;color:var(--muted);font-size: 14px;font-weight:800;text-transform:uppercase}.schedule input{width:100%;height:38px;border:1px solid var(--line);text-align:center}.checkrow{display:flex;align-items:center;gap:8px;font-size: 16px;margin:12px 0}.hrmessage{padding:14px;border-left:3px solid var(--amber);background:#f5ead9;color:#73501d;font-size: 15px;line-height:1.5}.decision{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.kiosk{width:min(760px,97vw)}.kioskbody{padding:22px 26px;max-height:75vh;overflow:auto}.kioskwelcome{padding:16px;background:#101a22;color:white;margin-bottom:15px}.kioskwelcome strong{font:500 25px Georgia,serif}.kioskwelcome span{display:block;color:#b9c3c8;font-size: 15px;margin-top:5px}.kioskgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pininput{font-size:22px!important;letter-spacing:.35em;text-align:center}.activepulse{width:8px;height:8px;border-radius:50%;background:#66bd95;box-shadow:0 0 0 5px #66bd9524;display:inline-block;margin-right:8px}.dangertext{color:var(--red);font-size: 15px}.loading{padding:45px;text-align:center;color:var(--muted)}
    @media(max-width:700px){.hrtabs{grid-template-columns:repeat(3,minmax(0,1fr))}.hrtab{font-size: 14px}.hrtop{padding-left:16px;padding-right:16px}.hrbody{padding-left:16px;padding-right:16px}}
    .internalalert{background:#fff4df;color:#9a551d;border-color:#b8783f}.internalmessage{border:1px solid var(--line);padding:14px;display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:9px;background:#fff}.internalmessage.unread{border-left:4px solid #ef7617;background:#fff8ec}.internalmessage p{white-space:pre-wrap;margin:7px 0;font-size: 16px;line-height:1.5}.internalmessage small{color:var(--muted);font-size: 14px}.internalactions{display:flex;gap:6px;align-items:flex-start}.mentionhelp{margin:7px 0 0;color:var(--muted);font-size: 14px}.mentionhelp code{background:#f0ece5;padding:2px 5px;color:#8d3a2e}.mentionmenu{display:grid;border:1px solid #b9afa2;background:#fff;box-shadow:0 10px 28px #101a2226;margin-top:-1px;max-height:230px;overflow:auto;position:relative;z-index:8}.mentionmenu[hidden]{display:none}.mentionoption{display:grid;grid-template-columns:1fr auto;gap:12px;border:0;border-bottom:1px solid #eee8df;background:#fff;padding:11px 13px;text-align:left;cursor:pointer}.mentionoption:last-child{border-bottom:0}.mentionoption:hover,.mentionoption.active{background:#fff2e8}.mentionoption strong{font-size: 16px;color:var(--ink)}.mentionoption span{font-size: 14px;color:#a34b31;font-weight:800}@media(max-width:700px){.internalmessage{grid-template-columns:1fr}.internalactions{justify-content:flex-start}}
    .internalnotices{margin-top:16px}.internalthread{margin-top:9px;border:1px solid var(--line);background:#fff}.internalthread.unread{border-left:5px solid var(--red);background:#fff9f2}.internalthread>summary{position:relative;display:grid;grid-template-columns:minmax(170px,.75fr) minmax(220px,1.5fr) auto;gap:16px;align-items:center;min-height:76px;padding:12px 42px 12px 14px;list-style:none;cursor:pointer}.internalthread>summary::-webkit-details-marker{display:none}.internalthread>summary:after{content:'+';position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:23px;font-weight:900}.internalthread[open]>summary:after{content:'−'}.internalthread>summary>span:first-child{display:grid;min-width:0}.internalthread>summary strong{font-size:17px}.internalthread>summary small{margin-top:4px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.internalthread>summary .kicker{margin:0 0 4px;font-size:11px}.internalthreadpreview{overflow:hidden;color:#454e53;font-size:15px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.internalthreadmeta{display:grid;justify-items:end;gap:5px;color:var(--muted);font-size:13px;white-space:nowrap}.internalthreadmeta b{padding:4px 7px;border-radius:12px;background:#fff0e4;color:#9f4307;font-size:11px;text-transform:uppercase}.internalthreadbody{padding:14px;border-top:1px solid var(--line);background:#faf8f3}.internalbubbles{display:grid;gap:8px;max-height:390px;overflow:auto;padding:3px}.internalbubble{width:min(78%,620px);padding:10px 12px;border:1px solid #ded8cf;background:#fff}.internalbubble.incoming{justify-self:start;border-left:4px solid var(--red)}.internalbubble.own{justify-self:end;background:#eaf4ef;border-color:#c7ddd3}.internalbubble strong,.internalbubble time{display:block}.internalbubble p{margin:5px 0;white-space:pre-wrap;font-size:15px;line-height:1.45}.internalbubble time{color:var(--muted);font-size:12px}.internalreply{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;margin-top:12px}.internalreply textarea{width:100%;min-height:74px;resize:vertical;border:1px solid var(--line);background:#fff;padding:10px 12px}.internalreply>div{display:flex;gap:7px;align-items:center}.internalreply .smallbtn{white-space:nowrap}@media(max-width:760px){.internalthread>summary{grid-template-columns:1fr auto;gap:7px}.internalthreadpreview{grid-column:1/-1;grid-row:2}.internalthreadmeta{grid-column:2;grid-row:1}.internalreply{grid-template-columns:1fr}.internalreply>div{justify-content:flex-end}.internalbubble{width:92%}}
    .messagealert{cursor:pointer}.messageinbox{display:grid;gap:18px}.messagebucket{display:grid;gap:10px}.messagebuckethead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:6px;border-bottom:1px solid var(--line)}.messagebuckethead h3{margin:0;font:600 20px Georgia,serif}.messagebuckethead span{display:grid;place-items:center;min-width:27px;height:27px;padding:0 7px;border-radius:50%;background:#f2dfcb;color:#8f490f;font-size: 14px;font-weight:900}.compactbucket{margin-top:2px}.compactbucket .messagebuckethead h3{font-size: 17px;color:var(--muted)}.compactbucket .messagebuckethead span{height:24px;min-width:24px;background:#ece9e3;color:var(--muted)}.messagegroup{background:var(--card);border:1px solid var(--line);padding:14px}.messagegroup.unread{border-left:4px solid var(--red)}.messagegrouphead{display:flex;justify-content:space-between;gap:16px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:10px}.messagegrouphead h3{font:500 21px Georgia,serif;margin:0}.messagegrouphead p{color:var(--muted);font-size: 14px;margin:4px 0 0}.messagegroupstatus{display:grid;justify-items:end;gap:8px}.messagereadcheck{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid var(--line);background:#fff;color:var(--muted);font-size: 14px;font-weight:800;cursor:pointer}.messagereadcheck:hover{border-color:var(--orange);color:var(--ink)}.messagereadcheck input{width:16px;height:16px;accent-color:var(--green)}.messagecontext{background:#f2efe9;border-left:3px solid #b7aea2;padding:9px 11px;margin-bottom:10px;color:#5f676c;font-size: 14px;line-height:1.4}.messagebubbles{display:grid;gap:7px}.staffmessage{max-width:82%;padding:9px 11px;background:#edf2ef;border:1px solid #d5e2db;justify-self:end}.staffmessage.customer{background:#f6eee7;border-color:#ead4c8;justify-self:start}.staffmessage strong{display:block;font-size: 14px}.staffmessage p{white-space:pre-wrap;margin:4px 0;font-size: 15px;line-height:1.45}.staffmessage time{color:var(--muted);font-size: 14px}.staffreply{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.staffreply textarea{min-height:58px;border:1px solid var(--line);padding:9px;resize:vertical}.staffreply button{align-self:end}.notethreads{grid-column:1/-1;display:grid;gap:10px;margin-top:2px;padding-top:12px;border-top:1px solid var(--line)}.notethread{background:#f8f5ef;border-left:3px solid #ef7617;padding:12px}.notethread.unread{border-left-color:var(--red);box-shadow:inset 0 0 0 1px #ead4c8}.notethreadhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.notethreadhead strong{font-size: 14px}.notethreadhead span{font-size: 14px;color:var(--red);font-weight:850;text-transform:uppercase;letter-spacing:.06em}.notethread .staffreply{margin-top:10px}.notethread .staffreply textarea{min-height:58px;background:#fff}
    .messagegroup.compact{padding:0;background:#fbfaf7}.messagegroupsummary{position:relative;display:grid;grid-template-columns:minmax(180px,.9fr) minmax(200px,1.35fr) auto;gap:12px;align-items:center;min-height:46px;padding:7px 42px 7px 11px;cursor:pointer;list-style:none}.messagegroupsummary::-webkit-details-marker{display:none}.messagegroupsummary::after{content:"+";position:absolute;right:11px;top:50%;display:grid;place-items:center;width:21px;height:21px;transform:translateY(-50%);border:1px solid #bdb6ad;background:#fff;color:var(--ink);font-size: 16px;font-weight:700}.messagegroup.compact[open] .messagegroupsummary::after{content:"−"}.messagegroup.compact[open] .messagegroupsummary{background:#f2efe9}.messagegroupsummarymain{display:grid;min-width:0}.messagegroupsummarymain .kicker{margin:0 0 1px;font-size: 12px}.messagegroupsummarymain strong,.messagegroupsummarymain small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messagegroupsummarymain strong{font:600 16px Georgia,serif}.messagegroupsummarymain small{margin-top:1px;color:var(--muted);font-size: 13px}.messagegroupsummarypreview{min-width:0;overflow:hidden;color:#4e585e;font-size: 13px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.messagegroupsummarystatus{display:grid;justify-items:end;gap:2px}.messagegroupsummarystatus time{color:var(--muted);font-size: 12px;white-space:nowrap}.messagegroupcontent{padding:12px 14px 14px;border-top:1px solid var(--line)}@media(max-width:760px){.messagegrouphead{align-items:stretch;flex-direction:column}.messagegroupstatus{justify-items:start}.messagegroupsummary{grid-template-columns:minmax(0,1fr) auto;gap:6px;padding-right:39px}.messagegroupsummarypreview{grid-column:1/-1;grid-row:2}.messagegroupsummarystatus{grid-column:2;grid-row:1}.messagegroupsummarystatus time{display:none}.staffreply{grid-template-columns:1fr}.staffreply button{width:100%}.staffmessage{max-width:94%}}
    .timereportcontrols{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.timereportdates{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.timereportdates .field{margin:0}.timereportnav{display:flex;gap:7px}.administrativetimematrix{margin-top:18px;border-left:5px solid #65737c}.reportscroll{overflow:auto;border:1px solid var(--line);background:white}.reporttable{border-collapse:separate;border-spacing:0;min-width:100%;font-size: 14px}.reporttable th,.reporttable td{height:34px;min-width:58px;padding:0;text-align:center;border-right:1px solid #e8e5df;border-bottom:1px solid #e8e5df;white-space:nowrap}.reporttable thead th{position:sticky;top:0;z-index:2;background:#faf9f6;font-weight:850}.reporttable .reportname{position:sticky;left:0;z-index:3;min-width:160px;padding:0 10px;text-align:left;background:#fff;font-weight:750}.reporttable thead .reportname{z-index:5;background:#f4f1eb}.reporttable .reporttotal{position:sticky;right:0;z-index:3;min-width:68px;background:#f1efeb;font-weight:850}.reporttable thead .reporttotal{z-index:5}.reporttable tfoot th,.reporttable tfoot td{background:#f1efeb;font-weight:850}.reporttable tfoot .reportname{background:#f1efeb}.reportdaybutton{width:100%;height:34px;border:0;background:transparent;color:#1d612a;font-size: 14px;font-weight:800}.reportdaybutton:hover,.reportdaybutton.selected{outline:2px solid var(--red);outline-offset:-2px}.reportweekend{background:#f0f0ee!important;color:#8a8f91}.reportdetail{margin-top:18px}.reportdetailhead{display:flex;justify-content:space-between;gap:14px;align-items:start;margin-bottom:12px}.reportdetailhead h3{margin:0;font:500 25px Georgia,serif}.reportdetailhead p{margin:5px 0 0;color:var(--muted);font-size: 15px}.reportentry{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(150px,1fr) 90px 90px 100px auto;gap:10px;align-items:center;border-top:1px solid var(--line);padding:12px 0;font-size: 15px}.reportentry:first-child{border-top:0}.reportentry strong{display:block}.reportentry small{display:block;color:var(--muted);margin-top:4px}.reportentry .reportduration{font-weight:850}.reportlegend{color:var(--muted);font-size: 14px;margin:9px 0 0}@media(max-width:760px){.reporttable th,.reporttable td{height:32px;min-width:54px}.reporttable .reportname{min-width:135px;padding:0 8px}.reporttable .reporttotal{min-width:62px}.reportdaybutton{height:32px}.reportentry{grid-template-columns:1fr 1fr}.reportentry>div:first-child{grid-column:1/-1}.timereportcontrols{align-items:stretch}.timereportdates{display:grid;grid-template-columns:1fr 1fr}.timereportdates button{grid-column:1/-1}.timereportnav button{flex:1}.timereportnav{width:100%}}
    .rosterlayout{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}.rosterlist{display:grid;gap:8px;margin-top:16px}.rosterslot{display:grid;grid-template-columns:120px 1fr;gap:15px;align-items:center;border:1px solid var(--line);padding:13px 14px}.rosterslot strong{font:500 22px Georgia,serif}.rosterslot span{font-size: 15px;font-weight:750}.rosterslot.work{border-left:4px solid var(--green);background:#f1f7f3}.rosterslot.break{border-left:4px solid var(--amber);background:#faf2e5}.rosterpolicy{background:#101a22;color:white}.rosterpolicy h3{color:white}.rosterpolicy>p:last-child{color:#b9c3c8;font-size: 15px;line-height:1.6;margin-top:18px}.policyitem{padding:15px 0;border-bottom:1px solid #394650}.policyitem strong{display:block;font:500 34px Georgia,serif;color:#8bd3b4}.policyitem span{display:block;margin-top:4px;color:#b9c3c8;font-size: 14px;letter-spacing:.08em;text-transform:uppercase}
    .planningtoolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.planningnav,.planninglocations{display:flex;gap:6px;align-items:center}.planningnav button,.planninglocations button{height:34px;border:1px solid var(--line);background:white;padding:0 11px;font-size: 14px;font-weight:800}.planninglocations button.on{background:#101a22;color:white;border-color:#101a22}.planningweektitle{font:500 23px Georgia,serif}.planninggrid{display:grid;grid-template-columns:repeat(7,minmax(135px,1fr));border:1px solid var(--line);overflow:auto;background:#fff}.planningday{min-height:230px;border-right:1px solid var(--line);background:#faf9f6}.planningday:last-child{border-right:0}.planningday.today{background:#fff8e6}.planningdayhead{position:sticky;top:0;z-index:1;padding:10px;border-bottom:1px solid var(--line);background:#f1eee8;font-size: 14px;font-weight:850;text-transform:uppercase}.planningday.today .planningdayhead{background:#f7e7bd}.planningcards{display:grid;gap:6px;padding:7px}.planningcard{position:relative;border:0;border-left:5px solid var(--work-color);background:var(--project-color);color:#fff;padding:8px;text-align:left;min-height:64px;box-shadow:0 2px 7px #10182022}.planningcard strong{display:block;font-size: 14px;line-height:1.25}.planningcard span{display:block;font-size: 14px;margin-top:4px;opacity:.9}.planningcard .workbadge{display:inline-block;background:var(--work-color);color:#fff;padding:3px 5px;margin:0 0 5px;font-size: 14px;font-weight:850;text-transform:uppercase}.planningform{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}.planningform .wide{grid-column:span 2}.planningactions{display:flex;justify-content:flex-end;gap:7px;grid-column:1/-1}.planninglegend{display:flex;gap:13px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size: 14px}.planninglegend i{display:inline-block;width:10px;height:10px;margin-right:5px}.planningempty{padding:10px;color:var(--muted);font-size: 14px}@media(max-width:900px){.planningform{grid-template-columns:1fr 1fr}.planninggrid{grid-template-columns:repeat(7,minmax(155px,1fr))}}@media(max-width:600px){.planningform{grid-template-columns:1fr}.planningform .wide{grid-column:auto}.planningweektitle{width:100%;order:-1}}
    .floordrawer{width:min(1320px,98vw);background:#e9e6df}.floorhead{position:sticky;top:0;z-index:4;background:#101a22;color:white;padding:22px 28px;border-bottom:3px solid var(--red);display:flex;align-items:center;justify-content:space-between;gap:20px}.floorhead h2{font:500 35px Georgia,serif;margin:0}.floorhead p{color:#bac2c7;margin:6px 0 0;font-size: 15px}.flooractions{display:flex;align-items:center;gap:8px}.floorrefresh{height:38px;border:1px solid #53616b;background:#172631;color:white;border-radius:3px;padding:0 12px;font-size: 14px;font-weight:800}.floorrefresh:hover{background:#273944}.livedot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#70c69f;box-shadow:0 0 0 4px #70c69f24;margin-right:7px}.floorbody{padding:24px 28px}.floorgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.floortile{aspect-ratio:1/1;min-height:230px;border:0;padding:0;position:relative;overflow:hidden;text-align:left;background:#777;background-size:cover;background-position:center;color:white;box-shadow:0 8px 22px #1b242a20}.floortile.active{outline:3px solid #58ad85;outline-offset:-3px}.floortile.active:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,13,16,.12),rgba(8,13,16,.86));pointer-events:none}.floortile.active.overhead{background:linear-gradient(145deg,#c85e13,#71300b);outline-color:#f09a58}.floortile.active.overhead:after{background:linear-gradient(180deg,rgba(255,170,96,.07),rgba(58,21,2,.72))}.floortile.active.overhead .floorstatus{background:#6b2a07e8;color:#ffe2c7}.floortile.active.overhead .floortime{color:#ffd2ab}.floortile.off{background:linear-gradient(145deg,#c9c9c6,#969b9c);color:#303638}.floortile.off:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(30,35,38,.08))}.floortile.missing{background:linear-gradient(145deg,#b83b32,#7d211c);color:white;outline:3px solid #d96a61;outline-offset:-3px}.floortile.missing:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(63,6,3,.28))}.floorstatus{position:absolute;z-index:2;left:15px;top:15px;background:#173f31e8;color:#a8e6c8;padding:7px 9px;font-size: 14px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.off .floorstatus{background:#5d6262d9;color:#f0f0ed}.missing .floorstatus{background:#4f0d09e8;color:#ffd6d2}.floorinitials{position:absolute;z-index:1;inset:0;display:grid;place-items:center;font:500 70px Georgia,serif;color:#ffffff7d}.floorinfo{position:absolute;z-index:2;left:17px;right:17px;bottom:16px}.floorinfo h3{font:500 27px/1 Georgia,serif;margin:0 0 9px}.floorproject{font-weight:850;font-size: 16px;margin:0 0 5px}.floortask{font-size: 14px;color:#d4dbde;margin:0 0 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.off .floortask{color:#4e5557}.missing .floortask{color:#ffe3e0}.floortime{font:500 26px Georgia,serif;color:#9ae0bf}.off .floortime,.missing .floortime{font:750 14px sans-serif;text-transform:uppercase;letter-spacing:.08em}.off .floortime{color:#4f5658}.missing .floortime{color:#fff}.leavechoice{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.leavechoice label{border:1px solid var(--line);padding:11px;background:#f6f3ed;font-size: 15px;font-weight:750;display:flex;align-items:center;gap:8px}.leavechoice label:has(input:checked){border-color:var(--red);background:#f8ece9;color:#7f2b25}.leavefields[hidden]{display:none}
    .orderintro{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px;background:#f3f0e9;border-left:3px solid var(--red);margin-bottom:14px}.orderintro p{margin:0;color:var(--muted);font-size: 15px;line-height:1.5}.orderlist{display:grid;gap:9px}.orderitem{border:1px solid #e2ded6;padding:13px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:start}.orderno{font-weight:850;font-size: 16px;letter-spacing:.03em}.ordersub{color:var(--muted);font-size: 14px;margin-top:5px}.orderstatus{display:inline-flex;margin-left:8px;padding:4px 7px;border-radius:12px;background:#e9e5de;color:#5f666a;font-size: 14px;text-transform:uppercase;letter-spacing:.06em}.orderstatus.Verzonden,.orderstatus.Wacht{background:#fff0d7;color:#8a5a13}.orderstatus.Gedeeltelijk{background:#f7e5c9;color:#955a0b}.orderstatus.Geleverd{background:#e2edf3;color:#2e607e}.orderstatus.Gefactureerd{background:#e2f0e9;color:#26654e}.orderreceipt{display:grid;gap:5px;margin-top:10px}.orderreceipt label{display:flex;align-items:center;gap:8px;padding:7px 9px;background:#f5f2ec;border:1px solid #e7e1d8;font-size: 14px}.orderreceipt label.received{background:#e8f1ed;color:#276650}.orderreceipt input{accent-color:#32735f}.orderactions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;max-width:330px}.smallbtn{height:32px;padding:0 10px;border:1px solid var(--line);background:white;border-radius:3px;font-size: 14px;font-weight:750}.smallbtn.red{background:var(--red);color:white;border-color:var(--red)}.smallselect{height:32px;border:1px solid var(--line);background:white;font-size: 14px}.orderlinehead,.orderline{display:grid;grid-template-columns:2fr 1fr .5fr .65fr .75fr .62fr .75fr .85fr 30px;gap:7px;align-items:center}.orderlinehead{font-size: 14px;color:var(--muted);font-weight:850;letter-spacing:.08em;text-transform:uppercase;margin:14px 0 5px}.orderline{margin-bottom:7px}.orderfield{display:grid;gap:5px;min-width:0}.orderfield>span{display:none;color:var(--muted);font-size: 14px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.orderline input,.orderline select{height:38px;min-width:0;width:100%;border:1px solid var(--line);background:white;padding:0 8px;font-size: 15px}.orderline input.fromcatalog{border-color:#43806b;background:#f0f7f3}.orderline .deleteLine{height:30px;border:0;background:#eee9e2;color:#777}.orderlinetotal{display:grid;align-content:center;min-height:38px;padding:0 8px;border:1px solid #e5ddd3;background:#f7f3ec;text-align:right;font-size: 15px;font-weight:900}.orderlinetotal span{display:none}.ordertotalsummary{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin:5px 0 10px;padding:11px 0;border-top:2px solid var(--ink);font-size: 15px;font-weight:850}.ordertotalsummary strong{min-width:115px;text-align:right;color:var(--red);font-size: 19px}.orderdialog.employee-request .manager-only{display:none!important}.orderdialog.employee-request .orderline{grid-template-columns:2fr 1fr .5fr .65fr 30px}.employee-request-note{display:none;margin:10px 0 14px;padding:12px 14px;background:#edf5f1;border-left:3px solid #43806b;color:#315f4f;font-size: 15px;line-height:1.5}.orderdialog.employee-request .employee-request-note{display:block}.addline{border:0;background:transparent;color:var(--red);font-size: 15px;font-weight:800;padding:7px 0}.printsheet{display:none}
    .orderreceipthead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:2px}.orderreceipt .orderreceipthead label.receiptall{flex:none;padding:5px 9px;background:#fff;border-color:#32735f;color:#276650;font-weight:850;cursor:pointer}@media(max-width:600px){.orderreceipthead{align-items:stretch;flex-direction:column}.orderreceipt .orderreceipthead label.receiptall{justify-content:center}}
    .orderline{position:relative}.employee-optional{display:none;font-weight:600;text-transform:none;letter-spacing:0}.orderdialog.employee-request .employee-optional{display:inline}.orderdialog.employee-request .formrow:has(input[name="supplier"]){display:none}.articleSuggest{position:absolute;z-index:40;top:39px;left:0;width:min(520px,52%);max-height:240px;overflow:auto;background:#fff;border:1px solid #bdb7ae;box-shadow:0 12px 28px rgba(16,29,38,.18)}.articleSuggest[hidden]{display:none}.articleSuggest button{display:block;width:100%;border:0;border-bottom:1px solid #ece8e1;background:#fff;padding:10px 12px;text-align:left;color:var(--ink);font:inherit;cursor:pointer}.articleSuggest button:hover,.articleSuggest button:focus{background:#f5f1e9}.articleSuggest strong{display:block;font-size: 15px}.articleSuggest span{display:block;margin-top:3px;color:var(--muted);font-size: 14px}
    .orderline.billed{padding:7px;background:#eef4f1;border-left:3px solid var(--green)}.orderline.billed input,.orderline.billed select{background:#f4f6f5;color:#66716c}.orderline.billed .deleteLine{background:var(--green);color:white;font-size:0}.orderline.billed .deleteLine:after{content:'✓';font-size: 17px}.invoicebadge{display:inline-flex;padding:4px 7px;border-radius:12px;background:#e2f0e9;color:#26654e;font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.billingheadbuttons{display:flex;gap:8px;flex-wrap:wrap}.billingfilters{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr;gap:12px;align-items:end}.billingscope{grid-column:1/-1;display:flex;gap:16px;flex-wrap:wrap;font-size: 15px}.billingscope label{display:flex;align-items:center;gap:7px}.billingdates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.billingstats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}.billingstat{border:1px solid var(--line);background:#faf8f3;padding:13px}.billingstat strong{display:block;font:500 22px Georgia,serif}.billingstat span{font-size: 14px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.billingsection{margin-top:16px}.billingsectionhead{display:flex;justify-content:space-between;align-items:start;gap:16px}.billingsectionhead h3,.billingsectionhead p{margin-top:0}.billingsectionhead label{display:flex;align-items:center;gap:7px;font-weight:850;white-space:nowrap}.billingline{display:grid;grid-template-columns:minmax(180px,1fr) 105px 90px 105px;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0;font-size: 14px}.billingline strong,.billingline small{display:block}.billingline small{color:var(--muted);margin-top:4px}.billingtimerow{display:grid;grid-template-columns:28px minmax(220px,1fr) 90px 90px 105px;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0;font-size:14px}.billingtimerow>input{width:18px;height:18px;accent-color:var(--red)}.billingtimerow strong,.billingtimerow small{display:block}.billingtimerow small{color:var(--muted);margin-top:4px}.billingtimerow.excluded{opacity:.58;background:#f3f1ed}.billinggroupsummary{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px;padding:10px;background:#eef4f1;color:#245943;font-size:14px}.billinggroupsummary span{padding-left:8px;border-left:1px solid #aac6b9}.billingmaterialdate{margin-top:8px;padding:6px 0 4px;color:var(--muted);font-size: 14px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.billingmaterialline{grid-template-columns:minmax(220px,1fr) minmax(150px,auto) 105px;padding:7px 0}.billingmaterialline>span{color:var(--muted);text-align:right;white-space:nowrap}.billingmaterialline>strong{text-align:right}.billingzero{border-left:3px solid var(--amber);background:#fbf4e8;padding:12px;margin-top:12px}.billingzero>p{margin:0 0 8px;font-size: 14px;color:#73501d}.billingzerolist{display:grid;gap:7px}.billingzerorow{display:grid;grid-template-columns:28px minmax(220px,1fr) 150px 105px;gap:10px;align-items:center;padding:10px;background:#fff;border:1px solid #eadcc6}.billingzerorow.selected{border-color:var(--red);box-shadow:inset 3px 0 var(--red)}.billingzerorow>input[type="checkbox"]{width:18px;height:18px;accent-color:var(--red)}.billingzerorow strong,.billingzerorow small{display:block}.billingzerorow small{margin-top:4px;color:var(--muted);font-size: 14px}.billingzeroprice{display:grid;gap:4px;color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase}.billingzeroprice input{width:100%;height:36px;border:1px solid var(--line);background:#fff;padding:0 8px}.billingzeroprice input:disabled{background:#f1eee8;color:#999}.billingzerototal{text-align:right;font-size: 16px}.billingtotal{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin-top:16px;padding-top:15px;border-top:2px solid var(--ink)}.billingtotal strong{font:500 29px Georgia,serif;color:var(--red)}.manualinvoicedialog{width:min(1000px,calc(100vw - 32px))}.manualinvoicelines{display:grid;gap:8px;margin:14px 0}.manualinvoiceline{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(150px,1fr) 80px 90px 120px 38px;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);background:#faf9f6}.manualinvoiceline .field{margin:0}.manualinvoiceline button{margin-bottom:1px}.invoicehistory{display:grid;gap:9px}.invoiceitem{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid var(--line);padding:12px}.invoiceitem p{margin:5px 0 0;color:var(--muted);font-size: 14px}.invoicetestselect{display:inline-flex;padding:4px 7px;border-radius:12px;background:#e2f0e9;color:#26654e;font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.billingfilters{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr;gap:12px;align-items:end}.billingscope{grid-column:1/-1;display:flex;gap:16px;flex-wrap:wrap;font-size: 15px}.billingscope label{display:flex;align-items:center;gap:7px}.billingdates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.billingstats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}.billingstat{border:1px solid var(--line);background:#faf8f3;padding:13px}.billingstat strong{display:block;font:500 22px Georgia,serif}.billingstat span{font-size: 14px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.billingsection{margin-top:16px}.billingline{display:grid;grid-template-columns:minmax(180px,1fr) 105px 90px 105px;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0;font-size: 14px}.billingline strong,.billingline small{display:block}.billingline small{color:var(--muted);margin-top:4px}.billingmaterialdate{margin-top:8px;padding:6px 0 4px;color:var(--muted);font-size: 14px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.billingmaterialline{grid-template-columns:minmax(220px,1fr) minmax(150px,auto) 105px;padding:7px 0}.billingmaterialline>span{color:var(--muted);text-align:right;white-space:nowrap}.billingmaterialline>strong{text-align:right}.billingzero{border-left:3px solid var(--amber);background:#fbf4e8;padding:12px;margin-top:12px}.billingzero>p{margin:0 0 8px;font-size: 14px;color:#73501d}.billingzerolist{display:grid;gap:7px}.billingzerorow{display:grid;grid-template-columns:28px minmax(220px,1fr) 150px 105px;gap:10px;align-items:center;padding:10px;background:#fff;border:1px solid #eadcc6}.billingzerorow.selected{border-color:var(--red);box-shadow:inset 3px 0 var(--red)}.billingzerorow>input[type="checkbox"]{width:18px;height:18px;accent-color:var(--red)}.billingzerorow strong,.billingzerorow small{display:block}.billingzerorow small{margin-top:4px;color:var(--muted);font-size: 14px}.billingzeroprice{display:grid;gap:4px;color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase}.billingzeroprice input{width:100%;height:36px;border:1px solid var(--line);background:#fff;padding:0 8px}.billingzeroprice input:disabled{background:#f1eee8;color:#999}.billingzerototal{text-align:right;font-size: 16px}.billingtotal{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin-top:16px;padding-top:15px;border-top:2px solid var(--ink)}.billingtotal strong{font:500 29px Georgia,serif;color:var(--red)}.invoicehistory{display:grid;gap:9px}.invoiceitem{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid var(--line);padding:12px}.invoiceitem p{margin:5px 0 0;color:var(--muted);font-size: 14px}.invoicetestselect{display:flex;align-items:center;gap:7px;margin-bottom:7px;font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.invoicetestselect input{width:16px;height:16px;accent-color:var(--red)}.invoicetesttoolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:11px 12px;border:1px solid #ead7d3;background:#fbf4f2}.invoicetesttoolbar label{display:flex;align-items:center;gap:8px;font-size: 14px;font-weight:850}.invoicetesttoolbar input{width:17px;height:17px;accent-color:var(--red)}.invoicetesttoolbar button:disabled{opacity:.45;cursor:not-allowed}.invoiceedit{margin-bottom:18px;border-top:4px solid var(--red)}.invoiceedithead{display:flex;justify-content:space-between;gap:12px;align-items:start}.invoiceedithead h3{margin:0}.invoiceeditlines{display:grid;gap:7px;margin-top:14px}.invoiceeditline{display:grid;grid-template-columns:minmax(180px,2fr) minmax(140px,1.4fr) 82px 82px 105px 150px;gap:7px;align-items:center;padding:9px;border:1px solid var(--line);background:#faf9f6}.invoiceeditline input,.invoiceeditline select{width:100%;height:37px;min-width:0;border:1px solid var(--line);background:white;padding:0 8px;font-size: 14px}.invoiceeditline .lineamount{text-align:right;font-weight:850;font-size: 14px}.invoiceeditactions{display:flex;gap:4px;justify-content:flex-end}.invoiceeditactions button{height:30px;min-width:28px;border:1px solid var(--line);background:white;font-size: 14px}.invoiceeditactions .insert{color:var(--red);font-weight:850}.invoiceeditactions .remove{position:static;width:auto;border-radius:0;background:#f4e7e5;color:var(--red)}.invoiceeditfoot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.projectqr{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:center}.projectqr img{width:180px;height:180px;border:1px solid var(--line);background:#fff;padding:8px}.projectqractions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
    .invoicepaylabel{display:inline-flex;align-items:center;margin-left:2px;padding:3px 7px;border-radius:999px;background:#ece9e2;color:#5f666a;font-size: 14px;font-weight:900;letter-spacing:.03em}.invoicepaylabel.open{background:#fff0d7;color:#8a5a13}.invoicepaylabel.paid{background:#e2f0e9;color:#26654e}
    .teamleaderreviewdialog{width:min(980px,calc(100vw - 32px))}.teamleaderreviewmeta{display:grid;grid-template-columns:1.3fr 1.3fr .7fr .7fr;gap:8px;margin-bottom:14px}.teamleaderreviewmeta>div{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--line);background:#faf8f3}.teamleaderreviewmeta span{color:var(--muted);font-size:14px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.teamleaderreviewwarning{display:grid;gap:4px;margin:0 0 14px;padding:11px 13px;border-left:4px solid var(--amber);background:#fff4df;color:#694719}.teamleaderreviewwarning span{font-size:14px}.teamleaderreviewsection{margin-top:16px}.teamleaderreviewsectionhead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:7px;border-bottom:2px solid var(--ink)}.teamleaderreviewsectionhead h3{margin:0;font-size:19px}.teamleaderreviewsectionhead span{color:var(--muted);font-size:14px;font-weight:850}.teamleaderreviewline{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,auto) 105px;gap:12px;align-items:center;padding:9px 4px;border-bottom:1px solid var(--line);font-size:14px}.teamleaderreviewline small{display:block;margin-top:3px;color:var(--muted)}.teamleaderreviewline>span,.teamleaderreviewline>strong{text-align:right}.teamleaderreviewtotals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;padding-top:13px;border-top:3px solid var(--ink)}.teamleaderreviewtotals span{display:grid;gap:3px;color:var(--muted);font-size:14px;text-align:right}.teamleaderreviewtotals strong{color:var(--ink);font-size:21px}.teamleaderreviewtotals span:last-child strong{color:var(--red)}.teamleaderreviewerror{margin:14px 0 0;padding:11px 13px;border-left:4px solid var(--red);background:#fae8e6;color:#7f2822;font-weight:800}.teamleaderreviewerror[hidden]{display:none}
    .invoicehistorysearch{display:grid;gap:6px;margin:5px 0 14px;max-width:620px}.invoicehistorysearch span{color:var(--muted);font-size: 14px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.invoicehistorysearch input{width:100%;height:44px;border:1px solid var(--line);background:#fff;padding:0 13px;font-size: 16px}.invoicehistorysearch input:focus{border-color:var(--red);outline:2px solid #ef761722}.invoicehistoryempty{margin:14px 0 0;padding:15px;border:1px dashed var(--line);color:var(--muted);font-size: 15px}.billingprojectsearch{align-self:start}.billingprojectsearch>input[type="search"]{padding-right:42px}.billingprojectresults{display:grid;gap:5px;margin-top:6px;max-height:260px;overflow:auto}.billingprojectresults:empty{display:none}.billingprojectresult{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;width:100%;padding:10px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;cursor:pointer}.billingprojectresult:hover,.billingprojectresult:focus{border-color:var(--red);background:#fff8f2;outline:0}.billingprojectresult strong,.billingprojectresult small{display:block}.billingprojectresult small{margin-top:3px;color:var(--muted);font-size: 14px}.billingprojectresult span{color:var(--red);font-size: 14px;font-weight:850}.billingprojectempty{padding:11px 12px;border:1px dashed var(--line);color:var(--muted);font-size: 14px}.openbillingprojects{margin-top:10px;border-top:4px solid var(--red)}.openbillingtoolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(210px,.55fr) auto;gap:8px;align-items:end;margin:13px 0 8px}.openbillingtoolbar .field,.openbillingadvanced .field{margin:0}.openbillingtoolbar input,.openbillingtoolbar select,.openbillingadvanced select{height:38px}.openbillingadvanced{display:grid;grid-template-columns:repeat(3,minmax(145px,1fr)) auto;gap:8px;align-items:end;margin-bottom:8px;padding:9px;background:#f4f1eb;border-left:3px solid var(--orange)}.openbillingadvanced[hidden]{display:none}.openbillingsummary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0;padding:8px 10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size: 14px}.openbillingsummary span{color:var(--muted)}.openbillingsummary b{color:var(--ink);font-size: 16px}.openbillinglist{display:grid;gap:5px}.openbillingrow{display:grid;grid-template-columns:minmax(240px,1.45fr) 112px 68px 82px 112px auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid var(--line);background:#faf8f3}.openbillingrow[hidden]{display:none}.openbillingrow>div:first-child strong,.openbillingrow>div:first-child small{display:block}.openbillingrow small{margin-top:3px;color:var(--muted);font-size: 14px;line-height:1.3}.openbillingmetric{display:grid;gap:2px;text-align:right}.openbillingmetric span{color:var(--muted);font-size: 14px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.openbillingmetric b{color:var(--ink);font-size: 16px}.openbillingmetric small{margin:0}.openbillingamount b{font-size: 18px}.openbillingrow button{white-space:nowrap}.openbillingempty{margin:10px 0 0;padding:14px;border:1px dashed var(--line);color:var(--muted);font-size: 14px}
    .dialog.breakdowndialog{width:min(1240px,98vw)}.breakdownsource{display:grid;gap:7px;margin:12px 0 18px}.breakdownsource div{padding:10px 12px;border-left:3px solid var(--ink);background:#f3f0e9;font-size: 15px}.breakdownsource small{display:block;margin-top:4px;color:var(--muted)}.breakdownhead,.breakdownline{display:grid;grid-template-columns:1.25fr .72fr 1.8fr .45fr .55fr .7fr .55fr .7fr .85fr 32px;gap:7px;align-items:center}.breakdownhead{margin:10px 0 5px;color:var(--muted);font-size: 14px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.breakdownline{margin-bottom:8px}.breakdownline input,.breakdownline select{width:100%;min-width:0;height:38px;border:1px solid var(--line);background:white;padding:0 7px;font-size: 14px}.breakdownarticlefield{position:relative;min-width:0}.breakdownarticlefield>.breakdowndescription{padding-right:31px}.breakdownarticlebrowse{position:absolute;right:2px;top:2px;width:29px;height:34px;border:0;background:#fff2e8;color:#a24712;font-size: 18px;font-weight:900}.breakdownarticlesuggestions{position:absolute;z-index:40;left:0;right:0;top:100%;max-height:240px;overflow:auto;background:#fff;border:1px solid var(--line);box-shadow:0 12px 26px #101a2230}.breakdownarticlesuggestions:empty,.breakdownarticlesuggestions[hidden]{display:none}.breakdownarticlesuggestions button{display:block;width:100%;border:0;border-top:1px solid #ebe6de;background:#fff;color:var(--ink);padding:9px 10px;text-align:left}.breakdownarticlesuggestions button:hover,.breakdownarticlesuggestions button:focus-visible{background:#fff2e8;outline:0}.breakdownarticlesuggestions strong,.breakdownarticlesuggestions small{display:block}.breakdownarticlesuggestions small{margin-top:3px;color:var(--muted);font-size: 14px}.breakdownbillable{display:flex;align-items:center;justify-content:center;gap:5px;font-size: 14px;font-weight:800}.breakdownbillable input{width:16px;height:16px;accent-color:var(--green)}.breakdownremove{height:31px;border:0;background:#eee9e2;color:#777}.breakdownline.billed{padding:8px;background:#eef4f1;border-left:3px solid var(--green)}.breakdownline.billed input,.breakdownline.billed select{background:#f4f6f5;color:#66716c}.breakdowntotals{display:flex;justify-content:flex-end;gap:20px;margin-top:14px;padding:12px 0;border-top:2px solid var(--ink);font-size: 15px}.breakdowntotals strong{margin-left:5px;color:var(--red)}
    .breakdownsource.editable{gap:8px}.breakdownsource.editable>div{padding:0;border-left:0;background:transparent}.breakdownsourcerow,.breakdownsourcehead{display:grid;grid-template-columns:2fr .8fr .55fr .65fr .72fr .58fr .72fr;gap:7px;align-items:center}.breakdownsourcehead{padding:0 10px;color:var(--muted);font-size: 14px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.breakdownsourcerow{padding:10px!important;border:1px solid var(--line)!important;border-left:3px solid var(--ink)!important;background:#f8f6f1!important}.breakdownsourcerow input,.breakdownsourcerow select{width:100%;min-width:0;height:38px;border:1px solid var(--line);background:#fff;padding:0 7px;font-size: 14px}.breakdownsourcerow .sourcebadges{grid-column:1/-1;display:flex;gap:7px;align-items:center;padding:0!important;border:0!important;background:transparent!important}.invoiceadjustedbadge,.invoicelockedbadge{display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border-radius:999px;font-size: 14px;font-weight:900;letter-spacing:.04em}.invoiceadjustedbadge{color:#9f4307;background:#fff0e4;border:1px solid #f47721}.invoicelockedbadge{color:#246552;background:#e7f2ed;border:1px solid #8dbbab}.breakdownsourcerow.incoming-adjusted{border-left-color:#f47721!important;background:#fffaf5!important}.breakdownsourcerow.billed{border-left-color:var(--green)!important;background:#eef4f1!important}.breakdownsourcerow.billed input,.breakdownsourcerow.billed select{background:#f4f6f5;color:#66716c}
    .breakdownline.incoming-adjusted{position:relative;margin-top:34px;border-left:3px solid #f47721;background:#fffaf5;padding-left:7px}.breakdownline.incoming-adjusted:before{content:attr(data-source-label);position:absolute;left:0;bottom:calc(100% + 5px);display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border:1px solid #f47721;border-radius:999px;background:#fff0e4;color:#9f4307;font-size: 14px;font-weight:900;letter-spacing:.04em}
    .documentsection{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.documenthead{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.documenthead h4{font:500 21px Georgia,serif;margin:0}.documentlist{display:grid;gap:8px}.documentitem{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);background:#faf8f3;padding:11px}.documenticon{width:42px;height:48px;display:grid;place-items:center;background:#ef7617;color:white;font-size: 14px;font-weight:900;letter-spacing:.05em}.documentinfo{min-width:0}.documentinfo strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size: 16px}.documentinfo span{display:block;margin-top:5px;color:var(--muted);font-size: 14px}.documentactions{display:flex;gap:6px}.documentupload{position:relative;overflow:hidden}.documentupload input{position:absolute;inset:0;opacity:0;cursor:pointer}.documentupload.busy{opacity:.6;pointer-events:none}@media(max-width:700px){.documenthead{align-items:flex-start;flex-direction:column}.documentitem{grid-template-columns:auto 1fr}.documentactions{grid-column:1/-1;justify-content:flex-end}}
    .invoicepdftrial{border-top:4px solid var(--red);margin-bottom:10px;padding:12px}.invoicepdftrial .sectitle h3{margin-bottom:3px}.invoicepdftrial .exactguard{margin:7px 0 10px;padding:10px 12px}.invoicepdfdropzone{display:flex;align-items:center;justify-content:center;gap:14px;min-height:92px;margin:9px 0;padding:14px 18px;border:2px dashed #a9a298;background:#faf8f3;cursor:pointer;text-align:left;transition:.15s ease}.invoicepdfdropzone:hover,.invoicepdfdropzone:focus-visible{border-color:var(--orange);background:#fff5e9;outline:none}.invoicepdfdropzone.dragover{border-color:var(--orange);background:#ffead4;box-shadow:inset 0 0 0 3px rgba(244,116,21,.12)}.invoicepdfdropzone input{position:absolute;opacity:0;pointer-events:none}.invoicepdfdropicon{display:grid;place-items:center;flex:0 0 48px;height:54px;background:#101a22;color:#fff;border-top:4px solid var(--orange);font-size: 15px;font-weight:900;letter-spacing:.08em}.invoicepdfdropcopy{display:grid;gap:3px;flex:1;max-width:610px}.invoicepdfdropcopy strong{font-size: 18px}.invoicepdfdropcopy span{color:var(--muted);font-size: 14px;line-height:1.35}.invoicepdfuploadbutton{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;background:#101a22;color:#fff!important;font-size: 14px!important;font-weight:850;white-space:nowrap}.invoicepdfstatus{margin-top:9px;padding:9px 11px;border-left:4px solid var(--green);background:#eef7f2}.invoicepdfstatus.error{border-color:#b7392f;background:#fae8e6}.invoicepdfstatus strong,.invoicepdfstatus span{display:block}.invoicepdfstatus span{margin-top:3px;color:var(--muted);font-size: 14px}.invoicepdflink{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.invoicepdflink div{padding:8px 10px;border:1px solid #b8d6c7;background:#fff}.invoicepdflink small,.invoicepdflink strong{display:block}.invoicepdflink small{margin-bottom:3px;color:var(--muted);font-size: 14px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.invoicepdflink strong{font-size: 15px}.invoiceproposalhead,.invoiceproposalrow{display:grid;grid-template-columns:28px minmax(160px,1.55fr) 58px minmax(86px,.74fr) 68px minmax(90px,.74fr) minmax(90px,.72fr);gap:5px;align-items:center}.invoiceproposalhead{margin-top:9px;padding:0 7px 4px;color:var(--muted);font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.invoiceproposalrow{padding:7px;border:1px solid var(--line);border-top:0;background:#fff}.invoiceproposalrow:first-of-type{border-top:1px solid var(--line)}.invoiceproposalrow input[type=checkbox]{width:17px;height:17px;accent-color:var(--green)}.invoiceproposaldesc strong,.invoiceproposaldesc span{display:block}.invoiceproposaldesc strong{font-size: 14px}.invoiceproposaldesc span{margin-top:2px;color:var(--muted);font-size: 14px;line-height:1.25}.invoiceproposalfield{display:grid;gap:3px;color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase}.invoiceproposalfield input,.invoiceproposalfield select{width:100%;height:32px;border:1px solid var(--line);padding:0 6px;background:#fff;font-size: 14px}.invoicelinequantity{font-size: 14px;font-weight:850}.invoiceproposalvalue{display:grid;gap:2px;text-align:right}.invoiceproposalvalue small{color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase}.invoiceproposalvalue strong{font-size: 15px}.invoiceproposalsale{font-weight:850;text-align:right}.invoiceordertotals,.invoicegrandtotals{display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:8px 7px;border-top:2px solid var(--ink);font-size: 14px}.invoiceordertotals span,.invoicegrandtotals span{display:grid;gap:2px;text-align:right;color:var(--muted)}.invoiceordertotals strong,.invoicegrandtotals strong{color:var(--ink);font-size: 18px}.invoicegrandtotals{margin-top:10px;background:#f3f0e9}.invoicegrandtotals strong{color:var(--red);font-size: 18px}.invoiceproposalactions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.invoiceproposalactions p{margin:0;color:var(--muted);font-size: 14px;line-height:1.3}.invoiceproposalbuttons{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}.invoiceproposalbuttons .ghost{min-width:110px}.invoiceextrasection{margin-top:10px;padding-top:9px;border-top:2px solid var(--line)}.invoiceextraintro{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:6px}.invoiceextraintro h4{margin:0 0 3px;font-size: 16px}.invoiceextraintro p{margin:0;color:var(--muted);font-size: 14px}.invoiceextrarow{display:grid;grid-template-columns:26px minmax(160px,1.55fr) 58px 68px 86px 68px 92px 92px 30px;gap:5px;align-items:end;padding:7px;border:1px solid var(--line);margin-top:5px;background:#fff}.invoiceextrarow input[type=checkbox]{align-self:center;width:17px;height:17px;accent-color:var(--green)}.invoiceextradesc input{font-weight:750}.invoiceextraremove{width:30px;height:32px;border:1px solid var(--line);background:#fff;color:#a12d27;font-weight:900}.invoiceextratag{display:inline-block;margin-top:3px;color:var(--green);font-size: 14px;font-weight:900;text-transform:uppercase}@media(max-width:1180px){.invoiceproposalhead,.invoiceproposalrow{grid-template-columns:28px minmax(160px,1.4fr) 58px repeat(4,minmax(84px,1fr))}.invoiceextrarow{grid-template-columns:26px minmax(160px,1.4fr) 58px 68px repeat(4,minmax(84px,1fr)) 30px}}@media(max-width:980px){.invoiceextrarow{grid-template-columns:30px 1fr 1fr 1fr}.invoiceextradesc{grid-column:2/-1}.invoiceextraremove{grid-column:4}}@media(max-width:760px){.invoicepdfdropzone{align-items:stretch;flex-direction:column;text-align:center}.invoicepdfdropicon{align-self:center}.invoicepdfuploadbutton{width:100%}.invoicepdflink{grid-template-columns:1fr}.invoiceproposalhead{display:none}.invoiceproposalrow{grid-template-columns:30px 1fr 1fr}.invoiceproposaldesc{grid-column:2/-1}.invoiceproposalsale,.invoiceproposalvalue{text-align:left}.invoiceordertotals,.invoicegrandtotals{justify-content:space-between}.invoiceproposalactions{align-items:stretch;flex-direction:column}.invoiceproposalbuttons{width:100%;flex-direction:column-reverse}.invoiceproposalbuttons button{width:100%}.invoiceextraintro{flex-direction:column}.invoiceextrarow{grid-template-columns:30px 1fr 1fr}.invoiceextradesc{grid-column:2/-1}.invoiceextraremove{grid-column:3}}
    .invoicepdfsteps{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.invoicepdfstep{padding:9px 10px;border:1px solid #b8d6c7;background:#fff;color:#225f50;font-size: 14px;font-weight:850}.invoicepdfstep.pending{border-color:#e7b98d;background:#fff7ef;color:#94480c}.invoicepdfstep small{display:block;margin-bottom:3px;font-size: 14px;letter-spacing:.08em;text-transform:uppercase}.invoicebookingsuccess{padding:13px 14px}.invoicebookingsuccess>strong{font-size:18px}.invoicebookednotice{display:grid;grid-template-columns:42px minmax(0,1fr) 34px;gap:11px;align-items:center;margin:10px 0;padding:12px 13px;border:2px solid #78a994;border-left:7px solid var(--green);background:#e8f4ee;color:#174f40}.invoicebookednotice strong,.invoicebookednotice span{display:block}.invoicebookednotice strong{font-size:18px}.invoicebookednotice div span{margin-top:3px;font-size:14px;line-height:1.4}.invoicebookedcheck{display:grid!important;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-size:23px;font-weight:950}.invoicebookednotice button{width:32px;height:32px;border:0;background:transparent;color:#174f40;font-size:25px;cursor:pointer}.incominginvoicepanel{margin-bottom:14px}.incominginvoicelist{display:grid;gap:6px;margin-top:10px}.incominginvoicerow{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(260px,1.3fr) auto;gap:12px;align-items:center;padding:10px 11px;border:1px solid var(--line);background:#fff}.incominginvoicerow strong,.incominginvoicerow span{display:block}.incominginvoicerow span{margin-top:2px;color:var(--muted);font-size: 14px}.incominginvoicebookstatus{display:inline-flex!important;width:max-content;margin-top:7px!important;padding:4px 7px;background:#fff1e4;color:#94480c!important;font-weight:900;text-transform:uppercase}.incominginvoicebookstatus.booked{background:#e8f4ee;color:#225f50!important}.incominginvoiceprojects{display:grid;gap:4px;margin-top:5px}.incominginvoiceproject{padding:6px 8px;border-left:3px solid #e0a068;background:#fff7ef}.incominginvoiceproject.booked{border-color:var(--green);background:#eef7f2;color:#225f50!important}.incominginvoiceproject b{display:block;margin-bottom:2px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.orderinvoicelink{display:flex;align-items:center;gap:8px;margin-top:7px;padding:7px 9px;border-left:4px solid var(--green);background:#eef7f2;color:#225f50}.orderinvoicelink strong{font-size: 14px}.orderinvoicelink button{margin-left:auto}@media(max-width:760px){.invoicepdfsteps{grid-template-columns:1fr}.invoicebookednotice{grid-template-columns:36px minmax(0,1fr) 30px}.invoicebookedcheck{width:34px;height:34px}.incominginvoicerow{grid-template-columns:1fr}.incominginvoicerow button{width:100%}}
    .manualinvoicelink{margin-top:14px;padding:15px;border:1px solid #e0b17f;background:#fff8f0}.manualinvoicelink h4{margin:0;font:600 19px Georgia,serif}.manualinvoicelink>p{margin:5px 0 12px;color:var(--muted);font-size: 14px}.manualinvoicecontrols{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:9px;align-items:end}.manualinvoicecontrols .field{margin:0}.manualinvoicecontrols button{min-width:190px}.manualinvoiceoptions{display:grid;gap:6px;max-height:330px;overflow:auto;margin-top:10px}.manualinvoiceoption{display:grid;grid-template-columns:24px 1fr auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--line);background:#fff;cursor:pointer}.manualinvoiceoption[hidden]{display:none!important}.manualinvoiceoption:hover{border-color:var(--orange)}.manualinvoiceoption:has(input:checked){border-color:var(--green);box-shadow:inset 4px 0 var(--green);background:#f3f9f6}.manualinvoiceoption input{width:17px;height:17px;accent-color:var(--green)}.manualinvoiceoption strong,.manualinvoiceoption span,.manualinvoiceoption small{display:block}.manualinvoiceoption span{margin-top:3px;color:var(--muted);font-size: 14px}.manualinvoiceoption small{text-align:right;color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase}.manualinvoiceempty{margin:10px 0 0;color:var(--muted);font-size: 14px}@media(max-width:760px){.manualinvoicecontrols{grid-template-columns:1fr}.manualinvoicecontrols button{width:100%}.manualinvoiceoption{grid-template-columns:24px 1fr}.manualinvoiceoption small{grid-column:2;text-align:left}}
    .manualinvoiceroutes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.manualinvoiceroutes button{min-height:50px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:850}.manualinvoiceroutes button.active{border-color:var(--orange);box-shadow:inset 0 -4px var(--orange);background:#fff3e6}.invoicebookingfields{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:9px;margin:12px 0}.invoicebookingnotice{padding:10px 12px;border-left:4px solid var(--green);background:#eef7f2;color:var(--muted);font-size: 14px;line-height:1.45}.invoicebookinglabel{display:block;margin-bottom:5px;color:var(--orange);font-size: 14px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}@media(max-width:760px){.manualinvoiceroutes,.invoicebookingfields{grid-template-columns:1fr}}
    .invoiceprojecttarget{margin:10px 0;border:1px solid var(--line);background:#fff}.invoiceprojecttarget>summary{padding:11px 13px;cursor:pointer;color:var(--green);font-weight:900;list-style:none}.invoiceprojecttarget>summary::-webkit-details-marker{display:none}.invoiceprojecttarget[open]>summary{border-bottom:1px solid var(--line);background:#f4f7f5}.invoiceprojecttarget>div{padding:12px}.invoiceprojecttarget p{margin:0 0 10px;color:var(--muted);font-size:14px}.invoiceprojecttargetoptions{max-height:230px}.invoiceregulardestination{display:block;margin-top:8px;max-width:520px}.invoiceregulardestination select{margin-top:4px}
    .invoicebookingsupplier{display:grid;gap:6px}.invoicebookingsupplier .field{margin:0}.manualsupplieradd{width:100%;min-height:34px;border:1px solid var(--orange);background:#fff7ef;color:#9b470b;font-size: 14px;font-weight:900}.manualsuppliercreate{margin:10px 0;padding:11px;border:1px solid #e0b17f;border-left:4px solid var(--orange);background:#fffaf4}.manualsuppliercreate[hidden]{display:none}.manualsuppliercreatehead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}.manualsuppliercreatehead strong,.manualsuppliercreatehead span{display:block}.manualsuppliercreatehead strong{font-size: 16px}.manualsuppliercreatehead span{margin-top:3px;color:var(--muted);font-size: 14px}.manualsuppliercreatefields{display:grid;grid-template-columns:1.2fr 1fr .8fr 1.4fr;gap:7px}.manualsuppliercreateactions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px}.manualsuppliercreateactions span{color:var(--muted);font-size: 14px}.manualsuppliercreateactions div{display:flex;gap:7px}@media(max-width:980px){.manualsuppliercreatefields{grid-template-columns:1fr 1fr}}@media(max-width:620px){.manualsuppliercreatefields{grid-template-columns:1fr}.manualsuppliercreateactions{align-items:stretch;flex-direction:column}.manualsuppliercreateactions div{display:grid;grid-template-columns:1fr 1fr}}
    .hrdrawer:has(.invoicepdftrial){width:calc(100vw - 8px);max-width:none}.hrdrawer:has(.invoicepdftrial) .hrbody{padding:10px}.invoicecontrolsplit{--invoice-pdf-width:34%;display:grid;grid-template-columns:clamp(240px,var(--invoice-pdf-width),65%) 12px minmax(0,1fr);gap:0;align-items:start;margin-top:8px}.invoicecontrolsplit.resizing{cursor:col-resize;user-select:none}.invoicecontrolsplit.resizing iframe{pointer-events:none}.invoicepdfpane{position:sticky;top:8px;min-width:0;border:1px solid #b8b1a7;background:#171f25}.invoicepdfpanehead{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;color:#fff;border-bottom:3px solid var(--orange)}.invoicepdfpanehead strong,.invoicepdfpanehead span{display:block}.invoicepdfpanehead strong{font-size: 14px}.invoicepdfpanehead span{margin-top:2px;color:#b9c1c6;font-size: 14px}.invoicepdfpanehead button{height:28px;border:1px solid #68737a;background:#27343d;color:#fff;padding:0 8px;font-size: 14px;font-weight:850}.invoicepdfpane iframe{display:block;width:100%;height:calc(100vh - 128px);min-height:560px;border:0;background:#e6e3de}.invoicepdfpanestatus{padding:6px 8px;color:#c7d0d5;font-size: 14px}.invoicepdfresize{position:sticky;top:8px;align-self:start;width:12px;height:calc(100vh - 128px);min-height:560px;padding:0;border:0;background:transparent;cursor:col-resize;touch-action:none}.invoicepdfresize::before{content:"";position:absolute;inset:0 4px;background:#d5cfc5;transition:.15s ease}.invoicepdfresize::after{content:"⋮";position:absolute;top:50%;left:1px;width:10px;padding:10px 0;transform:translateY(-50%);border-radius:8px;background:#101a22;color:#fff;font-size: 17px;line-height:1;text-align:center}.invoicepdfresize:hover::before,.invoicepdfresize:focus-visible::before,.invoicecontrolsplit.resizing .invoicepdfresize::before{background:var(--orange)}.invoicepdfresize:focus-visible{outline:2px solid var(--orange);outline-offset:-2px}.invoicecontrolpanel{min-width:0;overflow-x:auto;container-type:inline-size}.invoicebulkselect{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:8px 0;padding:8px 10px;border:1px solid #9cc3b0;background:#eff8f3}.invoicebulkselect label{display:flex;align-items:center;gap:7px;font-size: 14px;font-weight:850;cursor:pointer}.invoicebulkselect input{width:17px;height:17px;accent-color:var(--green)}.invoicebulkselect span{color:var(--muted);font-size: 14px}@media(max-width:1120px){.invoicecontrolsplit{grid-template-columns:1fr}.invoicepdfresize{display:none}.invoicepdfpane{position:relative;top:auto}.invoicepdfpane iframe{height:70vh;min-height:520px}}@media(max-width:760px){.invoicepdfpane iframe{height:62vh;min-height:420px}.invoicebulkselect{align-items:flex-start;flex-direction:column}}
    .invoicebatchqueue{display:grid;gap:6px;margin:12px 0}.invoicebatchitem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;padding:7px 9px;border:1px solid var(--line);background:#fff}.invoicebatchitem.active{border-color:var(--orange);box-shadow:inset 4px 0 var(--orange)}.invoicebatchmain{display:grid;grid-template-columns:minmax(180px,1fr) minmax(170px,1fr);gap:10px;align-items:center;min-width:0;padding:3px 7px;border:0;background:transparent;text-align:left;cursor:pointer}.invoicebatchmain strong,.invoicebatchmain span{display:block}.invoicebatchmain span{margin-top:3px;color:var(--muted);font-size: 14px}.invoicebatchactions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.invoicebatchactions button{white-space:nowrap}.invoicebatchactions .danger{color:var(--red);border-color:#d9aaa5;background:#fff8f7}.invoicebatchbadge{padding:6px 8px;background:#fff1e4;color:#94480c;font-size: 14px;font-weight:900;text-transform:uppercase;white-space:nowrap}.invoicebatchbadge.done{background:#e8f4ee;color:#225f50}.zenvoicesbar{display:flex;align-items:end;justify-content:flex-end;gap:9px;margin-top:12px;padding:12px;background:#eef7f2;border-left:4px solid var(--green)}.zenvoicesbar .field{flex:1;max-width:420px;margin:0}.zenvoicesbar button{white-space:nowrap}.incominginvoiceactions{display:flex;align-items:center;gap:7px;justify-content:flex-end;flex-wrap:wrap}.incominginvoiceactions button{white-space:nowrap}.incominginvoiceactions button:disabled{cursor:not-allowed;opacity:.45}.incominginvoiceactions .danger{color:var(--red);border-color:#d9aaa5;background:#fff8f7}.incomingzenvoicesstatus{display:inline-flex!important;align-items:center;min-height:31px;margin:0!important;padding:0 9px;border-left:3px solid var(--green);background:#eef7f2;color:#225f50!important;font-size: 14px!important;font-weight:900;white-space:nowrap}@media(max-width:760px){.invoicebatchitem,.invoicebatchmain{grid-template-columns:1fr}.invoicebatchactions{justify-content:flex-start}.invoicebatchactions button{flex:1}.zenvoicesbar{align-items:stretch;flex-direction:column}.zenvoicesbar .field{max-width:none}.zenvoicesbar button{width:100%}.incominginvoiceactions{display:grid}.incomingzenvoicesstatus{justify-content:center}}
    @media print{body>*{display:none!important}.printsheet{display:block!important;position:absolute;inset:0;background:white;color:#111;padding:14mm;font-family:Arial,sans-serif}.printhead{display:flex;justify-content:space-between;border-bottom:3px solid #ef7617;padding-bottom:8mm;margin-bottom:8mm}.printhead h1{font:28px Georgia,serif;margin:0}.printhead p{margin:3px 0;font-size: 15px}.printmeta{display:grid;grid-template-columns:1fr 1fr;gap:8mm;margin-bottom:8mm}.printbox{border:1px solid #ccc;padding:5mm}.printbox strong{display:block;font-size: 14px;letter-spacing:.08em;margin-bottom:2mm}.printtable{width:100%;border-collapse:collapse;font-size: 14px}.printtable th,.printtable td{border:1px solid #bbb;padding:3mm;text-align:left}.printtable th{background:#eee}.printright{text-align:right!important}.printnotes{margin-top:8mm;border:1px solid #ccc;padding:5mm;min-height:28mm}.printfoot{margin-top:12mm;padding-top:4mm;border-top:1px solid #aaa;font-size: 14px;color:#555}}
    .meta{flex-wrap:wrap}.meta .updated{margin-left:auto}
    @media(max-width:1350px){.private,.avatar{display:none}.topbar{padding-left:14px;padding-right:14px}.topbtn{padding:0 8px}.orderalert{max-width:145px}}
    @media(max-width:1080px){.topbtn{font-size:0;padding:0;width:34px;flex:0 0 34px}.topbtn:before{font-size: 18px}.topbtn#openFloor:before{content:'▦'}.topbtn#openKiosk:before{content:'◷'}.topbtn#openHr:before{content:'P'}.topbtn#chooseEnvironmentDashboard:before{content:'↔'}.grid{grid-template-columns:repeat(2,1fr)}.toolbar{align-items:stretch;flex-direction:column}.search{width:100%}.filters{flex-wrap:wrap}.filters select{flex:1}}
    @media(max-width:700px){.shell{width:calc(100% - 30px)}.topbar{height:56px;padding:0 8px;gap:8px}.brandlogo{width:78px;height:42px}.brandtext{display:none}.mark{width:35px;height:35px}.private{display:none}.topactions{gap:4px}.topbtn{font-size:0;padding:0;width:34px}.topbtn:before{font-size: 18px}.topbtn#openFloor:before{content:'▦'}.topbtn#openKiosk:before{content:'◷'}.topbtn#openHr:before{content:'P'}.orderalert{max-width:105px;padding-left:7px;padding-right:7px}.avatar{width:35px;height:35px;margin-left:0}.hero{padding-top:32px;align-items:stretch;flex-direction:column}.hero .primary{align-self:start}.stats{grid-template-columns:1fr 1fr}.stat{min-height:91px;border-bottom:1px solid var(--line)}.stat:nth-child(2){border-right:0}.grid{grid-template-columns:1fr}.filterword{width:100%}.filters select{min-width:calc(50% - 5px)}.meta .updated{display:none}footer{flex-direction:column;gap:5px}.drawer{width:100vw}.detailhero{height:240px;padding:16px}.detailhead{left:18px;right:18px}.detailhead h2{font-size:34px}.detailbody{padding:13px}.panel{padding:16px}.milestones{grid-template-columns:1fr 1fr;gap:13px}.gallery{grid-template-columns:1fr 1fr}.formrow{grid-template-columns:1fr}.dialogbody{max-height:66vh;overflow:auto;padding:14px 19px}.dialoghead,.dialogfoot{padding-left:19px;padding-right:19px}.hrbody{padding:15px}.hrtop{padding:18px 15px 0}.hrtop h2{font-size:29px}.hrstats{grid-template-columns:1fr 1fr}.hrgrid,.kioskgrid,.connectionmeta,.connectionchecks{grid-template-columns:1fr}.schedule{grid-template-columns:repeat(4,1fr)}.employeeitem,.leaveitem,.clockitem{grid-template-columns:1fr}.decision{justify-content:flex-start}.floorhead{padding:17px 15px;align-items:flex-start}.floorhead h2{font-size:28px}.flooractions{flex-direction:column-reverse}.floorrefresh{font-size:0;width:38px;padding:0}.floorrefresh:before{content:'↻';font-size: 20px}.floorbody{padding:15px}.floorgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.floortile{min-height:0}.floorinfo{left:12px;right:12px;bottom:12px}.floorinfo h3{font-size:21px}.floortask{display:none}.floortime{font-size:20px}.leavechoice{grid-template-columns:1fr}}
    @media(max-width:700px){.rosterlayout{grid-template-columns:1fr}.rosterslot{grid-template-columns:105px 1fr}.rosterslot strong{font-size:19px}}
    @media(max-width:700px){.orderintro{align-items:flex-start;flex-direction:column}.orderitem{grid-template-columns:1fr}.orderactions{justify-content:flex-start}.orderlinehead,.breakdownhead{display:none}.orderline,.orderdialog.employee-request .orderline{grid-template-columns:1fr 1fr;gap:11px 9px;border:1px solid var(--line);background:#faf8f3;padding:14px;margin-bottom:12px}.breakdownline{grid-template-columns:1fr 1fr;gap:9px;padding:12px;border:1px solid var(--line);background:#faf8f3}.breakdownline .breakdownarticlefield,.breakdownline .breakdownparent{grid-column:1/-1}.breakdownbillable{justify-content:flex-start}.orderfield>span{display:block}.orderline .descriptionfield{grid-column:1/-1}.orderlinetotal{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;text-align:right}.orderlinetotal span{display:block;color:var(--muted);font-size: 14px;letter-spacing:.08em;text-transform:uppercase}.orderline .deleteLine{grid-column:2;justify-self:end;width:38px;height:38px}.ordertotalsummary{justify-content:space-between}.articleSuggest{top:71px;width:100%}.dialog.orderdialog,.dialog.breakdowndialog{height:100%;max-height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.dialog.orderdialog .dialogbody,.dialog.breakdowndialog .dialogbody{min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.orderdialog .dialoghead h2{font-size:38px;line-height:1.05}.orderdialog .dialogfoot{position:relative;z-index:3;bottom:auto;background:#fffefb;border-top:2px solid var(--line);box-shadow:0 -10px 24px #101a2224;padding-top:13px;padding-bottom:max(13px,env(safe-area-inset-bottom))}.orderdialog .dialogfoot .ghost,.orderdialog .dialogfoot .dark,.orderdialog .dialogfoot .primary{min-width:0;padding:0 13px}.orderdialog .dialogfoot #saveAndMailOrderButton{flex:1 1 100%}.timerform{grid-template-columns:1fr}.coverchange{right:15px;top:16px;padding:0 9px}.timehead{align-items:flex-start;flex-direction:column}.liveclock{font-size:28px}.timeentry{grid-template-columns:1fr auto auto}.rateitem,.worktypeform{grid-template-columns:1fr}.projecttypes{grid-template-columns:1fr}.projecttype{grid-template-columns:1fr}.estimatehead{display:none}.estimaterow{grid-template-columns:1fr 1fr}.estimatename{grid-column:1/-1}.estimatepercent{text-align:left}.clocktoggle{grid-column:1/-1}.estimatesummary{grid-template-columns:1fr}}
    .updateattachments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:13px}.updatephoto{display:block;aspect-ratio:4/3;background:#e5e1da;overflow:hidden}.updatephoto img{width:100%;height:100%;object-fit:cover;display:block;transition:.2s}.updatephoto:hover img{transform:scale(1.025)}.updatevideo{grid-column:span 2;min-height:180px;display:grid;place-items:center;background:#101a22;color:#fff;overflow:hidden}.updatevideo button{width:100%;height:100%;min-height:180px;border:0;background:linear-gradient(145deg,#172934,#0d151b);color:#fff;padding:18px;font-weight:900}.updatevideo button span{display:block;margin-bottom:8px;color:#ff9342;font-size:28px}.updatevideo button small{display:block;margin-top:7px;color:#bec8cd;font-weight:600;overflow-wrap:anywhere}.updatevideo video{display:block;width:100%;max-height:430px;background:#000}.updatefile{display:flex;align-items:center;gap:9px;min-height:58px;padding:9px;border:1px solid var(--line);background:#f7f4ee;color:var(--ink);text-decoration:none}.updatefile span{display:grid;place-items:center;flex:0 0 38px;height:42px;background:#111c24;color:#fff;font-size: 14px;font-weight:900}.updatefile strong{font-size: 14px;overflow-wrap:anywhere}.workshopattachments{display:grid;gap:5px;margin:12px 0;padding:10px 12px;border:1px dashed #afa79c;background:#faf8f3;font-size: 14px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.workshopattachments input{width:100%;font-size: 14px;font-weight:500;text-transform:none}.workshopattachments span{color:var(--muted);font-size: 14px;text-transform:none}
    .updatemessagethreads{display:grid;gap:6px;margin-top:13px;padding-top:10px;border-top:1px solid var(--line)}.updatemessagestitle{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:13px}.updatemessagestitle strong{color:var(--ink);font-size:14px}.updatemessagestitle span{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:50%;background:#ebe7df;color:var(--ink);font-weight:900}.updatemessageconversation{border:1px solid var(--line);background:#faf8f4}.updatemessageconversation.unread{border-left:4px solid var(--red)}.updatemessageconversation>summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:45px;padding:6px 34px 6px 9px;cursor:pointer;list-style:none}.updatemessageconversation>summary::-webkit-details-marker{display:none}.updatemessageconversation>summary:after{content:'+';position:absolute;right:9px;top:50%;transform:translateY(-50%);font-size:18px;font-weight:900}.updatemessageconversation[open]>summary:after{content:'−'}.updatemessagesummary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0}.updatemessagesummary strong{font-size:14px;white-space:nowrap}.updatemessagesummary>span{overflow:hidden;color:#4f595f;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.updatemessagesummary small{color:var(--muted);font-size:12px;white-space:nowrap}.updatemessagebadge{padding:4px 7px;background:#e8ece9;color:#376652;font-size:11px;font-weight:900;text-transform:uppercase}.updatemessagebadge.new{background:#fff0e4;color:#a54612}.updatemessagecontent{padding:9px;border-top:1px solid var(--line);background:#fff}.updatemessagecontent .messagebubbles{gap:5px}.updatemessagecontent .staffmessage{max-width:90%;padding:7px 9px}.updatemessagecontent .staffmessage strong{font-size:12px}.updatemessagecontent .staffmessage p{margin:3px 0;font-size:13px;line-height:1.35}.updatemessagecontent .staffmessage time{font-size:11px}.updateconversationread{display:inline-flex;align-items:center;gap:5px;margin:0 0 7px;color:var(--muted);font-size:12px;font-weight:800}.updateconversationread input{width:15px;height:15px;accent-color:var(--green)}.compactreply{grid-template-columns:minmax(0,1fr) auto;margin-top:7px}.compactreply textarea{min-height:36px;height:36px;padding:7px 9px;resize:vertical;font-size:13px}.compactreply button{min-height:36px;padding:0 11px;font-size:12px}.compactreply button:disabled{opacity:.55}@media(max-width:760px){.updatemessagesummary{grid-template-columns:minmax(0,1fr) auto}.updatemessagesummary>span{grid-column:1/-1;grid-row:2}.updatemessagesummary small{grid-column:2;grid-row:1}.compactreply{grid-template-columns:1fr}.compactreply button{width:100%}}
    @media(max-width:1100px) and (min-width:761px){.openbillingrow{grid-template-columns:minmax(240px,1fr) repeat(4,auto)}.openbillingrow button{grid-column:1/-1;justify-self:end}}
    @media(max-width:760px){.billingfilters,.billingdates{grid-template-columns:1fr}.billingstats{grid-template-columns:1fr 1fr}.billingheadbuttons,.billingsectionhead{width:100%;flex-direction:column}.billingline{grid-template-columns:1fr 1fr}.billingline>div:first-child{grid-column:1/-1}.billingtimerow{grid-template-columns:28px 1fr 1fr}.billingtimerow>div{grid-column:2/-1}.billingtimerow button{grid-column:2/-1}.billingmaterialline>span{text-align:left}.billingzerorow{grid-template-columns:28px 1fr}.billingzeroprice{grid-column:2}.billingzerototal{grid-column:2;text-align:left}.manualinvoiceline{grid-template-columns:1fr 1fr}.manualinvoiceline .field:first-child,.manualinvoiceline .field:nth-child(2){grid-column:1/-1}.invoiceitem{grid-template-columns:1fr}.invoiceeditline{grid-template-columns:1fr 1fr}.invoiceeditline .invoiceDescription,.invoiceeditline .invoiceDetails,.invoiceeditactions{grid-column:1/-1}.invoiceeditfoot{align-items:stretch;flex-direction:column}.invoiceeditfoot>div{width:100%}.projectqr{grid-template-columns:1fr}.projectqr img{width:min(260px,100%);height:auto}.openbillingtoolbar,.openbillingadvanced{grid-template-columns:1fr}.openbillingtoolbar button,.openbillingadvanced button{width:100%}.openbillingsummary{align-items:flex-start;flex-direction:column}.openbillingrow{grid-template-columns:1fr 1fr}.openbillingrow>div:first-child{grid-column:1/-1}.openbillingmetric{text-align:left}.openbillingrow button{grid-column:1/-1;width:100%}.teamleaderreviewmeta,.teamleaderreviewtotals{grid-template-columns:1fr 1fr}.teamleaderreviewline{grid-template-columns:1fr}.teamleaderreviewline>span,.teamleaderreviewline>strong{text-align:left}}
    @media(max-width:700px){.brandlogo{width:84px;height:46px}}
    @media(max-width:700px){.breakdownsourcehead{display:none}.breakdownsourcerow{grid-template-columns:1fr 1fr!important;gap:9px}.breakdownsourcerow .sourcedescription,.breakdownsourcerow .sourcebadges{grid-column:1/-1}.breakdownsourcerow input,.breakdownsourcerow select{height:44px;font-size: 17px}}
    .detailactions{position:absolute;right:25px;top:22px;display:flex;gap:8px;z-index:2}
    .detailactions .coverchange{position:static;right:auto;top:auto}
    .customerjump,.projectinvoiceaction,.projectupdateaction{height:38px;border:1px solid #ef9a75;background:#ef7617;color:#fff;border-radius:3px;padding:0 13px;font-size: 15px;font-weight:800;cursor:pointer}
    .projectinvoiceaction{background:#173f31;border-color:#6d9b89}
    @media(max-width:700px){.detailactions{right:15px;top:16px}.detailactions .coverchange{display:none}.customerjump,.projectinvoiceaction,.projectupdateaction{padding:0 10px}.customerjump{display:none}.projectupdateaction{font-size:0}.projectupdateaction:after{content:'+ Update';font-size: 14px}}
    .logoutbtn{height:37px;border:1px solid #f39a50;background:#ef7617;color:#fff;border-radius:3px;padding:0 13px;font-size: 15px;font-weight:800}.logoutbtn:hover{background:#cf5f08}.logoutbtn:disabled{opacity:.65;cursor:wait}
    @media(max-width:700px){.brandlogo{width:82px;height:44px}.avatar{display:none}.logoutbtn{padding:0 9px;font-size: 14px}}
    @media(max-width:700px){.detailnav{grid-template-columns:repeat(2,minmax(0,1fr));margin:-13px -13px 18px;padding:10px 13px}.detailnav button{min-height:40px;font-size: 14px}.detailsectionanchor{scroll-margin-top:245px}.detailcollapsebutton{min-height:56px;padding:9px 12px}.detailcollapseheading strong{font-size:18px}.detailcollapseaction span{display:none}}
    .suppliercontact{display:grid;grid-template-columns:1fr 1.35fr 1fr 120px auto;gap:9px;align-items:end;border:1px solid var(--line);background:#faf8f3;padding:12px;margin-bottom:8px}.suppliercontact .field{margin:0}.suppliercontact>a{color:var(--red)}@media(max-width:850px){.suppliercontact{grid-template-columns:1fr 1fr}.suppliercontact .removeSupplierContact{justify-self:start}}@media(max-width:560px){.suppliercontact{grid-template-columns:1fr}}
    .mobilenav,.mobileclockstatus{display:none}
    @media(max-width:700px){
      html{scroll-padding-bottom:78px}body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.shell{width:calc(100% - 20px)}
      .topbar{height:58px;padding:0 10px;overflow:hidden}.brandlogo{width:82px;height:44px}.topactions{margin-left:auto}.topactions>.orderalert,.topactions>.topbtn,.topactions>.private,.topactions>.avatar{display:none!important}.logoutbtn{height:38px;padding:0 11px;font-size: 14px;white-space:nowrap}
      .mobileclockstatus{min-width:86px;max-width:112px;height:38px;padding:5px 8px;color:#fff;border:0;border-radius:3px;text-align:left;box-shadow:none}.mobileclockstatus.out{display:grid;background:#b83b32}.mobileclockstatus.in{display:grid;background:#32735f}.mobileclockstatus span{display:grid;gap:1px;min-width:0}.mobileclockstatus strong{font-size: 14px;line-height:1.1}.mobileclockstatus small{font-size: 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobileclockstatus>.liveclock{display:none}
      .hero{padding-top:20px;padding-bottom:15px}.hero h1{font-size:34px}.hero .intro{font-size: 15px}.hero .primary{min-height:40px}
      .stats{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}.stat{flex:0 0 43%;min-height:76px;padding:13px 15px;scroll-snap-align:start;border-bottom:0}.stat .num{font-size:24px}.stat .label{font-size: 14px;margin-top:5px}.stat.sel:after{left:14px;right:14px}
      .workspace{padding-top:18px}.toolbar{gap:10px}.search{height:42px}.filters{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:7px}.filterword{grid-column:1/-1;width:auto}.filters select{width:100%;min-width:0;height:40px;font-size: 16px}.filters select:last-child{grid-column:1/-1}.resultline{height:45px}
      .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{box-shadow:0 3px 10px #1018200d}.card:hover{transform:none;box-shadow:none}.photo{height:112px}.photo .pill{left:7px;top:7px;padding:5px 7px;font-size: 14px;max-width:calc(100% - 14px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.priority{display:none}.favoritebtn{right:7px;bottom:31px;width:29px;height:29px;font-size: 18px}.projectday{left:7px;bottom:7px;max-width:calc(100% - 49px);padding:5px 7px;border-left-width:2px}.projectday span{font-size: 14px}.projectday strong{font-size: 14px;margin-top:2px}.photos{display:none}
      .body{padding:10px}.titleline{align-items:start}.titleline h2{font-size: 19px;line-height:1.05;overflow-wrap:anywhere}.titleline p{font-size: 14px;line-height:1.25;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chev{display:none}.laborbudget{margin-top:9px;padding:7px}.laborbudget div>span{display:none}.laborbudget div{justify-content:flex-end;font-size: 14px}.laborbudget strong{width:100%;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.laborbudget .estimatebar{margin-top:5px}.next,.meta{display:none}
      footer{display:none}.mobilenav{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);left:0;right:0;bottom:0;z-index:80;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:#101a22;border-top:3px solid #ef7617;box-shadow:0 -8px 22px #1018202b}.mobilenav button{position:relative;min-width:0;min-height:52px;border:0;background:transparent;color:#dce1e3;display:grid;place-items:center;align-content:center;gap:3px;font-size: 15px;font-weight:800}.mobilenav button:before{font-size:20px;line-height:1}.mobilenav button[data-mobile-action="floor"]:before{content:'◎'}.mobilenav button[data-mobile-action="clock"]:before{content:'◷'}.mobilenav button[data-mobile-action="leave"]:before{content:'◇'}.mobilenav button:active,.mobilenav button.active{color:#ff9b54;background:#1a2933}
      .drawer,.hrdrawer,.floordrawer{width:100vw}.dialoglayer{padding:0}.dialog{width:100vw;max-height:100dvh;height:100dvh}.dialogbody{max-height:none}.dialogfoot{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.detailbody{padding-bottom:calc(82px + env(safe-area-inset-bottom))}
    }
    .detailstatus{position:absolute;left:29px;top:72px;z-index:3}.ordermatch{display:grid;gap:3px;margin-top:9px;padding:8px 10px;background:#fff3e7;border-left:3px solid #ef7617;color:#17242d}.ordermatch strong{font-size: 14px}.ordermatch span{font-size: 14px;color:#6b7479}.field[hidden]{display:none!important}@media(max-width:700px){.detailstatus{left:16px;top:66px}}
    .exactsetup{border-top:4px solid #ef7617}.exactguard{display:grid;gap:4px;margin:16px 0;padding:14px 16px;background:#eef8f3;border-left:4px solid #32735f}.exactguard strong{color:#245b4c}.exactguard span{color:var(--muted);font-size: 15px;line-height:1.45}.exactcredentials{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.exactcredentials .field{margin:0}.exactcredentials .exactredirect{grid-column:1/-1}.exactactions{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.exactactions>div{display:grid;gap:3px;margin-right:auto}.exactactions span,.exactactions small{font-size: 14px;color:var(--muted)}.exactstats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:12px 0}.exactstats article{display:grid;gap:5px;padding:18px;border:1px solid var(--line);background:#fff}.exactstats strong{font:500 28px/1 Georgia,serif}.exactstats span{font-size: 14px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.exactproposal,.exactinvoice,.exactsupplier{display:grid;gap:14px;align-items:center;padding:15px 0;border-top:1px solid var(--line)}.exactproposal{grid-template-columns:minmax(220px,1fr) minmax(240px,.8fr) auto}.exactproposal h4,.exactinvoice h4{margin:4px 0;font:600 20px/1.15 Georgia,serif}.exactproposal p,.exactinvoice p{margin:0;color:var(--muted);font-size: 14px}.exactprices{display:grid;gap:5px;font-size: 14px}.exactprices small{color:var(--muted)}.exactreview{display:flex;gap:7px}.exactinvoice{grid-template-columns:minmax(240px,1fr) minmax(280px,.9fr)}.exactmatch{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.exactmatch.ok{display:grid;gap:4px;padding:11px;background:#eef8f3;border-left:3px solid #32735f}.exactmatch.ok span{font-size: 14px;color:var(--muted);text-transform:uppercase}.exactsupplier{grid-template-columns:minmax(220px,1fr) minmax(260px,.8fr) auto}.exactsupplier>div{display:grid;gap:3px}.exactsupplier span{font-size: 14px;color:var(--muted)}.exactmatch select,.exactsupplier select{min-width:0;height:40px;border:1px solid var(--line);background:#fff;padding:0 9px;font:inherit}.exactredirect input{font-size: 14px;color:var(--muted)}
    .connectioncard{border-top:4px solid var(--orange)}.connectionintro{margin:0 0 18px;color:var(--muted);font-size: 15px;line-height:1.55}.connectionmeta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0}.connectionmeta div{padding:12px;background:#f5f2ed;border:1px solid #e3ddd4}.connectionmeta span{display:block;color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.connectionmeta strong{display:block;margin-top:5px;font-size: 15px;overflow-wrap:anywhere}.connectionactions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.connectionchecks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.connectioncheck{display:grid;grid-template-columns:auto 1fr;gap:9px;padding:11px;border:1px solid var(--line);background:#fff}.connectioncheck i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-style:normal;background:#f1dddd;color:#843229}.connectioncheck.ok i{background:#e2f0e9;color:#26654e}.connectioncheck strong{display:block;font-size: 15px}.connectioncheck small{display:block;margin-top:3px;color:var(--muted);font-size: 14px;line-height:1.35}.connectionadvanced{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.connectionadvanced summary{cursor:pointer;font-size: 14px;font-weight:850;color:var(--orange-dark)}
    .exactfilters{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:10px;align-items:end;margin-top:16px;padding:14px;border:1px solid var(--line);background:#faf8f4}.exactfilters .field{margin:0}.exactpick{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;border-top:1px solid var(--line)}.exactpick input{width:20px;height:20px}.exactpick h4{margin:2px 0 4px;font:600 19px/1.15 Georgia,serif}.exactpick p{margin:0;color:var(--muted);font-size: 14px}.exactpick>strong{white-space:nowrap}.exactimportbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}
    @media(max-width:850px){.exactproposal,.exactinvoice,.exactsupplier{grid-template-columns:1fr}.exactfilters{grid-template-columns:1fr 1fr}.exactreview{justify-content:flex-start}.exactcredentials{grid-template-columns:1fr}.exactcredentials .exactredirect{grid-column:auto}}@media(max-width:560px){.exactstats,.exactfilters{grid-template-columns:1fr}.exactpick{grid-template-columns:auto 1fr}.exactpick>strong{grid-column:2}.exactmatch{grid-template-columns:1fr}.exactreview{display:grid;grid-template-columns:1fr 1fr}.exactreview button{min-width:0}.exactactions button,.exactimportbar button{width:100%}.exactimportbar{align-items:stretch;flex-direction:column}}
    .quotecustomerpicker{position:relative;margin:12px 0}.quotecustomerpicker>.field{margin:0}.quotecustomerhelp{display:flex;align-items:center;gap:7px;margin:7px 0 0;color:var(--muted);font-size: 14px;line-height:1.45}.quotecustomerhelp:before{content:'TL';display:grid;place-items:center;min-width:25px;height:18px;background:#16232c;color:#fff;font-size: 14px;font-weight:900;letter-spacing:.05em}.quotecustomerresults{position:absolute;z-index:30;left:0;right:0;top:100%;max-height:300px;overflow:auto;background:#fff;border:1px solid var(--line);box-shadow:0 14px 30px #101a2226}.quotecustomerresults:empty{display:none}.quotecustomerhead{padding:8px 11px;background:#f0ede7;color:var(--muted);font-size: 14px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.quotecustomerresult{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;width:100%;padding:11px;border:0;border-top:1px solid #ebe6de;background:#fff;text-align:left;color:var(--ink);cursor:pointer}.quotecustomerresult:hover,.quotecustomerresult:focus-visible{background:#fff2e8;outline:0}.quotecustomerresult strong{display:block;font-size: 15px}.quotecustomerresult small{display:block;margin-top:3px;color:var(--muted);font-size: 14px}.quotecustomerresult span{color:var(--red);font-size: 14px;font-weight:850}.quotecustomerstatus{padding:11px;color:var(--muted);font-size: 14px}
    .quoteactions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.quote-section{border-left:5px solid var(--red)!important;background:#f5f1ea!important}.quote-section h4{font:600 21px Georgia,serif;margin:0 0 6px}.quote-line:not(.quote-section){padding:12px!important;margin:8px 0!important}.quote-line-top{display:grid;grid-template-columns:150px minmax(220px,1.1fr) minmax(220px,1.15fr) minmax(250px,1.45fr);gap:10px;align-items:end}.quote-context{min-width:0}.quote-context>.field{height:100%}.quote-line-values{display:grid;grid-template-columns:minmax(80px,.55fr) minmax(90px,.65fr) minmax(125px,.9fr) minmax(90px,.65fr) minmax(135px,1fr) minmax(120px,.85fr) auto;gap:10px;align-items:end;margin-top:10px}.quote-line .field{gap:4px;margin:0}.quote-line .field>span,.quote-line label.field{font-size: 14px}.quote-line input,.quote-line select{min-height:40px;padding:9px 11px}.quote-line textarea{height:40px;min-height:40px;padding:9px 11px;resize:vertical}.quote-line [data-line-total]{display:flex;align-items:center;min-height:40px;padding:9px 11px;border:1px solid var(--line);background:#f6f3ee}.quote-row-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.quote-row-actions button{min-height:40px;white-space:nowrap}.quote-row-actions [data-add-quote-line-after]{background:#fff2e8;border-color:var(--red);color:#a24712}.quotearticlefield{position:relative}.quotearticlesuggestions{position:absolute;z-index:25;left:0;right:0;top:100%;max-height:230px;overflow:auto;background:#fff;border:1px solid var(--line);box-shadow:0 12px 26px #101a2226}.quotearticlesuggestions:empty{display:none}.quotearticlesuggestions button{display:block;width:100%;border:0;border-top:1px solid #ebe6de;background:#fff;color:var(--ink);padding:10px;text-align:left}.quotearticlesuggestions button:hover,.quotearticlesuggestions button:focus-visible{background:#fff2e8;outline:0}.quotearticlesuggestions strong,.quotearticlesuggestions small{display:block}.quotearticlesuggestions small{margin-top:3px;color:var(--muted);font-size: 14px}.catalogpicked{border-color:var(--green)!important;background:#f0f8f4!important}@media(max-width:1100px){.quote-line-top{grid-template-columns:1fr 1fr}.quote-line-values{grid-template-columns:repeat(3,1fr)}.quote-row-actions{width:100%}}@media(max-width:700px){.quote-line-top,.quote-line-values{grid-template-columns:1fr 1fr}.quote-row-actions{grid-column:1/-1}}
    .customerrecord{display:block!important}.customerrecord[hidden]{display:none!important}.customerrecordhead{display:flex;justify-content:space-between;gap:12px;align-items:start}.customerassets{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.customerassetgroup{background:#f6f3ed;border:1px solid #e2ddd4;padding:10px}.customerassetgroup>strong{display:block;margin-bottom:7px;font-size: 14px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.customerasset{display:flex;width:100%;justify-content:space-between;gap:10px;border:0;border-top:1px solid #e4ded5;background:transparent;color:var(--ink);padding:8px 0;text-align:left}.customerasset:hover{color:var(--red)}.customerasset span{font-size: 14px;font-weight:800}.customerasset small{font-size: 14px;color:var(--muted);text-align:right}.customersearch{margin:12px 0 4px}@media(max-width:700px){.customerassets{grid-template-columns:1fr}}
    .quoteprofit{margin:18px 0;padding:16px;background:#101a22;color:#fff;border-left:5px solid var(--green)}.quoteprofithead{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:12px}.quoteprofithead h4{font:500 24px Georgia,serif;margin:0}.quoteprofithead p{margin:4px 0 0;color:#b9c2c7;font-size: 14px}.quoteprofitgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.quoteprofitgrid div{padding:10px;background:#1b2933}.quoteprofitgrid span{display:block;color:#b9c2c7;font-size: 14px;text-transform:uppercase;letter-spacing:.07em}.quoteprofitgrid strong{display:block;margin-top:4px;font-size: 18px}.quoteprofitgrid .profit-total{background:#224b3c}.quoteprofitgrid strong.negative{color:#ff9c91}@media(max-width:700px){.quoteprofitgrid{grid-template-columns:1fr 1fr}}
    .quotesignaturepanel{margin-bottom:18px;border-top:4px solid var(--red)}.quotesignaturebody{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:18px;align-items:center;margin-top:14px}.quotesignaturepreview{display:grid;place-items:center;min-height:110px;padding:12px;background:#fff;border:1px dashed #c9c3ba}.quotesignaturepreview img{display:block;max-width:100%;height:86px;object-fit:contain}.quotesignaturepreview span{color:var(--muted);font-size: 14px}.quotesignaturecontrols{display:grid;gap:9px}.quotesignaturecontrols input{max-width:100%}.quotesignaturecompact{display:none}.quotesignaturepanel.has-signature:not(.is-editing){padding:11px 16px}.quotesignaturepanel.has-signature:not(.is-editing)>.sectitle,.quotesignaturepanel.has-signature:not(.is-editing)>.quotesignaturebody{display:none}.quotesignaturepanel.has-signature:not(.is-editing)>.quotesignaturecompact{display:flex;align-items:center;gap:14px}.quotesignaturecompact img{width:120px;height:44px;object-fit:contain;background:#fff;border:1px solid var(--line)}.quotesignaturecompact>div{min-width:0;margin-right:auto}.quotesignaturecompact strong{display:block;font-size: 15px}.quotesignaturecompact span{display:block;margin-top:2px;color:var(--muted);font-size: 14px}@media(max-width:700px){.quotesignaturebody{grid-template-columns:1fr}.quotesignaturecompact{flex-wrap:wrap}.quotesignaturecompact>div{flex:1}.quotesignaturecompact button{width:100%}}
    .quoteconversations{margin-bottom:18px;border-top:4px solid var(--red)}.quoteconversation{margin-top:14px;border:1px solid var(--line);background:#f7f5f1}.quoteconversation.unread{border-left:5px solid var(--red)}.quoteconversation>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:14px 16px;background:#fff;border-bottom:1px solid var(--line)}.quoteconversation h4{margin:1px 0 2px;font:600 20px Georgia,serif}.quoteconversation header span{color:var(--muted);font-size:14px}.quotechat{display:grid;gap:9px;padding:15px;max-height:430px;overflow:auto}.quotechatmessage{width:min(78%,720px);padding:11px 13px;border:1px solid #ddd5ca;background:#fff}.quotechatmessage.staff{justify-self:end;background:#fff0e5;border-color:#edc4a6}.quotechatmessage.customer{justify-self:start}.quotechatmessage strong{display:block;font-size:14px}.quotechatmessage p{margin:4px 0;white-space:pre-wrap;line-height:1.45}.quotechatmessage small{color:var(--muted);font-size:13px}.quotereplyform{padding:14px 16px;border-top:1px solid var(--line);background:#fff}.quotereplyform .field{margin:0}.quotereplyform textarea{min-height:95px;resize:vertical}.quotereplyform>div{display:flex;align-items:center;gap:12px;margin-top:8px}.quotereplyform>div small{color:var(--muted)}@media(max-width:700px){.quoteconversation>header{display:grid}.quotechatmessage{width:92%}.quotereplyform>div{display:grid}.quotereplyform button{width:100%}}
    .quotephotos{margin:18px 0;padding:16px;border:1px solid var(--line);border-top:4px solid var(--red);background:#faf8f4}.quotephotoshead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.quotephotoshead h4{margin:2px 0 3px;font:600 23px Georgia,serif}.quotephotosgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quotephotocard{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:10px;border:1px solid var(--line);background:#fff}.quotephotocard img{width:150px;height:112px;object-fit:cover;background:#eee}.quotephotocontrols{display:grid;gap:7px}.quotephotocontrols textarea{min-height:62px;resize:vertical}.quotephotoupload{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(260px,1fr) auto;gap:10px;align-items:end;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.quotephotoupload .field{margin:0}.quotephotos .actions{gap:6px}@media(max-width:900px){.quotephotosgrid{grid-template-columns:1fr}.quotephotoupload{grid-template-columns:1fr}.quotephotocard{grid-template-columns:120px 1fr}.quotephotocard img{width:120px;height:100px}}@media(max-width:560px){.quotephotocard{grid-template-columns:1fr}.quotephotocard img{width:100%;height:180px}}
    .vehicleworkorders{margin:0 0 18px;padding:16px;background:#101b24;color:#fff;border-top:4px solid var(--orange)}.vehicleworkorderhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.vehicleworkorderhead h3{margin:0;font:500 23px Georgia,serif}.vehicleworkorderactions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.vehiclestate{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid #4e6c5f;background:#183d30;color:#dff2e8;font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.vehiclestate.inactive{border-color:#7d654c;background:#3b2d20;color:#ffd9b8}.vehicleworkorderhint{margin:0 0 14px;color:#bbc5ca;font-size: 14px}.vehiclestatehelp{display:block;margin-top:4px;color:#92a2aa;font-size: 14px}.vehicleworkorderlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.vehicleworkorder{display:grid;grid-template-rows:auto auto 1fr auto;min-width:0;border:1px solid #475660;background:#172631;color:#fff;padding:13px;text-align:left}.vehicleworkorder.active{border-color:var(--orange);box-shadow:inset 0 -3px var(--orange)}.vehicleworkorder>strong,.vehicleworkorder>span{display:block}.vehicleworkorder>strong{font-size: 18px;line-height:1.2}.vehicleworkorder>span{margin-top:4px;color:#bbc5ca;font-size: 14px}.vehicleworkorder>.workordernumber{width:max-content;margin:0 0 7px;padding:4px 7px;background:#ef7617;color:#fff;font-size: 14px;font-weight:950;letter-spacing:.08em}.workorderhourgrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px!important}.workorderhourgrid>span{display:block;padding:8px;background:#0f1b23;border:1px solid #334650}.workorderhourgrid small,.workorderhourgrid b{display:block}.workorderhourgrid small{color:#99a7af;font-size: 14px;text-transform:uppercase;letter-spacing:.05em}.workorderhourgrid b{margin-top:3px;font-size: 15px}.workorderopen{margin-top:10px;color:#ff984d!important;font-weight:850}.workorderlabel{display:inline-flex;margin:8px 0 0;padding:5px 8px;background:#fff1e5;color:#a54f0e;font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.cardvehiclemeta{margin-top:8px;color:#a54f0e!important;font-weight:850}.vehicleinactivebadge{position:absolute;left:12px;bottom:12px;padding:6px 9px;background:#3b2d20;color:#ffd9b8;border:1px solid #bd8b5d;font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.workordercomplete{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:12px;background:#eef8f3;border-left:4px solid #32735f}.workordercomplete p{margin:0;color:#4d5b55;font-size: 14px;line-height:1.45}.workordercomplete strong{display:block;color:#245b4c}.dialog.workorderdialog{width:min(760px,96vw)}.workorderinherit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:14px 0;background:var(--line);border:1px solid var(--line)}.workorderinherit div{min-width:0;padding:10px 12px;background:#f8f5ef}.workorderinherit span,.workorderinherit strong{display:block}.workorderinherit span{font-size: 14px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.workorderinherit strong{margin-top:4px;overflow-wrap:anywhere;font-size: 16px}.workorderinherit .wide{grid-column:1/-1}.workordermileagenote{margin:-6px 0 8px;color:#98500f;font-size: 14px;font-weight:750}
    .workorderdescription{margin:0 0 14px;border:1px solid #d7d4cd;border-left:6px solid #ef7617;background:#fff}.workorderdescriptionsummary{position:relative;display:block;padding:17px 54px 17px 18px;list-style:none;cursor:pointer}.workorderdescriptionsummary::-webkit-details-marker{display:none}.workorderdescriptionsummary:focus-visible{outline:3px solid #efb17d;outline-offset:-3px}.workorderdescriptionsummary>i{position:absolute;right:20px;top:50%;width:10px;height:10px;border-right:2px solid #5e696f;border-bottom:2px solid #5e696f;transform:translateY(-65%) rotate(45deg);transition:transform .16s ease}.workorderdescription[open] .workorderdescriptionsummary>i{transform:translateY(-35%) rotate(225deg)}.workorderdescriptionhead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.workorderdescriptionhead h3{margin:2px 0 0;font:500 24px Georgia,serif}.workorderdescriptionhead>span{padding:5px 8px;background:#f0ede7;color:#505a60;font-size:13px;font-weight:900;white-space:nowrap}.workorderdescriptionpreview{display:-webkit-box;overflow:hidden;margin:11px 0 0;color:#526067;font-size:15px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.workorderdescription[open] .workorderdescriptionpreview{display:none}.workorderdescriptionbody{padding:0 18px 17px;border-top:1px solid #ece8e1}.workorderdescription form textarea{width:100%;min-height:106px;margin-top:12px;border:1px solid #bfc3c1;background:#fff;padding:12px 13px;color:var(--ink);font-size:17px;line-height:1.55;resize:vertical}.workorderdescription form>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px}.workorderdescription form small{color:var(--muted);font-size:13px;line-height:1.4}.workorderdescriptiontext{margin:13px 0 0;white-space:pre-wrap;color:#263138;font-size:17px;line-height:1.6}
    @media(max-width:700px){.vehicleworkorderhead{align-items:flex-start;flex-direction:column}.vehicleworkorderactions{width:100%;justify-content:flex-start}.workordercomplete{align-items:stretch;flex-direction:column}.vehicleworkorderlist{grid-template-columns:1fr}.workorderhourgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.workorderinherit{grid-template-columns:1fr}.workorderinherit .wide{grid-column:auto}}
    .closurebox{margin-top:16px;border:1px solid var(--line);border-top:4px solid var(--orange);background:#faf8f4;padding:16px}.closurehead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.closurehead h4{margin:2px 0 4px;font:600 22px Georgia,serif}.closurehead p{margin:0;color:var(--muted);font-size: 14px;line-height:1.45}.closurestats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:13px 0}.closurestats div{padding:10px;border:1px solid var(--line);background:#fff}.closurestats span,.closurestats strong{display:block}.closurestats span{font-size: 14px;font-weight:850;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.closurestats strong{margin-top:4px;font-size: 18px}.closurewarning{margin:10px 0;padding:11px 13px;border-left:4px solid var(--amber);background:#fff3e4;color:#704916;font-size: 14px;line-height:1.45}.closurelisthead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.closurelisthead .kicker{margin:0}.closurelisthead .writeoffconfirm{margin:0;padding:7px 10px;background:#fff}.closurelisthead .writeoffconfirm input{width:17px;height:17px}.closureitems{display:grid;gap:6px;margin-top:10px}.closureitem{display:grid;grid-template-columns:22px minmax(0,1fr) 95px 100px;gap:9px;align-items:center;padding:10px;border:1px solid var(--line);background:#fff}.closureitem>input[type=checkbox]{width:18px;height:18px;accent-color:var(--red)}.closureitem strong,.closureitem small{display:block}.closureitem small{margin-top:3px;color:var(--muted);font-size: 14px}.closurequantity{display:grid;gap:3px;font-size: 14px;font-weight:850;color:var(--muted);text-transform:uppercase}.closurequantity input{width:100%;height:34px;border:1px solid var(--line);padding:0 7px}.closurevalue{text-align:right;font-weight:850}.closureactions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:13px}.closurehistory{margin-top:13px;border-top:1px solid var(--line);padding-top:10px}.closurehistory summary{cursor:pointer;font-size: 14px;font-weight:850;color:var(--orange-dark)}.closurehistoryrow{display:grid;grid-template-columns:1fr auto;gap:8px;padding:8px 0;border-top:1px solid #e7e1d8;font-size: 14px}.closurehistoryrow small{display:block;color:var(--muted);margin-top:3px}.workorderarchive{margin-top:12px;border-top:1px solid #40515c;padding-top:12px}.workorderarchive summary{cursor:pointer;color:#ffad72;font-size: 14px;font-weight:850}.workorderempty{padding:14px;border:1px dashed #53636d;color:#bbc5ca;font-size: 14px}.workorderempty strong,.workorderempty span{display:block}.workorderempty span{margin-top:4px}.writeoffsummary{padding:12px;border-left:4px solid var(--red);background:#f7ece8}.writeoffsummary strong{display:block;font-size: 18px}.writeoffsummary p{margin:5px 0 0;color:var(--muted);font-size: 14px}.writeoffconfirm{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:12px;border:1px solid #d9b3a5;background:#fff6f2;font-size: 14px;line-height:1.45}.writeoffconfirm input{width:20px;height:20px;flex:0 0 auto;accent-color:var(--red)}
    @media(max-width:760px){.closurestats{grid-template-columns:1fr 1fr}.closureitem{grid-template-columns:22px 1fr}.closurequantity,.closurevalue{grid-column:2}.closurevalue{text-align:left}.closurehead{flex-direction:column}}
    .timeentry.overhead,.reportentry.overhead{background:#fff3e7;border-left:5px solid #ef7617}.timeentry.overhead strong,.reportentry.overhead strong{color:#a84a08}@media(max-width:700px){#customerForm .formrow[style*="grid-template-columns"]{grid-template-columns:1fr!important}}
    .articlelisthead,.articlerow{grid-template-columns:56px 66px minmax(180px,2.2fr) minmax(78px,.75fr) 48px 64px 50px 64px 104px 104px 52px 118px;gap:5px;min-width:1100px}.articlelisthead{padding-left:7px;padding-right:7px}.articlerow{padding-left:7px;padding-right:7px}.articlerow input,.articlerow select{width:100%;min-width:0;height:32px;border:1px solid var(--line);background:#fff;padding:0 5px;font-size: 13px}.articlerow .rowactions,.articleactions{display:flex;gap:3px}.articlerow .rowactions button,.articleactions button{min-width:0;min-height:30px;padding:0 6px;font-size: 13px}.articlerow.newarticle{background:#fff2e8;border-top:3px solid var(--red)}.articlerow.editing{background:#fffaf4}.ledgerpair{display:grid;grid-template-columns:1fr 1fr;gap:3px}.ledgercodes{font-size: 13px;line-height:1.25;white-space:nowrap}.ledgercodes b{color:var(--orange-dark)}
    .articlesortbutton{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;min-width:0;padding:6px 3px;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.articlesortbutton span{min-width:0;overflow:hidden;text-overflow:ellipsis}.articlesortbutton b{flex:0 0 auto;color:#aeb8bd;font-size:10px}.articlesortbutton:hover,.articlesortbutton:focus-visible{background:#ffffff18;color:#fff;outline:1px solid #ffffff70;outline-offset:-1px}.articlesortbutton.active{color:#fff;background:#ffffff12}.articlesortbutton.active b{color:var(--orange);font-size:11px}
    .ratetable{border:1px solid var(--line);overflow:auto}.ratetablehead,.raterow{display:grid;grid-template-columns:minmax(150px,1fr) minmax(190px,1.35fr) 105px minmax(230px,1.35fr) 75px 190px;gap:8px;align-items:center;min-width:980px}.ratetablehead{padding:7px 10px;background:#101a22;color:#fff;font-size: 14px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.raterow{min-height:45px;padding:6px 10px;border-top:1px solid #e6e1d9;background:#fff;font-size: 14px}.raterow:nth-child(odd){background:#faf8f3}.raterow.newrate{background:#fff2e8;border-top:3px solid var(--red)}.raterow.editing{background:#fffaf4}.raterow.inactive{opacity:.55}.raterow input,.raterow select{width:100%;min-width:0;height:32px;border:1px solid var(--line);background:#fff;padding:0 7px;font-size: 14px}.raterow .ratevalue{text-align:right;font-variant-numeric:tabular-nums}.raterow .rateactions{justify-content:flex-end}.raterow .rateactions button{height:32px;padding:0 8px;font-size: 14px}.raterow .rateactions .primary{background:var(--red);border-color:var(--red);color:#fff}.raterow .rateactions .danger{color:var(--red)}
    .waitingorderspanel{padding:13px 15px}.waitingorderspanel>.sectitle{align-items:center;margin-bottom:8px}.waitingorderspanel>.sectitle h3{font-size:20px;margin:0 0 2px}.waitingorderspanel>.sectitle .hint{margin:2px 0 0}.waitingorderspanel>.sectitle>div:last-child{display:flex;align-items:center;gap:7px}.waitingorderspanel #newStockOrder{min-height:34px;padding:0 13px;font-size: 14px}.waitingorderspanel .count{min-width:24px;height:24px}.waitingordersearch{display:grid;grid-template-columns:auto minmax(220px,1fr);align-items:center;gap:9px;margin:6px 0 9px}.waitingordersearch input{height:34px}.waitingordercard{padding:10px 12px;margin-top:7px}.waitingordercard .sectitle{align-items:center;margin-bottom:6px}.waitingordercard .sectitle .kicker{margin-bottom:2px}.waitingordercard .sectitle h3{font-size: 20px;margin:0 0 2px}.waitingordercard .hint{margin:0;font-size: 14px}.waitingordercard .smallbtn{height:29px;padding:0 9px}.waitingordercard .orderreceipt{margin-top:5px;gap:3px}.waitingordercard .orderreceipt>strong{font-size: 14px}.waitingordercard .orderreceipt label{min-height:29px;padding:4px 7px;font-size: 14.5px}.atdtrial{margin-bottom:14px;padding:14px 16px;border-top:4px solid var(--red)}.atdtrial .sectitle{margin-bottom:8px}.atdtrial .sectitle h3{margin-bottom:2px}.atdtrialform{display:grid;grid-template-columns:minmax(250px,1fr) auto;gap:8px;align-items:end}.atdtrialform .field{margin:0}.atdtrialform input{height:36px}.atdtrialform .primary{min-height:36px}.atdtrialresults{display:grid;gap:5px;margin-top:9px}.atdtrialrow{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;gap:8px;align-items:center;padding:7px 8px;border:1px solid var(--line);background:#f8f5ef}.atdtrialdesc{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 10px;align-items:center}.atdtrialdesc .atdtrialthumb{grid-row:1/3;width:64px;height:64px;object-fit:contain;background:#fff;border:1px solid var(--line)}.atdtrialdesc strong,.atdtrialdesc span{display:block}.atdtrialdesc strong{font-size: 14px}.atdtrialdesc span{margin-top:2px;color:var(--muted);font-size: 14px}.articlename{display:flex;align-items:center;gap:8px}.articlethumb{width:42px;height:42px;flex:0 0 42px;object-fit:contain;background:#fff;border:1px solid var(--line)}.atdtrialprice{text-align:right;font-size: 15px}.atdtrialactions{display:flex;gap:5px}.atdtrialactions .primary{min-height:32px;padding:0 10px;font-size: 14px}.suppliersearchhead{display:flex;align-items:start;justify-content:space-between;gap:14px}.suppliersearchform{display:grid;grid-template-columns:minmax(190px,.45fr) minmax(300px,1.55fr) auto;gap:8px;align-items:end}.suppliersearchform .field{margin:0}.supplierconnectpanel{margin-top:13px;padding:14px;border:1px solid #e5d7cf;background:#fbf7f1}.supplierconnectpanel[hidden]{display:none}.supplierconnectgrid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.supplierconnectgrid .wide{grid-column:1/-1}.supplierconnectactions{display:flex;justify-content:flex-end;gap:7px;margin-top:10px}.suppliertestresult{margin-top:9px;padding:10px;border-left:3px solid var(--amber);background:#fff}.suppliertestresult.ok{border-color:var(--green);background:#eef7f2}.supplierexternalresult{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);background:#f8f5ef}.supplierexternalresult p{margin:4px 0 0;font-size: 14px;color:var(--muted)}@media(max-width:700px){.waitingorderspanel>.sectitle{align-items:stretch}.waitingorderspanel>.sectitle>div:last-child{justify-content:space-between}.waitingordersearch{grid-template-columns:1fr;gap:4px}.waitingordercard .sectitle{align-items:flex-start}.waitingordercard .sectitle button{flex:none}.atdtrialform,.suppliersearchform,.supplierconnectgrid{grid-template-columns:1fr}.supplierconnectgrid .wide{grid-column:auto}.suppliersearchhead{display:grid}.atdtrialrow{grid-template-columns:1fr}.atdtrialprice{text-align:left}.atdtrialactions{display:grid;grid-template-columns:1fr 1fr}.atdtrialactions button{width:100%}.supplierexternalresult{align-items:stretch;flex-direction:column}.supplierexternalresult a{width:100%;text-align:center}}

    .allorderspanel{padding:15px}.allorderspanel>.sectitle{align-items:center;margin-bottom:12px}.allorderspanel>.sectitle h3{margin-bottom:3px}.allorderfilters{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(155px,.7fr));gap:9px;align-items:end;padding:11px;background:#f3f0e9;border:1px solid var(--line)}.allorderfilters .field{margin:0}.allorderfilters input,.allorderfilters select{height:36px}.allorderlist{display:grid;gap:7px;margin-top:11px}.allorderrow{display:grid;grid-template-columns:minmax(280px,1.35fr) minmax(330px,1fr) auto;gap:14px;align-items:center;padding:11px 12px;border:1px solid #dfdad2;background:#fff}.allorderrow[hidden]{display:none}.allorderidentity>div{display:flex;align-items:center;gap:7px;margin-bottom:5px}.allorderidentity .orderstatus{margin-left:0}.allorderidentity>strong,.allorderidentity>small{display:block}.allorderidentity>strong{font-size:16px}.allorderidentity>small{margin-top:4px;color:var(--muted);font-size:13px;line-height:1.35}.allordermeta{display:grid;grid-template-columns:repeat(4,minmax(68px,1fr));gap:5px}.allordermeta span{display:block;padding:7px 8px;background:#f5f2ec;color:var(--muted);font-size:12px;text-align:center}.allordermeta b{display:block;margin-bottom:2px;color:var(--ink);font-size:14px}.allorderrow>.smallbtn{white-space:nowrap}@media(max-width:1050px){.allorderfilters{grid-template-columns:1fr 1fr}.allorderrow{grid-template-columns:1fr auto}.allordermeta{grid-column:1/-1;grid-row:2}.allorderrow>.smallbtn{grid-column:2;grid-row:1}}@media(max-width:650px){.allorderfilters{grid-template-columns:1fr}.allorderrow{grid-template-columns:1fr}.allordermeta{grid-column:auto;grid-row:auto;grid-template-columns:1fr 1fr}.allorderrow>.smallbtn{grid-column:auto;grid-row:auto;width:100%}}
    .mediaopen{display:block;width:100%;height:100%}.mediaheadcontrols{display:flex;align-items:center;gap:9px}.mediaselectbutton{min-height:34px}.mediatoolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:-4px 0 14px;padding:10px;background:#f5f2ec;border:1px solid var(--line)}.mediatoolbar[hidden]{display:none}.mediatoolbar .checkrow{margin-right:auto}.mediacount{font-size: 14px;font-weight:800;color:var(--muted)}.mediacheck{display:none;position:absolute;z-index:6;left:9px;top:9px;width:31px;height:31px;border-radius:3px;background:#fffefbe8;border:1px solid #8c867e;place-items:center;box-shadow:0 3px 10px #0002}.mediacheck input{width:18px;height:18px;accent-color:var(--red)}.media-selecting .mediacheck{display:grid}.media-selecting .galleryitem,.media-selecting .documentitem{cursor:pointer}.galleryitem.media-selected{outline:4px solid var(--red);outline-offset:-4px}.documentitem.media-selected{border-color:var(--red);box-shadow:inset 4px 0 var(--red)}.media-selecting .remove,.media-selecting .setcover{display:none}.documentselect{position:relative;left:auto;top:auto;box-shadow:none}.media-selecting .documentitem.selectablemedia{grid-template-columns:auto auto 1fr auto}@media(max-width:700px){.mediaheadcontrols{align-items:flex-end;flex-direction:column}.mediatoolbar{align-items:stretch}.mediatoolbar .checkrow{width:100%}.media-selecting .documentitem.selectablemedia{grid-template-columns:auto auto 1fr}.documentactions{grid-column:1/-1}}
    .workshopbonpanel{border-top:4px solid var(--orange)}.workshopbonhead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.workshopbonhead .sectitle{margin:0}.workshopformatbadge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;background:#fff0e4;color:#9b470b;border:1px solid #efb17d;font-size: 14px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.workshopbonpanel .projectqr{display:grid;grid-template-columns:152px minmax(0,1fr);gap:20px;align-items:start;margin-top:15px}.projectqrcode{display:grid;gap:7px;padding:10px;border:1px solid var(--line);background:#f8f5ef;text-align:center}.workshopbonpanel .projectqrcode img{display:block;width:130px;height:130px;margin:auto;border:0;background:#fff;padding:4px}.projectqrcode span{color:var(--muted);font-size: 14px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.workshopbuilder{min-width:0}.workshopintro{margin:0 0 10px;color:var(--muted);font-size: 14px;line-height:1.45}.workshopinternalnote{margin-top:8px}.workshopfiletypes{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:8px}.workshopfiletype{display:flex;align-items:center;gap:7px;min-height:31px;padding:0 10px;border:1px solid var(--line);background:#fff;font-size: 14px;font-weight:850}.workshopfiletype b{display:grid;place-items:center;width:25px;height:21px;background:#101a22;color:#fff;font-size: 14px;letter-spacing:.05em}.workshopfiletype.pdf b{background:var(--orange)}.workshopbonpanel .workshopattachments{position:relative;display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;min-height:78px;margin:0;padding:11px 13px;border:2px dashed #aaa298;background:#faf8f3;cursor:pointer;transition:.15s ease;text-transform:none}.workshopbonpanel .workshopattachments:hover,.workshopbonpanel .workshopattachments:focus-within{border-color:var(--orange);background:#fff6ed}.workshopbonpanel .workshopattachments.selected{border-style:solid;border-color:#78aa92;background:#f1f8f4}.workshopbonpanel .workshopattachments input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.workshopattachmenticon{display:grid;place-items:center;width:42px;height:46px;background:#101a22;color:#fff;border-top:4px solid var(--orange);font-size:20px;font-weight:400}.workshopattachmentcopy{display:grid;gap:3px;min-width:0}.workshopattachmentcopy strong{color:var(--ink);font-size: 16px;letter-spacing:0;text-transform:none}.workshopattachmentcopy small{color:var(--muted);font-size: 14px;font-weight:500;line-height:1.35;letter-spacing:0;text-transform:none}.workshopattachmentbutton{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;background:#101a22;color:#fff;font-size: 14px;font-weight:900;white-space:nowrap}.workshopbonpanel .workshopattachments>span[data-workshop-sheet-count]{grid-column:2/-1;color:var(--muted);font-size: 14px;font-weight:800;letter-spacing:0;text-transform:none}.workshopfilelist{margin-top:8px;border:1px solid var(--line);background:#fff}.workshopfilelist[hidden]{display:none}.workshopfilelisthead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:#f1eee8}.workshopfilelisthead strong{font-size: 14px;letter-spacing:.06em;text-transform:uppercase}.workshopfilelisthead button,.workshopfileitem>button{border:0;background:transparent;color:#a33f34;font-size: 14px;font-weight:850;cursor:pointer}.workshopfileitem{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 10px;border-top:1px solid #e7e2da}.workshopfileitem>span{display:grid;place-items:center;width:34px;height:27px;background:#101a22;color:#fff;font-size: 14px;font-weight:900;letter-spacing:.05em}.workshopfileitem>span.pdf{background:var(--orange)}.workshopfileitem div{min-width:0}.workshopfileitem strong,.workshopfileitem small{display:block}.workshopfileitem strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size: 14px}.workshopfileitem small{margin-top:2px;color:var(--muted);font-size: 14px}.workshopbonpanel .projectqractions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:11px}.workshopbonpanel .projectqractions .primary{min-width:190px}.workshopbonpanel .projectqractions .smallbtn{min-height:38px}@media(max-width:760px){.workshopbonhead{flex-direction:column;gap:8px}.workshopbonpanel .projectqr{grid-template-columns:1fr}.projectqrcode{width:152px}.workshopbonpanel .workshopattachments{grid-template-columns:42px 1fr}.workshopattachmentbutton{grid-column:2;justify-self:start}.workshopfileitem{grid-template-columns:38px minmax(0,1fr)}.workshopfileitem>button{grid-column:2;justify-self:start;padding:0}.workshopbonpanel .projectqractions{display:grid;grid-template-columns:1fr 1fr}.workshopbonpanel .projectqractions .primary{grid-column:1/-1;width:100%}.workshopbonpanel .projectqractions .smallbtn{width:100%;text-align:center}}
    .quote-line:not(.quote-section){padding:10px!important}.quote-line-top{grid-template-columns:170px minmax(300px,1.45fr) minmax(270px,1fr);gap:8px;align-items:start}.quote-context,.quote-context .field{min-width:0}.quote-type-field,.quote-details-field{align-self:start}.quotearticlehint{display:block;min-height:13px;margin-top:3px;color:var(--muted);font-size: 14px;font-weight:700;line-height:1.25;text-transform:none;letter-spacing:0}.catalogpicked+.quotearticlehint{color:#26705a;font-weight:850}.quote-line-values{grid-template-columns:80px 96px 116px 92px 116px 115px minmax(205px,auto);gap:8px;margin-top:7px}.quote-line input,.quote-line select{min-height:36px;padding:7px 9px}.quote-line textarea{height:36px;min-height:36px;padding:7px 9px}.quote-line [data-line-total]{min-height:36px;padding:7px 9px}.quote-row-actions{display:flex;gap:5px}.quote-row-actions button{min-height:36px;padding:0 10px}.quotearticlesuggestions{top:calc(100% - 13px)}@media(max-width:1100px){.quote-line-top{grid-template-columns:150px minmax(280px,1fr)}.quote-details-field{grid-column:1/-1}.quote-line-values{grid-template-columns:repeat(3,minmax(110px,1fr))}.quote-row-actions{grid-column:1/-1;justify-content:flex-end}}@media(max-width:700px){.quote-line-top,.quote-line-values{grid-template-columns:1fr}.quote-details-field{grid-column:auto}.quote-row-actions{display:grid;grid-template-columns:1fr 1fr}.quote-row-actions button{width:100%}}

.auditcontrols{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:9px;align-items:end;margin:16px 0}.auditlist{display:grid;gap:9px}.audititem{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);background:#fff;padding:13px 15px}.audititem.clickable{cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.audititem.clickable:hover,.audititem.clickable:focus{background:#fff7ec;border-color:#ef7617;outline:0;transform:translateX(2px)}.audititem.clickable .auditbody strong:after{content:'  ›';color:#ef7617}.audititem.failed{border-left:5px solid #b7392f}.audititem.ok{border-left:5px solid #2f755e}.auditwhen{font-size: 14px;color:var(--muted);line-height:1.5}.auditbody strong{display:block;font-size: 17px}.auditbody p{margin:3px 0 0;color:var(--muted);font-size: 14px}.auditbadge{background:#eee9e1;padding:6px 9px;font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.auditbadge.failed{background:#f6dfdc;color:#8d2822}@media(max-width:720px){.auditcontrols{grid-template-columns:1fr}.audititem{grid-template-columns:1fr}.auditbadge{justify-self:start}}
    .invoicepdfmultilink{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.invoiceordergroup{margin-top:10px;border:1px solid #d9d3c9;background:#f7f4ee;padding:8px}.invoiceordergrouphead{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px 10px;background:#101a22;color:#fff;border-left:4px solid var(--orange)}.invoiceordergrouphead small,.invoiceordergrouphead strong,.invoiceordergrouphead h4{display:block}.invoiceordergrouphead small{color:#aeb8be;font-size: 14px;font-weight:900;letter-spacing:.08em}.invoiceordergrouphead h4{margin:3px 0 0;font-size: 18px}.invoiceordergrouphead strong{margin-top:3px;font-size: 14px}.invoiceordergroup .invoiceextrasection{background:#fff;padding:8px;margin-top:7px;border:1px solid var(--line)}@media(max-width:650px){.invoiceordergroup{padding:6px}.invoiceordergrouphead{grid-template-columns:1fr}}
    .personnelreporttrial{border-top:5px solid var(--red)}.personnelreporttrialbadge{background:#101a22;color:#fff;padding:8px 12px;font-size: 14px;font-weight:900;letter-spacing:.12em}.personnelreportfilters{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px}.personnelreportoptions{display:flex;gap:20px;flex-wrap:wrap;padding:11px 0 17px;border-top:1px solid var(--line)}.personnelreportoptions label{display:flex;align-items:center;gap:7px;font-size: 15px;font-weight:750}.personnelreportoptions input{width:17px;height:17px;accent-color:var(--red)}.personnelreportactions{display:flex;gap:9px;justify-content:flex-end}.personnelreportemployee{padding:20px}.personnelreportteam{border-left:5px solid var(--red)}.personnelreportteam>.sectitle>strong{font:500 27px Georgia,serif;color:var(--red)}.personnelreportsummary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line)}.personnelreportsummary>div{padding:13px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#faf8f3}.personnelreportsummary>div:nth-child(4n){border-right:0}.personnelreportsummary span,.personnelreportsummary strong{display:block}.personnelreportsummary span{color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase}.personnelreportsummary strong{margin-top:6px;font:500 19px Georgia,serif}.personnelreportactivity{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.personnelreportactivity>div{display:flex;align-items:baseline;gap:6px;padding:10px 12px;background:#101a22;color:#fff}.personnelreportactivity b{font-size: 20px}.personnelreportactivity span{color:#bdc5ca;font-size: 14px}.personnelreportwarning{display:flex;gap:14px;align-items:center;margin-top:12px;padding:11px 13px;background:#fff0e4;border-left:4px solid var(--red);font-size: 14px}.personnelreportwarning.ok{background:#edf7f2;border-color:var(--green)}.personnelreportwarning span{color:var(--muted)}.personnelreportinsight{margin:12px 0 0;padding:9px 12px;background:#f3f0e9;color:var(--muted);font-size: 14px}.personnelreportinsight strong{color:var(--ink)}.personnelreportbreakdowns{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;margin-top:16px}.personnelreportbreakdowns>section{min-width:0;border:1px solid var(--line)}.personnelreportbreakdowns h4{margin:0;padding:11px 12px;background:#101a22;color:#fff;font-size: 15px}.personnelreporttablescroll{overflow:auto}.personnelreportbreakdowns table{width:100%;border-collapse:collapse;min-width:450px;font-size: 14px}.personnelreportbreakdowns th,.personnelreportbreakdowns td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.personnelreportbreakdowns th:first-child,.personnelreportbreakdowns td:first-child{text-align:left}.personnelreportbreakdowns td small{display:block;margin-top:2px;color:var(--muted)}.personnelreportbar{display:inline-block;width:44px;height:5px;margin-right:5px;background:#e5e0d8;vertical-align:middle}.personnelreportbar i{display:block;height:100%;background:var(--red)}.personnelreportdays{display:grid;gap:10px;margin-top:16px}.personnelreportday{border:1px solid var(--line)}.personnelreportdayhead{display:flex;justify-content:space-between;padding:10px 12px;background:#eeeae3;text-transform:capitalize;font-size: 15px}.personnelreportentry{display:grid;grid-template-columns:105px minmax(0,1fr) 65px;gap:12px;align-items:center;padding:9px 12px;border-top:1px solid var(--line);font-size: 14px}.personnelreportentry.overhead{border-left:4px solid var(--red);background:#fff7ef}.personnelreportentry div strong,.personnelreportentry div small{display:block}.personnelreportentry div small{margin-top:3px;color:var(--muted)}.personnelreportentry>b{text-align:right}@media(max-width:800px){.personnelreportfilters{grid-template-columns:1fr}.personnelreportsummary{grid-template-columns:repeat(2,1fr)}.personnelreportsummary>div:nth-child(4n){border-right:1px solid var(--line)}.personnelreportsummary>div:nth-child(2n){border-right:0}.personnelreportactivity,.personnelreportbreakdowns{grid-template-columns:1fr}.personnelreportentry{grid-template-columns:82px minmax(0,1fr) 55px}.personnelreportwarning{align-items:flex-start;flex-direction:column;gap:3px}}
    .personnelactivitymatrix{border-top:5px solid #101a22}.activitymatrixtable th,.activitymatrixtable td{min-width:88px;height:54px;padding:6px}.activitymatrixtable thead th{line-height:1.25;text-transform:capitalize}.activitymatrixtable .reportname{min-width:180px;padding:6px 12px}.activitymatrixtable .reporttotal{min-width:104px;padding:6px 10px}.activitymatrixcell.hasactivity{background:#fff8ef}.activitymatrixcount{display:block;font-size: 13px;line-height:1.3;text-align:left}.activitymatrixcount b{display:inline-block;min-width:20px;font-size: 15px}.activitymatrixcount.updates{color:#101a22}.activitymatrixcount.photos{color:#b74f08}.activitymatrixempty{color:#9aa0a3}.activitymatrixtable tfoot .activitymatrixcell.hasactivity{background:#f7e8da}.activitymatrixtable .reportweekend.hasactivity{background:#eee8df!important}@media(max-width:800px){.activitymatrixtable th,.activitymatrixtable td{min-width:82px}.activitymatrixtable .reportname{min-width:145px}.activitymatrixtable .reporttotal{min-width:96px}}

/* Logische hoofdnavigatie */
.topbar{height:66px;overflow:visible;padding:0 16px;gap:14px}
.brandbutton{padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.brandbutton:focus-visible,.mainnavbtn:focus-visible,.toputility:focus-visible,.topnew:focus-visible,.avatar:focus-visible{outline:3px solid #ff9b54;outline-offset:2px}
.primarynav{align-self:stretch;display:flex;align-items:stretch;gap:2px;min-width:0}
.mainnavbtn{position:relative;min-width:0;border:0;background:transparent;color:#c9d0d4;padding:0 12px;font-size:14px;font-weight:850;white-space:nowrap}
.mainnavbtn:hover{background:#192833;color:#fff}.mainnavbtn.active{background:#172631;color:#fff}.mainnavbtn.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:4px;background:var(--red)}
.topactions{flex:0 0 auto;gap:7px}.toputility,.topnew{height:38px;border-radius:3px;padding:0 12px;font-size:14px;font-weight:850;white-space:nowrap}
.toputility{display:inline-flex;align-items:center;gap:7px;border:1px solid #53616b;background:#172631;color:#e8ecee}.toputility:hover,.toputility.attention{border-color:#ef7617;background:#263844;color:#fff}.toputility.attention{animation:notificationborderpulse 1.35s ease-in-out infinite}
.topnew{border:1px solid #ff9b54;background:var(--red);color:#fff}.topnew:hover{background:var(--red2)}
.topbadge{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:16px;background:#fff;color:#a9470d;font-size:15px;font-weight:950;line-height:1}.topbadge[hidden]{display:none}
@keyframes notificationborderpulse{0%,100%{border-color:#ef7617;box-shadow:0 0 0 0 rgba(239,118,23,.12)}50%{border-color:#ffb06f;box-shadow:0 0 0 4px rgba(239,118,23,.3)}}
@media(prefers-reduced-motion:reduce){.toputility.attention{animation:none}}
.topbar .avatar{display:grid;width:38px;height:38px;margin-left:0;place-items:center;cursor:pointer}
.legacy-top-controls{display:none!important}
.toppopover{position:fixed;z-index:95;top:72px;right:16px;width:min(390px,calc(100vw - 32px));overflow:hidden;border:1px solid #53616b;border-top:4px solid var(--red);background:#fffefb;color:var(--ink);box-shadow:0 22px 52px #08101759}
.toppopover[hidden]{display:none}.toppopover>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#101a22;color:#fff}.toppopover>header strong{font:600 20px Georgia,serif}.toppopover>header button{width:32px;height:32px;border:1px solid #53616b;background:transparent;color:#fff;font-size:20px}
.topmenulist{display:grid;padding:7px}.topmenurow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;min-height:58px;border:0;border-top:1px solid #ebe6de;background:#fffefb;color:var(--ink);padding:10px 11px;text-align:left}.topmenurow:first-child{border-top:0}.topmenurow:hover,.topmenurow:focus-visible{background:#fff1e5;outline:0}.topmenurow strong,.topmenurow small{display:block}.topmenurow strong{font-size:15px}.topmenurow small{margin-top:3px;color:var(--muted);font-size:13px;line-height:1.3}.topmenucount{display:grid;place-items:center;min-width:31px;height:31px;padding:0 7px;border-radius:16px;background:#eee9e1;color:#5e666b;font-size:13px}.topmenuempty{margin:0;padding:18px;color:var(--muted);font-size:14px}
.mobilebadge{position:absolute;top:2px;right:calc(50% - 30px);display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--red);color:#fff;font-size:11px}.mobilebadge[hidden]{display:none}
@media(max-width:1050px) and (min-width:701px){.topbar{gap:8px;padding-left:10px;padding-right:10px}.brandlogo{width:88px}.primarynav{gap:0}.mainnavbtn{padding:0 8px;font-size:13px}.topactions{gap:4px}.toputility,.topnew{padding:0 9px;font-size:13px}.topbar .avatar{display:grid!important}.mainnavbtn#navDossiersText{display:none}}
@media(max-width:820px) and (min-width:701px){.mainnavbtn{padding:0 6px}.mainnavbtn#navWorkshop{font-size:0}.mainnavbtn#navWorkshop:before{content:'Werk';font-size:13px}.mainnavbtn#navSales{font-size:0}.mainnavbtn#navSales:before{content:'Verkoop';font-size:13px}.toputility{font-size:0}.toputility:before{content:'Meldingen';font-size:13px}}
@media(max-width:700px){
  .topbar{height:58px!important;padding:0 9px!important;overflow:visible!important}.primarynav,.toputility,.topnew{display:none!important}.topactions{margin-left:auto}.topactions>#userAvatar{display:grid!important}.brandbutton{display:flex!important}.toppopover{top:62px;left:8px;right:8px;width:auto;max-height:calc(100dvh - 140px);overflow:auto}
  .mobilenav{grid-template-columns:repeat(5,minmax(0,1fr))!important}.mobilenav button{font-size:12px!important}.mobilenav button:before{font-size:19px!important}.mobilenav button[data-mobile-action="projects"]:before{content:'▤'}.mobilenav button[data-mobile-action="clock"]:before{content:'◷'}.mobilenav button[data-mobile-action="planning"]:before{content:'▦'}.mobilenav button[data-mobile-action="messages"]:before{content:'●'}.mobilenav button[data-mobile-action="more"]:before{content:'•••';letter-spacing:2px}
}

/* Compacte werkplaatsbon met één duidelijke oranje actiestijl. */
.workshopbonpanel{padding:20px}
.workshopbonhead{align-items:center;padding-bottom:13px;border-bottom:1px solid var(--line)}
.workshopbonhead .sectitle{margin:0}
.workshopbonpanel .projectqr{grid-template-columns:146px minmax(0,1fr);gap:18px;margin-top:16px}
.workshopbonpanel .projectqrcode{padding:9px;background:#faf7f1;border-color:#d8d2c8}
.workshopbonpanel .projectqrcode img{width:124px;height:124px}
.workshopbonpanel .projectqrcode span{font-size:12px;line-height:1.35}
.workshopbonpanel .workshopintro{max-width:980px;margin:0 0 11px;font-size:15px;line-height:1.45}
.workshopbonpanel .workshopfiletypes{gap:8px;margin-bottom:10px}
.workshopbonpanel .workshopfiletype{min-height:34px;padding:4px 10px 4px 5px;background:#fff;border-color:#d8d2c8;gap:8px}
.workshopbonpanel .workshopfiletype b{width:auto;min-width:46px;height:24px;padding:0 7px;background:var(--red);font-size:12px}
.workshopbonpanel .workshopfiletype.pdf b{background:var(--red)}
.workshopbonpanel .workshopfiletype span{font-size:13px;font-weight:800}
.workshopbonpanel .workshopattachments{grid-template-columns:44px minmax(0,1fr) auto;gap:12px;min-height:82px;padding:12px 14px;border-color:#ef9b5a;background:#fff8f1;border-radius:4px}
.workshopbonpanel .workshopattachments:hover,.workshopbonpanel .workshopattachments:focus-within{border-color:var(--red);background:#fff2e7}
.workshopbonpanel .workshopattachmenticon{width:44px;height:48px;border:0;border-radius:3px;background:var(--red);color:#fff}
.workshopbonpanel .workshopattachmentcopy{gap:2px}
.workshopbonpanel .workshopattachmentcopy strong{font-size:16px}
.workshopbonpanel .workshopattachmentcopy small{font-size:13px}
.workshopbonpanel .workshopattachmentcopy [data-workshop-sheet-count]{display:block;margin-top:4px;color:var(--muted);font-size:13px;font-weight:850;letter-spacing:0;text-transform:none}
.workshopbonpanel .workshopattachmentbutton{min-height:42px;padding:0 17px;border-radius:3px;background:var(--red);color:#fff;box-shadow:0 6px 16px rgba(239,118,23,.18)}
.workshopbonpanel .workshopattachments:hover .workshopattachmentbutton{background:var(--red2)}
.workshopbonpanel .workshopinternalnote{margin:9px 0 0;padding:8px 10px;background:#f5f1ea;border-left:3px solid var(--red);font-size:13px}
.workshopbonpanel .projectqractions{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:8px;margin-top:13px}
.workshopbonpanel .workshopaction{display:flex;align-items:center;justify-content:center;min-height:46px;padding:8px 13px;border:1px solid var(--red);border-radius:4px;background:var(--red);color:#fff;box-shadow:0 6px 16px rgba(239,118,23,.17);font-size:14px;font-weight:850;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer}
.workshopbonpanel .workshopaction:hover,.workshopbonpanel .workshopaction:focus-visible{background:var(--red2);border-color:var(--red2);color:#fff;outline:3px solid rgba(239,118,23,.22);outline-offset:2px}
.workshopbonpanel .workshopaction:disabled{opacity:.62;cursor:wait}
@media(max-width:760px){
  .workshopbonpanel{padding:15px}
  .workshopbonpanel .projectqr{grid-template-columns:1fr}
  .workshopbonpanel .projectqrcode{width:146px}
  .workshopbonpanel .workshopattachments{grid-template-columns:44px minmax(0,1fr)}
  .workshopbonpanel .workshopattachmentbutton{grid-column:1/-1;width:100%}
  .workshopbonpanel .projectqractions{grid-template-columns:1fr}
}
.partnerresponsenote{display:block;margin-top:6px;padding:9px;border-left:4px solid #34745d;background:#e8f2ed;color:#285d4b}

.weeklytipadmin{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:22px;align-items:start}.weeklytipformcard form{display:grid;gap:14px}.weeklytiptranslation{border:1px solid #d8d2c8;background:#faf8f4;padding:12px 14px}.weeklytiptranslation summary{cursor:pointer;font-weight:800;color:#596269}.weeklytiptranslation[open]{display:grid;gap:12px}.weeklytiptranslation[open] summary{margin-bottom:4px}.weeklytiptranslateaction{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;background:#fff4e8;border-left:4px solid #ef7617}.weeklytiptranslateaction small{color:#6e767b;line-height:1.45}.weeklytiptranslateaction button{flex:0 0 auto}.weeklytipimagecontrol{margin-top:22px;padding-top:20px;border-top:1px solid #ddd9d1;display:flex;align-items:center;justify-content:space-between;gap:18px}.weeklytipimagecontrol strong{display:block;font-size:17px}.weeklytipimagecontrol p{margin:5px 0 0;max-width:560px;color:#6e767b;line-height:1.5}.weeklytipimageactions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.weeklytipimageactions .disabled{opacity:.55;pointer-events:none}.weeklytippreviewpanel{position:sticky;top:18px}.weeklytippreview{overflow:hidden;border:1px solid #d8d2c8;background:#fffefb;box-shadow:0 16px 36px rgba(20,27,32,.12)}.weeklytippreview>img,.weeklytipimageempty{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#14202a}.weeklytipimageempty{display:grid;place-content:center;text-align:center;color:#fff}.weeklytipimageempty strong{color:#ef7617;letter-spacing:.15em}.weeklytipimageempty span{margin-top:7px;color:#bdc8cd}.weeklytippreviewbody{padding:24px}.weeklytippreviewbody h3{margin:0;font:500 27px/1.12 Georgia,serif}.weeklytippreviewtext{margin:13px 0 20px;color:#505a60;font-size:16px;line-height:1.65;white-space:pre-wrap}.weeklytipauthor{display:flex;align-items:center;gap:10px;padding-top:16px;border-top:1px solid #e3ded6}.weeklytipauthor>span{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#14202a;color:#fff;font-weight:900}.weeklytipauthor strong,.weeklytipauthor small{display:block}.weeklytipauthor small{margin-top:3px;color:#6e767b}.weeklytippreviewpanel>.kicker{margin-bottom:10px}@media(max-width:920px){.weeklytipadmin{grid-template-columns:1fr}.weeklytippreviewpanel{position:static}.weeklytipimagecontrol{align-items:flex-start;flex-direction:column}.weeklytipimageactions{justify-content:flex-start}.weeklytiptranslateaction{align-items:flex-start;flex-direction:column}}
.newsadmin{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(420px,1.15fr) minmax(280px,.7fr);gap:18px;align-items:start}.newsadminlist,.newseditor{min-width:0}.newspostrows{display:grid;gap:8px}.newspostrow{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:11px;align-items:center;width:100%;border:1px solid var(--line);padding:9px;background:#fff;text-align:left;cursor:pointer}.newspostrow.on{border-color:#ef7617;box-shadow:inset 4px 0 #ef7617}.newspostrow>span:nth-child(2){min-width:0}.newspostrow strong,.newspostrow small{display:block}.newspostrow strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.newspostrow small{margin-top:4px;color:var(--muted);font-size:12px}.newspostrow em{font-style:normal}.newspostthumb{display:grid;place-items:center;width:54px;height:46px;overflow:hidden;background:#15212a;color:#ef7617;font-weight:900}.newspostthumb img{width:100%;height:100%;object-fit:cover}.newseditor form{display:grid;gap:10px}.newsimagepicker{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px dashed #aaa29a;padding:16px;background:#faf8f4;cursor:pointer}.newsimagepicker input{position:absolute;width:1px;height:1px;opacity:0}.newsimagepicker span{display:grid;gap:3px}.newsimagepicker small{color:var(--muted)}.newsimagepicker b{flex:0 0 auto;padding:10px 13px;background:#17232c;color:#fff;font-size:13px}.newspublishrow{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end}.newspublishrow .field{margin:0}.newspreview{position:sticky;top:18px}.newspreview>article{overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:0 14px 32px rgba(20,27,32,.12)}.newspreview>article>img,.newspreviewempty{display:grid;place-content:center;width:100%;aspect-ratio:16/9;object-fit:cover;background:#17232c;color:#bbc2c5;text-align:center;padding:18px}.newspreview article>div:last-child{padding:22px}.newspreview small{color:#ad4b12;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.newspreview h3{margin:10px 0;font:500 25px/1.12 Georgia,serif}.newspreview p{color:#58625e;line-height:1.55}.newspreview span{display:block;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}@media(max-width:1180px){.newsadmin{grid-template-columns:minmax(260px,.75fr) 1.25fr}.newspreview{position:static;grid-column:1/-1}.newspreview>article{display:grid;grid-template-columns:260px 1fr}.newspreview>article>img,.newspreviewempty{height:100%;aspect-ratio:auto}}@media(max-width:780px){.newsadmin{grid-template-columns:1fr}.newspreview{grid-column:auto}.newspreview>article{grid-template-columns:1fr}.newspreview>article>img,.newspreviewempty{height:auto;aspect-ratio:16/9}.newspublishrow{grid-template-columns:1fr}.newspostrow{grid-template-columns:48px minmax(0,1fr)}.newspostrow em{grid-column:2}}
.newsfilestatus{display:block;margin-top:5px;color:var(--muted);font-size:12px;font-style:normal}.newsfilestatus.chosen{color:#a64a12;font-weight:800}.newsgalleryeditor{display:grid;gap:12px;border:1px solid var(--line);padding:16px;background:#faf8f4}.newsgalleryhead{display:flex;align-items:center;justify-content:space-between;gap:15px}.newsgalleryhead>div{display:grid;gap:4px}.newsgalleryhead small{color:var(--muted)}.newsgallerygrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.newsgallerygrid:empty{display:none}.newsgalleryitem{position:relative;overflow:hidden;border:1px solid var(--line);background:#fff}.newsgalleryitem img{display:block;width:100%;aspect-ratio:1.25;object-fit:cover}.newsgalleryitem span{display:block;overflow:hidden;padding:7px 8px;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.newsgalleryitem button{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:27px;height:27px;border:0;border-radius:50%;color:#fff;background:rgba(20,29,35,.85);font-size:20px;line-height:1;cursor:pointer}.newsgalleryitem.chosen{border-color:#ef7617}@media(max-width:780px){.newsgalleryhead{align-items:flex-start;flex-direction:column}.newsgallerygrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.websitecontentadmin{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:20px;align-items:start}.websitecontentadmin form{display:grid;gap:18px}.websitecontentsection{display:grid;gap:11px;padding:18px;border:1px solid var(--line);background:#faf8f4}.websitecontentsection h4{margin:0;color:#17232c;font-size:17px}.websitecontentpreview{position:sticky;top:18px}.websiteprojectchoice{margin-bottom:4px}.websiteprojectchoice small{display:block;margin-top:5px;color:var(--muted);font-size:13px}@media(max-width:980px){.websitecontentadmin{grid-template-columns:1fr}.websitecontentpreview{position:static}}
.websitephotomodes{display:flex;flex-wrap:wrap;gap:8px}.websitephotomodes label{display:flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid var(--line);background:#fff;font-weight:750;cursor:pointer}.websiteprojectphotogrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.websiteprojectphotogrid>p{grid-column:1/-1}.websiteprojectphoto{position:relative;display:grid;overflow:hidden;border:2px solid transparent;background:#fff;cursor:pointer}.websiteprojectphoto.chosen{border-color:#ef7617}.websiteprojectphoto img{display:block;width:100%;aspect-ratio:1.25;object-fit:cover}.websiteprojectphoto span{display:flex;align-items:center;gap:6px;padding:7px 8px;color:#46525a;font-size:12px;font-weight:750}.websiteprojectphoto input{accent-color:#ef7617}@media(max-width:780px){.websiteprojectphotogrid{grid-template-columns:repeat(2,minmax(0,1fr))}.websitephotomodes{display:grid}}

.calc-green{--calc-color:#4f9c70;--calc-soft:#edf6f1}.calc-orange{--calc-color:#df902f;--calc-soft:#fbf2e4}.calc-warning{--calc-color:#bd671f;--calc-soft:#faece1}.calc-red{--calc-color:#b7392f;--calc-soft:#f8e7e5}.card.hascalculation{border-bottom:4px solid var(--calc-color)}.laborbudget[class*="calc-"]{border-left:3px solid var(--calc-color);background:var(--calc-soft)}.vehicleworkorder.hascalculation{box-shadow:inset 0 -3px var(--calc-color)}.workordercalc{display:grid!important;grid-template-columns:1fr auto;gap:5px 9px;align-items:center;margin-top:9px!important;padding:8px;background:#0f1b23;color:#fff!important}.workordercalc>i{display:block;height:6px;overflow:hidden;background:#334650}.workordercalc>i>b{display:block;height:100%;background:var(--calc-color)}.workordercalc>strong{grid-column:2;color:#fff;font-size: 14px}.floorcalc{margin:0 0 10px;padding:7px 8px;background:#0c151bcc;border-left:3px solid var(--calc-color);color:#fff}.floorcalc>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.floorcalc span,.floorcalc small{color:#dbe1e3;font-size: 14px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.floorcalc strong{font-size: 14px}.floorcalc>i{display:block;height:5px;margin:5px 0 4px;overflow:hidden;background:#ffffff35}.floorcalc>i>b{display:block;height:100%;background:var(--calc-color)}.floorcalc small{display:block;letter-spacing:0;text-transform:none}.floortile.hascalculation{outline-color:var(--calc-color)}@media(max-width:700px){.workordercalc{grid-template-columns:1fr auto}.floorcalc{margin-bottom:7px;padding:5px 6px}.floorcalc small{display:none}.floorcalc>i{margin-bottom:0}}
.routeprogresscontrol{margin:0 0 18px;padding:15px 16px;border:1px solid #d9d2c8;background:#faf7f1}.routeprogresshead{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.routeprogresshead strong,.routeprogresshead span{display:block}.routeprogresshead strong{font-size: 16px}.routeprogresshead span{margin-top:4px;color:var(--muted);font-size: 14px;line-height:1.45}.routeprogresshead output{color:var(--orange-dark);font-size: 20px;font-weight:900}.routeprogresscontrol input[type="range"]{width:100%;margin:13px 0 5px;accent-color:var(--orange)}.routeprogresscontrol>small{display:block;color:var(--muted);font-size: 14px}@media(max-width:700px){.routeprogresshead{gap:8px}.routeprogresshead span{font-size: 14px}}

@keyframes authload{from{transform:translateX(-15%)}to{transform:translateX(150%)}}#authLoginPanel[hidden]{display:none!important}
.updateauthorline .updateauthor small{display:block;margin-top:3px;color:var(--muted);font-size: 14px;font-weight:700;letter-spacing:0;text-transform:none}

/* Visuele werkplaatsklok en persoonlijke medewerkersprofielen */
.profileapprovalstate{display:grid;gap:3px;margin:12px 0;padding:10px 12px;border-left:4px solid var(--amber);background:#fff3df}.profileapprovalstate.approved{border-color:var(--green);background:#edf7f2}.profileapprovalstate strong{font-size: 14px}.profileapprovalstate span{color:var(--muted);font-size: 14px}
.kiosk{width:min(1080px,98vw)}.kioskbody{padding:18px 22px;max-height:78vh}.kioskwelcome.visual{display:flex;align-items:center;justify-content:space-between;gap:25px;border-left:5px solid var(--orange)}.kioskwelcome.visual span{max-width:610px;text-align:right}.kioskpeople{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.kioskperson{position:relative;display:grid;justify-items:center;align-content:start;min-height:178px;border:2px solid #c9c5be;background:#efede8;color:var(--ink);padding:14px 9px 10px;text-align:center;transition:.15s}.kioskperson:hover,.kioskperson:focus-visible{transform:translateY(-2px);outline:0;box-shadow:0 8px 20px #10182020}.kioskperson.working{border-color:#4f9c70;background:#e8f4ed}.kioskperson.selected{border-color:#ef7617;background:#fff0e4;box-shadow:inset 0 -4px #ef7617}.kioskperson.away{filter:grayscale(.45)}.kioskpersonphoto{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;overflow:hidden;background:#273642;color:#fff;font:600 20px Georgia,serif;border:4px solid #fff;box-shadow:0 3px 12px #0002}.kioskpersonphoto img{width:100%;height:100%;object-fit:cover}.kioskperson.working .kioskpersonphoto{box-shadow:0 0 0 4px #4f9c7040}.kioskperson.selected .kioskpersonphoto{box-shadow:0 0 0 4px #ef761740}.kioskpersonstate{position:absolute;left:7px;top:7px;padding:4px 6px;background:#686d6d;color:#fff;font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.kioskperson.working .kioskpersonstate{background:#32735f}.kioskperson.selected .kioskpersonstate{background:#d9610f}.kioskperson>strong{margin-top:9px;font-size: 16px}.kioskperson>small{display:block;max-width:100%;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size: 14px}.kioskperson>b{margin-top:5px;color:#32735f;font:600 17px Georgia,serif}.kioskchoiceempty{display:grid;justify-items:center;gap:5px;padding:35px;border:1px dashed #bdb7ae;background:#f7f4ee}.kioskchoiceempty strong{font:500 25px Georgia,serif}.kioskchoiceempty span{color:var(--muted);font-size: 14px}.kioskflow{display:grid;gap:13px}.kioskstephead{display:flex;align-items:center;gap:10px;margin-top:2px}.kioskstephead>span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#101a22;color:#fff;font-weight:900}.kioskstephead strong,.kioskstephead small{display:block}.kioskstephead strong{font-size: 16px}.kioskstephead small{margin-top:2px;color:var(--muted);font-size: 14px}.kioskprojects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.kioskproject{display:grid;gap:4px;min-width:0;min-height:87px;border:1px solid #d3cec5;background:#fff;color:var(--ink);padding:10px 11px;text-align:left}.kioskproject:hover,.kioskproject:focus-visible{border-color:#ef7617;outline:0}.kioskproject.selected{border-color:#ef7617;background:#fff2e8;box-shadow:inset 0 -4px #ef7617}.kioskproject span{color:#a54b0b;font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.kioskproject strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size: 15px}.kioskproject small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size: 14px}.kioskother{border-top:1px solid var(--line);padding-top:10px}.kioskother summary{cursor:pointer;color:#a54b0b;font-size: 14px;font-weight:850}.kiosksearch{display:grid;gap:5px;margin:10px 0;color:var(--muted);font-size: 14px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.kiosksearch input{height:42px;border:1px solid var(--line);background:#fff;padding:0 12px;color:var(--ink);font-size: 16px;text-transform:none;letter-spacing:0}.kioskrates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.kioskrate{min-height:64px;border:1px solid #d3cec5;background:#fff;color:var(--ink);padding:10px;text-align:left}.kioskrate.selected{border-color:#ef7617;background:#fff2e8;box-shadow:inset 0 -4px #ef7617}.kioskrate strong,.kioskrate small{display:block}.kioskrate strong{font-size: 15px}.kioskrate small{margin-top:4px;color:var(--muted);font-size: 14px}.kioskbig{width:100%;min-height:58px;font-size: 18px}.kioskbig:disabled{opacity:.45;cursor:not-allowed}.kioskactive{position:relative;display:grid;gap:4px;padding:20px;background:#16392e;color:#fff;border-left:5px solid #70c69f}.kioskactive span{color:#a8e6c8;font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.kioskactive strong{font:500 25px Georgia,serif}.kioskactive small{color:#d2e9df;font-size: 14px}.kioskactive b{position:absolute;right:20px;top:24px;color:#9ae0bf;font:500 28px Georgia,serif}.kioskmainactions{display:flex;justify-content:flex-end;gap:8px}.kioskmainactions .kioskbig{width:auto;min-width:320px}
.floortile{display:block;border:0}.floortilemain{position:absolute;z-index:2;inset:0;width:100%;height:100%;border:0;background:transparent;color:inherit;padding:0;text-align:left}.floorpersonphoto{position:absolute;z-index:2;left:50%;top:45px;transform:translateX(-50%);display:grid;place-items:center;width:82px;height:82px;border-radius:50%;overflow:hidden;background:#273642;color:#fff;border:4px solid #ffffffd9;box-shadow:0 5px 18px #0004;font:500 22px Georgia,serif}.floorpersonphoto img{width:100%;height:100%;object-fit:cover}.floortile.active .floorpersonphoto{box-shadow:0 0 0 5px #58ad8545,0 5px 18px #0004}.floorassign{position:absolute;z-index:5;right:10px;top:10px;min-height:28px;border:1px solid #ffffff80;background:#101a22dd;color:#fff;padding:0 8px;font-size: 14px;font-weight:900;text-transform:uppercase}.floortile .floorinfo{z-index:3}.floortile.assigned .floorproject{color:#285d4b}.floortile.off .floorpersonphoto,.floortile.missing .floorpersonphoto{filter:grayscale(.7)}
.floortile.active.hasprojectcover{background-color:#18262d;background-size:cover;background-position:center}.floortile.active.hasprojectcover:after{background:linear-gradient(180deg,rgba(7,12,15,.30),rgba(7,12,15,.93))}.floortile.active .floorinfo h3{max-height:2.15em;overflow:hidden;margin:0 0 6px;font:500 20px/1.06 Georgia,serif;text-wrap:balance}.floortile.active .floorproject{display:-webkit-box;max-height:2.45em;overflow:hidden;margin-bottom:4px;font-size: 14px;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:2}.floortile.active .floortask{margin-bottom:8px;font-size: 14px}.floortile.active .floortime{font-size:23px}.floortile.active .floorcalc{margin-bottom:8px}
.floorhead{padding:16px 22px}.floorhead h2{font-size:30px}.floorhead p{margin-top:4px;font-size:14px}.floorstatus{left:10px;top:10px;max-width:104px;padding:5px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.floorassign{right:8px;top:8px;min-height:26px;padding:0 6px;font-size:11px}.floorpersonphoto{left:auto;right:14px;top:45px;transform:none;width:58px;height:58px;border-width:3px;font-size:17px}.floortile .floorinfo{left:14px;right:14px;top:47px;bottom:auto}.floortile .floorinfo h3,.floortile .floorproject,.floortile .floortask{max-width:calc(100% - 70px)}.floortile .floorinfo h3{display:-webkit-box;max-height:2em;overflow:hidden;margin:0 0 5px;font:500 20px/1 Georgia,serif;-webkit-box-orient:vertical;-webkit-line-clamp:2}.floortile .floorproject{display:-webkit-box;max-height:2.4em;overflow:hidden;margin:0 0 4px;font-size:13px;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:2}.floortile .floortask{margin:0 0 6px;font-size:12px}.floortile .floortime{font-size:19px}.floortile.off .floortime,.floortile.missing .floortime{font-size:12px}.floortile.active .floorinfo h3{margin-bottom:4px;font-size:17px}.floortile.active .floorproject{max-height:1.2em;font-size:12px;-webkit-line-clamp:1}.floortile.active .floortask{margin-bottom:5px;font-size:11px}.floortile.active .floortime{font-size:19px}.floortile.active .floorcalc{width:100%;margin-bottom:5px;padding:5px 6px}.floortile.active .floorcalc span,.floortile.active .floorcalc strong,.floortile.active .floorcalc small{font-size:11px}.floortile.active .floorcalc>i{height:4px;margin:4px 0 3px}
@media(max-width:800px){.kioskpeople{grid-template-columns:repeat(3,minmax(0,1fr))}.kioskprojects,.kioskrates{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.kioskbody{padding:14px}.kioskwelcome.visual{align-items:flex-start;flex-direction:column;gap:5px}.kioskwelcome.visual span{text-align:left}.kioskpeople{grid-template-columns:repeat(2,minmax(0,1fr))}.kioskprojects,.kioskrates{grid-template-columns:1fr}.kioskactive b{position:static}.kioskmainactions{display:grid}.kioskmainactions .kioskbig{width:100%;min-width:0}.floorpersonphoto{top:37px;width:62px;height:62px}.floorassign{top:38px;right:6px;max-width:66px;white-space:normal;line-height:1.1}.floortile .floorinfo{bottom:9px}.floortile.active .floorinfo h3{font-size: 18px}.floortile.active .floorproject{font-size: 14px}.floortile.active .floortime{font-size: 20px}}
@media(max-width:700px){.floorhead{padding:14px}.floorpersonphoto{right:10px;top:44px;width:50px;height:50px}.floorassign{top:8px;right:8px;max-width:none;white-space:nowrap}.floortile .floorinfo{top:45px;bottom:auto}.floortile .floorinfo h3,.floortile .floorproject,.floortile .floortask{max-width:calc(100% - 58px)}.floortile.active .floorinfo h3{font-size:16px}.floortile.active .floorproject{font-size:11px}.floortile.active .floortime{font-size:18px}}@media(max-width:480px){.floorgrid{grid-template-columns:1fr}.floortile{aspect-ratio:1.35/1}}

/* Lopende klok direct herkenbaar met de kopfoto van het project. */
.kioskperson.working.hascover{background-color:#173127;background-size:cover;background-position:center;color:#fff}
.kioskperson.working.hascover>small,.kioskperson.working.hascover>b{color:#fff;text-shadow:0 1px 3px #000}
.kioskperson.working.current{box-shadow:0 0 0 4px #ef7617,0 8px 20px #10182028}
.kioskcalcstatus{width:100%;margin-top:7px;padding:7px 8px;background:#ffffffeb;color:#17232c;text-align:left;border-left:4px solid #667176;box-sizing:border-box}.kioskcalcstatus>div{display:flex;align-items:center;justify-content:space-between;gap:6px}.kioskcalcstatus strong,.kioskcalcstatus span{font-size: 14px;line-height:1.2}.kioskcalcstatus strong{text-transform:uppercase;letter-spacing:.04em}.kioskcalcstatus span{white-space:nowrap}.kioskcalcstatus>i{display:block;height:5px;margin-top:5px;background:#d8d4ce;overflow:hidden}.kioskcalcstatus>i>b{display:block;height:100%;transition:width .25s ease}.kioskcalcstatus.nacalculation{border-color:#536675}.kioskcalcstatus.nacalculation strong,.kioskcalcstatus.nacalculation span{display:block}.kioskcalcstatus.nacalculation span{margin-top:3px;color:#667176}.kioskcalcstatus.calc-green{border-color:#4f9c70}.kioskcalcstatus.calc-green>i>b{background:#4f9c70}.kioskcalcstatus.calc-orange{border-color:#df902f}.kioskcalcstatus.calc-orange>i>b{background:#df902f}.kioskcalcstatus.calc-warning{border-color:#bd671f}.kioskcalcstatus.calc-warning>i>b{background:#bd671f}.kioskcalcstatus.calc-red{border-color:#b7392f}.kioskcalcstatus.calc-red>i>b{background:#b7392f}
.kioskback{justify-self:start;min-height:38px;padding:0 13px}
.kioskconfirm{display:grid;grid-template-columns:130px 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.kioskconfirm span,.kioskconfirm strong{background:#fff;padding:12px}.kioskconfirm span{color:var(--muted);font-size: 14px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.kioskconfirm strong{font-size: 15px}
@media(max-width:520px){.kioskconfirm{grid-template-columns:1fr}.kioskconfirm span{padding-bottom:3px}.kioskconfirm strong{padding-top:3px}}

/* Responsive menus: labels remain readable and fly-outs stay inside the viewport. */
.detailnav{
  grid-template-columns:repeat(auto-fit,minmax(112px,1fr));
}
.detailnav>button,.detailmore>button{
  height:auto;
  min-height:48px;
  padding:8px 9px;
  white-space:normal;
  overflow-wrap:anywhere;
}
.detailmoremenu{
  width:min(520px,calc(100vw - 32px));
  max-width:calc(100vw - 32px);
  max-height:min(70dvh,560px);
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  overflow-y:auto;
  overscroll-behavior:contain;
}
.detailmoremenu button{
  min-width:0;
  min-height:44px;
  height:auto;
  line-height:1.2;
  white-space:normal;
  overflow-wrap:anywhere;
}
.hrtabs{display:block;margin-top:12px;overflow:visible}
.hrtabmain{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding-bottom:7px}
.hrgroup{flex:0 0 auto;min-height:39px;border:1px solid #3d4c55;border-bottom:3px solid transparent;background:#17242d;color:#b9c2c7;padding:7px 16px;font-size:14px;font-weight:850;white-space:nowrap}
.hrgroup:hover,.hrgroup:focus-visible{background:#21313b;color:#fff}
.hrgroup.on{border-color:#566771;border-bottom-color:var(--orange);background:#263640;color:#fff}
.hrtabsub{display:flex;flex-wrap:wrap;gap:6px;padding:7px 0 11px;border-top:1px solid #2b3a43}
.hrtab{flex:0 0 auto;min-width:0;min-height:35px;border:1px solid #44535c;background:transparent;color:#bac3c8;padding:7px 12px;white-space:nowrap;overflow-wrap:normal;word-break:normal;line-height:1.1;font-size:13px}
.hrtab:hover,.hrtab:focus-visible{border-color:#788790;color:#fff;background:#1a2831}
.hrtab.on{border-color:#fff;background:#fff;color:#101a22;box-shadow:inset 0 -3px 0 var(--orange)}
.hrtab.stockordernav{border-color:var(--orange);background:var(--orange);color:#fff;font-weight:850}
.hrtab.stockordernav:hover,.hrtab.stockordernav:focus-visible{border-color:#ff994d;background:#d95f08;color:#fff}
.kioskmodes,.planningnav,.planninglocations,.flooractions{
  flex-wrap:wrap;
}
.kioskmodes button{
  flex:1 1 130px;
  min-width:0;
  height:auto;
  padding:8px 10px;
  line-height:1.2;
  white-space:normal;
}
@media(max-width:700px){
  .detailnav{
    grid-template-columns:repeat(auto-fit,minmax(104px,1fr));
    gap:0;
  }
  .detailmoremenu{
    width:min(440px,calc(100vw - 24px));
    max-width:calc(100vw - 24px);
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  }
  .hrtabmain,.hrtabsub{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain}
  .hrgroup{padding-left:13px;padding-right:13px}
  .hrtab{font-size:13px}
  .mobilenav{
    grid-template-columns:repeat(auto-fit,minmax(88px,1fr));
  }
}

/* Afgeschermd beheer van externe partners, opdrachten, updates en uren. */
.partnerintro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;padding:22px 24px;background:#101a22;color:#fff;border-top:4px solid var(--orange)}
.partnerintro h3{margin:2px 0 8px;font:500 30px Georgia,serif}.partnerintro p{max-width:780px;margin:0;color:#c9d1d5;line-height:1.55}.partnerpending{flex:0 0 110px;padding:14px;text-align:center;background:#fff;color:#101a22}.partnerpending strong{display:block;font:500 34px Georgia,serif;color:var(--orange)}.partnerpending span{font-size: 13px;font-weight:900;text-transform:uppercase}
.partneradminlayout{display:grid;grid-template-columns:1fr 1.15fr;gap:16px;margin-bottom:16px}.partnerform{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px;padding:15px;background:#f6f2eb;border:1px solid var(--line)}.partnerform .field{margin:0}.partnerform .field:nth-of-type(3){grid-column:1/-1}.partnerform .check{align-self:center}.partnerpeople,.partnerassignments,.partnersubmissions,.partnerhours{display:grid;gap:10px}
.partnerperson{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--line);background:#fff}.partnerperson.inactive{opacity:.6}.partnerperson h4{margin:1px 0;font:500 22px Georgia,serif}.partnerperson p,.partnerperson small{display:block;margin:3px 0;color:var(--muted)}.partneractions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.partnerassignmentform{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px;padding:15px;background:#f6f2eb;border:1px solid var(--line)}.partnerassignmentform .field{margin:0}.partnerassignmentform .full{grid-column:1/-1}.partnerassignmentform .check{align-self:center}.partnerassignment{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main action" "meta meta";align-items:start;column-gap:16px;row-gap:10px;padding:16px;border:1px solid var(--line);background:#fff}.partnerassignmentmain{grid-area:main;min-width:0}.partnerassignmentmain strong{display:block;font-size:19px;line-height:1.2}.partnerassignmentmain span{display:block;margin-top:3px;color:var(--muted)}.partnerassignmentmain p{max-width:70ch;margin:7px 0 0;line-height:1.45;white-space:normal;overflow-wrap:anywhere;color:var(--muted)}.partnerassignmentaction{grid-area:action;align-self:start;white-space:nowrap}.partnerassignmentmeta{grid-area:meta;display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-width:0;padding-top:10px;border-top:1px solid var(--line)}.partnerassignmentmeta .leavebadge{display:inline-flex;width:max-content;margin:0;flex:0 0 auto}.partnerassignmentmeta small{display:block;min-width:0;margin:0;color:var(--muted);line-height:1.4;overflow-wrap:anywhere}
.partnerreviewsection{margin-bottom:16px}.partnersubmission,.partnerhour{padding:16px;border:1px solid var(--line);background:#fff}.partnersubmission.pending,.partnerhour:has(.leavebadge.pending){border-left:5px solid var(--orange)}.partnersubmissionhead,.partnerhour{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}.partnersubmissionhead strong,.partnersubmissionhead span,.partnerhour strong,.partnerhour span{display:block}.partnersubmissionhead span,.partnerhour span,.partnerhour p{margin:4px 0;color:var(--muted)}.partnersubmission>p{white-space:pre-wrap;line-height:1.55}.partnerphotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin:12px 0}.partnerphotos img{width:100%;height:120px;object-fit:cover;background:#e7e2da}.partnerreviewnote{display:block;padding:9px;background:#f3efe8}.partnerreview{display:grid;gap:8px;margin-top:12px}.partnerreviewfield{display:grid;gap:5px;font-weight:700;color:var(--text)}.partnerreviewfield textarea{width:100%;min-height:76px;resize:vertical;border:1px solid var(--line);padding:9px 10px;font:inherit}.partnerreviewfield small{font-weight:400;color:var(--muted)}.partnerreviewbuttons{display:flex;gap:7px;flex-wrap:wrap}.partnerhour{grid-template-columns:minmax(0,1fr) auto minmax(280px,420px)}.partnerhouractions{display:grid;gap:8px}.partnerhouractions .partnerreviewbuttons{justify-content:flex-end}.partnertimeedit{grid-column:1/-1;margin-top:2px}.partnertimeeditgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.partnertimeeditgrid .field{margin:0}.partnertimeeditgrid .full{grid-column:1/-1}.partnermanagelocked{grid-column:1/-1;display:block;margin-top:4px;padding:9px 11px;border-left:4px solid #6e767b;background:#f1eee8;color:#596269}
.customerstatus.invoicelocked{background:#ece8e1;color:#4b555b;border-color:#cfc8bd}
.partnerreviewhistory{margin-top:12px;border-top:2px solid #d8d1c7;background:#f7f4ef}.partnerreviewhistory>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;cursor:pointer;font-weight:800;color:#465056;list-style-position:inside}.partnerreviewhistory>summary::marker{color:var(--orange)}.partnerreviewhistory[open]>summary{border-bottom:1px solid var(--line)}.partnerreviewhistory .count{min-width:26px;height:26px;font-size:12px;background:#e5e1da;color:#465056}.partnerhistorylist{display:grid;gap:6px;padding:8px}.partnerhistoryitem{border:1px solid #ddd7ce;background:#fff}.partnerhistoryitem>details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;cursor:pointer;list-style:none}.partnerhistoryitem>details>summary::-webkit-details-marker{display:none}.partnerhistoryitem>details>summary::before{content:'›';flex:0 0 auto;color:#7a817f;font-size:18px;line-height:1;transform:rotate(0)}.partnerhistoryitem>details[open]>summary::before{transform:rotate(90deg)}.partnerhistorymain{display:grid;min-width:0;margin-right:auto;gap:1px}.partnerhistorymain strong,.partnerhistorymain small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.partnerhistorymain strong{font-size:13px}.partnerhistorymain small{font-size:12px;color:var(--muted)}.partnerhistoryitem .leavebadge{font-size:10px;padding:4px 7px}.partnerhistorydetail{padding:0 10px 10px 34px;border-top:1px solid #eee9e2}.partnerhistorydetail>p{margin:9px 0;white-space:pre-wrap;line-height:1.45}.partnerphotos.compact{grid-template-columns:repeat(auto-fill,minmax(86px,110px));margin:8px 0}.partnerphotos.compact img{height:78px}.partnerhistorydetail .partnermanageedit{margin:8px 0}.partnerhistorydetail .partnermanageedit summary{padding:8px 10px;font-size:13px}.partnerhourhistory .partnerhistorydetail:empty{display:none}
.partnermanageedit{margin:14px 0;border:1px solid var(--line);background:#f8f5ef}.partnermanageedit summary{cursor:pointer;padding:11px 13px;font-weight:800;color:var(--text)}.partnermanageedit[open] summary{border-bottom:1px solid var(--line)}.partnermanageedit form{display:grid;gap:12px;padding:13px}.partnermanagephotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:9px}.partnermanagephoto{display:grid;gap:6px;padding:7px;border:1px solid var(--line);background:#fff;font-weight:700}.partnermanagephoto img{width:100%;height:120px;object-fit:cover}.partnermanagephoto span{display:flex;align-items:center;gap:7px}.partnermanagefoot{display:flex;align-items:center;justify-content:space-between;gap:12px}.partnermanagefoot small{color:var(--muted)}
@media(max-width:980px){.partneradminlayout{grid-template-columns:1fr}.partnerhour{grid-template-columns:1fr auto}.partnerhouractions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:620px){.partnerintro{align-items:stretch;flex-direction:column}.partnerpending{flex-basis:auto}.partnerform,.partnerassignmentform,.partnertimeeditgrid{grid-template-columns:1fr}.partnerform .field:nth-of-type(3),.partnerassignmentform .full,.partnertimeeditgrid .full{grid-column:auto}.partnerperson,.partnersubmissionhead,.partnerhour{grid-template-columns:1fr;display:grid}.partnerassignment{grid-template-columns:minmax(0,1fr) auto}.partnerassignmentmeta{align-items:flex-start;flex-direction:column}.partneractions{justify-content:flex-start}.partnerphotos{grid-template-columns:repeat(2,1fr)}.partnermanagefoot{align-items:stretch;flex-direction:column}.partnermanagefoot .smallbtn{width:100%}}
@media(max-width:430px){
  .detailmoremenu{
    grid-template-columns:1fr;
  }
}

/* Direct klokken vanuit de werkopdrachtkaart */
.vehicleworkorder{cursor:pointer}.vehicleworkorder:focus-visible{outline:3px solid #fff;outline-offset:2px}.workorderfooter{display:flex!important;align-items:center;justify-content:space-between;gap:10px;margin-top:10px!important}.workorderfooter .workorderopen{margin:0}.workorderclock{min-height:34px;border:0;background:var(--orange);color:#fff;padding:0 13px;font-size: 14px;font-weight:900;white-space:nowrap}.workorderclock:hover,.workorderclock:focus-visible{background:#ff8b31;outline:2px solid #fff;outline-offset:2px}.workorderclock.running{background:#a9342c}
@media(max-width:520px){.workorderfooter{align-items:stretch;flex-direction:column}.workorderclock{width:100%}}

/* Aparte tabletweergave voor klokken en directe afwezigheidsregistratie. */
.kioskhead{gap:18px}.kioskmodes{display:flex;gap:5px;margin-left:auto}.kioskmodes button,.kiosklogout{min-height:40px;border:1px solid #c9c3ba;background:#f4f0e9;color:var(--ink);padding:0 13px;font-size: 14px;font-weight:900}.kioskmodes button.active{border-color:var(--orange);background:var(--orange);color:#fff}.kiosklogout{background:#101a22;color:#fff}.kioskabsencegrid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px}.kioskabsenceform{display:grid;gap:10px;padding:18px;border:1px solid var(--line);background:#f8f5ef}.kioskabsenceform .field{margin:0}.kioskabsencerecent{padding:18px;background:#101a22;color:#fff}.kioskabsencerecent h3{margin:0 0 12px;font:500 24px Georgia,serif}.kioskabsencerecent article{display:grid;gap:4px;padding:11px 0;border-top:1px solid #ffffff22}.kioskabsencerecent article strong{font-size: 14px}.kioskabsencerecent article span{color:#c4ccd0;font-size: 14px}.workplaceclockmode{overflow:hidden;background:#101a22}.workplaceclockmode>.topbar,.workplaceclockmode>main,.workplaceclockmode>footer,.workplaceclockmode>.mobilenav{display:none!important}.workplaceclockmode #kioskLayer{padding:0}.workplaceclockmode #kioskLayer>.shade{display:none}.workplaceclockmode #kioskLayer .kiosk{display:flex;flex-direction:column;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0}.workplaceclockmode #kioskLayer .kioskbody{flex:1;max-height:none;overflow:auto}.workplaceclockmode #kioskLayer .dialogfoot,.workplaceclockmode #kioskLayer .closeKiosk{display:none}.workplaceclockmode #kioskLogout{display:inline-flex;align-items:center}.workplaceclockmode #kioskLayer .dialoghead{flex:none}
@media(max-width:800px){.kioskabsencegrid{grid-template-columns:1fr}.kioskhead{align-items:flex-start;flex-wrap:wrap}.kioskmodes{order:3;width:100%;margin:0}.kioskmodes button{flex:1}}

/* Projectscherm kan op desktop breder worden gesleept; de urencalculatie houdt leesbare kolommen. */
#detailLayer .drawer{width:min(1240px,98vw);max-width:100vw}
.detailresize{position:absolute;z-index:30;left:0;top:0;width:14px;height:100%;padding:0;border:0;background:transparent;cursor:col-resize;touch-action:none}
.detailresize:before{content:"";position:absolute;left:3px;top:0;width:4px;height:100%;background:transparent;transition:background .15s ease}
.detailresize:hover:before,.detailresize:focus-visible:before,#detailLayer .drawer.resizing .detailresize:before{background:var(--orange)}
.detailresize:focus-visible{outline:2px solid var(--orange);outline-offset:-2px}
#detailLayer .drawer.resizing{user-select:none;cursor:col-resize}
#projectEstimateForm{max-width:100%;overflow-x:auto;padding-bottom:3px}
#projectEstimateForm .estimatehead,#projectEstimateForm .estimaterow{grid-template-columns:minmax(280px,1fr) 110px 145px 90px 130px;min-width:820px;column-gap:12px}
#projectEstimateForm .estimatehead>span{min-width:0;line-height:1.15;white-space:normal;overflow-wrap:anywhere}
#projectEstimateForm .estimaterow>*{min-width:0}
#projectEstimateForm .clocktoggle{align-items:flex-start;line-height:1.15}
@media(max-width:700px){
  .detailresize{display:none}
  #projectEstimateForm{overflow:visible}
  #projectEstimateForm .estimatehead{display:none;min-width:0}
  #projectEstimateForm .estimaterow{grid-template-columns:1fr 1fr;min-width:0}
}

/* Dagmatrix voor interne updates en projectfoto's. */
.personnelactivitymatrix{border-top:5px solid #101a22}
.activitymatrixtable th,.activitymatrixtable td{min-width:72px;height:42px}
.activitymatrixtable .reportname{min-width:160px}
.activitymatrixtable .reporttotal{min-width:78px}
.activitymatrixcell{padding:3px!important}
.activitymatrixbutton{display:block;width:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;text-align:inherit;cursor:pointer}
.activitymatrixbutton:hover .activitymatrixcount,.activitymatrixbutton:focus-visible .activitymatrixcount{outline:2px solid currentColor;outline-offset:-2px}
.activitymatrixbutton:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.activitymatrixcount{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:23px;padding:2px 5px;font-size:11px;font-weight:800;white-space:nowrap}
.activitymatrixcount b{font-size:14px}
.activitymatrixcount.updates{background:#e4f3ed;color:#1f614e;border-left:4px solid #2f8067}
.activitymatrixempty{color:#9da1a2}
.dialog.activitydetaildialog{width:min(820px,96vw)}
.activitydetailupdate{margin:0 0 14px;padding:16px;border:1px solid var(--line);border-left:5px solid #2f8067;background:#fff}
.activitydetailupdate:last-child{margin-bottom:0}
.activitydetailupdatehead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.activitydetailupdatehead strong,.activitydetailupdatehead span{display:block}
.activitydetailupdatehead strong{font-size:17px}
.activitydetailupdatehead div>span{margin-top:3px;color:var(--muted);font-size:13px}
.activitydetailvisibility{flex:0 0 auto;padding:4px 7px;background:#eee9e2;color:#5d625f;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.activitydetailvisibility.customer{background:#e4f3ed;color:#1f614e}
.activitydetailupdate>p{margin:12px 0 0;white-space:pre-wrap;font-size:16px;line-height:1.5}
.activitydetailphotos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:13px}
.activitydetailphotos .updatefile,.activitydetailphotos .updatevideo{grid-column:span 2}
@media(max-width:700px){.activitymatrixtable th,.activitymatrixtable td{min-width:66px;height:40px}.activitymatrixtable .reportname{min-width:128px}.activitymatrixcount{font-size:10px}}
@media(max-width:700px){.activitydetailphotos{grid-template-columns:repeat(2,minmax(0,1fr))}.activitydetailupdatehead{align-items:stretch;flex-direction:column}.activitydetailvisibility{align-self:flex-start}}

/* Zoekbare keuzelijsten voor lange klanten-, projecten- en artikellijsten. */
.searchselect{position:relative;width:100%;min-width:0}
.searchselectinput{width:100%;height:46px;border:1px solid var(--line);background:#fffefb;padding:0 44px 0 13px;color:var(--ink);font:inherit;font-weight:700;outline:none;background-image:linear-gradient(45deg,transparent 50%,#24313a 50%),linear-gradient(135deg,#24313a 50%,transparent 50%);background-position:calc(100% - 18px) 19px,calc(100% - 12px) 19px;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.searchselectinput:focus{border-color:var(--red);box-shadow:0 0 0 2px color-mix(in srgb,var(--red) 16%,transparent)}
.searchselectnative{position:absolute!important;left:0!important;bottom:0!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;margin:0!important;padding:0!important;border:0!important}
.searchselectresults{position:absolute;z-index:900;left:0;right:0;top:calc(100% + 4px);max-height:300px;overflow:auto;border:1px solid var(--ink);background:#fff;box-shadow:0 15px 35px #101a2233}
.searchselectresults[hidden]{display:none}
.searchselectresults button{display:block;width:100%;min-height:44px;padding:9px 13px;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-weight:700;text-align:left;cursor:pointer}
.searchselectresults button:last-child{border-bottom:0}
.searchselectresults button:hover,.searchselectresults button.active{background:#f9eadc}
.searchselectresults button.selected{box-shadow:inset 4px 0 var(--red);color:var(--red)}
.searchselectresults p{margin:0;padding:13px;color:var(--muted)}
@media(max-width:700px){.searchselectinput{height:48px}.searchselectresults{max-height:240px}}

.manualinvoicearticlefield{position:relative}
.manualinvoicearticlesuggestions{position:absolute;z-index:920;left:0;right:0;top:100%;max-height:280px;overflow:auto;border:1px solid var(--ink);background:#fff;box-shadow:0 15px 35px #101a2233}
.manualinvoicearticlesuggestions[hidden]{display:none}
.manualinvoicearticlesuggestions button{display:block;width:100%;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;cursor:pointer}
.manualinvoicearticlesuggestions button:hover{background:#f9eadc}
.manualinvoicearticlesuggestions strong,.manualinvoicearticlesuggestions small{display:block}
.manualinvoicearticlesuggestions small{margin-top:3px;color:var(--muted);font-size:13px}
.manualinvoicesuggestiontag{display:inline-block;margin-right:8px;padding:2px 6px;border-radius:2px;font-size:10px;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;vertical-align:2px}
.manualinvoicesuggestiontag.article{background:#e4f3ed;color:#1f614e}
.manualinvoicesuggestiontag.labor{background:#f9eadc;color:#9b4b10}
.manualinvoicearticlefield input.catalogpicked{border-color:#2f8067;background:#eef7f3;box-shadow:inset 4px 0 #2f8067}
.manualinvoiceline.laborpicked [name="purchasePrice"],.manualinvoiceline.laborpicked [name="marginPercent"]{background:#eeeae3;color:#8a8d8e}

/* Losse factuur gebruikt dezelfde prijsopbouw als de overige factuurregels. */
.manualinvoicedialog{width:min(1380px,calc(100vw - 32px))}
.manualinvoiceline{grid-template-columns:minmax(230px,1.7fr) minmax(150px,1fr) 76px 90px 108px 88px 116px 112px 38px}
.manualinvoiceline input,.manualinvoiceline select{min-width:0}
.manualinvoicelinetotal{min-height:46px;padding:0 8px 5px;border-bottom:2px solid var(--ink);justify-content:flex-end}
.manualinvoicelinetotal strong{display:block;margin-top:7px;text-align:right;white-space:nowrap;font-size:16px}
@media(max-width:1180px){
  .manualinvoiceline{grid-template-columns:repeat(4,minmax(100px,1fr))}
  .manualinvoiceline .field:first-child,.manualinvoiceline .field:nth-child(2){grid-column:span 2}
}
@media(max-width:760px){
  .manualinvoiceline{grid-template-columns:1fr 1fr}
  .manualinvoiceline .field:first-child,.manualinvoiceline .field:nth-child(2){grid-column:1/-1}
  .manualinvoicelinetotal{justify-content:flex-start}
  .manualinvoicelinetotal strong{text-align:left}
}

/* Schaalbare werkplaatsklok met rustige, botsingsvrije medewerkertegels. */
.kioskhead{align-items:center;padding-top:18px;padding-bottom:16px;border-top:5px solid var(--orange);background:#fffdf9}
.kioskhead>div{min-width:190px}
.kioskhead .kicker{margin-bottom:5px}
.kioskpeople{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:stretch}
.kioskperson{grid-template-columns:minmax(0,1fr);grid-auto-rows:max-content;min-width:0;min-height:192px;overflow:hidden;padding-top:14px}
.kioskperson>*{min-width:0;max-width:100%}
.kioskpersonphoto{margin-top:17px}
.kioskpersonstate{right:7px;max-width:calc(100% - 14px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kioskperson>strong{display:-webkit-box;min-height:2.3em;overflow:hidden;line-height:1.15;-webkit-box-orient:vertical;-webkit-line-clamp:2;text-wrap:balance}
.kioskperson>small{display:-webkit-box;max-height:2.6em;overflow:hidden;line-height:1.3;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.kioskperson>b{line-height:1.2}
.kioskperson .kioskcalcstatus{align-self:end;overflow:hidden}
.kioskperson .kioskcalcstatus>div{min-width:0;flex-wrap:wrap}
.kioskperson .kioskcalcstatus span{white-space:normal}
@media(min-width:801px){
  body:not(.workplaceclockmode) #kioskLayer .kiosk{width:min(1080px,calc(100vw - 40px));height:min(780px,calc(100dvh - 40px));min-width:min(720px,calc(100vw - 40px));min-height:min(520px,calc(100dvh - 40px));max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px);resize:both}
  body:not(.workplaceclockmode) #kioskLayer .kioskbody{flex:1;min-height:0;max-height:none}
}
@media(max-width:700px){
  .kioskhead{align-items:flex-start}
  .kioskpeople{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kioskperson{min-height:188px;padding-left:7px;padding-right:7px}
  .kioskpersonphoto{width:68px;height:68px}
}

/* Dagelijkse werkplaatscontrole voor beheerder en chef. */
.daycheck{display:grid;gap:16px}
.daychecknav{display:flex;align-items:end;justify-content:flex-end;gap:7px;padding:10px 12px;border:1px solid var(--line);background:#f7f5f1}.daychecknav button{min-height:36px;border:1px solid #cfc9c0;background:#fff;color:var(--ink);padding:0 11px;font-size:14px;font-weight:850}.daychecknav button:hover:not(:disabled){border-color:#a9a198;background:#eeeae4}.daychecknav button:disabled{opacity:.42;cursor:default}.daychecknav label{display:grid;gap:3px;color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.daychecknav input{height:36px;border:1px solid #cfc9c0;background:#fff;color:var(--ink);padding:0 8px;font-size:14px;font-weight:750}
.daycheckhero{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:23px 25px;border:1px solid var(--line);border-left:7px solid var(--green);background:#fff}
.daycheckhero.orange{border-left-color:#c8781e;background:#fffaf3}.daycheckhero.red{border-left-color:#b83b32;background:#fff7f5}
.daycheckhero h3{margin:0;font:500 34px/1.05 Georgia,serif}.daycheckhero p:not(.kicker){max-width:760px;margin:9px 0 0;color:var(--muted);font-size:15px;line-height:1.5}
.daycheckheroactions{display:grid;justify-items:end;gap:9px;white-space:nowrap}.daycheckheroactions>span{font-size:14px;font-weight:850;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}
.daycheckstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.daycheckstats article{display:grid;gap:5px;min-height:91px;padding:16px 18px;border:1px solid var(--line);background:#fff}.daycheckstats strong{font:500 29px/1 Georgia,serif}.daycheckstats span{color:var(--muted);font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.daycheckstats article.red{border-top:4px solid #b83b32}.daycheckstats article.orange{border-top:4px solid #c8781e}
.daycheckattention{border-top:4px solid var(--orange)}.daycheckissuelist,.daycheckpeople,.daychecksystems{display:grid;gap:7px}
.daycheckissue{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--line);background:#faf8f4}.daycheckissue.red{background:#fff4f2;border-color:#e4b9b3}.daycheckissue.orange{background:#fff8ec;border-color:#ead2ae}
.daycheckdot{display:block;width:11px;height:11px;border-radius:50%;background:#92999c}.daycheckissue.red .daycheckdot,.daychecksystem.red .daycheckdot{background:#b83b32;box-shadow:0 0 0 4px #b83b3217}.daycheckissue.orange .daycheckdot,.daychecksystem.orange .daycheckdot{background:#c8781e;box-shadow:0 0 0 4px #c8781e17}.daychecksystem.green .daycheckdot{background:var(--green);box-shadow:0 0 0 4px #32735f17}
.daycheckissue strong,.daycheckperson strong,.daychecksystem strong,.daycheckallclear strong{font-size:16px}.daycheckissue p,.daycheckperson p,.daychecksystem p,.daycheckallclear p{margin:3px 0 0;color:var(--muted);font-size:14px;line-height:1.42}
.daycheckaction{min-height:36px;border:1px solid #bdb7ae;background:#fff;color:var(--ink);padding:0 12px;font-size:14px;font-weight:850;white-space:nowrap}.daycheckaction:hover{border-color:var(--orange);color:var(--orange-dark)}
.daycheckallclear{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:center;padding:17px;border:1px solid #bcd7ca;background:#f0f8f4}.daycheckallclear>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--green);color:#fff;font-size:21px;font-weight:900}
.daycheckperson{display:grid;grid-template-columns:10px 42px minmax(0,1fr) auto auto;gap:11px;align-items:center;min-height:63px;padding:9px 12px;border:1px solid var(--line);background:#fff}.daycheckpersonstate{width:8px;height:100%;min-height:38px;background:#a4aaad}.daycheckpersonstate.green{background:var(--green)}.daycheckpersonstate.orange{background:#c8781e}.daycheckpersonstate.red{background:#b83b32}.daycheckavatar{display:grid;place-items:center;width:40px;height:40px;overflow:hidden;border-radius:50%;background:#16232c;color:#fff;font-size:13px;font-weight:900}.daycheckavatar img{width:100%;height:100%;object-fit:cover}.daycheckhours{font-size:15px!important;white-space:nowrap}
.daychecksystem{display:grid;grid-template-columns:12px minmax(0,1fr);gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);background:#faf8f4}.daychecksystem.red{background:#fff4f2}.daychecksystem.orange{background:#fff8ec}.daychecksystem.green{background:#f0f8f4}
@media(max-width:760px){.daychecknav{display:grid;grid-template-columns:1fr 1fr;align-items:end}.daychecknav label{grid-column:1/-1;grid-row:1}.daychecknav input{width:100%}.daycheckhero{align-items:stretch;flex-direction:column;padding:18px}.daycheckhero h3{font-size:29px}.daycheckheroactions{justify-items:stretch}.daycheckstats{grid-template-columns:1fr 1fr}.daycheckissue{grid-template-columns:10px 1fr}.daycheckissue .daycheckaction{grid-column:2;justify-self:start}.daycheckperson{grid-template-columns:8px 36px 1fr auto}.daycheckavatar{width:34px;height:34px}.daycheckhours{grid-column:3}.daycheckperson .daycheckaction{grid-column:4;grid-row:1/3}.daycheckheroactions .primary{width:100%}}

/* De indeling en urencalculatie horen bij de afzonderlijke werkopdracht. */
.projectworktypecontrol{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px);gap:18px;align-items:end;margin:16px 0 14px;padding:16px;border:1px solid #e4d8c8;background:#fbf5ec}
.projectworktypecontrol>div strong{display:block;font-size:18px}.projectworktypecontrol>div span{display:block;margin-top:5px;color:var(--muted);font-size:14px}
.projectworktypecontrol label>span{display:block;margin-bottom:6px;color:var(--muted);font-size:13px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.projectworktypecontrol select{width:100%;height:46px;border:1px solid var(--line);background:#fff;padding:0 12px;font-size:16px;font-weight:750}
@media(max-width:700px){.projectworktypecontrol{grid-template-columns:1fr}}

/* Extra factuurregel: omschrijving gebruikt de volledige beschikbare breedte. */
.invoiceextrarow{grid-template-columns:26px minmax(72px,.6fr) minmax(82px,.7fr) minmax(130px,1fr) minmax(72px,.55fr) minmax(130px,1fr) minmax(110px,.8fr) minmax(150px,1fr) 30px;align-items:end}
.invoiceextrarow>input[type=checkbox]{grid-column:1;grid-row:1/3;align-self:start;margin-top:28px}
.invoiceextradesc{grid-column:2/8;grid-row:1}.invoiceextrapart{grid-column:8;grid-row:1}.invoiceextraquantity{grid-column:2;grid-row:2}.invoiceextraunit{grid-column:3;grid-row:2}.invoiceextrapurchase{grid-column:4;grid-row:2}.invoiceextramargin{grid-column:5;grid-row:2}.invoiceextrasale{grid-column:6;grid-row:2}.invoiceextratotal{grid-column:7;grid-row:2}.invoiceextraremove{grid-column:9;grid-row:1}
@media(max-width:980px){.invoiceextrarow{grid-template-columns:30px repeat(3,minmax(0,1fr)) 30px}.invoiceextrarow>input[type=checkbox]{grid-column:1;grid-row:1;align-self:center;margin-top:0}.invoiceextradesc{grid-column:2/4;grid-row:1}.invoiceextrapart{grid-column:4;grid-row:1}.invoiceextraquantity{grid-column:2;grid-row:2}.invoiceextraunit{grid-column:3;grid-row:2}.invoiceextrapurchase{grid-column:4;grid-row:2}.invoiceextramargin{grid-column:2;grid-row:3}.invoiceextrasale{grid-column:3;grid-row:3}.invoiceextratotal{grid-column:4;grid-row:3}.invoiceextraremove{grid-column:5;grid-row:1}}
@media(max-width:700px){.invoiceextrarow{grid-template-columns:30px 1fr 1fr 30px}.invoiceextradesc{grid-column:2/4;grid-row:1}.invoiceextrapart{grid-column:2/4;grid-row:2}.invoiceextraquantity{grid-column:2;grid-row:3}.invoiceextraunit{grid-column:3;grid-row:3}.invoiceextrapurchase{grid-column:2;grid-row:4}.invoiceextramargin{grid-column:3;grid-row:4}.invoiceextrasale{grid-column:2;grid-row:5}.invoiceextratotal{grid-column:3;grid-row:5}.invoiceextraremove{grid-column:4;grid-row:1}}

/* Beheerderimport van Global Workshop-uren onder Beheer. */
.gwimportadmin{max-width:1480px;margin:0 auto}.gwimportadmin .gwimportpanel{margin:0}
.gwimportpanel{border-top:5px solid var(--orange)}
.gwimportpanel>.sectitle{align-items:flex-start}.gwimportpanel>.sectitle>.gwimportfile{flex:0 0 min(360px,100%)}
.gwimportfile{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:center;min-height:68px;padding:10px 12px;border:1px dashed #baaca0;background:#fbf6ef;cursor:pointer}.gwimportfile:hover{border-color:var(--orange);background:#fff1e4}.gwimportfile input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.gwimportfileicon{display:grid;place-items:center;width:50px;height:46px;background:#14212a;color:#fff;font-size:13px;font-weight:900;letter-spacing:.08em}.gwimportfile strong,.gwimportfile small{display:block}.gwimportfile small{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}
.gwimportresult{display:grid;gap:4px;margin:14px 0;padding:14px 16px;border:1px solid #acd2c3;border-left:5px solid var(--green);background:#eef8f3}.gwimportresult strong{font-size:17px}.gwimportresult span{color:#3c6557;font-size:14px}
.gwimportfilebar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:15px 0 0;padding:12px 14px;background:#14212a;color:#fff}.gwimportfilebar strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gwimportfilebar span{color:#cbd3d8;font-size:13px;text-align:right}
.gwimportstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:14px;background:var(--line)}.gwimportstats>div{display:grid;gap:3px;padding:14px 16px;background:#fff}.gwimportstats strong{font:500 26px/1 Georgia,serif}.gwimportstats span{color:var(--muted);font-size:12px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.gwimportlist{display:grid;gap:10px}.gwimportrow{border:1px solid var(--line);border-left:5px solid var(--orange);background:#fff}.gwimportrow.excluded{border-left-color:#b9b7b1;opacity:.7}.gwimportsource{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 14px;align-items:start;padding:14px 16px;border-bottom:1px solid var(--line);background:#faf8f4}.gwimportcheck{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.gwimportcheck input{width:20px;height:20px;margin-top:1px;accent-color:var(--orange)}.gwimportcheck strong,.gwimportcheck small{display:block}.gwimportcheck strong{font-size:17px}.gwimportcheck small{margin-top:3px;color:var(--muted);font-size:13px}.gwimportsource>p{grid-column:1;margin:4px 0 0 30px;color:var(--muted);font-size:13px}.gwimportsource>b{grid-column:2;grid-row:1/3;align-self:center;font:500 24px/1 Georgia,serif;color:var(--orange-dark);white-space:nowrap}.gwimportwarnings{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;margin:7px 0 0 30px}.gwimportwarnings span{padding:4px 7px;background:#fff0d9;color:#805313;font-size:12px;font-weight:850}
.gwimportmapping{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr .65fr;gap:10px;padding:13px 16px}.gwimportmapping .field{margin:0;min-width:0}.gwimportmapping .field>span{overflow:hidden;text-overflow:ellipsis}.gwimportmapping select,.gwimportmapping input{min-width:0;height:44px;font-size:14px}.gwimportmapping .searchselect{min-width:0}
.gwimportfoot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}.gwimportfoot p{max-width:720px;margin:0;color:var(--muted);font-size:14px;line-height:1.45}.gwimportfoot>div{display:flex;gap:8px;flex:0 0 auto}
@media(max-width:1050px){.gwimportstats{grid-template-columns:1fr 1fr}.gwimportmapping{grid-template-columns:1fr 1fr}.gwimportmapping .field:last-child{grid-column:1/-1}.gwimportpanel>.sectitle{flex-direction:column}.gwimportpanel>.sectitle>.gwimportfile{width:100%;flex-basis:auto}}
@media(max-width:700px){.gwimportstats,.gwimportmapping{grid-template-columns:1fr}.gwimportmapping .field:last-child{grid-column:auto}.gwimportsource{grid-template-columns:1fr}.gwimportsource>b{grid-column:1;grid-row:auto;margin-left:30px}.gwimportfilebar,.gwimportfoot{align-items:stretch;flex-direction:column}.gwimportfilebar span{text-align:left}.gwimportfoot>div,.gwimportfoot button{width:100%}.gwimportfoot>div{flex-direction:column}.gwimportwarnings{margin-left:0}}

/* Inkomende facturen vormen een eigen administratie, los van leveringen en bestelbonnen. */
.incominginvoiceworkspace{border-top:5px solid var(--orange)}
.incominginvoicestats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:16px}
.incominginvoicestats button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:10px 13px;border:1px solid #dccfc2;background:#fff;color:var(--ink);cursor:pointer;text-align:left}
.incominginvoicestats button:hover,.incominginvoicestats button.on{border-color:var(--orange);background:#fff1e4;box-shadow:inset 4px 0 var(--orange)}
.incominginvoicestats span{font-size:13px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.incominginvoicestats strong{font:500 27px/1 Georgia,serif;color:var(--orange-dark)}
.incominginvoiceupload{margin:0 0 14px;border:1px solid var(--line);border-top:4px solid var(--orange);background:#fff}
.incominginvoiceupload>summary,.incominginvoiceitem>summary,.projectinvoiceitem>summary{list-style:none}.incominginvoiceupload>summary::-webkit-details-marker,.incominginvoiceitem>summary::-webkit-details-marker,.projectinvoiceitem>summary::-webkit-details-marker{display:none}
.incominginvoiceupload>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;cursor:pointer}.incominginvoiceupload>summary>span{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:12px;align-items:center}.incominginvoiceupload>summary b{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;background:var(--orange);color:#fff;font-size:25px}.incominginvoiceupload>summary strong,.incominginvoiceupload>summary small{display:block}.incominginvoiceupload>summary small{color:var(--muted)}
.incominginvoiceupload>summary>i,.incominginvoiceitem>summary>i,.projectinvoiceitem>summary>i{width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s}.incominginvoiceupload[open]>summary>i,.incominginvoiceitem[open]>summary>i,.projectinvoiceitem[open]>summary>i{transform:rotate(225deg)}
.incominginvoiceupload>div{padding:0 12px 12px}.incominginvoiceupload .invoicepdftrial{margin:0;border:0;background:#faf8f4;box-shadow:none}.incominginvoiceupload .invoicepdftrial>.sectitle{display:none}
.incominginvoicepanel{border-top:4px solid #17303a}.incominginvoicesearch{max-width:720px}.incominginvoiceitem{border:1px solid var(--line);background:#fff}.incominginvoiceitem[hidden]{display:none}
.incominginvoiceitem>summary{display:grid;grid-template-columns:minmax(210px,1.15fr) minmax(220px,1.15fr) auto 16px;gap:14px;align-items:center;padding:13px 15px;cursor:pointer}.incominginvoiceitem>summary:hover{background:#faf8f4}.incominginvoiceidentity strong,.incominginvoiceidentity small,.incominginvoicesummary strong,.incominginvoicesummary small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.incominginvoiceidentity small,.incominginvoicesummary small{margin-top:3px;color:var(--muted);font-size:13px}.incominginvoicebody{padding:0 15px 14px;border-top:1px solid var(--line);background:#faf8f4}.incominginvoiceprojects{margin:0;padding:11px 0}.incominginvoiceproject{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 11px}.incominginvoiceproject strong,.incominginvoiceproject span{display:block}.incominginvoiceproject span{margin-top:2px;color:var(--muted);font-size:13px}.incominginvoiceprojectamount{flex:0 0 auto!important;margin:0!important;color:var(--ink)!important;font-weight:850}.incominginvoicebookstatus{margin:0!important}.incominginvoicebookstatus.pending{background:#fff1e4;color:#94480c!important}.incominginvoicebookstatus.sent{background:#e7eef2;color:#244f63!important}
.incominginvoicebody>.incominginvoiceactions{padding-top:10px;border-top:1px solid var(--line)}
.projectincominginvoices{border-top:5px solid #17303a}.projectinvoicelist{display:grid;gap:7px}.projectinvoiceitem{border:1px solid var(--line);background:#fff}.projectinvoiceitem>summary{display:grid;grid-template-columns:minmax(220px,1fr) auto auto 16px;gap:15px;align-items:center;padding:13px 15px;cursor:pointer}.projectinvoiceitem>summary:hover{background:#faf8f4}.projectinvoiceitem>summary>span:first-child strong,.projectinvoiceitem>summary>span:first-child small{display:block}.projectinvoiceitem>summary>span:first-child small{margin-top:3px;color:var(--muted);font-size:13px}.projectinvoicetotal{text-align:right}.projectinvoicetotal small,.projectinvoicetotal strong{display:block}.projectinvoicetotal small{color:var(--muted);font-size:12px;text-transform:uppercase}.projectinvoicebody{padding:12px 15px 14px;border-top:1px solid var(--line);background:#faf8f4}.projectinvoicebooking{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 11px;border-left:4px solid var(--green);background:#eef7f2}.projectinvoicebooking+ .projectinvoicebooking{margin-top:6px}.projectinvoicebooking strong,.projectinvoicebooking span{display:block}.projectinvoicebooking span{margin-top:2px;color:var(--muted);font-size:13px}.projectinvoicefinancials{display:flex;justify-content:flex-end;gap:20px;margin-top:10px;padding:9px 11px;border-top:1px solid var(--line);font-size:14px}.projectinvoicebody>.incominginvoiceactions{padding-top:10px}
.projectinvoicezenvoices{color:#225f50;font-weight:850}
.projectinvoicelines{margin:0 0 8px;border:1px solid var(--line);border-top:0;background:#fff}.projectinvoicelinehead,.projectinvoiceline{display:grid;grid-template-columns:minmax(220px,1.8fr) minmax(70px,.65fr) repeat(4,minmax(86px,.75fr));gap:8px;align-items:center;padding:8px 10px}.projectinvoicelinehead{background:#f0ede7;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.projectinvoiceline{border-top:1px solid var(--line);font-size:14px}.projectinvoiceline:first-of-type{border-top:0}.projectinvoicelinedesc strong,.projectinvoicelinedesc small{display:block}.projectinvoicelinedesc small{margin-top:2px;color:var(--muted);font-size:12px}.projectinvoiceline>span,.projectinvoiceline>strong{text-align:right}.projectinvoicelinesempty{margin:0 0 8px;border:1px solid var(--line);border-top:0;background:#fff}
@media(max-width:900px){.incominginvoicestats{grid-template-columns:1fr 1fr}.incominginvoiceitem>summary{grid-template-columns:minmax(0,1fr) auto 16px}.incominginvoicesummary{grid-column:1/3;grid-row:2}.projectinvoiceitem>summary{grid-template-columns:minmax(0,1fr) auto 16px}.projectinvoicetotal{grid-column:1;grid-row:2;text-align:left}}
@media(max-width:620px){.incominginvoicestats{grid-template-columns:1fr}.incominginvoiceitem>summary,.projectinvoiceitem>summary{grid-template-columns:minmax(0,1fr) 16px}.incominginvoicesummary,.incominginvoicebookstatus,.projectinvoicetotal{grid-column:1}.incominginvoicebookstatus{justify-self:start}.incominginvoiceitem>summary>i,.projectinvoiceitem>summary>i{grid-column:2;grid-row:1}.incominginvoiceproject,.projectinvoicebooking{align-items:flex-start;flex-direction:column}.incominginvoiceprojectamount{align-self:flex-end}.projectinvoicefinancials{justify-content:space-between}.incominginvoiceactions{justify-content:stretch}.incominginvoiceactions button{width:100%}.projectinvoicelinehead{display:none}.projectinvoiceline{grid-template-columns:1fr 1fr;gap:6px 12px}.projectinvoicelinedesc{grid-column:1/-1}.projectinvoiceline>span,.projectinvoiceline>strong{text-align:left}.projectinvoiceline>[data-label]::before{content:attr(data-label);display:block;color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase}}

/* Wacht op levering: compacte, uitklapbare project- en voorraadbestellingen. */
.waitingordercounts{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.waitingordercounts>span:not(.count){padding:5px 8px;border:1px solid var(--line);background:#faf8f4;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.waitingordercounts b{color:var(--ink);font-size:14px}
.waitingordercard{display:block;margin-top:7px;padding:0;border:1px solid var(--line);background:#fff}.waitingordercard.stock{border-left:5px solid var(--orange)}.waitingordercard.project{border-left:5px solid #17303a}.waitingordercard[hidden]{display:none}.waitingordercard>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto 16px;gap:14px;align-items:center;padding:10px 12px;list-style:none;cursor:pointer}.waitingordercard>summary::-webkit-details-marker{display:none}.waitingordercard>summary:hover{background:#faf8f4}.waitingorderidentity{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 9px;align-items:center;min-width:0}.waitingorderidentity>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.waitingorderidentity>small{grid-column:1/3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px}.waitingordertype{padding:4px 6px;background:#e7eef2;color:#244f63;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.waitingordertype.stock{background:#fff1e4;color:#94480c}.waitingorderprogress{text-align:right;white-space:nowrap}.waitingorderprogress strong,.waitingorderprogress small{display:block}.waitingorderprogress strong{font-size:16px}.waitingorderprogress small{color:var(--muted);font-size:11px;text-transform:uppercase}.waitingordercard>summary .orderstatus{margin:0;white-space:nowrap}.waitingorderchevron{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s}.waitingordercard[open]>summary .waitingorderchevron{transform:rotate(225deg)}.waitingorderbody{padding:0 12px 11px;border-top:1px solid var(--line);background:#faf8f4}.waitingordermeta{display:flex;align-items:center;gap:16px;padding:9px 0;color:var(--muted);font-size:13px}.waitingordermeta span strong{color:var(--ink)}.waitingordermeta button{margin-left:auto}.waitingorderbody .orderreceipt{margin-top:0}
@media(max-width:700px){.waitingordercounts{justify-content:flex-start}.waitingordercard>summary{grid-template-columns:minmax(0,1fr) auto 16px}.waitingordercard>summary .orderstatus{grid-column:1;grid-row:2;justify-self:start}.waitingorderprogress{grid-column:2;grid-row:1/3}.waitingorderchevron{grid-column:3;grid-row:1}.waitingordermeta{align-items:stretch;flex-direction:column;gap:5px}.waitingordermeta button{width:100%;margin:5px 0 0}.waitingorderidentity{grid-template-columns:1fr}.waitingorderidentity>small{grid-column:1}.waitingordertype{width:max-content}}

/* Leveranciers: vaste, compacte regels in plaats van grote losse kaarten. */
.supplierlistpanel{padding:15px 17px}.supplierlisthead{display:flex;align-items:center;justify-content:space-between;gap:16px}.supplierlisthead h3{margin:2px 0 0}.supplierlisttools{display:grid;grid-template-columns:minmax(240px,720px) auto;gap:12px;align-items:end;margin:12px 0 10px}.supplierlisttools .field{margin:0}.supplierlisttools .field>span{margin-bottom:4px}.supplierlisttotal{display:flex;align-items:center;gap:5px;min-height:44px;padding:0 11px;border:1px solid var(--line);background:#faf8f4;color:var(--muted);font-size:13px;white-space:nowrap}.supplierlisttotal strong{color:var(--ink);font-size:17px}
.suppliercompactlist{display:grid;gap:6px}.suppliercompactrow{display:grid;grid-template-columns:38px minmax(190px,1fr) minmax(250px,1.2fr) auto auto;gap:11px;align-items:center;min-height:66px;padding:8px 10px;border:1px solid var(--line);background:#fff}.suppliercompactrow:hover{border-color:#cbb9a7;background:#fffdf9}.suppliercompactinitial{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#17303a;color:#fff;font-size:15px;font-weight:900}.suppliercompactidentity,.suppliercompactcontact{display:grid;min-width:0;gap:2px}.suppliercompactidentity strong,.suppliercompactidentity small,.suppliercompactcontact strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suppliercompactidentity strong,.suppliercompactcontact strong{font-size:15px}.suppliercompactidentity small,.suppliercompactcontact>small{color:var(--muted);font-size:12px}.suppliercompactcontact>small{font-weight:850;letter-spacing:.05em;text-transform:uppercase}.suppliercompactlinks{display:flex;min-width:0;gap:10px}.suppliercompactlinks a,.suppliercompactlinks em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-style:normal}.suppliercompactlinks a{color:#21644f;font-weight:750}.suppliercompactcount{padding:5px 7px;border:1px solid #e3d6c9;background:#faf8f4;color:#675e55;font-size:11px;font-weight:850;white-space:nowrap}.suppliercompactcount.single{color:var(--muted)}
@media(max-width:900px){.suppliercompactrow{grid-template-columns:38px minmax(0,1fr) auto}.suppliercompactcontact{grid-column:2}.suppliercompactcount{grid-column:3;grid-row:1}.suppliercompactrow>[data-supplier-edit]{grid-column:3;grid-row:2}.suppliercompactlinks{flex-wrap:wrap;gap:3px 10px}}
@media(max-width:620px){.supplierlistpanel{padding:12px}.supplierlisthead{align-items:stretch;flex-direction:column}.supplierlisthead .primary{width:100%}.supplierlisttools{grid-template-columns:1fr}.supplierlisttotal{width:max-content;min-height:34px}.suppliercompactrow{grid-template-columns:34px minmax(0,1fr) auto;gap:8px;padding:9px}.suppliercompactinitial{width:32px;height:32px}.suppliercompactcontact{grid-column:1/4;padding-top:7px;border-top:1px solid var(--line)}.suppliercompactcount{grid-column:2;grid-row:3;justify-self:start}.suppliercompactrow>[data-supplier-edit]{grid-column:3;grid-row:3}}

/* Compacte beheerweergave: samenvatting eerst, details alleen na openen. */
.resultactions,.projectviewtoggle{display:flex;align-items:center;gap:7px}.projectviewtoggle{padding:3px;border:1px solid var(--line);background:#f5f2ed}.projectviewtoggle button{min-height:32px;padding:0 10px;border:0!important;background:transparent!important;color:var(--muted)!important;text-decoration:none!important;font-size:13px;font-weight:850;cursor:pointer}.projectviewtoggle button.on{background:#17232c!important;color:#fff!important}.resultactions>#clearFilters{margin-left:4px}
.grid.compactlist{grid-template-columns:1fr;gap:8px}.grid.compactlist .card{display:grid;grid-template-columns:180px minmax(0,1fr);min-height:142px}.grid.compactlist .card:hover{transform:none}.grid.compactlist .photo{height:100%;min-height:142px}.grid.compactlist .body{display:grid;grid-template-columns:minmax(230px,.9fr) minmax(270px,1.1fr) auto;gap:10px 18px;align-items:center;padding:13px 16px}.grid.compactlist .titleline{align-self:start}.grid.compactlist .titleline h2{font-size:21px}.grid.compactlist .titleline p{font-size:13px}.grid.compactlist .laborbudget,.grid.compactlist .next,.grid.compactlist .workorderempty,.grid.compactlist .ordermatch{grid-column:2;margin:0}.grid.compactlist .next{padding:9px 11px}.grid.compactlist .next p{font-size:14px}.grid.compactlist .meta{grid-column:3;display:grid;gap:5px;align-self:center;margin:0;padding:0 0 0 14px;border:0;border-left:1px solid var(--line);font-size:12px}.grid.compactlist .meta .updated{margin:0}.grid.compactlist .chev{display:none}
.compactadminfold,.compactlistfold{display:block;border:1px solid var(--line);background:#fff}.compactadminfold{margin-top:10px}.compactadminfold>summary,.compactlistfold>summary{display:grid;grid-template-columns:minmax(0,1fr) 14px;gap:14px;align-items:center;min-height:56px;padding:9px 13px;list-style:none;cursor:pointer;background:#fff}.compactadminfold>summary::-webkit-details-marker,.compactlistfold>summary::-webkit-details-marker{display:none}.compactadminfold>summary:hover,.compactlistfold>summary:hover{background:#faf7f2}.compactadminfold>summary span,.compactlistfold>summary span{display:grid;min-width:0;gap:2px}.compactadminfold>summary strong,.compactlistfold>summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.compactadminfold>summary small,.compactlistfold>summary small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.compactadminfold>summary i,.compactlistfold>summary i{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s}.compactadminfold[open]>summary i,.compactlistfold[open]>summary i{transform:rotate(225deg)}.compactadminfold[open]>summary,.compactlistfold[open]>summary{border-bottom:1px solid var(--line);background:#faf7f2}.compactadminfold>.hrcard,.compactadminfold>.billingsection,.compactadminfold>.billingzero,.compactlistfold>.employeeitem{margin:0!important;border:0!important;box-shadow:none!important}.compactadminfold>.hrcard{border-top:3px solid var(--orange)!important}.compactlistfold{margin-top:6px}.compactlistfold[hidden]{display:none}.compactlistfold>.employeeitem{padding:11px 13px;background:#faf9f6}.compactlistfold>.customerrecord .customerrecordhead{padding-bottom:8px;border-bottom:1px solid var(--line)}
.compactdatabasegrid{grid-template-columns:minmax(0,1fr)!important;gap:10px}.compactdatabasegrid>.hrcard{padding:16px 17px}.compactdatabasegrid .employeesection{margin-top:12px}.employeecompactfold>.employeeitem>div:first-child>strong:first-child,.customercompactfold>.customerrecord .customerrecordhead>div>strong:first-child{display:none}.employeeeditorfold,.customereditorfold{margin-top:10px}.employeeeditorfold>.employeeeditor,.customereditorfold>.customereditor{padding:16px 18px}.customeractivitybar{margin-bottom:10px!important;padding:14px 17px!important}.customeractivitybar .sectitle{margin:0}.customeractivitybar .hint{margin:3px 0 0}.customerteamleaderfold{margin:0 0 10px}.customerteamleaderfold>.customerteamleader{padding:16px 18px}.quoteoverviewhead{padding:15px 17px!important}.quotecompactfold{margin-top:7px}.quotecompactfold>.hrcard{padding:14px 16px}.quotecompactfold>.hrcard>.sectitle{display:none}.quotecompactfold>.hrcard>.actions{margin:0}.planningcompactfold>.hrcard,.manualtimefold>.hrcard{padding:16px 18px}.approvalstack{display:grid;gap:10px}.approvalhistoryfold>.approvalhistory{padding:12px 16px}.billingcompactfold{margin:7px 0}.billingcompactfold>.billingsection,.billingcompactfold>.billingzero{padding:13px 15px;background:#faf9f6}.billingattentionfold{border-left:4px solid var(--orange)}.billinghistoryfold>.hrcard,.billingconnectionfold>.hrcard,.connectionfold>.connectioncard{padding:16px 18px}.connectionfold{margin-top:0}.connectionfold+.connectionfold{margin-top:10px}.connectionfold>.connectioncard{border-top:3px solid var(--orange)!important}.dropboxconnectionfold{margin-top:0}
.employeedatabasecard{padding:16px 17px}.employeeinlinefold{margin-top:6px}.employeeinlinefold.inactive>summary{background:#f4f3f0}.employeeinlineeditor{padding:18px 16px 16px;background:#faf9f6;border-top:3px solid var(--orange)}.employeeinlineeditor .hint{line-height:1.45}.employeeformactions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:16px}.employeeformactions .red{margin-right:auto}.employeedevices{display:grid;gap:8px;margin:14px 0;padding:12px;background:#f1f0ec;border-left:4px solid #8b9499}.employeedevices>strong{font-size:15px}.employeedevices>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:7px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.newemployeeinlinefold{margin-bottom:12px}
@media(max-width:700px){.employeedatabasecard{padding:12px}.employeeinlineeditor{padding:14px 11px}.employeeformactions button{flex:1 1 140px}.employeeformactions .red{margin-right:0}.employeedevices>div{align-items:stretch;flex-direction:column}.employeedevices button{width:100%}}
@media(max-width:1050px){.grid.compactlist .body{grid-template-columns:minmax(210px,.8fr) minmax(250px,1.2fr)}.grid.compactlist .meta{grid-column:1/-1;display:flex;padding:8px 0 0;border:0;border-top:1px solid var(--line)}}
@media(max-width:700px){.resultline{height:auto;min-height:56px;align-items:flex-start;flex-direction:column;padding:9px 0}.resultactions{width:100%;justify-content:space-between}.projectviewtoggle button{padding:0 8px}.grid.compactlist .card{grid-template-columns:105px minmax(0,1fr);min-height:126px}.grid.compactlist .photo{min-height:126px}.grid.compactlist .body{display:block;padding:11px 12px}.grid.compactlist .laborbudget,.grid.compactlist .next,.grid.compactlist .workorderempty,.grid.compactlist .ordermatch{margin-top:8px}.grid.compactlist .laborbudget,.grid.compactlist .next{display:none}.grid.compactlist .meta{display:flex;flex-wrap:wrap;gap:5px 10px;margin-top:8px;padding-top:8px}.compactadminfold>summary,.compactlistfold>summary{min-height:52px;padding:8px 11px}.compactadminfold>summary small,.compactlistfold>summary small{white-space:normal}.customerassets{grid-template-columns:1fr}.compactdatabasegrid>.hrcard{padding:12px}.connectionmeta{grid-template-columns:1fr}}

/* Factuurfoto's gebruiken hetzelfde rustige uploadvak als digitale PDF's. */
.invoicepdfdropicon{line-height:1.05;text-align:center}

/* Projectdetail: rustige bediening en een licht, overzichtelijk autodossier. */
#detailLayer .detailhero{height:255px;padding:18px 22px}
#detailLayer .detailhero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,15,19,.52),rgba(8,15,19,.12) 42%,rgba(8,15,19,.78));pointer-events:none}
#detailLayer .detailhero>.back,#detailLayer .detailhero>.detailstatus,#detailLayer .detailhero>.detailactions,#detailLayer .detailhero>.detailhead{z-index:2}
#detailLayer .back{height:40px;border-color:#ffffff52;background:#1c3039d9;border-radius:5px;padding:0 13px;font-size:14px;font-weight:800;box-shadow:none}
#detailLayer .back:hover,#detailLayer .back:focus-visible{background:#294550;border-color:#ffffff8a;outline:0}
#detailLayer .detailactions{right:22px;top:18px;gap:5px;padding:5px;border:1px solid #ffffff2e;border-radius:7px;background:#10212ad4;box-shadow:0 6px 18px #0003;backdrop-filter:blur(8px)}
#detailLayer .customerjump,#detailLayer .projectinvoiceaction,#detailLayer .projectupdateaction,#detailLayer .detailactions .coverchange{height:38px;border:1px solid #506975;background:#263f4a;color:#fff;border-radius:4px;padding:0 13px;font-size:14px;font-weight:800;box-shadow:none}
#detailLayer .customerjump:hover,#detailLayer .customerjump:focus-visible,#detailLayer .projectinvoiceaction:hover,#detailLayer .projectinvoiceaction:focus-visible,#detailLayer .detailactions .coverchange:hover,#detailLayer .detailactions .coverchange:focus-within{background:#355461;border-color:#7d98a3;outline:0}
#detailLayer .projectupdateaction{border-color:#ef9a58;background:#ef7617}
#detailLayer .projectupdateaction:hover,#detailLayer .projectupdateaction:focus-visible{background:#cf5f08;border-color:#f3a66e;outline:0}
#detailLayer .detailhead{left:22px;right:22px;bottom:20px}
#detailLayer .detailhead h2{margin:10px 0 4px;font-size:38px}
#detailLayer .detailhead p{font-size:16px;color:#eef1f2}

#detailLayer .vehicleworkorders{margin:0 0 14px;padding:16px 18px 18px;border:1px solid #d6dcd9;border-top:4px solid #54756a;background:#eef2f0;color:var(--ink)}
#detailLayer .vehicleworkorderhead{margin-bottom:7px}
#detailLayer .vehicleworkorderhead .kicker{margin-bottom:5px;color:#527267}
#detailLayer .vehicleworkorderhead h3{font-size:22px}
#detailLayer .vehicleworkorderactions{gap:6px}
#detailLayer .vehiclestate{min-height:32px;border:1px solid #adc5bb;border-radius:999px;background:#deece6;color:#285b49;padding:0 11px;font-size:12px;letter-spacing:.045em}
#detailLayer .vehiclestate.inactive{border-color:#d5c3ad;background:#f4ebe0;color:#745334}
#detailLayer .vehicleworkorderactions .smallbtn{min-height:36px;border:1px solid #cbd2cf;background:#fff;color:#33454d;border-radius:4px;padding:0 12px;font-size:14px;box-shadow:none}
#detailLayer .vehicleworkorderactions .smallbtn:hover,#detailLayer .vehicleworkorderactions .smallbtn:focus-visible{border-color:#879b93;background:#f8faf9;outline:0}
#detailLayer .vehicleworkorderactions .primary{min-height:36px;border-radius:4px;padding:0 14px;font-size:14px;box-shadow:none}
#detailLayer .vehicleworkorderhint{margin:0 0 12px;color:#59676c;font-size:14px;line-height:1.45}
#detailLayer .vehiclestatehelp{display:inline;margin:0;color:#7b878b}
#detailLayer .vehiclestatehelp:before{content:" "}
#detailLayer .vehicleworkorderlist{gap:8px}
#detailLayer .vehicleworkorderlist:has(>.vehicleworkorder:only-child){grid-template-columns:minmax(0,620px)}
#detailLayer .vehicleworkorder{border:1px solid #cbd2cf;background:#fff;color:var(--ink);padding:13px 14px;box-shadow:none}
#detailLayer .vehicleworkorder:hover,#detailLayer .vehicleworkorder:focus-visible{border-color:#82978f;background:#fbfdfc;outline:2px solid #9aada6;outline-offset:-2px}
#detailLayer .vehicleworkorder.active{border-color:#7b9b8f;box-shadow:inset 4px 0 #4f7869}
#detailLayer .vehicleworkorder>.workordernumber{margin-bottom:7px;background:#e7eeeb;color:#315f50;font-size:12px;letter-spacing:.06em}
#detailLayer .vehicleworkorder>strong{font-size:17px}
#detailLayer .vehicleworkorder>span{color:#657278}
#detailLayer .workorderhourgrid{margin-top:10px!important}
#detailLayer .workorderhourgrid>span{padding:7px 9px;border:1px solid #dde2df;background:#f4f7f5}
#detailLayer .workorderhourgrid small{color:#738079;font-size:12px}
#detailLayer .workorderhourgrid b{color:#25343a;font-size:14px}
#detailLayer .workorderopen{color:#3d6d5c!important;font-size:14px}
#detailLayer .workorderclock{min-height:32px;border:1px solid #536f65;border-radius:4px;background:#456d5f;padding:0 12px;font-size:13px}
#detailLayer .workorderclock:hover,#detailLayer .workorderclock:focus-visible{background:#315b4c;outline:2px solid #89a99d;outline-offset:2px}
#detailLayer .workorderarchive{border-top-color:#cbd2cf}
#detailLayer .workorderarchive summary{color:#486a5e}

@media(max-width:900px){#detailLayer .detailactions{max-width:calc(100% - 115px);flex-wrap:wrap;justify-content:flex-end}.detailhead{padding-top:8px}}
@media(max-width:700px){#detailLayer .detailhero{height:235px;padding:14px 15px}#detailLayer .detailactions{right:15px;top:14px;padding:4px}#detailLayer .detailhead{left:15px;right:15px;bottom:16px}#detailLayer .detailhead h2{font-size:34px}#detailLayer .vehicleworkorders{padding:14px 13px}#detailLayer .vehicleworkorderlist:has(>.vehicleworkorder:only-child){grid-template-columns:1fr}#detailLayer .vehiclestatehelp{display:block;margin-top:3px}#detailLayer .vehiclestatehelp:before{content:""}}
@media(max-width:700px){.workorderdescriptionsummary{padding:14px 44px 14px 13px}.workorderdescriptionsummary>i{right:16px}.workorderdescriptionbody{padding:0 13px 14px}.workorderdescriptionhead{display:grid}.workorderdescriptionhead>span{width:max-content}.workorderdescription form>div{align-items:stretch;flex-direction:column}.workorderdescription form button{width:100%}.workorderdescriptiontext{font-size:16px}}

/* Rustige, compacte navigatie: oranje markeert alleen de actieve keuze. */
.hrdrawer .hrtabs{margin-top:8px}
.hrdrawer .hrtabmain{gap:4px;padding-bottom:5px}
.hrdrawer .hrtabsub{gap:4px;padding:5px 0 8px}
.hrdrawer .hrtabs .hrgroup,
.hrdrawer .hrtabs .hrtab{
  min-height:32px!important;
  padding:5px 10px!important;
  border-color:#3f4e57!important;
  background:#17242d!important;
  color:#b9c2c7!important;
  font-size:14px!important;
  line-height:1.1!important;
  box-shadow:none!important;
  transform:none!important;
}
.hrdrawer .hrtabs .hrgroup:hover,
.hrdrawer .hrtabs .hrtab:hover{
  border-color:#65747d!important;
  background:#21313b!important;
  color:#fff!important;
}
.hrdrawer .hrtabs .hrgroup.on,
.hrdrawer .hrtabs .hrtab.on{
  border-color:#53636c!important;
  border-bottom-color:#d96b16!important;
  background:#283842!important;
  color:#fff!important;
  box-shadow:inset 0 -2px #d96b16!important;
}
.hrdrawer .hrtabs .hrtab.stockordernav{
  border-color:#705845!important;
  background:#342d28!important;
  color:#eee3db!important;
}

/* Ook de projecttabbladen zijn navigatie, geen grote actieknoppen. */
#detailLayer .detailbody .detailnav{
  gap:0;
  padding:0 25px;
  border-bottom:1px solid #40505a;
  box-shadow:0 5px 12px #101a2218;
}
#detailLayer .detailbody .detailnav>button,
#detailLayer .detailbody .detailmore>button{
  height:38px!important;
  min-height:38px!important;
  padding:0 8px!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  background:#101a22!important;
  color:#bcc6ca!important;
  font-size:14px!important;
  box-shadow:none!important;
  transform:none!important;
}
#detailLayer .detailbody .detailnav>button:hover,
#detailLayer .detailbody .detailmore>button:hover{
  background:#1b2a33!important;
  color:#fff!important;
}
#detailLayer .detailbody .detailnav>button.active,
#detailLayer .detailbody .detailmore>button.active{
  border-bottom-color:#d96b16!important;
  background:#1e2d36!important;
  color:#fff!important;
  box-shadow:inset 0 -2px #d96b16!important;
}
#detailLayer .detailbody .detailmoremenu{top:38px;border-top:2px solid #d96b16}
#detailLayer .detailbody .detailmoremenu button{
  min-height:34px!important;
  border-color:#4c5b64!important;
  background:#17242d!important;
  color:#d9dfe1!important;
  box-shadow:none!important;
}
#detailLayer .detailbody .detailmoremenu button:hover{
  border-color:#6b7a83!important;
  background:#263741!important;
  color:#fff!important;
}

/* Werkplaatsbezetting: kaarten blijven vrij van beheerknoppen. */
.floorhead{z-index:20;border-bottom:1px solid #43515a}
.floorassign{display:none!important}
.floorhead .floorrefresh,
.floorhead .hrclose,
.kioskassignmentbar .kioskassignmentlink{
  border-color:#55636b!important;
  background:#1b2a33!important;
  color:#d9dfe1!important;
  box-shadow:none!important;
}
.floorhead .floorrefresh:hover,
.floorhead .hrclose:hover,
.kioskassignmentbar .kioskassignmentlink:hover{
  border-color:#718089!important;
  background:#293a44!important;
  color:#fff!important;
}
.floorhead .floorrefresh:is(:active,.portal-button-pressed),
.floorhead .hrclose:is(:active,.portal-button-pressed),
.kioskassignmentbar .kioskassignmentlink:is(:active,.portal-button-pressed){
  background:#0f1a20!important;
  color:#fff!important;
  box-shadow:inset 0 2px 4px #0006!important;
  transform:translateY(1px) scale(.98)!important;
}
.kioskassignmentbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:13px;
  padding:10px 12px;
  border:1px solid #d4d8d6;
  background:#edf0ee;
}
.kioskassignmentbar span{display:grid;gap:2px}
.kioskassignmentbar small{color:#68736d;font-size:12px;font-weight:850;letter-spacing:.08em}
.kioskassignmentbar strong{font-size:15px}
.kioskassignmentlink{min-height:32px;padding:0 11px;font-size:14px;font-weight:850}

@media(max-width:700px){
  #detailLayer .detailbody .detailnav{padding:5px 13px}
  #detailLayer .detailbody .detailnav>button,
  #detailLayer .detailbody .detailmore>button{height:36px!important;min-height:36px!important}
  #detailLayer .detailbody .detailmoremenu{top:36px}
  .kioskassignmentbar{align-items:flex-start;flex-direction:column}
}

.projectpartspanel{border-left:4px solid #d96b16;padding:0!important}
.projectdeletepanel{display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:4px solid #a53b32;background:#fff9f8}.projectdeletepanel h3{margin:2px 0 6px}.projectdeletepanel .danger{flex:0 0 auto;color:#8d2e28;border-color:#d6aaa6;background:#fff;white-space:nowrap}@media(max-width:700px){.projectdeletepanel{align-items:stretch;flex-direction:column}.projectdeletepanel .danger{width:100%}}
.projectpartssummary{display:grid;grid-template-columns:1fr auto 18px;gap:14px;align-items:center;padding:17px;cursor:pointer;list-style:none}
.projectpartssummary::-webkit-details-marker{display:none}
.projectpartssummary h3,.projectpartssummary p{margin:0}
.projectpartssummary>span{color:#69736e;font-size:13px;font-weight:850}
.projectpartssummary>i{width:10px;height:10px;border-right:2px solid #58615d;border-bottom:2px solid #58615d;transform:rotate(45deg);transition:transform .15s ease}
.projectpartspanel[open] .projectpartssummary>i{transform:rotate(225deg)}
.projectpartsbody{display:grid;gap:15px;padding:0 17px 17px;border-top:1px solid #d8d7d2}
.projectpartsbody>.sectitle{align-items:center;padding-top:13px}
.projectpartsbody>.sectitle .hint{margin:0}
.projectpartlist{display:grid;gap:10px}
.projectpartcard{display:grid;grid-template-columns:112px minmax(105px,140px) 1fr auto;gap:14px;align-items:center;padding:13px;border:1px solid #d8d7d2;background:#f7f6f2}
.projectpartphotos{display:grid;grid-template-columns:repeat(2,54px);gap:4px;width:112px}
.projectpartphoto{display:grid;place-items:center;width:112px;height:82px;overflow:hidden;border:1px solid #d2d2ce;background:#e8e9e6;color:#6c7772;text-decoration:none}
.projectpartphotos .projectpartphoto{width:54px;height:54px}
.projectpartphoto img{width:100%;height:100%;object-fit:cover}
.projectpartphoto.empty span{font-size:12px;font-weight:800}
.projectpartcode{display:grid;gap:3px}
.projectpartcode span{color:#68736d;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.projectpartcode strong{font-size:16px}
.projectpartbody{display:grid;gap:3px;min-width:0}
.projectpartbody>strong{font-size:15px}
.projectpartbody p,.projectpartbody small{margin:0;color:#5d6864}
.projectpartbody small{display:block;font-size:12px}
.projectpartform{display:grid;gap:13px;margin-top:18px;padding:17px;border:1px solid #cfd2ce;background:#eef1ef}
.projectpartform [hidden]{display:none!important}
.projectpartphotofield input{padding:8px;background:#fff}
.projectparteditphotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.projectparteditphotos>div{display:grid;gap:6px}
.projectparteditphoto{display:block;width:100%;height:130px;overflow:hidden;border:1px solid #cfd2ce;background:#e8e9e6}
.projectparteditphoto img{width:100%;height:100%;object-fit:cover}
.projectpartformactions{display:grid;grid-template-columns:auto 1fr auto auto;gap:9px;align-items:center}
@media(max-width:700px){
  .projectpartcard{grid-template-columns:1fr;gap:8px}
  .projectpartssummary{padding:14px}
  .projectpartsbody{padding:0 14px 14px}
  .projectpartphotos{grid-template-columns:repeat(4,1fr);width:100%}
  .projectpartphoto{width:100%;height:180px}
  .projectpartphotos .projectpartphoto{width:100%;height:78px}
  .projectpartcard>button{justify-self:start}
  .projectpartformactions{grid-template-columns:1fr 1fr}
  .projectpartformactions span{display:none}
}

.webrequestcard{border-left:4px solid #d96b16}
.webrequestlist{display:grid;gap:9px}
.webrequest{border:1px solid #d8d7d2;background:#f7f6f2}
.webrequest>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;cursor:pointer;list-style:none}
.webrequest>summary::-webkit-details-marker{display:none}
.webrequest>summary span:first-child{display:grid;gap:3px}
.webrequest>summary small{color:#68736d}
.webrequestbody{display:grid;gap:14px;padding:16px;border-top:1px solid #d8d7d2;background:#fff}
.webrequestfacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px}
.webrequestfacts p,.webrequestmessage p{margin:0;color:#4d5954;line-height:1.55}
.webrequestfacts strong,.webrequestmessage>strong{display:block;margin-bottom:3px;color:#17211d;font-size:12px;letter-spacing:.07em;text-transform:uppercase}
.webrequestmessage{padding:14px;background:#f1f2ef}
.webrequestconversation{display:grid;gap:10px;padding:14px;background:#f1f2ef}
.webrequestbubble{display:grid;gap:7px;max-width:82%;padding:12px 14px;border-radius:3px;background:#fff;border:1px solid #deddd8}
.webrequestbubble.staff{justify-self:end;background:#fff3e9;border-color:#edc39f}
.webrequestbubble>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.webrequestbubble strong{color:#17211d}
.webrequestbubble>div span,.webrequestbubble time{color:#68736d;font-size:12px}
.webrequestbubble p{margin:0;color:#313b36;line-height:1.55;white-space:pre-wrap}
.replysent{color:#277044}.replyfailed{color:#a53024;font-weight:700}
.webrequestreply{display:grid;gap:10px;padding:14px;border:1px solid #d8d7d2;background:#fbfaf7}
.webrequestreply textarea{min-height:118px;resize:vertical}
.webrequestreply>.primary{justify-self:end}
.webrequestphotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
.webrequestphotos a{display:grid;overflow:hidden;border:1px solid #d8d7d2;background:#f7f6f2;color:#27312d;text-decoration:none}
.webrequestphotos img{width:100%;height:112px;object-fit:cover}
.webrequestphotos small{padding:7px 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.webrequestbody>.smallbtn{justify-self:start}
@media(max-width:700px){
  .webrequest>summary{align-items:flex-start;flex-direction:column}
  .webrequestfacts{grid-template-columns:1fr}
  .webrequestphotos{grid-template-columns:repeat(2,minmax(0,1fr))}
  .webrequestbubble{max-width:94%}
  .webrequestreply>.primary{justify-self:stretch}
}
