@import "https://fonts.googleapis.com/css2?family=UnifrakturMaguntia&family=IM+Fell+English:ital@0;1&family=Cinzel:wght@400;600;900&family=Crimson+Text:ital,wght@0,400;0,600;1,400&display=swap";:root{--bg-deepest:#06040a;--bg-dark:#0a0710;--bg-page:#0f0b16;--bg-aged:#150f1e;--bg-card:#110d18;--border-dim:#1e1628;--border-mid:#2c1f3a;--border-bright:#3d2b50;--gold:#c9a84c;--gold-dim:#8a6a1a;--gold-bright:#e8c870;--crimson:#8b1a1a;--crimson-bright:#c30;--crimson-dim:#5a1010;--purple:#6b2d8b;--text-primary:#d4c4a8;--text-secondary:#9a8a74;--text-dim:#6a5a48;--font-fraktur:"UnifrakturMaguntia",cursive;--font-cinzel:"Cinzel",serif;--font-fell:"IM Fell English",serif;--font-body:"Crimson Text",serif;--pad:16px}@media (width>=640px){:root{--pad:36px}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg-deepest);color:var(--text-primary);font-family:var(--font-body);min-height:100vh;font-size:16px;line-height:1.7;overflow-x:hidden}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:var(--border-bright)}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}img,svg{max-width:100%}.fraktur{font-family:var(--font-fraktur)!important}.cinzel{font-family:var(--font-cinzel)!important}.fell{font-family:var(--font-fell)!important}.text-gold{color:var(--gold)}.text-crimson{color:var(--crimson-bright)}.text-dim{color:var(--text-dim)}.text-sec{color:var(--text-secondary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes flicker{0%,to{opacity:1}92%{opacity:.85}94%{opacity:1}96%{opacity:.9}}@keyframes pulseRed{0%,to{border-color:#c006}50%{border-color:#cc0000e6}}.fade-in{animation:.35s forwards fadeIn}.app-layout{min-height:100vh;display:flex}.main-content{flex:1;min-width:0;overflow-x:hidden}.mobile-menu-btn{z-index:300;background:var(--bg-dark);border:1px solid var(--border-mid);color:var(--gold);border-radius:2px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:none;position:fixed;top:10px;left:10px}.sidebar-overlay{z-index:199;background:#000000bf;display:none;position:fixed;inset:0}.sidebar{background:var(--bg-dark);border-right:1px solid var(--border-mid);z-index:200;flex-direction:column;flex-shrink:0;width:240px;min-width:240px;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-logo{text-align:center;border-bottom:1px solid var(--border-mid);padding:18px 12px 12px}.sidebar-logo h1{font-family:var(--font-fraktur);color:var(--gold);text-shadow:0 0 20px #8b1a1a99;font-size:24px;line-height:1.1;animation:8s infinite flicker}.sidebar-logo p{font-family:var(--font-cinzel);letter-spacing:3px;color:var(--text-dim);text-transform:uppercase;margin-top:4px;font-size:7px}.sidebar-search{border-bottom:1px solid var(--border-dim);padding:8px 10px}.sidebar-search input{background:var(--bg-page);border:1px solid var(--border-mid);width:100%;color:var(--text-primary);font-family:var(--font-cinzel);letter-spacing:1px;outline:none;padding:7px 10px;font-size:10px;transition:border-color .2s}.sidebar-search input:focus{border-color:var(--crimson)}.sidebar-search input::placeholder{color:var(--text-dim)}.nav-group-title{font-family:var(--font-cinzel);letter-spacing:2px;color:var(--text-dim);text-transform:uppercase;padding:8px 12px 3px;font-size:8px}.nav-item{cursor:pointer;color:var(--text-secondary);font-size:12px;font-family:var(--font-cinzel);letter-spacing:.3px;border-left:2px solid #0000;align-items:center;gap:8px;padding:8px 12px;transition:all .2s;display:flex}.nav-item:hover{background:var(--bg-aged);color:var(--text-primary);border-left-color:var(--crimson)}.nav-item.active{background:var(--bg-aged);color:var(--gold);border-left-color:var(--gold)}.nav-icon{text-align:center;width:18px;color:var(--crimson);flex-shrink:0;font-size:13px}.nav-badge{background:var(--crimson);color:#fff;font-size:8px;font-family:var(--font-cinzel);border-radius:2px;margin-left:auto;padding:1px 5px}.sidebar-admin{border-top:1px solid var(--border-dim);margin-top:auto;padding:8px 10px}.admin-btn{border:1px solid var(--border-dim);width:100%;color:var(--text-dim);font-family:var(--font-cinzel);letter-spacing:1px;text-transform:uppercase;background:0 0;padding:7px;font-size:9px;transition:all .2s}.admin-btn:hover{border-color:var(--gold);color:var(--gold)}.admin-btn.active{border-color:var(--gold);color:var(--gold);background:#c9a84c0d}.page-header{padding:20px var(--pad) 16px;border-bottom:1px solid var(--border-mid);position:relative;overflow:hidden}.page-header:before{content:"";pointer-events:none;background:radial-gradient(at 50% -20%,#8b1a1a26 0%,#0000 65%);position:absolute;inset:0}.page-header:after{content:"";background:linear-gradient(to right,transparent,var(--crimson-dim),var(--gold-dim),var(--crimson-dim),transparent);opacity:.2;height:1px;position:absolute;bottom:0;left:0;right:0}.page-eyebrow{font-family:var(--font-cinzel);letter-spacing:3px;color:var(--crimson-bright);text-transform:uppercase;margin-bottom:5px;font-size:9px}.page-title{font-family:var(--font-fraktur);color:var(--gold);text-shadow:0 0 30px #8b1a1a4d;font-size:32px;line-height:1}.page-subtitle{font-family:var(--font-fell);color:var(--text-secondary);margin-top:8px;font-size:14px;font-style:italic;line-height:1.6}@media (width>=640px){.page-title{font-size:46px}.page-subtitle{font-size:15px}}.entry-card{background:var(--bg-card);border:1px solid var(--border-mid);cursor:pointer;padding:13px;transition:all .2s;position:relative;overflow:hidden}.entry-card:before{content:"";background:var(--crimson);width:3px;height:0;transition:height .3s;position:absolute;top:0;left:0}.entry-card:hover:before{height:100%}.entry-card:hover{border-color:var(--crimson);background:var(--bg-aged)}.entry-card.bookmarked:after{content:"◈";color:var(--gold);font-size:11px;position:absolute;top:8px;right:10px}.entry-card-title{font-family:var(--font-cinzel);color:var(--gold);margin-bottom:2px;font-size:13px;font-weight:600;line-height:1.3}.entry-card-sub{font-family:var(--font-cinzel);letter-spacing:1px;color:var(--text-dim);text-transform:uppercase;margin-bottom:5px;font-size:8px}.entry-card-preview{font-family:var(--font-fell);color:var(--text-secondary);font-size:13px;font-style:italic;line-height:1.5}.tags{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.tag{font-family:var(--font-cinzel);letter-spacing:.5px;text-transform:uppercase;border:1px solid;padding:2px 6px;font-size:7px}.tag-ritual,.tag-forbidden,.tag-blood,.tag-baneful,.tag-dark,.tag-lucifer{color:var(--crimson-bright);border-color:#8b1a1a66}.tag-entity,.tag-spirit,.tag-contact{color:var(--purple);border-color:#6b2d8b66}.tag-magic,.tag-candle,.tag-crowley,.tag-thelema,.tag-egyptian,.tag-summon{color:var(--gold-dim);border-color:#8a6a1a66}.tag-technique,.tag-astral,.tag-oobe,.tag-gateway,.tag-transformation,.tag-gnosis{color:#4a9a8a;border-color:#4a9a8a59}.tag-symbol,.tag-sigils,.tag-tarot,.tag-divination{color:#9a4a6a;border-color:#9a4a6a59}.tag-history,.tag-occultism,.tag-mythology{color:#8a7a5a;border-color:#8a7a5a59}.tag-grimoire{color:#5a8a7a;border-color:#5a8a7a59}.tag-figure,.tag-magic{color:var(--gold-dim);border-color:#8a6a1a59}.tag-fairy,.tag-celtic,.tag-norse,.tag-druid{color:#7a5a9a;border-color:#7a5a9a59}.tag-chaos,.tag-mind,.tag-trance,.tag-breathwork{color:#8a3acc;border-color:#8a3acc59}.tag-wicca,.tag-witchcraft,.tag-seasonal,.tag-pagan{color:#3a8a3a;border-color:#3a8a3a59}.tag-banishing,.tag-protection,.tag-cleansing{color:#3a5a8a;border-color:#3a5a8a59}.tag-lunar{color:#7a7acc;border-color:#7a7acc59}.tag-kabbalah,.tag-qabalah,.tag-angelology,.tag-watchers,.tag-enoch{color:#6a5a8a;border-color:#6a5a8a59}.tag-step-by-step,.tag-complete{color:var(--gold);border-color:#c9a84c59}.tag-folk,.tag-hoodoo,.tag-traditional{color:#8a6a3a;border-color:#8a6a3a59}.tag-necromancy,.tag-death,.tag-ancestral{color:#7a3a3a;border-color:#7a3a3a66}.danger-badge{font-family:var(--font-cinzel);letter-spacing:1px;text-transform:uppercase;border:1px solid;padding:2px 6px;font-size:7px}.danger-0{color:#4a9a8a;border-color:#4a9a8a66}.danger-1{color:#7a9a4a;border-color:#7a9a4a66}.danger-2{color:#c97a20;border-color:#c97a2066}.danger-3{color:#c30;border-color:#c306}.danger-4{color:#c00;border-color:#cc000080;animation:3s ease-in-out infinite pulseRed}.bookmark-btn-inline{color:var(--text-dim);background:0 0;border:none;padding:3px 5px;font-size:13px;line-height:1;transition:color .2s}.bookmark-btn-inline:hover{color:var(--gold)}.ornamental-divider{padding:0 var(--pad);align-items:center;gap:12px;margin:14px 0;display:flex}.ornamental-divider:before,.ornamental-divider:after{content:"";background:linear-gradient(to right,transparent,var(--border-mid),transparent);flex:1;height:1px}.ornamental-divider span{color:var(--crimson);opacity:.5;flex-shrink:0;font-size:13px}.detail-page{padding:16px var(--pad) 40px;max-width:100%}.detail-back{color:var(--text-dim);font-family:var(--font-cinzel);letter-spacing:2px;text-transform:uppercase;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:18px;padding:0;font-size:9px;transition:color .2s;display:flex}.detail-back:hover{color:var(--gold)}.detail-title{font-family:var(--font-fraktur);color:var(--gold);text-shadow:0 0 25px #8b1a1a40;margin-bottom:5px;font-size:32px;line-height:1}.detail-subtitle{font-family:var(--font-cinzel);letter-spacing:2px;color:var(--crimson-bright);text-transform:uppercase;margin-bottom:14px;font-size:9px}.detail-body{font-family:var(--font-fell);color:var(--text-primary);font-size:15px;line-height:1.85}.detail-body h3{font-family:var(--font-cinzel);letter-spacing:2px;color:var(--gold-dim);text-transform:uppercase;border-bottom:1px solid var(--border-dim);margin:20px 0 7px;padding-bottom:5px;font-size:9px}.detail-body h3:before{content:"⛧ ";color:var(--crimson-dim);font-size:8px}.detail-body p{margin-bottom:12px}@media (width>=640px){.detail-title{font-size:40px}.detail-body{font-size:16px}}.ritual-step{background:var(--bg-aged);border-left:3px solid var(--crimson);margin:8px 0;padding:10px 12px;font-size:13px;line-height:1.65}.ritual-step strong{font-family:var(--font-cinzel);letter-spacing:1px;color:var(--crimson-bright);text-transform:uppercase;margin-bottom:4px;font-size:9px;display:block}.chant-block,.chant{border:1px solid var(--border-mid);text-align:center;color:var(--gold);letter-spacing:.8px;font-size:14px;font-style:italic;line-height:1.9;font-family:var(--font-fell);white-space:pre-line;background:#08060f;margin:12px 0;padding:14px 12px;position:relative}.chant-block:before{content:"✦";background:var(--bg-page);color:var(--gold-dim);padding:0 6px;font-size:10px;position:absolute;top:-7px;left:50%;transform:translate(-50%)}.chant-block:after{content:"✦";background:var(--bg-page);color:var(--gold-dim);padding:0 6px;font-size:10px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)}.warning-block{color:var(--text-secondary);background:#8b1a1a12;border:1px solid #8b1a1a40;margin:10px 0;padding:10px 12px;font-size:13px;line-height:1.6}.warning-block:before{content:"⚠ ";color:var(--crimson-bright)}.info-grid{grid-template-columns:1fr;gap:10px;margin-bottom:16px;display:grid}@media (width>=640px){.info-grid{grid-template-columns:1fr 1fr}}.info-box{background:var(--bg-aged);border:1px solid var(--border-dim);padding:12px}.info-box-label{font-family:var(--font-cinzel);letter-spacing:2px;color:var(--text-dim);text-transform:uppercase;margin-bottom:7px;font-size:8px}.info-box-content{color:var(--text-secondary);font-size:13px;line-height:1.8}.toast{background:var(--bg-aged);border:1px solid var(--gold-dim);color:var(--gold);font-family:var(--font-cinzel);letter-spacing:1px;z-index:9999;opacity:0;pointer-events:none;text-transform:uppercase;text-align:center;padding:10px 14px;font-size:9px;transition:all .3s;position:fixed;bottom:14px;left:12px;right:12px;transform:translateY(4px)}.toast.show{opacity:1;transform:none}@media (width>=480px){.toast{text-align:left;width:auto;left:auto;right:16px}}.admin-panel{background:var(--bg-page);border:1px solid var(--gold-dim);margin:0 var(--pad) 18px;padding:16px}.admin-panel h2{font-family:var(--font-cinzel);letter-spacing:3px;color:var(--gold);text-transform:uppercase;border-bottom:1px solid var(--border-dim);margin-bottom:14px;padding-bottom:7px;font-size:10px}.form-group{margin-bottom:11px}.form-group label{font-family:var(--font-cinzel);letter-spacing:2px;color:var(--text-dim);text-transform:uppercase;margin-bottom:4px;font-size:8px;display:block}.form-group input,.form-group select,.form-group textarea{background:var(--bg-dark);border:1px solid var(--border-mid);width:100%;color:var(--text-primary);outline:none;padding:8px 10px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--crimson)}.form-group textarea{resize:vertical;min-height:130px;line-height:1.6}.form-group select option{background:var(--bg-dark)}.form-row{grid-template-columns:1fr;gap:11px;display:grid}@media (width>=640px){.form-row{grid-template-columns:1fr 1fr}}.submit-btn{border:1px solid var(--crimson);color:var(--gold);font-family:var(--font-cinzel);letter-spacing:2px;text-transform:uppercase;background:#8b1a1a1f;width:100%;margin-top:5px;padding:10px 20px;font-size:10px;transition:all .2s}.submit-btn:hover{background:#8b1a1a38}.stats-bar{border-bottom:1px solid var(--border-mid);background:#00000040;flex-wrap:wrap;display:flex}.stat-item{text-align:center;border-right:1px solid var(--border-dim);flex:1;min-width:55px;padding:10px 5px}.stat-item:last-child{border-right:none}.stat-num{font-family:var(--font-cinzel);color:var(--gold);font-size:17px;font-weight:600}.stat-label{font-family:var(--font-cinzel);letter-spacing:1px;color:var(--text-dim);text-transform:uppercase;margin-top:2px;font-size:6px}.entity-grid{padding:14px var(--pad) 30px;grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (width>=540px){.entity-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=900px){.entity-grid{grid-template-columns:repeat(4,1fr)}}.entity-card{background:var(--bg-card);border:1px solid var(--border-mid);cursor:pointer;text-align:center;padding:12px 8px;transition:all .25s}.entity-card:hover{border-color:var(--purple);background:var(--bg-aged)}.entity-glyph{color:var(--crimson);opacity:.65;margin-bottom:7px;font-size:28px;line-height:1}.entity-name{font-family:var(--font-cinzel);color:var(--gold);margin-bottom:3px;font-size:12px;font-weight:600}.entity-rank-label{font-family:var(--font-cinzel);letter-spacing:.5px;color:var(--text-dim);text-transform:uppercase;margin-bottom:5px;font-size:7px}.entity-domain{font-family:var(--font-fell);color:var(--text-secondary);font-size:11px;font-style:italic;line-height:1.3}.figure-card{background:var(--bg-card);border:1px solid var(--border-mid);cursor:pointer;align-items:flex-start;gap:11px;padding:13px;transition:all .25s;display:flex}.figure-card:hover{border-color:var(--gold-dim);background:var(--bg-aged)}.figure-initials{border:1px solid var(--crimson-dim);width:42px;min-width:42px;height:42px;font-family:var(--font-cinzel);color:var(--gold);background:#8b1a1a1f;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.figure-name{font-family:var(--font-cinzel);color:var(--gold);margin-bottom:2px;font-size:13px;font-weight:600}.figure-dates{font-family:var(--font-cinzel);letter-spacing:.5px;color:var(--crimson-bright);text-transform:uppercase;margin-bottom:5px;font-size:8px}.figure-title{font-family:var(--font-fell);color:var(--text-secondary);font-size:12px;font-style:italic}.summon-panel{border:1px solid var(--crimson);background:#08040f;margin:16px 0;padding:14px}.summon-panel-title{font-family:var(--font-cinzel);letter-spacing:3px;color:var(--crimson-bright);text-transform:uppercase;align-items:center;gap:7px;margin-bottom:12px;font-size:9px;display:flex}.action-btn{border:1px solid var(--border-mid);color:var(--text-secondary);font-family:var(--font-cinzel);letter-spacing:1px;text-transform:uppercase;background:0 0;padding:7px 14px;font-size:9px;transition:all .2s}.action-btn:hover,.action-btn.is-bookmarked{border-color:var(--gold);color:var(--gold)}.readable-mode .detail-body{font-family:var(--font-body);font-size:16px;line-height:1.85}.readable-mode .entry-card-preview{font-style:normal;font-family:var(--font-body)}.readable-mode .page-title,.readable-mode .detail-title{font-family:var(--font-cinzel)!important;font-size:24px!important}body:before{content:"";pointer-events:none;z-index:0;background-image:repeating-linear-gradient(0deg,#0000,#0000 28px,#1a0a140d 28px 29px),repeating-linear-gradient(90deg,#0000,#0000 40px,#12080e0a 40px 41px);position:fixed;inset:0}.sidebar,.main-content{z-index:1;position:relative}@media (width<=639px){.sidebar{z-index:200;width:240px;min-width:0;height:100%;transition:left .3s;position:fixed;top:0;left:-245px}.sidebar.open{left:0}.sidebar-overlay{display:block}.mobile-menu-btn{display:flex}.main-content{padding-top:0}.page-title,.detail-title{font-size:28px}.chant-block,.chant{letter-spacing:.3px;padding:12px 8px;font-size:13px}}
