@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap");:root{--brand-primary:#1a1a2e;--brand-accent:#e63946;--brand-accent-hover:#c1121f;--brand-gold:#f4a261;--color-bg:#fafafa;--color-surface:#fff;--color-surface-elevated:#f9fafb;--color-border:#e5e7eb;--color-border-light:#f3f4f6;--color-text-primary:#111827;--color-text-secondary:#6b7280;--color-text-muted:#9ca3af;--color-text-inverse:#fff;--font-serif:"Playfair Display",Georgia,serif;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);--max-width:1280px;--content-width:760px;--transition-fast:150ms ease;--transition-normal:250ms ease;--transition-slow:350ms ease;--header-height:72px}[data-theme=dark]{--color-bg:#0f1117;--color-surface:#1a1d27;--color-surface-elevated:#21252f;--color-border:#2d3142;--color-border-light:#1e2230;--color-text-primary:#f1f5f9;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--color-text-inverse:#0f1117}[data-theme=dark] .skeleton{background:linear-gradient(90deg,#1e2230 25%,#252a3a 50%,#1e2230 75%)}[data-theme=dark] .alert-success{background:rgba(16,185,129,.12);color:#6ee7b7;border-color:rgba(16,185,129,.3)}[data-theme=dark] .alert-error{background:rgba(239,68,68,.12);color:#fca5a5;border-color:rgba(239,68,68,.3)}[data-theme=dark] .alert-info{background:rgba(59,130,246,.12);color:#93c5fd;border-color:rgba(59,130,246,.3)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body,html{overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}img,video{max-width:100%;height:auto;display:block}button{cursor:pointer;border:none;background:none}button,input,select,textarea{font-family:inherit}ol,ul{list-style:none}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:700}.container{max-width:var(--max-width)}.container,.container-narrow{width:100%;margin:0 auto;padding:0 var(--space-6)}.container-narrow{max-width:var(--content-width)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:.875rem;font-weight:600;border-radius:var(--radius-md);transition:all var(--transition-fast);text-decoration:none;white-space:nowrap;cursor:pointer;border:2px solid transparent;font-family:var(--font-sans)}.btn-primary{background:var(--brand-accent);color:#fff;border-color:var(--brand-accent)}.btn-primary:hover{background:var(--brand-accent-hover);border-color:var(--brand-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:transparent;color:var(--brand-accent);border-color:var(--brand-accent)}.btn-secondary:hover{background:var(--brand-accent);color:#fff}.btn-dark{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.btn-dark:hover{background:#2d2d4e;border-color:#2d2d4e;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:var(--color-border)}.btn-ghost:hover{background:var(--color-border-light);color:var(--color-text-primary)}.btn-danger{background:#ef4444;color:#fff;border-color:#ef4444}.btn-danger:hover{background:#dc2626}.btn-sm{padding:var(--space-2) var(--space-4);font-size:.8125rem}.btn-lg{padding:var(--space-4) var(--space-8);font-size:1rem}.badge{display:inline-flex;align-items:center;padding:.2em .75em;font-size:.75rem;font-weight:600;border-radius:var(--radius-full);letter-spacing:.03em;text-transform:uppercase}.card{background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3) var(--space-4);font-size:.9375rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--brand-accent);box-shadow:0 0 0 3px rgba(230,57,70,.1)}.form-textarea{resize:vertical;min-height:120px}.form-help{font-size:.8125rem;color:var(--color-text-muted)}.form-error{font-size:.8125rem;color:var(--brand-accent)}.alert{padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);font-size:.9rem;display:flex;align-items:center;gap:var(--space-3)}.alert-success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.alert-info{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.divider{height:1px;background:var(--color-border);margin:var(--space-8) 0}.spinner{width:2rem;height:2rem;border:3px solid var(--color-border);border-top-color:var(--brand-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.skeleton{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-8);padding-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.section-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:700;color:var(--color-text-primary);position:relative}.section-title:after{content:"";display:block;width:40px;height:3px;background:var(--brand-accent);margin-top:var(--space-2);border-radius:var(--radius-full)}.ad-slot{position:relative;background:var(--color-border-light);border:1px dashed var(--color-border);border-radius:var(--radius-md);overflow:hidden;display:flex;align-items:center;justify-content:center}.ad-slot-label{position:absolute;top:4px;left:4px;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);background:hsla(0,0%,100%,.8);padding:2px 6px;border-radius:3px;z-index:2}.ad-slot a{display:block;width:100%}.ad-slot img{width:100%;height:100%;object-fit:cover}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:var(--space-6)}.grid-3,.grid-4{display:grid;gap:var(--space-6)}.grid-4{grid-template-columns:repeat(4,1fr);grid-gap:var(--space-6)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-6);gap:var(--space-6)}@media (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.container,.container-narrow{padding:0 var(--space-4)}.section-header{align-items:flex-start;gap:var(--space-4)}.section-header .btn{flex-shrink:0}.sidebar-layout{grid-template-columns:minmax(0,1fr)!important;gap:var(--space-8)!important}.sidebar-layout aside{position:static!important}.hero-card{min-height:420px!important}.hero-content{padding:var(--space-6)!important}.hero-byline,.hero-meta{flex-wrap:wrap;gap:var(--space-4)!important}.article-share{margin-left:0!important}}.prose{font-family:var(--font-sans);font-size:1.0625rem;line-height:1.8;color:var(--color-text-primary)}.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--font-serif);margin-top:var(--space-10);margin-bottom:var(--space-4);color:var(--color-text-primary)}.prose h1{font-size:2rem}.prose h2{font-size:1.5rem}.prose h3{font-size:1.25rem}.prose ol,.prose p,.prose ul{margin-bottom:var(--space-6)}.prose ol,.prose ul{padding-left:var(--space-8)}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li{margin-bottom:var(--space-2)}.prose blockquote{border-left:4px solid var(--brand-accent);padding:var(--space-4) var(--space-6);margin:var(--space-8) 0;background:var(--color-border-light);border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic;font-size:1.1rem}.prose strong{font-weight:700}.prose a{color:var(--brand-accent);text-decoration:underline;text-underline-offset:3px}.prose a:hover{color:var(--brand-accent-hover)}.prose code{font-family:Menlo,Monaco,Courier New,monospace;font-size:.875em;background:var(--color-border-light);padding:.1em .4em;border-radius:var(--radius-sm)}.empty-state{text-align:center;padding:var(--space-20) var(--space-8);color:var(--color-text-secondary)}.empty-state-icon{font-size:3rem;margin-bottom:var(--space-4);opacity:.4}.empty-state-title{font-size:1.25rem;font-weight:600;margin-bottom:var(--space-2);color:var(--color-text-primary)}.site-header{background:var(--brand-primary);position:-webkit-sticky;position:sticky;top:0;z-index:100;box-shadow:0 2px 20px rgba(0,0,0,.3)}.header-top{background:hsla(0,0%,100%,.05);border-bottom:1px solid hsla(0,0%,100%,.1);padding:var(--space-2) 0}.header-top-inner{display:flex;align-items:center;justify-content:space-between}.header-date{font-size:.75rem;color:hsla(0,0%,100%,.6);letter-spacing:.05em}.header-main{padding:0}.header-inner{justify-content:space-between;height:var(--header-height);gap:var(--space-8)}.header-inner,.site-logo{display:flex;align-items:center}.site-logo{gap:var(--space-3);text-decoration:none;flex-shrink:0}.logo-text{font-family:var(--font-serif);font-size:1.75rem;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1}.logo-accent{color:var(--brand-accent)}.header-search{flex:1 1;max-width:360px}.mobile-menu-toggle,.mobile-nav-overlay{display:none}.search-form{display:flex;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-full);overflow:hidden;transition:all var(--transition-fast)}.search-form:focus-within{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.4);box-shadow:0 0 0 3px hsla(0,0%,100%,.1)}.search-input{flex:1 1;background:transparent;border:none;padding:var(--space-2) var(--space-4);color:#fff;font-size:.875rem;outline:none}.search-input::placeholder{color:hsla(0,0%,100%,.5)}.search-btn{padding:var(--space-2) var(--space-4);background:transparent;color:hsla(0,0%,100%,.7);border:none;cursor:pointer;transition:color var(--transition-fast)}.search-btn:hover{color:#fff}.main-nav{background:rgba(0,0,0,.25);border-top:1px solid hsla(0,0%,100%,.1)}.nav-inner{display:flex;align-items:stretch;overflow-x:auto;scrollbar-width:none;width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.nav-inner::-webkit-scrollbar{display:none}.nav-link{flex:1 1;text-align:center;padding:var(--space-4) var(--space-3);font-size:.875rem;font-weight:700;color:hsla(0,0%,100%,.7);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;border-bottom:3px solid transparent;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.nav-link:hover{color:#fff;background:hsla(0,0%,100%,.06);border-bottom-color:hsla(0,0%,100%,.3)}.nav-link.active{color:#fff;border-bottom-color:var(--brand-accent);background:rgba(230,57,70,.1)}.site-footer{background:var(--brand-primary);color:hsla(0,0%,100%,.8);margin-top:var(--space-20)}.footer-main{padding:var(--space-16) 0 var(--space-12)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-gap:var(--space-12);gap:var(--space-12)}.footer-brand .logo-text{font-size:1.5rem;margin-bottom:var(--space-4);display:block}.footer-description{font-size:.9rem;line-height:1.7;color:hsla(0,0%,100%,.6);margin-bottom:var(--space-6)}.footer-heading{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:hsla(0,0%,100%,.4);margin-bottom:var(--space-4)}.footer-links{display:flex;flex-direction:column;gap:var(--space-3)}.footer-link{font-size:.875rem;color:hsla(0,0%,100%,.65);transition:color var(--transition-fast)}.footer-link:hover{color:#fff}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.1);padding:var(--space-6) 0;display:flex;align-items:center;justify-content:space-between;font-size:.8125rem;color:hsla(0,0%,100%,.4)}@media (max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:var(--space-8)}}@media (max-width:640px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:var(--space-3);text-align:center}.header-search{display:none}.logo-text{font-size:1.4rem}.header-top-inner{gap:var(--space-3)}.header-date{display:none}.header-inner{height:60px;gap:var(--space-4)}.mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid hsla(0,0%,100%,.25);border-radius:var(--radius-md);color:#fff;font-size:1.25rem}.main-nav{position:fixed;inset:0 auto 0 0;z-index:101;width:min(82vw,320px);border:none;transform:translateX(-100%);transition:transform var(--transition-normal);box-shadow:var(--shadow-xl)}.main-nav.mobile-menu-open{transform:translateX(0)}.nav-inner{height:100%;padding:calc(var(--space-16) + var(--space-6)) var(--space-4) var(--space-4);flex-direction:column;align-items:stretch;overflow-y:auto}.nav-link{flex:0 0 auto;justify-content:flex-start;padding:var(--space-4);font-size:.875rem;border-bottom:none;border-left:3px solid transparent}.nav-link.active{border-left-color:var(--brand-accent)}.mobile-nav-overlay{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.75);opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.mobile-nav-overlay.is-open{display:block;opacity:1;pointer-events:auto}.section-header{flex-wrap:wrap}.hero-card{min-height:360px!important;border-radius:var(--radius-xl)!important}.hero-content{padding:var(--space-4)!important}.hero-content .btn{width:100%;justify-content:center}.article-share{width:100%}.article-share a{flex:0 0 2.25rem;text-align:center}.prose{font-size:1rem}.prose h1{font-size:1.75rem}.prose h2{font-size:1.35rem}.prose blockquote{padding:var(--space-4);margin:var(--space-6) 0}}