
:root{--navy:#102a43;--blue:#1f6fb2;--bg:#f4f7fb;--card:#fff;--line:#d9e2ec;--text:#17202a;--muted:#6b7c93;--ok:#16724a;--warn:#a86400;--danger:#b42318}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
header{background:var(--navy);color:#fff;padding:24px 0}.wrap{max-width:1180px;margin:auto;padding:0 22px}.headerbar{display:flex;justify-content:space-between;align-items:center;gap:20px}
h1{margin:0;font-size:28px}.sub{opacity:.82;margin-top:6px}main{padding:30px 0 60px}.headeruser{font-size:13px;opacity:.85}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 5px 18px rgba(16,42,67,.06)}
.login{max-width:520px;margin:auto}label{display:block;font-weight:700;margin:14px 0 6px}input,select{width:100%;padding:12px;border:1px solid #c8d2dc;border-radius:9px;background:#fff;font-size:15px}
button{margin-top:18px;width:100%;padding:13px 18px;border:0;border-radius:10px;background:var(--blue);color:#fff;font-weight:700;cursor:pointer}
button.secondary{background:#5b6b7a}button.compact{width:auto;margin:0;padding:10px 14px}button:disabled{opacity:.55;cursor:not-allowed}.hidden{display:none!important}
.price{font-size:36px;font-weight:800;margin:10px 0}.priceLabel{margin-top:18px}.muted{color:var(--muted)}
.pill{display:inline-block;padding:6px 10px;border-radius:999px;font-size:13px;font-weight:700;background:#e8eef5}.pill.ok{background:#e4f4ec;color:var(--ok)}.pill.review{background:#fff0db;color:var(--warn)}.pill.enterprise{background:#fdecec;color:var(--danger)}
.rolebadge{font-size:11px;text-transform:uppercase;background:#e8eef5;color:var(--navy);padding:4px 7px;border-radius:99px;margin-left:6px}
ul{padding-left:20px;line-height:1.55}.small{font-size:13px;color:var(--muted)}.divider{border-top:1px solid var(--line);margin:20px 0}.summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}.summary div{background:#f8fafc;padding:12px;border-radius:10px}.mt8{margin-top:8px}
.error,.success{margin-top:14px;padding:11px 12px;border-radius:9px;font-size:14px}.error{background:#fdecec;color:var(--danger)}.success{background:#e4f4ec;color:var(--ok)}
.authbar,.sectionhead,.modalhead{display:flex;justify-content:space-between;align-items:center;gap:12px}.authbar{margin-bottom:16px}.who{font-size:14px;color:var(--muted)}
.tabs{display:flex;gap:8px;margin:0 0 20px;border-bottom:1px solid var(--line)}.tab{width:auto;margin:0 0 -1px;background:transparent;color:var(--muted);border-radius:9px 9px 0 0;border-bottom:3px solid transparent}.tab.active{color:var(--blue);border-bottom-color:var(--blue);background:#fff}
.filters{display:grid;grid-template-columns:1fr 190px 190px auto;gap:10px;margin:18px 0}.filters button{margin:0}
.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;min-width:980px}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);font-size:13px;white-space:nowrap}th{background:#f8fafc;color:#52657a}tr:last-child td{border-bottom:0}.linkbtn{width:auto;margin:0;padding:7px 10px;font-size:12px}
.modal{position:fixed;inset:0;background:rgba(16,42,67,.58);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.modalbox{background:#fff;max-width:820px;width:100%;max-height:90vh;overflow:auto;border-radius:16px;padding:24px;box-shadow:0 20px 60px rgba(0,0,0,.2)}
.detailgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.detailitem{background:#f8fafc;padding:12px;border-radius:10px}.configtable{width:100%;min-width:0}.configtable td:first-child{font-weight:700;color:#52657a}
.adminrow{display:grid;grid-template-columns:1fr 150px;gap:12px;align-items:end;padding:10px 0;border-bottom:1px solid var(--line)}.adminrow:last-child{border-bottom:0}.adminrow label{margin:0}.adminrow input{margin:0}.adminsave{max-width:320px}
@media(max-width:850px){.grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.headerbar{align-items:flex-start}.tabs{overflow:auto}.detailgrid{grid-template-columns:1fr}}
@media print{
  body.printing>*:not(#quoteModal){display:none!important}
  body.printing #quoteModal{position:static;background:#fff;padding:0;display:block!important}
  body.printing #quoteModal .modalbox{box-shadow:none;max-width:none;max-height:none;padding:0}
  body.printing .modalhead button,.printHide{display:none!important}
}

.mt16{margin-top:16px}.mt20{margin-top:20px}.mt24{margin-top:24px}
.smallmodal{max-width:560px}.checkline{display:flex;align-items:center;gap:9px;font-weight:600}.checkline input{width:auto}
.quoteBrand{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}
.quoteLogo{width:310px;max-width:48%;height:auto;object-fit:contain}
.quoteTitle{text-align:right}.quoteTitle h2{margin:0;color:var(--navy)}.quoteTitle .official{font-size:13px;font-weight:800;letter-spacing:.08em;margin-top:6px}
.approvalActions{background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:14px;margin-top:18px}
.approvalActions textarea{width:100%;min-height:70px;padding:10px;border:1px solid #c8d2dc;border-radius:8px;font-family:inherit}
.actionrow{display:flex;gap:8px}.actionrow button{width:auto;margin-top:10px}.approve{background:var(--ok)}.reject{background:var(--danger)}.reopen{background:#687789}
.approvalPending{background:#fff0db;color:var(--warn)}.approvalOfficial{background:#e4f4ec;color:var(--ok)}.approvalRejected{background:#fdecec;color:var(--danger)}
@media print{
  .quoteBrand{margin-top:0}
  .quoteLogo{width:280px}
  .approvalActions{display:none!important}
}

.headerRight{display:flex;align-items:center;gap:14px}
.languageSelect{width:auto;min-width:115px;padding:8px 10px;background:#fff;color:var(--navy);font-weight:700}
@media(max-width:700px){.headerRight{align-items:flex-end;flex-direction:column}}

.danger{background:#9b1c1c!important;color:#fff!important;border-color:#9b1c1c!important}
.approvalEvidence{margin:18px 0;padding:14px 16px;border:2px solid #177245;background:#eef9f2;color:#145a37;border-radius:8px;font-size:14px}

.languageSwitch{display:flex;gap:6px;align-items:center}.langbtn{padding:7px 10px;border:1px solid #cbd5e1;background:#fff;color:#334e68;border-radius:6px;cursor:pointer;font-weight:700}.langbtn.active{background:#123b6d;color:#fff;border-color:#123b6d}.serviceSheetBox{margin:8px 0 12px}.serviceSheetLink{display:inline-block;font-size:13px;font-weight:700;color:#1f6fb2;text-decoration:none}.serviceSheetLink:hover{text-decoration:underline}

/* v9.4 product catalogue */
.productPicker{display:grid;gap:8px;margin:10px 0 18px}.productrow{display:grid;grid-template-columns:28px 1fr 92px;gap:10px;align-items:center;padding:10px 12px;border:1px solid #dde3ea;border-radius:8px;background:#fafbfd}.productrow .pmeta{font-size:12px;color:#667085}.productrow .pprice{font-weight:700}.productrow input[type=number]{margin:0;padding:7px}.productrow input[type=checkbox]{width:auto;margin:0}.danger{background:#b42318!important;color:#fff!important}

/* Daily capacity and optional digital services. */
#profileSummary{margin:12px 0;padding:12px;border-radius:9px;background:#f4f7fb;line-height:1.5}
#profileSummary:empty{display:none}
#subscriptionHint{line-height:1.5;margin-top:8px}
.optionRow{display:flex;align-items:flex-start;gap:10px;line-height:1.45}
.optionRow input[type=checkbox]{width:auto;flex-shrink:0;margin:4px 0 0}

/* Admin: task navigation, comparable profiles and grouped parameters. */
.adminIntro h2{margin:0 0 8px}.adminIntro{box-shadow:none}
.adminNav{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.adminNavBtn{width:auto;margin:0;background:#fff;color:var(--navy);border:1px solid var(--line);padding:12px 18px}.adminNavBtn.active{background:var(--navy);color:white;border-color:var(--navy)}
#adminApprovalsLink{margin-left:auto;background:transparent;border-color:transparent;color:var(--blue)}
.adminProfiles h2{margin:0}.adminProfiles p{max-width:850px;line-height:1.5}.adminProfileTable{min-width:820px;width:100%}.adminProfileTable th{white-space:normal;font-size:12px;line-height:1.4}.adminProfileTable th[scope=row]{font-size:14px;min-width:135px;background:#f8fafc;color:var(--navy)}.adminProfileTable td{padding:10px 8px}.adminProfileTable input{min-width:70px;padding:10px 8px;font-size:14px}.adminProfileTable tbody tr:nth-child(even){background:#fafbfd}
.adminNumber{display:flex;align-items:center;gap:6px}.adminNumber input{min-width:0}.adminNumber span{font-size:13px;color:var(--muted)}
.adminPricingGroups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;align-items:start}.adminPriceGroup{padding:20px;box-shadow:none;min-width:0}.adminPriceGroup summary{cursor:pointer;font-weight:700;color:var(--navy);line-height:1.5}.adminPriceGroup summary span{float:right;font-size:12px;font-weight:400;color:var(--muted);margin:2px 0 0 8px}.adminPriceGroup p{font-size:13px;line-height:1.5;margin:12px 0}.adminFieldGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.adminFieldGrid label{font-size:13px;font-weight:600;margin:4px 0 8px;line-height:1.45}
.adminSaveBar{position:sticky;bottom:12px;z-index:5;background:#fff;border:1px solid var(--line);box-shadow:0 4px 22px #102a4318;border-radius:12px;padding:16px 20px;display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:24px}.adminSaveBar button{width:auto;min-width:180px;margin:0}.adminSaveBar strong{display:block;margin-bottom:5px;font-size:14px}.adminSaveBar .small{max-width:650px}
#adminTab input:focus-visible,#adminTab button:focus-visible,#adminTab summary:focus-visible{outline:3px solid #7cb7e1;outline-offset:3px}
@media(max-width:760px){.adminPricingGroups{grid-template-columns:1fr}.adminNavBtn{flex:1 1 40%;font-size:13px;padding:11px 9px}#adminApprovalsLink{margin-left:0}.adminSaveBar{flex-direction:column;align-items:stretch;gap:12px;padding:14px;bottom:6px}.adminSaveBar button{width:100%}.adminProfiles{padding:16px}.adminFieldGrid{gap:12px}.adminPriceGroup summary span{float:none;display:block;margin-left:16px}}
.adminSaveBar{position:static}.adminSaveBar.hasChanges{position:sticky}
@media(max-width:760px){
 .adminProfileTable{min-width:0;display:block;border:none}.adminProfileTable thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.adminProfileTable tbody{display:grid;gap:14px}.adminProfileTable tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff!important}.adminProfileTable th[scope=row]{grid-column:1/-1;padding:12px;border:0}.adminProfileTable td{display:block;border:0;min-width:0;padding:10px}.adminProfileTable td:before{content:attr(data-label);display:block;min-height:34px;font-size:11px;font-weight:600;color:var(--muted);white-space:normal;margin-bottom:6px}.adminProfileTable input{width:100%;min-width:0}.adminSaveBar.hasChanges .small{display:none}
}
