:root{
  --brand:  #5388f4;
  --brand2: #7fb0ff;
  --brand3: #2f6ef0;

  --bg:  #071225;
  --bg2: #0a1b3a;

  --text:   #f3f8ff;
  --muted:  rgba(243,248,255,0.74);
  --border: rgba(255,255,255,0.18);
  --panel:  rgba(255,255,255,0.10);

  --radius: 16px;
  --shadow: 0 18px 55px rgba(0,0,0,0.35);

  --focus: 0 0 0 3px rgba(83,136,244,0.45);
}

*{ box-sizing:border-box; }

html, body{
  height:100%;
}

body{
  margin:0;
  font-family: system-ui, sans-serif;
  color: var(--text);

  background:
    linear-gradient(
      135deg,
      rgba(83,136,244,0.95) 0%,
      rgba(83,136,244,0.75) 30%,
      rgba(83,136,244,0.50) 55%,
      rgba(10,27,58,0.95) 100%
    ),
    linear-gradient(180deg, var(--bg2) 0%, var(--bg) 100%);

  background-attachment: fixed;
}

/* ===== LAYOUT ===== */

.wrap{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

header{
  padding: 18px 20px 8px;
  display:grid;
  gap:10px;
}

h1{
  margin:0;
  font-size: clamp(22px, 3.3vw, 36px);
}

.sub{
  margin:0;
  color: var(--muted);
}

/* ===== BADGE ===== */

.badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background: rgba(255,255,255,0.12);
  border:1px solid var(--border);
  color: var(--muted);
  font-size:13px;
}

.badge .dot{
  width:9px;
  height:9px;
  border-radius:999px;
  background: linear-gradient(135deg, var(--brand), var(--brand2));
}

#readme-content{
  padding:15px 0px 0px 20px;
}

/* ===== DECK ===== */

.deck{
  flex:1;
  display:flex;
  flex-direction:column;
}

/* ===== TOOLBAR ===== */

.toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:12px 18px;
  background: rgba(255,255,255,0.08);
  border-bottom:1px solid var(--border);
}

.toolbar-left{
  display:flex;
  gap:10px;
}

.progress{
  color: var(--muted);
  font-size:13px;
}

/* ===== BUTTONS ===== */

.btn{
  background: rgba(255,255,255,0.12);
  border:1px solid var(--border);
  color:white;
  padding:8px 14px;
  border-radius:10px;
  cursor:pointer;
}

.btn:hover{
  background: rgba(83,136,244,0.35);
}

/* ===== STAGE ===== */

.stage{
  flex:1;
  position:relative;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:12px;
}

/* ===== SLIDE ===== */

.slide-frame{
  width:100%;
  height:100%;

  border-radius:18px;
  background: rgba(255,255,255,0.10);
  border:1px solid var(--border);

  box-shadow: var(--shadow);

  overflow:hidden;
}

.slide{
  width:100%;
  height:100%;

  padding: clamp(24px, 3vw, 60px);

  display:flex;
  flex-direction:column;
  gap:18px;

  font-size: clamp(20px, 1.8vw, 28px);
}

.slide h1,
.slide h2{
  font-size: clamp(34px, 4.5vw, 66px);
  margin:0;
}

.slide p{
  margin:0;
}

.slide ul{
  padding-left: 24px;
  margin:0;
}

/* ===== COLUMN FIX (IMPORTANT) ===== */

.md-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;  /* force side-by-side */
  gap: 2rem;
  width: 100%;
  align-items: start;
}

.md-column {
  min-width: 0;
}

/* Prevent images from breaking layout */
.md-column img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ===== TABLES ===== */

.md-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--border);
}

.md-table th,
.md-table td {
  padding: 8px;
  border: 1px solid var(--border);
}

.md-table thead th {
  background: rgba(83,136,244,0.35);
}

.md-table tbody tr:nth-child(odd) {
  background: rgba(255,255,255,0.08);
}

.md-table tbody tr:nth-child(even) {
  background: rgba(83,136,244,0.15);
}

/* ===== NAV ARROWS ===== */

.nav-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:56px;
  height:56px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,0.12);
  border:1px solid var(--border);
  cursor:pointer;
}

.nav-arrow:hover{
  background: rgba(83,136,244,0.35);
}

.nav-left{ left:12px; }
.nav-right{ right:12px; }

/* ===== NOTES ===== */

.notes-panel{
  display:none;
  background: rgba(0,0,0,0.4);
}

.notes-panel.show-notes{
  display:block;
}

/* ===== HIDDEN ===== */

.source-slides{
  display:none;
}
