/* AnyStack Architect — Ghost theme */
:root{
  --bg:#0a0b0d; --bg-2:#0f1115; --surface:#14171c; --surface-2:#191d24; --line:#222833;
  --navy:#004d83; --blue:#0088d0; --cyan:#00c8ec;
  --text:#eef2f6; --muted:#9aa6b4; --dim:#5f6b78;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
  --head:'Poppins',var(--sans);
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --maxw:920px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.7;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  background-image:
    radial-gradient(1200px 500px at 80% -10%, rgba(0,136,208,.10), transparent 60%),
    linear-gradient(rgba(0,136,208,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,136,208,.035) 1px,transparent 1px);
  background-size:auto,38px 38px,38px 38px;
  background-attachment:fixed;
}
a{color:var(--cyan);text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
::selection{background:var(--blue);color:#fff;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}

h1,h2,h3,h4,h5,h6{font-family:var(--head);font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.2;}

/* ---------- nav ---------- */
.site-head{
  position:sticky;top:0;z-index:50;
  background:rgba(10,11,13,.82);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.site-head-inner{display:flex;align-items:center;justify-content:space-between;height:72px;gap:24px;}
.site-brand{display:flex;align-items:center;flex:0 0 auto;min-width:0;}
.site-brand img{height:42px;width:auto;max-width:210px;object-fit:contain;flex:0 0 auto;}
.site-brand .brand-text{font-family:var(--head);font-weight:700;font-size:1.05rem;}
.site-nav{min-width:0;}
.site-brand .brand-text span{color:var(--blue);}
.site-nav{display:flex;align-items:center;gap:26px;}
.site-nav a{color:var(--muted);font-size:.9rem;font-weight:500;transition:color .15s;}
.site-nav a:hover{color:var(--cyan);}
/* Ghost {{navigation}} outputs <ul class="nav"> - lay out horizontally, no bullets */
.site-nav .nav,.site-foot-nav .nav{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0;}
.site-foot-nav .nav{gap:22px;flex-wrap:wrap;}
.site-nav .nav li,.site-foot-nav .nav li{margin:0;padding:0;}
.btn-primary{
  background:var(--blue);color:#fff!important;font-weight:600;font-size:.86rem;
  padding:9px 17px;border-radius:8px;border:none;cursor:pointer;transition:.15s;display:inline-block;
}
.btn-primary:hover{background:var(--cyan);color:#04222f!important;}

/* ---------- hero ---------- */
.hero{position:relative;padding:80px 0 56px;text-align:center;border-bottom:1px solid var(--line);overflow:hidden;}
.hero::after{
  content:"";position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);
  width:760px;height:440px;max-width:100%;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse at center, rgba(0,136,208,.18), transparent 70%);
}
.hero .wrap{position:relative;z-index:1;}
.hero-logo{width:min(560px,92%);height:auto;margin:0 auto 28px;}
.hero h1{font-family:var(--head);font-weight:600;font-size:clamp(1.2rem,2.6vw,1.55rem);line-height:1.3;max-width:34ch;margin:0 auto 12px;}
.hero p{color:var(--muted);font-size:1rem;max-width:54ch;margin:0 auto 0;}

/* ---------- post list ---------- */
.section{padding:52px 0;}
.section-label{font-family:var(--mono);font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-bottom:8px;}
.post-list{list-style:none;}
.post-item{display:block;padding:26px 0;border-bottom:1px solid var(--line);transition:padding-left .15s;}
.post-item:hover{padding-left:8px;}
.post-tag{font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan);}
.post-item h2{font-family:var(--head);font-weight:600;font-size:1.32rem;line-height:1.25;margin:8px 0;letter-spacing:-.01em;}
.post-item:hover h2{color:var(--cyan);}
.post-item p{color:var(--muted);font-size:.96rem;margin-bottom:10px;}
.post-meta{font-family:var(--mono);font-size:.76rem;color:var(--dim);}
.more-link{display:inline-block;margin-top:28px;font-family:var(--mono);font-size:.84rem;color:var(--muted);}
.more-link:hover{color:var(--cyan);}
.pagination{display:flex;justify-content:space-between;margin-top:36px;font-family:var(--mono);font-size:.84rem;}
.pagination a{color:var(--muted);}.pagination a:hover{color:var(--cyan);}

/* ---------- article ---------- */
.post-full{padding:56px 0;}
.post-full .article-inner{max-width:680px;margin:0 auto;}
.post-full .post-tag{margin-bottom:8px;display:inline-block;}
.post-full h1{font-size:2.2rem;line-height:1.14;margin:8px 0 18px;}
.byline{display:flex;align-items:center;gap:12px;margin-bottom:34px;padding-bottom:26px;border-bottom:1px solid var(--line);}
.byline-avatar{width:42px;height:42px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:600;color:#fff;overflow:hidden;}
.byline-avatar img{width:100%;height:100%;object-fit:cover;}
.byline .who b{display:block;font-weight:600;font-size:.92rem;}
.byline .who span{color:var(--dim);font-family:var(--mono);font-size:.76rem;}
.feature-image{border-radius:12px;margin-bottom:34px;border:1px solid var(--line);}
.post-content{color:var(--muted);font-size:17px;}
.post-content > *{margin-bottom:20px;}
.post-content p{color:var(--muted);line-height:1.8;}
.post-content h2,.post-content h3,.post-content h4{color:var(--text);margin:32px 0 14px;}
.post-content h2{font-size:1.6rem;}.post-content h3{font-size:1.32rem;}
.post-content a{text-decoration:underline;}
.post-content blockquote{border-left:3px solid var(--cyan);background:var(--surface);padding:16px 22px;border-radius:0 8px 8px 0;color:var(--text);font-style:italic;}
.post-content pre{background:#06070a;border:1px solid var(--line);border-radius:10px;padding:18px 20px;overflow-x:auto;font-family:var(--mono);font-size:.88rem;}
.post-content pre code{color:#cfe6f5;background:none;border:none;padding:0;}
.post-content code{font-family:var(--mono);font-size:.875em;color:var(--cyan);background:var(--surface);padding:2px 7px;border-radius:4px;border:1px solid var(--line);}
.post-content img{border-radius:10px;margin:24px auto;}
.post-content ul,.post-content ol{padding-left:24px;color:var(--muted);}
.post-content li{margin-bottom:8px;}
.post-content hr{border:none;border-top:1px solid var(--line);}
.post-content table{border-collapse:collapse;width:100%;}
.post-content th{background:var(--surface);color:var(--cyan);font-weight:600;font-size:13px;letter-spacing:.05em;text-transform:uppercase;padding:12px 16px;border-bottom:2px solid var(--line);text-align:left;}
.post-content td{padding:12px 16px;border-bottom:1px solid var(--line);}
.post-content tr:hover td{background:rgba(0,136,208,.06);}

/* ---------- page (e.g. DR Orchestrator, About) ---------- */
.page-full{padding:56px 0;}
.page-full .article-inner{max-width:680px;margin:0 auto;}
.page-full h1{font-size:2.2rem;margin-bottom:24px;}

/* ---------- newsletter / cta ---------- */
.cta{margin:0 auto;max-width:var(--maxw);}
.cta-inner{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:44px 36px;text-align:center;}
.cta-inner h2{font-size:1.5rem;margin-bottom:8px;}
.cta-inner p{color:var(--muted);margin:0 auto 22px;max-width:46ch;}
.subscribe-form{display:flex;gap:10px;max-width:430px;margin:0 auto;}
.subscribe-form input{flex:1;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:12px 14px;color:var(--text);font-family:var(--sans);font-size:.95rem;}
.subscribe-form input:focus{outline:none;border-color:var(--blue);}

/* ---------- footer ---------- */
.site-foot{border-top:1px solid var(--line);background:var(--bg-2);margin-top:24px;}
.site-foot-inner{display:flex;align-items:center;justify-content:space-between;padding:34px 0;flex-wrap:wrap;gap:18px;}
.site-foot img{height:36px;}
.site-foot-nav{display:flex;gap:22px;flex-wrap:wrap;}
.site-foot-nav a{color:var(--muted);font-size:.86rem;}
.site-foot-nav a:hover{color:var(--cyan);}
.site-foot .copy{font-family:var(--mono);font-size:.72rem;color:var(--dim);}

/* ---------- misc ---------- */
.error-content{text-align:center;padding:100px 0;}
.error-content h1{font-size:4rem;color:var(--blue);}
@media(max-width:680px){
  .site-head-inner{height:64px;gap:14px;}
  .site-brand img{height:36px;max-width:170px;}
  .site-nav{gap:0;flex:0 0 auto;}
  .site-nav a:not(.btn-primary){display:none;}
  .btn-primary{font-size:.8rem;padding:8px 13px;border-radius:7px;}
  .post-full h1,.page-full h1{font-size:1.7rem;}
}
@media(max-width:420px){
  .wrap{padding:0 18px;}
  .site-head-inner{gap:10px;}
  .site-brand img{height:34px;max-width:145px;}
  .btn-primary{font-size:.76rem;padding:7px 11px;}
}
@media(max-width:360px){
  .site-brand img{height:32px;max-width:130px;}
  .btn-primary{font-size:.72rem;padding:6px 9px;}
}

/* ---------- Koenig editor card widths ---------- */
.kg-width-wide{
  position:relative;
  width:100%;
  max-width:1080px;
  margin-left:50%;
  transform:translateX(-50%);
}
.kg-width-full{
  position:relative;
  width:100vw;
  max-width:100vw;
  margin-left:50%;
  transform:translateX(-50%);
}
