
:root{
  --doc-bg:#f4f7fb;
  --doc-surface:#ffffff;
  --doc-surface-soft:#f8fbff;
  --doc-border:#dbe4f0;
  --doc-border-strong:#c6d6ea;
  --doc-ink:#0f172a;
  --doc-muted:#5b6b82;
  --doc-soft:#7a8aa3;
  --doc-primary:#245bff;
  --doc-primary-2:#6ea8ff;
  --doc-accent:#14b8a6;
  --doc-warning:#f59e0b;
  --doc-danger:#e11d48;
  --doc-success:#0f9f6e;
  --doc-shadow:0 16px 40px rgba(18,38,63,.08);
  --doc-shadow-soft:0 8px 24px rgba(18,38,63,.06);
  --doc-radius:20px;
}
html,body{ background:var(--doc-bg); color:var(--doc-ink); }
body{ -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
a{ text-underline-offset:2px; }
main{ background:transparent; }
.hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at top right, rgba(110,168,255,.18), transparent 34%),
    radial-gradient(circle at left center, rgba(20,184,166,.10), transparent 28%),
    linear-gradient(180deg,#ffffff 0%,#f8fbff 58%,#f2f7ff 100%);
  color:var(--doc-ink);
  border:1px solid var(--doc-border);
  border-radius:30px;
  box-shadow:var(--doc-shadow-soft);
}
.hero::after{
  content:"";
  position:absolute;
  inset:auto -10% -35% auto;
  width:340px;
  height:340px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.10), transparent 62%);
  pointer-events:none;
}
.hero h1,.hero .h3{ font-size:clamp(1.7rem, 2.1vw, 2.3rem); font-weight:800; letter-spacing:-.03em; }
.hero .text-white-50{ color:var(--doc-muted)!important; max-width:62rem; font-size:1.02rem; }
.hero a{ color:var(--doc-primary); }
.badge-soft, .hero .badge-soft{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  padding:.48rem .78rem;
  border-radius:999px;
  border:1px solid #d7e3ff;
  background:#eef4ff;
  color:#214a96;
  box-shadow:none;
}
.hero .small{ color:var(--doc-muted)!important; }
.small-muted{ color:var(--doc-muted); }
.crumb{ font-size:.92rem; margin-bottom:1rem; color:var(--doc-soft); }
.crumb a{ color:var(--doc-primary); }
.callout, .alert{
  border:1px solid var(--doc-border);
  border-radius:18px;
  background:linear-gradient(180deg, #fff, #fbfdff);
  box-shadow:var(--doc-shadow-soft);
}
.callout{ padding:1.1rem 1.15rem; }
.callout.info, .alert-info{ border-left:4px solid var(--doc-primary); }
.callout.warn, .alert-warning{ border-left:4px solid var(--doc-warning); }
.callout.danger, .alert-danger{ border-left:4px solid var(--doc-danger); }
.callout.success, .alert-success{ border-left:4px solid var(--doc-success); }
.callout .fw-semibold, .alert b{ color:var(--doc-ink); }
.codebox{
  position:relative;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(9,19,34,.14);
  box-shadow:0 18px 38px rgba(8,16,32,.12);
}
.codebox pre{
  margin:0;
  padding:1.15rem;
  background:linear-gradient(180deg, #08101d, #0d1b2f 52%, #0b1730);
  color:#eef6ff;
  border-radius:18px;
  overflow:auto;
}
.codebox code{ color:inherit; }
.copy-btn{
  position:absolute;
  right:.8rem;
  top:.7rem;
  z-index:3;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  backdrop-filter:blur(6px);
}
.kbd{ display:inline-block; padding:.2rem .45rem; font-size:.85em; color:#fff; background:#212529; border-radius:.35rem; }
.sidebar{
  background:linear-gradient(180deg, #f8fbff, #f3f7fc 60%, #eef4fb);
  border-right:1px solid var(--doc-border);
  min-height:100vh;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.55);
}
.sidebar .list-group{ gap:.3rem; background:transparent; }
.sidebar .list-group-item{
  border:1px solid transparent;
  background:transparent;
  color:var(--doc-ink);
  border-radius:14px!important;
  font-weight:500;
}
.sidebar .list-group-item:hover{
  background:#fff;
  border-color:var(--doc-border);
  box-shadow:var(--doc-shadow-soft);
}
.sidebar .list-group-item.active{
  background:linear-gradient(135deg, rgba(36,91,255,.13), rgba(20,184,166,.11));
  color:#14368e;
  border-color:#bdd0ff;
  font-weight:700;
}
.sidebar-title{ font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; color:var(--doc-soft); margin-top:1rem; margin-bottom:.7rem; font-weight:700; }
.sidebar .nav-link{ color:var(--doc-muted); }
.sidebar .nav-link:hover{ color:var(--doc-primary); }
.table{
  --bs-table-bg:transparent;
  border-color:var(--doc-border);
}
.table-responsive{
  border:1px solid var(--doc-border);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--doc-shadow-soft);
}
.table thead th{
  background:linear-gradient(180deg, #f8fbff, #edf4fc);
  color:#30415f;
  border-bottom:1px solid var(--doc-border);
  font-size:.92rem;
}
.table td,.table th{ padding:.85rem .95rem; }
.table tbody tr:nth-child(odd){ background:rgba(248,251,255,.82); }
.table code{ color:#0f4fa8; }
hr.soft{ border:0; border-top:1px solid var(--doc-border); opacity:1; }
section{ scroll-margin-top:88px; }
section + section{ margin-top:1.65rem!important; }
h2.h4, h3.h5, h3.h6{ color:#10213a; font-weight:800; letter-spacing:-.02em; }
p, li{ line-height:1.65; }
code{ color:#16408b; }
.btn{ border-radius:999px; font-weight:600; box-shadow:none; }
.btn-primary{ background:linear-gradient(135deg, #245bff, #1d4ed8); border-color:#245bff; }
.btn-primary:hover{ background:linear-gradient(135deg, #1f4ee6, #1b45c2); border-color:#1f4ee6; }
.btn-outline-primary{ border-color:#bfd2ff; color:#1846a3; background:#fff; }
.btn-outline-primary:hover{ background:#eff5ff; color:#11398e; border-color:#94b4ff; }
.btn-outline-secondary{ border-color:var(--doc-border-strong); color:#385073; background:#fff; }
.btn-outline-secondary:hover{ background:#f3f7fd; color:#1d3658; }
.doc-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; }
.doc-card{
  border:1px solid var(--doc-border);
  border-radius:20px;
  background:linear-gradient(180deg, #ffffff, #f9fbff);
  box-shadow:var(--doc-shadow-soft);
  padding:1.05rem 1.1rem;
}
.doc-card h3, .doc-card .h6, .doc-card .fw-semibold{ margin-bottom:.35rem; color:#10213a; }
.doc-card p{ margin-bottom:0; color:var(--doc-muted); }
.doc-kicker{ display:inline-flex; align-items:center; gap:.4rem; font-size:.78rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#3b5aa0; }
.doc-chipbar{ display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.85rem; }
.doc-chip{
  display:inline-flex; align-items:center; gap:.38rem;
  padding:.45rem .72rem; border-radius:999px;
  background:#eef4ff; border:1px solid #d7e3ff; color:#214a96; font-weight:600; font-size:.9rem;
}
.doc-hero-meta{ display:flex; flex-wrap:wrap; gap:.55rem; margin-top:.95rem; }
.doc-hero-meta .doc-chip{ background:#eef4ff; border-color:#d7e3ff; color:#214a96; }
.doc-lead{ font-size:1.05rem; color:var(--doc-muted); max-width:62rem; }
.doc-section-intro{ max-width:62rem; color:var(--doc-muted); }
.doc-mini{ font-size:.94rem; color:var(--doc-muted); }
.doc-footer-nav{
  border:1px solid var(--doc-border);
  border-radius:20px;
  background:linear-gradient(180deg,#ffffff,#f9fbff);
  box-shadow:var(--doc-shadow-soft);
  padding:1rem 1.1rem;
}
.doc-footer-nav .small{ color:var(--doc-soft); }
.doc-tag{ display:inline-block; padding:.2rem .55rem; border-radius:999px; background:#eef4ff; color:#38579f; font-size:.78rem; font-weight:700; }
.doc-split{ display:grid; grid-template-columns:1.2fr .8fr; gap:1rem; }
.doc-note-list{ margin:0; padding-left:1.1rem; }
@media (max-width:991px){
  .sidebar{ min-height:auto; border-right:0; border-bottom:1px solid var(--doc-border); }
  .doc-split{ grid-template-columns:1fr; }
}
/* Lightweight local syntax colors (fallback, no external lib needed) */
.codebox .tok-kw{ color:#9cdcfe; font-weight:600; }
.codebox .tok-str{ color:#ce9178; }
.codebox .tok-cmt{ color:#80868b; font-style:italic; }
.codebox .tok-num{ color:#b5cea8; }
.codebox .tok-tag{ color:#4fc1ff; }
.codebox .tok-attr{ color:#c586c0; }
.codebox .tok-fn{ color:#6a9955; }
.codebox .tok-prop{ color:#4fc1ff; }


.sidebar .position-sticky{
  top:0;
}
.doc-side-intro{
  padding:1rem 1rem 1.05rem;
  border:1px solid rgba(36,91,255,.12);
  border-radius:18px;
  background:
    radial-gradient(circle at top right, rgba(110,168,255,.18), transparent 38%),
    linear-gradient(180deg,#ffffff,#f6fbff);
  box-shadow:var(--doc-shadow-soft);
  margin-bottom:1rem;
}
.doc-side-kicker{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#5a78b7;
  margin-bottom:.55rem;
}
.doc-side-title{
  font-size:1rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.02em;
  color:#10213a;
  margin-bottom:.5rem;
}
.doc-side-copy{
  font-size:.92rem;
  line-height:1.55;
  color:var(--doc-muted);
}
.doc-side-list{
  margin-top:.25rem;
}
.doc-side-list .list-group-item{
  padding:.75rem .9rem;
}
.doc-side-list .list-group-item.active{
  box-shadow:0 12px 26px rgba(36,91,255,.10);
}
.sidebar .badge-soft{
  background:#eef4ff;
  color:#214a96;
  border:1px solid #d7e3ff;
}
.doc-card,
.doc-footer-nav,
.table-responsive,
.callout,
.alert{
  backdrop-filter:blur(6px);
}
@media (max-width:991px){
  .sidebar .position-sticky{
    top:auto;
  }
  .doc-side-intro{
    margin-top:.5rem;
  }
}
/* 2026 hero button pass */
.hero-shell .btn-outline-light,
.page-hero .btn-outline-light,
.hero .btn-outline-light{
  color:#1d4ed8;
  border-color:rgba(37,99,235,.18);
  background:#ffffff;
}
.hero-shell .btn-outline-light:hover,
.page-hero .btn-outline-light:hover,
.hero .btn-outline-light:hover{
  color:#1d4ed8;
  border-color:rgba(37,99,235,.28);
  background:#eff6ff;
}
.rto-docs-topbar{
  position:sticky;
  top:0;
  z-index:1040;
}
.rto-docs-brand{
  display:inline-flex;
  align-items:center;
  gap:.9rem;
  color:#0f172a;
}
.rto-docs-brand-mark img{ border-radius:12px; }
.rto-docs-brand-copy{ display:flex; flex-direction:column; line-height:1.1; }
.rto-docs-brand-title{ font-size:1.12rem; font-weight:800; letter-spacing:-.02em; }
.rto-docs-brand-subtitle{ font-size:.82rem; color:#64748b; }
.rto-docs-toplinks .btn{
  display:inline-flex;
  align-items:center;
  gap:.42rem;
  border-radius:.5rem;
  text-decoration:none;
}
.rto-docs-toplinks .btn:hover,
.rto-docs-toplinks .btn:focus,
.rto-docs-toplinks .btn:active{
  text-decoration:none;
}
.rto-docs-toplinks .btn svg{ flex:0 0 auto; }
@media (max-width:991.98px){
  .rto-docs-toplinks{
    width:100%;
    justify-content:flex-start !important;
  }
}

/* v8.5.0 final docs navigation restore */
.rto-docs-topbar,
.rto-anchorbar-wrap{
  flex:0 0 100%;
  width:100%;
}
.rto-doc-sidebar{
  position:relative;
  z-index:2;
}
.rto-doc-sidebar .position-sticky{
  top:5.25rem;
}
.rto-doc-sidebar .list-group-item{
  text-decoration:none;
}
@media (max-width:991.98px){
  .rto-doc-sidebar{
    padding-top:1rem!important;
    padding-bottom:1rem!important;
  }
  .rto-doc-sidebar .position-sticky{
    top:auto;
  }
  .rto-doc-sidebar .doc-side-list{
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    gap:.45rem;
  }
  .rto-doc-sidebar .doc-side-list .list-group-item{
    width:auto;
    flex:0 0 auto;
    padding:.48rem .72rem;
    border-radius:999px!important;
  }
}

/* RTO v8.5.0 button shape pass */
.btn,
a.btn,
button.btn{
  border-radius:.66rem !important;
}
.doc-chip,
.badge,
.badge-soft{
  border-radius:999px;
}


.doc-security-card{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) minmax(220px,auto);
  gap:22px;
  align-items:center;
  border:1px solid rgba(36,91,255,.20);
  border-radius:30px;
  padding:26px;
  background:
    radial-gradient(circle at top right, rgba(36,91,255,.16), transparent 34%),
    radial-gradient(circle at bottom left, rgba(20,184,166,.13), transparent 36%),
    linear-gradient(135deg,#ffffff 0%,#f8fbff 48%,#edf6ff 100%);
  box-shadow:0 24px 64px rgba(18,38,63,.12);
  overflow:hidden;
}
.doc-security-card::before{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:24px;
  pointer-events:none;
}
.doc-security-icon{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  width:82px;
  height:82px;
  border:1px solid rgba(36,91,255,.16);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff,#eff6ff);
  box-shadow:0 16px 34px rgba(36,91,255,.12);
}
.doc-security-icon span{
  font-size:2.35rem;
  line-height:1;
}
.doc-security-copy,
.doc-security-actions{
  position:relative;
  z-index:1;
}
.doc-security-kicker{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  margin-bottom:.55rem;
  border:1px solid rgba(36,91,255,.14);
  border-radius:999px;
  padding:.34rem .66rem;
  color:#1846a3;
  background:rgba(255,255,255,.78);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.doc-security-card h2{
  margin:0 0 .65rem;
  color:#10213a;
  font-size:clamp(1.55rem,2.25vw,2.15rem);
  font-weight:850;
  letter-spacing:-.04em;
  line-height:1.12;
}
.doc-security-card p{
  max-width:64rem;
  margin-bottom:0;
  color:#44546b;
  font-size:1rem;
  line-height:1.65;
}
.doc-security-points{
  display:flex;
  flex-wrap:wrap;
  gap:.6rem;
  margin-top:1.05rem;
}
.doc-security-points span{
  display:inline-flex;
  align-items:center;
  gap:.42rem;
  border:1px solid rgba(36,91,255,.14);
  border-radius:999px;
  padding:.52rem .78rem;
  color:#24405f;
  background:#fff;
  box-shadow:0 8px 20px rgba(18,38,63,.05);
  font-size:.92rem;
  font-weight:750;
}
.doc-security-actions{
  display:flex;
  flex-direction:column;
  gap:.75rem;
  min-width:245px;
  border:1px solid rgba(36,91,255,.12);
  border-radius:22px;
  padding:14px;
  background:rgba(255,255,255,.82);
  box-shadow:0 14px 32px rgba(18,38,63,.07);
}
.doc-security-actions .btn{
  justify-content:center;
  padding:.72rem 1rem;
}
@media (max-width:991px){
  .doc-security-card{
    grid-template-columns:1fr;
    padding:22px;
  }
  .doc-security-icon{
    width:70px;
    height:70px;
  }
  .doc-security-actions{
    min-width:0;
  }
  .doc-security-actions .btn{
    width:100%;
  }
}
}
