/* ===== NativeFunds design system — premium fintech / investor-grade =====
   Charcoal base · Emerald primary · Gold accent · White typography.
   Dark is the DEFAULT (serious platforms are dark); light theme is a variant. */
:root{
  --paper:#0F1214;        /* charcoal canvas */
  --ink:#F4F6F7;          /* white typography */
  --wet-ink:#0FA968;      /* emerald primary */
  --emerald-dim:#0B7A4B;
  --highlight:#D4AF37;    /* gold accent */
  --gold-dim:#8A7226;
  --rule:#232A2E;
  --signed:#0FA968;
  --danger:#E5484D;
  --muted:#8B979E;
  --card:#161B1E;         /* raised surface */
  --panel:#1B2226;
  --soft:#1B2226;
  --glass:rgba(255,255,255,.04);
  --display:'Fraunces','Libre Caslon Text',Georgia,serif;
  --body:'Plus Jakarta Sans','Inter',system-ui,sans-serif;
  --mono:'IBM Plex Mono',monospace;
}
/* light variant for people who want it */
html[data-theme="light"]{
  --paper:#F7F9F8; --ink:#0F1214; --wet-ink:#0B7A4B; --highlight:#9A7B1F;
  --rule:#DFE4E2; --muted:#5C6A6F; --card:#ffffff; --panel:#ffffff; --soft:#EEF2F0;
  --glass:rgba(0,0,0,.03);
}
html[data-theme="light"] body{background:var(--paper)}
html[data-theme="light"] nav{background:rgba(247,249,248,.9)}
/* keep dark overrides working for anything still keyed to data-theme="dark" */
html[data-theme="dark"] body{background:var(--paper)}
html[data-theme="dark"] nav{background:rgba(15,18,20,.92)}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17.5px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:contain}
/* iOS safe-area padding so content clears the notch / home indicator */
nav{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
footer{padding-bottom:calc(20px + env(safe-area-inset-bottom))}
/* inputs at 16px+ so iOS Safari never zooms the page when focusing a field */
input,textarea,select,button{font-size:16px;font-family:inherit;max-width:100%}
button{touch-action:manipulation}
textarea{width:100%}
img,svg,video,iframe{max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:3px solid var(--wet-ink);outline-offset:2px}

/* light double-line section separator */
.sep{height:0;border:none;border-top:1px solid var(--rule);box-shadow:0 3px 0 -2px var(--rule);margin:34px 0 22px}

.hl{position:relative;white-space:nowrap}
.hl::before{content:"";position:absolute;left:-2px;right:-2px;top:52%;height:.62em;transform:translateY(-38%) skewX(-6deg);background:var(--highlight);z-index:-1}

nav{position:sticky;top:0;background:rgba(251,250,247,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule);z-index:50}
.nav-inner{max-width:1080px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.logo{font-family:var(--display);font-weight:700;font-size:1.25rem;text-decoration:none;white-space:nowrap}
.logo span{color:var(--wet-ink)}
.nav-links{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.nav-links a{text-decoration:none;font-size:.9rem;font-weight:500;color:var(--muted)}
.nav-links a:hover{color:var(--ink)}

.btn{display:inline-block;font-family:var(--body);font-weight:600;font-size:.9rem;padding:11px 22px;text-decoration:none;cursor:pointer;transition:background .12s}
.btn:hover{background:var(--wet-ink);border-color:var(--wet-ink)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--paper)}
.btn.small{padding:8px 14px;font-size:.82rem}
.btn.green{background:var(--signed);border-color:var(--signed)}
.btn:disabled{opacity:.5;cursor:default}

.clause{font-family:var(--mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:14px}
h1{font-family:var(--display);font-weight:700;font-size:clamp(2rem,5vw,3.6rem);line-height:1.12;letter-spacing:-.015em}
h2{font-family:var(--display);font-weight:700;font-size:clamp(1.5rem,3vw,2.1rem);margin-bottom:10px}
.lead{color:var(--muted);max-width:620px}

.wrap{max-width:1080px;margin:0 auto;padding:24px}
.narrow{max-width:520px;margin:0 auto;padding:64px 24px}

form .field{margin-bottom:16px}
label{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
input,select,textarea{width:100%;font-family:var(--body);font-size:.95rem;padding:12px 14px;border:1.5px solid var(--ink);background:var(--paper)}
textarea{min-height:90px;resize:vertical}
.checks{display:flex;gap:10px;flex-wrap:wrap}
.checks label{display:flex;align-items:center;gap:6px;border:1px solid var(--rule);padding:8px 12px;cursor:pointer;font-family:var(--body);font-size:.85rem;text-transform:none;letter-spacing:0;color:var(--ink)}
.checks input{width:auto}
.checks label:has(input:checked){background:var(--highlight);border-color:var(--ink)}

.error{font-family:var(--mono);font-size:.82rem;color:var(--danger);margin:10px 0}
.ok{font-family:var(--mono);font-size:.82rem;color:var(--signed);margin:10px 0}

.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;margin-top:28px}
.card{background:var(--card);border:1px solid var(--rule);padding:22px;display:flex;flex-direction:column;gap:10px}
.card:hover{border-color:var(--ink)}
.card .top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.card h3{font-family:var(--display);font-size:1.05rem}
.badge{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--wet-ink);white-space:nowrap}
.badge.score{background:var(--highlight);color:var(--ink);padding:3px 8px}
.card p{font-size:.88rem;color:var(--muted);flex:1}
.tags{display:flex;gap:6px;flex-wrap:wrap}
.tag{font-family:var(--mono);font-size:.7rem;padding:4px 9px;border:1px solid var(--rule);color:var(--muted)}
.mono{font-family:var(--mono);font-size:.82rem}
.status-pending{color:var(--muted)} .status-accepted{color:var(--signed)} .status-declined{color:var(--danger)}

.tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;border:1.5px solid var(--ink);margin:24px 0;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.tabs::-webkit-scrollbar{height:4px}
.tabs::-webkit-scrollbar-thumb{background:var(--rule);border-radius:2px}
.tabs button{font-family:var(--body);font-weight:600;font-size:.86rem;padding:10px 16px;background:transparent;border:none;cursor:pointer;color:var(--muted);white-space:nowrap;flex:0 0 auto}
.tabs button.active{background:var(--ink);color:var(--paper)}

.empty{font-family:var(--mono);font-size:.85rem;color:var(--muted);padding:40px 0;text-align:center;border:1px dashed var(--rule);margin-top:24px}
footer{border-top:1px solid var(--rule);padding:32px 24px;text-align:center;font-family:var(--mono);font-size:.72rem;color:var(--muted);margin-top:60px}

/* ===== MOBILE ===== */
@media(max-width:760px){
  .nav-inner{padding:12px 16px;gap:10px}
  .logo{font-size:1.15rem}
  .nav-links{gap:12px;width:100%;justify-content:flex-start;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:2px}
  .nav-links a{font-size:.82rem}
  .nav-links .btn{padding:7px 12px;font-size:.8rem}
  /* dashboard tab bar: horizontal scroll instead of overflowing right */
  .tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;border-left:none;border-right:none;border-radius:0;margin:16px 0;scrollbar-width:thin}
  .tabs::-webkit-scrollbar{height:4px}
  .tabs::-webkit-scrollbar-thumb{background:var(--rule);border-radius:2px}
  .tabs button{padding:9px 14px;font-size:.82rem;white-space:nowrap;flex:0 0 auto}
  .wrap{padding-left:16px;padding-right:16px}
  h1{font-size:1.9rem}
  h2{font-size:1.4rem}
  .cards{grid-template-columns:1fr}
  .stat-grid{grid-template-columns:repeat(2,1fr)}
  .hero-stat-row{gap:8px}
  .hstat{min-width:calc(50% - 6px);flex:1 1 calc(50% - 6px)}
  .dash-hero .wrap{padding-top:24px;padding-bottom:20px}
  .subtabs{gap:6px}
  .subtabs button{font-size:.8rem;padding:7px 12px}
}
@media(max-width:420px){
  .stat-grid{grid-template-columns:1fr}
  .hstat{min-width:100%;flex:1 1 100%}
}

/* ===== PREMIUM SURFACES / GLASSMORPHISM ===== */
nav{
  background:rgba(15,18,20,.72);
  backdrop-filter:blur(16px) saturate(140%);
  -webkit-backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid var(--rule);
}
.logo{letter-spacing:-.02em}
.logo span{color:var(--wet-ink)}
.card,.panel,.settings-card,.post-card,.news-card{
  background:var(--card);
  border:1px solid var(--rule);
  border-radius:14px;
  box-shadow:0 1px 2px rgba(0,0,0,.3);
}
.card:hover,.news-card:hover{border-color:#2E3940}
/* buttons: emerald primary, gold accent, quiet ghost */
.btn{
  background:var(--wet-ink); color:#04150D; border:1px solid var(--wet-ink);
  border-radius:10px; font-weight:650; letter-spacing:.01em;
}
.btn:hover{background:#12C077;border-color:#12C077}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--rule)}
.btn.ghost:hover{border-color:var(--wet-ink);color:var(--wet-ink);background:var(--glass)}
.btn.gold{background:var(--highlight);border-color:var(--highlight);color:#1A1403}
/* premium badge */
.premium{background:linear-gradient(95deg,var(--highlight),#E8C55B);color:#1A1403;border:none;font-weight:700;letter-spacing:.08em}
/* verification badges */
.verif{display:inline-flex;align-items:center;gap:4px;font-size:.66rem;font-weight:700;padding:3px 8px;border-radius:20px;letter-spacing:.04em;vertical-align:middle}
.verif.v-founder{background:rgba(15,169,104,.14);color:var(--wet-ink);border:1px solid rgba(15,169,104,.35)}
.verif.v-investor{background:rgba(212,175,55,.14);color:var(--highlight);border:1px solid rgba(212,175,55,.35)}
.verif.v-business{background:rgba(110,139,255,.14);color:#8FA5FF;border:1px solid rgba(110,139,255,.35)}
.verif.v-agri{background:rgba(120,200,110,.14);color:#78C86E;border:1px solid rgba(120,200,110,.35)}
.verif.v-none{background:var(--glass);color:var(--muted);border:1px solid var(--rule)}
/* section headings get a gold hairline */
.clause{color:var(--muted);letter-spacing:.16em}
h2,h3{letter-spacing:-.015em}
/* inputs: quiet, precise */
input,textarea,select{
  background:var(--panel); color:var(--ink); border:1px solid var(--rule); border-radius:10px;
}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--wet-ink);box-shadow:0 0 0 3px rgba(15,169,104,.15)}
/* tab bar: professional segmented */
.tabs-modern{background:var(--card);border:1px solid var(--rule)}
.tabs-modern button.active{background:var(--wet-ink);color:#04150D}
html[data-theme="dark"] .tabs-modern button.active{background:var(--wet-ink);color:#04150D}

/* ===== BUSINESS UPDATES (replaces Instagram stories) ===== */
.story-rings{display:flex;gap:10px;overflow-x:auto;padding:2px 0 16px;scrollbar-width:none}
.story-rings::-webkit-scrollbar{display:none}
.bu-add{display:flex;align-items:center;gap:8px;flex:none;background:var(--glass);border:1px dashed var(--rule);
  border-radius:12px;padding:12px 16px;color:var(--wet-ink);font-weight:600;font-size:.88rem;cursor:pointer;white-space:nowrap}
.bu-add:hover{border-color:var(--wet-ink)}
.bu-plus{font-size:1.15rem;font-weight:700}
.bu-chip{display:flex;align-items:center;gap:10px;flex:none;background:var(--card);border:1px solid var(--rule);
  border-left:3px solid var(--wet-ink);border-radius:12px;padding:9px 14px 9px 11px;cursor:pointer;text-align:left;white-space:nowrap}
.bu-chip.seen{border-left-color:var(--rule);opacity:.65}
.bu-chip:hover{border-color:#2E3940}
.bu-chip span{display:flex;flex-direction:column;line-height:1.25}
.bu-chip b{font-size:.86rem;color:var(--ink)}
.bu-chip small{font-size:.68rem;color:var(--muted);font-family:var(--mono)}
/* professional post cards */
.post-card.ig{background:var(--card);border:1px solid var(--rule);border-radius:14px;max-width:640px}
.post-headline{display:block;font-size:.72rem;color:var(--muted);line-height:1.3}
.ig-actions{gap:4px}
.ig-actions button{font-size:.82rem;font-weight:600;color:var(--muted);border-radius:8px;padding:8px 12px;gap:6px}
.ig-actions button:hover{background:var(--glass);color:var(--ink)}
.ig-actions button.liked{color:var(--wet-ink)}
.ig-actions button span{font-family:var(--mono);font-size:.78rem}
.ig-actions .save-btn{margin-left:auto}
.ig-media img{max-height:460px;border-radius:0}
.verif-state{padding:12px 14px;border-radius:10px;font-size:.9rem;margin-bottom:10px}
.verif-state.ok{background:rgba(15,169,104,.12);border:1px solid rgba(15,169,104,.35);color:var(--wet-ink)}
.verif-state.wait{background:rgba(212,175,55,.1);border:1px solid rgba(212,175,55,.3);color:var(--highlight)}
.verif-state.bad{background:rgba(229,72,77,.1);border:1px solid rgba(229,72,77,.3);color:var(--danger)}

/* ===== account types, composer, viewer gate ===== */
.acct-picker{display:flex;flex-direction:column;gap:8px;margin-top:6px}
.acct-opt{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--rule);border-radius:12px;cursor:pointer;background:var(--card)}
.acct-opt:has(input:checked){border-color:var(--wet-ink);background:rgba(15,169,104,.07)}
.acct-opt input{margin-top:3px;flex:none}
.acct-opt span{display:flex;flex-direction:column;gap:2px}
.acct-opt b{font-size:.95rem}
.acct-opt small{color:var(--muted);font-size:.78rem;line-height:1.35}
.acct-current{padding:10px 12px;background:var(--glass);border:1px solid var(--rule);border-radius:10px;margin-bottom:12px;font-size:.9rem}
.verify-block{border-top:1px solid var(--rule);margin-top:16px;padding-top:16px}
.vb-note{color:var(--muted);font-size:.82rem;line-height:1.45;margin-bottom:12px}
.photo-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.photo-chip{position:relative;width:74px;height:74px;border-radius:10px;overflow:hidden;background:var(--soft);
  border:1px solid var(--rule);display:flex;align-items:center;justify-content:center;font-size:.68rem;color:var(--muted)}
.photo-chip img{width:100%;height:100%;object-fit:cover}
.photo-chip button{position:absolute;top:2px;right:2px;background:rgba(0,0,0,.65);color:#fff;border:none;border-radius:50%;width:20px;height:20px;font-size:.65rem;cursor:pointer}
.photo-chip.err{color:var(--danger)}
/* composer */
.composer-bar{display:flex;gap:8px;align-items:center;margin-top:10px;flex-wrap:wrap}
.composer-bar input#postVideo{flex:1;min-width:130px}
.composer-icon{background:var(--glass);border:1px solid var(--rule);border-radius:9px;padding:9px 12px;
  color:var(--ink);font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap}
.composer-icon:hover{border-color:var(--wet-ink);color:var(--wet-ink)}
/* viewer (read-only) notice */
.viewer-note{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:18px;
  background:var(--glass);border:1px dashed var(--rule);border-radius:14px;margin-bottom:16px}
.viewer-note b{font-size:.95rem}
.viewer-note span{color:var(--muted);font-size:.85rem;line-height:1.5}
/* Business Update chips — cleaner (the old ones looked broken) */
.bu-add,.bu-chip{height:46px;border-radius:23px;padding:0 18px;font-size:.85rem;box-shadow:none}
.bu-add{background:var(--wet-ink);border:none;color:#04150D;font-weight:650}
.bu-add .bu-plus{font-size:1rem}
.bu-chip{background:var(--card);border:1px solid var(--rule);border-left:1px solid var(--rule);gap:8px}
.bu-chip b{font-size:.84rem;font-weight:600}
.bu-chip small{display:none}
.bu-chip:not(.seen){border-color:var(--wet-ink)}
/* account settings full-screen on phones */
@media(max-width:700px){
  .settings-wrap{min-height:100dvh;padding-bottom:40px}
}

/* ===== MY RAISES (on profile) ===== */
.raise-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px;margin:14px 0 16px}
.rs-stat{background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:14px 12px;text-align:center}
.rs-stat b{display:block;font-family:var(--mono);font-size:1.15rem;color:var(--ink)}
.rs-stat small{display:block;margin-top:4px;font-size:.58rem;letter-spacing:.1em;color:var(--muted);font-family:var(--mono)}
.raise-item{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:16px;margin-bottom:12px}
.ri-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px}
.ri-top b{font-size:1.02rem}
.ri-badge{font-size:.65rem;font-weight:700;padding:4px 9px;border-radius:20px;white-space:nowrap;font-family:var(--mono)}
.ri-badge.live{background:rgba(15,169,104,.14);color:var(--wet-ink);border:1px solid rgba(15,169,104,.35)}
.ri-badge.review{background:rgba(212,175,55,.12);color:var(--highlight);border:1px solid rgba(212,175,55,.32)}
.ri-line{color:var(--muted);font-size:.9rem;margin-bottom:8px;line-height:1.45}
.ri-meta{font-size:.72rem;color:var(--muted)}
.ri-meta b{color:var(--ink)}
.ri-note{margin-top:10px;padding:9px 12px;background:rgba(212,175,55,.08);border:1px solid rgba(212,175,55,.25);
  border-radius:9px;font-size:.78rem;color:var(--highlight)}
.ri-actions{display:flex;gap:8px;margin-top:12px}
.ri-footnote{color:var(--muted);font-size:.75rem;margin-top:14px;line-height:1.5;font-style:italic}
/* verification: changes requested */
.verif-issues{margin:10px 0;padding:12px 14px;background:rgba(229,72,77,.08);border:1px solid rgba(229,72,77,.3);border-radius:10px}
.verif-issues h4{font-size:.85rem;color:var(--danger);margin-bottom:8px}
.verif-issues li{list-style:none;font-size:.82rem;color:var(--ink);padding:5px 0;border-bottom:1px solid rgba(229,72,77,.15);line-height:1.45}
.verif-issues li:last-child{border-bottom:none}
.verif-issues li b{color:var(--danger)}
.build-stamp{text-align:center;color:var(--muted);opacity:.4;font-size:.6rem;letter-spacing:.14em;padding:20px 0 4px}

/* ============================================================
   SaaS POLISH — fixes the broken signup layout, tabs, back
   arrow and search bar. These override earlier rules on purpose.
   ============================================================ */

/* --- ACCOUNT PICKER (was collapsing: .acct-opt is a <label>, and the
       global ".field label" rule was forcing it uppercase/mono/narrow) --- */
.acct-picker{display:flex;flex-direction:column;gap:10px;margin-top:8px;width:100%}
label.acct-opt{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start;
  gap:12px;
  width:100%;
  padding:16px 18px;
  margin:0;
  border:1px solid var(--rule);
  border-radius:12px;
  background:var(--card);
  cursor:pointer;
  /* kill the inherited field-label styling */
  text-transform:none !important;
  letter-spacing:normal !important;
  font-family:var(--body) !important;
  font-size:1rem !important;
  color:var(--ink) !important;
  line-height:1.5;
  transition:border-color .15s, background .15s;
}
label.acct-opt:hover{border-color:var(--wet-ink)}
label.acct-opt input[type=radio]{
  flex:0 0 auto;
  width:20px;height:20px;margin:2px 0 0;
  accent-color:var(--wet-ink);
  appearance:auto;
}
label.acct-opt > span{
  display:flex !important;
  flex-direction:column;
  gap:4px;
  flex:1 1 auto;
  min-width:0;
  text-align:left;
}
label.acct-opt b{
  font-size:1rem;font-weight:650;
  text-transform:none !important;letter-spacing:normal !important;
  font-family:var(--body) !important;color:var(--ink) !important;
}
label.acct-opt small{
  font-size:.85rem;color:var(--muted) !important;line-height:1.5;
  text-transform:none !important;letter-spacing:normal !important;
  font-family:var(--body) !important;white-space:normal;
}
label.acct-opt:has(input:checked){border-color:var(--wet-ink);background:rgba(15,169,104,.08)}

/* --- TAB BAR: full width, bigger, fits the screen --- */
.tabs-modern{
  display:flex;width:100%;gap:4px;padding:5px;
  background:var(--card);border:1px solid var(--rule);border-radius:14px;margin-bottom:18px;
}
.tabs-modern button{
  flex:1 1 0;min-width:0;
  padding:13px 8px;
  font-size:.95rem;font-weight:650;
  border:none;border-radius:10px;background:transparent;color:var(--muted);
  cursor:pointer;white-space:nowrap;
}
.tabs-modern button.active{background:var(--wet-ink);color:#04150D}
.tabs-modern button:not(.active):hover{background:var(--glass);color:var(--ink)}

/* --- BACK: a real, visible arrow button --- */
.back-home,a.mono[onclick*="render"]{text-decoration:none}
.back-btn,.back-home{
  display:inline-flex !important;align-items:center;gap:8px;
  padding:10px 16px 10px 12px;
  margin-bottom:14px;
  background:var(--card);border:1px solid var(--rule);border-radius:10px;
  color:var(--ink) !important;font-size:.9rem;font-weight:600;
  text-transform:none !important;letter-spacing:normal !important;
  font-family:var(--body) !important;cursor:pointer;
}
.back-btn:hover,.back-home:hover{border-color:var(--wet-ink);color:var(--wet-ink) !important}
.back-btn::before,.back-home::before{content:"←";font-size:1.15rem;line-height:1}

/* --- SEARCH: fits properly --- */
.search-wrap,.adm-search,#searchInput,input[type=search]{width:100%;box-sizing:border-box}
#searchInput,.adm-search{
  padding:14px 18px;font-size:16px;border-radius:12px;
  background:var(--panel);border:1px solid var(--rule);color:var(--ink);
}
#searchInput:focus{border-color:var(--wet-ink);box-shadow:0 0 0 3px rgba(15,169,104,.15)}

/* --- FIELDS: consistent, readable --- */
.field{margin-bottom:16px;width:100%}
.field label{
  display:block;margin-bottom:7px;
  font-size:.78rem;font-weight:600;color:var(--muted);
  text-transform:none;letter-spacing:.01em;font-family:var(--body);
}
.field input,.field textarea,.field select{
  width:100%;box-sizing:border-box;
  padding:13px 16px;font-size:16px;line-height:1.5;
  border-radius:10px;background:var(--panel);border:1px solid var(--rule);color:var(--ink);
  font-family:var(--body);
}
.field textarea{min-height:88px;resize:vertical}
.field-row{display:flex;gap:12px;width:100%}
.field-row .field{flex:1 1 0;min-width:0}

/* --- WELCOME / AUTH: readable, centered, professional --- */
.narrow{max-width:460px;margin:0 auto;padding:24px 20px 60px;width:100%;box-sizing:border-box}
.auth-role-banner{
  display:flex;align-items:center;gap:14px;
  padding:18px;border-radius:14px;
  background:var(--card);border:1px solid var(--rule);
}
.auth-role-banner b{display:block;font-size:1.15rem;margin-bottom:3px;font-family:var(--display)}
.auth-role-banner small{color:var(--muted);font-size:.85rem;line-height:1.45}
.auth-role-emoji{font-size:1.5rem;flex:none}
.auth-switch{text-align:center;margin-top:20px;color:var(--muted);font-size:.9rem}
.auth-switch a{color:var(--wet-ink);font-weight:600}
.or-divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:var(--muted);font-size:.78rem}
.or-divider::before,.or-divider::after{content:"";flex:1;height:1px;background:var(--rule)}
.btn{padding:14px 20px;font-size:1rem;border-radius:11px;cursor:pointer}
.btn.small{padding:9px 14px;font-size:.85rem}

/* --- kill leftover uppercase-mono on things that should read as prose --- */
.settings-current,.vb-note,.viewer-note span,.ri-line{
  text-transform:none !important;letter-spacing:normal !important;font-family:var(--body) !important;
}

/* ===== VERIFIED SHIELD ===== */
.verif.v-shield{background:rgba(15,169,104,.14);color:var(--wet-ink);border:1px solid rgba(15,169,104,.4);font-weight:700}
/* per-field verification status (user side) */
.vfield-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.vfield{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:10px;
  border:1px solid var(--rule);background:var(--card)}
.vfield div{display:flex;flex-direction:column;gap:2px}
.vfield b{font-size:.9rem}
.vfield small{font-size:.78rem;color:var(--muted);line-height:1.4}
.vf-icon{flex:none;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:.78rem;font-weight:700}
.vfield.pending{border-color:var(--rule)}
.vfield.pending .vf-icon{background:var(--glass);color:var(--muted)}
.vfield.verified{border-color:rgba(15,169,104,.4);background:rgba(15,169,104,.06)}
.vfield.verified .vf-icon{background:var(--wet-ink);color:#04150D}
.vfield.rejected{border-color:rgba(229,72,77,.45);background:rgba(229,72,77,.06)}
.vfield.rejected .vf-icon{background:var(--danger);color:#fff}
.vfield.rejected small{color:var(--danger)}
.vf-resubmit{margin-top:14px;border:1px solid var(--rule);border-radius:12px;padding:14px;background:var(--card)}
.vf-resubmit summary{cursor:pointer;font-weight:600;font-size:.92rem}

/* ===== WELCOME: how-it-works row ===== */
.how-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:34px 0 30px;text-align:left}
.how-step{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:7px}
.how-num{width:28px;height:28px;border-radius:50%;background:var(--wet-ink);color:#04150D;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;font-family:var(--mono)}
.how-step b{font-size:1rem;color:var(--ink)}
.how-step > span:last-child{color:var(--muted);font-size:.87rem;line-height:1.55}
.welcome-lead{max-width:640px;margin:0 auto;line-height:1.65}
.welcome-title{line-height:1.08}
.welcome-badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:8px}
.wb{background:var(--glass);border:1px solid var(--rule);border-radius:12px;padding:14px;text-align:left}
.wb b{display:block;font-size:.9rem;margin-bottom:3px}
.wb span{color:var(--muted);font-size:.78rem;line-height:1.4}
.welcome-fine{margin-top:26px;color:var(--muted);opacity:.7;font-size:.68rem;letter-spacing:.05em;line-height:1.6}
.welcome-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.welcome-btn{min-width:190px}
.near-tag{display:inline-flex;align-items:center;gap:3px;font-size:.62rem;font-weight:600;padding:2px 7px;border-radius:20px;
  background:rgba(212,175,55,.14);color:var(--highlight);border:1px solid rgba(212,175,55,.3);margin-left:6px;vertical-align:middle}
.chip-shield{font-size:.7rem;color:var(--wet-ink)}

/* ===== PWA install + notifications ===== */
.install-bar{position:fixed;left:12px;right:12px;bottom:74px;z-index:900;display:flex;align-items:center;gap:10px;
  background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:12px 14px;
  box-shadow:0 8px 30px rgba(0,0,0,.4);animation:slideUp .3s ease}
@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
.install-bar span{flex:1;font-size:.83rem;line-height:1.4;color:var(--ink)}
.ib-x{background:none;border:none;color:var(--muted);font-size:1rem;cursor:pointer;padding:4px}
.notif-toggles{display:flex;flex-direction:column;gap:2px;margin:14px 0}
.ntog{display:flex;align-items:center;gap:11px;padding:11px 4px;cursor:pointer;border-bottom:1px solid var(--rule)}
.ntog:last-child{border-bottom:none}
.ntog input{width:19px;height:19px;accent-color:var(--wet-ink);cursor:pointer;flex:none}
.ntog span{font-size:.9rem}
.nrow{display:flex;gap:10px;margin-top:8px}
.ios-note{background:var(--glass);border:1px solid var(--rule);border-radius:12px;padding:15px}
.ios-note b{display:block;margin-bottom:6px;font-size:.92rem}
.ios-note p{color:var(--muted);font-size:.84rem;line-height:1.55;margin:0}


/* ===== nav Create-account CTA — must stand out on dark header AND blue hero ===== */
.nav-cta{
  background:var(--highlight,#D4AF37) !important;
  color:#1A1403 !important;
  border:1px solid var(--highlight,#D4AF37) !important;
  font-weight:700 !important;
  padding:10px 22px !important;
  border-radius:10px !important;
  box-shadow:0 2px 12px rgba(212,175,55,.35);
}
.nav-cta:hover{ background:#E6C34D !important; border-color:#E6C34D !important; box-shadow:0 3px 16px rgba(212,175,55,.5); }

/* ===== support / legal links in settings ===== */
.support-links{display:flex;flex-direction:column;gap:2px;margin-top:12px}
.support-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 4px;
  border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink);font-size:.9rem}
.support-row:last-child{border-bottom:none}
.support-row .sr-arrow{color:var(--muted);font-size:.78rem;font-family:var(--mono)}
.support-row:hover{color:var(--wet-ink)}

/* ===== share today's headlines strip ===== */
.share-daily-strip{display:flex;align-items:center;gap:14px;width:100%;margin:10px 0 4px;padding:14px 16px;
  background:linear-gradient(90deg,rgba(15,169,104,.14),rgba(212,175,55,.10));
  border:1px solid rgba(15,169,104,.3);border-radius:14px;cursor:pointer;text-align:left;color:var(--ink)}
.share-daily-strip:active{transform:scale(.99)}
.sds-icon{font-size:1.5rem;flex:none}
.sds-text{flex:1;display:flex;flex-direction:column;gap:2px}
.sds-text b{font-size:.94rem}
.sds-text small{color:var(--muted);font-size:.76rem;line-height:1.35}
.sds-arrow{color:var(--wet-ink);font-weight:700;flex:none}

/* ===== daily card share sheet ===== */
.dailycard-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.75);
  display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.dc-loading{color:#fff;text-align:center;font-size:.95rem;line-height:1.7}
.dc-sheet{background:var(--card);border:1px solid var(--rule);border-radius:18px;padding:20px;
  max-width:420px;width:100%;max-height:92vh;overflow-y:auto;position:relative}
.dc-x{position:absolute;top:14px;right:14px;background:var(--glass);border:none;color:var(--ink);
  width:32px;height:32px;border-radius:50%;font-size:1rem;cursor:pointer}
.dc-title{font-size:1.15rem;margin-bottom:4px}
.dc-sub{color:var(--muted);font-size:.82rem;line-height:1.5;margin-bottom:16px}
.dc-preview{width:100%;border-radius:12px;border:1px solid var(--rule);display:block;margin-bottom:16px}
.dc-actions{display:flex;flex-direction:column;gap:10px}

/* ===== gentle once-a-day prompt ===== */
.daily-prompt{position:fixed;left:12px;right:12px;bottom:78px;z-index:950;display:flex;align-items:center;gap:12px;
  background:var(--card);border:1px solid rgba(15,169,104,.4);border-radius:14px;padding:12px 14px;
  box-shadow:0 8px 30px rgba(0,0,0,.45);animation:dpUp .3s ease}
@keyframes dpUp{from{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}
.dp-emoji{font-size:1.4rem;flex:none}
.dp-text{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}
.dp-text b{font-size:.86rem}
.dp-text small{color:var(--muted);font-size:.72rem;line-height:1.3}
.dp-share{flex:none;background:var(--wet-ink);color:#04150D;border:none;font-weight:700;
  padding:9px 16px;border-radius:9px;font-size:.82rem;cursor:pointer}
.dp-x{flex:none;background:none;border:none;color:var(--muted);font-size:.95rem;cursor:pointer;padding:4px}
/* WhatsApp button */
.dc-wa{background:#25D366 !important;border-color:#25D366 !important;color:#04240F !important;
  font-weight:700 !important;display:flex;align-items:center;justify-content:center;gap:8px}
.dc-wa:hover{background:#20BD5A !important;border-color:#20BD5A !important}
