:root{--blue:#123b70;--green:#15965d;--bg:#f3f8fb}*{box-sizing:border-box}body{margin:0;font-family:Arial,Tahoma;background:var(--bg);color:#19324c;line-height:1.7}header{display:flex;justify-content:space-between;align-items:center;padding:18px 7%;background:white}header b{font-size:23px;color:var(--blue)}header b span{color:var(--green)}nav{display:flex;gap:22px}a{color:inherit;text-decoration:none}.hero{padding:75px 9%;display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;background:linear-gradient(120deg,#eaf2fb,#e8f7ef)}h1{font-size:clamp(32px,5vw,52px);color:var(--blue);line-height:1.25}.btn{display:inline-block;background:var(--green);color:white;border:0;border-radius:10px;padding:12px 22px;margin-top:12px;cursor:pointer}.panel,.grid article,.auth{background:white;padding:24px;border-radius:18px;box-shadow:0 12px 35px #123b7012}.metric{background:#f2f7fa;padding:15px;margin:12px 0;border-radius:10px}.metric strong{float:left;color:var(--green)}.chart{font-size:42px;color:var(--green);text-align:center}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:20px 8%}.grid article{text-align:center}section:not(.hero){text-align:center;padding:40px 5%}footer{text-align:center;padding:25px}.auth{max-width:430px;margin:8vh auto}.auth label{display:block;margin:15px 0}.auth input{display:block;width:100%;padding:12px;border:1px solid #ccd9e4;border-radius:8px;margin-top:5px}@media(max-width:700px){.hero{grid-template-columns:1fr;padding:40px 6%}.grid{grid-template-columns:1fr}header{flex-wrap:wrap;gap:12px}}
:root{--ink:#172b4d;--muted:#718096;--line:#e6edf4;--surface:#fff;--nav:#10243d;--accent:#176b55;--accent2:#e8f5ef;--blue:#2563a6}body.app{background:#f4f7fb;color:var(--ink);font-family:Tahoma,Arial,sans-serif}.layout{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:var(--nav);color:#dce7f4;padding:26px 18px}.brand{font-size:22px;font-weight:800;color:white;margin:0 10px 35px}.brand span{color:#61d5a3}.side-link{display:block;padding:12px 14px;border-radius:10px;color:#dce7f4;margin:5px 0}.side-link.active,.side-link:hover{background:#ffffff18;color:white}.main{padding:28px 34px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:15px}.topbar h1{font-size:26px;margin:0;color:var(--ink)}.muted{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}.stat,.box{background:white;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 6px 22px #1b36500a}.stat small{color:var(--muted)}.stat strong{display:block;font-size:26px;margin-top:8px}.box{margin:18px 0}.box h2{font-size:18px;margin:0 0 16px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:620px}th,td{text-align:right;padding:13px;border-bottom:1px solid var(--line);font-size:14px}th{color:var(--muted);font-weight:600;background:#fafbfd}.badge{display:inline-block;padding:4px 10px;border-radius:20px;background:#fff4d8;color:#946200;font-size:12px}.badge.ok{background:#e4f7ec;color:#167144}.badge.no{background:#ffeded;color:#b42318}.btn{border:0;border-radius:9px;padding:10px 16px;background:var(--accent);color:white;cursor:pointer;font-weight:700}.btn.secondary{background:#eaf0f7;color:#29435f}.btn.danger{background:#b42318}.field{margin:14px 0}.field label{display:block;font-size:14px;font-weight:700;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #d6e0ea;border-radius:9px;background:white;font:inherit}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.notice{padding:14px;border-radius:10px;background:#eef6ff;color:#24527e;margin:14px 0}.upload{border:2px dashed #b8c9d8;padding:25px;border-radius:13px;text-align:center;background:#fafcff}.plan{border:1px solid var(--line);border-radius:14px;padding:18px}.plan strong{font-size:23px}.actions{display:flex;gap:8px;flex-wrap:wrap}.chart-bars{height:155px;display:flex;align-items:end;gap:12px;padding:15px 5px}.chart-bars i{flex:1;background:linear-gradient(#4da98b,#176b55);border-radius:7px 7px 0 0;min-height:12px}.lang{padding:8px;border:1px solid var(--line);border-radius:8px;background:white}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.layout{grid-template-columns:1fr}.sidebar{padding:12px;display:flex;gap:5px;overflow:auto}.brand{display:none}.side-link{white-space:nowrap}.main{padding:20px}}@media(max-width:560px){.cards,.form-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.main{padding:16px}}

/* Algerian national identity theme */
:root{--green:#006633;--green2:#0b8f4b;--navy:#063b28;--ink:#102b20;--bg:#f2f8f3;--line:#dcebe0}
body{background:var(--bg)}
.btn,.searchbar button,.category,.dash-main button{background:linear-gradient(135deg,#006633,#0b9951)}
.public-header{border-bottom:3px solid #006633}
.hero-main{background:linear-gradient(110deg,#e7f5eb,#f7fff8 48%,#cdebd6)}
.hero-aside,.register-promo{background:linear-gradient(145deg,#063b28,#006633 65%,#0b9951)}
.dash-sidebar{background:linear-gradient(180deg,#052f20,#075b35)}
.dash-nav.active,.dash-nav:hover{background:linear-gradient(90deg,#0b9951,#006633)}
.dash-stat:nth-child(1),.dash-stat:nth-child(2),.dash-stat:nth-child(3),.dash-stat:nth-child(4){background:linear-gradient(135deg,#087a43,#064c2c)}
.payment-hero{background:linear-gradient(110deg,#063b28,#087a43)}
.account-panel{background:#eef8f0}.account-panel b{color:#006633}
.method:has(input:checked){border-color:#078747;background:#f0fff4}
.hero-main:before{content:'';background:url('../algeria-flag.svg') center/contain no-repeat;width:150px;height:100px;left:4%;top:18px;opacity:.2;transform:rotate(-8deg)}
.hero-art{width:43%;height:95%;font-size:0;opacity:.92}
.hero-art img{width:min(100%,520px);height:100%;object-fit:contain;filter:drop-shadow(0 14px 16px #064c2c33)}
.logo-mark{background:#006633}
.logo:after{content:'';display:inline-block;width:31px;height:21px;background:url('../algeria-flag.svg') center/contain no-repeat;margin-inline-start:7px}

/* Merchant login: forgot-password link */
.forgot-password-row{display:flex;justify-content:flex-start;margin:-5px 0 12px}.forgot-password-link{color:#dc2626;font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:3px}.forgot-password-link:hover{color:#991b1b}.forgot-password-link:focus-visible{outline:2px solid #dc2626;outline-offset:3px;border-radius:3px}

/* V13.23 login and AI assistant visual consistency */
.auth h1{color:#087b45!important;letter-spacing:-.4px}.auth{box-sizing:border-box}.auth *{box-sizing:border-box}
#dz-ai-panel,#dz-ai-panel *{box-sizing:border-box}#dz-ai-panel{width:min(410px,calc(100vw - 28px));min-width:0}#dz-ai-head{width:100%;flex:0 0 auto;min-height:68px;padding:16px 18px;gap:12px}#dz-ai-head>div{min-width:0;flex:1;text-align:right}#dz-ai-chat{width:100%;min-width:0;padding:16px;display:flex;flex-direction:column;align-items:stretch;gap:6px}#dz-ai-form{width:100%;min-width:0;align-items:center;padding:12px 14px}#dz-ai-note{width:100%;line-height:1.6;padding:0 14px 12px}

/* V13.28 contrast corrections */
.public-header .subnav .category,
.subnav a.category {
  background: #087b45 !important;
  color: #fff !important;
  border: 1px solid #06683a;
}
.public-header .subnav .category:hover,
.subnav a.category:hover {
  background: #06683a !important;
  color: #fff !important;
}
.forgot-password-row {
  background: #f7faf8;
  border: 1px solid #dce9e0;
  border-radius: 8px;
  padding: 8px 10px;
  width: fit-content;
}
.forgot-password-link { color: #087b45 !important; }
.forgot-password-link:hover { color: #055c32 !important; }

/* V13.29 final contrast overrides */
.public-header nav.subnav a.category, .subnav a.category { color:#fff !important; background:#075c35 !important; -webkit-text-fill-color:#fff !important; }
.public-header nav.subnav a.category:hover, .subnav a.category:hover { color:#fff !important; background:#064a2c !important; }
