:root{
  --mint:#2ca56f;
  --mint-dark:#1d7e55;
  --ink:#1d2430;
  --muted:#667085;
  --line:#d9dee7;
  --bg:#f6f8fb;
  --card:#ffffff;
  --warn:#fff8e6;
  --danger:#b42318;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink)}
button,input,select,textarea{font:inherit}
a{color:inherit}
.shell{min-height:100vh}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 28px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:3}
.brand{display:flex;gap:18px;align-items:center}
.interac-logo{display:block;width:64px;height:64px;object-fit:contain}
.mint-logo{display:block;width:230px;height:auto;object-fit:contain}
.topbar-interac{width:40px;height:40px}
.topbar-mint{width:155px}
.customer-brand{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:8px}
.customer-brand .interac-logo{width:72px;height:72px}
.customer-brand .mint-logo{width:255px;max-width:62%}
.mode-switch{display:flex;gap:8px}.mode-switch button{border:1px solid var(--line);background:#fff;padding:8px 12px;border-radius:9px;cursor:pointer}.mode-switch button.active{background:var(--ink);color:#fff}
.wrap{max-width:1040px;margin:34px auto;padding:0 20px 50px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 8px 25px rgba(16,24,40,.06)}
h1{font-size:34px;margin:0 0 10px}.lead{font-size:18px;line-height:1.6;color:#344054}.subtle{color:var(--muted);font-size:14px}.section{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.section h2{font-size:21px;margin:0 0 12px}.section h3{font-size:17px;margin:18px 0 8px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
label{display:block;font-weight:650;font-size:14px;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #cfd6df;border-radius:10px;background:#fff}.field textarea{min-height:100px;resize:vertical}
.req:after{content:" *";color:var(--danger)}.radio-list,.check-list{display:grid;gap:10px;margin-top:10px}.choice{border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:#fff;display:flex;gap:10px;align-items:flex-start}
.choice input{margin-top:3px}.notice{background:#f1fbf6;border:1px solid #bee8d0;padding:14px 16px;border-radius:12px}.warning{background:var(--warn);border:1px solid #f3d99b;padding:14px 16px;border-radius:12px}
.actions{display:flex;justify-content:space-between;gap:12px;margin-top:30px}.btn{border:none;border-radius:10px;padding:12px 18px;font-weight:700;cursor:pointer}.btn-primary{background:var(--mint);color:#fff}.btn-secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn-dark{background:var(--ink);color:#fff}.btn-link{background:none;border:none;color:var(--mint-dark);padding:0;cursor:pointer;font-weight:700}
.progress{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 0}.step{font-size:12px;padding:7px 10px;border-radius:999px;background:#eef1f5;color:#667085}.step.active{background:#daf5e6;color:#12613f;font-weight:700}.step.done{background:#e9eef5;color:#344054}
.upload{border:2px dashed #cbd5e1;border-radius:14px;padding:22px;text-align:center;background:#fbfcfe}.upload input{margin-top:10px}.doc-sample{height:150px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#fff,#f7f8fa);padding:16px;position:relative}.stamp{position:absolute;right:22px;bottom:26px;border:3px solid #b42318;color:#b42318;padding:10px 14px;font-weight:800;transform:rotate(-8deg);border-radius:4px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.pill{display:inline-block;padding:6px 9px;border-radius:999px;background:#eef2f6;font-size:12px}.status-submitted{background:#e9f2ff;color:#175cd3}.status-ready{background:#ecfdf3;color:#027a48}.status-progress{background:#fff7ed;color:#c4320a}.status-new{background:#f2f4f7;color:#344054}
.table{width:100%;border-collapse:collapse;margin-top:12px}.table th,.table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.table th{font-size:12px;color:var(--muted);text-transform:uppercase}.table tr:hover{background:#fafbfc}.clickable{cursor:pointer}
.kpi{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.kpi b{font-size:28px;display:block}.sidebar-layout{display:grid;grid-template-columns:260px 1fr;gap:20px}.sidebar{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;height:max-content}.sidebar button{width:100%;text-align:left;padding:10px 12px;border:none;background:none;border-radius:9px;cursor:pointer}.sidebar button.active{background:#edf8f2;color:var(--mint-dark);font-weight:700}
summary{cursor:pointer;font-weight:700}.summary-box{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff}.review-box{border:1px solid var(--line);border-radius:14px;padding:18px;margin-top:16px}.review-box h3{margin-top:0}.kv{display:grid;grid-template-columns:210px 1fr;gap:8px 18px}.kv div:nth-child(odd){color:var(--muted)}
.success{text-align:center;padding:34px}.success .check{font-size:52px}.small{font-size:13px}.hidden{display:none !important}
@media (max-width:760px){.grid,.grid3,.sidebar-layout{grid-template-columns:1fr}.topbar{padding:12px 14px}.wrap{margin-top:20px}.card{padding:20px}.kv{grid-template-columns:1fr}.mode-switch{display:none}h1{font-size:28px}.topbar-interac{width:34px;height:34px}.topbar-mint{width:130px}.customer-brand .interac-logo{width:58px;height:58px}.customer-brand .mint-logo{width:200px;max-width:66%}}

.doc-example-wrap{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
.doc-example-image{display:block;width:100%;max-width:760px;height:auto;border-radius:10px;border:1px solid #e5e7eb;margin:0 auto;box-shadow:0 6px 18px rgba(16,24,40,.08)}
.file-picked{margin-top:10px;padding:8px 10px;border-radius:9px;background:#eef7f2;color:#245f45;font-size:13px}
.btn:disabled{opacity:.55;cursor:not-allowed}


/* Compact Mint review workstation */
.review-wrap{max-width:1240px}
.review-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:14px 0 16px}
.review-status-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.review-status-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;background:#fff;border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--muted)}
.review-status-chip b{color:var(--ink)}
.review-status-dot{width:9px;height:9px;border-radius:50%;background:#f79009}
.review-status-chip.complete{background:#ecfdf3;border-color:#abefc6;color:#027a48}
.review-status-chip.complete .review-status-dot{background:#12b76a}
.review-grid{display:grid;grid-template-columns:1fr;gap:16px}
.review-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 18px rgba(16,24,40,.05);overflow:hidden}
.review-card.full-span{grid-column:1/-1}
.review-card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line);background:#fbfcfe}
.review-card-head>div:first-child{display:flex;align-items:center;gap:10px}
.review-card-head h2{font-size:18px;margin:0}
.section-number{width:28px;height:28px;border-radius:999px;background:#daf5e6;color:#12613f;display:grid;place-items:center;font-weight:800;font-size:13px}
.review-card-body{padding:16px 18px}
.two-pane{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:18px}
.mint-review-panel{background:#f8fafc;border:1px solid #e5eaf1;border-radius:12px;padding:14px}
.mint-review-panel h3{margin:0 0 10px;font-size:15px}
.compact-kv{grid-template-columns:170px 1fr;font-size:13px;gap:6px 12px}
.atm-kv{grid-template-columns:180px 1fr 160px 1fr;gap:8px 14px;font-size:13px}
.compact-checks{gap:7px}
.compact-checks .choice{padding:9px 10px;font-size:13px;margin:0}
.customer-confirmations{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.customer-confirmations summary{font-size:13px;color:var(--muted)}
.customer-confirmations .check-list{margin-top:10px}
.verified-fields{padding:0 18px 18px;border-top:1px solid var(--line);margin-top:0}
.verified-fields h3{font-size:15px;margin:14px 0 10px}
.standard-values{margin-top:14px;background:#fbfcfe}
.decision-card{padding-bottom:0}
.decision-card .field{padding:16px 18px 0}
.review-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 18px 18px}
.btn-correction{background:#fff;color:#b42318;border:1px solid #f0b7b1}
.btn-correction:hover{background:#fff5f4}
.status-correction{background:#fff1f0;color:#b42318}
@media (max-width:900px){.review-grid{grid-template-columns:1fr}.two-pane{grid-template-columns:1fr}.atm-kv{grid-template-columns:160px 1fr}.review-card.full-span{grid-column:auto}.review-actions{flex-direction:column-reverse}.review-actions .btn{width:100%}}

.build-badge{font-size:11px;font-weight:800;letter-spacing:.02em;padding:5px 8px;border-radius:999px;background:#eef4ff;color:#3538cd;border:1px solid #c7d7fe;white-space:nowrap}

.btn-doc{background:#175cd3;color:#fff;border:1px solid #175cd3;box-shadow:0 1px 2px rgba(16,24,40,.08)}
.btn-doc:hover{background:#1849a9;border-color:#1849a9}
.btn-doc:disabled{background:#b2c8ed;border-color:#b2c8ed;color:#fff}


/* Customer correction composer */
.correction-panel{margin:4px 18px 20px;padding:18px;border:1px solid #f0b7b1;border-radius:14px;background:#fffafa}
.correction-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}
.correction-head h3{margin:0 0 4px;font-size:18px}
.correction-issues{background:#fff;border:1px solid #f3d0cc;border-radius:12px;padding:12px 14px;margin-bottom:14px}
.correction-issues ul{margin:8px 0 0;padding-left:20px}
.correction-issues li{margin:5px 0;line-height:1.45}
.correction-fields{margin-bottom:12px}
.inline-input-action{display:flex;gap:8px}
.inline-input-action input{flex:1;min-width:0}
.correction-message{min-height:230px!important;line-height:1.5}
.correction-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:14px}
.btn-correction-solid{background:#b42318;color:#fff;border:1px solid #b42318}
.btn-correction-solid:hover{background:#912018}
@media (max-width:760px){.inline-input-action{flex-direction:column}.correction-actions{flex-direction:column}.correction-actions .btn{width:100%}}

/* Required-field guidance */
.required-banner{margin-top:16px;padding:11px 14px;border:1px solid #f0c36d;border-radius:10px;background:#fff8e6;color:#7a4b00;font-size:13px;font-weight:700}
.req-text{color:#b42318}
.req-heading:after{content:" *";color:var(--danger)}
.customer-nav{margin-top:22px}
.validation-hint{text-align:right;margin-bottom:-18px;color:var(--muted)}
.btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}
@media (max-width:760px){.validation-hint{text-align:left;margin-bottom:8px}}

/* Customer correction flow v7 */
.correction-resubmitted{margin-bottom:16px;border-color:#abefc6;background:#ecfdf3}
.correction-customer-card{max-width:980px;margin:0 auto}
.correction-customer-hero{margin-top:24px;padding-bottom:8px}
.correction-customer-hero .pill{margin-bottom:10px}
.correction-customer-issues{margin-top:20px;padding:18px 20px;border:1px solid #f0b7b1;background:#fff5f4;border-radius:14px}
.correction-customer-issues h2{margin:0 0 8px;font-size:19px;color:#912018}
.correction-customer-issues ul{margin:0;padding-left:22px}
.correction-customer-issues li{margin:7px 0;line-height:1.5}
.correction-customer-section{margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff}
.correction-customer-section h2{margin:0 0 8px;font-size:21px}
.correction-submit-actions{justify-content:flex-end}
@media(max-width:760px){.correction-customer-section{padding:16px}}


/* Secure Mint Admin authentication */
.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 18px;background:linear-gradient(180deg,#f6f8fb,#eef3f7)}
.auth-card{width:min(520px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;box-shadow:0 18px 50px rgba(16,24,40,.10)}
.auth-brand{margin-bottom:18px}
.auth-brand .interac-logo{width:58px;height:58px}
.auth-brand .mint-logo{width:230px;max-width:66%}
.auth-submit{width:100%;margin-top:20px}
.auth-link{display:block;margin:18px auto 0}
.auth-error{background:#fff1f0;border:1px solid #f3b7b2;color:#9b1c13;padding:12px 14px;border-radius:12px;margin:14px 0}
.auth-help{text-align:center;margin-top:20px}
.auth-version{display:inline-block;margin-bottom:14px}
.auth-loading{text-align:center;font-weight:700;padding:28px 0;color:var(--muted)}
.auth-uid{word-break:break-all;font-size:12px}
