*{box-sizing:border-box}body{margin:0;background:#0a0d0b;color:#edf2ee;font:14px Segoe UI,Arial;display:flex;min-height:100vh}aside{position:fixed;width:240px;height:100vh;background:#050706;border-right:1px solid #263029;padding:24px 18px}.logo{font-size:29px;font-weight:800}.logo span,.green{color:#45e078}aside small{color:#a5b0a9}nav{margin-top:24px;height:calc(100vh - 190px);overflow-y:auto;padding-right:3px}nav a{display:flex;align-items:center;gap:10px;padding:10px;color:#edf2ee;text-decoration:none;border-radius:8px}nav a:hover{background:#142219;color:#55e783}.off{opacity:.55}footer{position:absolute;bottom:14px;left:18px;right:18px;color:#a5b0a9;display:grid;gap:5px}footer small{font-size:10px;line-height:1.35}.creator-credit{margin-top:3px;font-size:11px;letter-spacing:.2px;color:var(--app-sidebar-text,#b8c4bc);opacity:.82}.loginbox .creator-credit{color:var(--app-muted,#9eaaa2);margin-bottom:8px}.nav-icon{width:18px;height:18px;min-width:18px;display:inline-flex;color:currentColor}.nav-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}main{margin-left:240px;width:calc(100% - 240px)}header{height:68px;border-bottom:1px solid #202a23;padding:0 30px;display:flex;align-items:center;justify-content:space-between}section{padding:32px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0}.card,.panel{background:#111612;border:1px solid #263129;border-radius:10px;padding:20px}.card strong{display:block;color:#4ae079;font-size:26px;margin-top:8px}.grid{display:grid;grid-template-columns:360px 1fr;gap:18px}form{display:grid;gap:8px}input,select,textarea{background:#090c0a;color:#eee;border:1px solid #344038;border-radius:6px;padding:10px;width:100%}textarea{min-height:75px}button,.btn{background:#28bb59;color:white;border:0;border-radius:6px;padding:10px 13px;font-weight:700;text-decoration:none;cursor:pointer}.danger{background:#8d3030}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid #273129;text-align:left}a{color:#55e783}.top,.bottom{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.inline{display:inline-flex}.ai{border-color:#277b43;margin-bottom:18px}.row{grid-template-columns:3fr .6fr .7fr .8fr .6fr .3fr}.item{display:grid;grid-template-columns:.25fr 3fr .6fr .6fr .8fr .6fr .7fr .3fr;gap:6px;align-items:center;margin-top:7px}.discount{grid-template-columns:auto 90px auto;align-items:center}.totals{text-align:right;font-size:18px;line-height:1.7}.totals b{color:#55e783;font-size:22px}

[hidden]{display:none!important}

.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.settings{max-width:900px}.settings h2{margin-top:15px;color:#55e783}

.loginbody{display:flex;align-items:center;justify-content:center;margin:0;background:#070a08;min-height:100vh}.loginbox{width:390px;background:#111612;border:1px solid #29342c;border-radius:12px;padding:35px}.loginbox .logo{font-size:34px}.loginbox p,.loginbox small{color:#77847b}.loginbox h2{margin-top:30px}.error{background:#421919;color:#ffaaaa;padding:10px;border-radius:6px;margin:10px 0}

.projectgrid{display:grid;grid-template-columns:1fr 1.4fr;gap:18px;margin:20px 0}.chips span{display:inline-block;background:#17311f;color:#65e88c;padding:6px 10px;border-radius:15px;margin:8px 5px 0 0}.files{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.files a{background:#0b100c;border:1px solid #29342c;border-radius:6px;padding:12px;text-decoration:none;color:#dfe7e1}@media(max-width:1000px){.projectgrid{grid-template-columns:1fr}.files{grid-template-columns:1fr}}

.warn{color:#ffb35c}.metric{background:#0b100c;border:1px solid #29342c;padding:18px;border-radius:8px;margin:10px 0}.metric small{display:block;color:#7e8a82}.metric strong{display:block;color:#55e783;font-size:25px;margin-top:6px}

.designgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.templatecards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.templatecards label{cursor:pointer}.templatecards input{display:none}.templatecards span{display:block;border:1px solid #344038;border-radius:8px;padding:14px;background:#0b100c}.templatecards input:checked+span{border-color:#55e783;box-shadow:0 0 0 1px #55e783}.templatecards small{display:block;color:#7d8981;margin-top:5px}.check{display:flex;gap:8px;align-items:center}.check input{width:auto}.previews{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.preview{background:white;color:#171717;border-radius:7px;padding:20px;min-height:150px}.preview.modern b{color:#35b85a;font-size:22px}.preview.elegant{display:block}.preview.elegant span{float:right;color:#b9984a}.preview.minimal hr{border:0;border-top:2px solid #222}@media(max-width:1000px){.designgrid,.previews{grid-template-columns:1fr}}

.calcrows{display:grid;grid-template-columns:1fr 1fr;gap:0}.calcrows span,.calcrows b{padding:11px;border-bottom:1px solid #273129}.calcrows b{text-align:right}

.aibuttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.secondary{background:#263129}.secondarylink{display:inline-block;background:#263129;margin-top:12px}.warn{background:#342817;border:1px solid #6e572b;padding:10px;border-radius:6px}
.completeness{border-color:#9a7625}.suggestion-panel{border-color:#9a7625}.ai-suggestion{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;background:#332b16;border:1px solid #b58a2c;border-left:5px solid #e2b640;border-radius:6px;padding:14px;margin-top:10px}.suggestion-copy{display:grid;gap:5px}.suggestion-copy small{color:#e8cf8a}.suggestion-copy p{margin:2px 0;color:#f1ead5}.suggestion-actions{display:grid;gap:8px;min-width:190px}

.bestprice{outline:1px solid #55e783;background:rgba(85,231,131,.06)}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.brandpreview{background:#fff;color:#161a17;min-height:300px}.brandbar{height:9px;background:var(--brand);border-radius:8px;margin-bottom:35px}.brandpreview h2{color:var(--brand2);font-size:30px}.brandpreview b{display:block;text-align:right;color:var(--brand);font-size:24px;margin-top:70px}

.syncflow{display:grid;grid-template-columns:1fr;gap:8px;text-align:center;background:#0b100c;border:1px solid #29342c;padding:18px;border-radius:9px}.syncflow b{font-size:20px}.syncflow strong{font-size:28px;color:#55e783}.syncflow span{color:#88948c}

.connected{padding:18px;border:1px solid #55e783;background:rgba(85,231,131,.07);border-radius:8px;margin-bottom:12px}.devicecode{font-size:34px;letter-spacing:5px;font-weight:800;color:#55e783;background:#09100b;padding:20px;text-align:center;border-radius:8px}.loginbox{max-width:700px}

.optional{font-size:11px;border:1px solid #657168;border-radius:12px;padding:3px 7px;color:#9ca69f}.modegrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.modegrid>div{border:1px solid #29342c;border-radius:8px;padding:15px}

.syncdiagram{display:grid;grid-template-columns:1fr;gap:8px;text-align:center;padding:20px;border:1px solid #29342c;border-radius:9px;background:#0a0f0b}.syncdiagram strong{font-size:28px;color:#55e783}.syncdiagram b{font-size:19px}.syncdiagram span{color:#879289}

.referencepreview{background:#fff;color:#222;border-radius:8px;padding:24px;max-width:760px;margin:12px auto 24px}.rp-head,.rp-address{display:flex;justify-content:space-between;gap:30px}.rp-head small{display:block;color:#666;margin-top:4px}.rp-head strong{background:#4c7d2b;color:#fff;padding:10px 18px;text-align:right}.rp-address{margin-top:25px}.rp-address span{min-width:220px}.rp-line{height:5px;background:#4c7d2b;margin:20px 0 5px}.rp-table{display:grid;grid-template-columns:40px 1fr 70px 90px 100px;border:1px solid #b8c1b4}.rp-table>*{padding:7px;border-right:1px solid #ccd2c9;border-bottom:1px solid #ccd2c9}.rp-table>b{background:#4c7d2b;color:white;font-size:11px}.muted{color:#7d8981}.panel .btn.secondary{display:inline-block;padding:8px 10px}

/* v4 Professional */
.four{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.badge{display:inline-block;padding:4px 8px;border-radius:12px;background:#213128;color:#8ff0ab;font-size:11px}.redbadge{background:#3a1e1e;color:#ffaaaa}.customergrid{grid-template-columns:460px 1fr}.lookup{border:1px solid #2c5d3b;background:#0b140e;padding:12px;border-radius:8px;margin:8px 0}.searchrow{display:grid;grid-template-columns:1fr auto;gap:8px}.companyresults{display:grid;gap:6px;margin-top:8px}.companyresult{background:#152019;text-align:left;border:1px solid #2b4332}.companyresult small{display:block;color:#a9b6ad;font-weight:400;margin-top:3px}.mapbox{display:grid;gap:6px}.mapbox iframe{width:100%;height:180px;border:1px solid #344038;border-radius:8px;background:#080b09}.mapbox.large iframe{height:320px}.filecards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:16px}.filecard{background:#0b100c;border:1px solid #29342c;border-radius:9px;padding:10px;display:grid;gap:7px}.filecard img{width:100%;height:150px;object-fit:cover;border-radius:6px}.fileicon{height:150px;display:grid;place-items:center;font-size:52px;background:#080b09;border-radius:6px}.filecard small{color:#849088}.fileactions{display:flex;gap:6px;align-items:center}.fileactions form{display:block}.footerpreview{margin-top:20px;padding-top:8px;border-top:1px solid #aaa;font-size:9px;color:#666}@media(max-width:1000px){.customergrid,.four{grid-template-columns:1fr}.searchrow{grid-template-columns:1fr}.mapbox.large iframe{height:240px}}

.vatrow{display:flex;gap:10px;align-items:center;margin:8px 0 12px}.vatrow button{width:auto;margin:0}.syncstats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:10px;padding:10px;border:1px solid #2c5d3b;border-radius:8px;background:#0b140e}.syncstats b{grid-column:1/-1}.syncstats span{font-size:12px;color:#b8c4bc}.logopreview{max-width:190px;max-height:100px;object-fit:contain;background:white;padding:8px;border-radius:8px}.brandpreview{min-height:250px;display:grid;align-content:center;gap:12px}.brandbar{height:8px;background:var(--brand);border-radius:8px}.rp-head img{justify-self:end}@media(max-width:700px){.syncstats{grid-template-columns:1fr}.vatrow{display:grid}}

/* historical usability improvements */
aside{display:flex;flex-direction:column;overflow:hidden;padding-bottom:12px}
aside nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;margin-top:24px;padding-right:6px;padding-bottom:20px;scrollbar-width:thin;scrollbar-color:#6c7c72 transparent}
aside nav::-webkit-scrollbar{width:8px}aside nav::-webkit-scrollbar-thumb{background:#6c7c72;border-radius:10px}
aside footer{position:static!important;flex:0 0 auto;padding-top:8px;border-top:1px solid var(--app-border,#263029)}
.theme-colors{display:grid;grid-template-columns:repeat(5,minmax(100px,1fr));gap:10px}.theme-colors label{font-size:12px}.theme-colors input[type=color]{height:42px;padding:4px}
.searchrow{align-items:end}.companyresult .connected{display:inline;padding:2px 5px;margin:0}.companyresult .warn{display:inline;padding:2px 5px;margin:0}
.bank-match-suggestion{display:grid;gap:3px;margin-bottom:7px;padding:7px 8px;border:1px solid #2f8a78;border-left:4px solid #237d6e;border-radius:6px;background:color-mix(in srgb,#237d6e 10%,var(--app-panel,#fff))}.bank-match-suggestion b{font-size:12px}.bank-match-suggestion small{display:block;color:var(--app-muted,#5f6d64)}
.expense-table{min-width:1180px}.expense-table th:nth-child(1){min-width:145px}.expense-table th:nth-child(2){min-width:190px}.expense-table th:nth-child(8){min-width:210px}.compact-action{margin-top:7px}.compact-action summary{cursor:pointer;color:var(--accent);font-weight:700}.compact-action form{display:grid;gap:7px;margin-top:8px;min-width:190px}.compact-action input,.compact-action button{margin:0}
@media(max-width:900px){.theme-colors{grid-template-columns:1fr 1fr}.customergrid{grid-template-columns:1fr}}


/* settings + navigation polish */
aside nav{scroll-behavior:smooth;overscroll-behavior:contain}
aside nav::-webkit-scrollbar{width:10px}
aside nav::-webkit-scrollbar-track{background:rgba(255,255,255,.025);border-radius:10px}
aside nav::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--app-accent,#45e078) 48%,#657168);border:2px solid transparent;background-clip:padding-box;border-radius:10px}
aside nav a{position:relative}
aside nav a:focus-visible{outline:2px solid var(--app-accent,#45e078);outline-offset:2px}
.settings-link{margin-top:8px;border-top:1px solid var(--app-border,#263029);border-radius:0!important;padding-top:16px!important}
.settings-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 28px;margin-bottom:26px;border:1px solid var(--app-border,#263129);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--app-panel,#111612) 94%,var(--app-accent,#45e078)),var(--app-panel,#111612));box-shadow:0 8px 28px rgba(0,0,0,.08)}
.settings-hero h1{margin:5px 0 8px;font-size:30px;letter-spacing:-.4px}
.settings-hero p{max-width:790px;margin:0;color:var(--app-muted,#7d8981);line-height:1.55}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.4px;color:var(--app-accent,#45e078)}
.settings-hero-badge{display:flex;align-items:center;gap:10px;min-width:180px;padding:12px 14px;border:1px solid var(--app-border,#263129);border-radius:12px;background:var(--app-panel,#111612)}
.settings-hero-badge>span{color:var(--app-accent,#45e078);font-size:18px}.settings-hero-badge b,.settings-hero-badge small{display:block}.settings-hero-badge small{margin-top:2px;color:var(--app-muted,#7d8981)}
.settings-section-head{display:flex;align-items:end;justify-content:space-between;margin:4px 0 13px}.settings-section-head.compact{margin-top:30px}.settings-section-head h2{margin:0 0 4px;font-size:18px}.settings-section-head p{margin:0}
.settings-hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(275px,1fr));gap:12px;margin:0 0 24px}
.settings-card{display:grid;grid-template-columns:48px 1fr 22px;align-items:center;gap:13px;min-height:96px;padding:16px 16px;text-decoration:none!important;color:var(--app-text,#edf2ee)!important;background:var(--app-panel,#111612);border:1px solid var(--app-border,#263129);border-radius:13px;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.settings-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--app-accent,#45e078) 70%,var(--app-border,#263129));box-shadow:0 8px 20px rgba(0,0,0,.10)}
.settings-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--app-accent,#45e078) 13%,var(--app-panel,#111612));color:var(--app-accent,#45e078);font-size:21px;border:1px solid color-mix(in srgb,var(--app-accent,#45e078) 25%,var(--app-border,#263129))}
.settings-copy{min-width:0}.settings-copy b{display:block;margin-bottom:5px;font-size:14px}.settings-copy small{display:block;line-height:1.4;color:var(--app-muted,#7d8981)!important}.settings-arrow{font-size:25px;color:var(--app-muted,#7d8981)}
.settings-panel{scroll-margin-top:86px}.panel-title{display:flex;align-items:center;gap:11px;padding-bottom:13px;margin-bottom:12px;border-bottom:1px solid var(--app-border,#263129)}.panel-title h2{margin:0;font-size:17px}.panel-title small{display:block;margin-top:3px;color:var(--app-muted,#7d8981)!important}.panel-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--app-accent,#45e078) 12%,var(--app-panel,#111612));color:var(--app-accent,#45e078);font-size:17px}
.settings-panel h3{margin:18px 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.7px;color:var(--app-muted,#7d8981)}
@media(max-width:760px){.settings-hero{align-items:flex-start;flex-direction:column}.settings-hero-badge{width:100%}.settings-hub{grid-template-columns:1fr}}

/* security + workflow polish */
.narrow{max-width:640px}.header-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.notice.connected{border-color:#2f9d5b}.inline input{min-width:130px}.panel ol{line-height:1.8}


/* =====================================================================
   BD-ERP v6.0.0 PROFESSIONAL UI SYSTEM
   The Settings design language is now shared across the entire ERP.
   ===================================================================== */
:root{
  --ui-radius-lg:16px;
  --ui-radius:12px;
  --ui-radius-sm:9px;
  --ui-shadow:0 12px 34px rgba(0,0,0,.10);
  --ui-shadow-soft:0 6px 18px rgba(0,0,0,.07);
  --ui-focus:0 0 0 3px color-mix(in srgb,var(--app-accent,#45e078) 24%,transparent);
}
.pricing-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.pricing-kpis .panel{display:grid;gap:7px}.pricing-kpis strong{font-size:25px;color:var(--app-accent,#39a85a)}.library-layout{display:grid;grid-template-columns:350px minmax(0,1fr);gap:16px;align-items:start}.library-layout textarea{min-height:100px}.library-layout td small{display:block;color:var(--app-muted,#7d8981);margin-top:4px}.table-scroll{overflow:auto}.table-scroll table{min-width:1000px}.compact-btn{min-height:29px!important;padding:4px 8px!important;font-size:11px}@media(max-width:1050px){.pricing-kpis,.library-layout{grid-template-columns:1fr}}
.pricing-table .calc-cell{min-width:165px}.pricing-table .calc-cell b{display:block;margin-top:7px;color:var(--app-accent,#39a85a)}

/* v6 document studio - independent BD-ERP visual language */
.docstudio{display:grid;grid-template-columns:470px minmax(0,1fr);gap:18px;align-items:start}.doc-controls{position:sticky;top:74px;max-height:calc(100vh - 90px);overflow:auto;min-width:0}.doc-tabs{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:11px}.doc-tabs button{min-height:42px}.doc-tabs button:not(.active){background:var(--app-panel,#111612)!important;color:var(--app-text,#eee)!important}.doc-form.hidden{display:none}.doc-form h3{margin:18px 0 8px}.doc-form label:not(.check){display:grid;gap:5px;margin:8px 0}.a4-stage{min-width:0;padding:24px;overflow:auto;border-radius:16px;background:color-mix(in srgb,var(--app-panel,#111612) 76%,#778078)}.a4-sheet{--doc-accent:#39a85a;width:794px;min-height:1123px;margin:auto;background:#fff;color:#202420;padding:55px 48px;box-shadow:0 20px 55px rgba(0,0,0,.35);position:relative;font-family:Helvetica;font-size:8.2px}.a4-sheet header{display:flex;justify-content:space-between;align-items:flex-start;gap:25px}.a4-company{font-size:12px}.a4-company small{display:block;margin-top:6px;color:#555;max-width:310px}.a4-logo{background:#101713;color:var(--doc-accent);padding:13px 18px;font-weight:900;text-align:right;font-size:18px}.a4-logo img{max-width:105px;max-height:55px}.a4-parties{display:flex;justify-content:space-between;margin:48px 0 25px;gap:30px}.a4-parties h2{font-size:18px}.a4-parties address{font-style:normal;min-width:220px}.a4-rule{height:5px;background:var(--doc-accent);margin-bottom:0}.a4-sheet table{font-size:inherit}.a4-sheet th{background:var(--doc-accent)!important;color:white!important;padding:8px!important}.a4-sheet td{color:#222;padding:9px!important;border-bottom:1px solid #d8ddd9}.a4-totals{display:grid;width:310px;margin:30px 0 25px auto}.a4-totals span,.a4-totals strong{display:flex;justify-content:space-between;padding:7px;border-bottom:1px solid #ddd}.a4-totals strong{color:var(--doc-accent);font-size:1.15em}.a4-bank,.a4-payment-terms{border-top:1px solid #ccd1cd;padding-top:12px}.a4-payment-terms{margin-top:8px}.a4-sheet footer{position:absolute;left:48px;right:48px;bottom:30px;border-top:1px solid #aaa;padding-top:8px;display:flex;justify-content:space-between;color:#666}.a4-sheet[data-logo="left"] header{flex-direction:row-reverse}.a4-sheet[data-logo="center"] header{display:grid;grid-template-columns:1fr auto 1fr}.a4-sheet[data-logo="center"] .a4-logo{grid-column:2}.a4-sheet[data-customer="left"] .a4-parties{flex-direction:row-reverse}.a4-sheet[data-header="band"] header{border-bottom:10px solid var(--doc-accent);padding-bottom:14px}.a4-sheet[data-header="minimal"] .a4-logo{background:transparent}.a4-sheet[data-header="minimal"] header{border-bottom:1px solid #ddd;padding-bottom:14px}@media(max-width:1250px){.docstudio{grid-template-columns:1fr}.doc-controls{position:static;max-height:none}}
.a4-sheet [hidden]{display:none!important}.a4-sheet header{display:grid;grid-template-columns:1fr 1fr 1fr}.a4-company{grid-column:1;justify-self:start}.a4-logo{grid-column:3;justify-self:end}.a4-sheet[data-company="center"] .a4-company{grid-column:2;justify-self:center;text-align:center}.a4-sheet[data-company="right"] .a4-company{grid-column:3;justify-self:end;text-align:right}.a4-sheet[data-logo="left"] .a4-logo{grid-column:1;justify-self:start}.a4-sheet[data-logo="center"] .a4-logo{grid-column:2;justify-self:center}.a4-sheet[data-collision] .a4-logo{grid-row:2;margin-top:8px}.a4-sheet[data-customer="left"] .a4-parties{flex-direction:row-reverse}.a4-sheet[data-customer="center"] .a4-parties{display:grid;grid-template-columns:1fr 1fr 1fr}.a4-sheet[data-customer="center"] address{grid-column:2}.a4-company-ids{margin:0 0 8px;color:#555}.a4-signature{margin-top:22px;border-top:1px solid #ccd1cd;padding-top:10px}.a4-attachments{display:grid;gap:5px;margin-top:16px}.a4-attachments span{white-space:pre-line}.doc-form output{color:var(--app-accent,#39a85a);font-weight:700;margin-left:6px}
html{scroll-behavior:smooth}
.a4-project{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;margin:12px 0 14px;padding:10px 0;border-top:1px solid #d8ddd9}.a4-project strong{color:var(--doc-accent)}.a4-project span{grid-column:2}.a4-project small{grid-column:1/-1;margin-top:6px;color:#555}
body{line-height:1.45}
.mobile-nav-toggle,.mobile-nav-backdrop{display:none!important}
main>header{
  position:sticky;top:0;z-index:40;
  background:color-mix(in srgb,var(--app-bg,#0a0d0b) 88%,transparent);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--app-border,#202a23);
}
main>header>b{letter-spacing:.6px}
.erp-content{max-width:1680px;margin:0 auto;width:100%}

/* Navigation */
aside{box-shadow:8px 0 30px rgba(0,0,0,.06)}
aside nav a{
  margin:2px 0;border:1px solid transparent;
  transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease;
}
aside nav a:hover{transform:translateX(2px)}
aside nav a.active{
  color:var(--app-sidebar-text,#edf2ee)!important;
  background:color-mix(in srgb,var(--app-accent,#45e078) 12%,var(--app-sidebar,#050706));
  border-color:color-mix(in srgb,var(--app-accent,#45e078) 28%,var(--app-border,#263029));
  box-shadow:inset 3px 0 0 var(--app-accent,#45e078);
}
.nav-group{margin:3px 0;border:0}
.nav-group>summary{
  display:grid;grid-template-columns:22px 1fr 16px;align-items:center;gap:8px;
  min-height:42px;padding:9px 10px;border:1px solid transparent;border-radius:8px;
  color:var(--app-sidebar-text,#edf2ee);font-weight:700;cursor:pointer;list-style:none;
  transition:background .15s ease,border-color .15s ease,color .15s ease;
}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary::after{content:'›';font-size:19px;line-height:1;transform:rotate(0);transition:transform .15s ease}
.nav-group[open]>summary::after{transform:rotate(90deg)}
.nav-group>summary:hover,.nav-group[open]>summary{
  color:var(--app-accent,#45e078);
  background:color-mix(in srgb,var(--app-accent,#45e078) 8%,var(--app-sidebar,#050706));
  border-color:color-mix(in srgb,var(--app-accent,#45e078) 18%,var(--app-border,#263029));
}
.nav-group-icon{display:grid;place-items:center;width:22px;font-size:16px;font-weight:800}
.nav-submenu{margin:1px 0 7px 20px;padding:3px 0 4px 10px;border-left:1px solid color-mix(in srgb,var(--app-accent,#45e078) 25%,var(--app-border,#263029))}
aside nav .nav-submenu a{min-height:36px;margin:1px 0;padding:7px 9px;font-size:13px;line-height:1.25}
.nav-subheading{display:block;margin:9px 9px 3px;color:var(--app-muted,#8d9a91);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.nav-subheading:first-child{margin-top:3px}
aside nav .nav-logout{margin-top:8px;border-top:1px solid var(--app-border,#263029);border-radius:0;padding-top:13px}
button:disabled,.btn.disabled{opacity:.45!important;cursor:not-allowed!important;box-shadow:none!important;transform:none!important}

/* Module heroes: same quality as Settings */
.module-hero{
  display:flex;align-items:center;justify-content:space-between;gap:22px;
  padding:22px 24px;margin:0 0 22px!important;
  border:1px solid var(--app-border,#263129);
  border-radius:var(--ui-radius-lg);
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--app-accent,#45e078) 10%,transparent),transparent 42%),
    linear-gradient(135deg,color-mix(in srgb,var(--app-panel,#111612) 96%,var(--app-accent,#45e078)),var(--app-panel,#111612));
  box-shadow:var(--ui-shadow-soft);
}
.module-hero h1{margin:3px 0 5px;font-size:28px;letter-spacing:-.35px;line-height:1.18}
.module-hero p{margin:0;max-width:900px;color:var(--app-muted,#7d8981)}
.module-hero-copy{min-width:0}
.auto-hero{align-items:flex-start}

/* Settings-style surfaces everywhere */
.erp-panel,.erp-card,.panel,.card{
  border-radius:var(--ui-radius)!important;
  border-color:var(--app-border,#263129)!important;
  background:var(--app-panel,#111612)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.015),var(--ui-shadow-soft);
}
.erp-panel{overflow:visible}
.erp-panel:hover,.erp-card:hover{
  border-color:color-mix(in srgb,var(--app-accent,#45e078) 25%,var(--app-border,#263129))!important;
}
.erp-card{
  position:relative;overflow:hidden;min-height:108px;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.erp-card:before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--app-accent,#45e078);opacity:.85;
}
.erp-card:hover{transform:translateY(-2px);box-shadow:var(--ui-shadow)}
.erp-card small{
  color:var(--app-muted,#7d8981)!important;
  letter-spacing:.75px;font-weight:700;font-size:10px
}
.erp-card strong{font-size:27px!important;letter-spacing:-.4px}

.panel-title.auto-panel-title{margin:-2px 0 15px;padding-bottom:13px}
.panel-title.auto-panel-title h2{margin:0!important;color:var(--app-text,#edf2ee)!important}

/* Form controls */
.erp-form{gap:11px}
.erp-form>label,.erp-panel label{
  color:color-mix(in srgb,var(--app-text,#edf2ee) 82%,var(--app-muted,#7d8981));
  font-size:12px;font-weight:650;margin-top:2px
}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  min-height:42px;
  border-radius:var(--ui-radius-sm)!important;
  border:1px solid var(--app-border,#344038)!important;
  background:color-mix(in srgb,var(--app-panel,#111612) 72%,var(--app-bg,#090c0a))!important;
  color:var(--app-text,#eee)!important;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
input:not([type="checkbox"]):not([type="radio"]):hover,select:hover,textarea:hover{
  border-color:color-mix(in srgb,var(--app-accent,#45e078) 35%,var(--app-border,#344038))!important
}
input:not([type="checkbox"]):not([type="radio"]):focus,select:focus,textarea:focus{
  outline:none;border-color:var(--app-accent,#45e078)!important;box-shadow:var(--ui-focus);
}
input[type=file]{padding:8px!important}
select{cursor:pointer}

/* The switch style the user liked: applied to every real checkbox. */
input[type="checkbox"].erp-switch,
label.check input[type="checkbox"]{
  appearance:none!important;-webkit-appearance:none!important;
  width:44px!important;height:24px!important;min-width:44px!important;
  padding:0!important;margin:0!important;cursor:pointer;position:relative;
  border:1px solid color-mix(in srgb,var(--app-muted,#7d8981) 55%,var(--app-border,#344038))!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--app-muted,#7d8981) 22%,var(--app-panel,#111612))!important;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
input[type="checkbox"].erp-switch:before,
label.check input[type="checkbox"]:before{
  content:"";position:absolute;width:18px;height:18px;left:2px;top:2px;border-radius:50%;
  background:#fff;box-shadow:0 1px 5px rgba(0,0,0,.32);
  transition:transform .18s ease;
}
input[type="checkbox"].erp-switch:checked,
label.check input[type="checkbox"]:checked{
  background:var(--app-accent,#45e078)!important;
  border-color:var(--app-accent,#45e078)!important;
}
input[type="checkbox"].erp-switch:checked:before,
label.check input[type="checkbox"]:checked:before{transform:translateX(20px)}
input[type="checkbox"].erp-switch:focus-visible,
label.check input[type="checkbox"]:focus-visible{outline:none;box-shadow:var(--ui-focus)}
label.check{
  min-height:44px;padding:9px 11px!important;border:1px solid var(--app-border,#263129);
  border-radius:var(--ui-radius-sm);background:color-mix(in srgb,var(--app-panel,#111612) 96%,var(--app-accent,#45e078));
  justify-content:space-between!important;gap:14px!important;cursor:pointer;font-weight:600
}
label.check input{order:2}

/* Premium actions, visually matching Settings cards/switches */
button,.btn,.erp-action{
  min-height:39px;border-radius:10px!important;padding:9px 14px!important;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--app-accent,#28bb59) 93%,white),var(--app-accent,#28bb59))!important;
  color:#fff!important;border:1px solid color-mix(in srgb,var(--app-accent,#28bb59) 78%,#000)!important;
  box-shadow:0 4px 12px color-mix(in srgb,var(--app-accent,#28bb59) 18%,transparent);
  transition:transform .14s ease,filter .14s ease,box-shadow .14s ease;
}
button:hover,.btn:hover,.erp-action:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 7px 18px color-mix(in srgb,var(--app-accent,#28bb59) 20%,transparent)}
button:active,.btn:active,.erp-action:active{transform:translateY(0)}
button.secondary,.btn.secondary,.secondary.erp-action{
  background:color-mix(in srgb,var(--app-panel,#111612) 88%,var(--app-accent,#45e078))!important;
  border-color:color-mix(in srgb,var(--app-accent,#45e078) 26%,var(--app-border,#344038))!important;
  color:var(--app-text,#edf2ee)!important;box-shadow:none
}
button.danger,.btn.danger,.erp-danger{
  background:linear-gradient(180deg,#a54747,#823030)!important;border-color:#a95353!important;color:#fff!important
}
.action-cluster{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

/* Tables */
.erp-table,table{
  border-collapse:separate!important;border-spacing:0;width:100%;
}
.erp-table th,table th{
  position:relative;padding:11px 12px!important;
  font-size:10px;text-transform:uppercase;letter-spacing:.75px;
  color:var(--app-muted,#7d8981);background:color-mix(in srgb,var(--app-panel,#111612) 84%,var(--app-bg,#090c0a));
  border-top:1px solid var(--app-border,#273129);
  border-bottom:1px solid var(--app-border,#273129)!important;
}
.erp-table th:first-child,table th:first-child{border-left:1px solid var(--app-border,#273129);border-top-left-radius:9px}
.erp-table th:last-child,table th:last-child{border-right:1px solid var(--app-border,#273129);border-top-right-radius:9px}
.erp-table td,table td{padding:12px!important;transition:background .12s ease}
.erp-table tr:hover td,table tr:hover td{background:color-mix(in srgb,var(--app-accent,#45e078) 5%,transparent)}
.erp-table tr:last-child td,table tr:last-child td{border-bottom-color:var(--app-border,#273129)!important}

/* Status and notices */
.badge,.optional{
  border-radius:999px!important;padding:5px 9px!important;font-weight:700;letter-spacing:.25px
}
.connected,.notice.connected{
  border-radius:10px!important;
  background:color-mix(in srgb,#2f9d5b 12%,var(--app-panel,#111612))!important
}
.warn,.notice.warn{
  border-radius:10px!important;
  background:color-mix(in srgb,#d58b31 12%,var(--app-panel,#111612))!important
}
.lookup,.syncflow,.syncdiagram,.modegrid>div{
  border-radius:var(--ui-radius)!important;
  background:color-mix(in srgb,var(--app-panel,#111612) 94%,var(--app-accent,#45e078))!important;
}

/* Template/radio cards become Settings-style selectors */
.templatecards span{
  min-height:78px;border-radius:11px!important;
  background:var(--app-panel,#111612)!important;
  transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease;
}
.templatecards label:hover span{transform:translateY(-1px);border-color:color-mix(in srgb,var(--app-accent,#45e078) 42%,var(--app-border,#344038))}
.templatecards input:checked+span{border-color:var(--app-accent,#55e783)!important;box-shadow:var(--ui-focus)!important}

/* Header language selector behaves like a compact premium control */
#langSwitch{width:auto!important;min-width:68px!important;min-height:36px!important;padding:6px 9px!important}

/* Generic two-column views must let their panels shrink inside the main viewport. */
.grid>*{min-width:0}

/* Responsive behavior */
@media(max-width:1000px){
  section{padding:22px}
  .module-hero{padding:18px;align-items:flex-start;flex-direction:column}
  .module-hero>.action-cluster,.module-hero>div:last-child{max-width:100%}
}
@media(max-width:760px){
  body{display:block;overflow-x:hidden}
  #erp-sidebar{z-index:70;width:min(86vw,310px);max-width:310px;transform:translateX(-105%);transition:transform .2s ease;box-shadow:12px 0 32px rgba(0,0,0,.28)}
  body.nav-open #erp-sidebar{transform:translateX(0)}
  .mobile-nav-backdrop{position:fixed;inset:0;z-index:65;width:100%;height:100%;border:0;border-radius:0!important;background:rgba(5,12,8,.55)!important;box-shadow:none!important;padding:0!important}
  body.nav-open .mobile-nav-backdrop{display:block!important}
  main{margin-left:0;width:100%;min-width:0}
  main>header{height:60px;padding:0 10px;gap:8px}
  main>header>b{font-size:11px;line-height:1.2;max-width:76px}
  .mobile-nav-toggle{display:inline-grid!important;place-items:center;width:42px;min-width:42px;height:42px;min-height:42px!important;padding:0!important;font-size:22px;box-shadow:none!important}
  .header-actions{margin-left:auto;gap:4px;flex-wrap:nowrap}
  .header-actions .header-user,.header-actions>a[title="Hilfe"]{display:none}
  .header-icon{width:32px;height:32px;min-width:32px}
  #langSwitch{min-width:54px!important;width:54px!important;padding:5px!important}
  section{padding:12px}
  section,.erp-content{min-width:0;max-width:100%}
  .module-hero{border-radius:12px;padding:15px}
  .module-hero h1{font-size:23px}
  .cards,.grid{grid-template-columns:minmax(0,1fr)!important;width:100%;max-width:100%}
  .erp-panel,.panel,.erp-card,.card{padding:14px!important}
  .two,.three,.four{grid-template-columns:1fr!important}
  .top,.bottom{align-items:flex-start;flex-direction:column}
  .top>.header-actions,.top>.action-cluster{width:100%}
  .table-wrap,.table-scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .table-wrap table,.table-scroll table{min-width:760px}
  button,.btn,.erp-action{min-height:43px}
}

.security-status{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid var(--app-border,#344038)}
.token-display{font:700 18px ui-monospace,Consolas,monospace;letter-spacing:2px;padding:14px;border:1px dashed var(--app-accent,#45e078);border-radius:10px;margin:12px 0;overflow-wrap:anywhere}
.wrap-code{display:block;white-space:normal;overflow-wrap:anywhere;padding:10px;margin:8px 0}
.recovery-panel{margin-bottom:18px}.recovery-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;padding:0;list-style:none}.recovery-codes li{padding:10px;border:1px solid var(--app-border,#344038);border-radius:6px;text-align:center}.recovery-codes code{font-size:16px;overflow-wrap:anywhere}@media(max-width:620px){.recovery-codes{grid-template-columns:1fr}.security-status{align-items:flex-start;flex-direction:column;gap:5px}}
.global-search{margin:0 auto;width:min(440px,38vw)}.global-search input{min-height:36px;margin:0}.header-icon{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--app-border);text-decoration:none}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.help-grid article{min-height:170px}.search-large{display:flex;gap:10px}.search-large input{margin:0}.notice{display:block;margin:10px 0}.production-checks .card span{display:block}.actions{display:flex;gap:8px;flex-wrap:wrap}
.mail-indicator{position:relative}.mail-indicator>span{position:absolute;right:-6px;top:-7px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border-radius:9px;background:#c93636;color:#fff;font-size:9px;font-weight:800;border:2px solid var(--app-panel,#fff)}
@media(max-width:900px){.global-search{display:none}}

/* Fix2 UX: readable customer search and dependable map area */
.customergrid{grid-template-columns:minmax(520px,580px) minmax(0,1fr)!important;align-items:start}
.customergrid>.panel:first-child{font-size:14px}.customergrid label{font-size:13px;font-weight:700}
.lookup{padding:16px!important;border-color:color-mix(in srgb,var(--app-accent,#2f8f55) 35%,var(--app-border,#d5ddd8))!important}
.companyresults{gap:10px!important}.companyresult{
  width:100%;min-height:76px;padding:13px 15px!important;text-align:left!important;justify-content:flex-start!important;align-items:flex-start!important;
  display:block!important;background:var(--app-panel,#fff)!important;color:var(--app-text,#17231d)!important;
  border:1px solid var(--app-border,#d5ddd8)!important;box-shadow:0 3px 10px rgba(0,0,0,.06)!important;font-size:14px!important;line-height:1.45!important
}
.companyresult b{display:block;font-size:14px;line-height:1.35;color:var(--app-text,#17231d)!important}
.companyresult small{display:block;color:var(--app-muted,#5f6d64)!important;font-size:12.5px!important;line-height:1.5!important;margin-top:5px!important}
.companyresult .warn,.companyresult .connected{color:var(--app-text,#17231d)!important;padding:2px 6px!important}
.mapbox{background:color-mix(in srgb,var(--app-panel,#fff) 94%,var(--app-accent,#2f8f55));border:1px solid var(--app-border,#d5ddd8);border-radius:12px;padding:10px}
.mapbox iframe{background:#eef2ef!important;border-color:var(--app-border,#d5ddd8)!important}.map-status{display:block;color:var(--app-muted,#5f6d64);font-size:12px;line-height:1.4}

/* Month calendar, daily timeline and chronogram */
.calendar-nav{display:flex;align-items:center;gap:12px}.calendar-nav strong{min-width:150px;text-align:center;font-size:16px}
.calendar-layout{display:grid;grid-template-columns:minmax(280px,350px) minmax(650px,1fr);gap:16px;align-items:start}.calendar-layout>.month-panel:only-child{grid-column:1/-1}
.calendar-editor label{display:grid;gap:5px}.calendar-editor input[type=color]{height:44px;padding:4px}
.weekday-row,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr))}.weekday-row b{text-align:center;padding:8px;color:var(--app-muted,#5f6d64)}
.month-grid{border-left:1px solid var(--app-border,#d5ddd8);border-top:1px solid var(--app-border,#d5ddd8)}
.month-day{min-height:112px;padding:8px;color:var(--app-text,#17231d);text-decoration:none;border-right:1px solid var(--app-border,#d5ddd8);border-bottom:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff);overflow:hidden}
.month-day.outside{opacity:.42}.month-day.is-today .day-number{background:var(--app-accent,#2f8f55);color:#fff}.month-day.is-selected{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--app-accent,#2f8f55) 55%,transparent)}
.day-number{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-weight:800;margin-bottom:5px}.month-event{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:3px 5px;border-left:4px solid var(--app-accent,#2f8f55);background:color-mix(in srgb,var(--app-accent,#2f8f55) 8%,var(--app-panel,#fff));margin:3px 0;border-radius:4px;font-size:11px}
.planner-grid{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(520px,1.1fr);gap:16px;margin-top:16px;align-items:start}.all-day{display:grid;gap:5px;padding:8px;margin-bottom:10px;background:color-mix(in srgb,var(--app-accent,#2f8f55) 7%,var(--app-panel,#fff));border-radius:8px}.all-day span{border-left:4px solid;padding:5px 8px}
.time-row{display:grid;grid-template-columns:62px 1fr;min-height:48px;border-top:1px solid var(--app-border,#d5ddd8)}.time-row time{padding:9px 6px;color:var(--app-muted,#5f6d64);font-size:12px}.time-event{margin:4px;padding:7px 9px;border-left:5px solid;background:color-mix(in srgb,var(--app-accent,#2f8f55) 7%,var(--app-panel,#fff));border-radius:6px}.time-event b,.time-event small{display:block}
.chrono-list{display:grid;gap:14px}.chrono-item{display:grid;gap:7px}.chrono-item b,.chrono-item small{display:block}.chrono-track{height:12px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--app-muted,#5f6d64) 16%,var(--app-panel,#fff))}.chrono-track span{display:block;height:100%;border-radius:999px}.chrono-meta{display:flex;justify-content:space-between;color:var(--app-muted,#5f6d64);font-size:12px}.calendar-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:7px}.table-scroll{overflow:auto}
.calendar-availability{display:block;margin:3px 0 6px;padding:2px 5px;border:1px solid var(--app-border,#d5ddd8);border-radius:4px;font-size:10px;line-height:1.25}.calendar-availability.free{color:#176b3a;background:#edf8f1}.calendar-availability.busy{color:#7c5311;background:#fff6df}.calendar-decisions,.calendar-decisions form{display:flex;gap:6px;margin-top:5px}.calendar-decisions button{padding:6px 8px;font-size:12px}
@media(max-width:1200px){.customergrid,.calendar-layout,.planner-grid{grid-template-columns:1fr!important}.month-panel{overflow:auto}.weekday-row,.month-grid{min-width:720px}}
@media(max-width:760px){.customergrid{grid-template-columns:1fr!important}.calendar-nav{width:100%;justify-content:space-between}.calendar-layout{display:block}.calendar-layout>.panel{margin-bottom:12px}}

/* Central user administration and project access */
.user-admin-layout{display:grid;gap:16px}.user-form{display:grid;gap:14px}.user-form label{display:grid;gap:5px}.project-access{margin:0;padding:12px;border:1px solid var(--app-border,#d5ddd8);border-radius:6px}.project-access legend{padding:0 6px;font-weight:800}.project-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;max-height:310px;overflow:auto}.project-checklist .check{display:flex;align-items:flex-start;gap:8px;padding:8px;border:1px solid var(--app-border,#d5ddd8);border-radius:5px;background:var(--app-panel,#fff)}.project-checklist .check input{width:auto;margin-top:3px}.project-checklist b,.project-checklist small{display:block}.user-confirm,.user-row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.user-confirm input,.user-row-actions input{min-width:260px;flex:1}.user-edit{position:relative}.user-edit>summary{list-style:none;cursor:pointer}.user-edit>summary::-webkit-details-marker{display:none}.user-edit[open]>form{position:absolute;right:0;z-index:20;width:min(920px,calc(100vw - 48px));padding:16px;border:1px solid var(--app-border,#d5ddd8);border-radius:6px;background:var(--app-panel,#fff);box-shadow:0 12px 34px rgba(0,0,0,.16)}.readonly-value{display:flex;align-items:center;min-height:42px;padding:8px 10px;border:1px solid var(--app-border,#d5ddd8);border-radius:5px;background:color-mix(in srgb,var(--app-panel,#fff) 90%,var(--app-muted,#5f6d64))}.user-actions-row td{padding-top:0}.user-row-actions form{display:flex;gap:6px;align-items:center}.one-time-access{display:grid;gap:8px}.one-time-access code{width:max-content;max-width:100%;padding:10px 12px;font-size:17px;overflow-wrap:anywhere}
@media(max-width:760px){.user-table{min-width:720px}.user-edit[open]>form{position:fixed;inset:72px 12px auto;width:auto;max-height:calc(100vh - 90px);overflow:auto}.user-confirm,.user-row-actions,.user-row-actions form{align-items:stretch;flex-direction:column}.user-confirm input,.user-row-actions input{min-width:0;width:100%}}

/* Integrated email center */
.email-grid{display:grid;grid-template-columns:minmax(420px,1.25fr) minmax(300px,.75fr);gap:16px;align-items:start}.mail-status{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.mail-status span{padding:7px 10px;border-radius:8px}
.email-detail-grid{display:grid;grid-template-columns:minmax(560px,1.4fr) minmax(320px,.6fr);gap:16px;align-items:start}.email-detail-grid>div{display:grid;gap:16px}.mail-body{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.6 Arial,sans-serif;color:var(--app-text,#17231d);background:color-mix(in srgb,var(--app-panel,#fff) 94%,var(--app-accent,#2f8f55));border:1px solid var(--app-border,#d5ddd8);padding:16px;border-radius:10px;max-height:650px;overflow:auto}
.attachment-list{display:grid;gap:10px}.attachment-list article{display:grid;grid-template-columns:1fr minmax(280px,.7fr);gap:12px;align-items:center;padding:12px;border:1px solid var(--app-border,#d5ddd8);border-radius:10px}.attachment-list b,.attachment-list small{display:block}.attachment-list form{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.attachment-list select{margin:0}
details.panel>summary{cursor:pointer;padding:8px 0;font-size:16px}
@media(max-width:1000px){.email-grid,.email-detail-grid{grid-template-columns:1fr}.attachment-list article{grid-template-columns:1fr}}
@media(max-width:600px){.attachment-list form{grid-template-columns:1fr}.month-day{min-height:90px}}
.settings-company-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,340px);gap:16px;align-items:start}.company-logo-card{position:sticky;top:78px}.company-logo-preview{min-height:180px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--app-border,#d5ddd8);border-radius:12px;background:var(--app-field,#f5f7f5);margin:14px 0;padding:18px;text-align:center}.company-logo-preview img{display:block;max-width:100%;max-height:210px;object-fit:contain}.company-logo-card form{margin-top:12px}.mail-account-tabs,.mail-folder-tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0}.mail-account-tabs a,.mail-folder-tabs a{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;border:1px solid var(--app-border,#d5ddd8);border-radius:9px;background:var(--app-panel,#fff);text-decoration:none;color:var(--app-text,#17231d)}.mail-account-tabs a.active,.mail-folder-tabs a.active{background:var(--app-accent,#2f8f55);border-color:var(--app-accent,#2f8f55);color:var(--app-on-accent,#fff)!important}.mail-account-tabs .badge{font-size:10px}.attachment-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.attachment-actions form{min-width:280px}.delivery-failed{color:#a32626;font-weight:700}
@media(max-width:1000px){.settings-company-grid{grid-template-columns:1fr}.company-logo-card{position:static}}
.list-search{display:grid;grid-template-columns:minmax(260px,1fr) 180px auto auto;gap:8px;align-items:center;margin:0 0 14px}.list-search input,.list-search select{margin:0}.list-search .btn{white-space:nowrap}@media(max-width:760px){.list-search{grid-template-columns:1fr}.list-search .btn{width:100%}}

/* Document studio: dedicated tool rail, editor and always-visible A4 canvas. */
.docstudio-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 18px}.docstudio-head h1{margin:4px 0 5px;font-size:27px}.docstudio-head p{margin:0;color:var(--app-muted,#5f6d64)}.doc-head-actions{display:flex;gap:8px}.docstudio{grid-template-columns:82px minmax(350px,410px) minmax(500px,1fr)!important;gap:12px!important}.doc-toolrail{position:sticky;top:78px;display:grid;gap:7px;padding:8px;border:1px solid var(--app-border,#d5ddd8);border-radius:8px;background:var(--app-panel,#fff)}.doc-toolrail button{min-height:67px;padding:7px 4px!important;display:grid!important;gap:3px;font-size:10px;background:transparent!important;color:var(--app-muted,#5f6d64)!important;border-color:transparent!important;box-shadow:none!important}.doc-toolrail button span{font-size:19px;color:var(--app-text,#17231d)}.doc-toolrail button.active{background:color-mix(in srgb,var(--app-accent,#2f8f55) 10%,var(--app-panel,#fff))!important;color:var(--app-accent,#2f8f55)!important;border-color:color-mix(in srgb,var(--app-accent,#2f8f55) 25%,var(--app-border,#d5ddd8))!important}.doc-controls{position:sticky!important;top:78px!important;width:auto!important;height:auto!important;max-height:calc(100vh - 94px)!important;padding:0!important;overflow:auto!important;background:transparent!important;border:0!important}.doc-tabs{position:sticky;top:0;z-index:3;padding-bottom:10px;background:var(--app-bg,#f4f7f5)}.doc-form{padding:17px!important}.doc-form-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid var(--app-border,#d5ddd8)}.doc-form-title small{color:var(--app-muted,#5f6d64);font-size:9px;font-weight:800}.doc-form-title h2{margin:3px 0 0;font-size:18px}.live-badge{padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--app-accent,#2f8f55) 12%,var(--app-panel,#fff));color:var(--app-accent,#2f8f55);font-size:10px;font-weight:800}.doc-form [data-docanchor]{scroll-margin-top:58px}.a4-stage{position:sticky;top:78px;height:calc(100vh - 94px);padding:20px!important;border:1px solid var(--app-border,#d5ddd8);border-radius:8px!important;background:color-mix(in srgb,var(--app-muted,#768078) 15%,var(--app-bg,#f4f7f5))!important}.a4-sheet{box-shadow:0 12px 35px rgba(0,0,0,.18)!important;transform-origin:top center}.doc-savebar{position:sticky;bottom:0;padding-top:10px;background:var(--app-panel,#fff)}
@media(max-width:1450px){.docstudio{grid-template-columns:76px 360px minmax(440px,1fr)!important}.a4-sheet{zoom:.76}}
@media(max-width:1120px){.docstudio{grid-template-columns:64px 300px minmax(380px,1fr)!important;gap:9px!important}.doc-toolrail{padding:5px}.doc-toolrail button{min-height:61px}.doc-form{padding:14px!important}.a4-stage{padding:12px!important}.a4-sheet{zoom:.50}.docstudio-head{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.docstudio{grid-template-columns:1fr!important}.doc-toolrail{position:static;display:flex;overflow:auto}.doc-toolrail button{min-width:72px}.doc-controls{position:static!important;max-height:none!important}.a4-stage{position:fixed;left:-10000px}.doc-head-actions{width:100%}.doc-head-actions .btn{flex:1}}

/* Production dashboard: dense, calm and optimized for repeated daily work. */
.dashboard-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 18px}.dashboard-heading h1{margin:0 0 5px;font-size:27px}.dashboard-heading p{margin:0;color:var(--app-muted,#5f6d64)}.dashboard-heading-actions{display:flex;gap:8px;flex-wrap:wrap}.dashboard-kpi{min-height:142px;text-decoration:none!important;color:var(--app-text,#17231d)!important}.dashboard-kpi strong{font-size:30px;margin:9px 0 12px}.dashboard-kpi span{display:flex;justify-content:space-between;gap:12px;padding-top:5px;color:var(--app-muted,#5f6d64);font-size:12px}.dashboard-kpi span b{color:var(--app-text,#17231d)}.dashboard-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 22px}.dashboard-list{padding:0!important;overflow:hidden}.dashboard-list-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 10px}.dashboard-list-head h2{margin:0;font-size:16px}.dashboard-list-head a,.row-action{font-size:12px;font-weight:700;text-decoration:none}.dashboard-list table th{border-top:0!important}.dashboard-list table td{padding:10px 12px!important}.dashboard-actions{grid-template-columns:repeat(auto-fit,minmax(245px,1fr))}.dashboard-actions .settings-card{min-height:84px}
@media(max-width:1100px){.dashboard-lists{grid-template-columns:1fr}}@media(max-width:760px){.dashboard-heading{align-items:flex-start;flex-direction:column}.dashboard-heading-actions{width:100%}.dashboard-heading-actions .btn{flex:1}.dashboard-list-head{padding:14px}}

/* Fix10: provider-neutral deployment/access selector */
.access-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px;align-items:start}.access-form{display:grid;gap:12px}.access-step{margin-top:16px}.access-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.access-option{cursor:pointer}.access-option input{position:absolute;opacity:0;pointer-events:none}.access-option span{display:grid;gap:7px;min-height:112px;padding:16px;border:1px solid var(--app-border,#344038);border-radius:12px;background:color-mix(in srgb,var(--app-panel,#111612) 96%,var(--app-accent,#45e078));transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.access-option span b{font-size:15px}.access-option span small{line-height:1.45;color:var(--app-muted,#7d8981)}.access-option:hover span{transform:translateY(-1px);border-color:color-mix(in srgb,var(--app-accent,#45e078) 42%,var(--app-border,#344038))}.access-option input:checked+span{border-color:var(--app-accent,#45e078);box-shadow:var(--ui-focus);background:color-mix(in srgb,var(--app-accent,#45e078) 8%,var(--app-panel,#111612))}.access-summary{position:sticky;top:78px;display:grid;gap:11px}.access-summary form,.access-summary a{width:100%}.access-summary button,.access-summary .btn{width:100%}.access-facts{display:grid;gap:0;margin:0}.access-facts>div{display:grid;grid-template-columns:125px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--app-border,#344038)}.access-facts dt{color:var(--app-muted,#7d8981);font-size:12px}.access-facts dd{margin:0;font-weight:700;overflow-wrap:anywhere}.access-explain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.access-explain-grid article{padding:14px;border:1px solid var(--app-border,#344038);border-radius:11px;background:color-mix(in srgb,var(--app-panel,#111612) 96%,var(--app-accent,#45e078))}.access-explain-grid article p{margin:6px 0 0;color:var(--app-muted,#7d8981)}
@media(max-width:1000px){.access-layout{grid-template-columns:1fr}.access-summary{position:static}}@media(max-width:700px){.access-mode-grid,.access-explain-grid{grid-template-columns:1fr}}
.work-thumb{display:block;width:112px;height:76px;object-fit:cover;border-radius:6px;margin:0 0 8px;background:#eef1ef}.pricing-table td:first-child{min-width:128px}.pricing-table details small{margin-top:6px}.pricing-table details p{max-width:62ch}
.credit-table{min-width:1040px!important}.credit-table td{vertical-align:top}.credit-table th:last-child,.credit-table td:last-child{width:52%}.credit-actions{display:grid;grid-template-columns:repeat(2,minmax(235px,1fr));gap:14px;align-items:start}.credit-actions form{margin:0;padding:13px;border:1px solid var(--app-border,#d5ddd8);border-radius:8px;background:color-mix(in srgb,var(--app-panel,#fff) 95%,var(--app-accent,#2f8f55))}.credit-actions form>b{display:block;margin-bottom:2px;font-size:12px}.credit-actions label{font-size:11px;font-weight:700}.credit-actions button{width:100%}@media(max-width:760px){.credit-table{min-width:870px!important}.credit-table th:last-child,.credit-table td:last-child{width:320px}.credit-actions{grid-template-columns:1fr}}
.reminder-kpis{grid-template-columns:repeat(5,minmax(130px,1fr))}.reminder-kpis .card{text-decoration:none;color:inherit;min-height:96px}.reminder-table{min-width:1080px}.reminder-table td{vertical-align:top}.reminder-table th:last-child,.reminder-table td:last-child{width:39%}.reminder-actions{display:flex;gap:7px;align-items:flex-start;flex-wrap:wrap}.reminder-actions form{margin:0}.reminder-actions .dismiss-form{display:grid;grid-template-columns:minmax(170px,1fr) auto;gap:7px;flex:1 1 310px}.reminder-actions input{margin:0;min-width:0}.checkline{display:flex!important;align-items:center;gap:9px;margin-bottom:12px}.checkline input{width:auto!important;margin:0!important}@media(max-width:1000px){.reminder-kpis{grid-template-columns:repeat(2,minmax(130px,1fr))!important}}@media(max-width:560px){.reminder-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.reminder-actions .dismiss-form{grid-template-columns:1fr}.reminder-actions .dismiss-form button{width:100%}}
.portal-admin-messages{display:grid}.portal-admin-messages article{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--app-border,#d5ddd8)}.portal-admin-messages article.unread{border-left:4px solid var(--app-accent,#2f8f55);padding-left:12px}.portal-admin-messages small{display:block;margin-top:4px;color:var(--app-muted,#5f6d64)}.portal-admin-messages p{white-space:pre-wrap}.danger-text{color:#a22e2e;font-weight:700}.muted{color:var(--app-muted,#5f6d64)}@media(max-width:760px){.portal-admin-messages article{flex-direction:column}}
.document-send-panel{max-width:980px}.document-send-form{gap:13px}.document-send-form #email-body{min-height:150px;resize:vertical}.document-send-grid{display:grid;grid-template-columns:1.25fr .7fr 1fr;gap:12px}.document-send-grid.two{grid-template-columns:1fr 1fr}.document-send-options{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(360px,1.45fr);gap:14px;align-items:start;padding:14px;border:1px solid var(--app-border,#d5ddd8);border-radius:8px;background:color-mix(in srgb,var(--app-panel,#fff) 95%,var(--app-accent,#2f8f55))}.document-send-options .check{display:flex!important;align-items:center;gap:10px;min-height:42px}.document-file-input{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}.document-file-picker{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:44px;margin-top:5px}.document-file-picker .btn{display:inline-flex;align-items:center;min-height:38px;white-space:nowrap}.document-file-picker>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--app-muted,#5f6d64);font-weight:500}.attachment-field small,.document-send-history small{display:block;margin-top:4px;color:var(--app-muted,#5f6d64);overflow-wrap:anywhere}.document-send-submit{justify-self:start;min-width:250px}.document-send-history{min-width:980px}.document-send-history td{vertical-align:top}.delivery-status{display:inline-block;padding:4px 7px;border-radius:5px;font-size:11px;font-weight:800}.delivery-status.sent{background:color-mix(in srgb,#2f9d5b 16%,var(--app-panel,#fff));color:#237744}.delivery-status.partial,.delivery-status.sending{background:color-mix(in srgb,#d58b31 17%,var(--app-panel,#fff));color:#9a5b12}.delivery-status.failed{background:color-mix(in srgb,#c93636 14%,var(--app-panel,#fff));color:#a32626}.delivery-status.queued{background:color-mix(in srgb,var(--app-muted,#5f6d64) 15%,var(--app-panel,#fff))}@media(max-width:760px){.document-send-grid,.document-send-grid.two,.document-send-options{grid-template-columns:1fr}.document-file-picker{grid-template-columns:1fr}.document-file-picker .btn{justify-content:center}.document-send-submit{width:100%;min-width:0}.document-send-hero{align-items:flex-start}.document-send-hero .btn{flex:0 0 auto}.document-send-history{min-width:820px}}

/* Auditable signature workflow */
.acceptance-head{align-items:center}.acceptance-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.acceptance-status{display:inline-flex;align-items:center;min-height:29px;padding:5px 8px;border-radius:5px;font-size:11px;font-weight:800;white-space:nowrap}.acceptance-status.draft{background:color-mix(in srgb,#d58b31 16%,var(--app-panel,#fff));color:#92530c}.acceptance-status.finalized{background:color-mix(in srgb,#2f9d5b 16%,var(--app-panel,#fff));color:#237744}.acceptance-status.cancelled{background:color-mix(in srgb,#c93636 13%,var(--app-panel,#fff));color:#a32626}.acceptance-create-panel,.acceptance-list-panel,.acceptance-overview{margin-top:16px}.acceptance-create-form{display:grid;grid-template-columns:minmax(160px,.55fr) minmax(220px,1fr) minmax(280px,1.45fr) auto;gap:12px;align-items:end}.acceptance-create-form>label{display:grid;gap:5px}.acceptance-create-summary textarea{min-height:76px}.acceptance-list-panel{min-width:0}.acceptance-list-panel>.table-wrap{width:100%;max-width:100%;overflow-x:auto}.acceptance-list-table{min-width:720px}.acceptance-details-form{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(260px,1fr);gap:12px}.acceptance-details-form>label{display:grid;gap:5px}.acceptance-details-form .acceptance-wide,.acceptance-details-form>button{grid-column:1/-1}.acceptance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}.acceptance-summary>div{padding:12px;border-right:1px solid var(--app-border,#d5ddd8)}.acceptance-summary>div:last-child{border-right:0}.acceptance-summary dt{font-size:11px;font-weight:800}.acceptance-summary dd{margin:5px 0 0;color:var(--app-muted,#5f6d64);white-space:pre-wrap;overflow-wrap:anywhere}.acceptance-two-column{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;align-items:start}.acceptance-participant-form{display:grid;grid-template-columns:1fr 1fr;gap:9px}.acceptance-participant-form .check,.acceptance-participant-form button{align-self:end}.acceptance-item-form{display:grid;grid-template-columns:.55fr 1.45fr;gap:9px}.acceptance-item-form textarea{grid-column:1/-1}.acceptance-record-list{display:grid;margin-top:13px}.acceptance-record-list article,.acceptance-signature-list article{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:11px 0;border-top:1px solid var(--app-border,#d5ddd8)}.acceptance-record-list article>div,.acceptance-signature-list article>div{display:grid;gap:4px;min-width:0}.acceptance-record-list small,.acceptance-signature-list small{color:var(--app-muted,#5f6d64);overflow-wrap:anywhere}.acceptance-item-type{justify-self:start;padding:3px 6px;border-radius:4px;font-size:10px;font-weight:800}.acceptance-item-type.rest_work{background:color-mix(in srgb,#d58b31 15%,var(--app-panel,#fff));color:#92530c}.acceptance-item-type.reservation{background:color-mix(in srgb,#c93636 12%,var(--app-panel,#fff));color:#a32626}.acceptance-photo-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(300px,1.2fr) auto;gap:10px;align-items:end}.acceptance-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.acceptance-photo-grid article{border:1px solid var(--app-border,#d5ddd8);border-radius:7px;overflow:hidden;background:var(--app-panel,#fff)}.acceptance-photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e8ece9}.acceptance-photo-grid article>div{display:grid;gap:5px;padding:10px}.acceptance-photo-grid small{color:var(--app-muted,#5f6d64);overflow-wrap:anywhere}.acceptance-signature-form{display:grid;grid-template-columns:1.1fr .9fr .75fr 1fr;gap:10px;align-items:end}.acceptance-signature-form>label:first-child{display:grid;gap:5px}.acceptance-signature-form .document-file-picker,.acceptance-signature-form .acceptance-consent,.acceptance-signature-form>button{grid-column:1/-1}.acceptance-consent{display:flex!important;align-items:flex-start;gap:8px}.acceptance-consent input{width:auto!important;margin:2px 0 0!important}.acceptance-signature-list{display:grid;margin-top:14px}.acceptance-signature-list article>div:last-child{display:flex;flex-direction:row;flex-wrap:wrap}.acceptance-finalize-panel{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-top:16px}.acceptance-finalize-panel>div:last-child{display:grid;gap:9px;min-width:min(100%,380px)}.acceptance-finalize-panel form{margin:0}.acceptance-finalize-panel button{width:100%}.acceptance-cancel-form{display:grid;grid-template-columns:1fr auto;gap:8px}.acceptance-cancel-form input{margin:0}@media(max-width:1050px){.acceptance-create-form{grid-template-columns:1fr 1fr}.acceptance-create-summary,.acceptance-create-form>button{grid-column:1/-1}.acceptance-two-column{grid-template-columns:1fr}.acceptance-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.acceptance-signature-form{grid-template-columns:1fr 1fr}}@media(max-width:760px){.acceptance-head{align-items:flex-start}.acceptance-head-actions{width:100%}.acceptance-create-form,.acceptance-details-form,.acceptance-participant-form,.acceptance-item-form,.acceptance-photo-form,.acceptance-signature-form{grid-template-columns:1fr}.acceptance-create-summary,.acceptance-create-form>button,.acceptance-details-form .acceptance-wide,.acceptance-details-form>button,.acceptance-item-form textarea,.acceptance-signature-form .document-file-picker,.acceptance-signature-form .acceptance-consent,.acceptance-signature-form>button{grid-column:auto}.acceptance-summary{grid-template-columns:1fr}.acceptance-summary>div{border-right:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.acceptance-summary>div:last-child{border-bottom:0}.acceptance-photo-grid{grid-template-columns:1fr}.acceptance-finalize-panel{flex-direction:column}.acceptance-finalize-panel>div:last-child{width:100%;min-width:0}.acceptance-cancel-form{grid-template-columns:1fr}.acceptance-record-list article,.acceptance-signature-list article{align-items:stretch}.acceptance-signature-list article{flex-direction:column}}
.document-file-input{position:fixed!important;left:-10000px!important;top:0!important;width:1px!important;height:1px!important;min-width:1px!important;max-width:1px!important;min-height:1px!important;padding:0!important;border:0!important;opacity:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.signature-head{align-items:center}.signature-assurance{padding:7px 10px;border:1px solid color-mix(in srgb,#2f9d5b 45%,var(--app-border,#d5ddd8));border-radius:6px;background:color-mix(in srgb,#2f9d5b 10%,var(--app-panel,#fff));color:#237744;font-size:11px;font-weight:800}.signature-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:16px;align-items:start}.signature-create .erp-form{display:grid;gap:12px}.signature-choice-stack>label{display:grid;gap:5px}.signature-choice-stack>[hidden]{display:none}.signature-person-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.signature-explain{position:sticky;top:78px}.signature-facts{display:grid;margin:0}.signature-facts>div{padding:13px 0;border-bottom:1px solid var(--app-border,#d5ddd8)}.signature-facts>div:last-child{border-bottom:0}.signature-facts dt{font-size:12px;font-weight:800}.signature-facts dd{margin:4px 0 0;color:var(--app-muted,#5f6d64);font-size:12px;line-height:1.5}.signature-history-panel{min-width:0;margin-top:16px}.signature-history-panel>.table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.signature-history{min-width:1120px}.signature-history td{vertical-align:top}.signature-history td>small,.signature-history td>span:not(.signature-status){display:block;margin-top:4px;color:var(--app-muted,#5f6d64);max-width:270px;overflow-wrap:anywhere}.signature-status{display:inline-block;padding:5px 7px;border-radius:5px;font-size:11px;font-weight:800;white-space:nowrap}.signature-status.requested{background:color-mix(in srgb,#d58b31 16%,var(--app-panel,#fff));color:#92530c}.signature-status.signed{background:color-mix(in srgb,#2f9d5b 16%,var(--app-panel,#fff));color:#237744}.signature-status.cancelled,.signature-status.legacy_unverified{background:color-mix(in srgb,#c93636 13%,var(--app-panel,#fff));color:#a32626}.signature-actions{min-width:360px}.signature-actions>a{margin:0 5px 6px 0}.signature-upload-form,.signature-cancel-form{display:grid;gap:7px;margin-top:9px;padding-top:9px;border-top:1px solid var(--app-border,#d5ddd8)}.signature-upload-form .document-file-picker{margin:0}.signature-upload-form .check{display:flex!important;align-items:flex-start;gap:7px;font-size:11px}.signature-cancel-form{grid-template-columns:minmax(180px,1fr) auto}.signature-cancel-form input{margin:0;min-height:34px}.signature-reason{padding-top:7px;color:#a32626!important}@media(max-width:980px){.signature-layout{grid-template-columns:1fr}.signature-explain{position:static}}@media(max-width:760px){.signature-person-grid{grid-template-columns:1fr}.signature-head{align-items:flex-start}.signature-history{min-width:930px}.signature-actions{min-width:310px}.signature-cancel-form{grid-template-columns:1fr}}

/* Project defect management */
.defect-head{align-items:center}.defect-head>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.defect-kpis,.defect-summary-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff);margin:16px 0}.defect-kpis>div,.defect-summary-band>div{display:grid;gap:5px;padding:14px;border-right:1px solid var(--app-border,#d5ddd8);min-width:0}.defect-kpis>div:last-child,.defect-summary-band>div:last-child{border-right:0}.defect-kpis small,.defect-summary-band small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.defect-kpis strong{font-size:22px}.defect-summary-band strong{font-size:13px;overflow-wrap:anywhere}.defect-filter-form{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(170px,.7fr) minmax(220px,1fr) auto auto;gap:10px;align-items:end}.defect-filter-form>label,.defect-create-form>label,.defect-details-form>label,.defect-photo-form>label,.defect-status-form>label{display:grid;gap:5px}.defect-list-panel{min-width:0;margin-top:16px}.defect-list-panel>.table-wrap{max-width:100%;overflow-x:auto}.defect-table{min-width:940px}.defect-table td{vertical-align:top}.defect-table td>small{display:block;margin-top:4px;color:var(--app-muted,#5f6d64)}.defect-overdue{background:color-mix(in srgb,#c93636 6%,var(--app-panel,#fff))}.danger-text{color:#a32626!important}.defect-status,.defect-severity,.defect-photo-phase{display:inline-flex;align-items:center;min-height:26px;padding:4px 7px;border-radius:5px;font-size:10px;font-weight:800;white-space:nowrap}.defect-status.open{background:color-mix(in srgb,#c93636 12%,var(--app-panel,#fff));color:#a32626}.defect-status.in_progress{background:color-mix(in srgb,#d58b31 16%,var(--app-panel,#fff));color:#92530c}.defect-status.resolved{background:color-mix(in srgb,#327db7 14%,var(--app-panel,#fff));color:#245f8d}.defect-status.accepted{background:color-mix(in srgb,#2f9d5b 16%,var(--app-panel,#fff));color:#237744}.defect-status.cancelled{background:color-mix(in srgb,#6d746f 13%,var(--app-panel,#fff));color:#4d5650}.defect-severity.minor{border:1px solid #8ca79a;color:#4d665a}.defect-severity.major{background:#fff0d9;color:#8a4f08}.defect-severity.critical{background:#fde3e3;color:#a32626}.defect-title-line{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.defect-title-line h1{margin:0}.defect-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px;align-items:start}.defect-main-column,.defect-side-column{display:grid;gap:16px;min-width:0}.defect-side-column{position:sticky;top:76px;width:auto;max-width:none;height:auto;background:transparent;color:inherit;border:0;padding:0;overflow:visible;box-shadow:none;z-index:auto}.defect-create-project{margin-top:16px}.defect-create-form,.defect-details-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.defect-create-form .defect-description,.defect-details-form .defect-description{grid-column:1/-1}.defect-create-form .defect-photo-picker,.defect-create-form>button,.defect-details-form>button{grid-column:1/-1}.defect-description-read{white-space:pre-wrap;line-height:1.6}.defect-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.defect-photo-grid article{border:1px solid var(--app-border,#d5ddd8);border-radius:7px;overflow:hidden;background:var(--app-panel,#fff)}.defect-photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e8ece9}.defect-photo-grid article>div{display:grid;gap:5px;padding:10px}.defect-photo-grid small{color:var(--app-muted,#5f6d64);overflow-wrap:anywhere}.defect-photo-phase.initial{background:#eef1ef;color:#4d5650}.defect-photo-phase.progress{background:#fff0d9;color:#8a4f08}.defect-photo-phase.resolution{background:#e0f1e6;color:#237744}.defect-photo-form{display:grid;grid-template-columns:.6fr 1fr 1.1fr auto;gap:10px;align-items:end;margin-top:14px}.defect-status-form{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--app-border,#d5ddd8)}.defect-side-column form+form{margin-top:10px}.defect-side-column button{width:100%}.defect-history{display:grid}.defect-history article{display:grid;gap:4px;padding:11px 0;border-top:1px solid var(--app-border,#d5ddd8)}.defect-history article:first-child{border-top:0}.defect-history span,.defect-history a{font-size:10px;color:var(--app-muted,#5f6d64)}.defect-history p{margin:0;white-space:pre-wrap}@media(max-width:1050px){.defect-layout{grid-template-columns:1fr}.defect-side-column{position:static}.defect-filter-form{grid-template-columns:1fr 1fr}.defect-filter-form>label:first-child{grid-column:1/-1}.defect-create-form,.defect-details-form{grid-template-columns:1fr 1fr}.defect-photo-form{grid-template-columns:1fr 1fr}.defect-photo-form .document-file-picker,.defect-photo-form>button{grid-column:1/-1}}@media(max-width:760px){.defect-head{align-items:flex-start}.defect-kpis,.defect-summary-band{grid-template-columns:1fr 1fr}.defect-kpis>div:nth-child(2),.defect-summary-band>div:nth-child(2){border-right:0}.defect-kpis>div:nth-child(-n+2),.defect-summary-band>div:nth-child(-n+2){border-bottom:1px solid var(--app-border,#d5ddd8)}.defect-filter-form,.defect-create-form,.defect-details-form,.defect-photo-form{grid-template-columns:1fr}.defect-filter-form>label:first-child,.defect-create-form .defect-description,.defect-details-form .defect-description,.defect-create-form .defect-photo-picker,.defect-create-form>button,.defect-details-form>button,.defect-photo-form .document-file-picker,.defect-photo-form>button{grid-column:auto}.defect-photo-grid{grid-template-columns:1fr}.defect-title-line{align-items:flex-start}}

.defect-table{width:100%;min-width:0;table-layout:fixed}.defect-table th:nth-child(1){width:17%}.defect-table th:nth-child(2){width:20%}.defect-table th:nth-child(3){width:18%}.defect-table th:nth-child(4){width:13%}.defect-table th:nth-child(5){width:13%}.defect-table th:nth-child(6){width:11%}.defect-table th:nth-child(7){width:8%}.defect-table td{overflow-wrap:anywhere}.defect-table td:last-child .btn{width:100%;padding-inline:7px}
@media(max-width:760px){.defect-list-panel>.table-wrap{overflow:visible}.defect-table,.defect-table tbody{display:block;width:100%}.defect-table thead{display:none}.defect-table tbody{display:grid;gap:12px}.defect-table tbody tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;overflow:hidden;background:var(--app-panel,#fff)}.defect-table tbody td{display:grid;align-content:start;gap:4px;min-width:0;padding:10px;border:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.defect-table tbody td::before{content:attr(data-label);font-size:9px;font-weight:800;color:var(--app-muted,#5f6d64)}.defect-table tbody td:nth-child(-n+3){grid-column:1/-1}.defect-table tbody td:nth-child(2),.defect-table tbody td:nth-child(3){border-top:0}.defect-table tbody td:nth-child(2){border-bottom:0}.defect-table tbody td:nth-child(4),.defect-table tbody td:nth-child(6){border-right:1px solid var(--app-border,#d5ddd8)}.defect-table tbody td:nth-last-child(-n+2){border-bottom:0}.defect-table tbody td:last-child .btn{width:100%;align-self:center}.defect-table tbody .defect-empty{display:block}.defect-table tbody .defect-empty td{display:block}.defect-table tbody .defect-empty td::before{content:none}}
@media(max-width:760px){.defect-list-panel>.table-wrap>.defect-table{width:100%!important;min-width:0!important}.defect-list-panel>.table-wrap>.defect-table>tbody{width:100%!important;min-width:0!important}.defect-list-panel>.table-wrap>.defect-table>tbody>tr{width:100%;min-width:0}}
.defect-table th:nth-child(1){width:17%}.defect-table th:nth-child(2){width:19%}.defect-table th:nth-child(3){width:17%}.defect-table th:nth-child(4){width:13%}.defect-table th:nth-child(5){width:13%}.defect-table th:nth-child(6){width:11%}.defect-table th:nth-child(7){width:10%}

/* Project warranty records */
.warranty-head{align-items:center}.warranty-head>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.warranty-kpis,.warranty-summary-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff);margin:16px 0}.warranty-kpis>div,.warranty-summary-band>div{display:grid;gap:5px;padding:14px;border-right:1px solid var(--app-border,#d5ddd8);min-width:0}.warranty-kpis>div:last-child,.warranty-summary-band>div:last-child{border-right:0}.warranty-kpis small,.warranty-summary-band small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.warranty-kpis strong{font-size:22px}.warranty-summary-band strong{font-size:13px;overflow-wrap:anywhere}.warranty-filter-form{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(170px,.7fr) minmax(220px,1fr) auto auto;gap:10px;align-items:end}.warranty-filter-form>label,.warranty-create-form>label,.warranty-details-form>label,.warranty-document-form>label,.warranty-archive-form>label{display:grid;gap:5px}.warranty-create-panel,.warranty-list-panel{margin-top:16px}.warranty-create-form,.warranty-details-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.warranty-create-form .warranty-wide,.warranty-details-form .warranty-wide{grid-column:1/-1}.warranty-list-panel>.table-wrap{max-width:100%;overflow-x:auto}.warranty-table{width:100%;table-layout:fixed}.warranty-table th:nth-child(1){width:16%}.warranty-table th:nth-child(2){width:18%}.warranty-table th:nth-child(3){width:18%}.warranty-table th:nth-child(4),.warranty-table th:nth-child(5){width:12%}.warranty-table th:nth-child(6){width:14%}.warranty-table th:nth-child(7){width:10%}.warranty-table td{vertical-align:top;overflow-wrap:anywhere}.warranty-table td>small{display:block;margin-top:4px;color:var(--app-muted,#5f6d64)}.warranty-table td:last-child .btn{width:100%;padding-inline:7px}.warranty-row.expired{background:color-mix(in srgb,#c93636 5%,var(--app-panel,#fff))}.warranty-status{display:inline-flex;align-items:center;min-height:26px;padding:4px 7px;border-radius:5px;font-size:10px;font-weight:800;white-space:nowrap}.warranty-status.active{background:color-mix(in srgb,#2f9d5b 16%,var(--app-panel,#fff));color:#237744}.warranty-status.upcoming{background:color-mix(in srgb,#327db7 14%,var(--app-panel,#fff));color:#245f8d}.warranty-status.expired{background:color-mix(in srgb,#c93636 13%,var(--app-panel,#fff));color:#a32626}.warranty-status.archived{background:color-mix(in srgb,#6d746f 13%,var(--app-panel,#fff));color:#4d5650}.warranty-title-line{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.warranty-title-line h1{margin:0}.warranty-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px;align-items:start}.warranty-main-column,.warranty-side-column{display:grid;gap:16px;min-width:0}.warranty-side-column{position:sticky;top:76px;width:auto;max-width:none;height:auto;background:transparent;color:inherit;border:0;padding:0;overflow:visible;box-shadow:none;z-index:auto}.warranty-text{white-space:pre-wrap;line-height:1.6}.warranty-documents{display:grid}.warranty-documents article{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 0;border-top:1px solid var(--app-border,#d5ddd8)}.warranty-documents article:first-child{border-top:0}.warranty-documents article>div{display:grid;gap:4px;min-width:0}.warranty-documents small,.warranty-history span,.warranty-history a{font-size:10px;color:var(--app-muted,#5f6d64);overflow-wrap:anywhere}.warranty-documents p,.warranty-history p{margin:0;white-space:pre-wrap}.warranty-doc-type{justify-self:start;padding:3px 6px;border-radius:4px;background:color-mix(in srgb,#327db7 12%,var(--app-panel,#fff));color:#245f8d;font-size:10px;font-weight:800}.warranty-document-form{display:grid;grid-template-columns:.8fr 1.2fr .7fr 1fr;gap:10px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid var(--app-border,#d5ddd8)}.warranty-document-form .document-file-picker,.warranty-document-form>button{grid-column:1/-1}.warranty-history{display:grid}.warranty-history article{display:grid;gap:4px;padding:11px 0;border-top:1px solid var(--app-border,#d5ddd8)}.warranty-history article:first-child{border-top:0}.warranty-archive-form{display:grid;gap:9px}.warranty-archive-form button{width:100%}@media(max-width:1050px){.warranty-layout{grid-template-columns:1fr}.warranty-side-column{position:static}.warranty-filter-form{grid-template-columns:1fr 1fr}.warranty-filter-form>label:first-child{grid-column:1/-1}.warranty-create-form,.warranty-details-form{grid-template-columns:1fr 1fr}.warranty-document-form{grid-template-columns:1fr 1fr}}@media(max-width:760px){.warranty-head{align-items:flex-start}.warranty-kpis,.warranty-summary-band{grid-template-columns:1fr 1fr}.warranty-kpis>div:nth-child(2),.warranty-summary-band>div:nth-child(2){border-right:0}.warranty-kpis>div:nth-child(-n+2),.warranty-summary-band>div:nth-child(-n+2){border-bottom:1px solid var(--app-border,#d5ddd8)}.warranty-filter-form,.warranty-create-form,.warranty-details-form,.warranty-document-form{grid-template-columns:1fr}.warranty-filter-form>label:first-child,.warranty-create-form .warranty-wide,.warranty-details-form .warranty-wide,.warranty-document-form .document-file-picker,.warranty-document-form>button{grid-column:auto}.warranty-list-panel>.table-wrap{overflow:visible}.warranty-table,.warranty-table tbody{display:block;width:100%;min-width:0}.warranty-table thead{display:none}.warranty-table tbody{display:grid;gap:12px}.warranty-table tbody tr{display:grid;grid-template-columns:1fr 1fr;width:100%;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;overflow:hidden;background:var(--app-panel,#fff)}.warranty-table tbody td{display:grid;align-content:start;gap:4px;min-width:0;padding:10px;border:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.warranty-table tbody td::before{content:attr(data-label);font-size:9px;font-weight:800;color:var(--app-muted,#5f6d64)}.warranty-table tbody td:nth-child(-n+3){grid-column:1/-1}.warranty-table tbody td:nth-child(2){border-bottom:0}.warranty-table tbody td:nth-child(4),.warranty-table tbody td:nth-child(6){border-right:1px solid var(--app-border,#d5ddd8)}.warranty-table tbody td:nth-last-child(-n+2){border-bottom:0}.warranty-table tbody td:last-child .btn{width:100%}.warranty-documents article{align-items:stretch;flex-direction:column}.warranty-title-line{align-items:flex-start}}
@media(max-width:760px){.warranty-list-panel>.table-wrap>.warranty-table{width:100%!important;min-width:0!important}.warranty-list-panel>.table-wrap>.warranty-table>tbody{width:100%!important;min-width:0!important}.warranty-list-panel>.table-wrap>.warranty-table>tbody>tr{width:100%;min-width:0}}

/* Finance journal */
.finance-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.finance-metrics .metric{min-width:0;margin:0}.finance-connection{margin:12px 0}.finance-connection>summary{cursor:pointer;font-size:15px;font-weight:800}.finance-connection[open]>summary{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--app-border,#d5ddd8)}@media(max-width:900px){.finance-metrics{grid-template-columns:1fr}}
.budget-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff);margin:16px 0}.budget-kpis>div{display:grid;gap:5px;padding:14px;border-right:1px solid var(--app-border,#d5ddd8);min-width:0}.budget-kpis>div:last-child{border-right:0}.budget-kpis small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.budget-kpis strong{font-size:22px}.budget-kpis span{font-size:11px;color:var(--app-muted,#5f6d64)}.budget-create-panel,.budget-list-panel{margin-top:16px}.budget-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.budget-form>label{display:grid;gap:5px}.budget-form .budget-notes,.budget-form .budget-submit{grid-column:1/-1}.budget-table{min-width:1120px}.budget-table td{vertical-align:top}.budget-table td>small{display:block;margin-top:4px;color:var(--app-muted,#5f6d64)}.budget-over{background:color-mix(in srgb,#c93636 6%,var(--app-panel,#fff))}.budget-progress{width:120px;height:7px;margin-top:7px;overflow:hidden;border-radius:4px;background:#e4e9e6}.budget-progress>span{display:block;height:100%;background:#2f8f55}.budget-progress>span.near{background:#c98221}.budget-progress>span.over{background:#c93636}@media(max-width:900px){.budget-kpis{grid-template-columns:1fr}.budget-kpis>div{border-right:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.budget-kpis>div:last-child{border-bottom:0}.budget-form{grid-template-columns:1fr 1fr}.budget-form .budget-notes,.budget-form .budget-submit{grid-column:1/-1}}@media(max-width:600px){.budget-form{grid-template-columns:1fr}.budget-form .budget-notes,.budget-form .budget-submit{grid-column:auto}}

/* Cashflow forecast */
.cashflow-top{align-items:end}.cashflow-horizon{display:flex;gap:8px;align-items:end}.cashflow-horizon label{display:grid;gap:5px}.cashflow-horizon select{min-width:130px;margin:0}.cashflow-horizon button{margin:0}.cashflow-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff);margin:16px 0}.cashflow-metrics>.metric{display:grid;align-content:start;gap:5px;min-width:0;min-height:92px;margin:0;padding:14px;border-right:1px solid var(--app-border,#d5ddd8);border-bottom:1px solid var(--app-border,#d5ddd8);border-radius:0;box-shadow:none}.cashflow-metrics>.metric:nth-child(3n){border-right:0}.cashflow-metrics>.metric:nth-last-child(-n+3){border-bottom:0}.cashflow-metrics small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.cashflow-metrics strong{font-size:20px;overflow-wrap:anywhere}.cashflow-metrics .positive strong,.cashflow-in{color:#237744}.cashflow-metrics .negative strong,.cashflow-out{color:#92530c}.cashflow-metrics .projected{background:color-mix(in srgb,#327db7 8%,var(--app-panel,#fff))}.cashflow-metrics .critical{background:color-mix(in srgb,#c93636 10%,var(--app-panel,#fff))}.cashflow-metrics .critical strong{color:#a32626}.cashflow-plan-create,.cashflow-timeline-panel{margin-top:16px}.cashflow-plan-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.cashflow-plan-form>label{display:grid;gap:5px}.cashflow-plan-form .cashflow-notes,.cashflow-plan-form>button{grid-column:1/-1}.cashflow-table{min-width:920px}.cashflow-table td,.cashflow-detail-grid td{vertical-align:top}.cashflow-table td>small,.cashflow-detail-grid td small{display:block;margin-top:4px;color:var(--app-muted,#5f6d64)}.cashflow-overdue{background:color-mix(in srgb,#c93636 6%,var(--app-panel,#fff))}.cashflow-detail-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px;margin-top:16px;align-items:start}.cashflow-detail-grid>.panel{min-width:0}.cashflow-detail-grid table{min-width:620px}.cashflow-close-form{display:grid;gap:7px;min-width:245px;margin-top:8px}.cashflow-close-form label{display:grid;gap:4px}.cashflow-close-form input,.cashflow-close-form select,.cashflow-close-form textarea{margin:0}@media(max-width:1100px){.cashflow-metrics{grid-template-columns:1fr 1fr}.cashflow-metrics>.metric,.cashflow-metrics>.metric:nth-child(3n){border-right:1px solid var(--app-border,#d5ddd8);border-bottom:1px solid var(--app-border,#d5ddd8)}.cashflow-metrics>.metric:nth-child(2n){border-right:0}.cashflow-metrics>.metric:nth-last-child(-n+2){border-bottom:0}.cashflow-plan-form{grid-template-columns:1fr 1fr}.cashflow-detail-grid{grid-template-columns:1fr}}@media(max-width:600px){.cashflow-top{align-items:flex-start}.cashflow-horizon{width:100%;display:grid;grid-template-columns:1fr auto}.cashflow-metrics{grid-template-columns:1fr}.cashflow-metrics>.metric,.cashflow-metrics>.metric:nth-child(2n),.cashflow-metrics>.metric:nth-child(3n),.cashflow-metrics>.metric:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.cashflow-metrics>.metric:last-child{border-bottom:0}.cashflow-plan-form{grid-template-columns:1fr}.cashflow-plan-form .cashflow-notes,.cashflow-plan-form>button{grid-column:auto}}
@media(max-width:1650px){.cashflow-detail-grid{grid-template-columns:1fr}}

.cost-center-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0;border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff)}
.cost-center-kpis>.kpi{display:grid;gap:5px;min-width:0;padding:14px;border-right:1px solid var(--app-border,#d5ddd8)}
.cost-center-kpis>.kpi:last-child{border-right:0}
.cost-center-kpis small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}
.cost-center-kpis b{font-size:22px}
.cost-center-create{margin-bottom:16px}
.cost-center-table{min-width:920px}
.cost-center-table td:nth-child(1){width:140px}
.cost-center-table td:nth-child(2){width:130px}
.cost-center-table td:nth-child(4){width:190px;white-space:nowrap}
.cost-center-table td:nth-child(5){width:190px}
@media(max-width:720px){.cost-center-kpis{grid-template-columns:1fr}.cost-center-kpis>.kpi{border-right:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.cost-center-kpis>.kpi:last-child{border-bottom:0}.cost-center-head{align-items:flex-start}.cost-center-create .two,.cost-center-create .three{grid-template-columns:1fr}}

/* Double-entry accounting workspace */
.five{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px}
.accounting-head{align-items:flex-end}.accounting-head .actions{justify-content:flex-end}
.accounting-export-form{display:grid;gap:14px}.accounting-export-list{display:grid;border-top:1px solid var(--app-border,#d5ddd8)}
.accounting-export-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;padding:12px 0;border-bottom:1px solid var(--app-border,#d5ddd8)}
.accounting-export-row>div:first-child{display:grid;gap:3px;min-width:0}.accounting-export-row small{color:var(--app-muted,#5f6d64);overflow-wrap:anywhere}.accounting-export-row .actions{justify-content:flex-end}
.accounting-tabs{position:sticky;top:60px;z-index:12;display:flex;gap:4px;width:100%;max-width:100%;height:auto;margin:14px 0;padding:5px;overflow-x:auto;overflow-y:hidden;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;background:var(--app-panel,#fff)}
.accounting-tabs a{min-height:34px;padding:8px 11px;border-radius:5px;color:var(--app-muted,#5f6d64);font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}
.accounting-tabs a:hover,.accounting-tabs a:focus-visible{background:color-mix(in srgb,var(--app-accent,#2f8f55) 9%,var(--app-panel,#fff));color:var(--app-text,#17231d)}
#overview{padding:0}.accounting-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0;border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff)}
.accounting-kpis>.kpi{display:grid;gap:5px;min-width:0;padding:14px;border-right:1px solid var(--app-border,#d5ddd8)}
.accounting-kpis>.kpi:last-child{border-right:0}.accounting-kpis small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.accounting-kpis b{font-size:18px;overflow-wrap:anywhere}
#chart,#tax-keys,#periods,#posting,#journal,#vat{scroll-margin-top:112px;margin-top:16px}
.accounting-account-form,.accounting-posting form{margin-bottom:14px}.accounting-account-form label,.accounting-posting label,.inline-filter label{display:grid;gap:5px}
.accounting-line-table{min-width:1280px;table-layout:fixed}.accounting-line-table th:nth-child(1){width:42px}.accounting-line-table th:nth-child(2){width:260px}.accounting-line-table th:nth-child(3),.accounting-line-table th:nth-child(4){width:125px}.accounting-line-table th:nth-child(5),.accounting-line-table th:nth-child(6){width:250px}.accounting-line-table th:last-child{width:54px}
.accounting-line-table td{vertical-align:top}.accounting-line-table input,.accounting-line-table select{width:100%;margin:0 0 6px}.accounting-line-table td:nth-child(3) input,.accounting-line-table td:nth-child(4) input{text-align:right;font-variant-numeric:tabular-nums}
.icon-btn{width:38px;min-width:38px;min-height:38px!important;padding:0!important;font-size:20px}.icon-btn:disabled{opacity:.35;cursor:not-allowed}
.accounting-posting-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.inline-filter{display:flex;gap:8px;align-items:end}.inline-filter select{min-width:190px;margin:0}
.journal-list{display:grid;min-width:0;margin-top:14px;border-top:1px solid var(--app-border,#d5ddd8)}.journal-entry{min-width:0;padding:16px 0;border-bottom:1px solid var(--app-border,#d5ddd8)}.journal-entry header{display:flex;align-items:center;justify-content:space-between;gap:12px}.journal-entry header small{display:block;margin-top:3px;color:var(--app-muted,#5f6d64)}.journal-entry p{margin:8px 0 11px}.journal-entry>.table-scroll{width:100%;max-width:100%;overflow-x:auto}.journal-entry table{min-width:760px}.journal-entry details{margin-top:10px}
.accounting-ledgers{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:16px;margin-top:16px;padding:0}.accounting-ledgers>.panel{min-width:0;margin:0}.accounting-ledgers table{min-width:620px}
@media(max-width:1200px){.five{grid-template-columns:repeat(3,minmax(0,1fr))}.accounting-kpis{grid-template-columns:1fr 1fr}.accounting-kpis>.kpi:nth-child(2){border-right:0}.accounting-kpis>.kpi:nth-child(-n+2){border-bottom:1px solid var(--app-border,#d5ddd8)}.accounting-ledgers{grid-template-columns:1fr}}
@media(max-width:760px){.five{grid-template-columns:1fr}.accounting-head{align-items:flex-start}.accounting-head .actions{width:100%;justify-content:flex-start}.accounting-head .actions .btn{flex:1;min-width:140px}.accounting-export-row{grid-template-columns:1fr}.accounting-export-row .actions{width:100%;justify-content:space-between}.accounting-export-row button{min-width:120px}.accounting-tabs{top:59px}.accounting-kpis{grid-template-columns:1fr}.accounting-kpis>.kpi,.accounting-kpis>.kpi:nth-child(2){border-right:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.accounting-kpis>.kpi:last-child{border-bottom:0}.accounting-posting-actions{align-items:stretch;flex-direction:column}.accounting-posting-actions button{width:100%}.inline-filter{width:100%;align-items:stretch;flex-direction:column}.inline-filter select{width:100%}.journal-entry header{align-items:flex-start}.accounting-ledgers{display:block}.accounting-ledgers>.panel+ .panel{margin-top:12px}}

/* Incoming supplier invoices and payment triage */
.payables-head{align-items:flex-start}.payables-head form{margin:0}.payables-tabs{display:flex;gap:4px;max-width:100%;margin:12px 0;padding:4px;overflow-x:auto;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;background:var(--app-panel,#fff)}.payables-tabs a{min-height:34px;padding:8px 11px;border-radius:5px;color:var(--app-muted,#5f6d64);font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}.payables-tabs a.active{background:var(--app-accent,#2f8f55);color:#fff}.payables-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:12px 0;border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff)}.payables-summary>div{display:grid;gap:4px;padding:12px;border-right:1px solid var(--app-border,#d5ddd8)}.payables-summary>div:last-child{border-right:0}.payables-summary small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.payables-summary strong{font-size:18px}.payables-table td{vertical-align:top}
@media(max-width:760px){.payables-head{display:grid}.payables-head form,.payables-head button{width:100%}.payables-summary{grid-template-columns:1fr}.payables-summary>div{border-right:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.payables-summary>div:last-child{border-bottom:0}.payables-table-wrap{overflow:visible}.payables-table,.payables-table tbody{display:block;width:100%;min-width:0}.payables-table thead{display:none}.payables-table tbody{display:grid;gap:10px}.payables-table tbody tr{display:grid;grid-template-columns:1fr 1fr;width:100%;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;overflow:hidden;background:var(--app-panel,#fff)}.payables-table tbody td{display:grid;align-content:start;gap:4px;min-width:0;padding:10px;border:0;border-bottom:1px solid var(--app-border,#d5ddd8);overflow-wrap:anywhere}.payables-table tbody td::before{content:attr(data-label);font-size:9px;font-weight:800;color:var(--app-muted,#5f6d64)}.payables-table tbody td:first-child,.payables-table tbody td:nth-child(2),.payables-table tbody td:last-child{grid-column:1/-1}.payables-table tbody td:nth-child(5){border-bottom:0}.payables-table tbody td:last-child{border-bottom:0}.payables-table tbody td:last-child .btn{width:100%;text-align:center}}

/* Inventory valuation and project-cost posting */
.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.section-heading h2{margin:0 0 4px}.section-heading p{margin:0;color:var(--app-muted,#5f6d64)}
.inline-form{display:grid;grid-template-columns:minmax(132px,.7fr) minmax(92px,.45fr) minmax(185px,1fr) auto;gap:7px;align-items:end;min-width:560px}.inline-form input,.inline-form button{margin:0}.inline-form .compact-input{min-width:90px}.align-right{text-align:right}
.purchase-receipt-form{grid-template-columns:132px 92px minmax(170px,1fr);min-width:430px}.purchase-receipt-form button{grid-column:1/-1}
@media(max-width:760px){.section-heading{flex-direction:column}.inline-form{grid-template-columns:1fr;min-width:240px}.inline-form button{width:100%}}

/* Controlled physical inventory counts */
.inventory-count-create,.inventory-count-list,.inventory-count-detail{margin-top:16px}.inventory-count-create-form{display:grid;grid-template-columns:minmax(170px,.35fr) minmax(260px,1fr) auto;gap:10px;align-items:end}.inventory-count-create-form label,.inventory-count-cancel-form label{display:grid;gap:5px}.inventory-count-create-form input,.inventory-count-create-form button{margin:0}.inventory-count-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.inventory-count-title h1{margin:0}.inventory-count-status{display:inline-flex;align-items:center;min-height:26px;padding:4px 8px;border-radius:5px;font-size:10px;font-weight:800;white-space:nowrap}.inventory-count-status.draft{background:color-mix(in srgb,#c98221 15%,var(--app-panel,#fff));color:#92530c}.inventory-count-status.approved{background:color-mix(in srgb,#2f8f55 15%,var(--app-panel,#fff));color:#237744}.inventory-count-status.cancelled{background:color-mix(in srgb,#6d746f 14%,var(--app-panel,#fff));color:#4d5650}.inventory-count-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0;border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff)}.inventory-count-kpis>div{display:grid;gap:5px;min-width:0;padding:14px;border-right:1px solid var(--app-border,#d5ddd8)}.inventory-count-kpis>div:last-child{border-right:0}.inventory-count-kpis small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.inventory-count-kpis strong{font-size:20px;overflow-wrap:anywhere}.inventory-count-table{min-width:920px}.inventory-count-table td{vertical-align:top}.inventory-count-table td small,.inventory-count-item-table td small{display:block;margin-top:4px;color:var(--app-muted,#5f6d64)}.inventory-count-item-table{min-width:1180px;table-layout:fixed}.inventory-count-item-table th:nth-child(1){width:18%}.inventory-count-item-table th:nth-child(2){width:12%}.inventory-count-item-table th:nth-child(3){width:25%}.inventory-count-item-table th:nth-child(4){width:10%}.inventory-count-item-table th:nth-child(5){width:11%}.inventory-count-item-table th:nth-child(6){width:14%}.inventory-count-item-table th:nth-child(7){width:10%}.inventory-count-item-table td{vertical-align:top;overflow-wrap:anywhere}.inventory-count-item-table tr.has-difference{background:color-mix(in srgb,#c98221 7%,var(--app-panel,#fff))}.inventory-count-item-form{display:grid;grid-template-columns:minmax(76px,.4fr) minmax(115px,1fr);gap:6px;align-items:end}.inventory-count-item-form input,.inventory-count-item-form button{min-width:0;margin:0}.inventory-count-item-form .btn.compact{grid-column:1/-1;width:100%;min-height:38px;padding:8px 10px;white-space:nowrap}.inventory-count-actions{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px;margin-top:16px}.inventory-count-actions>.panel{margin:0}.inventory-count-actions h2{margin-top:0}.inventory-count-cancel-form{display:grid;gap:9px;margin-top:12px}.inventory-count-cancel-form textarea{min-height:84px}.positive{color:#237744}.negative{color:#a32626}
@media(max-width:960px){.inventory-count-create-form{grid-template-columns:1fr 1fr}.inventory-count-create-form button{grid-column:1/-1}.inventory-count-kpis{grid-template-columns:1fr 1fr}.inventory-count-kpis>div:nth-child(2){border-right:0}.inventory-count-kpis>div:nth-child(-n+2){border-bottom:1px solid var(--app-border,#d5ddd8)}.inventory-count-actions{grid-template-columns:1fr}}
@media(max-width:760px){.inventory-count-create-form{grid-template-columns:1fr}.inventory-count-create-form button{grid-column:auto;width:100%}.inventory-count-kpis{grid-template-columns:1fr}.inventory-count-kpis>div,.inventory-count-kpis>div:nth-child(2){border-right:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.inventory-count-kpis>div:last-child{border-bottom:0}.inventory-count-list>.table-scroll,.inventory-count-detail>.table-scroll{overflow:visible}.inventory-count-list>.table-scroll>.inventory-count-table,.inventory-count-detail>.table-scroll>.inventory-count-item-table,.inventory-count-table tbody,.inventory-count-item-table tbody{display:block;width:100%;min-width:0}.inventory-count-table thead,.inventory-count-item-table thead{display:none}.inventory-count-table tbody,.inventory-count-item-table tbody{display:grid;gap:12px}.inventory-count-table tbody tr,.inventory-count-item-table tbody tr{display:grid;grid-template-columns:1fr 1fr;width:100%;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;overflow:hidden;background:var(--app-panel,#fff)}.inventory-count-table tbody td,.inventory-count-item-table tbody td{display:grid;align-content:start;gap:4px;min-width:0;padding:10px;border:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.inventory-count-table tbody td::before,.inventory-count-item-table tbody td::before{content:attr(data-label);font-size:9px;font-weight:800;color:var(--app-muted,#5f6d64)}.inventory-count-table tbody td:first-child,.inventory-count-table tbody td:last-child,.inventory-count-item-table tbody td:first-child,.inventory-count-item-table tbody td:nth-child(3),.inventory-count-item-table tbody td:nth-child(6){grid-column:1/-1}.inventory-count-table tbody td:last-child,.inventory-count-item-table tbody td:last-child{border-bottom:0}.inventory-count-table tbody td:nth-child(5),.inventory-count-item-table tbody td:nth-child(5){border-bottom:0}.inventory-count-table tbody td:last-child .btn{width:100%}.inventory-count-item-form{grid-template-columns:1fr}.inventory-count-item-form button{width:100%}}

/* Material, individually tracked tools and fleet */
.resource-head{align-items:flex-end}.resource-head .action-cluster{justify-content:flex-end}.resource-band{margin:16px 0;padding:16px 0;border-top:1px solid var(--app-border,#d5ddd8)}.resource-band:first-of-type{border-top:0}.resource-band>h2,.resource-band>.section-heading h2{margin-top:0}.resource-band summary{cursor:pointer;font-weight:800;font-size:16px;padding:4px 0 12px}.resource-form{display:grid;gap:2px}.resource-grid{display:grid;gap:12px;align-items:end}.resource-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.resource-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.resource-grid.six{grid-template-columns:repeat(6,minmax(0,1fr))}.resource-grid label,.resource-form>label,.resource-band form>label{display:grid;gap:5px;min-width:0}.resource-grid label>span,.resource-form>label>span,.resource-band form>label>span{font-size:11px;font-weight:800;color:var(--app-muted,#5f6d64)}.resource-grid input,.resource-grid select,.resource-grid textarea{min-width:0;margin:0}.resource-filter{display:grid;grid-template-columns:minmax(240px,1fr) minmax(160px,.35fr) auto;gap:10px;align-items:end}.resource-filter input,.resource-filter select,.resource-filter button{margin:0}.resource-list{display:grid;border:1px solid var(--app-border,#d5ddd8)}.resource-row{display:grid;grid-template-columns:minmax(105px,.3fr) minmax(240px,1.4fr) minmax(100px,.4fr) minmax(130px,.5fr) minmax(90px,.35fr);gap:12px;align-items:center;min-height:58px;padding:10px 12px;border-bottom:1px solid var(--app-border,#d5ddd8);color:inherit;text-decoration:none}.resource-row:last-child{border-bottom:0}.resource-row:hover{background:color-mix(in srgb,var(--app-accent,#2f8f55) 5%,var(--app-panel,#fff))}.resource-row span{min-width:0;overflow-wrap:anywhere}.resource-row small{display:block;margin-top:3px;color:var(--app-muted,#5f6d64)}.resource-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.media-record{display:grid;grid-template-columns:minmax(170px,.65fr) minmax(200px,1fr);gap:18px;align-items:start}.resource-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.media-record img{width:100%;aspect-ratio:4/3;max-height:300px;object-fit:contain;background:#f1f4f2;border:1px solid var(--app-border,#d5ddd8);border-radius:6px}.media-record dl,.value-separation dl{display:grid;grid-template-columns:minmax(125px,.75fr) minmax(0,1fr);gap:7px 12px;margin:0}.media-record dt,.value-separation dt{color:var(--app-muted,#5f6d64);font-size:11px;font-weight:800}.media-record dd,.value-separation dd{margin:0;overflow-wrap:anywhere}.resource-product-reference{display:block;width:min(100%,320px);aspect-ratio:4/3;object-fit:contain;border:1px solid var(--app-border,#d5ddd8);background:#f1f4f2}.value-separation{border-left:4px solid #2f8f55;padding-left:16px}.token-list{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.token-list code{padding:6px 8px;border:1px solid var(--app-border,#d5ddd8);border-radius:4px;background:#f3f6f4}.proposal-json{max-height:300px;overflow:auto;padding:12px;border:1px solid var(--app-border,#d5ddd8);background:#f4f7f5;white-space:pre-wrap;word-break:break-word;font-size:11px}.source-link{display:block;margin:6px 0;overflow-wrap:anywhere}.photo-history{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.photo-history figure{margin:0;border:1px solid var(--app-border,#d5ddd8);border-radius:6px;overflow:hidden}.photo-history img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.photo-history figcaption{display:grid;gap:3px;padding:8px;font-size:11px}.photo-history small{color:var(--app-muted,#5f6d64)}.sticky-actions{position:sticky;bottom:0;z-index:3;padding:12px 0;background:color-mix(in srgb,var(--app-bg,#f5f7f5) 92%,transparent);backdrop-filter:blur(7px)}.sticky-actions button{width:100%;margin:0}.check-row{display:flex;gap:18px;flex-wrap:wrap;margin:14px 0}.check-row label{display:flex;align-items:center;gap:7px}.label-preview{position:relative;display:grid;align-content:center;gap:4px;width:min(100%,420px);aspect-ratio:62/29;padding:18px 130px 18px 18px;border:2px solid #1f2b24;background:#fff;color:#111}.label-preview strong{font-size:22px}.fake-qr{position:absolute;right:18px;top:18px;width:88px;aspect-ratio:1;background:repeating-conic-gradient(#111 0 25%,#fff 0 50%) 0/18px 18px;border:8px solid #fff;outline:2px solid #111}.resource-scan-layout{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(320px,1.3fr);gap:24px}.resource-scan-layout video{display:block;width:100%;min-height:240px;max-height:480px;object-fit:cover;background:#15201a;border-radius:6px}.scan-station{border-left:4px solid #2f8f55;padding-left:16px}.danger-zone{margin:26px 0;border-top:1px solid #d6b3b3;padding-top:12px}.danger-zone summary{color:#9a2424;cursor:pointer;font-weight:800}.danger-zone form{max-width:620px}.danger-zone textarea{min-height:80px}.danger-zone .danger{background:#a32626}.badge.warn{background:#fff0d8;color:#815000}
.resource-summary>*{min-width:0}.resource-summary .inline-form{grid-template-columns:minmax(0,1fr) auto;min-width:0}.resource-summary .inline-form input{min-width:0}
@media(max-width:1100px){.resource-grid.five,.resource-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-row{grid-template-columns:minmax(100px,.3fr) minmax(200px,1fr) minmax(100px,.4fr)}.resource-row>*:nth-child(n+4){display:none}.resource-summary{grid-template-columns:1fr}}
@media(max-width:760px){.resource-head{align-items:stretch}.resource-head .action-cluster{justify-content:stretch}.resource-head .action-cluster .btn{flex:1 1 100%;text-align:center}.resource-band{padding:12px 0}.resource-grid.two,.resource-grid.three,.resource-grid.four,.resource-grid.five,.resource-grid.six,.resource-filter,.resource-scan-layout,.media-record{grid-template-columns:1fr}.resource-row{grid-template-columns:minmax(92px,.35fr) minmax(0,1fr);gap:8px}.resource-row>*:nth-child(3){display:none}.media-record img{max-height:240px}.photo-history{grid-template-columns:repeat(2,minmax(0,1fr))}.sticky-actions{bottom:0}.check-row{display:grid;gap:8px}.label-preview{padding-right:105px}.fake-qr{width:72px}}
.dms-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0;border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff)}.dms-kpis>div{display:grid;gap:5px;min-width:0;padding:14px;border-right:1px solid var(--app-border,#d5ddd8)}.dms-kpis>div:last-child{border-right:0}.dms-kpis small{font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.dms-kpis strong{font-size:22px}.dms-filter-panel,.dms-create-panel,.dms-list-panel{margin-top:16px;min-width:0}.dms-filter{display:grid;grid-template-columns:minmax(250px,1.45fr) repeat(3,minmax(145px,.7fr)) auto auto;gap:9px;align-items:end}.dms-filter label,.dms-create-form label{display:grid;gap:5px;min-width:0}.dms-filter input,.dms-filter select,.dms-filter button,.dms-filter .btn,.dms-create-form input,.dms-create-form select,.dms-create-form button{min-width:0;margin:0}.dms-filter .btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px}.dms-create-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}.dms-create-form .dms-file,.dms-create-form>button{grid-column:1/-1}.dms-create-form>button{width:100%}.dms-list-panel>.table-scroll{max-width:100%;overflow-x:auto}.dms-table{min-width:1080px;table-layout:fixed}.dms-table th:nth-child(1){width:25%}.dms-table th:nth-child(2){width:14%}.dms-table th:nth-child(3){width:18%}.dms-table th:nth-child(4){width:14%}.dms-table th:nth-child(5){width:17%}.dms-table th:nth-child(6){width:12%}.dms-table td{vertical-align:top;overflow-wrap:anywhere}.dms-table td>small{display:block;margin-top:4px;color:var(--app-muted,#5f6d64)}.dms-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.dms-tags span,.dms-category{display:inline-flex;align-items:center;max-width:100%;padding:3px 6px;border-radius:4px;background:color-mix(in srgb,#327db7 11%,var(--app-panel,#fff));color:#245f8d;font-size:10px;font-weight:800;overflow-wrap:anywhere}.dms-category{background:color-mix(in srgb,#2f8f55 12%,var(--app-panel,#fff));color:#237744}.dms-actions{display:grid;gap:6px}.dms-actions .btn,.dms-actions button{width:100%;margin:0;text-align:center}.dms-actions form{margin:0}
@media(max-width:1100px){.dms-filter{grid-template-columns:1fr 1fr 1fr}.dms-filter .dms-search{grid-column:1/-1}.dms-create-form{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.dms-kpis{grid-template-columns:1fr 1fr}.dms-kpis>div:nth-child(2){border-right:0}.dms-kpis>div:nth-child(-n+2){border-bottom:1px solid var(--app-border,#d5ddd8)}.dms-filter,.dms-create-form{grid-template-columns:1fr}.dms-filter .dms-search,.dms-create-form .dms-file,.dms-create-form>button{grid-column:auto}.dms-filter button,.dms-filter .btn{width:100%}.dms-list-panel>.table-scroll{overflow:visible}.dms-list-panel>.table-scroll>.dms-table,.dms-table tbody{display:block;width:100%;min-width:0}.dms-table thead{display:none}.dms-table tbody{display:grid;gap:12px}.dms-table tbody tr{display:grid;grid-template-columns:1fr 1fr;width:100%;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;overflow:hidden;background:var(--app-panel,#fff)}.dms-table tbody td{display:grid;align-content:start;gap:4px;min-width:0;padding:10px;border:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.dms-table tbody td::before{content:attr(data-label);font-size:9px;font-weight:800;color:var(--app-muted,#5f6d64)}.dms-table tbody td:first-child,.dms-table tbody td:nth-child(3),.dms-table tbody td:last-child{grid-column:1/-1}.dms-table tbody td:nth-child(4){border-bottom:0}.dms-table tbody td:last-child{border-bottom:0}.dms-actions{grid-template-columns:1fr 1fr}}
.dms-preview-band{display:grid;place-items:center;min-height:420px;margin:16px 0;background:#eef2ef;border:1px solid var(--app-border,#d5ddd8)}.dms-preview-band iframe{display:block;width:100%;height:calc(100vh - 235px);min-height:520px;border:0;background:#fff}.dms-preview-band img{display:block;max-width:100%;max-height:calc(100vh - 235px);object-fit:contain;padding:16px}@media(max-width:760px){.dms-preview-band{min-height:360px}.dms-preview-band iframe{height:calc(100vh - 190px);min-height:480px}.dms-preview-band img{max-height:calc(100vh - 190px);padding:8px}}
.doc-visibility-grid{display:grid;grid-template-columns:1fr;gap:5px;margin:12px 0;padding:10px 0;border-top:1px solid var(--app-border,#d5ddd8);border-bottom:1px solid var(--app-border,#d5ddd8)}

/* Quote positions: headings are records, but never commercial lines. */
.quote-items-panel{overflow:hidden}.quote-new-elements{display:grid;gap:10px;margin:0 0 18px}.quote-add-form{display:grid;gap:8px;align-items:end;padding:12px;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;background:color-mix(in srgb,var(--app-panel,#fff) 96%,var(--app-accent,#2f8f55))}.quote-add-form label,.quote-item-editor label{display:grid;gap:4px;min-width:0;font-size:10px;font-weight:800;color:var(--app-muted,#5f6d64)}.quote-add-form input,.quote-add-form select,.quote-item-editor input,.quote-item-editor select{min-width:0;margin:0}.quote-add-line{grid-template-columns:minmax(220px,2fr) minmax(72px,.48fr) minmax(86px,.62fr) minmax(100px,.7fr) minmax(76px,.5fr) auto}.quote-add-section{grid-template-columns:minmax(240px,1fr) auto;align-items:end;border-left:4px solid var(--app-accent,#2f8f55)}.quote-add-section small{grid-column:1/-1;color:var(--app-muted,#5f6d64);font-size:11px}.quote-item-list{display:grid;gap:7px}.quote-item-editor{display:grid;grid-template-columns:34px 105px minmax(170px,2fr) minmax(68px,.5fr) minmax(78px,.58fr) minmax(94px,.65fr) minmax(68px,.48fr) auto;gap:7px;align-items:end;padding:10px;border:1px solid var(--app-border,#d5ddd8);border-radius:7px;background:var(--app-panel,#fff)}.quote-item-number{align-self:center;font-weight:800;text-align:center;color:var(--app-muted,#5f6d64)}.quote-item-actions{display:flex;gap:6px;align-items:center}.quote-item-actions button{margin:0;white-space:nowrap}.quote-item-actions .danger{min-width:42px;padding-inline:10px}.quote-item-editor.is-section{grid-template-columns:34px 105px minmax(220px,1fr) auto;border-left:4px solid var(--app-accent,#2f8f55);background:color-mix(in srgb,var(--app-accent,#2f8f55) 7%,var(--app-panel,#fff))}.quote-item-editor.is-section .quote-line-field{display:none}.quote-item-editor.is-section .quote-description input{font-weight:800;color:var(--app-accent,#237744)}
@media(max-width:1100px){.quote-add-line{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-add-line>button{grid-column:1/-1}.quote-item-editor{grid-template-columns:34px 105px minmax(170px,1fr) repeat(2,minmax(78px,.6fr)) auto}.quote-item-editor .quote-line-field:nth-of-type(3){grid-column:3}.quote-item-editor .quote-item-actions{grid-column:1/-1;justify-content:flex-end}.quote-item-editor.is-section{grid-template-columns:34px 105px minmax(170px,1fr) auto}.quote-item-editor.is-section .quote-item-actions{grid-column:auto}}
@media(max-width:760px){.quote-add-line,.quote-add-section{grid-template-columns:1fr}.quote-add-section small,.quote-add-line>button{grid-column:auto}.quote-add-form button{width:100%}.quote-item-editor,.quote-item-editor.is-section{grid-template-columns:34px minmax(0,1fr)}.quote-item-editor>label{grid-column:2}.quote-item-editor .quote-item-actions,.quote-item-editor.is-section .quote-item-actions{grid-column:1/-1;justify-content:stretch}.quote-item-actions button{flex:1}.quote-item-editor .quote-item-number{grid-row:1;align-self:end}.quote-item-editor>label:first-of-type{grid-row:1}.quote-item-editor.is-section .quote-description{grid-column:1/-1}.quote-item-editor.is-section>label:first-of-type{grid-column:2}.quote-item-editor.is-section .quote-item-actions{grid-column:1/-1}}
@media(max-width:760px){.a4-stage{position:static!important;left:auto!important;width:100%;min-height:0;height:auto;padding:8px!important;overflow:hidden}.a4-sheet{margin:0 auto;transform:none}.docstudio .doc-toolrail{height:auto!important;min-height:0;max-height:84px;align-self:start;align-items:stretch}.docstudio .doc-toolrail button{height:67px!important;min-height:67px!important;flex:0 0 72px}.docstudio .doc-controls{order:2}.docstudio .a4-stage{order:3}}
.rental-actions{min-width:280px;display:grid;gap:8px;align-content:start}.rental-actions>.btn{width:max-content;max-width:100%}.rental-actions details{border-top:1px solid var(--line);padding-top:7px}.rental-actions details>summary{cursor:pointer;font-weight:700}.rental-actions form{display:grid;gap:7px;margin-top:7px}.rental-actions input,.rental-actions select,.rental-actions textarea{width:100%;min-width:0}.resource-evidence-links{display:flex;flex-wrap:wrap;gap:8px;font-size:.86rem}.check-row{display:flex!important;align-items:flex-start;gap:8px}.check-row input{width:auto!important;margin-top:3px}
@media(max-width:720px){.rental-actions{min-width:230px}.rental-actions>.btn{width:100%;text-align:center}}

/* Project cockpit: one authoritative view across commercial and site records. */
.project-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:0 0 22px}.project-heading h1{margin:4px 0 6px;font-size:28px}.project-heading p{margin:0;color:var(--app-muted,#5f6d64)}
.project-heading .action-cluster{justify-content:flex-end}.project-heading form{margin:0}.project-cockpit,.project-band{padding:22px 0!important;margin:0 0 24px;border-top:1px solid var(--app-border,#d5ddd8);border-bottom:1px solid var(--app-border,#d5ddd8)}
.project-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.project-section-head h2{margin:3px 0 0;font-size:20px}.project-section-head p{margin:5px 0 0}
.project-health{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--app-border,#d5ddd8);border-radius:6px;font-size:12px;font-weight:800}.project-health span{width:10px;height:10px;border-radius:50%;background:#738078}.project-health.healthy span{background:#258750}.project-health.warning span{background:#c0841f}.project-health.loss span{background:#bd3d3d}.project-health.incomplete span{background:#738078}
.project-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--app-border,#d5ddd8);border-left:1px solid var(--app-border,#d5ddd8)}.project-kpis>div{min-height:126px;padding:17px;border-right:1px solid var(--app-border,#d5ddd8);border-bottom:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff)}.project-kpis small,.project-kpis span{display:block;color:var(--app-muted,#5f6d64)}.project-kpis small{font-size:10px;font-weight:800}.project-kpis strong{display:block;margin:9px 0;font-size:25px}.project-kpis span{font-size:11px;line-height:1.45}
.project-variance-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:28px;margin-top:22px}.project-comparison,.project-cost-breakdown{display:grid;align-content:start}.project-comparison>div,.project-cost-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 2px;border-bottom:1px solid var(--app-border,#d5ddd8)}.project-comparison span,.project-cost-breakdown span{color:var(--app-muted,#5f6d64)}.project-variance{font-size:16px}.positive{color:#1e7745!important}.negative{color:#a72e2e!important}
.project-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.project-record-grid h3{margin:0 0 8px}.project-record-list{border-top:1px solid var(--app-border,#d5ddd8)}.project-record-list>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 2px;border-bottom:1px solid var(--app-border,#d5ddd8);color:var(--app-text,#17231d);text-decoration:none}.project-record-list>a:hover b{color:var(--app-accent,#2f8f55)}.project-record-list b,.project-record-list small{display:block}.project-record-list small{margin-top:3px;color:var(--app-muted,#5f6d64)}.project-record-list strong{white-space:nowrap}
.project-operation-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--app-border,#d5ddd8);border-left:1px solid var(--app-border,#d5ddd8)}.project-operation-grid>a{display:grid;align-content:start;min-height:112px;padding:14px;border-right:1px solid var(--app-border,#d5ddd8);border-bottom:1px solid var(--app-border,#d5ddd8);color:var(--app-text,#17231d);text-decoration:none}.project-operation-grid small,.project-operation-grid span{color:var(--app-muted,#5f6d64)}.project-operation-grid small{font-size:9px;font-weight:800}.project-operation-grid strong{margin:7px 0;font-size:24px}.project-operation-grid span{font-size:11px;line-height:1.4}.project-masterdata{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.project-masterdata>.panel,.projectgrid>.panel{min-width:0}.projectgrid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}
@media(max-width:1250px){.project-kpis{grid-template-columns:repeat(2,1fr)}.project-operation-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.project-heading,.project-section-head{align-items:flex-start;flex-direction:column}.project-heading .action-cluster{width:100%;justify-content:flex-start}.project-variance-grid,.project-record-grid{grid-template-columns:1fr}.project-operation-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.project-kpis,.project-operation-grid{grid-template-columns:1fr}.project-kpis>div{min-height:105px}.project-record-list>a{align-items:flex-start;flex-direction:column;gap:6px}}

/* Searchable user manual and tenant-scoped customer service. */
.manual-hero,.support-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:12px 0 24px;border-bottom:1px solid var(--app-border,#d5ddd8)}
.manual-hero h1,.support-hero h1{margin:5px 0 7px;font-size:30px}.manual-hero p,.support-hero p{max-width:760px;margin:0;color:var(--app-muted,#5f6d64)}
.manual-search{display:grid;grid-template-columns:minmax(260px,440px) auto;gap:8px;min-width:min(100%,590px);margin:0}.manual-search input,.manual-search button{margin:0}
.manual-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 0}.manual-categories{display:flex;flex-wrap:wrap;gap:6px}.manual-categories a{padding:7px 9px;border:1px solid var(--app-border,#d5ddd8);border-radius:5px;color:var(--app-text,#17231d);font-size:11px;font-weight:800;text-decoration:none}.manual-categories a:hover,.manual-categories a.active{border-color:var(--app-accent,#2f8f55);background:color-mix(in srgb,var(--app-accent,#2f8f55) 9%,var(--app-panel,#fff));color:var(--app-accent,#2f8f55)}
.manual-count{flex:0 0 auto;padding:7px 0;color:var(--app-muted,#5f6d64);font-size:11px;font-weight:800}.manual-list{display:grid;border-top:1px solid var(--app-border,#d5ddd8)}
.manual-article{border-bottom:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff)}.manual-article summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;padding:13px 16px;cursor:pointer;list-style:none}.manual-article summary::-webkit-details-marker{display:none}.manual-article summary>span:first-child{display:grid;gap:4px}.manual-article summary small{color:var(--app-accent,#2f8f55);font-size:9px;font-weight:900}.manual-article summary strong{font-size:16px}.manual-expand{color:var(--app-muted,#5f6d64);font-size:10px;font-weight:800}.manual-article[open] .manual-expand{visibility:hidden}.manual-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:end;padding:0 16px 18px}.manual-body p{max-width:980px;margin:0;white-space:pre-line;line-height:1.7}.manual-body .btn{white-space:nowrap}.manual-footer{display:flex;gap:9px;flex-wrap:wrap;padding:20px 0}.manual-footer .btn{margin:0}
.support-recipient{display:grid;gap:4px;flex:0 0 auto;padding:12px 14px;border-left:3px solid #327db7;background:color-mix(in srgb,#327db7 7%,var(--app-panel,#fff))}.support-recipient small{color:var(--app-muted,#5f6d64);font-size:9px;font-weight:900}.support-recipient strong{overflow-wrap:anywhere}.support-status{margin:14px 0}.support-layout{display:grid;grid-template-columns:minmax(230px,.33fr) minmax(0,1fr);min-height:650px;margin:18px 0;border:1px solid var(--app-border,#d5ddd8);background:var(--app-panel,#fff)}
.support-tickets{min-width:0;border-right:1px solid var(--app-border,#d5ddd8)}.support-section-title,.support-thread-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:72px;padding:12px 14px;border-bottom:1px solid var(--app-border,#d5ddd8)}.support-section-title h2,.support-thread-head h2{margin:0;font-size:17px}.support-thread-head small{display:block;margin-bottom:4px;color:var(--app-muted,#5f6d64)}.support-thread-head form,.support-thread-head button{margin:0}.support-ticket-list{display:grid}.support-ticket-list>a{display:grid;gap:5px;padding:13px 14px;border-bottom:1px solid var(--app-border,#d5ddd8);color:var(--app-text,#17231d);text-decoration:none}.support-ticket-list>a:hover,.support-ticket-list>a.active{background:color-mix(in srgb,#327db7 7%,var(--app-panel,#fff))}.support-ticket-list>a.active{box-shadow:inset 3px 0 #327db7}.support-ticket-list strong{font-size:13px}.support-ticket-list small{color:var(--app-muted,#5f6d64);font-size:10px}.support-ticket-list>p{padding:14px}
.support-thread{display:grid;grid-template-rows:auto minmax(120px,1fr) auto;min-width:0}.support-messages{display:grid;align-content:start;gap:12px;max-height:520px;padding:18px;overflow:auto;background:color-mix(in srgb,var(--app-bg,#f5f7f5) 70%,var(--app-panel,#fff))}.support-message{display:grid;gap:8px;width:min(82%,760px);padding:12px 14px;border:1px solid var(--app-border,#d5ddd8);border-radius:6px;background:var(--app-panel,#fff)}.support-message.outgoing{justify-self:end;border-color:color-mix(in srgb,var(--app-accent,#2f8f55) 45%,var(--app-border,#d5ddd8));background:color-mix(in srgb,var(--app-accent,#2f8f55) 7%,var(--app-panel,#fff))}.support-message.incoming{justify-self:start;border-color:color-mix(in srgb,#327db7 45%,var(--app-border,#d5ddd8))}.support-message header{display:flex;justify-content:space-between;gap:12px}.support-message header span,.support-message>small{color:var(--app-muted,#5f6d64);font-size:10px}.support-message p{margin:0;white-space:pre-line;overflow-wrap:anywhere;line-height:1.55}.support-empty{display:grid;place-items:center;min-height:180px;padding:25px;color:var(--app-muted,#5f6d64)}
.support-compose{display:grid;gap:10px;padding:16px;border-top:1px solid var(--app-border,#d5ddd8)}.support-compose>label,.support-compose-options label{display:grid;gap:5px;font-size:11px;font-weight:800}.support-compose textarea,.support-compose input,.support-compose select,.support-compose button{margin:0}.support-compose-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.support-safe{font-weight:600!important}.support-safe input{width:auto}.support-compose>button{justify-self:start}.support-compose button:disabled{cursor:not-allowed;opacity:.55}
@media(max-width:900px){.manual-hero,.support-hero{align-items:stretch;flex-direction:column}.manual-search{grid-template-columns:1fr;min-width:0}.support-layout{grid-template-columns:1fr}.support-tickets{border-right:0;border-bottom:1px solid var(--app-border,#d5ddd8)}.support-ticket-list{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-body{grid-template-columns:1fr}.manual-body .btn{justify-self:start}}
@media(max-width:600px){.manual-toolbar{align-items:stretch;flex-direction:column}.manual-count{padding:0}.manual-article summary{align-items:flex-start}.manual-expand{display:none}.support-ticket-list,.support-compose-options{grid-template-columns:1fr}.support-message{width:94%}.support-thread-head{align-items:flex-start;flex-direction:column}.support-thread-head form,.support-thread-head button,.support-compose>button{width:100%}.support-recipient{width:100%}}

/* Payroll and employee declarations */
.payroll-head,.declaration-head{align-items:center}.payroll-create,.declaration-create{margin:16px 0}.payroll-create-form{display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(3,minmax(130px,.7fr)) auto;gap:10px;align-items:end}.declaration-create-form{display:grid;grid-template-columns:minmax(240px,1fr) minmax(280px,1fr) auto;gap:10px;align-items:end}.payroll-slip-list{display:grid;gap:16px;margin-top:16px}.payroll-slip{scroll-margin-top:86px}.payroll-totals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--app-border,#d5ddd8);margin:14px 0}.payroll-totals>div{display:grid;gap:5px;padding:12px;border-right:1px solid var(--app-border,#d5ddd8)}.payroll-totals>div:last-child{border-right:0}.payroll-totals span{color:var(--app-muted,#637068);font-size:12px}.payroll-totals b{font-size:18px}.payroll-items{min-width:920px}.payroll-item-editor{margin-top:13px;border-top:1px solid var(--app-border,#d5ddd8);padding-top:8px}.payroll-item-editor>summary{cursor:pointer;font-weight:700;padding:9px 0}.payroll-item-form{display:grid;grid-template-columns:120px minmax(210px,1.5fr) minmax(180px,1fr) repeat(4,minmax(120px,.7fr));gap:9px;align-items:end}.approval-bar,.period-close{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:12px 14px;background:color-mix(in srgb,var(--app-accent,#177b49) 7%,transparent);border:1px solid color-mix(in srgb,var(--app-accent,#177b49) 35%,var(--app-border,#d5ddd8))}.approval-bar div{display:grid;gap:4px}.approval-bar small,.declaration-table small{display:block;color:var(--app-muted,#637068)}.period-close{margin-bottom:20px}.declaration-table{min-width:1120px}.declaration-actions{display:grid;gap:8px;min-width:310px}.reference-form,.decision-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:7px}.decision-form{grid-template-columns:130px minmax(190px,1fr) auto}.deadline-overdue{color:var(--app-danger,#a32929);font-weight:800}.employee-avatar{width:38px;height:38px;object-fit:cover;border-radius:50%;border:1px solid var(--app-border,#d5ddd8)}.country-chip{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid var(--app-border,#d5ddd8);font-weight:700}.sticky-actions{position:sticky;bottom:0;background:var(--app-surface,#fff);padding:12px 0 2px;z-index:2}
.payroll-compliance-form{display:grid;gap:10px;margin-top:14px;padding:14px;border:1px solid var(--app-border,#d5ddd8);background:var(--app-surface-soft,#f7faf8)}.payroll-compliance-form .section-heading{margin-bottom:0}.payroll-compliance-form .inline-check{align-items:flex-start}.payroll-compliance-form>button{justify-self:start}
@media(max-width:1200px){.payroll-create-form{grid-template-columns:1fr 1fr 1fr}.payroll-create-form label:first-child{grid-column:1/-1}.payroll-item-form{grid-template-columns:repeat(3,minmax(0,1fr))}.payroll-item-form label:nth-child(2){grid-column:span 2}.payroll-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.payroll-totals>div:nth-child(3){border-right:0}}
@media(max-width:760px){.payroll-head,.declaration-head{align-items:stretch}.payroll-head .actions,.declaration-head .actions{width:100%}.payroll-create-form,.declaration-create-form,.payroll-item-form{grid-template-columns:1fr}.payroll-create-form label:first-child,.payroll-item-form label:nth-child(2){grid-column:auto}.payroll-totals{grid-template-columns:1fr 1fr}.payroll-totals>div{border-bottom:1px solid var(--app-border,#d5ddd8)}.payroll-totals>div:nth-child(even){border-right:0}.approval-bar,.period-close{align-items:stretch;flex-direction:column}.approval-bar button,.period-close button,.payroll-compliance-form>button{width:100%}.reference-form,.decision-form{grid-template-columns:1fr}.declaration-actions{min-width:250px}}

/* Keep a main position and all descendants together without row separators. */
.document-positions tbody tr td{border-top:0!important;border-bottom:0!important}
.document-positions tbody tr.position-group-start:not(:first-child) td{border-top:1px solid var(--app-accent,#39a85a)!important}

/* Edit positions in the same column order as the printed document, at every viewport. */
.position-table-scroll{max-width:100%;overflow-x:auto}
.document-positions{display:table!important;table-layout:fixed;width:100%;min-width:1020px;border-collapse:collapse}
.document-positions thead{display:table-header-group!important}
.document-positions tbody{display:table-row-group!important}
.document-positions tfoot{display:table-footer-group!important}
.document-positions tr{display:table-row!important}
.document-positions th,.document-positions td{display:table-cell!important;vertical-align:top;padding:6px!important;border-right:1px solid var(--app-border,#d5ddd8);border-radius:0!important}
.document-positions thead th{background:var(--app-accent,#2f8f55)!important;color:#fff!important;white-space:nowrap;letter-spacing:0;font-size:11px}
.document-positions .position-col-number{width:55px}
.document-positions .position-col-quantity{width:72px}
.document-positions .position-col-unit{width:80px}
.document-positions .position-col-price{width:90px}
.document-positions .position-col-total{width:104px}
.document-positions .position-col-tax{width:72px}
.document-positions .position-col-actions{width:136px}
.document-positions input,.document-positions select,.document-positions textarea{box-sizing:border-box;width:100%!important;min-width:0!important;margin:0!important;padding:5px!important;min-height:32px!important;font-size:12px;line-height:1.35}
.document-positions textarea{height:48px;min-height:48px!important;resize:vertical}
.document-positions input[type=number]{text-align:right}
.document-positions .position-line-total{white-space:nowrap;text-align:right;padding-top:13px!important;font-variant-numeric:tabular-nums}
.document-positions .position-section td{background:color-mix(in srgb,var(--app-accent,#2f8f55) 7%,var(--app-panel,#fff))}
.document-positions .position-section textarea{font-weight:700}
.position-row-actions{display:flex;gap:4px;align-items:start}
.document-positions button{min-height:32px!important;padding:6px 8px!important;font-size:11px;white-space:nowrap;margin:0}
.position-row-options{margin-top:5px;font-size:11px}
.position-row-options summary{cursor:pointer;color:var(--app-muted,#637068)}
.position-row-options label{display:grid;gap:3px;margin-top:5px}
.document-positions tfoot td{border-top:2px solid var(--app-accent,#2f8f55)!important}
.position-table-scroll .document-positions{min-width:1080px!important}
.document-positions .position-col-tax{width:90px}
.document-positions input,.document-positions select,.document-positions textarea{font-family:inherit}
.document-positions .position-section td{background:color-mix(in srgb,var(--app-accent,#2f8f55) 7%,var(--app-panel,#111612));color:var(--app-accent,#2f8f55)}
