/* =====================================================================
   DOROO PARTNER — Legal document design system
   Shared by partner-terms.html and partner-privacy.html
   ===================================================================== */

:root{
  --bg:#F5F7FA;
  --ink:#0E1A26;
  --ink-soft:#5B6B7A;
  --ink-faint:#94A3B0;
  --line:rgba(14,26,38,.09);
  --line-strong:rgba(14,26,38,.14);

  --blue:#1E88E5;
  --blue-deep:#0B4DA1;
  --blue-bright:#29B6F6;
  --gold:#E8A23A;
  --gold-light:#FFD874;
  --mint:#1FCF8C;

  --font-display:'Manrope','Tajawal',-apple-system,BlinkMacSystemFont,sans-serif;
  --font-body:-apple-system,BlinkMacSystemFont,'Inter','Tajawal',sans-serif;
  --ease:cubic-bezier(.22,.8,.24,1);
}

*{box-sizing:border-box;}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:var(--font-body);-webkit-font-smoothing:antialiased;
}

/* Top bar */
.topbar{
  position:sticky;top:0;z-index:10;
  background:rgba(245,247,250,.78);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border-bottom:1px solid var(--line);
}
.topbar-inner{
  max-width:840px;margin:0 auto;padding:16px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.logo{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:800;font-size:17px;}
.logo img{width:26px;height:26px;border-radius:7px;}
.logo .word-doroo{background:linear-gradient(90deg,var(--blue-deep),var(--blue-bright));-webkit-background-clip:text;background-clip:text;color:transparent;}
.logo .word-partner{background:linear-gradient(90deg,var(--gold),var(--gold-light) 55%,var(--blue-bright));-webkit-background-clip:text;background-clip:text;color:transparent;}
.topbar a.back{font-size:13.5px;font-weight:600;color:var(--blue-deep);text-decoration:none;white-space:nowrap;}
.topbar a.back:hover{text-decoration:underline;}

/* Hero */
.doc-hero{max-width:840px;margin:0 auto;padding:52px 24px 8px;}
.doc-eyebrow{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--blue-deep);background:rgba(30,136,229,.08);
  padding:5px 11px;border-radius:100px;margin-bottom:16px;
}
.doc-hero h1{
  font-family:var(--font-display);font-size:36px;font-weight:800;
  letter-spacing:-.025em;margin:0 0 10px;line-height:1.12;
}
.doc-meta{color:var(--ink-faint);font-size:13.5px;margin:0 0 6px;}
.doc-intro{color:var(--ink-soft);font-size:15.5px;line-height:1.65;max-width:620px;margin:18px 0 0;}

/* Layout: content + sticky mini-nav */
.doc-layout{
  max-width:840px;margin:0 auto;padding:8px 24px 100px;
  display:grid;grid-template-columns:190px 1fr;gap:44px;
}
.doc-nav{position:sticky;top:76px;align-self:start;padding-top:8px;}
.doc-nav-title{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 12px;}
.doc-nav ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line);}
.doc-nav li{margin:0;}
.doc-nav a{
  display:block;padding:7px 0 7px 14px;margin-left:-2px;
  border-left:2px solid transparent;
  font-size:13px;color:var(--ink-soft);text-decoration:none;line-height:1.4;
  transition:color .15s var(--ease), border-color .15s var(--ease);
}
.doc-nav a:hover{color:var(--blue-deep);}
.doc-nav a.active{color:var(--blue-deep);font-weight:600;border-left-color:var(--blue-bright);}

.doc-body section{
  padding:26px 0;border-top:1px solid var(--line);
  scroll-margin-top:84px;
}
.doc-body section:first-child{border-top:none;padding-top:0;}
.doc-body h2{
  font-family:var(--font-display);font-size:19px;font-weight:800;
  letter-spacing:-.01em;margin:0 0 12px;
  display:flex;align-items:baseline;gap:10px;
}
.doc-body h2 .num{font-family:var(--font-display);font-size:13px;color:var(--blue-bright);font-weight:800;}
.doc-body h3{font-family:var(--font-display);font-size:15px;font-weight:700;margin:18px 0 8px;}
.doc-body p{font-size:14.5px;line-height:1.72;color:var(--ink-soft);margin:0 0 12px;}
.doc-body p:last-child{margin-bottom:0;}
.doc-body ul, .doc-body ol.plain{margin:0 0 12px;padding-left:20px;}
.doc-body li{font-size:14.5px;line-height:1.7;color:var(--ink-soft);margin-bottom:6px;}
.doc-body strong{color:var(--ink);font-weight:700;}
.doc-body a{color:var(--blue-deep);font-weight:600;text-decoration:none;}
.doc-body a:hover{text-decoration:underline;}

.callout{
  background:rgba(30,136,229,.06);
  border:1px solid rgba(30,136,229,.16);
  border-radius:14px;padding:16px 18px;margin:14px 0;
}
.callout p{color:var(--ink);font-size:13.8px;margin:0;}
.callout.warn{background:rgba(232,162,58,.09);border-color:rgba(232,162,58,.24);}

.ecosystem-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 12px;
}
.eco-item{
  border:1px solid var(--line-strong);border-radius:14px;padding:13px 14px;
  background:rgba(255,255,255,.6);
}
.eco-item .eco-name{font-family:var(--font-display);font-weight:800;font-size:13.5px;margin-bottom:3px;color:var(--ink);}
.eco-item .eco-desc{font-size:12.5px;color:var(--ink-soft);line-height:1.5;}

table.doc-table{width:100%;border-collapse:collapse;margin:8px 0 14px;font-size:13.8px;}
table.doc-table th, table.doc-table td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);color:var(--ink-soft);}
table.doc-table th{color:var(--ink);font-weight:700;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;}

.doc-footer{
  max-width:840px;margin:0 auto;padding:0 24px 60px;
  color:var(--ink-faint);font-size:12.5px;text-align:center;
}
.doc-footer a{color:var(--ink-faint);}

@media (max-width:760px){
  .doc-layout{grid-template-columns:1fr;}
  .doc-nav{position:static;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:8px;}
  .doc-nav ol{border-left:none;display:flex;flex-wrap:wrap;gap:6px;}
  .doc-nav a{border-left:none;padding:6px 10px;background:rgba(14,26,38,.04);border-radius:100px;}
  .doc-nav a.active{background:rgba(30,136,229,.1);}
  .ecosystem-grid{grid-template-columns:1fr;}
  .doc-hero h1{font-size:28px;}
}
