/* Share Registry — Company Dashboard CSS v6.0
   Premium design: Manrope (headings) + Inter (body)
   ------------------------------------------------------------ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Manrope:wght@400;500;600;700;800;900&display=swap');

.srs-db { font-family:'Inter',system-ui,sans-serif; color:inherit; max-width:1290px; margin:0 auto; }
.srs-db * { box-sizing:border-box; }
.srs-db h1,.srs-db h2,.srs-db h3,.srs-db h4 {
  font-family:'Manrope','Inter',system-ui,sans-serif;
  letter-spacing:-0.03em;
}
:root {
  --db-navy:#0d1b4b; --db-navy2:#1a3080; --db-gold:#c49a28;
  --db-bg:#f1f5f9; --db-white:#fff; --db-line:#e2e8f0;
  --db-muted:#6b7280; --db-r:12px;
  --db-sh:0 2px 10px rgba(13,27,75,.07);
  --db-sh2:0 6px 24px rgba(13,27,75,.12);
}

/* ── Header ── */
.srs-db-header {
  display:flex; align-items:center; justify-content:space-between;
  padding:13px 20px; background:var(--db-navy);
  border-radius:var(--db-r) var(--db-r) 0 0; gap:12px;
}
.srs-db-header-left  { display:flex; align-items:center; gap:12px; min-width:0; }
.srs-db-header-right { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.srs-db-logo { width:42px; height:42px; object-fit:contain; background:#fff; border-radius:6px; padding:3px; }
.srs-db-logo-placeholder {
  width:42px; height:42px; border-radius:6px;
  background:rgba(255,255,255,.15); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-family:inherit; font-size:1.1em; font-weight:700;
}
.srs-db-company-name { font-family:inherit; font-size:1em; font-weight:700; color:#fff; line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:260px; }
.srs-db-reg { font-family:inherit; font-size:.72em; color:rgba(255,255,255,.6); margin-top:1px; }
.srs-db-user { display:flex; align-items:center; gap:8px; font-family:inherit; font-size:.85em; color:rgba(255,255,255,.8); }
.srs-db-avatar { width:30px; height:30px; border-radius:50%; background:rgba(255,255,255,.2); color:#fff; display:flex; align-items:center; justify-content:center; font-family:inherit; font-size:.8em; font-weight:700; }
.srs-db-logout-btn { font-family:inherit; font-size:.8em; font-weight:600; color:rgba(255,255,255,.75); text-decoration:none; padding:6px 12px; border:1px solid rgba(255,255,255,.3); border-radius:5px; transition:background .15s; }
.srs-db-logout-btn:hover { background:rgba(255,255,255,.1); color:#fff; }

/* ── Nav ── */
.srs-db-nav { display:flex; gap:2px; overflow-x:auto; background:var(--db-white); border-bottom:1px solid var(--db-line); padding:0 16px; scrollbar-width:none; }
.srs-db-nav::-webkit-scrollbar { display:none; }
.srs-db-tab { display:inline-flex; align-items:center; gap:7px; padding:13px 16px; font-family:inherit; font-size:.875em; font-weight:600; color:var(--db-muted); background:transparent; border:none; cursor:pointer; border-bottom:3px solid transparent; margin-bottom:-1px; white-space:nowrap; transition:color .15s, border-color .15s; }
.srs-db-tab:hover { color:var(--db-navy); }
.srs-db-tab.active { color:var(--db-navy); border-bottom-color:var(--db-navy); }
.srs-db-tab svg { flex-shrink:0; }

/* ── Content ── */
.srs-db-content { background:var(--db-bg); border:1px solid var(--db-line); border-top:none; border-radius:0 0 var(--db-r) var(--db-r); min-height:500px; padding:24px; }
.srs-db-panel { display:none; }
.srs-db-panel.active { display:block; }
.srs-db-panel-title { font-family:inherit; font-size:1.25em; font-weight:700; color:var(--db-navy); margin:0 0 20px; }
.srs-db-panel-head-row { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; gap:12px; }
.srs-db-panel-head-row .srs-db-panel-title { margin-bottom:0; }

/* ── Stats ── */
.srs-db-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:14px; margin-bottom:28px; }
.srs-db-stat { background:var(--db-white); border:1px solid var(--db-line); border-radius:var(--db-r); padding:18px; display:flex; align-items:center; gap:14px; box-shadow:var(--db-sh); }
.srs-db-stat-icon { width:42px; height:42px; border-radius:8px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.srs-db-stat-n { font-family:inherit; font-size:1.6em; font-weight:700; color:var(--db-navy); line-height:1; display:block; }
.srs-db-stat-l { font-family:inherit; font-size:.72em; color:var(--db-muted); text-transform:uppercase; letter-spacing:.05em; margin-top:3px; display:block; }

/* ── Sections ── */
.srs-db-section { background:var(--db-white); border:1px solid var(--db-line); border-radius:var(--db-r); padding:18px; margin-bottom:16px; box-shadow:var(--db-sh); }
.srs-db-section-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.srs-db-section-head h3 { font-family:inherit; font-size:.975em; font-weight:700; color:var(--db-navy); margin:0; }

/* ── Tables ── */
.srs-db-table-card { background:var(--db-white); border:1px solid var(--db-line); border-radius:var(--db-r); overflow:hidden; box-shadow:var(--db-sh); margin-bottom:16px; overflow-x:auto; }
.srs-db-table { width:100%; border-collapse:collapse; font-family:inherit; font-size:.875em; min-width:520px; }
.srs-db-table th { padding:10px 14px; text-align:left; font-weight:700; color:var(--db-muted); font-size:.78em; text-transform:uppercase; letter-spacing:.05em; background:var(--db-bg); border-bottom:1px solid var(--db-line); white-space:nowrap; }
.srs-db-table td { padding:11px 14px; border-bottom:1px solid var(--db-line); color:inherit; vertical-align:middle; }
.srs-db-table tr:last-child td { border-bottom:none; }
.srs-db-table tr:hover td { background:#f8fafc; }
.srs-db-table a { color:var(--db-navy); font-weight:600; text-decoration:none; }
.srs-db-table a:hover { text-decoration:underline; }

/* ── Badges ── */
.srs-db-badge { display:inline-block; padding:2px 9px; border-radius:50px; font-family:inherit; font-size:.72em; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.srs-db-badge-green { background:#dcfce7; color:#166534; }
.srs-db-badge-red   { background:#fee2e2; color:#991b1b; }
.srs-db-badge-gold  { background:#fef9ec; color:#92400e; }
.srs-db-badge-gray  { background:#f3f4f6; color:#374151; }
.srs-db-badge-blue  { background:#dbeafe; color:#1e40af; }

/* ── Buttons ── */
.srs-db-btn { display:inline-flex; align-items:center; gap:6px; padding:9px 18px; border-radius:6px; font-family:inherit; font-size:.875em; font-weight:600; border:2px solid transparent; cursor:pointer; text-decoration:none; white-space:nowrap; transition:background .15s, transform .12s, box-shadow .15s; }
.srs-db-btn-primary { background:var(--db-navy); color:#fff; border-color:var(--db-navy); }
.srs-db-btn-primary:hover { background:var(--db-navy2); transform:translateY(-1px); box-shadow:0 4px 12px rgba(13,27,75,.2); }
.srs-db-btn-outline { background:transparent; color:var(--db-navy); border-color:var(--db-navy); }
.srs-db-btn-outline:hover { background:var(--db-navy); color:#fff; }

.srs-link { background:none; border:none; cursor:pointer; font-family:inherit; font-size:.85em; font-weight:600; color:var(--db-navy); text-decoration:none; padding:0; }
.srs-link:hover { text-decoration:underline; }

/* ── Card / Form ── */
.srs-db-card { background:var(--db-white); border:1px solid var(--db-line); border-radius:var(--db-r); padding:20px; box-shadow:var(--db-sh); margin-bottom:16px; }
.srs-db-card-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; }
.srs-db-card-head strong { font-family:inherit; font-size:.975em; color:var(--db-navy); }
.srs-db-close { background:none; border:none; cursor:pointer; font-size:1.4em; line-height:1; color:var(--db-muted); padding:0 4px; }
.srs-db-close:hover { color:var(--db-navy); }
.srs-db-form-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:12px; }
.srs-db-field { display:flex; flex-direction:column; gap:5px; }
.srs-db-field label { font-family:inherit; font-size:.75em; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--db-navy); }
.srs-db-field input, .srs-db-field select, .srs-db-field textarea { font-family:inherit; font-size:.9em; color:inherit; padding:8px 11px; border:1.5px solid var(--db-line); border-radius:6px; background:#fff; width:100%; transition:border-color .15s, box-shadow .15s; }
.srs-db-field input:focus, .srs-db-field select:focus, .srs-db-field textarea:focus { outline:none; border-color:var(--db-navy); box-shadow:0 0 0 3px rgba(13,27,75,.07); }

/* ── Messages ── */
.srs-db-msg-ok  { border-radius:6px; padding:10px 14px; font-family:inherit; font-size:.875em; background:#ecfdf5; border:1px solid #a7f3d0; color:#065f46; margin-bottom:12px; }
.srs-db-msg-err { border-radius:6px; padding:10px 14px; font-family:inherit; font-size:.875em; background:#fef2f2; border:1px solid #fecaca; color:#991b1b; margin-bottom:12px; }
.srs-db-loading { text-align:center; padding:32px 16px; font-family:inherit; font-size:.875em; color:var(--db-muted); }
.srs-db-empty   { text-align:center; padding:28px 16px; font-family:inherit; font-size:.875em; color:var(--db-muted); background:var(--db-bg); border-radius:6px; }

/* ── Responsive ── */
@media (max-width:640px) {
  .srs-db-header { padding:10px 14px; }
  .srs-db-company-name { max-width:140px; font-size:.9em; }
  .srs-db-user span { display:none; }
  .srs-db-content { padding:14px; }
  .srs-db-stats { grid-template-columns:1fr 1fr; }
  .srs-db-form-grid { grid-template-columns:1fr; }
}

/* Action buttons */

/* ── Shareholder action buttons ── */
.srs-db-actions {
    display: flex;
    flex-direction: row;
    gap: 6px;
    align-items: center;
    white-space: nowrap;
}
.srs-dash-action-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    font-size: .75rem;
    font-weight: 600;
    font-family: inherit;
    border-radius: 5px;
    border: 1px solid #cbd5e1;
    background: #fff;
    color: #374151;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.4;
    transition: background .15s, border-color .15s, color .15s;
    white-space: nowrap;
}
.srs-dash-action-btn:hover {
    background: #f1f5f9;
    border-color: #94a3b8;
    color: #0d1b4b;
    text-decoration: none;
}
.srs-dash-action-btn svg {
    flex-shrink: 0;
    vertical-align: middle;
}
.srs-dash-action-danger {
    border-color: #fca5a5;
    color: #dc2626;
}
.srs-dash-action-danger:hover {
    background: #fef2f2;
    border-color: #dc2626;
    color: #b91c1c;
}

/* ── Company Settings ── */
.srs-settings-grid { display: flex; flex-direction: column; gap: 20px; }
.srs-settings-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 22px 24px; }
.srs-settings-card-title { font-size: .9rem; font-weight: 700; color: #0d1b4b; margin-bottom: 16px; padding-bottom: 10px; border-bottom: 1px solid #f1f5f9; }
.srs-settings-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.srs-settings-field { display: flex; flex-direction: column; gap: 5px; }
.srs-settings-field.full { grid-column: 1 / -1; }
.srs-settings-field label { font-size: .78rem; font-weight: 600; color: #374151; text-transform: uppercase; letter-spacing: .3px; }
.srs-settings-field input, .srs-settings-field select { padding: 9px 12px; border: 1.5px solid #e2e8f0; border-radius: 8px; font-size: .9rem; color: #0f172a; width: 100%; box-sizing: border-box; transition: border-color .2s; }
.srs-settings-field input:focus, .srs-settings-field select:focus { outline: none; border-color: #0d1b4b; box-shadow: 0 0 0 3px rgba(13,27,75,.08); }

/* ── Transfer form ── */
.srs-form-card { background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:22px 24px; margin-bottom:20px; }
.srs-form-card-title { font-size:.9rem; font-weight:700; color:#0d1b4b; margin-bottom:16px; padding-bottom:10px; border-bottom:1px solid #f1f5f9; }
.srs-form-2col { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.srs-form-group { display:flex; flex-direction:column; gap:5px; }
.srs-form-group.full { grid-column:1/-1; }
.srs-form-group label { font-size:.78rem; font-weight:600; color:#374151; text-transform:uppercase; letter-spacing:.3px; }
.srs-form-group input, .srs-form-group select, .srs-form-group textarea { padding:9px 12px; border:1.5px solid #e2e8f0; border-radius:8px; font-size:.9rem; color:#0f172a; width:100%; box-sizing:border-box; transition:border-color .2s; font-family:inherit; }
.srs-form-group input:focus, .srs-form-group select:focus, .srs-form-group textarea:focus { outline:none; border-color:#0d1b4b; box-shadow:0 0 0 3px rgba(13,27,75,.08); }
.srs-hint { font-size:.75rem; color:#0d1b4b; font-weight:600; }

/* ── Search input ── */
.srs-search-input { width:100%; padding:10px 16px; border:1.5px solid #e2e8f0; border-radius:9px; font-size:.9rem; box-sizing:border-box; transition:.2s; }
.srs-search-input:focus { outline:none; border-color:#0d1b4b; box-shadow:0 0 0 3px rgba(13,27,75,.08); }

/* ── Global search ── */
.srs-global-search-wrap { max-width:640px; }
.srs-global-search-input { width:100%; padding:13px 16px 13px 44px; border:1.5px solid #e2e8f0; border-radius:10px; font-size:1rem; box-sizing:border-box; transition:.2s; }
.srs-global-search-input:focus { outline:none; border-color:#0d1b4b; box-shadow:0 0 0 3px rgba(13,27,75,.08); }
.srs-filter-chip { display:inline-flex; align-items:center; gap:6px; padding:5px 12px; border:1.5px solid #e2e8f0; border-radius:20px; font-size:.8rem; font-weight:600; color:#64748b; cursor:pointer; background:#fff; transition:.2s; }
.srs-filter-chip.active { border-color:#0d1b4b; color:#0d1b4b; background:#eff6ff; }
.srs-filter-chip input { display:none; }
.srs-search-result-item { border-radius:10px; padding:14px 16px; margin-bottom:10px; border:1px solid #e2e8f0; }

/* ── Reports ── */
.srs-reports-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media(max-width:640px) { .srs-reports-grid { grid-template-columns:1fr; } }
.srs-report-card { background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:20px; display:flex; align-items:flex-start; gap:16px; }
.srs-report-icon { width:48px; height:48px; border-radius:12px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.srs-report-info { flex:1; }
.srs-report-title { font-size:.95rem; font-weight:700; color:#0f172a; margin-bottom:5px; }
.srs-report-desc { font-size:.82rem; color:#64748b; line-height:1.55; }
.srs-report-btn { display:inline-flex; align-items:center; gap:6px; padding:7px 14px; background:#f8fafc; border:1px solid #e2e8f0; border-radius:7px; font-size:.8rem; font-weight:600; cursor:pointer; color:#374151; transition:.2s; white-space:nowrap; flex-shrink:0; }
.srs-report-btn:hover { background:#0d1b4b; color:#fff; border-color:#0d1b4b; }

/* ── Coloured stat cards (ledger/dividends style) ── */
.srs-stat-card {
    background: #fff;
    border-radius: 12px;
    padding: 20px 22px;
    border-top: 4px solid #e2e8f0;
    box-shadow: 0 1px 6px rgba(0,0,0,.06);
}
.srs-stat-card.blue  { border-top-color: #3b82f6; }
.srs-stat-card.green { border-top-color: #22c55e; }
.srs-stat-card.gold  { border-top-color: #f59e0b; }
.srs-stat-card.navy  { border-top-color: #0d1b4b; }
.srs-stat-card-label {
    font-size: .72rem; font-weight: 700; color: #64748b;
    text-transform: uppercase; letter-spacing: .6px; margin-bottom: 10px;
}
.srs-stat-card-value {
    font-size: 1.9rem; font-weight: 800; color: #0f172a; line-height: 1;
}
.srs-stat-card-value.blue  { color: #2563eb; }
.srs-stat-card-value.green { color: #16a34a; }
.srs-stat-card-value.gold  { color: #d97706; }
.srs-stat-card-sub {
    font-size: .8rem; color: #64748b; margin-top: 5px; font-weight: 500;
}
.srs-stat-grid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin-bottom: 24px; }
.srs-stat-grid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-bottom: 24px; }
@media(max-width:768px){ .srs-stat-grid-4,.srs-stat-grid-3 { grid-template-columns: 1fr 1fr; } }


/* [srs-mobile-patch v1] */
html{-webkit-text-size-adjust:100%;}
@media (max-width: 782px){
  .srs-db-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:4px;scrollbar-width:thin;}
  .srs-db-tab{flex:0 0 auto;white-space:nowrap;}
  .srs-db-stats,.srs-stats-grid,.srs-sa-stats,.srs-cards{display:grid !important;grid-template-columns:1fr 1fr !important;gap:10px !important;}
  .srs-db-table-wrap,.srs-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  table.srs-table,table.srs-db-table,.srs-db-content table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .srs-settings-field input,.srs-settings-field select,.srs-settings-field textarea,.srs-form-field input,.srs-form-field select{width:100% !important;max-width:100% !important;box-sizing:border-box;}
  .srs-form-row,.srs-field-row,.srs-settings-row{flex-direction:column !important;}
  .srs-db-header,.srs-sa-header,.srs-sa-tabs{flex-wrap:wrap;gap:8px;}
  .srs-sa-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;}
  .srs-modal,.srs-dialog{width:96vw !important;max-width:96vw !important;left:2vw !important;right:2vw !important;}
  .srs-btn,button.srs-button{min-height:40px;}
}
