:root{
  --da-green:#075a37;--da-green-2:#0a7a49;--da-green-3:#e9f6ef;--da-gold:#f5b335;--ink:#17312a;--muted:#66756f;--line:#dce8e2;--danger:#b42318;--info:#175cd3;--surface:#fff;--bg:#f5f8f6;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);margin:0}
a{color:var(--da-green);text-decoration:none}a:hover{text-decoration:underline}
.brandbar{background:linear-gradient(120deg,#043d28,#0a6b42);color:white;border-bottom:4px solid var(--da-gold)}
.brandbar .container-fluid{max-width:1600px}.brand-logo{width:58px;height:58px;object-fit:contain;background:#fff;border-radius:50%;padding:2px}
.brand-title{font-weight:800;letter-spacing:.2px}.brand-subtitle{font-size:.9rem;opacity:.92}
.navbar-etf{background:#fff;border-bottom:1px solid var(--line)}.navbar-etf .nav-link{font-weight:650;color:#23493a}.navbar-etf .nav-link.active{color:#fff;background:var(--da-green);border-radius:999px;padding-inline:14px}
.hero{background:linear-gradient(120deg,#0a5f3d,#12864e);color:#fff;border-bottom:5px solid var(--da-gold);border-radius:0 0 28px 28px}.hero h1{font-weight:850}.hero .lead{max-width:850px}
.badge-soft{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:999px;padding:.45rem .75rem;font-weight:650}
.card-soft{border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(19,58,43,.06)}.card-soft .card-header{background:transparent;border-bottom:1px solid var(--line);font-weight:800}
.section-title{font-weight:850;color:#063f29}.section-kicker{font-size:.82rem;font-weight:800;color:var(--da-green-2);text-transform:uppercase;letter-spacing:.08em}
.form-label{font-weight:700;font-size:.9rem}.form-control,.form-select{border-color:#d9e4df;min-height:44px}.form-control:focus,.form-select:focus{border-color:#61a985;box-shadow:0 0 0 .2rem rgba(10,122,73,.12)}
.btn-da{background:var(--da-green);color:#fff;border:none}.btn-da:hover{background:#06462d;color:#fff}.btn-outline-da{border:1px solid var(--da-green);color:var(--da-green);background:#fff}.btn-outline-da:hover{background:var(--da-green);color:#fff}.btn-gold{background:var(--da-gold);color:#1e332b;border:none;font-weight:800}
.icon-circle{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--da-green-3);color:var(--da-green);font-size:1.3rem}
.feature-card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:18px;height:100%}.feature-card h5{font-weight:800;color:#0b5437}
.sticky-summary{position:sticky;top:90px}.summary-box{border:1px dashed #3c8a63;background:#f1fbf5;border-radius:14px;padding:14px}
.ref-box{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;font-size:1.05rem;color:#0b5b3a;background:#eef8f2;border:1px solid #b9dbc9;border-radius:12px;padding:10px 12px;word-break:break-all}
.qr-wrap{background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;display:inline-block}
.stepper{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px}.step-pill{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;font-weight:700}.step-pill.active{background:var(--da-green);color:#fff;border-color:var(--da-green)}
.metric-card{border-radius:16px;padding:16px;background:#fff;border:1px solid var(--line);height:100%}.metric-card .value{font-size:1.9rem;font-weight:900;line-height:1}.metric-card .label{font-weight:750;color:#395348}.metric-card .trend{font-size:.78rem;color:#087443}
.admin-shell{display:grid;grid-template-columns:250px 1fr;min-height:calc(100vh - 78px)}.admin-side{background:linear-gradient(#06452f,#073827);color:#fff;padding:18px 14px}.admin-side a{color:#eefaf4;display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:10px;margin:3px 0;font-weight:650}.admin-side a.active,.admin-side a:hover{background:#0e7048;text-decoration:none}.admin-main{padding:20px;min-width:0}
.table thead th{background:#f1f6f3;color:#23493a;font-size:.84rem;white-space:nowrap}.status-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:800}.st-new{background:#eaf2ff;color:#175cd3}.st-validated{background:#ecfdf3;color:#027a48}.st-followup{background:#fff6e5;color:#a15c00}.st-closed{background:#f2f4f7;color:#475467}.st-rejected{background:#fff0f0;color:#b42318}
.catalog-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;height:100%;display:flex;flex-direction:column}.catalog-card img{height:180px;width:100%;object-fit:cover;background:#eef5f1}.catalog-card .body{padding:14px;display:flex;flex-direction:column;gap:6px;flex:1}.catalog-card .price{font-weight:900;color:#0c6943}.catalog-card .meta{font-size:.84rem;color:var(--muted)}
.timeline{position:relative;padding-left:22px}.timeline:before{content:"";position:absolute;left:7px;top:2px;bottom:2px;width:2px;background:#cfe1d8}.timeline-item{position:relative;padding:0 0 18px 12px}.timeline-item:before{content:"";position:absolute;left:-20px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--da-green);box-shadow:0 0 0 4px #e9f6ef}
.footer{background:#063d2a;color:#dff3e8;border-top:4px solid var(--da-gold)}.footer small{opacity:.9}
.notice{border-left:4px solid var(--da-gold);background:#fffbef;padding:12px 14px;border-radius:10px}.hidden{display:none!important}.cursor-pointer{cursor:pointer}.thumb-preview{width:84px;height:64px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
@media (max-width:991.98px){.admin-shell{grid-template-columns:1fr}.admin-side{display:flex;gap:6px;overflow:auto;position:sticky;top:0;z-index:20}.admin-side a{white-space:nowrap}.sticky-summary{position:static}}
@media (max-width:575.98px){.brand-logo{width:48px;height:48px}.hero{border-radius:0 0 18px 18px}.metric-card .value{font-size:1.55rem}.admin-main{padding:12px}.card-soft{border-radius:14px}}


/* ===== v1.0.6 lively theme refresh ===== */
:root{
  --da-green:#0a6a42;
  --da-green-2:#159b52;
  --da-green-3:#eefaf1;
  --da-gold:#f3bc36;
  --ink:#10372a;
  --muted:#5e7269;
  --line:#d9e9df;
  --surface:#ffffff;
  --bg:#f4f8f2;
}
body{
  background:
    radial-gradient(circle at top right, rgba(243,188,54,.14), transparent 20%),
    radial-gradient(circle at left top, rgba(21,155,82,.10), transparent 22%),
    linear-gradient(180deg,#f8fbf7 0%,#f2f8f2 100%);
  color:var(--ink);
}
.brandbar{
  background:
    radial-gradient(circle at 8% 10%, rgba(255,255,255,.12) 0 4%, transparent 4.2%),
    radial-gradient(circle at 93% 18%, rgba(255,255,255,.10) 0 5%, transparent 5.2%),
    linear-gradient(90deg,#0b6c43 0%,#0f8a4f 55%,#0b6c43 100%);
  color:#fff;
  border-bottom:4px solid var(--da-gold);
  box-shadow:0 10px 30px rgba(8,87,49,.18);
}
.brand-logo{
  box-shadow:0 8px 20px rgba(0,0,0,.14);
  border:3px solid rgba(255,255,255,.7);
}
.navbar-etf{
  background:rgba(255,255,255,.96);
  backdrop-filter: blur(8px);
  border-bottom:1px solid rgba(17,87,52,.12);
}
.navbar-etf .nav-link{font-weight:750;color:#154d35}
.navbar-etf .nav-link.active{
  background:linear-gradient(90deg,#0d7a49,#139654);
  box-shadow:0 10px 20px rgba(11,108,67,.18);
}
.hero{
  background:
    radial-gradient(circle at right top, rgba(255,255,255,.14), transparent 30%),
    linear-gradient(120deg,#0b6d42 0%,#139955 55%,#1aa65a 100%);
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.12);
}
.hero .bg-white{
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(247,255,249,.97)) !important;
  box-shadow:0 16px 32px rgba(4,61,40,.12);
}
.badge-soft{
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.36);
  color:#fff;
  border-radius:999px;
  padding:.5rem .9rem;
  font-weight:750;
}
.badge-public{
  background:linear-gradient(90deg,#0d7a49,#18a559);
  color:#fff !important;
  border:0;
}
.card-soft{
  border:1px solid rgba(18,92,55,.10);
  border-radius:22px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfffc 100%);
  box-shadow:0 14px 34px rgba(9,76,47,.08);
}
.section-title{color:#0a4d32}
.section-kicker{color:#16884f}
.form-control,.form-select{
  border-color:#cfe1d6;
  background:#fff;
}
.form-control:focus,.form-select:focus{
  border-color:#34a766;
  box-shadow:0 0 0 .22rem rgba(24,165,89,.14);
}
.btn-da{
  background:linear-gradient(90deg,#0c7747,#139a54);
  color:#fff;
  border:none;
  box-shadow:0 10px 20px rgba(10,106,66,.18);
}
.btn-da:hover{background:linear-gradient(90deg,#09673d,#11884a);color:#fff}
.btn-outline-da{
  border:1px solid #0d7a49;
  color:#0d7a49;
  background:#fff;
}
.btn-outline-da:hover{background:linear-gradient(90deg,#0c7747,#139a54);color:#fff;border-color:#0c7747}
.btn-light{border-radius:12px}
.icon-circle{background:linear-gradient(180deg,#edf9f0,#dff3e7); color:#0d7a49; box-shadow: inset 0 0 0 1px rgba(13,122,73,.08);}
.feature-card{
  border:1px solid rgba(18,92,55,.10);
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff,#fbfffc);
  box-shadow:0 10px 22px rgba(9,76,47,.05);
}
.feature-card h5{color:#0b5f3b}
.summary-box{background:linear-gradient(180deg,#f4fff7,#ebf9f0);border:1px dashed #44a86e}
.metric-card{
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff,#f9fffb);
  border:1px solid rgba(18,92,55,.10);
  box-shadow:0 10px 20px rgba(9,76,47,.05);
}
.metric-card .value{color:#0b5f3b}
.admin-shell{min-height:calc(100vh - 86px)}
.admin-side{
  background:
    linear-gradient(180deg,#085b38 0%,#0d7a49 58%,#085435 100%);
  color:#fff;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.08);
}
.admin-side a{
  border-radius:14px;
  margin:5px 0;
  font-weight:700;
}
.admin-side a.active,.admin-side a:hover{
  background:linear-gradient(90deg,rgba(255,255,255,.14),rgba(255,255,255,.08));
  text-decoration:none;
  transform:translateX(2px);
}
.admin-main{
  padding:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.25),rgba(255,255,255,0));
}
.table thead th{
  background:linear-gradient(180deg,#f2faf5,#eaf6ee);
  color:#1b4f38;
  border-bottom:1px solid #d6e7dd;
}
.footer{
  background:linear-gradient(90deg,#085b38,#0d7a49,#085b38);
  color:#eefbf4;
}
.notice{border-left:4px solid var(--da-gold);background:#fffaf0;padding:12px 14px;border-radius:12px}
.status-pill{box-shadow:inset 0 0 0 1px rgba(0,0,0,.03)}

/* colorful dashboard accents */
.metric-card:nth-child(1), .row .col-sm-6.col-xl:nth-child(1) .metric-card{background:linear-gradient(135deg,#f7fffa,#e9fff2)}
.metric-card:nth-child(2), .row .col-sm-6.col-xl:nth-child(2) .metric-card{background:linear-gradient(135deg,#fffdf4,#fff5d7)}
.metric-card:nth-child(3), .row .col-sm-6.col-xl:nth-child(3) .metric-card{background:linear-gradient(135deg,#f7fbff,#eaf3ff)}
.metric-card:nth-child(4), .row .col-sm-6.col-xl:nth-child(4) .metric-card{background:linear-gradient(135deg,#fff8f3,#ffedd9)}
.metric-card:nth-child(5), .row .col-sm-6.col-xl:nth-child(5) .metric-card{background:linear-gradient(135deg,#f9f5ff,#efe7ff)}

#dashboardView .card-soft, #approvedArea .card-soft, #loginView .card-soft{position:relative; overflow:hidden;}
#dashboardView .card-soft:before, #approvedArea .card-soft:before, #loginView .card-soft:before{content:""; position:absolute; top:-40px; right:-40px; width:120px; height:120px; background:radial-gradient(circle, rgba(243,188,54,.10), transparent 65%); pointer-events:none;}


/* v1.0.9 interactive analytics */
.analytics-card{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;outline:none}
.analytics-card:hover,.analytics-card:focus-visible{transform:translateY(-3px);box-shadow:0 16px 30px rgba(9,76,47,.13);border-color:#7fc99e}
.analytics-card:focus-visible{box-shadow:0 0 0 .22rem rgba(24,165,89,.18),0 16px 30px rgba(9,76,47,.13)}
#catChart,#regionChart,#matchChart{cursor:pointer}


/* v1.0.10 exhibitor profile/action enhancements */
.profile-detail{border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#f8fcf9);padding:12px 14px;height:100%}
#exhibitorsTable td:last-child{min-width:390px}
#exhibitorsTable .btn{white-space:nowrap}
@media (max-width:767.98px){#exhibitorsTable td:last-child{min-width:300px}}


/* ===== v1.0.12 permit/accreditation preview ===== */
.permit-image-button{display:block;position:relative;width:100%;padding:0;border:1px solid #cfe1d6;border-radius:14px;background:#fff;overflow:hidden;text-align:left;cursor:pointer}
.permit-image-button:hover{border-color:#159b52;box-shadow:0 10px 24px rgba(9,76,47,.12)}
.permit-thumbnail{display:block;width:100%;height:210px;object-fit:contain;background:#f7faf8}
.permit-zoom-label{position:absolute;left:10px;bottom:10px;background:rgba(6,67,42,.9);color:#fff;border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:700}
.permit-document-card{display:flex;align-items:center;gap:12px;border:1px solid #cfe1d6;border-radius:14px;background:#fff;padding:12px 14px;color:#164a35;cursor:pointer}
.permit-document-card:hover{border-color:#159b52;background:#f5fbf7}
.permit-document-card small{display:block;color:#6b7b74;margin-top:2px}
.permit-pdf-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#fff0f0;color:#b42318;font-size:1.4rem;flex:0 0 auto}
#permitPreviewModal .modal-body{min-height:280px}
