:root{
  --bg:#eef3f8;--ink:#111827;--muted:#5f6f86;--card:#ffffff;--line:#d8e2ee;
  --blue:#0f66b3;--blue2:#2d84c8;--navy:#061a33;--navy2:#09264b;--green:#118c4f;--soft:#f8fbff;
  --shadow:0 18px 48px rgba(15,35,64,.10);--radius:20px
}
*{box-sizing:border-box}html{min-height:100%}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:radial-gradient(circle at top right,#ffffff 0,#f3f7fb 38%,#e9f0f7 100%);color:var(--ink);letter-spacing:.01em}
a{color:#0a5ea8;text-decoration:none}a:hover{text-decoration:underline}
.brandbar{background:linear-gradient(105deg,var(--navy),#063f78 70%,#0f66b3);color:#fff;position:relative;overflow:hidden;box-shadow:0 12px 30px rgba(4,20,38,.20)}
.brandbar:after{content:"";position:absolute;right:-110px;top:-130px;width:560px;height:260px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 12px rgba(255,255,255,.025),0 0 0 26px rgba(255,255,255,.025);transform:rotate(-8deg)}
.brand-inner{position:relative;z-index:1;max-width:1260px;margin:0 auto;min-height:112px;padding:25px 30px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.boldon-logo{display:grid;gap:2px;color:#fff;text-decoration:none}.boldon-main{font-size:32px;font-weight:900;letter-spacing:.18em}.boldon-dot{font-size:28px;font-weight:300;letter-spacing:.03em;margin-left:3px;color:#dbeafe}.boldon-sub{grid-column:1/3;color:rgba(255,255,255,.70);font-size:15px;letter-spacing:.16em;text-transform:lowercase}.brand-divider{height:54px;width:1px;background:rgba(255,255,255,.35)}.app-pill{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:10px 18px;font-size:12px;font-weight:900;letter-spacing:.13em;color:#fff;background:rgba(255,255,255,.06);white-space:nowrap}.app-pill.dark{color:#104b82;border-color:#c9d8ea;background:#f6faff;margin-bottom:10px}.topnav{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.topnav a{color:#eaf4ff;border:1px solid rgba(255,255,255,.20);padding:8px 10px;border-radius:999px;font-weight:700;font-size:13px;background:rgba(255,255,255,.06)}.topnav a:hover{background:rgba(255,255,255,.15);text-decoration:none}
.page-shell{max-width:1260px;margin:0 auto;padding:30px}.flashes{margin-bottom:18px}.hero{display:flex;gap:28px;align-items:center;padding:18px 0 30px}.hero.compact{padding-bottom:20px}.hero-icon{width:82px;height:82px;border-radius:26px;background:linear-gradient(135deg,#006fc9,#0b4e94);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;color:#fff;font-size:38px;font-weight:900;flex:0 0 auto}.hero h1{font-size:42px;line-height:1.05;margin:0 0 12px;letter-spacing:.045em}.hero p{font-size:18px;line-height:1.45;margin:0;max-width:860px;color:#4b5d75}.tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:8px 0 26px}.tool-card,.card,.progress-card{background:rgba(255,255,255,.86);backdrop-filter:blur(3px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.tool-card{padding:24px;display:flex;flex-direction:column;min-height:360px}.tool-card h2{font-size:22px;line-height:1.25;margin:14px 0 12px}.tool-card p{color:#5b6b82;line-height:1.45;flex:1}.tool-icon{width:54px;height:54px;border-radius:18px;background:#e8f1fb;color:#0d64b3;display:flex;align-items:center;justify-content:center;font-size:25px;font-weight:900}.button,button{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#2f83c7,#1165ad);color:white;border:none;border-radius:12px;padding:13px 18px;text-decoration:none;font-weight:900;letter-spacing:.02em;box-shadow:0 10px 24px rgba(16,98,173,.26);cursor:pointer}.button:hover,button:hover{text-decoration:none;filter:brightness(1.04)}.secondary{background:#eaf1f9;color:#174670;box-shadow:none;border:1px solid #d8e4f0}.disabled{background:#e9eef5;color:#8a9aab;box-shadow:none;cursor:not-allowed}.button.danger{background:#8a1f11;color:#fff}.progress-card{padding:22px 24px;margin:24px 0}.progress-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.progress-head h2,.section-title h2{margin:0}.status-chip{border-radius:999px;background:#e7f6ee;color:#057346;border:1px solid #a7dec3;font-size:12px;font-weight:900;letter-spacing:.08em;padding:8px 15px}.progress-bar{height:16px;background:#dce9f5;border-radius:999px;overflow:hidden;margin-bottom:16px}.progress-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0e66b5,#43a9e5)}.step-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.step{border:1px solid var(--line);border-radius:14px;background:#fbfdff;padding:14px}.step b{display:block;font-size:14px}.step span{display:block;font-size:12px;color:var(--muted);margin-top:5px}.four-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.console-line,pre{white-space:pre-wrap;background:#05142a;color:#ecf7ff;padding:18px;border-radius:14px;overflow:auto;font-family:ui-monospace,Consolas,monospace;margin:18px 0 0;border:1px solid rgba(255,255,255,.08)}.grid{display:grid;gap:16px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin:24px 0}.card{padding:22px;margin:18px 0}.stat{margin:0}.stats b{display:block;font-size:36px;color:#1068b4;line-height:1}.stats span{color:var(--muted);font-weight:700}.section-title{display:flex;align-items:end;justify-content:space-between;gap:14px}.muted{color:var(--muted)}.small{font-size:13px}.narrow{max-width:450px;margin:40px auto}.login-hero{min-height:calc(100vh - 250px);display:flex;align-items:center;justify-content:center}.login-card{padding:30px}.actions{display:flex;gap:12px;margin:18px 0}.form{display:grid;gap:14px}.form.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form.four{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end}.form.inline{grid-template-columns:1fr auto;align-items:end}.vault-form{margin-top:22px}.full{grid-column:1/-1}label{font-weight:800;color:#21324a}input,select{width:100%;padding:12px 13px;border:1px dashed #bcd0e4;border-radius:12px;background:#fff;margin-top:7px;color:#16243a}input:focus,select:focus{outline:3px solid rgba(39,132,202,.16);border-color:#4b9bd4}table{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden}th,td{text-align:left;padding:13px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;color:#607086;text-transform:uppercase;letter-spacing:.08em;background:#f7faff}.pill{padding:5px 10px;border-radius:999px;background:#edf2f7;font-size:12px;font-weight:900}.pill.accepted{background:#def7ec;color:#03543f}.pill.needs_review{background:#fef3c7;color:#92400e}.flash{padding:12px 14px;border-radius:12px;margin:10px 0;background:#edf2f7}.flash.error{background:#fde8e8;color:#9b1c1c}.flash.success{background:#def7ec;color:#03543f}.flash.info{background:#e1effe;color:#1e429f}.search{display:flex;gap:10px;margin:16px 0}.hash{font-family:ui-monospace,Consolas,monospace;font-size:12px;word-break:break-all}dl{display:grid;grid-template-columns:180px 1fr;gap:10px}dt{font-weight:800;color:#44546a}dd{margin:0}.inline-form{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.inline-form input{min-width:220px}.footerbar{max-width:1260px;margin:10px auto 30px;padding:0 30px;display:flex;justify-content:space-between;color:#62728a;font-size:14px}.footer-logo{font-weight:900;color:#0d5ca4;font-size:22px;letter-spacing:.08em}.footer-logo span{font-weight:300}.footer-sub{margin-left:18px;color:#607086}
@media(max-width:1050px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.step-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topnav{margin-left:0}.hero h1{font-size:34px}}
@media(max-width:800px){.stats,.form.two,.form.four,.tool-grid,.step-grid,.four-steps{grid-template-columns:1fr}.brand-inner{align-items:flex-start}.brand-divider{display:none}.hero{align-items:flex-start}.hero-icon{width:60px;height:60px;border-radius:20px;font-size:26px}.hero h1{font-size:30px}.footerbar{display:block}.topnav{width:100%}}

/* Simple two-mode engineer UI */
.simple-hero{max-width:960px;margin:4px auto 28px;text-align:center;padding:18px 10px}.simple-hero h1{font-size:48px;letter-spacing:.035em;margin:10px 0 12px;line-height:1.05}.simple-hero p{font-size:19px;line-height:1.45;color:#4e6078;margin:0 auto;max-width:880px}.compact-centre h1{font-size:42px}.mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:8px auto 28px;max-width:980px}.mode-card{display:block;background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:34px;color:var(--ink);min-height:330px;text-decoration:none;transition:transform .15s ease, box-shadow .15s ease}.mode-card:hover{text-decoration:none;transform:translateY(-3px);box-shadow:0 24px 58px rgba(15,35,64,.16)}.mode-card h2{font-size:34px;margin:18px 0 12px}.mode-card p{font-size:17px;line-height:1.5;color:#53657d;min-height:105px}.primary-mode{background:linear-gradient(180deg,#fff,#f6fbff)}.mode-icon{width:72px;height:72px;border-radius:24px;background:linear-gradient(135deg,#0c70c8,#064b91);display:flex;align-items:center;justify-content:center;color:#fff;font-size:38px;font-weight:900;box-shadow:0 16px 34px rgba(12,103,181,.25)}.mode-button{margin-top:8px}.slim-progress{max-width:1100px;margin-left:auto;margin-right:auto}.transfer-card{max-width:920px;margin:0 auto 30px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);padding:30px}.drop-form{display:grid;gap:18px}.drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:330px;border:2px dashed #aac7e4;border-radius:26px;background:linear-gradient(180deg,#fbfdff,#f3f8fd);cursor:pointer;padding:32px;transition:border-color .15s ease, background .15s ease, transform .15s ease}.drop-zone.dragging{border-color:#0f66b3;background:#edf7ff;transform:scale(1.01)}.drop-zone input[type=file]{display:none}.drop-symbol{width:92px;height:92px;border-radius:32px;background:linear-gradient(135deg,#0c70c8,#064b91);display:flex;align-items:center;justify-content:center;color:#fff;font-size:52px;font-weight:900;box-shadow:0 18px 40px rgba(12,103,181,.26);margin-bottom:22px}.drop-zone strong{font-size:30px;letter-spacing:.02em}.drop-zone em{font-style:normal;color:#61738a;margin-top:10px}.selected-file{margin-top:22px;display:inline-flex;padding:10px 16px;border-radius:999px;background:#eaf2fb;color:#194b76;font-weight:800}.big-action{font-size:18px;padding:17px 22px;border-radius:16px;width:100%}.advanced-details{border:1px solid var(--line);border-radius:18px;background:#fbfdff;padding:15px}.advanced-details summary{font-weight:900;color:#174670;cursor:pointer}.advanced-details .form{margin-top:14px}.transfer-notes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0 10px}.transfer-notes div{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fbfdff}.transfer-notes b{display:block}.transfer-notes span{display:block;color:var(--muted);font-size:12px;margin-top:5px}.site-search{display:grid;grid-template-columns:1fr auto;gap:12px;margin-bottom:24px}.site-search input{font-size:18px;padding:16px 18px;border-style:solid}.download-empty{text-align:center;padding:40px 20px;color:#53657d}.download-empty .mode-icon{margin:0 auto 18px}.download-table .button{white-space:nowrap}.topnav a.engineer-primary{background:rgba(255,255,255,.18)}
@media(max-width:850px){.mode-grid,.transfer-notes,.site-search{grid-template-columns:1fr}.simple-hero h1{font-size:36px}.compact-centre h1{font-size:32px}.mode-card{min-height:auto}.mode-card p{min-height:auto}.drop-zone strong{font-size:24px}}

/* Engineer simplified dashboard */
.engineer-clean p{display:none}.engineer-clean{margin-top:28px;margin-bottom:58px}.engineer-clean h1{margin-bottom:0}.engineer-modes{max-width:980px;align-items:stretch}.engineer-modes .mode-card{min-height:430px}.upload-mode-card{cursor:default}.upload-mode-card:hover{transform:none;box-shadow:var(--shadow)}.download-mode-card{display:flex;flex-direction:column}.download-mode-card .big-find-button{margin-top:auto;width:100%;min-height:112px;font-size:28px;border-radius:18px}.dashboard-drop-form{margin-top:92px}.mini-drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:220px;border:2px dashed #aac7e4;border-radius:22px;background:linear-gradient(180deg,#fbfdff,#f3f8fd);cursor:pointer;padding:26px;transition:border-color .15s ease, background .15s ease, transform .15s ease}.mini-drop-zone.dragging{border-color:#0f66b3;background:#edf7ff;transform:scale(1.01)}.mini-drop-zone input[type=file]{display:none}.mini-drop-symbol{font-size:62px;line-height:1;color:#0b65b4;margin-bottom:18px}.mini-drop-zone strong{font-size:20px;color:#0d5ca4}.mini-drop-zone em{font-style:normal;color:#61738a;margin-top:10px}.simple-upload-card .drop-zone{min-height:460px}.visually-secondary-fallback{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.admin-only-panel{max-width:1100px}.topnav a[href$='catalogue'],.topnav a[href$='review'],.topnav a[href$='admin/users'],.topnav a[href$='admin/sites']{display:inline-flex}

/* Engineer upload confirmation modal */
.no-description p,.confirmation-hero p{display:none!important}.confirmation-hero{margin-bottom:18px}
.confirm-overlay-page{min-height:430px;display:flex;align-items:flex-start;justify-content:center;padding:20px 0 60px}
.upload-confirm-modal{width:min(620px,94vw);background:rgba(255,255,255,.98);border:1px solid var(--line);border-radius:24px;box-shadow:0 28px 80px rgba(4,20,38,.22);padding:34px 34px 28px;text-align:center}.confirm-tick{width:58px;height:58px;border-radius:999px;border:3px solid #17a35b;color:#17a35b;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;font-size:34px;font-weight:700}.upload-confirm-modal h2{font-size:28px;margin:0 0 24px}.confirm-form{text-align:left}.confirm-details{display:grid;grid-template-columns:150px 1fr;gap:16px 18px;margin:0}.confirm-details dt{font-weight:900;color:#26384f}.confirm-details dd{margin:0;color:#16243a}.confirm-details textarea{width:100%;min-height:104px;resize:vertical;padding:14px 16px;border:1px solid #cbd8e6;border-radius:12px;font:inherit;color:#16243a;background:#fff}.confirm-details textarea:focus{outline:3px solid rgba(39,132,202,.16);border-color:#4b9bd4}.confirm-actions{display:flex;gap:14px;align-items:center;border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.confirm-actions .secondary{background:#f3f7fb}.link-button{background:transparent;color:#0a5ea8;box-shadow:none;border:none}.link-button:hover{text-decoration:underline;filter:none}.mode-card.download-mode-card{cursor:pointer}.download-mode-card .big-find-button{margin-top:auto;width:100%;min-height:120px;font-size:30px;border-radius:18px}.download-mode-card .big-find-button:hover{text-decoration:none}
@media(max-width:700px){.confirm-details{grid-template-columns:1fr;gap:8px}.confirm-actions{display:grid;grid-template-columns:1fr}.upload-confirm-modal{text-align:left}.confirm-tick{margin-left:0}.upload-confirm-modal h2{text-align:left}}

/* Admin dashboard refinements */
.admin-status-card,.admin-history-card{max-width:1100px;margin-left:auto;margin-right:auto}.admin-history-card{padding:22px 24px;margin-top:22px}.admin-status-card .step-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-history-card table{margin-top:14px}

/* Download results with full version history */
.download-hero p{display:none}.download-results-stack{display:grid;gap:18px;margin-top:16px}.download-result-card{border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden}.download-latest-row{display:grid;grid-template-columns:1.4fr .6fr auto;gap:22px;align-items:center;padding:22px}.download-latest-row h3{margin:0 0 8px;font-size:22px}.download-latest-row p{margin:0}.latest-meta{display:grid;gap:4px}.latest-meta strong{font-size:24px}.download-main-button{min-width:220px}.version-history-panel{border-top:1px solid var(--line);padding:18px 22px 22px;background:#fbfdff}.version-history-panel h4{margin:0 0 12px;font-size:18px}.version-history-table th,.version-history-table td{padding:11px 12px}.small-button{display:inline-flex;padding:8px 12px;border-radius:10px;font-size:13px;font-weight:900}.compact-empty{padding:30px 20px}
@media(max-width:850px){.download-latest-row{grid-template-columns:1fr}.download-main-button{width:100%}.admin-status-card .step-grid{grid-template-columns:1fr}.version-history-table{font-size:13px}}

/* Download results: engineer-facing identity is site + manufacturer only. */
.download-identity h3 { margin-bottom: 0.35rem; }
.manufacturer-only { text-transform: none; font-weight: 600; }

/* Admin consolidation amendments */
.admin-button-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1100px;margin:0 auto 34px}.admin-action-card{display:block;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:30px;color:var(--ink);min-height:220px;text-decoration:none;transition:transform .15s ease, box-shadow .15s ease}.admin-action-card:hover{text-decoration:none;transform:translateY(-3px);box-shadow:0 24px 58px rgba(15,35,64,.16)}.admin-action-card h2{font-size:28px;margin:18px 0 8px}.admin-action-card p{color:var(--muted);font-weight:800}.form.three{grid-template-columns:1fr 220px auto;align-items:end}.small-button{margin:3px 0}.pill.error{background:#fde8e8;color:#9b1c1c}.pill.needs_review:hover{text-decoration:none;filter:brightness(.98)}
@media(max-width:900px){.admin-button-grid,.form.three{grid-template-columns:1fr}.admin-action-card{min-height:auto}}
.break-text{word-break:break-word;overflow-wrap:anywhere}.button-row{display:flex;gap:1rem;align-items:center;margin-top:1.5rem;flex-wrap:wrap}.detail-grid{display:grid;grid-template-columns:220px 1fr;gap:.8rem 1.2rem;align-items:start}.wide-card{max-width:1180px;margin:1.5rem auto}.status-pill.accepted{background:#dff7eb;color:#006b3a}.status-pill.needs_review{background:#fff1c9;color:#8a4b00}
.admin-action-card button.admin-card-button,.admin-card-button{border:0;background:transparent;text-align:left;width:100%;height:100%;padding:0;margin:0;color:inherit;font:inherit;cursor:pointer}.admin-action-card button.admin-card-button h2{font-size:28px;margin:18px 0 8px}

/* AJAX inline admin edits and search suggestions */
.editable-table input.inline-edit,
.editable-table select.inline-edit,
.site-inline-edit {
  width: 100%;
  min-width: 180px;
  border: 1px dashed #bfd3e8;
  border-radius: 12px;
  padding: 10px 12px;
  background: #fff;
  color: #132033;
  font: inherit;
}
.editable-table input.inline-edit:focus,
.editable-table select.inline-edit:focus,
.site-inline-edit:focus {
  outline: 2px solid rgba(29, 126, 196, .22);
  border-color: #2b7fc3;
}
.inline-status { display: inline-block; margin-left: 8px; font-size: 12px; font-weight: 700; }
.inline-status.saving { color: #8a6d00; }
.inline-status.saved { color: #08754f; }
.inline-status.error { color: #9b1c16; }
.small-link { display: inline-block; margin-top: 6px; font-size: 12px; font-weight: 700; color: #0b64ad; }
.autocomplete-search { position: relative; }
.suggestion-list {
  position: absolute;
  z-index: 50;
  top: calc(100% + 6px);
  left: 0;
  right: 160px;
  background: #fff;
  border: 1px solid #d6e1ed;
  border-radius: 16px;
  box-shadow: 0 18px 35px rgba(17, 31, 49, .16);
  overflow: hidden;
}
.suggestion-item {
  padding: 12px 16px;
  cursor: pointer;
  border-bottom: 1px solid #edf3f8;
  color: #122033;
  font-weight: 650;
}
.suggestion-item:last-child { border-bottom: none; }
.suggestion-item:hover,
.suggestion-item.active { background: #eef6fd; color: #075d9f; }
@media (max-width: 760px) { .suggestion-list { right: 0; } }
/* Clean admin cards and checkout indicators */
.clean-admin-grid{align-items:stretch}.clean-admin-grid .admin-action-card{min-height:210px;display:flex;flex-direction:column;justify-content:flex-start;gap:10px;overflow:hidden}.clean-admin-grid .admin-action-card h2{font-size:27px;line-height:1.08;margin:10px 0 6px;letter-spacing:.025em}.clean-admin-grid .admin-action-card p{font-size:15px;line-height:1.35;margin:0;max-width:100%}.admin-card-button{display:flex!important;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px}.mode-icon.text-icon{font-size:24px;letter-spacing:.02em}.mode-icon.status-red{background:linear-gradient(135deg,#b91c1c,#7f1d1d)}.traffic{display:inline-block;width:14px;height:14px;border-radius:50%;vertical-align:-2px;margin-right:7px;box-shadow:0 0 0 4px rgba(0,0,0,.04)}.traffic-green{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.12)}.traffic-red{background:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.12)}.checkout-line{font-weight:900;margin-top:9px;color:#4d5d73}.download-identity .checkout-line{font-size:14px}.version-history-panel{margin-top:18px}.editable-table td{vertical-align:middle}


/* Final checkout/admin card polish */
.clean-admin-grid .admin-action-card { min-height: 210px; display:flex; flex-direction:column; justify-content:flex-start; }
.clean-admin-grid form.admin-action-card { padding:30px; }
.clean-admin-grid form.admin-action-card button.admin-card-button {
  appearance:none; -webkit-appearance:none; background:transparent!important; box-shadow:none!important;
  border:0!important; border-radius:0!important; padding:0!important; margin:0!important;
  width:100%; height:100%; color:inherit; text-align:left; display:flex!important; flex-direction:column; align-items:flex-start; gap:10px;
}
.clean-admin-grid form.admin-action-card button.admin-card-button:hover { filter:none!important; text-decoration:none; }
.clean-admin-grid .admin-action-card .mode-icon { flex:0 0 auto; }
.clean-admin-grid .admin-action-card h2 { word-break:normal; overflow-wrap:normal; hyphens:none; }
.stat-link { text-decoration:none; color:inherit; display:block; }
.stat-link:hover { text-decoration:none; background:#f3f8fd; }
.checkout-stat.has-checkouts b { color:#b91c1c; }
.checkout-stat.has-checkouts { border-color:#f0b4ad; background:#fff7f6; }
.checkout-line.checkout-updating { opacity:.65; }

/* Checkout status in recent activity */
.pill.checked-out { background: #fdecec; color: #991b1b; border: 1px solid #f3c7c7; display: inline-flex; align-items: center; gap: 0.45rem; }
.traffic-dot { width: 0.75rem; height: 0.75rem; border-radius: 999px; display: inline-block; box-shadow: 0 0 0 3px rgba(0,0,0,0.04); }
.traffic-dot.red { background: #dc2626; }
.traffic-dot.green { background: #16a34a; }


/* user-login-hello-checkout-panel additions */
.my-checkouts-card { max-width: 980px; margin: 24px auto; }
.login-username { font-size: 1.05rem; color: var(--ink); letter-spacing: .02em; }
.users-table td { vertical-align: top; }
.user-create-form label,
.user-edit-form label { display: flex; flex-direction: column; gap: 6px; }
.user-create-form label span,
.user-edit-form label span { font-size: .74rem; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); font-weight: 800; }
.user-edit-form { display: grid; grid-template-columns: 1.2fr .7fr .7fr 1fr auto; gap: 10px; align-items: end; }
@media (max-width: 900px) { .user-edit-form { grid-template-columns: 1fr; } }

/* ui-layout-users-home-fix-1 */
/* Keep the main engineer action cards aligned with the dashboard panels below. */
.engineer-modes,
.mode-grid.engineer-modes {
  max-width: 1100px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.slim-progress,
.my-checkouts-card,
.admin-history-card {
  max-width: 1100px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.engineer-modes .mode-card {
  min-height: 330px;
}

/* Make the Users admin table readable: the login details and edit controls should not be cramped. */
.users-table {
  table-layout: fixed;
}
.users-table th:nth-child(1), .users-table td:nth-child(1) { width: 14%; }
.users-table th:nth-child(2), .users-table td:nth-child(2) { width: 13%; }
.users-table th:nth-child(3), .users-table td:nth-child(3) { width: 12%; }
.users-table th:nth-child(4), .users-table td:nth-child(4) { width: 51%; }
.users-table th:nth-child(5), .users-table td:nth-child(5) { width: 10%; }
.users-table .user-edit-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 14px 16px;
  align-items: end;
  width: 100%;
}
.users-table .user-edit-form label {
  min-width: 0;
}
.users-table .user-edit-form input,
.users-table .user-edit-form select {
  min-height: 48px;
  font-size: 15px;
  padding: 13px 14px;
  white-space: normal;
}
.users-table .user-edit-form button {
  min-height: 50px;
  width: 180px;
  align-self: end;
}
.user-create-form select,
.form.three select,
.user-edit-form select {
  min-width: 190px;
}
@media (max-width: 1100px) {
  .users-table,
  .users-table thead,
  .users-table tbody,
  .users-table tr,
  .users-table th,
  .users-table td {
    display: block;
    width: 100% !important;
  }
  .users-table thead { display: none; }
  .users-table tr { border-bottom: 1px solid var(--line); padding: 14px 0; }
  .users-table td { border-bottom: 0; padding: 8px 0; }
  .users-table .user-edit-form { grid-template-columns: 1fr; }
  .users-table .user-edit-form button { width: 100%; }
}
@media (max-width: 800px) {
  .engineer-modes,
  .mode-grid.engineer-modes {
    grid-template-columns: 1fr;
    max-width: 100%;
  }
}


/* Version notes modal */
.notes-modal[hidden]{display:none;}
.notes-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;}
.notes-modal-backdrop{position:absolute;inset:0;background:rgba(2,16,33,.45);backdrop-filter:blur(2px);}
.notes-modal-card{position:relative;z-index:1;width:min(560px,94vw);background:#fff;border:1px solid #d9e3ee;border-radius:22px;box-shadow:0 28px 80px rgba(6,32,55,.25);padding:28px;}
.notes-modal-card h3{margin:0 0 6px 0;font-size:1.5rem;letter-spacing:.04em;}
.notes-modal-close{position:absolute;top:14px;right:16px;border:0;background:#eef4fa;color:#0b3d6d;border-radius:999px;width:36px;height:36px;font-size:24px;line-height:1;cursor:pointer;}
.notes-modal-body{margin-top:18px;white-space:pre-wrap;line-height:1.55;color:#172033;background:#f7fafc;border:1px dashed #bfd2e5;border-radius:14px;padding:16px;min-height:84px;}
body.modal-open{overflow:hidden;}
.version-history-table th:nth-child(6), .version-history-table td:nth-child(6){text-align:center;}

.warning-panel.checkout-warning {
  margin: 0 0 1.2rem 0;
  padding: 1rem 1.2rem;
  border: 1px solid #f2b8b5;
  border-radius: 14px;
  background: #fff5f5;
  color: #8a1c16;
  line-height: 1.45;
}

/* Graphic admin setting switch */
.no-button-card { border: 0; background: transparent; width: 100%; text-align: left; padding: 0; color: inherit; display: block; }
.toggle-switch-row { margin-top: 18px; display: flex; align-items: center; justify-content: space-between; gap: 14px; cursor: pointer; font-weight: 800; color: #0b3764; }
.toggle-label { flex: 1; line-height: 1.2; }
.toggle-switch-input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.toggle-switch { position: relative; width: 62px; height: 34px; border-radius: 999px; background: #cbd5e1; box-shadow: inset 0 0 0 1px rgba(11,55,100,.16); flex: 0 0 auto; transition: background .18s ease; }
.toggle-switch::after { content: ""; position: absolute; top: 4px; left: 4px; width: 26px; height: 26px; border-radius: 50%; background: #fff; box-shadow: 0 4px 12px rgba(11,31,52,.25); transition: transform .18s ease; }
.toggle-switch-input:checked + .toggle-switch { background: #0b6fb8; }
.toggle-switch-input:checked + .toggle-switch::after { transform: translateX(28px); }
.toggle-switch-input:focus + .toggle-switch { outline: 3px solid rgba(37, 128, 196, .28); outline-offset: 3px; }

/* Users page readability fix */
.users-card{overflow:hidden;}
.user-list-header{
  display:grid;
  grid-template-columns: 1.1fr 1.35fr .8fr 3.2fr .55fr;
  gap:18px;
  padding:14px 16px;
  background:#f7faff;
  border-radius:14px;
  color:#607086;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:900;
  margin-bottom:10px;
}
.user-list{display:grid;gap:0;}
.user-row-card{
  display:grid;
  grid-template-columns: 1.1fr 1.35fr .8fr 3.2fr .55fr;
  gap:18px;
  align-items:start;
  padding:18px 16px;
  border-bottom:1px solid var(--line);
}
.user-row-card:last-child{border-bottom:0;}
.user-cell{min-width:0;}
.field-label{display:block;color:#607086;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:900;margin-bottom:6px;}
.field-label.second{margin-top:14px;}
.login-username{display:block;font-size:16px;word-break:break-word;}
.user-edit-grid{
  display:grid;
  grid-template-columns: minmax(190px,1fr) minmax(220px,1.1fr) minmax(150px,.75fr) minmax(145px,.7fr);
  gap:12px 14px;
  align-items:end;
  width:100%;
}
.user-edit-grid label{min-width:0;}
.user-edit-grid input,
.user-edit-grid select{
  min-height:48px;
  font-size:15px;
  padding:13px 14px;
  margin-top:6px;
}
.user-edit-grid .password-field{grid-column:span 2;}
.user-edit-grid button{min-height:48px;align-self:end;white-space:normal;}
.user-delete-cell .button{width:100%;min-width:86px;}
@media(max-width:1200px){
  .user-list-header{display:none;}
  .user-row-card{grid-template-columns:1fr;gap:14px;border:1px solid var(--line);border-radius:18px;margin-bottom:16px;background:#fff;}
  .user-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .user-delete-cell .button{width:auto;}
}
@media(max-width:720px){
  .user-edit-grid{grid-template-columns:1fr;}
  .user-edit-grid .password-field{grid-column:auto;}
  .user-edit-grid button,.user-delete-cell .button{width:100%;}
}

/* users-layout-fullwidth-edit-fix-1
   Force each user row to use a readable stacked layout on desktop and mobile.
   The edit/reset-password controls now span the full card width rather than being
   squeezed into the final table column. */
.users-card{overflow:visible;}
.user-list-header{display:none !important;}
.user-row-card{
  display:grid !important;
  grid-template-columns: minmax(180px, .9fr) minmax(220px, 1.1fr) minmax(150px, .7fr) minmax(110px, auto) !important;
  grid-template-areas:
    "login details role delete"
    "edit edit edit edit" !important;
  gap:18px 24px !important;
  align-items:start !important;
  padding:24px 18px !important;
  border:1px solid var(--line) !important;
  border-radius:22px !important;
  background:#fff !important;
  margin:0 0 18px 0 !important;
  box-shadow:0 10px 28px rgba(17,37,55,.04) !important;
}
.user-row-card .user-cell:nth-child(1){grid-area:login;}
.user-row-card .user-cell:nth-child(2){grid-area:details;}
.user-row-card .user-cell:nth-child(3){grid-area:role;}
.user-row-card .user-edit-cell{grid-area:edit;border-top:1px solid var(--line);padding-top:18px;}
.user-row-card .user-delete-cell{grid-area:delete;justify-self:end;}
.user-edit-grid{
  display:grid !important;
  grid-template-columns: minmax(220px,1fr) minmax(260px,1.15fr) minmax(180px,.8fr) minmax(160px,.7fr) minmax(240px,1fr) minmax(150px,auto) !important;
  gap:14px 16px !important;
  align-items:end !important;
  width:100% !important;
}
.user-edit-grid .password-field{grid-column:auto !important;}
.user-edit-grid input,
.user-edit-grid select{
  width:100% !important;
  min-width:0 !important;
  min-height:50px !important;
  font-size:15px !important;
  padding:14px 16px !important;
  box-sizing:border-box !important;
}
.user-edit-grid button{width:100% !important;min-height:52px !important;}
.user-delete-cell .button{min-width:96px !important;width:auto !important;}
@media(max-width:1100px){
  .user-row-card{
    grid-template-columns:1fr 1fr !important;
    grid-template-areas:
      "login role"
      "details details"
      "edit edit"
      "delete delete" !important;
  }
  .user-edit-grid{grid-template-columns:1fr 1fr !important;}
  .user-delete-cell{justify-self:start !important;}
}
@media(max-width:720px){
  .user-row-card{grid-template-columns:1fr !important;grid-template-areas:"login" "details" "role" "edit" "delete" !important;}
  .user-edit-grid{grid-template-columns:1fr !important;}
  .user-delete-cell .button{width:100% !important;}
}

/* Notifier aide memoire tooltips */
.notifier-aide-banner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 18px 0;
  padding: 14px 16px;
  border: 1px solid #d5e3ef;
  border-left: 5px solid #0b5cad;
  border-radius: 16px;
  background: #f4f9fd;
  color: #102a43;
}
.notifier-aide-banner[hidden], .notifier-upload-checklist[hidden] { display: none !important; }
.notifier-aide-banner.compact { margin-bottom: 14px; padding: 12px 14px; }
.notifier-aide-banner strong { display: block; font-size: .98rem; margin-bottom: 3px; }
.notifier-aide-banner p { margin: 0; line-height: 1.35; }
.notifier-upload-checklist {
  margin: 18px 0;
  padding: 18px;
  border: 1px solid #d9e3ee;
  border-radius: 18px;
  background: #fbfdff;
  text-align: left;
}
.notifier-upload-checklist h3 { margin: 0 0 10px 0; color: #0b3764; }
.notifier-upload-checklist ol { margin: 0 0 14px 20px; padding: 0; line-height: 1.55; }
.notifier-confirm-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #bfd2e5;
  border-radius: 14px;
  background: #fff;
  font-weight: 800;
  color: #12314f;
}
.notifier-confirm-checkbox input { margin-top: 3px; transform: scale(1.15); }
.notifier-download-card { border-left: 5px solid #0b5cad; }
.aide-tooltip {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  min-width: 22px;
  margin-left: 6px;
  border-radius: 999px;
  background: #0b5cad;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  cursor: help;
  vertical-align: middle;
}
.drop-tooltip { position: absolute; right: 16px; top: 16px; }
.search-tooltip { margin-left: 8px; align-self: center; }
.aide-tooltip-card {
  position: absolute;
  z-index: 30;
  right: 0;
  bottom: calc(100% + 10px);
  width: min(320px, 78vw);
  padding: 12px 14px;
  border: 1px solid #bfd2e5;
  border-radius: 14px;
  background: #fff;
  color: #102a43;
  box-shadow: 0 16px 45px rgba(6, 32, 55, .22);
  font-size: .88rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: left;
  opacity: 0;
  visibility: hidden;
  transform: translateY(4px);
  transition: opacity .14s ease, transform .14s ease, visibility .14s ease;
}
.aide-tooltip-card b { display: block; margin-bottom: 4px; color: #0b3764; }
.aide-tooltip:hover .aide-tooltip-card,
.aide-tooltip:focus .aide-tooltip-card,
.aide-tooltip:focus-within .aide-tooltip-card {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.drop-zone { position: relative; }
@media (max-width: 700px) {
  .notifier-aide-banner { flex-direction: column; }
  .aide-tooltip-card { right: auto; left: 0; }
  .search-tooltip .aide-tooltip-card { left: auto; right: 0; }
}

/* Notifier mandatory notes hold */
.pill.pending_notes { background: #fde8e8; color: #9b1c1c; }
.notifier-notes-required-panel { text-align: left; }
.notifier-notes-instruction {
  margin: 0 0 10px 0;
  padding: 10px 12px;
  border: 1px solid #f2b8b5;
  border-radius: 12px;
  background: #fff5f5;
  color: #8a1c16;
  line-height: 1.35;
}
.notifier-notes-blocking-message {
  max-width: 360px;
  line-height: 1.35;
  font-weight: 800;
  color: #8a1c16;
}

.notification-trigger-table td { vertical-align: top; }
.radio-line { display:block; margin:0 0 .35rem; font-weight:700; color:#17314d; }
.recipient-picker { margin:.55rem 0; padding:.65rem; border:1px solid #d8e5f2; border-radius:14px; background:#f8fbff; max-height:190px; overflow:auto; min-width:280px; }
.recipient-choice { display:block; padding:.35rem .15rem; font-weight:700; color:#11243a; }
.recipient-choice small { display:block; margin-left:1.55rem; color:#627186; font-weight:500; }

/* Notification page spacing and security alert polish */
.status-grid.three {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}
.status-card {
  padding: 16px 18px;
  border: 1px solid #d8e5f2;
  border-radius: 16px;
  background: #f8fbff;
  min-height: 72px;
}
.status-card span {
  display: block;
  color: #607086;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 6px;
}
.status-card strong {
  display: block;
  color: #14243a;
  font-size: 18px;
  line-height: 1.25;
}
.notification-trigger-table th,
.notification-trigger-table td {
  padding: 16px 14px;
}
.notification-trigger-table input[name="label"],
.notification-trigger-table input[name="description"] {
  min-width: 220px;
}
.notification-trigger-table .small-input {
  min-width: 90px;
}
.radio-line {
  margin-bottom: 8px;
  line-height: 1.35;
}
.recipient-picker {
  margin: 10px 0 12px;
}
.recipient-choice {
  padding: 7px 4px;
  line-height: 1.3;
}
.narrow-alert {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
.danger-panel {
  border: 1px solid #f2b8b5;
  background: #fff5f5;
  color: #8a1c16;
  border-radius: 16px;
  padding: 18px;
  line-height: 1.45;
}
.security-block-card h2 {
  color: #8a1c16;
}
@media(max-width:900px){
  .status-grid.three { grid-template-columns: 1fr; }
}


/* Notification page spacing fix */
.notification-status-grid {
  clear: both;
  margin: 18px 0 8px;
  align-items: stretch;
}
.notification-status-grid .status-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  min-width: 0;
  word-break: break-word;
}
.notification-status-grid .status-card strong {
  letter-spacing: .01em;
}
.notification-trigger-table td { min-width: 90px; }
.notification-trigger-table td:nth-child(6) { min-width: 340px; }
.user-create-form { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media(max-width:1000px){ .user-create-form { grid-template-columns: 1fr; } }

/* Parser module health indicators */
.parser-health-summary {
  margin: 18px 0 20px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,0.72);
  color: var(--ink);
}
.parser-health-summary.remote-on { border-left: 5px solid #13a05f; }
.parser-health-summary.local-mode { border-left: 5px solid #1b75bb; }
.parser-modules-table th, .parser-modules-table td { vertical-align: top; }
.parser-key-cell { min-width: 190px; overflow-wrap: anywhere; }
.parser-health-cell { min-width: 230px; }
.parser-health-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 6px 10px;
  font-weight: 800;
  font-size: 0.82rem;
  letter-spacing: .02em;
}
.parser-health-badge::before {
  content: '';
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: currentColor;
}
.parser-health-badge.healthy { color: #0f7a43; background: #dff6ea; }
.parser-health-badge.degraded { color: #8a5a00; background: #fff1cc; }
.parser-health-badge.offline, .parser-health-badge.unconfigured { color: #9d1c16; background: #fde2df; }
.parser-health-badge.local { color: #075a9b; background: #dceeff; }
.parser-health-detail { margin-top: 8px; line-height: 1.45; }
.parser-health-details { margin-top: 8px; }
.parser-health-details summary { cursor: pointer; font-weight: 800; color: var(--blue); }
.parser-health-details div { margin-top: 8px; overflow-wrap: anywhere; }

.download-system-line { margin: 0.25rem 0 0.3rem; color: #102033; font-size: 0.96rem; line-height: 1.35; }
.download-system-line strong { color: #0b3a6a; letter-spacing: .02em; }


/* vault-password-reset-field-fix-1 */
.password-reset-panel{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(220px,auto);
  gap:14px;
  align-items:end;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#f8fbff;
}
.password-reset-panel .password-field{grid-column:auto !important;}
.password-reset-panel button{width:100%;min-height:52px;}
.dashboard-export-card .muted.small{margin-top:10px;line-height:1.35;}
@media(max-width:760px){.password-reset-panel{grid-template-columns:1fr;}.password-reset-panel button{width:100%;}}

/* vault-v6-layout-and-version-delete-fix
   Keeps admin/dashboard cards compact, makes version-history tables readable,
   and aligns the Users reset-password controls. */
.page-shell { max-width: 1280px; }
.mode-grid.engineer-modes {
  max-width: 940px !important;
  gap: 22px !important;
}
.engineer-modes .mode-card {
  min-height: 390px !important;
  padding: 30px !important;
}
.download-mode-card .big-find-button {
  width: 100% !important;
  min-height: 100px !important;
  font-size: 25px !important;
  white-space: normal !important;
}
.dashboard-drop-form { margin-top: 62px !important; }
.mini-drop-zone { min-height: 200px !important; }

.download-card {
  width: min(1120px, calc(100vw - 64px)) !important;
  max-width: 1120px !important;
  overflow: visible !important;
}
.download-result-card { overflow: hidden !important; }
.download-latest-row {
  grid-template-columns: minmax(260px,1.45fr) minmax(150px,.55fr) minmax(230px,auto) !important;
}
.version-history-panel { overflow-x: auto !important; }
.version-history-table,
.asset-version-table {
  min-width: 920px !important;
  table-layout: auto !important;
}
.version-history-table th,
.version-history-table td,
.asset-version-table th,
.asset-version-table td {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  vertical-align: middle !important;
}
.version-history-table th:nth-child(1), .version-history-table td:nth-child(1) { min-width: 78px; }
.version-history-table th:nth-child(2), .version-history-table td:nth-child(2),
.version-history-table th:nth-child(3), .version-history-table td:nth-child(3) { min-width: 170px; }
.version-history-table th:nth-child(4), .version-history-table td:nth-child(4) { min-width: 110px; }
.version-history-table th:nth-child(5), .version-history-table td:nth-child(5) { min-width: 150px; }
.version-history-table th:nth-child(6), .version-history-table td:nth-child(6),
.version-history-table th:nth-child(7), .version-history-table td:nth-child(7),
.version-history-table th:nth-child(8), .version-history-table td:nth-child(8) {
  min-width: 105px;
  text-align: center;
}
.table-scroll { overflow-x: auto; max-width: 100%; }
.version-actions { align-items: center; flex-wrap: wrap; }
.version-actions form { margin: 0; }
.small-button.button.danger,
button.small-button.button.danger { padding: 8px 12px !important; min-height: 38px; box-shadow: none; }

.users-card { overflow: visible !important; }
.user-edit-grid {
  grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
  align-items: end !important;
}
.password-reset-panel {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: minmax(320px, 1fr) minmax(260px, auto) !important;
  gap: 14px !important;
  align-items: end !important;
  margin-top: 4px !important;
}
.password-reset-panel .password-field { grid-column: auto !important; }
.password-reset-panel button { min-height: 52px !important; white-space: normal !important; }
@media(max-width:900px){
  .mode-grid.engineer-modes { grid-template-columns: 1fr !important; max-width: 620px !important; }
  .download-card { width: min(100%, calc(100vw - 28px)) !important; }
  .download-latest-row { grid-template-columns: 1fr !important; }
  .user-edit-grid { grid-template-columns: 1fr !important; }
  .password-reset-panel { grid-template-columns: 1fr !important; }
}

/* Company-library / partner branding */
.app-pill-partner{display:flex;align-items:center;gap:12px;min-width:max-content;padding-right:16px;white-space:nowrap;}
.partner-copy{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;opacity:.8;}
.partner-name{font-weight:800;letter-spacing:.08em;}
.partner-logo{max-height:30px;max-width:160px;object-fit:contain;background:#fff;border-radius:8px;padding:3px 8px;}
.company-admin-logo{max-height:42px;max-width:180px;object-fit:contain;background:#fff;border:1px solid #d9e6f2;border-radius:10px;padding:5px 8px;}
.inline-form{display:flex;gap:10px;align-items:center;}
.inline-form select{min-width:220px;}
@media (max-width:900px){.app-pill-partner{white-space:normal;flex-wrap:wrap;}.partner-logo{max-width:120px}.inline-form{flex-direction:column;align-items:stretch}}

/* Notifications admin rework */
.notification-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:18px;align-items:start;}
.settings-panel{border:1px solid #d9e6f2;border-radius:18px;padding:18px;background:#f8fbff;display:grid;gap:12px;}
.settings-panel h3{margin:0 0 4px 0;}
.settings-panel label{display:grid;gap:6px;font-weight:800;color:#142033;}
.settings-panel input,.trigger-card input{width:100%;}
.check-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:8px!important;font-weight:800;}
.check-line input{width:auto!important;}
.settings-actions{grid-column:1/-1;display:flex;justify-content:flex-end;}
.notification-test-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:14px;margin-top:16px;border-top:1px solid #d9e6f2;padding-top:16px;}
.notification-action-row{display:flex;gap:14px;flex-wrap:wrap;}
.status-row.compact{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.trigger-card-list{display:grid;gap:16px;}
.trigger-card{border:1px solid #d9e6f2;border-radius:18px;padding:16px;background:#fff;display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(180px,.7fr) minmax(320px,1.4fr) auto;gap:16px;align-items:start;}
.trigger-main,.trigger-options,.trigger-recipients{display:grid;gap:10px;}
.trigger-main label,.trigger-options label{display:grid;gap:6px;font-weight:800;}
.trigger-save{display:flex;align-items:end;height:100%;}
.compact-picker{max-height:180px;overflow:auto;border:1px solid #d9e6f2;border-radius:12px;padding:8px;background:#f8fbff;}
.compact-picker .recipient-choice{padding:7px 4px;border-bottom:1px solid #e7eef6;}
.compact-picker .recipient-choice:last-child{border-bottom:0;}
@media(max-width:1100px){.trigger-card{grid-template-columns:1fr 1fr}.trigger-recipients,.trigger-save{grid-column:1/-1}.trigger-save{justify-content:flex-end}}
@media(max-width:800px){.notification-settings-grid,.notification-test-grid,.trigger-card{grid-template-columns:1fr}.settings-actions,.trigger-save{justify-content:stretch}.trigger-save button{width:100%;}}
