:root{--bg:#0f0d1a;--bg-elevated:#17142a;--surface:#1f1b35;--border:#322c52;--text:#eee9f7;--text-muted:#a89fc4;--accent:#c9a24b;--accent-soft:#8b6f2f;--link:#d8bd7a;--danger:#e06666;--success:#6bbf7a;--radius:10px;--font-serif:Georgia,"Times New Roman",serif;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--max-width:1180px}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:600;line-height:1.25;color:var(--text)}h1{font-size:clamp(1.8rem,4vw,2.6rem)}h2{font-size:clamp(1.4rem,3vw,1.9rem)}h3{font-size:1.2rem}p{margin:0 0 1em}.container{max-width:var(--max-width);margin:0 auto;padding:0 16px}.site-header{border-bottom:1px solid var(--border);background:var(--bg-elevated);position:-webkit-sticky;position:sticky;top:0;z-index:40}.site-header__inner{display:flex;align-items:center;gap:24px;padding:14px 0;flex-wrap:wrap}.logo{font-family:var(--font-serif);font-size:1.4rem;color:var(--accent);font-weight:700}.logo small{display:block;font-family:var(--font-sans);font-size:.65rem;color:var(--text-muted);font-weight:400}.main-nav{display:flex;gap:18px;flex-wrap:wrap;margin-left:auto}.main-nav a{color:var(--text);font-size:.95rem}.header-tools{display:flex;align-items:center;gap:12px}.locale-switch{display:flex;gap:4px}.locale-switch a{padding:3px 8px;border:1px solid var(--border);border-radius:6px;font-size:.8rem;color:var(--text-muted)}.locale-switch a.active{color:var(--accent);border-color:var(--accent)}.site-footer{border-top:1px solid var(--border);background:var(--bg-elevated);margin-top:60px;padding:32px 0;color:var(--text-muted);font-size:.9rem}.site-footer nav{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}.breadcrumbs{font-size:.85rem;margin:18px 0}.breadcrumbs,.breadcrumbs a{color:var(--text-muted)}.breadcrumbs span.sep{margin:0 6px}.hero{padding:48px 0 24px;text-align:center}.hero p.tagline{color:var(--text-muted);font-size:1.1rem}.search-box{display:flex;max-width:560px;margin:24px auto 0;gap:8px}.search-box input{flex:1 1;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:1rem}.search-box button{padding:12px 18px;border-radius:var(--radius);border:none;background:var(--accent);color:#1a1526;font-weight:600;cursor:pointer}.grid{display:grid;grid-gap:20px;gap:20px}.grid.cards-3{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.grid.cards-2{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,border-color .15s}.card:hover{border-color:var(--accent-soft);transform:translateY(-2px)}.card__image{aspect-ratio:4/3;background:#14101f;overflow:hidden}.card__image img{width:100%;height:100%;object-fit:cover}.card__body{padding:14px 16px 18px;flex:1 1;display:flex;flex-direction:column}.card__title{font-family:var(--font-serif);font-size:1.05rem;margin:0 0 6px}.card__meta{font-size:.78rem;color:var(--accent);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.card__desc{color:var(--text-muted);font-size:.9rem;flex:1 1}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0;align-items:center}.filters input[type=text],.filters select{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:8px 10px;border-radius:8px;font-size:.9rem}.tag-pill{display:inline-block;padding:3px 10px;border:1px solid var(--border);border-radius:999px;font-size:.78rem;color:var(--text-muted);margin:2px 4px 2px 0}.pagination{display:flex;gap:6px;justify-content:center;margin:32px 0;flex-wrap:wrap}.pagination a,.pagination span{padding:6px 12px;border:1px solid var(--border);border-radius:6px;font-size:.9rem;color:var(--text)}.pagination .current{background:var(--accent);color:#1a1526;border-color:var(--accent)}.prose{max-width:760px}.prose img{border-radius:var(--radius);margin:1em 0}.prose blockquote{border-left:3px solid var(--accent);margin:1em 0;padding:.2em 1em;color:var(--text-muted);font-style:italic}.prose table{width:100%;border-collapse:collapse;margin:1em 0}.prose td,.prose th{border:1px solid var(--border);padding:8px 10px;text-align:left}.detail-header{display:grid;grid-template-columns:280px 1fr;grid-gap:32px;gap:32px;margin:24px 0 40px}@media (max-width:720px){.detail-header{grid-template-columns:1fr}}.detail-header__image{border-radius:var(--radius);overflow:hidden;background:var(--surface);border:1px solid var(--border)}.attr-table{width:100%;border-collapse:collapse;margin:20px 0}.attr-table td{padding:8px 10px;border-bottom:1px solid var(--border);font-size:.92rem}.attr-table td:first-child{color:var(--text-muted);width:40%}.related-list{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.related-chip{border:1px solid var(--border);border-radius:8px;padding:8px 12px;background:var(--surface);font-size:.88rem}.related-chip small{display:block;color:var(--text-muted)}.section-title{display:flex;align-items:baseline;justify-content:space-between;margin-top:48px}.section-title a{font-size:.85rem}.ad-slot{display:flex;justify-content:center;align-items:center;margin:24px 0;min-height:90px}.ad-slot__label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;text-align:center;width:100%}.ad-slot img{border-radius:8px}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--bg-elevated);border-top:1px solid var(--border);padding:14px 16px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;z-index:100;font-size:.88rem}.cookie-banner button{padding:8px 16px;border-radius:8px;border:none;background:var(--accent);color:#1a1526;font-weight:600;cursor:pointer;white-space:nowrap}.share-buttons{display:flex;gap:8px;margin:20px 0}.share-buttons a{border:1px solid var(--border);border-radius:8px;padding:6px 12px;font-size:.85rem}.maintenance-page{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:20px}.chapters-nav{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0}.chapters-nav a{border:1px solid var(--border);padding:6px 10px;border-radius:6px;font-size:.85rem}.chapters-nav a.active{background:var(--accent);color:#1a1526;border-color:var(--accent)}.badge{display:inline-block;background:var(--accent-soft);color:#fff2d6;padding:2px 8px;border-radius:6px;font-size:.72rem;margin-left:8px}@media print{.ad-slot,.cookie-banner,.filters,.share-buttons,.site-footer,.site-header{display:none!important}}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.admin-sidebar{background:var(--bg-elevated);border-right:1px solid var(--border);padding:20px 0;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.admin-sidebar__logo{padding:0 20px 18px;font-family:var(--font-serif);color:var(--accent);font-size:1.2rem;border-bottom:1px solid var(--border);margin-bottom:10px}.admin-sidebar .group-label,.admin-sidebar a{display:block;padding:9px 20px;color:var(--text-muted);font-size:.9rem}.admin-sidebar a:hover{background:var(--surface);text-decoration:none;color:var(--text)}.admin-sidebar a.active{background:var(--surface);color:var(--accent);border-right:2px solid var(--accent)}.admin-sidebar .group-label{text-transform:uppercase;font-size:.68rem;letter-spacing:.06em;margin-top:14px;color:var(--accent-soft)}.admin-main{padding:24px 32px 60px;max-width:1100px}.admin-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.admin-topbar .user{font-size:.85rem;color:var(--text-muted)}.admin-topbar .user button{margin-left:10px;background:none;border:1px solid var(--border);color:var(--text-muted);border-radius:6px;padding:4px 10px;cursor:pointer}.btn{display:inline-block;padding:9px 16px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-size:.9rem;text-align:center}.btn:hover{border-color:var(--accent-soft)}.btn-primary{background:var(--accent);color:#1a1526;border-color:var(--accent);font-weight:600}.btn-danger{background:var(--danger);border-color:var(--danger);color:#2a0a0a}.btn-sm{padding:5px 10px;font-size:.8rem}.admin-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.admin-table td,.admin-table th{padding:10px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:.9rem}.admin-table th{color:var(--text-muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:hsla(0,0%,100%,.02)}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px;flex-wrap:wrap}.admin-toolbar input[type=text]{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:8px;min-width:220px}.status-pill{padding:2px 9px;border-radius:999px;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.status-pill.DRAFT{background:#3a3450;color:#cbb8ff}.status-pill.PUBLISHED{background:#204a2f;color:#8ee0a3}.status-pill.HIDDEN{background:#4a2020;color:#e08e8e}.form-grid{display:grid;grid-gap:16px;gap:16px;max-width:820px}.form-row{display:flex;flex-direction:column;gap:6px}.form-row label{font-size:.82rem;color:var(--text-muted)}.form-row input[type=datetime-local],.form-row input[type=email],.form-row input[type=number],.form-row input[type=password],.form-row input[type=text],.form-row select,.form-row textarea{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:9px 12px;border-radius:8px;font-size:.92rem;font-family:inherit}.form-row textarea{min-height:90px;resize:vertical}.form-row-inline{display:flex;align-items:center;gap:8px;flex-direction:row}.form-cols-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.form-actions{display:flex;gap:10px;margin-top:8px}.field-hint{font-size:.78rem;color:var(--text-muted)}.field-error{font-size:.8rem;color:var(--danger)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:20px}.tabs button{background:none;padding:10px 16px;color:var(--text-muted);cursor:pointer;border:none;border-bottom:2px solid transparent;font-size:.9rem}.tabs button.active{color:var(--accent);border-color:var(--accent)}.rte{border:1px solid var(--border);border-radius:8px;background:var(--surface)}.rte-toolbar{display:flex;flex-wrap:wrap;gap:4px;padding:6px;border-bottom:1px solid var(--border)}.rte-toolbar button{background:none;border:1px solid transparent;color:var(--text-muted);padding:5px 9px;border-radius:6px;cursor:pointer;font-size:.85rem}.rte-toolbar button.active,.rte-toolbar button:hover{background:var(--bg-elevated);color:var(--text)}.rte .ProseMirror{padding:12px 14px;min-height:180px;outline:none}.rte .ProseMirror img{max-width:100%;border-radius:6px}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:10px;gap:10px}.media-item{border:2px solid var(--border);border-radius:8px;overflow:hidden;cursor:pointer;aspect-ratio:1;background:var(--surface);position:relative}.media-item.selected{border-color:var(--accent)}.media-item img{width:100%;height:100%;object-fit:cover}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:32px;width:100%;max-width:380px}.login-card h1{font-size:1.3rem;text-align:center;margin-bottom:20px}.alert{padding:10px 14px;border-radius:8px;font-size:.88rem;margin-bottom:12px}.alert-error{background:#4a2020;color:#ffb3b3}.alert-info{background:#203a4a;color:#a9d8ff}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--text-muted)}.pill-select{display:flex;flex-wrap:wrap;gap:6px}.pill-select label{border:1px solid var(--border);border-radius:999px;padding:4px 12px;font-size:.82rem;cursor:pointer;display:flex;align-items:center;gap:6px}.pill-select input{accent-color:var(--accent)}