/* Kamui Platform Docs — Dark Theme */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#1A1623;--bg-alt:#212330;--text:#BEC0C9;--text-bright:#FFF;
  --text-dim:#7D808E;--brand:#D91A01;--border:#52535B;--code-bg:#303343;
  --sidebar-w:260px;--header-h:52px;
}
html{background:var(--bg)}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Hiragino Sans","Noto Sans CJK JP",sans-serif;color:var(--text);line-height:1.7}
a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}

/* ── Header ── */
.top-bar{position:fixed;top:0;left:0;right:0;height:var(--header-h);background:var(--bg-alt);border-bottom:1px solid var(--border);z-index:100}
.top-bar-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;height:100%;padding:0 1rem;gap:1rem}
.logo-link{display:flex;align-items:center;gap:.5rem;color:var(--text-bright);font-weight:600;font-size:.95rem;white-space:nowrap}
.logo-link:hover{text-decoration:none;opacity:.9}
.logo-img{width:26px;height:26px}
.top-nav{display:flex;gap:1.25rem;margin-left:auto}
.top-nav a{color:var(--text);font-size:.8rem}.top-nav a:hover{color:var(--text-bright);text-decoration:none}
.lang-switch{display:flex;gap:0;border:1px solid var(--border);border-radius:4px;overflow:hidden}
.lang-switch a{display:block;padding:3px 10px;font-size:.75rem;color:var(--text-dim);background:transparent}
.lang-switch a.active{background:var(--brand);color:#fff}
.lang-switch a:hover{text-decoration:none;color:var(--text-bright)}
.menu-toggle{display:none;background:none;border:none;color:var(--text);font-size:1.4rem;cursor:pointer;padding:4px 8px}

/* ── Layout ── */
.layout{display:flex;margin-top:var(--header-h);min-height:calc(100vh - var(--header-h))}

/* ── Sidebar ── */
.sidebar{position:fixed;top:var(--header-h);left:0;bottom:0;width:var(--sidebar-w);background:var(--bg-alt);border-right:1px solid var(--border);padding:1.25rem .75rem;overflow-y:auto}
.sidebar-section{font-size:.7rem;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin:1.25rem 0 .4rem;padding:0 .5rem}
.sidebar-section:first-child{margin-top:0}
.sidebar-link{display:block;padding:.3rem .75rem;color:var(--text);font-size:.85rem;border-radius:4px;margin:1px 0}
.sidebar-link:hover{color:var(--text-bright);background:rgba(255,255,255,.05);text-decoration:none}
.sidebar-link.active{color:var(--brand);background:rgba(217,26,1,.1);font-weight:600}

/* ── Content ── */
.content{flex:1;margin-left:var(--sidebar-w);padding:2rem 3rem;max-width:900px}
article h1{font-size:1.9rem;color:var(--text-bright);margin-bottom:.75rem;border-bottom:1px solid var(--border);padding-bottom:.6rem}
article h2{font-size:1.4rem;color:var(--text-bright);margin:2rem 0 .6rem}
article h3{font-size:1.15rem;color:var(--text-bright);margin:1.5rem 0 .4rem}
article h4{font-size:1rem;color:var(--text-bright);margin:1.25rem 0 .4rem}
article p{margin:.6rem 0}
article ul,article ol{margin:.6rem 0;padding-left:1.5rem}
article li{margin:.2rem 0}
article blockquote{border-left:3px solid var(--brand);padding:.5rem 1rem;margin:1rem 0;background:rgba(217,26,1,.05)}
article code{font-family:"SF Mono","Fira Code","Cascadia Code",monospace;background:var(--code-bg);padding:2px 6px;border-radius:3px;font-size:.85em}
article pre{background:var(--code-bg);padding:1rem;border-radius:6px;overflow-x:auto;margin:1rem 0;border:1px solid var(--border)}
article pre code{background:none;padding:0;font-size:.83rem;line-height:1.5}
article table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.88rem}
article th,article td{padding:.5rem .7rem;border:1px solid var(--border);text-align:left}
article th{background:var(--bg-alt);color:var(--text-bright);font-weight:600}
article td{background:var(--bg)}
article hr{border:none;border-top:1px solid var(--border);margin:2rem 0}
article strong{color:var(--text-bright)}
article img{max-width:100%;height:auto}

/* ── Responsive ── */
@media(max-width:768px){
  .top-nav{display:none}
  .menu-toggle{display:block}
  .sidebar{transform:translateX(-100%);transition:transform .2s;z-index:50}
  body.sidebar-open .sidebar{transform:translateX(0)}
  body.sidebar-open .sidebar-overlay{display:block}
  .content{margin-left:0;padding:1.5rem 1rem}
}

