:root{
  --primary:#0b5cab;
  --primary-dark:#083d73;
  --secondary:#d8b25f;
  --secondary-dark:#a6802f;
  --accent:#17a6c0;
  --bg:#f3f6fb;
  --surface:#ffffff;
  --surface-alt:#f7f9fc;
  --border:#d8e1ef;
  --text:#1e2d3d;
  --muted:#5e7188;
  --danger:#c43f3f;
  --success:#1f8f5f;
  --warning:#cb8400;
  --shadow:0 12px 30px rgba(11,92,171,.08);
  --radius:18px;
  --radius-sm:12px;
  --font:'Cairo','Segoe UI',Tahoma,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,#f4f7fb 0,#eef3fa 42%,#f8fafc 100%);color:var(--text);font-family:var(--font);line-height:1.75}
a{color:var(--primary);text-decoration:none}
a:hover{color:var(--primary-dark)}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.gov-shell{min-height:100vh;display:flex;flex-direction:column}
.container{width:min(1200px,calc(100% - 32px));margin-inline:auto}
.skip-link{position:absolute;top:-1000px;right:16px;background:#000;color:#fff;padding:10px 14px;border-radius:10px;z-index:999}
.skip-link:focus{top:16px}
.topbar{background:#08345f;color:#d7e3f5;font-size:13px}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 0}
.topbar .meta,.topbar .links{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.topbar .links a{color:#d7e3f5}
.pill{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);padding:4px 10px;border-radius:100px}
.pill-dot{width:8px;height:8px;border-radius:50%;background:#56d67b;display:inline-block}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(11,92,171,.09);box-shadow:0 8px 30px rgba(11,92,171,.05)}
.header-main{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0}
.brand{display:flex;align-items:center;gap:16px;color:var(--text);min-width:0}
.brand-logo{flex:none;object-fit:contain}
.brand-logo.ministry{width:70px;height:70px}
.brand-logo.tas{width:76px;height:76px}
.brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.brand-ministry{font-size:13px;color:var(--muted)}
.brand-title{font-size:28px;font-weight:800;line-height:1.2;color:var(--primary-dark)}
.brand-tagline{font-size:13px;color:#54687f}
.header-tools{display:flex;align-items:center;gap:12px}
.user-menu{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.user-chip{background:var(--surface-alt);border:1px solid var(--border);padding:8px 12px;border-radius:100px;font-size:13px;color:var(--primary-dark)}
.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.main-nav-wrap{border-top:1px solid rgba(11,92,171,.07);border-bottom:1px solid rgba(11,92,171,.07);background:#fff}

.main-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0}
.main-nav-links{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;white-space:nowrap}
.main-nav-links a,.section-tabs a,.nav-drop-toggle{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;color:var(--text);font-weight:700;font-size:14px;line-height:1.2}
.nav-direct{text-decoration:none}
.nav-dropdown{position:relative;padding-bottom:10px;margin-bottom:-10px}
.nav-drop-toggle{border:1px solid transparent;background:transparent;cursor:pointer;font-family:inherit}
.nav-drop-toggle::after{content:"▾";font-size:11px;margin-inline-start:8px;opacity:.75}
.nav-dropdown-menu{position:absolute;top:100%;right:0;min-width:240px;background:#fff;border:1px solid rgba(11,92,171,.12);border-radius:16px;padding:10px;box-shadow:0 18px 36px rgba(7,36,73,.18);display:none;z-index:60}
.nav-dropdown-menu a{display:flex;width:100%;justify-content:flex-start;padding:11px 14px;border-radius:12px;text-decoration:none}
.nav-dropdown-menu::before{content:"";position:absolute;top:-10px;right:0;left:0;height:10px}

.main-nav-links a:hover,.section-tabs a:hover,.main-nav-links a.active,.section-tabs a.active,.nav-drop-toggle:hover,.nav-dropdown.open>.nav-drop-toggle,.nav-dropdown.has-active>.nav-drop-toggle{background:rgba(11,92,171,.08);color:var(--primary-dark)}
.nav-dropdown-menu a:hover,.nav-dropdown-menu a.active{background:rgba(11,92,171,.08);color:var(--primary-dark)}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown.open .nav-dropdown-menu{display:block}
.main-nav-side{flex:0 0 auto}
.search-mini{display:flex;align-items:center;gap:8px;background:var(--surface-alt);border:1px solid var(--border);padding:8px 12px;border-radius:14px;min-width:220px}
.search-mini input{border:0;background:transparent;outline:none;width:100%}
.section-tabs{background:#f6f9fd;border-bottom:1px solid rgba(11,92,171,.08)}
.section-tabs .container{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0}
.nav-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--border);background:#fff;border-radius:12px;cursor:pointer}
.nav-toggle-lines,.nav-toggle-lines::before,.nav-toggle-lines::after{content:"";display:block;width:18px;height:2px;background:var(--primary-dark);position:relative;border-radius:2px}
.nav-toggle-lines::before{position:absolute;top:-6px}
.nav-toggle-lines::after{position:absolute;top:6px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:14px;border:1px solid transparent;cursor:pointer;font-weight:700;transition:.2s ease;line-height:1.3}
.btn:hover{transform:translateY(-1px)}
.btn-sm{padding:9px 14px;font-size:13px;border-radius:12px}
.btn-primary{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;box-shadow:0 10px 20px rgba(11,92,171,.18)}
.btn-primary:hover{color:#fff}
.btn-secondary{background:linear-gradient(135deg,#f6e3b3 0,var(--secondary) 100%);color:#5a430c;box-shadow:0 10px 20px rgba(183,147,63,.16)}
.btn-outline{border-color:rgba(11,92,171,.18);background:#fff;color:var(--primary-dark)}
.btn-soft{background:rgba(11,92,171,.08);color:var(--primary-dark)}
.btn-danger{background:rgba(196,63,63,.1);color:var(--danger)}
.btn-success{background:rgba(31,143,95,.1);color:var(--success)}
.hero{padding:34px 0 10px}
.hero-panel{background:radial-gradient(circle at top right,rgba(214,227,244,.95) 0,rgba(255,255,255,1) 44%),linear-gradient(180deg,#ffffff 0,#fbfdff 100%);border:1px solid rgba(11,92,171,.1);border-radius:28px;box-shadow:var(--shadow);overflow:hidden;position:relative}
.hero-panel::after{content:"";position:absolute;left:-60px;bottom:-60px;width:220px;height:220px;background:radial-gradient(circle,rgba(23,166,192,.12),rgba(23,166,192,0) 70%)}
.hero-grid{display:grid;grid-template-columns:1.55fr .95fr;gap:28px;padding:34px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;background:rgba(11,92,171,.08);color:var(--primary-dark);padding:8px 14px;border-radius:100px;font-weight:700;font-size:14px}
.eyebrow .dot{width:9px;height:9px;border-radius:50%;background:var(--secondary)}
.hero h1{font-size:38px;line-height:1.25;margin:18px 0 12px;color:var(--primary-dark)}
.hero p{font-size:16px;color:#33485d;margin:0}
.hero-meta{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:100px;background:#fff;border:1px solid var(--border);font-size:13px;color:#42586e}
.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0 18px}
.breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#6b7f94;font-size:13px}
.hero-card{background:linear-gradient(180deg,#0d4f96 0,#0b386a 100%);color:#eef5ff;border-radius:22px;padding:24px;box-shadow:0 20px 34px rgba(11,56,106,.22);position:relative;overflow:hidden}
.hero-card::before{content:"";position:absolute;inset:auto -30px -30px auto;width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,.08)}
.hero-card h3,.hero-card h4{margin:0 0 10px}
.hero-card p,.hero-card li{color:#dbe8fa}
.hero-logos{display:flex;justify-content:space-between;align-items:center;gap:14px}
.mini-logo{width:72px;height:72px;padding:4px;border-radius:16px;background:rgba(255,255,255,.12);backdrop-filter:blur(12px)}
.page-section{padding:16px 0 22px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px}
.headline-line{width:92px;height:5px;border-radius:999px;background:linear-gradient(90deg,var(--secondary) 0,var(--primary) 100%);margin-bottom:14px}
.section-head h2{margin:0;font-size:30px;line-height:1.3;color:var(--primary-dark)}
.section-head p{margin:6px 0 0;color:#5d7186;max-width:900px}
.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card,.table-panel,.metric-panel,.panel,.form-panel,.side-panel,.stat-panel{background:var(--surface);border:1px solid rgba(11,92,171,.1);border-radius:20px;box-shadow:var(--shadow)}
.card{padding:22px}
.icon-card{display:flex;gap:18px;align-items:flex-start;height:100%}
.icon-card .icon-badge{width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;flex:none;font-size:24px;background:linear-gradient(135deg,rgba(11,92,171,.1) 0,rgba(23,166,192,.12) 100%)}
.icon-card h4,.card h3,.card h4{margin:0 0 8px;color:var(--primary-dark)}
.icon-card p,.card p,.panel p{margin:0;color:#52667c}
.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.ribbon{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:100px;background:rgba(11,92,171,.08);color:var(--primary-dark);font-size:12px;font-weight:700}
.ribbon.success{background:rgba(31,143,95,.11);color:var(--success)}
.ribbon.warning{background:rgba(203,132,0,.12);color:var(--warning)}
.ribbon.danger{background:rgba(196,63,63,.1);color:var(--danger)}
.ribbon.dark{background:rgba(30,45,61,.08);color:var(--text)}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.kpi{background:linear-gradient(180deg,#fff 0,#f9fbff 100%);border:1px solid rgba(11,92,171,.1);border-radius:20px;box-shadow:var(--shadow);padding:22px;position:relative;overflow:hidden}
.kpi::after{content:"";position:absolute;left:-20px;bottom:-20px;width:80px;height:80px;border-radius:20px;background:rgba(11,92,171,.05);transform:rotate(20deg)}
.kpi small{display:block;color:#61758b;font-weight:700}
.kpi strong{display:block;margin-top:10px;font-size:34px;color:var(--primary-dark)}
.kpi .delta{margin-top:10px}
.content-split{display:grid;grid-template-columns:1.45fr .95fr;gap:18px}
.list{padding:0 18px 0 0;margin:0}
.list li{margin-bottom:8px;color:#41586e}
.quick-links{display:grid;gap:12px}
.quick-link{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;background:var(--surface-alt);border:1px solid var(--border);border-radius:16px;font-weight:700;color:var(--text)}
.quick-link:hover{background:#fff}
.metric-panel{padding:22px}
.metric-panel h4{margin:0 0 12px;color:var(--primary-dark)}
.metric-row{display:grid;grid-template-columns:155px 1fr 46px;gap:12px;align-items:center;font-size:14px;color:#486075;margin-bottom:14px}
.progress{height:12px;background:#e9eff8;border-radius:999px;overflow:hidden}
.progress b{display:block;height:100%;background:linear-gradient(90deg,var(--primary),#2f83d5)}
.progress.green b{background:linear-gradient(90deg,var(--success),#47c98a)}
.progress.gold b{background:linear-gradient(90deg,var(--secondary-dark),var(--secondary))}
.notice,.alert-box{padding:16px 18px;border-radius:16px;border:1px solid rgba(11,92,171,.08);background:rgba(11,92,171,.05)}
.notice p,.alert-box p{margin:0;color:#3f556a}
.table-panel{overflow:hidden}
.table-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid rgba(11,92,171,.08)}
.table-head h4{margin:0;color:var(--primary-dark)}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;min-width:760px}
thead th{background:#eef4fb;color:var(--primary-dark);font-size:13px;text-align:right;padding:14px 14px;border-bottom:1px solid var(--border)}
tbody td{padding:14px;border-bottom:1px solid #edf2f9;color:#31465a;vertical-align:top}
tbody tr:hover{background:#fbfdff}
.badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:100px;font-size:12px;font-weight:800;white-space:nowrap}
.badge.draft{background:#eef1f6;color:#516479}
.badge.pending,.badge.inreview,.badge.committee,.badge.mminister{background:rgba(11,92,171,.1);color:var(--primary-dark)}
.badge.needsinfo,.badge.warning{background:rgba(203,132,0,.12);color:var(--warning)}
.badge.approved,.badge.published,.badge.done,.badge.success{background:rgba(31,143,95,.12);color:var(--success)}
.badge.rejected,.badge.danger,.badge.closed{background:rgba(196,63,63,.12);color:var(--danger)}
.badge.public{background:rgba(23,166,192,.12);color:#0e6c7d}
.timeline-horizontal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.stage{position:relative;padding:24px 18px 18px;background:#fff;border:1px solid rgba(11,92,171,.1);border-radius:20px;box-shadow:var(--shadow)}
.stage::before{content:attr(data-step);position:absolute;top:16px;left:16px;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--primary-dark);color:#fff;font-weight:800}
.stage h4{margin:28px 0 6px;color:var(--primary-dark)}
.stage p{margin:0;color:#53687d;font-size:14px}
.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.media-card{overflow:hidden;padding:0}
.media-cover{height:180px;background:linear-gradient(135deg,#dbe9f8,#f7f9fc 58%,#e7f7fa);display:flex;align-items:center;justify-content:center;color:var(--primary-dark);font-size:36px;font-weight:800}
.media-card .body{padding:18px}
.timeline-panel{padding:20px}
.timeline{display:grid;gap:14px}
.timeline-item{display:grid;grid-template-columns:32px 1fr;gap:12px;align-items:start}
.timeline-dot{width:16px;height:16px;border-radius:50%;margin:8px auto 0;background:var(--primary);box-shadow:0 0 0 6px rgba(11,92,171,.1)}
.timeline-content{padding:12px 14px;background:var(--surface-alt);border:1px solid var(--border);border-radius:14px}
.timeline-content h5{margin:0 0 4px;font-size:15px;color:var(--primary-dark)}
.timeline-content p,.timeline-content small{margin:0;color:#5d7186}
.workflow-shell{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:start}
.side-panel{padding:20px;position:sticky;top:150px}
.side-panel h3,.form-panel h3,.panel h3,.stat-panel h3{margin:0 0 10px;color:var(--primary-dark)}
.form-panel{padding:24px}
.stepper{display:grid;gap:10px}
.stepper-step{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:16px;background:var(--surface-alt);font-weight:700;color:#52677e}
.stepper-step .num{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#dfe7f3;color:#47607a;font-size:13px;font-weight:800}
.stepper-step.active{background:rgba(11,92,171,.08);border-color:rgba(11,92,171,.18);color:var(--primary-dark)}
.stepper-step.active .num,.stepper-step.done .num{background:var(--primary-dark);color:#fff}
.stepper-step.done{background:rgba(31,143,95,.08);border-color:rgba(31,143,95,.18);color:var(--success)}
.step-content{display:none}
.step-content.active{display:block;animation:fade .25s ease}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.form-group{display:grid;gap:8px}
.form-group.full{grid-column:1/-1}
label{font-weight:700;color:var(--primary-dark);font-size:14px}
input[type=text],input[type=email],input[type=number],input[type=date],select,textarea{width:100%;padding:12px 14px;border-radius:14px;border:1px solid #ced9e8;background:#fff;outline:none;color:var(--text);transition:border-color .2s ease, box-shadow .2s ease}
textarea{min-height:120px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:rgba(11,92,171,.55);box-shadow:0 0 0 4px rgba(11,92,171,.08)}
input[type=file]{padding:11px;border:1px dashed #b8cae0;border-radius:14px;background:#fbfdff}
.help{font-size:12px;color:#6d8095}
.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.check-item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-alt)}
.check-item input{margin-top:6px}
.form-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px;padding-top:18px;border-top:1px solid rgba(11,92,171,.08)}
.inline-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.inline-stat{padding:14px;border-radius:16px;background:var(--surface-alt);border:1px solid var(--border)}
.inline-stat strong{display:block;font-size:20px;color:var(--primary-dark)}
.inline-stat span{font-size:12px;color:#64788e}

.inline-stats.complaint-counter-board{grid-template-columns:1fr;gap:12px}
.complaint-counter-board .counter-card{position:relative;overflow:hidden;min-height:unset;padding:16px 16px;border-radius:18px;background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);border:1px solid #d6e1ee;box-shadow:0 8px 20px rgba(11,92,171,.06);display:grid;grid-template-columns:48px 1fr;grid-template-areas:'icon value' 'icon label';column-gap:12px;align-items:center;text-align:right}
.complaint-counter-board .counter-card::before{content:'';position:absolute;top:-24px;left:-24px;width:72px;height:72px;border-radius:50%;background:rgba(11,92,171,.05)}
.complaint-counter-board .counter-card::after{content:'';position:absolute;bottom:-20px;right:-20px;width:64px;height:64px;border-radius:50%;background:rgba(216,178,95,.07)}
.complaint-counter-board .counter-icon{grid-area:icon;position:relative;z-index:1;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(11,92,171,.08);color:var(--primary-dark);font-size:20px;border:1px solid rgba(11,92,171,.1)}
.complaint-counter-board .counter-card strong{grid-area:value;position:relative;z-index:1;font-size:34px;line-height:1.1;font-weight:800;color:var(--primary-dark);margin:0;word-break:normal;overflow-wrap:anywhere}
.complaint-counter-board .counter-card span{grid-area:label;position:relative;z-index:1;font-size:13px;line-height:1.5;color:#5b7087;font-weight:700}
.complaint-counter-board .counter-card-highlight{background:linear-gradient(180deg,#fff8ea 0%,#fffdf8 100%);border-color:#ecd7a2}
.complaint-counter-board .counter-card-highlight .counter-icon{background:rgba(216,178,95,.16);color:#9b6a00;border-color:rgba(216,178,95,.25)}
#complaintDraftStatus{font-size:20px}
#complaintDraftStatusLabel{font-size:12px}
#complaintReminderPrimary{font-size:42px}
#complaintProgressValue{font-size:30px}

.workflow-shell.complaint-layout{display:flex;flex-direction:column;gap:18px}
.complaint-top-row{display:flex;gap:18px;align-items:stretch;width:100%}
.complaint-steps-panel,.complaint-support-panel{position:static;top:auto}
.complaint-steps-panel{padding:18px;flex:0 0 320px;display:flex;flex-direction:column}
.complaint-steps-panel h3{margin-bottom:12px}
.complaint-stepper-inline{display:flex;flex-direction:column;gap:10px;flex:1;height:100%}
.complaint-stepper-inline .stepper-step{flex:1 1 0;min-height:0;flex-direction:row;justify-content:flex-start;align-items:center;padding:10px 14px}
.complaint-stepper-inline .stepper-step .num{margin-bottom:0;flex:0 0 30px}

.complaint-top-row>.form-panel{flex:1 1 auto;min-width:0;width:100%;display:flex;flex-direction:column}
.complaint-top-row>.form-panel form{display:flex;flex-direction:column;flex:1}
.complaint-top-row>.form-panel .step-content{width:100%}
.complaint-top-row>.form-panel .form-grid{width:100%}
.complaint-top-row>.form-panel textarea{min-height:130px}
.complaint-support-panel{padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.complaint-support-panel>.inline-stats,
.complaint-support-panel>#complaintWorkflowLive,
.complaint-support-panel>.card{margin-top:0;padding:18px;border-radius:20px;background:#fff;border:1px solid rgba(11,92,171,.1);box-shadow:var(--shadow)}
.complaint-support-panel>.inline-stats{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.complaint-support-panel>#complaintWorkflowLive{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-content:start}
.complaint-support-panel>.card{grid-column:1/-1}
.complaint-support-panel .task-item{height:100%;margin:0}
@media (max-width:1200px){
  .complaint-steps-panel{flex-basis:290px}
  .complaint-support-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .complaint-support-panel>#complaintWorkflowLive{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .complaint-top-row{flex-direction:column}
  .complaint-steps-panel{flex:1 1 auto;width:100%}
  .complaint-support-panel,.complaint-support-panel>.inline-stats{grid-template-columns:1fr}
  .complaint-support-panel>#complaintWorkflowLive{grid-template-columns:1fr}
  .complaint-support-panel>.inline-stats,.complaint-support-panel>.card{grid-column:auto}
}
.status-track{display:flex;gap:10px;flex-wrap:wrap}
.status-node{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:100px;background:var(--surface-alt);border:1px solid var(--border);font-size:13px;color:#596e83;font-weight:700}
.status-node.current{background:rgba(11,92,171,.09);color:var(--primary-dark);border-color:rgba(11,92,171,.16)}
.status-node.done{background:rgba(31,143,95,.1);color:var(--success);border-color:rgba(31,143,95,.18)}
.split-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;align-items:start}
.list-panel{padding:0;overflow:hidden}
.list-panel .table-wrap{max-height:720px}
.detail-panel{padding:22px}
.detail-section{margin-bottom:20px}
.detail-section:last-child{margin-bottom:0}
.detail-section h4{margin:0 0 10px;color:var(--primary-dark)}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.account-review-layout{grid-template-columns:1fr;gap:18px}
.account-review-list,.account-review-detail{width:100%}
.account-review-list .table-wrap{max-height:none}
.account-review-detail{padding:24px}
.detail-box{padding:14px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--border)}
.detail-box strong{display:block;margin-bottom:4px;color:var(--primary-dark);font-size:13px}
.detail-box span{color:#50657b;font-size:14px}
.doc-list,.task-list{display:grid;gap:10px}
.doc-item,.task-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:14px;background:var(--surface-alt);border:1px solid var(--border)}
.task-item h5{margin:0 0 4px;color:var(--primary-dark);font-size:15px}
.task-item p,.doc-item p{margin:0;color:#62758a;font-size:13px}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.filters input,.filters select{max-width:250px}
.empty-state{padding:34px 20px;text-align:center;background:var(--surface-alt);border:1px dashed #b7c7db;border-radius:18px;color:#63778c}
.empty-state strong{display:block;color:var(--primary-dark);font-size:18px;margin-bottom:6px}
.portal-search-item.hidden{display:none!important}
.site-footer{margin-top:auto;background:linear-gradient(180deg,#072d52 0,#062341 100%);color:#dce9fb;padding-top:24px}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px;padding-bottom:20px}
.footer-brand{display:flex;align-items:flex-start;gap:14px}
.footer-brand .brand-logo.ministry{width:54px;height:54px}
.footer-brand .brand-logo.tas{width:60px;height:60px}
.site-footer h4{margin:0 0 12px;color:#fff}
.site-footer p{margin:0;color:#c7d8f0}
.footer-links{display:grid;gap:8px}
.footer-links a{color:#dce9fb}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 0;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:#bed0e7}
.toast{position:fixed;left:20px;bottom:20px;background:#092f59;color:#fff;padding:12px 16px;border-radius:14px;box-shadow:0 12px 30px rgba(9,47,89,.25);opacity:0;transform:translateY(10px);pointer-events:none;transition:.25s ease;z-index:1200;max-width:min(92vw,380px)}
.toast.show{opacity:1;transform:none}
.login-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.login-card{padding:20px;border-radius:20px;background:#fff;border:1px solid rgba(11,92,171,.1);box-shadow:var(--shadow)}
.login-card h4{margin:0 0 6px;color:var(--primary-dark)}
.hero-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-radius:20px;background:linear-gradient(135deg,rgba(11,92,171,.08),rgba(23,166,192,.08));border:1px solid rgba(11,92,171,.09)}
.countdown{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:100px;background:rgba(203,132,0,.12);color:var(--warning);font-weight:800;font-size:13px}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.tab-btn{padding:10px 14px;border:1px solid var(--border);background:#fff;border-radius:12px;cursor:pointer;font-weight:700;color:#546a80}
.tab-btn.active{background:rgba(11,92,171,.08);color:var(--primary-dark);border-color:rgba(11,92,171,.16)}
.tab-pane{display:none}
.tab-pane.active{display:block}
.mini-chart{display:grid;gap:10px}
.chart-row{display:grid;grid-template-columns:160px 1fr 50px;gap:12px;align-items:center}
.chart-row span{font-size:14px;color:#4c6176}
.chart-track{height:14px;border-radius:999px;background:#e7eef8;overflow:hidden}
.chart-fill{display:block;height:100%;background:linear-gradient(90deg,var(--primary),#3992d8)}
.sticky-actions{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:10px;z-index:100}
.floating-btn{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 16px 26px rgba(11,92,171,.22);border:0;cursor:pointer;font-size:20px}
.summary-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.summary-item{padding:16px;border:1px solid var(--border);background:var(--surface-alt);border-radius:18px}
.summary-item strong{display:block;color:var(--primary-dark);font-size:22px}
.summary-item span{font-size:13px;color:#64788e}

.hero-home .hero-panel{background-image:linear-gradient(to left,rgba(6,39,73,.86) 0%,rgba(9,70,128,.76) 34%,rgba(10,76,139,.45) 58%,rgba(10,76,139,.16) 82%,rgba(10,76,139,.08) 100%),url('../img/hero-trade-map.jpg');background-size:cover;background-position:center center;border:0;box-shadow:0 24px 44px rgba(11,92,171,.18);min-height:480px}
.hero-home .hero-panel::after{display:none}
.hero-home .hero-grid{grid-template-columns:minmax(0,1fr);padding:44px 48px;min-height:480px;align-items:center}
.hero-home .hero-copy{max-width:min(700px,100%);position:relative;z-index:1}
.hero-home .eyebrow{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.18);box-shadow:0 10px 26px rgba(0,0,0,.08)}
.hero-home .eyebrow .dot{background:#f7c55c;box-shadow:0 0 0 6px rgba(247,197,92,.14)}
.hero-home h1{color:#fff;font-size:clamp(34px,4.2vw,58px);text-shadow:0 2px 10px rgba(0,0,0,.16)}
.hero-home p{color:rgba(255,255,255,.92);font-size:18px;max-width:62ch}
.hero-home .chip{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.18);backdrop-filter:blur(10px)}
.hero-home .btn-primary{background:#fff;color:var(--primary-dark);box-shadow:0 16px 28px rgba(7,46,84,.18)}
.hero-home .btn-primary:hover{color:var(--primary-dark)}
.hero-home .btn-outline{border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(10px)}
.hero-home .btn-outline:hover{color:#fff;background:rgba(255,255,255,.14)}
.hero-home .breadcrumbs,.hero-home .breadcrumbs a{color:rgba(255,255,255,.8)}
.hero-home .sep{color:rgba(255,255,255,.7)}
@media (max-width:1100px){
  .grid-4,.kpis,.timeline-horizontal,.login-cards,.summary-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
  .content-split,.hero-grid,.workflow-shell,.split-layout{grid-template-columns:1fr}
  .side-panel{position:static}
}
@media (max-width:860px){
  .hero-home .hero-panel{min-height:400px;background-position:center center}
  .hero-home .hero-grid{padding:28px 24px;min-height:400px}
  .hero-home h1{font-size:32px}
  .hero-home p{font-size:16px}
  .brand-title{font-size:24px}
  .brand-logo.ministry{width:58px;height:58px}
  .brand-logo.tas{width:64px;height:64px}
  .main-nav{align-items:center;gap:12px}
  .main-nav-links{gap:6px}
  .main-nav-links a,.nav-drop-toggle{padding:9px 11px;font-size:13px}
  .search-mini{min-width:180px;width:180px}
  .grid-3,.grid-2,.media-grid,.footer-top,.form-grid,.check-grid,.detail-grid,.inline-stats{grid-template-columns:1fr}
  .metric-row,.chart-row{grid-template-columns:1fr}
}
@media (max-width:720px){
  .topbar-inner,.header-main{flex-direction:column;align-items:stretch}
  .brand{align-items:flex-start}
  .header-tools{justify-content:space-between}
  .nav-toggle{display:inline-flex}
  .main-nav{align-items:stretch;flex-direction:column}
  .main-nav-side{width:100%}
  .search-mini{min-width:0;width:100%}
  .main-nav-links{display:none;width:100%;padding-top:8px;flex-direction:column;align-items:stretch;white-space:normal}
  .main-nav-links.open{display:flex}
  .nav-direct,.nav-drop-toggle{width:100%;justify-content:space-between}
  .nav-dropdown{width:100%}
  .nav-dropdown-menu{position:static;display:none;min-width:0;margin-top:6px;box-shadow:none;border-radius:14px;background:#f8fbff}
  .nav-dropdown.open .nav-dropdown-menu{display:block}
  .section-head{align-items:flex-start;flex-direction:column}
  .hero h1{font-size:32px}
  .kpis,.timeline-horizontal,.login-cards,.summary-bar{grid-template-columns:1fr}
  .table-wrap table{min-width:650px}
  .workflow-shell,.split-layout{gap:14px}
}
.mt-0{margin-top:0}
.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}
.text-muted{color:#63778d}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}


.media-grid-3{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
@media (max-width: 980px){
  .media-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 640px){
  .media-grid-3{grid-template-columns:1fr}
}


.media-cover{overflow:hidden}
.media-cover-img{width:100%;height:100%;object-fit:cover;display:block}

/* Login / Register full-width auth workspace */
.auth-stack{display:flex;flex-direction:column;gap:18px}.auth-switcher{display:flex;gap:12px;flex-wrap:wrap}.auth-switcher .btn.active{box-shadow:var(--shadow)}.auth-panel{width:100%;padding:28px 30px}.auth-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:8px}.auth-panel-head p{margin:6px 0 0;color:var(--muted)}.auth-panel-badge{padding:10px 14px;border-radius:999px;background:rgba(11,92,171,.08);color:var(--primary-dark);font-weight:700;white-space:nowrap}.auth-login-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-register-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.field-head .mb-0{margin-bottom:0}.multi-email-box{padding:16px;border:1px dashed rgba(11,92,171,.18);border-radius:16px;background:rgba(11,92,171,.02)}.email-note{font-size:14px;color:var(--muted);margin-bottom:12px}.multi-email-list{display:grid;gap:12px}.email-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.email-row .form-group{margin-bottom:0}.email-row .btn{height:48px}.content-split.auth-hidden{display:block}@media (max-width: 920px){.auth-login-grid,.auth-register-grid,.email-row{grid-template-columns:1fr}.auth-panel{padding:22px}.auth-panel-head{align-items:flex-start}}

.auth-panel-badge{display:none !important;}


.countries-combobox{min-height:54px;padding:12px 14px;background:#fff}
.field-help{font-size:12px;color:#6f8296;margin-top:8px;line-height:1.7}
.attachments-stage{display:flex;flex-direction:column;gap:16px}
.attachment-stage-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.attachment-summary-card{padding:16px 18px;border-radius:18px;border:1px solid #d8e4f0;background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);display:flex;flex-direction:column;gap:4px;box-shadow:0 8px 18px rgba(11,92,171,.05)}
.attachment-summary-card strong{font-size:28px;color:var(--primary-dark);line-height:1}
.attachment-summary-card span{font-size:13px;color:#698097;font-weight:700}
.attachment-summary-card.highlight{background:linear-gradient(180deg,#fffaf0 0%,#fffdf8 100%);border-color:#ecd7a2}
.notice.compact{padding:14px 16px;border-radius:16px;margin:0}
.notice.compact p{margin:0;line-height:1.8}
.attachment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.attachment-card{border:1px solid #d9e5f0;border-radius:20px;padding:16px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);box-shadow:0 10px 24px rgba(11,92,171,.05);display:flex;flex-direction:column;gap:12px;min-height:0}
.attachment-card.is-uploaded{border-color:#cfe7da;background:linear-gradient(180deg,#ffffff 0%,#f8fffb 100%)}
.attachment-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.attachment-card-head h4{margin:0 0 6px;color:var(--primary-dark);font-size:19px;line-height:1.5}
.attachment-card-head p{margin:0;color:#6e8297;line-height:1.7;font-size:13px}
.attachment-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.attachment-tag,.attachment-audience{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}
.attachment-tag{background:#fff3cf;color:#9b6a00;border:1px solid #f1dfab}
.attachment-audience{background:#eef4fb;color:#48627c;border:1px solid #d9e4f0}
.attachment-state{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}
.attachment-state.uploaded{background:#e8f6ee;color:#228551;border:1px solid #cfe7da}
.attachment-state.missing{background:#fff4e5;color:#ab6a00;border:1px solid #f0dbb0}
.attachment-meta-strip{display:flex;flex-wrap:wrap;gap:8px}
.attachment-meta-strip span{padding:6px 10px;border-radius:12px;background:#f3f7fb;color:#5f768d;font-size:12px;font-weight:700;border:1px solid #e1e9f3}
.attachment-upload-row{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px dashed #c7d7e6;border-radius:16px;background:#fafcff}
.attachment-upload-label{font-size:13px;font-weight:800;color:var(--primary-dark)}
.attachment-files-list{display:flex;flex-wrap:wrap;gap:8px;min-height:34px}
.attachment-file-pill{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:12px;background:#edf3fa;color:#4f677f;font-size:12px;font-weight:700;border:1px solid #dae6f1}
.attachment-file-pill.placeholder{background:#f8fafc;color:#7d92a7}
.attachment-actions-row{display:flex;justify-content:flex-start}
@media (max-width: 992px){.attachment-stage-summary,.attachment-grid{grid-template-columns:1fr}}


.investigation-live-flow{gap:8px;flex-wrap:wrap}
.investigation-deadline-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.investigation-deadline-card{padding:14px 16px;border:1px solid #d8e4f0;border-radius:16px;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:0 8px 18px rgba(11,92,171,.04)}
.investigation-deadline-card strong{display:block;color:var(--primary-dark);font-size:22px;margin-bottom:4px}
.investigation-deadline-card span{display:block;color:#64788d;font-size:13px;font-weight:700;line-height:1.6}
.investigation-case-card .doc-list{max-height:none}
.investigation-mini-workflow{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.investigation-mini-workflow span{width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#eef4fb;border:1px solid #d9e5f0;color:#5d7186;font-weight:800}
.investigation-mini-workflow span.done{background:#e8f6ee;color:#1f8f5f;border-color:#cfe7da}
.investigation-mini-workflow span.current{background:var(--primary-dark);color:#fff;border-color:var(--primary-dark);box-shadow:0 6px 14px rgba(11,92,171,.2)}
@media (max-width: 900px){.investigation-deadline-grid{grid-template-columns:1fr}}

.dashboard-stacked-tables{display:grid;grid-template-columns:1fr;gap:18px}
.fullwidth-panel{width:100%}


.auth-hero-single{display:block!important}
.auth-hero-single .hero-content{max-width:100%!important;width:100%!important}
.hero-side-card{display:none!important}


.auth-hero-single{display:block!important}
.auth-hero-single .hero-content{max-width:100%!important;width:100%!important}
.hero-side-card,
.login-cards{display:none!important}

.hero-side{display:none!important}
.auth-hero-single{display:block!important}
.auth-hero-single .hero-main,.auth-hero-single .hero-content{width:100%!important;max-width:100%!important}

/* === V6.1: unify banner background across frontend pages === */
.hero:not(.hero-home) .hero-panel{
  background-image:
    linear-gradient(to left, rgba(6,39,73,.88) 0%, rgba(9,70,128,.78) 34%, rgba(10,76,139,.48) 58%, rgba(10,76,139,.18) 82%, rgba(10,76,139,.10) 100%),
    url('../img/hero-trade-map.jpg');
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  border:0;
  box-shadow:0 24px 44px rgba(11,92,171,.18);
  min-height:420px;
}
.hero:not(.hero-home) .hero-panel::after{display:none}
.hero:not(.hero-home) .hero-grid{
  grid-template-columns:minmax(0,1fr);
  padding:44px 48px;
  min-height:420px;
  align-items:center;
}
.hero:not(.hero-home) .hero-copy{max-width:min(760px,100%);position:relative;z-index:1}
.hero:not(.hero-home) .eyebrow{
  background:rgba(255,255,255,.14);
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 10px 26px rgba(0,0,0,.08);
}
.hero:not(.hero-home) .eyebrow .dot{background:#f7c55c;box-shadow:0 0 0 6px rgba(247,197,92,.14)}
.hero:not(.hero-home) h1{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.16)}
.hero:not(.hero-home) p{color:rgba(255,255,255,.92);font-size:18px}
.hero:not(.hero-home) .chip{
  background:rgba(255,255,255,.12);
  color:#fff;
  border-color:rgba(255,255,255,.18);
  backdrop-filter:blur(10px);
}
.hero:not(.hero-home) .btn-primary{
  background:#fff;
  color:var(--primary-dark);
  box-shadow:0 16px 28px rgba(7,46,84,.18);
}
.hero:not(.hero-home) .btn-primary:hover{color:var(--primary-dark)}
.hero:not(.hero-home) .btn-outline{
  border-color:rgba(255,255,255,.32);
  background:rgba(255,255,255,.08);
  color:#fff;
  backdrop-filter:blur(10px);
}
.hero:not(.hero-home) .btn-outline:hover{color:#fff;background:rgba(255,255,255,.14)}
.hero:not(.hero-home) .breadcrumbs,
.hero:not(.hero-home) .breadcrumbs a{color:rgba(255,255,255,.82)}
.hero:not(.hero-home) .sep{color:rgba(255,255,255,.7)}
.hero-banner{
  background-image:
    linear-gradient(to left, rgba(6,39,73,.88) 0%, rgba(9,70,128,.78) 34%, rgba(10,76,139,.48) 58%, rgba(10,76,139,.18) 82%, rgba(10,76,139,.10) 100%),
    url('../img/hero-trade-map.jpg');
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  border:0;
  box-shadow:0 20px 34px rgba(11,56,106,.16);
  color:#fff;
}
.hero-banner h3,
.hero-banner p,
.hero-banner strong{color:#fff}
.hero-banner .btn-primary{background:#fff;color:var(--primary-dark)}
.hero-banner .btn-primary:hover{color:var(--primary-dark)}

@media (max-width: 768px){
  .hero:not(.hero-home) .hero-panel{min-height:360px;background-position:center center}
  .hero:not(.hero-home) .hero-grid{padding:28px 24px;min-height:360px}
  .hero:not(.hero-home) p{font-size:16px}
  .hero-banner{padding:20px}
}
