@font-face{font-family:"iA Writer Mono S";src:url("../fonts/iAWriterMonoS-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Recursive Sans Casual";src:url("../fonts/RecursiveSansCslSt-Light.ttf") format("truetype");font-weight:300;font-display:swap}

:root{--bg:#090b0f;--panel:#0f1319;--panel-2:#141a22;--text:#e9edf2;--muted:#8f9aaa;--line:#28313e;--accent:#74d4b3;--accent-2:#e7c56d;--danger:#ff847c;--shadow:0 18px 50px rgba(0,0,0,.26);--heading:"iA Writer Mono S",monospace;--body:"Recursive Sans Casual",system-ui,sans-serif;--gh-font-heading:"iA Writer Mono S",monospace;--gh-font-body:"Recursive Sans Casual",system-ui,sans-serif;color-scheme:dark}
:root[data-view="terminal"]{--bg:#020603;--panel:#061008;--panel-2:#09180d;--text:#d7ffe0;--muted:#78a383;--line:#1d4a28;--accent:#61ff83;--accent-2:#ffd866;--shadow:none}
:root[data-view="paper"]{--bg:#f3f0e8;--panel:#fffdf7;--panel-2:#e9e3d7;--text:#24211d;--muted:#6c645a;--line:#c9c0b2;--accent:#86552c;--accent-2:#255d6a;--shadow:0 18px 42px rgba(70,55,35,.12);color-scheme:light}
:root[data-view="signal"]{--bg:#0b0714;--panel:#151022;--panel-2:#211732;--text:#f7edff;--muted:#b4a3c7;--line:#4b355e;--accent:#53e0d0;--accent-2:#ff9bc8;--shadow:8px 8px 0 rgba(83,224,208,.12)}
*{box-sizing:border-box}
html{font-size:18px;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:300 1rem/1.72 var(--body);text-rendering:optimizeLegibility}
a{color:inherit;text-decoration-color:color-mix(in srgb,var(--accent) 70%,transparent);text-underline-offset:.2em}
a:hover{color:var(--accent)}
button,select{font:400 .78rem/1 var(--heading)}
button,select{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:.68rem .8rem;border-radius:4px}
button{cursor:pointer}
button:hover,select:hover{border-color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.skip-link{position:fixed;z-index:100;top:.75rem;left:.75rem;transform:translateY(-180%);background:var(--accent);color:var(--bg);padding:.6rem .85rem}
.skip-link:focus{transform:none}
.site-shell{min-height:100vh;display:grid;grid-template-columns:minmax(250px,330px) minmax(0,1fr)}
.site-sidebar{position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid var(--line);background:var(--panel);padding:2rem 1.35rem 3rem}
.sidebar-head{padding:0 .25rem 1.5rem;border-bottom:1px solid var(--line)}
.site-name{font:400 1.15rem/1.25 var(--heading);text-decoration:none;color:var(--accent)}
.sidebar-head p{margin:.65rem 0 0;color:var(--muted);font-size:.85rem;line-height:1.45}
.library-nav{padding-top:1rem}
.library-group{border-bottom:1px solid var(--line);padding:.9rem .25rem 1.15rem}
.library-group h2{font:400 .76rem/1.2 var(--heading);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .65rem;color:var(--accent-2)}
.library-group h2 a{text-decoration:none}
.library-group ol{list-style:none;margin:0;padding:0 0 0 .75rem;border-left:1px solid var(--line)}
.library-group li{margin:.22rem 0}
.library-group li a{display:block;padding:.24rem .45rem;text-decoration:none;font-size:.8rem;line-height:1.35;color:var(--muted)}
.library-group li a:hover{background:var(--panel-2);color:var(--text)}
.library-group details{margin:.55rem 0}
.library-group summary{cursor:pointer;font:400 .73rem/1.35 var(--heading);color:var(--text);padding:.25rem 0}
.library-group.compact{display:grid;gap:.4rem}
.library-group.compact>a,.library-group.compact>button{font-size:.78rem;text-align:left}
.library-group.compact>button{border:0;padding:.25rem 0;background:transparent;color:var(--muted)}
.site-main{min-width:0;display:flex;min-height:100vh;flex-direction:column}
.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 clamp(1rem,4vw,3.5rem);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 90%,transparent);position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}
.sidebar-toggle{display:none}
.topbar-actions{display:flex;align-items:center;gap:.65rem;margin-left:auto}
.view-picker{display:flex;align-items:center;gap:.5rem;color:var(--muted);font:400 .7rem/1 var(--heading);text-transform:uppercase;letter-spacing:.08em}
#content{width:min(100%,1020px);margin:0 auto;padding:clamp(2rem,5vw,5rem) clamp(1rem,5vw,4rem);flex:1}
.index-intro{border-bottom:1px solid var(--line);padding-bottom:clamp(1.8rem,4vw,3.6rem);margin-bottom:1.25rem}
.eyebrow,.article-meta,.post-card-meta{font:400 .7rem/1.4 var(--heading);letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}
h1,h2,h3,h4,h5,h6{font-family:var(--heading);font-weight:400;line-height:1.18;letter-spacing:-.025em}
.index-intro h1{font-size:clamp(2.2rem,6vw,5.4rem);max-width:11ch;margin:.6rem 0 1rem}
.index-intro>p:last-child{color:var(--muted);max-width:55ch;font-size:1.08rem}
.post-list{display:grid}
.post-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:2rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}
.post-card-meta{grid-column:1/-1;display:flex;gap:.45rem;color:var(--muted)}
.post-card h2{font-size:clamp(1.15rem,2.2vw,1.7rem);margin:.45rem 0 .45rem}
.post-card h2 a{text-decoration:none}
.post-card p{grid-column:1;margin:0;color:var(--muted);max-width:62ch}
.read-link{grid-column:2;grid-row:2/4;align-self:center;text-decoration:none;font:400 .7rem/1.3 var(--heading);color:var(--accent);white-space:nowrap}
.article{max-width:820px;margin:0 auto}
.article-header{padding-bottom:2rem;border-bottom:1px solid var(--line);margin-bottom:2.2rem}
.article-meta{display:flex;gap:.5rem;color:var(--muted)}
.article-header h1{font-size:clamp(2rem,5vw,4.25rem);margin:.75rem 0 1rem;overflow-wrap:anywhere}
.article-deck{font-size:1.18rem;color:var(--muted);max-width:64ch;margin:0}
.article-image{margin:0 0 2rem}
.article-image img{display:block;width:100%;height:auto;border:1px solid var(--line)}
.gh-content{overflow-wrap:anywhere}
.gh-content>*{max-width:100%}
.gh-content h2{font-size:clamp(1.4rem,3vw,2.1rem);margin:2.8rem 0 .8rem;padding-top:.5rem}
.gh-content h3{font-size:clamp(1.15rem,2vw,1.5rem);margin:2.1rem 0 .65rem;color:var(--accent-2)}
.gh-content p,.gh-content ul,.gh-content ol{margin:0 0 1.25rem}
.gh-content img{max-width:100%;height:auto;border:1px solid var(--line)}
.gh-content .kg-width-wide{width:min(110%,980px);max-width:110%;margin-left:50%;transform:translateX(-50%)}
.gh-content .kg-width-full{width:min(100vw,1240px);max-width:100vw;margin-left:50%;transform:translateX(-50%)}
.gh-content pre{overflow:auto;padding:1rem;background:#05070a;color:#e8edf2;border:1px solid var(--line);font-size:.78rem;line-height:1.55}
.gh-content code{font-family:var(--heading);font-size:.82em;background:var(--panel-2);padding:.12em .32em;border:1px solid var(--line)}
.gh-content pre code{background:transparent;padding:0;border:0}
.gh-content blockquote{margin:1.8rem 0;padding:.4rem 0 .4rem 1.2rem;border-left:3px solid var(--accent);color:var(--muted)}
.gh-content table{width:100%;display:block;overflow:auto;border-collapse:collapse;font-size:.86rem}
.gh-content th,.gh-content td{padding:.65rem;border:1px solid var(--line);text-align:left;vertical-align:top}
.gh-content hr{border:0;border-top:1px solid var(--line);margin:3rem 0}
.gh-content .card,.gh-content .agent-card,.gh-content .method-card,.gh-content .callout,.gh-content .highlight-box,.gh-content .finding-card{display:block;margin:1rem 0;padding:1rem;border:1px solid var(--line);background:var(--panel)}
.gh-content .grid,.gh-content .card-grid,.gh-content .agent-grid,.gh-content .methods-grid,.gh-content .findings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1rem}
.gh-content .hero h1:first-of-type{display:none}
.gh-content .hero{padding:0 0 1rem}
.gh-content .hero-subtitle{font-size:1.08rem;color:var(--muted)}
.gh-content .nav,.gh-content footer,.gh-content .aiguide-breadcrumb,.gh-content script{display:none!important}
.article-footer{border-top:1px solid var(--line);margin-top:3rem;padding-top:1rem;color:var(--muted);font-size:.8rem}
.site-footer{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:1.25rem clamp(1rem,5vw,4rem);color:var(--muted);font-size:.75rem}
.pagination{display:flex;justify-content:space-between;margin-top:2rem;font:400 .75rem/1 var(--heading)}
.compact-intro h1{font-size:clamp(2rem,5vw,4rem)}
.tag-directory{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.tag-directory li{background:var(--panel)}
.tag-directory a{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 1rem;text-decoration:none;font:400 .76rem/1.35 var(--heading)}
.tag-directory strong{color:var(--accent);font-weight:400}

@media(max-width:860px){
  .site-shell{display:block}
  .site-sidebar{position:fixed;z-index:40;inset:64px auto 0 0;width:min(88vw,350px);height:auto;transform:translateX(-105%);transition:transform .2s ease;box-shadow:var(--shadow)}
  .sidebar-open .site-sidebar{transform:none}
  .sidebar-toggle{display:inline-block}
  .topbar{height:64px;padding:0 1rem}
  .view-picker>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  #content{padding:2.5rem 1rem}
  .post-card{display:block}
  .post-card p{margin-bottom:.7rem}
  .read-link{display:inline-block}
}
@media(max-width:520px){.search-button{padding:.65rem}.topbar-actions{gap:.35rem}#view-picker{max-width:112px}.index-intro h1{font-size:2.45rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-sidebar{transition:none}}
