/* =====================================================================
   UAE Construction Directory — Public CSS v2.0
   Covers: Portal (login/register), Dashboard, Directory, RFQ Form
   ===================================================================== */

:root {
  --ucd-navy:      #0d2137;
  --ucd-gold:      #c8941a;
  --ucd-gold-l:    #e0ac3a;
  --ucd-steel:     #2a5380;
  --ucd-surface:   #f4f6f8;
  --ucd-surface2:  #eaecef;
  --ucd-white:     #ffffff;
  --ucd-text:      #1a2e42;
  --ucd-muted:     #5e7080;
  --ucd-border:    #d6dce4;
  --ucd-success:   #17a763;
  --ucd-warning:   #e08a12;
  --ucd-danger:    #d63b3b;
  --ucd-radius:    8px;
  --ucd-radius-lg: 14px;
  --ucd-shadow:    0 2px 12px rgba(13,33,55,.09);
  --ucd-shadow-lg: 0 8px 32px rgba(13,33,55,.14);
  --ucd-transition:250ms ease;
}

/* ── Reset ─────────────────────────────────────────────── */
.ucd-container *,
.ucd-dashboard * { box-sizing:border-box; }

/* ── Container ─────────────────────────────────────────── */
.ucd-container { max-width:1200px;margin:0 auto;padding:0 16px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ucd-text); }

/* ══════════════════════════════════════════
   PORTAL — Register + Login
══════════════════════════════════════════ */
.ucd-portal-wrap { max-width:540px;margin:40px auto;padding:0 16px; }

.ucd-portal-tabs { display:flex;border-bottom:2px solid var(--ucd-border);margin-bottom:0; }
.ucd-tab-btn {
    flex:1; padding:14px 20px; background:none; border:none; cursor:pointer;
    font-size:15px; font-weight:600; color:var(--ucd-muted);
    border-bottom:3px solid transparent; margin-bottom:-2px;
    transition:all var(--ucd-transition);
}
.ucd-tab-btn.active, .ucd-tab-btn:hover { color:var(--ucd-navy); }
.ucd-tab-btn.active { border-bottom-color:var(--ucd-gold); color:var(--ucd-navy); }

.ucd-tab-panel { display:none; }
.ucd-tab-panel.active { display:block; }

.ucd-portal-card {
    background:var(--ucd-white);
    border:1px solid var(--ucd-border);
    border-top:none;
    border-radius:0 0 var(--ucd-radius-lg) var(--ucd-radius-lg);
    padding:32px;
    box-shadow:var(--ucd-shadow);
}
.ucd-portal-card-header { margin-bottom:24px; }
.ucd-portal-card-header h2 { margin:0 0 6px;font-size:22px;color:var(--ucd-navy); }
.ucd-portal-card-header p { margin:0;font-size:14px;color:var(--ucd-muted);line-height:1.5; }
.ucd-portal-switch { text-align:center;font-size:13px;color:var(--ucd-muted);margin-top:16px;padding-top:16px;border-top:1px solid var(--ucd-border); }
.ucd-portal-note { font-size:12px;color:var(--ucd-muted);text-align:center;margin-top:12px;line-height:1.5; }

/* ── Form shared ─────────────────────────────────────────── */
.ucd-form { display:flex;flex-direction:column;gap:16px; }
.ucd-form-grid { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.ucd-field { display:flex;flex-direction:column;gap:5px; }
.ucd-field-full { grid-column:1/-1; }
.ucd-field label { font-size:13px;font-weight:600;color:var(--ucd-text); }
.ucd-field .req { color:var(--ucd-danger);margin-left:2px; }
.ucd-field input,
.ucd-field select,
.ucd-field textarea {
    padding:10px 13px;
    border:1.5px solid var(--ucd-border);
    border-radius:var(--ucd-radius);
    font-size:14px;
    font-family:inherit;
    color:var(--ucd-text);
    background:var(--ucd-white);
    width:100%;
    transition:border-color var(--ucd-transition),box-shadow var(--ucd-transition);
}
.ucd-field input:focus,
.ucd-field select:focus,
.ucd-field textarea:focus {
    border-color:var(--ucd-navy);
    outline:none;
    box-shadow:0 0 0 3px rgba(13,33,55,.1);
}
.ucd-field textarea { resize:vertical; min-height:100px; }
.ucd-field small { font-size:12px;color:var(--ucd-muted);line-height:1.4; }

.ucd-field-row { display:flex;align-items:center;justify-content:space-between;gap:8px; }
.ucd-checkbox-label { display:flex;align-items:center;gap:7px;font-size:13px;cursor:pointer; }
.ucd-checkbox-label input[type=checkbox] { accent-color:var(--ucd-navy);width:15px;height:15px; }
.ucd-link, .ucd-switch-tab { color:var(--ucd-gold);font-size:13px;font-weight:600;text-decoration:none;cursor:pointer;background:none;border:none;padding:0; }
.ucd-link:hover,.ucd-switch-tab:hover { color:var(--ucd-gold-l);text-decoration:underline; }

.ucd-input-reveal { position:relative;display:flex; }
.ucd-input-reveal input { flex:1;padding-right:42px; }
.ucd-reveal-btn { position:absolute;right:0;top:0;bottom:0;width:40px;background:none;border:none;cursor:pointer;color:var(--ucd-muted);font-size:16px;display:flex;align-items:center;justify-content:center; }

.ucd-form-section-title { font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ucd-gold);padding:8px 0 4px;border-bottom:1px solid var(--ucd-border); }

