/* ── Kagiro Fallback CSS — WordPress ── */
*,*::before,*::after{box-sizing:border-box}
html{font-size:16px;-webkit-text-size-adjust:100%}
body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,sans-serif;font-size:1rem;line-height:1.7;color:#222;background:#fff}

/* Layout */
.site,.wrapper,#page,#wrapper,.container{max-width:1140px;margin:0 auto;padding:0 20px}
.content-area,#content,main,.main,.site-main{float:none!important;width:100%!important;padding:20px 0}

/* Header */
.site-header,header,.header,#header,#masthead{background:#1a1a2e;color:#fff;padding:14px 20px;position:sticky;top:0;z-index:999}
.site-header a,header a,.header a,#header a{color:#e0e0e0;text-decoration:none}
.site-title,.logo,.brand,#site-title{font-size:1.4rem;font-weight:700;color:#fff}
.site-description,.tagline{font-size:.8rem;color:#aaa;margin:0}

/* Navigation */
nav,.nav,.navigation,.main-navigation,.navbar,#navigation,#nav{background:#16213e;padding:0 20px}
nav ul,.nav ul,.main-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0}
nav ul li,.main-navigation ul li{position:relative}
nav ul li a,.main-navigation ul li a,.nav a{display:block;color:#ccc;text-decoration:none;padding:12px 16px;font-size:.9rem;transition:background .2s,color .2s}
nav ul li a:hover,.main-navigation ul li a:hover{background:rgba(255,255,255,.1);color:#fff}
nav ul ul,.sub-menu{display:none;position:absolute;background:#0f3460;min-width:200px;z-index:100}
nav ul li:hover > ul,.nav li:hover > .sub-menu{display:block}

/* Posts / Pages */
.hentry,article,.post,.page,.entry{background:#fff;border-radius:6px;box-shadow:0 1px 6px rgba(0,0,0,.08);padding:24px;margin:0 0 24px}
.entry-title,.post-title,h1.title,h2.title{font-size:1.6rem;margin:0 0 12px;color:#1a1a2e;line-height:1.3}
.entry-meta,.post-meta,.meta{font-size:.8rem;color:#888;margin-bottom:16px}

/* Typography */
h1{font-size:2rem;line-height:1.2;margin:.67em 0;color:#1a1a2e}
h2{font-size:1.5rem;line-height:1.3;margin:.83em 0;color:#1a1a2e}
h3{font-size:1.17rem;margin:1em 0;color:#333}
h4,h5,h6{margin:1em 0;color:#444}
p{margin:0 0 1.2em}
a{color:#0073aa;text-decoration:none}
a:hover{color:#005177;text-decoration:underline}
img{max-width:100%;height:auto;display:block}
ul,ol{padding-left:1.5em;margin:0 0 1.2em}
li{margin-bottom:.4em}
blockquote{border-left:4px solid #0073aa;margin:1.5em 0;padding:.5em 1.2em;color:#555;background:#f8f9ff}
code,pre{font-family:monospace;background:#f5f5f5;border-radius:3px;padding:.2em .4em;font-size:.9em}
pre{padding:1em;overflow-x:auto}
table{width:100%;border-collapse:collapse;margin-bottom:1.5em}
th,td{border:1px solid #ddd;padding:8px 12px;text-align:left}
th{background:#f0f0f0;font-weight:600}
tr:nth-child(even){background:#fafafa}

/* Sidebar */
.widget-area,.sidebar,#sidebar,aside{padding:16px;background:#f9f9f9;border-radius:6px}
.widget{margin-bottom:24px}
.widget-title,h2.widgettitle{font-size:1rem;font-weight:700;color:#1a1a2e;border-bottom:2px solid #0073aa;padding-bottom:8px;margin-bottom:12px}

/* Footer */
.site-footer,footer,#footer,#colophon{background:#1a1a2e;color:#ccc;padding:32px 20px;margin-top:40px;text-align:center;font-size:.85rem}
.site-footer a,footer a{color:#80b9d0;text-decoration:none}
.site-footer a:hover,footer a:hover{color:#fff}

/* Post grid / archive */
.posts-row,.post-grid,.masonry{display:flex;flex-wrap:wrap;gap:20px}
.post-grid .hentry,.posts-row .hentry{flex:1 1 280px}

/* Forms */
input,textarea,select{width:100%;padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:.9rem;margin-bottom:12px;font-family:inherit}
button,.btn,.button{display:inline-block;padding:10px 22px;background:#0073aa;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;text-decoration:none;transition:background .2s}
button:hover,.btn:hover,.button:hover{background:#005177}

/* WP Blocks */
.wp-block-image,.wp-block-cover{margin:1.5em 0}
.wp-block-quote{border-left:4px solid #0073aa;padding:.5em 1.2em;color:#555}
.wp-block-separator{border:none;border-top:2px solid #eee;margin:2em 0}
.alignleft{float:left;margin:0 1.5em 1em 0}
.alignright{float:right;margin:0 0 1em 1.5em}
.aligncenter{display:block;margin:1.5em auto}
.screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;height:1px;width:1px;overflow:hidden}

/* Responsive */
@media(max-width:768px){
  .site,.wrapper,#page,#wrapper{padding:0 12px}
  .content-area,#content,main{padding:12px 0}
  nav ul,.main-navigation ul{flex-direction:column}
  .alignleft,.alignright{float:none;display:block;margin:0 0 1em}
  .post-grid .hentry{flex:1 1 100%}
  h1{font-size:1.5rem}
  h2{font-size:1.2rem}
}