/* EDRISI CUSTOMER PORTAL V1 2026 */
:root{--portal-green:#0d4b3b;--portal-deep:#082f26;--portal-gold:#cda85e;--portal-bg:#f2f6f3;--portal-card:#fff;--portal-line:#dce7e2;--portal-muted:#66766f;--portal-danger:#982f2f}
*{box-sizing:border-box}
.portal-body{margin:0;background:linear-gradient(145deg,#f9f7f1 0%,#edf5f1 55%,#f8faf8 100%);color:#172b25;font-family:Tahoma,Arial,sans-serif;min-height:100vh}
.portal-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px max(20px,calc((100vw - 1180px)/2));border-bottom:1px solid #dbe7e1;background:#fffdfaeF;backdrop-filter:blur(12px)}
.portal-brand{display:flex;align-items:center;gap:10px;color:var(--portal-green);text-decoration:none}
.portal-brand img{width:53px;height:53px;object-fit:contain;border-radius:11px}
.portal-brand strong,.portal-brand small{display:block}
.portal-brand strong{font-size:15px}.portal-brand small{margin-top:3px;color:#9d782f;font-size:11px}
.portal-topbar nav{display:flex;gap:9px}.portal-topbar nav a{padding:9px 12px;border:1px solid #cbdad4;border-radius:10px;color:var(--portal-green);font-size:12px;font-weight:800;text-decoration:none}
.portal-login-shell{display:grid;min-height:calc(100vh - 80px);place-items:center;padding:30px 12px}
.portal-login-card{width:min(620px,100%);padding:38px;border:1px solid var(--portal-line);border-radius:26px;background:#fff;box-shadow:0 26px 75px #103b3020;text-align:center}
.portal-login-icon{display:grid;width:66px;height:66px;margin:0 auto 13px;place-items:center;border-radius:20px;background:var(--portal-green);color:#fff;font-size:32px}
.portal-kicker{margin:0;color:#a27729;font-size:12px;font-weight:900}
.portal-login-card h1{margin:7px 0 10px;color:var(--portal-green);font-size:34px}
.portal-login-card>p:not(.portal-kicker):not(.portal-security-note){margin:0 auto;color:var(--portal-muted);line-height:1.9}
.portal-login-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px;text-align:right}
.portal-login-form label{display:grid;gap:7px;font-size:13px;font-weight:900}
.portal-login-form input{width:100%;min-height:52px;padding:12px 14px;border:1px solid #bfd0c9;border-radius:12px;background:#fff;font:inherit;outline:0}
.portal-login-form input:focus{border-color:#19775e;box-shadow:0 0 0 3px #19775e19}
.portal-login-form button{grid-column:1/-1;min-height:54px;border:0;border-radius:13px;background:var(--portal-green);color:#fff;font:900 16px Tahoma,Arial,sans-serif;cursor:pointer}
.portal-security-note{margin:16px 0 0!important;color:#708078!important;font-size:11px;line-height:1.7}
.portal-notice{margin:16px 0;padding:13px 15px;border-radius:12px;line-height:1.8;font-weight:700;text-align:right}.portal-notice.error{background:#fff0f0;color:var(--portal-danger)}
.portal-dashboard{width:min(1180px,calc(100% - 24px));margin:28px auto 70px}
.portal-welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 27px;border-radius:22px;background:linear-gradient(135deg,var(--portal-green),var(--portal-deep));color:#fff;box-shadow:0 18px 45px #0c403525}
.portal-welcome h1{margin:6px 0;font-size:27px}.portal-welcome p{margin:0;color:#d4e4de;line-height:1.7}.portal-welcome .portal-kicker{color:#dfbf7d}
.portal-status{display:inline-flex;align-items:center;justify-content:center;min-width:135px;padding:11px 15px;border:1px solid #ffffff44;border-radius:999px;background:#ffffff14;font-size:13px;font-weight:900;text-align:center}
.portal-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:16px 0}
.portal-summary-grid article{padding:18px;border:1px solid var(--portal-line);border-radius:17px;background:#fff;box-shadow:0 9px 24px #103f3410}
.portal-summary-grid span,.portal-summary-grid strong,.portal-summary-grid small{display:block}.portal-summary-grid span{color:var(--portal-muted);font-size:11px}.portal-summary-grid strong{margin:7px 0 5px;color:var(--portal-green);font-size:16px;line-height:1.6}.portal-summary-grid small{color:#829089;font-size:10px;line-height:1.6}
.payment-paid{color:#08734c!important}.payment-pending{color:#9a6717!important}
.portal-card{padding:22px;border:1px solid var(--portal-line);border-radius:20px;background:#fff;box-shadow:0 10px 30px #103f340c}
.portal-card-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.portal-card-title span{color:#a17427;font-size:11px;font-weight:900}.portal-card-title strong{color:var(--portal-green);font-size:17px}
.portal-progress{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;counter-reset:none}
.portal-progress li{position:relative;display:grid;justify-items:center;gap:8px;color:#9aa6a1;font-size:11px;font-weight:800;text-align:center}
.portal-progress li:not(:last-child):after{position:absolute;top:18px;right:calc(50% + 24px);width:calc(100% - 48px);height:3px;background:#dfe7e3;content:""}
.portal-progress li b{position:relative;z-index:2;display:grid;width:38px;height:38px;place-items:center;border:3px solid #dfe7e3;border-radius:50%;background:#fff;color:#a0aaa6}
.portal-progress li.done{color:var(--portal-green)}.portal-progress li.done b{border-color:#74bca7;background:#e9f7f1;color:var(--portal-green)}.portal-progress li.done:not(:last-child):after{background:#74bca7}.portal-progress li.current b{border-color:var(--portal-gold);box-shadow:0 0 0 5px #cda85e21}
.portal-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:15px 0}
.portal-muted{color:var(--portal-muted);font-size:12px;line-height:1.8}
.portal-success-block{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;background:#eaf8f2;color:#096447}.portal-success-block>b{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:#0c7d5d;color:#fff}.portal-success-block strong,.portal-success-block small{display:block}.portal-success-block small{margin-top:3px;color:#53766a}
.portal-payment-buttons,.portal-download-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.portal-primary,.portal-secondary,.portal-disabled{display:flex;align-items:center;justify-content:center;min-height:47px;border-radius:11px;padding:10px 12px;font:800 12px Tahoma,Arial,sans-serif;text-align:center;text-decoration:none}
.portal-primary{border:0;background:var(--portal-green);color:#fff}.portal-secondary{border:1px solid #b9cbc4;background:#fff;color:var(--portal-green);cursor:pointer}.portal-secondary.button{margin:0}.portal-disabled{border:1px dashed #d3ddd9;background:#f7f9f8;color:#89958f}
.portal-bank-details{margin:13px 0 0;padding:12px;border-radius:13px;background:#f5f8f7}.portal-bank-details>div{display:grid;grid-template-columns:100px 1fr;gap:9px;padding:6px;border-bottom:1px dashed #d8e2de;font-size:11px}.portal-bank-details>div:last-child{border:0}.portal-bank-details dt{color:var(--portal-muted)}.portal-bank-details dd{margin:0;font-weight:800;overflow-wrap:anywhere}
.portal-vat-mini{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.portal-vat-mini>*{padding:6px 8px;border-radius:8px;background:#f1f6f3;color:#52675f;font-size:9px}.portal-vat-mini strong{background:#fff6e3;color:#7a581d}
.portal-history-card{margin-top:15px}.portal-history{display:grid;gap:0}.portal-history>div{display:grid;grid-template-columns:125px 1fr;gap:18px;padding:11px;border-bottom:1px dashed #dae4e0;font-size:11px;line-height:1.7}.portal-history>div:last-child{border:0}.portal-history time{color:#839089}.portal-history span{font-weight:700}
.portal-help{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px;padding:20px 23px;border:1px solid #d8c9aa;border-radius:18px;background:#fffaf0}.portal-help strong,.portal-help span{display:block}.portal-help strong{color:var(--portal-green)}.portal-help span{margin-top:5px;color:var(--portal-muted);font-size:11px}.portal-help a{padding:11px 15px;border-radius:10px;background:var(--portal-gold);color:#172b25;font-size:12px;font-weight:900;text-decoration:none}

.customer-order-retrieval.portal-mode{grid-template-columns:72px minmax(0,1fr) minmax(300px,.72fr)!important;align-items:center!important}
.portal-home-action{display:grid;gap:7px}.portal-home-action>a{display:grid;grid-template-columns:44px 1fr 20px;align-items:center;gap:11px;padding:13px;border:1px solid #d5c39c;border-radius:15px;background:#fffaf0;color:#163f35;text-decoration:none}.portal-home-action>a>b{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;background:var(--portal-green);color:#fff}.portal-home-action>a strong,.portal-home-action>a small{display:block}.portal-home-action>a small{margin-top:3px;color:#6f7e77;font-size:9px}.portal-home-action>a i{color:#a87d31;font-style:normal;font-size:18px;font-weight:900}.portal-home-action>small{color:#78867f;font-size:9px;text-align:center}

@media(max-width:900px){.portal-summary-grid{grid-template-columns:1fr 1fr}.customer-order-retrieval.portal-mode{grid-template-columns:60px 1fr!important}.portal-home-action{grid-column:1/-1}}
@media(max-width:650px){
  .portal-topbar{padding:9px 10px}.portal-brand img{width:43px;height:43px}.portal-brand strong{font-size:11px}.portal-brand small{font-size:8px}.portal-topbar nav a{padding:8px;font-size:9px}.portal-topbar nav .portal-logout{display:none}
  .portal-login-shell{padding:12px 7px}.portal-login-card{padding:27px 18px}.portal-login-card h1{font-size:28px}.portal-login-form{grid-template-columns:1fr}
  .portal-dashboard{width:calc(100% - 12px);margin:10px auto 75px}.portal-welcome{align-items:flex-start;padding:20px 16px}.portal-welcome h1{font-size:20px}.portal-status{min-width:100px;padding:9px;font-size:10px}
  .portal-summary-grid{grid-template-columns:1fr 1fr;gap:7px;margin:8px 0}.portal-summary-grid article{padding:13px 11px}.portal-summary-grid strong{font-size:13px}.portal-card{padding:16px;border-radius:16px}.portal-card-title strong{font-size:14px}
  .portal-progress{grid-template-columns:1fr}.portal-progress li{grid-template-columns:38px 1fr;align-items:center;justify-items:start;text-align:right;padding:5px 0}.portal-progress li:not(:last-child):after{top:44px;right:18px;width:3px;height:calc(100% - 16px)}
  .portal-actions-grid{grid-template-columns:1fr;gap:8px;margin:8px 0}.portal-payment-buttons,.portal-download-actions{grid-template-columns:1fr}.portal-history>div{grid-template-columns:1fr;gap:3px}.portal-help{align-items:stretch;flex-direction:column}.portal-help a{text-align:center}
  .customer-order-retrieval.portal-mode{grid-template-columns:1fr!important;text-align:center}.customer-order-retrieval.portal-mode .retrieval-icon{margin:auto}.portal-home-action>a{text-align:right}
}
/* END EDRISI CUSTOMER PORTAL V1 2026 */
