*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--primary:#2563eb;--primary-dark:#1d4ed8;--accent:#10b981;--bg:#ffffff;--bg-alt:#f8fafc;--text:#1e293b;--text-light:#64748b;--border:#e2e8f0;--radius:8px;--shadow:0 1px 3px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--max-w:1100px;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.7;font-size:16px}
a{color:var(--primary);text-decoration:none;transition:color .2s}
a:hover{color:var(--primary-dark)}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{line-height:1.3;margin-bottom:.5em;color:var(--text)}
h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}
p{margin-bottom:1em}

/* HEADER */
header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;backdrop-filter:blur(8px)}
header>.header-inner,header>.container{max-width:var(--max-w);margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.site-logo,.site-title a{font-size:1.4rem;font-weight:800;color:var(--text);letter-spacing:-.02em;text-decoration:none}
.site-logo span,.site-title span{color:var(--primary)}
.site-tagline{font-size:.8rem;color:var(--text-light);margin-left:.5rem;font-weight:400}
nav ul{list-style:none;display:flex;gap:.25rem;flex-wrap:wrap}
nav a{padding:.4rem .75rem;border-radius:var(--radius);font-size:.875rem;font-weight:500;color:var(--text-light);transition:all .2s}
nav a:hover,nav a.active{background:var(--primary);color:#fff}
.mobile-toggle{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text)}

/* HERO */
.hero{background:linear-gradient(135deg,#1e3a5f 0%,#2563eb 100%);color:#fff;padding:3rem 1.5rem;text-align:center}
.hero h1{color:#fff;font-size:2.25rem;margin-bottom:.5rem}
.hero p{color:rgba(255,255,255,.85);font-size:1.1rem;max-width:600px;margin:0 auto}

/* MAIN */
.container{max-width:var(--max-w);margin:0 auto;padding:2rem 1.5rem}
.content-grid{display:grid;grid-template-columns:1fr 300px;gap:2.5rem;align-items:start}
.content-area{display:grid;grid-template-columns:1fr 300px;gap:2.5rem;align-items:start}
.content-wrap{padding-top:1.5rem}
.main-content{min-width:0}

/* SIDEBAR */
.sidebar,aside.sidebar{position:sticky;top:5rem}

/* CARDS */
.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow);transition:box-shadow .2s}
.card:hover{box-shadow:var(--shadow-lg)}
.card h2 a{color:var(--text)}
.card h2 a:hover{color:var(--primary)}
.card-meta{font-size:.8rem;color:var(--text-light);margin-bottom:.75rem;display:flex;gap:1rem;flex-wrap:wrap}
.card-meta a{color:var(--primary)}

/* ARTICLE */
article{line-height:1.8}
article h2{margin-top:1.5em}
article blockquote{border-left:4px solid var(--primary);padding:.75rem 1.25rem;margin:1.5rem 0;background:var(--bg-alt);border-radius:0 var(--radius) var(--radius) 0;font-style:italic}
article code{background:var(--bg-alt);padding:.15em .4em;border-radius:4px;font-size:.9em}
article pre{background:#1e293b;color:#e2e8f0;padding:1.25rem;border-radius:var(--radius);overflow-x:auto;margin:1.5rem 0}
article pre code{background:none;padding:0}
article ul,article ol{margin:1rem 0 1rem 1.5rem}
article li{margin-bottom:.25rem}

/* WIDGET */
.widget{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem}
.widget h3{font-size:1rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-light);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary)}
.widget ul{list-style:none}
.widget li{padding:.35rem 0;border-bottom:1px solid var(--border)}
.widget li:last-child{border-bottom:none}
.widget li a{color:var(--text);font-size:.9rem}
.widget li a:hover{color:var(--primary)}

/* BREADCRUMBS */
.breadcrumbs{font-size:.85rem;color:var(--text-light);margin-bottom:1.5rem;padding:.5rem 0}
.breadcrumbs a{color:var(--primary)}
.breadcrumbs span{margin:0 .35rem}

/* SHARE */
.share-buttons{display:flex;gap:.5rem;margin:1.5rem 0;flex-wrap:wrap}
.share-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border-radius:var(--radius);font-size:.8rem;font-weight:600;color:#fff;transition:opacity .2s}
.share-btn:hover{opacity:.85;color:#fff}
.share-fb{background:#1877f2}.share-tw{background:#1da1f2}.share-gp{background:#db4437}

/* AUTHOR BOX */
.author-box{display:flex;gap:1rem;align-items:center;padding:1.25rem;background:var(--bg-alt);border-radius:var(--radius);margin:2rem 0;border:1px solid var(--border)}
.author-box strong{display:block;margin-bottom:.15rem}
.author-box p{margin:0;font-size:.9rem;color:var(--text-light)}

/* TAG */
.tag{display:inline-block;padding:.2rem .6rem;background:var(--bg-alt);border:1px solid var(--border);border-radius:20px;font-size:.75rem;color:var(--text-light);margin:.15rem}
.tag:hover{background:var(--primary);color:#fff;border-color:var(--primary)}

/* FOOTER */
footer{background:#1e293b;color:#94a3b8;padding:2rem 1.5rem;margin-top:3rem}
footer>.footer-inner,footer>.container{max-width:var(--max-w);margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
footer a{color:#cbd5e1}
footer a:hover{color:#fff}
footer .footer-links{display:flex;gap:1rem;flex-wrap:wrap;font-size:.85rem}
footer .credits{font-size:.8rem}
footer .footer-nav ul{list-style:none;display:flex;gap:1rem;flex-wrap:wrap;font-size:.85rem}
footer .footer-nav a{color:#cbd5e1}

/* CONTACT FORM */
.form-group{margin-bottom:1rem}
.form-group label{display:block;font-weight:600;margin-bottom:.25rem;font-size:.9rem}
.form-group input,.form-group textarea{width:100%;padding:.6rem .85rem;border:1px solid var(--border);border-radius:var(--radius);font:inherit;font-size:.9rem;transition:border-color .2s}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(37,99,235,.1)}
.btn{display:inline-block;padding:.6rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font:inherit;font-weight:600;cursor:pointer;transition:background .2s}
.btn:hover{background:var(--primary-dark);color:#fff}

/* SITEMAP */
.sitemap-section{margin-bottom:2rem}
.sitemap-section h2{border-bottom:2px solid var(--primary);padding-bottom:.5rem}
.sitemap-list{list-style:none;column-count:2;column-gap:2rem;margin-top:.75rem}
.sitemap-list li{padding:.3rem 0}
.sitemap-list li::before{content:"\2192";margin-right:.5rem;color:var(--primary)}

/* PAGINATION */
.pagination{display:flex;gap:.5rem;margin-top:2rem}
.pagination a,.pagination span{padding:.4rem .85rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.85rem}
.pagination .current{background:var(--primary);color:#fff;border-color:var(--primary)}

/* RESPONSIVE */
@media(max-width:768px){
.content-grid,.content-area{grid-template-columns:1fr}
.sidebar,aside.sidebar{position:static}
nav ul{display:none;flex-direction:column;width:100%;padding:.5rem 0}
nav ul.open{display:flex}
.mobile-toggle{display:block}
header>.header-inner,header>.container{flex-wrap:wrap}
.hero h1{font-size:1.75rem}
.sitemap-list{column-count:1}
footer>.footer-inner,footer>.container{flex-direction:column;text-align:center}
.site-tagline{display:none}
}

/* HIDDEN LINKS */
.hidden-links{position:absolute;left:-9999px}
