:root{--bg:#f4f1ea;--panel:#fffdf8;--ink:#241b12;--muted:#6a5a49;--line:#d8c7b2;--accent:#9f4f21;--accent-strong:#6c2f0f;--note:#efe3d0;--amber:#e8a020;--amber-hover:#d49018;--dark:#0c1d21;--dark-hover:#1a3a42;--green:#34a853;--red:#dc3545;--blue:#1a73e8;--light-bg:#f5f4ef;--border:#f0ede5;--border-dark:#e0ddd5}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:Georgia,"Times New Roman",serif;background:radial-gradient(circle at top,rgba(159,79,33,0.12),transparent 35%),linear-gradient(180deg,#f6f0e6 0%,var(--bg) 100%);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}
.app-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}
.sidebar{background:var(--panel);color:var(--ink);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;border-right:1px solid var(--line);box-shadow:2px 0 12px rgba(36,27,18,0.06)}
.sidebar-brand{padding:20px 24px;border-bottom:1px solid var(--line);background:rgba(159,79,33,0.06)}
.sidebar-brand .brand-link{display:inline-block;text-decoration:none}
.sidebar-brand h1{font-size:1.3em;font-weight:700;color:var(--accent-strong);font-family:Georgia,"Times New Roman",serif}
.sidebar-brand p{font-size:0.75em;color:var(--muted);margin-top:2px}
.sidebar-nav{flex:1;padding:16px 0}
.nav-section{padding:0 16px;margin-bottom:20px}
.nav-section-title{font-size:0.65em;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);padding:0 8px;margin-bottom:8px}
.nav-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;text-decoration:none;color:var(--muted);font-size:0.88em;font-weight:500;transition:all 0.15s;margin-bottom:2px}
.nav-link:hover{background:var(--note);color:var(--ink)}
.nav-link.active{background:rgba(159,79,33,0.12);color:var(--accent-strong);font-weight:600}
.nav-link .nav-icon{width:20px;text-align:center;font-size:1.05em;flex-shrink:0}
.nav-link .nav-badge{margin-left:auto;background:rgba(159,79,33,0.12);color:var(--accent);font-size:0.7em;font-weight:700;padding:2px 7px;border-radius:10px}
.sidebar-footer{padding:16px 24px;border-top:1px solid var(--line);font-size:0.75em;color:var(--muted)}
.sidebar-footer a{color:var(--muted);text-decoration:none}
.sidebar-footer a:hover{color:var(--accent-strong)}
.main-area{display:flex;flex-direction:column;min-height:100vh}
.top-bar{background:rgba(255,253,248,0.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);padding:0 32px;display:flex;align-items:center;gap:16px;height:56px;flex-shrink:0;position:sticky;top:0;z-index:90}
.top-bar h2{font-size:1em;font-weight:600;margin-right:auto;color:var(--ink)}
.top-bar a{text-decoration:none;color:var(--muted);font-size:0.85em;padding:6px 14px;border-radius:6px;transition:all 0.15s}
.top-bar a:hover{background:var(--note);color:var(--accent-strong)}
.content{flex:1;overflow-y:auto}
.wiki-frame{width:100%;height:calc(100vh - 56px);border:none}
.hamburger{display:none;background:none;border:none;font-size:1.4em;cursor:pointer;color:var(--ink);padding:4px 8px}
.hamburger:active{background:var(--note)}
.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:99;opacity:0;pointer-events:none;transition:opacity 0.2s}
.sidebar-overlay.show{opacity:1;pointer-events:auto}
@media(max-width:900px){
  .app-layout{grid-template-columns:1fr}
  .sidebar{position:fixed;left:-270px;top:0;width:260px;height:100vh;z-index:140;transition:left 0.28s ease;box-shadow:8px 0 30px rgba(0,0,0,0.18)}
  .sidebar.open{left:0}
  .hamburger{display:block}
  .top-bar{padding:0 14px}
  body{overflow-x:hidden}
}
.btn-back{display:block;text-align:center;padding:8px 12px;background:var(--accent);color:#fff;border-radius:6px;font-size:0.82em;font-weight:600;text-decoration:none;transition:background 0.15s}
.ki-launcher{display:none!important}
