/* style.css — Light-only theme (global)
   - No dark mode
   - No body.landing overrides needed
*/

/* =========================
   Tokens
   ========================= */
:root{
  --bg:#f4f6fb;
  --panel:#ffffff;
  --fg:#0b1220;
  --muted:#5b647a;
  --line:#e7ecf6;

  --accent:#7df9ff;   /* cyan */
  --accent2:#6f5bff;  /* violet (slightly deeper for readability on white) */
  --radius:16px;
}

*{ box-sizing:border-box; }
html,body{ height:100%; }

body{
  margin:0;
  font-family:system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:var(--bg);
  color:var(--fg);
  display:flex;
  justify-content:center;
}

.wrap{
  width:min(520px, 100%);
  padding:48px 16px;
  min-height:100vh;
}

/* =========================
   Card
   ========================= */
.card{
  background:var(--panel);
  color:var(--fg);
  border:1px solid #e3e8f4;
  border-radius:24px;
  padding:22px 18px;
  box-shadow:0 12px 30px rgba(0,0,0,.08);
}

.header{
  display:flex;
  gap:14px;
  align-items:center;
  margin-bottom:14px;
}

/* Logo container */
.avatar{
  width:56px;
  height:56px;
  border-radius:18px;
  background:#ffffff;
  border:1px solid #e3e8f4;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  flex:0 0 auto;
}

.avatar img{
  width:72%;
  height:72%;
  object-fit:contain;
  display:block;
}

.title{
  margin:0;
  font-size:18px;
  letter-spacing:.2px;
}

.sub{
  margin:2px 0 0;
  color:var(--muted);
  font-size:13px;
}

.hr{
  height:1px;
  background:var(--line);
  margin:14px 0;
}

/* =========================
   Links / Buttons
   ========================= */
.links{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:12px;
}

.links--tight{ margin-top:0; }

a.btn{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  text-decoration:none;
  padding:14px 14px;
  border-radius:16px;
  border:1px solid #e3e8f4;
  background:#f7f9fd;
  color:var(--fg);
  transition:transform .12s ease, border-color .12s ease, background .12s ease;
}

a.btn:hover{
  transform:translateY(-1px);
  border-color:rgba(125,249,255,.55);
  background:#ffffff;
}

a.btn .label{ font-weight:650; }

a.btn .meta{
  color:var(--muted);
  font-size:12px;
  white-space:nowrap;
}

a.btn.primary{ border-color:rgba(125,249,255,.35); }
a.btn.alt{ border-color:rgba(179,146,255,.30); }

a.btn.featured{
  border-color:rgba(255,207,90,.55);
  box-shadow:0 10px 24px rgba(0,0,0,.10);
}

/* =========================
   Small text / footer
   ========================= */
.footer{
  margin-top:14px;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}

.small{
  font-size:12px;
  color:var(--muted);
}

/* Links inside small text (B. Georgi, etc.) */
.small a{
  color:var(--accent2);
  text-decoration:none;
  border-bottom:1px dotted rgba(0,0,0,.25);
}
.small a:hover{
  border-bottom-style:solid;
}

/* Badges */
.badge{
  font-size:11px;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid #e3e8f4;
  color:var(--muted);
  background:transparent;
}

.badge--soft{
  background:rgba(0,0,0,.04);
  border-color:rgba(0,0,0,.10);
  color:rgba(0,0,0,.70);
}

/* Footer row with tiny divider */
.small--foot{
  margin:10px 0 0;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.foot-divider{
  display:inline-block;
  width:14px;
  height:1px;
  background:rgba(0,0,0,.12);
}

.foot-link{
  border-bottom-color:rgba(0,0,0,.25);
}

/* =========================
   Section helpers
   ========================= */
.section-title{
  font-size:16px;
  margin:0 0 8px;
}

.bullet-list{
  margin:0;
  padding-left:18px;
}