/* Buttons */
.ucd-btn {
    display:inline-flex;align-items:center;justify-content:center;gap:6px;
    padding:10px 20px;border-radius:var(--ucd-radius);font-family:inherit;
    font-size:14px;font-weight:600;cursor:pointer;border:none;
    text-decoration:none;transition:all var(--ucd-transition);white-space:nowrap;
}
.ucd-btn-primary  { background:var(--ucd-navy);color:#fff; }
.ucd-btn-primary:hover  { background:var(--ucd-steel);color:#fff;transform:translateY(-1px);box-shadow:var(--ucd-shadow); }
.ucd-btn-gold     { background:var(--ucd-gold);color:#fff; }
.ucd-btn-gold:hover { background:var(--ucd-gold-l);color:#fff; }
.ucd-btn-outline  { background:transparent;border:1.5px solid var(--ucd-border);color:var(--ucd-text); }
.ucd-btn-outline:hover { border-color:var(--ucd-navy);background:var(--ucd-surface);color:var(--ucd-navy); }
.ucd-btn-ghost    { background:transparent;color:var(--ucd-muted); }
.ucd-btn-ghost:hover { color:var(--ucd-text);background:var(--ucd-surface); }
.ucd-btn-full     { width:100%; }
.ucd-btn-lg       { padding:13px 28px;font-size:15px; }
.ucd-btn-sm       { padding:7px 14px;font-size:12px; }
.ucd-btn-icon     { padding:9px;width:38px;height:38px;background:var(--ucd-surface);border:1px solid var(--ucd-border);color:var(--ucd-muted); }
.ucd-btn-icon:hover { background:var(--ucd-navy);color:#fff;border-color:var(--ucd-navy); }

/* Form messages */
.ucd-form-msg { padding:11px 15px;border-radius:var(--ucd-radius);font-size:13px;font-weight:500;line-height:1.5; }
.ucd-form-msg.success { background:rgba(23,167,99,.1);color:#0d5c35;border:1px solid rgba(23,167,99,.3); }
.ucd-form-msg.error   { background:rgba(214,59,59,.08);color:#8b1515;border:1px solid rgba(214,59,59,.25); }
.ucd-form-msg.info    { background:rgba(42,83,128,.08);color:var(--ucd-steel);border:1px solid rgba(42,83,128,.2); }

/* Notices */
.ucd-notice { border-radius:var(--ucd-radius-lg);padding:20px 24px;margin-bottom:20px;display:flex;gap:16px;align-items:flex-start; }
.ucd-notice-warning { background:#fff8e1;border:1px solid #ffe082;color:#7a4b00; }
.ucd-notice-error   { background:#ffebee;border:1px solid #ef9a9a;color:#7a1515; }
.ucd-notice-success { background:#e8f5e9;border:1px solid #a5d6a7;color:#1b5e20; }
.ucd-notice-icon    { font-size:24px;flex-shrink:0;margin-top:2px; }
.ucd-notice h2      { margin:0 0 6px;font-size:18px; }
.ucd-notice p       { margin:0;font-size:14px;opacity:.85;line-height:1.55; }

/* Pending notice */
.ucd-pending-notice { flex-direction:column;align-items:center;text-align:center;padding:40px; }
.ucd-pending-icon   { font-size:48px;margin-bottom:8px; }

/* ══════════════════════════════════════════
   DASHBOARD
══════════════════════════════════════════ */
.ucd-dashboard { max-width:1100px;margin:0 auto;padding:0 16px 60px; }

/* Header */
.ucd-dash-header {
    display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
    background:var(--ucd-white);border:1px solid var(--ucd-border);border-radius:var(--ucd-radius-lg);
    padding:24px;margin-bottom:0;box-shadow:var(--ucd-shadow);flex-wrap:wrap;
}
.ucd-dash-header-info { display:flex;align-items:center;gap:16px; }
.ucd-dash-logo { width:72px;height:72px;border-radius:var(--ucd-radius);object-fit:cover;border:2px solid var(--ucd-border); }
.ucd-dash-logo-placeholder {
    width:72px;height:72px;border-radius:var(--ucd-radius);
    background:linear-gradient(135deg,var(--ucd-navy),var(--ucd-steel));
    color:#fff;font-size:24px;font-weight:800;
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.ucd-dash-company-name { margin:0 0 6px;font-size:22px;font-weight:800;color:var(--ucd-navy); }
.ucd-dash-meta { display:flex;align-items:center;gap:10px;flex-wrap:wrap; }
.ucd-dash-badge { font-size:13px;font-weight:700;display:inline-flex;align-items:center;gap:4px; }
.ucd-dash-status-pill { font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;letter-spacing:.04em;text-transform:uppercase; }
.ucd-vs-approved { background:rgba(23,167,99,.12);color:var(--ucd-success); }
.ucd-vs-pending  { background:rgba(224,138,18,.12);color:var(--ucd-warning); }
.ucd-vs-rejected { background:rgba(214,59,59,.1);color:var(--ucd-danger); }
.ucd-dash-header-actions { display:flex;gap:8px;align-items:center;flex-wrap:wrap; }

/* Tabs */
.ucd-dash-tabs {
    display:flex;background:var(--ucd-white);
    border:1px solid var(--ucd-border);border-top:none;
    border-radius:0;overflow:hidden;
}
.ucd-dash-tab {
    flex:1;padding:14px 16px;background:none;border:none;cursor:pointer;
    font-size:14px;font-weight:600;color:var(--ucd-muted);
    border-bottom:3px solid transparent;
    display:flex;align-items:center;justify-content:center;gap:6px;
    transition:all var(--ucd-transition);position:relative;
}
.ucd-dash-tab:hover  { color:var(--ucd-navy);background:var(--ucd-surface); }
.ucd-dash-tab.active { color:var(--ucd-navy);border-bottom-color:var(--ucd-gold);background:var(--ucd-white); }
.ucd-tab-count { background:var(--ucd-surface2);color:var(--ucd-muted);border-radius:20px;padding:1px 7px;font-size:11px;font-weight:700; }
.ucd-badge-count { background:var(--ucd-danger);color:#fff;border-radius:20px;padding:1px 7px;font-size:11px;font-weight:800;animation:pulse-badge 2s infinite; }
@keyframes pulse-badge{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}

/* Panels */
.ucd-dash-panel { display:none;background:var(--ucd-white);border:1px solid var(--ucd-border);border-top:none;border-radius:0 0 var(--ucd-radius-lg) var(--ucd-radius-lg);padding:28px;box-shadow:var(--ucd-shadow); }
.ucd-dash-panel.active { display:block; }

.ucd-dash-section { margin-bottom:32px;padding-bottom:28px;border-bottom:1px solid var(--ucd-surface2); }
.ucd-dash-section:last-child { border-bottom:none;margin-bottom:0;padding-bottom:0; }
.ucd-section-title { font-size:15px;font-weight:700;color:var(--ucd-navy);margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid var(--ucd-gold);display:flex;align-items:center;gap:8px; }
.ucd-section-hint { font-size:13px;color:var(--ucd-muted);margin:-8px 0 16px;line-height:1.5; }

/* Checkbox grid */
.ucd-checkbox-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:8px; }
@media(min-width:700px){ .ucd-checkbox-grid{grid-template-columns:repeat(3,1fr);} }

/* Logo upload */
.ucd-logo-upload-row { display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap; }
.ucd-current-logo { width:80px;height:80px;border-radius:var(--ucd-radius);object-fit:cover;border:2px solid var(--ucd-border); }
.ucd-doc-link { display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ucd-steel);margin-top:8px;text-decoration:underline; }

/* Form actions */
.ucd-form-actions { display:flex;align-items:center;gap:12px;padding-top:16px; }
.ucd-spinner { width:22px;height:22px;border:3px solid var(--ucd-border);border-top-color:var(--ucd-navy);border-radius:50%;animation:spin .7s linear infinite; }
@keyframes spin{to{transform:rotate(360deg)}}

/* ── Upload Zone ──────────────────────────────────────── */
.ucd-upload-zone {
    border:2px dashed var(--ucd-border);border-radius:var(--ucd-radius-lg);
    padding:32px 24px;text-align:center;background:var(--ucd-surface);
    cursor:pointer;transition:all var(--ucd-transition);margin-bottom:16px;
}
.ucd-upload-zone:hover,.ucd-upload-zone.drag-over {
    border-color:var(--ucd-gold);background:rgba(200,148,26,.05);
}
.ucd-upload-icon { font-size:40px;margin-bottom:8px; }
.ucd-upload-zone p { font-size:14px;color:var(--ucd-muted);margin:0 0 12px; }
.ucd-upload-zone small { font-size:12px;color:var(--ucd-muted);display:block;margin-top:8px; }

.ucd-caption-row { display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap; }
.ucd-caption-input { flex:1;min-width:180px;padding:9px 12px;border:1.5px solid var(--ucd-border);border-radius:var(--ucd-radius);font-size:13px;font-family:inherit; }

/* Project Grid */
.ucd-project-grid {
    display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;margin-top:16px;
}
.ucd-project-img-item { position:relative; }
.ucd-project-img-wrap { border-radius:var(--ucd-radius);overflow:hidden;aspect-ratio:4/3;background:var(--ucd-surface2);position:relative; }
.ucd-project-img-wrap img { width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--ucd-transition); }
.ucd-project-img-item:hover .ucd-project-img-wrap img { transform:scale(1.04); }
.ucd-img-overlay {
    position:absolute;inset:0;background:rgba(13,33,55,.6);
    display:flex;align-items:center;justify-content:center;
    opacity:0;transition:opacity var(--ucd-transition);
}
.ucd-project-img-item:hover .ucd-img-overlay { opacity:1; }
.ucd-img-delete {
    background:var(--ucd-danger);color:#fff;border:none;border-radius:6px;
    padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;
}
.ucd-img-caption { font-size:11px;color:var(--ucd-muted);margin-top:5px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.ucd-img-empty { grid-column:1/-1;text-align:center;padding:40px;color:var(--ucd-muted);font-size:14px; }

/* ── RFQ Inbox ────────────────────────────────────────── */
.ucd-inbox-header { display:flex;align-items:center;justify-content:space-between;margin-bottom:6px; }
.ucd-inbox-unread-label { font-size:12px;font-weight:700;padding:3px 10px;background:rgba(214,59,59,.1);color:var(--ucd-danger);border-radius:20px; }

.ucd-rfq-inbox-item {
    background:var(--ucd-white);border:1px solid var(--ucd-border);border-radius:var(--ucd-radius-lg);
    padding:16px;margin-bottom:10px;cursor:pointer;display:flex;
    gap:14px;align-items:flex-start;transition:all var(--ucd-transition);
    position:relative;
}
.ucd-rfq-inbox-item:hover { box-shadow:var(--ucd-shadow);border-color:var(--ucd-gold); }
.ucd-rfq-inbox-item.unread { border-left:4px solid var(--ucd-gold); }
.ucd-rfq-inbox-dot { width:10px;height:10px;background:var(--ucd-gold);border-radius:50%;flex-shrink:0;margin-top:5px; }
.ucd-rfq-inbox-content { flex:1;min-width:0; }
.ucd-rfq-inbox-title { font-size:15px;font-weight:700;color:var(--ucd-navy);margin-bottom:4px; }
.ucd-rfq-inbox-meta { display:flex;gap:10px;font-size:12px;color:var(--ucd-muted);flex-wrap:wrap; }
.ucd-rfq-inbox-preview { font-size:13px;color:var(--ucd-muted);margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.ucd-rfq-inbox-aside { text-align:right;flex-shrink:0;display:flex;flex-direction:column;gap:4px;align-items:flex-end; }
.ucd-rfq-date { font-size:11px;color:var(--ucd-muted); }
.ucd-rfq-responded-tag { font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px;background:rgba(23,167,99,.12);color:var(--ucd-success); }
.ucd-rfq-pending-tag   { font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px;background:rgba(224,138,18,.12);color:var(--ucd-warning); }

/* RFQ Detail */
.ucd-rfq-detail-card { background:var(--ucd-surface);border-radius:var(--ucd-radius-lg);padding:24px;border:1px solid var(--ucd-border); }
.ucd-rfq-detail-title { font-size:20px;font-weight:800;color:var(--ucd-navy);margin:0 0 12px; }
.ucd-rfq-meta-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px; }
.ucd-rfq-meta-item { background:var(--ucd-white);border:1px solid var(--ucd-border);border-radius:var(--ucd-radius);padding:10px 14px; }
.ucd-rfq-meta-label { font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--ucd-muted);font-weight:600;margin-bottom:2px; }
.ucd-rfq-meta-value { font-size:14px;font-weight:600;color:var(--ucd-text); }
.ucd-rfq-desc-block { background:var(--ucd-white);border:1px solid var(--ucd-border);border-radius:var(--ucd-radius);padding:16px;font-size:14px;line-height:1.7;color:var(--ucd-text);margin:16px 0; }
.ucd-rfq-sender-card { background:var(--ucd-white);border:1px solid var(--ucd-border);border-radius:var(--ucd-radius);padding:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap; }
.ucd-rfq-sender-avatar { width:40px;height:40px;background:var(--ucd-navy);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0; }
.ucd-rfq-respond-form { background:var(--ucd-white);border:1px solid var(--ucd-border);border-radius:var(--ucd-radius-lg);padding:20px;margin-top:16px; }
.ucd-rfq-respond-title { font-size:15px;font-weight:700;color:var(--ucd-navy);margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--ucd-gold); }
.ucd-rfq-responded-notice { background:rgba(23,167,99,.08);border:1px solid rgba(23,167,99,.3);border-radius:var(--ucd-radius);padding:12px;font-size:13px;color:#0d5c35;display:flex;align-items:center;gap:8px; }

/* ══════════════════════════════════════════
   DIRECTORY
══════════════════════════════════════════ */
.ucd-directory-wrap {}
.ucd-filter-bar { display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;background:var(--ucd-white);padding:16px;border-radius:var(--ucd-radius-lg);box-shadow:var(--ucd-shadow);border:1px solid var(--ucd-border); }
.ucd-search-input,.ucd-filter-select { padding:9px 13px;border:1.5px solid var(--ucd-border);border-radius:var(--ucd-radius);font-size:14px;font-family:inherit;background:var(--ucd-white);color:var(--ucd-text);transition:border-color var(--ucd-transition); }
.ucd-search-input { flex:1;min-width:180px; }
.ucd-search-input:focus,.ucd-filter-select:focus { border-color:var(--ucd-navy);outline:none; }
.ucd-verified-toggle { display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer;padding:9px 14px;border:1.5px solid var(--ucd-border);border-radius:var(--ucd-radius);background:var(--ucd-white); }

.ucd-directory-grid { display:grid;gap:20px;margin-bottom:32px; }
.ucd-cols-2 { grid-template-columns:repeat(2,1fr); }
.ucd-cols-3 { grid-template-columns:repeat(3,1fr); }
.ucd-cols-4 { grid-template-columns:repeat(4,1fr); }

.ucd-company-card { background:var(--ucd-white);border:1px solid var(--ucd-border);border-radius:var(--ucd-radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform var(--ucd-transition),box-shadow var(--ucd-transition),border-color var(--ucd-transition);position:relative; }
.ucd-company-card:hover { transform:translateY(-4px);box-shadow:var(--ucd-shadow-lg);border-color:transparent; }
.ucd-company-card.premium { border-color:var(--ucd-gold); }
.ucd-featured-ribbon { position:absolute;top:12px;left:12px;background:var(--ucd-gold);color:#fff;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.05em; }
.ucd-card-thumb { height:150px;background:var(--ucd-surface);display:flex;align-items:center;justify-content:center;overflow:hidden; }
.ucd-card-thumb img { width:100%;height:100%;object-fit:cover;transition:transform var(--ucd-transition); }
.ucd-company-card:hover .ucd-card-thumb img { transform:scale(1.04); }
.ucd-logo-placeholder { width:60px;height:60px;background:linear-gradient(135deg,var(--ucd-navy),var(--ucd-steel));border-radius:var(--ucd-radius);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:#fff; }
.ucd-card-body { padding:16px;flex:1;display:flex;flex-direction:column;gap:7px; }
.ucd-company-name { margin:0;font-size:15px;font-weight:700;line-height:1.3;display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap; }
.ucd-company-name a { color:var(--ucd-navy);text-decoration:none; }
.ucd-company-name a:hover { color:var(--ucd-gold); }
.ucd-badge { font-size:15px; }
.ucd-card-meta { font-size:12px;color:var(--ucd-muted);display:flex;align-items:center;gap:4px; }
.ucd-card-sectors { display:flex;flex-wrap:wrap;gap:4px; }
.ucd-sector-tag { font-size:11px;font-weight:500;padding:3px 8px;background:rgba(42,83,128,.08);color:var(--ucd-steel);border-radius:20px; }
.ucd-card-excerpt { font-size:13px;color:var(--ucd-muted);line-height:1.5;flex:1; }
.ucd-card-footer { padding:12px 16px;border-top:1px solid var(--ucd-border);display:flex;align-items:center;gap:8px; }
.ucd-no-results { text-align:center;padding:40px;color:var(--ucd-muted);font-size:15px; }

/* Stats widget */
.ucd-stats-widget { display:flex;background:var(--ucd-navy);border-radius:var(--ucd-radius-lg);overflow:hidden;margin-bottom:32px; }
.ucd-stat { flex:1;display:flex;flex-direction:column;align-items:center;padding:24px 16px;border-right:1px solid rgba(255,255,255,.08); }
.ucd-stat:last-child { border-right:none; }
.ucd-stat-number { font-size:32px;font-weight:800;color:#fff;line-height:1; }
.ucd-stat-label  { font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-top:4px; }

/* ══════════════════════════════════════════
   RFQ FORM (on company profile)
══════════════════════════════════════════ */
.ucd-rfq-form-wrap {
    background:var(--ucd-white);border:1px solid var(--ucd-border);border-radius:var(--ucd-radius-lg);
    padding:32px;margin-top:40px;box-shadow:var(--ucd-shadow);
}
.ucd-rfq-form-header { margin-bottom:24px; }
.ucd-rfq-form-header h3 { margin:0 0 6px;font-size:20px;font-weight:800;color:var(--ucd-navy); }
.ucd-rfq-form-header p  { margin:0;font-size:14px;color:var(--ucd-muted); }
.ucd-rfq-divider { grid-column:1/-1;display:flex;align-items:center;gap:12px;margin:4px 0;color:var(--ucd-muted);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase; }
.ucd-rfq-divider::before,.ucd-rfq-divider::after { content:'';flex:1;height:1px;background:var(--ucd-border); }

/* Loading */
.ucd-loading { text-align:center;padding:32px;color:var(--ucd-muted);font-size:14px; }
.ucd-loading::after { content:'';display:inline-block;width:20px;height:20px;border:3px solid var(--ucd-border);border-top-color:var(--ucd-navy);border-radius:50%;animation:spin .7s linear infinite;margin-left:8px;vertical-align:middle; }

/* Responsive */
@media(max-width:800px) {
    .ucd-form-grid { grid-template-columns:1fr; }
    .ucd-field-full { grid-column:1; }
    .ucd-cols-3,.ucd-cols-4 { grid-template-columns:repeat(2,1fr); }
    .ucd-dash-header { flex-direction:column; }
    .ucd-rfq-meta-grid { grid-template-columns:1fr; }
}
@media(max-width:560px) {
    .ucd-portal-card { padding:20px; }
    .ucd-cols-2,.ucd-cols-3,.ucd-cols-4 { grid-template-columns:1fr; }
    .ucd-dash-tabs { flex-direction:column; }
    .ucd-rfq-inbox-item { flex-direction:column; }
    .ucd-rfq-inbox-aside { align-items:flex-start;flex-direction:row;gap:8px; }
}

/* ═══════════════════════════════════════════════════════
   TAXONOMY ARCHIVE PAGES (Sector + Emirate)
   ═══════════════════════════════════════════════════════ */

/* ── Archive Header ──────────────────────────────────── */
.ucd-tax-header {
    display:flex;
    align-items:center;
    gap:20px;
    padding:24px 28px;
    border-radius:12px;
    border-left:6px solid;
    margin-bottom:24px;
    flex-wrap:wrap;
}
.ucd-tax-header-icon {
    font-size:52px;
    line-height:1;
    flex-shrink:0;
}
.ucd-tax-header-info { flex:1;min-width:0; }
.ucd-tax-header-label {
    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    opacity:.6;
    margin-bottom:4px;
}
.ucd-tax-header-title {
    font-size:clamp(22px,4vw,34px);
    font-weight:800;
    margin:0 0 6px;
    line-height:1.15;
}
.ucd-tax-header-desc {
    font-size:14px;
    opacity:.7;
    margin:0 0 6px;
}
.ucd-tax-header-count {
    font-size:13px;
    font-weight:600;
    opacity:.6;
}

/* ── Emirate / sector filter strip ───────────────────── */
.ucd-emirate-filter-strip {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
    padding:14px 0;
    margin-bottom:16px;
    border-bottom:1px solid var(--ucd-border,#d6dce4);
}
.ucd-strip-label {
    font-size:12px;
    font-weight:700;
    color:var(--ucd-muted,#5e7080);
    text-transform:uppercase;
    letter-spacing:.06em;
    flex-shrink:0;
    margin-right:4px;
}
.ucd-emirate-chip {
    padding:5px 14px;
    border-radius:20px;
    font-size:12px;
    font-weight:600;
    border:1.5px solid var(--ucd-border,#d6dce4);
    background:var(--ucd-white,#fff);
    color:var(--ucd-text,#1a2e42);
    text-decoration:none;
    transition:all .2s ease;
    cursor:pointer;
}
.ucd-emirate-chip:hover,
.ucd-emirate-chip.active {
    background:var(--ucd-navy,#0d2137);
    border-color:var(--ucd-navy,#0d2137);
    color:#fff;
}

/* ── Results bar ─────────────────────────────────────── */
.ucd-results-bar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:8px 0 16px;
    font-size:13px;
    color:var(--ucd-muted,#5e7080);
    border-bottom:1px solid var(--ucd-border,#d6dce4);
    margin-bottom:20px;
}

/* ── Related sectors strip ───────────────────────────── */
.ucd-related-sectors {
    margin-top:40px;
    padding-top:28px;
    border-top:1px solid var(--ucd-border,#d6dce4);
}
.ucd-related-sectors h3 {
    font-size:16px;
    font-weight:700;
    color:var(--ucd-navy,#0d2137);
    margin-bottom:14px;
}
.ucd-sectors-strip {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.ucd-sector-chip-link {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 14px;
    border-radius:20px;
    font-size:13px;
    font-weight:500;
    background:#f4f6f8;
    color:var(--sc,#1a3a5c);
    border:1.5px solid transparent;
    text-decoration:none;
    transition:all .2s ease;
}
.ucd-sector-chip-link:hover {
    border-color:var(--sc,#1a3a5c);
    background:#fff;
    color:var(--sc,#1a3a5c);
}
.ucd-sector-chip-link span {
    background:rgba(0,0,0,.08);
    border-radius:10px;
    padding:1px 7px;
    font-size:11px;
}

/* ── Empty state ─────────────────────────────────────── */
.ucd-empty-state {
    grid-column:1/-1;
    text-align:center;
    padding:48px 24px;
    color:var(--ucd-muted,#5e7080);
}
.ucd-empty-state p { margin-bottom:16px;font-size:15px; }

/* ═══════════════════════════════════════════════════════
   SECTORS INDEX PAGE
   ═══════════════════════════════════════════════════════ */

.ucd-sectors-index-wrap,
.ucd-emirates-index-wrap { padding:8px 0 40px; }

.ucd-index-header {
    text-align:center;
    margin-bottom:32px;
}
.ucd-index-header h2 {
    font-size:clamp(22px,4vw,34px);
    font-weight:800;
    color:var(--ucd-navy,#0d2137);
    margin-bottom:8px;
}
.ucd-index-header p {
    color:var(--ucd-muted,#5e7080);
    font-size:15px;
    max-width:520px;
    margin:0 auto;
    line-height:1.6;
}

/* Sectors index grid */
.ucd-sectors-index-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:32px;
}
@media(max-width:1000px){ .ucd-sectors-index-grid { grid-template-columns:repeat(3,1fr); } }
@media(max-width:700px) { .ucd-sectors-index-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:480px) { .ucd-sectors-index-grid { grid-template-columns:1fr; gap:10px; } }

.ucd-sector-index-card {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
    padding:22px 20px 18px;
    background:var(--si-bg,#f4f6f8);
    border:1.5px solid transparent;
    border-radius:12px;
    text-decoration:none;
    position:relative;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    overflow:hidden;
}
.ucd-sector-index-card::before {
    content:'';
    position:absolute;
    top:0;left:0;right:0;
    height:4px;
    background:var(--si-color,#1a3a5c);
    border-radius:12px 12px 0 0;
}
.ucd-sector-index-card:hover {
    transform:translateY(-4px);
    box-shadow:0 10px 28px rgba(0,0,0,.1);
    border-color:var(--si-color,#1a3a5c);
}
.ucd-sic-emoji  { font-size:32px;line-height:1; }
.ucd-sic-name   { font-size:14px;font-weight:700;color:var(--si-color,#1a3a5c);line-height:1.3; }
.ucd-sic-count  { font-size:12px;color:var(--ucd-muted,#5e7080); }
.ucd-sic-arrow  {
    position:absolute;
    bottom:16px;right:16px;
    font-size:18px;
    color:var(--si-color,#1a3a5c);
    opacity:.35;
    transition:opacity .2s, transform .2s;
}
.ucd-sector-index-card:hover .ucd-sic-arrow { opacity:.9; transform:translateX(3px); }

/* ═══════════════════════════════════════════════════════
   EMIRATES INDEX PAGE
   ═══════════════════════════════════════════════════════ */

.ucd-emirates-index-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:32px;
}
@media(max-width:900px) { .ucd-emirates-index-grid { grid-template-columns:repeat(3,1fr); } }
@media(max-width:600px) { .ucd-emirates-index-grid { grid-template-columns:repeat(2,1fr); gap:10px; } }

.ucd-emirate-index-card {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
    padding:22px 20px 18px;
    background:var(--ei-bg,#f4f6f8);
    border:1.5px solid transparent;
    border-radius:12px;
    text-decoration:none;
    position:relative;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.ucd-emirate-index-card::before {
    content:'';
    position:absolute;
    top:0;left:0;right:0;
    height:4px;
    background:var(--ei-color,#1a3a5c);
    border-radius:12px 12px 0 0;
}
.ucd-emirate-index-card:hover {
    transform:translateY(-4px);
    box-shadow:0 10px 28px rgba(0,0,0,.1);
    border-color:var(--ei-color,#1a3a5c);
}
.ucd-eic-icon  { font-size:32px;line-height:1; }
.ucd-eic-name  { font-size:16px;font-weight:800;color:var(--ei-color,#1a3a5c);line-height:1.2; }
.ucd-eic-desc  { font-size:12px;color:var(--ucd-muted,#5e7080);line-height:1.4; }
.ucd-eic-count { font-size:12px;color:var(--ucd-muted,#5e7080); }
.ucd-eic-arrow {
    position:absolute;
    bottom:16px;right:16px;
    font-size:18px;
    color:var(--ei-color,#1a3a5c);
    opacity:.35;
    transition:opacity .2s, transform .2s;
}
.ucd-emirate-index-card:hover .ucd-eic-arrow { opacity:.9; transform:translateX(3px); }

/* ── Shared index footer ─────────────────────────────── */
.ucd-index-footer {
    display:flex;
    gap:12px;
    justify-content:center;
    flex-wrap:wrap;
    margin-top:8px;
    padding-top:24px;
    border-top:1px solid var(--ucd-border,#d6dce4);
}

/* ── RFQ Inbox — sender contact line ─────────────────── */
.ucd-rfq-sender-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 6px;
    font-size: 12px;
    color: var(--ucd-text, #1a2e42);
}
.ucd-rfq-sender-line span {
    display: inline-flex;
    align-items: center;
    gap: 3px;
}
.ucd-rfq-contact-link {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: var(--ucd-steel, #2a5380);
    text-decoration: none;
    font-weight: 500;
}
.ucd-rfq-contact-link:hover {
    text-decoration: underline;
    color: var(--ucd-navy, #0d2137);
}
