@import "https://fonts.googleapis.com/css2?family=MedievalSharp&family=Special+Elite&family=Uncial+Antiqua&display=swap";
@import "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css";
:root{--surface-ink:#0a0f0d;--surface-paper:#c9b8a0;--surface-blood:#6b0f1a;--surface-mold:#2d4a3e;--surface-silver:#8a9a9a;--deep-void:#050807;--deep-corruption:#4a0f1a;--deep-whisper:#3a3a5a;--deep-mythos:#4a0080;--sanity-level:1;--reality-bleed:0;--temporal-distortion:0s;--font-surface:"Crimson Text", "Georgia", serif;--font-deep:"IM Fell English", "Times New Roman", serif;--font-void:"Cinzel", serif}*{box-sizing:border-box}html{transition:filter 2s}html[data-sanity-level=low]{filter:contrast(.95)brightness(.9)}html[data-sanity-level=critical]{filter:contrast(.9)brightness(.85)saturate(.8);animation:10s infinite root-stutter}@keyframes root-stutter{0%,to{transform:translate(0)}90%{transform:translate(0)}91%{transform:translate(-1px,.5px)}92%{transform:translate(0)}}body{background:var(--surface-ink);color:var(--surface-paper);font-family:var(--font-surface);scrollbar-width:thin;scrollbar-color:var(--surface-mold) var(--surface-ink);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");margin:0;padding:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--surface-ink)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--surface-mold), var(--surface-blood));border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--surface-blood)}::selection{background:var(--surface-mold);color:var(--surface-ink);text-shadow:none}a{color:var(--surface-paper);text-decoration:none;transition:all .3s;position:relative}a:after{content:"";background:var(--surface-blood);width:0;height:1px;transition:width .3s;position:absolute;bottom:-2px;left:0}a:hover{color:#f0e6c5;text-shadow:0 0 10px #c9b8a033}a:hover:after{width:100%}[data-reality-layer=deep] a,[data-reality-layer=fractured] a{color:var(--surface-silver)}[data-reality-layer=fractured] a:hover{color:var(--surface-blood);text-shadow:0 0 15px #6b0f1a66}input,textarea,select{font-family:var(--font-surface);border-radius:4px;padding:10px 14px;font-size:1rem;transition:all .3s;border:1px solid var(--surface-mold)!important;color:var(--surface-paper)!important;background:#0a0f0df2!important}input:focus,textarea:focus,select:focus{outline:none;box-shadow:0 0 15px #8a9a9a26;border-color:var(--surface-silver)!important}input[data-mythos=true],textarea[data-mythos=true]{border-color:var(--deep-mythos)!important;color:#a080c0!important}input[data-mythos=true]:focus,textarea[data-mythos=true]:focus{animation:3s infinite input-whisper;box-shadow:0 0 20px #4a008033}@keyframes input-whisper{0%,to{border-color:var(--deep-mythos)!important}50%{border-color:#6a2090!important}}button{font-family:var(--font-void);cursor:pointer;letter-spacing:1px;transition:all .3s;position:relative;overflow:hidden}button:before{content:"";background:linear-gradient(90deg,#0000,#c9b8a01a,#0000);transition:transform .5s;position:absolute;inset:0;transform:translate(-100%)}button:hover:before{transform:translate(100%)}button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0006}button:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg, #1a3a2e, var(--surface-mold));color:var(--surface-paper);text-transform:uppercase;letter-spacing:2px;border:1px solid #4a6a5e;border-radius:4px;padding:10px 24px}.btn-primary:hover{background:linear-gradient(135deg, var(--surface-mold), #4a6a5e);box-shadow:0 6px 20px #2d4a3e66}.btn-danger{background:linear-gradient(135deg, #4a0f1a, var(--surface-blood));color:var(--surface-paper);border:1px solid #8b2a2a;border-radius:4px;padding:10px 24px}.btn-danger:hover{background:linear-gradient(135deg, var(--surface-blood), #8b2a2a);box-shadow:0 6px 20px #6b0f1a66}.btn-mythos{background:linear-gradient(135deg, #2a0050, var(--deep-mythos));color:#c0a0e0;border:1px solid #6a2090}.btn-mythos:hover{animation:2s infinite mythos-pulse;box-shadow:0 6px 25px #4a00804d}@keyframes mythos-pulse{0%,to{box-shadow:0 6px 25px #4a00804d}50%{box-shadow:0 6px 35px #4a008080}}hr{background:linear-gradient(90deg, transparent, var(--surface-mold), var(--surface-silver), var(--surface-mold), transparent);border:none;height:1px;margin:1.5rem 0;position:relative}hr:after{content:"⛧";background:var(--surface-ink);color:var(--surface-mold);padding:0 10px;font-size:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}h1,h2,h3,h4{font-family:var(--font-void);color:var(--surface-paper);text-shadow:0 0 30px #c9b8a014;letter-spacing:2px;position:relative}h1{border-bottom:1px solid var(--surface-mold);margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.8rem}h1:after{content:"";background:var(--surface-silver);width:30%;height:1px;position:absolute;bottom:-1px;left:0}[data-reality-layer=deep] h1,[data-reality-layer=fractured] h1{color:var(--surface-silver);border-bottom-color:var(--surface-blood)}[data-reality-layer=fractured] h1{animation:8s infinite title-corruption}@keyframes title-corruption{0%,to{filter:none}95%{filter:none}96%{filter:blur(.3px)hue-rotate(10deg)}97%{filter:none}}.coc-card{border:1px solid var(--surface-mold);background:linear-gradient(145deg,#0f1a15f2,#0a0f0dfa);border-radius:8px;padding:1.5rem;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 4px 30px #0009,inset 0 1px #c9b8a00d}.coc-card:before{content:"⛧";color:var(--surface-mold);opacity:.3;font-size:16px;transition:all .3s;position:absolute;top:-5px;left:50%;transform:translate(-50%)}.coc-card:hover{border-color:#4a6a5e;box-shadow:0 8px 40px #000000b3,inset 0 1px #c9b8a014}.coc-card:hover:before{opacity:.6;color:var(--surface-silver)}[data-reality-layer=deep] .coc-card{border-color:#3a2a2a}[data-reality-layer=fractured] .coc-card{border-color:var(--surface-blood);animation:6s infinite card-breathe}@keyframes card-breathe{0%,to{box-shadow:0 4px 30px #0009}50%{box-shadow:0 4px 30px #6b0f1a26}}.coc-card[data-corrupted=true]{border-color:var(--deep-mythos)}.coc-card[data-corrupted=true]:before{content:"☉";color:var(--deep-mythos);animation:10s linear infinite glyph-spin}@keyframes glyph-spin{0%{transform:translate(-50%)rotate(0)}to{transform:translate(-50%)rotate(360deg)}}.stat-card{text-align:center;background:#0a0f0dcc;border:1px solid #2d4a3e4d;border-radius:8px;padding:1.2rem;transition:all .3s;position:relative}.stat-card:after{content:"";background:var(--surface-silver);width:0;height:2px;transition:width .3s;position:absolute;top:0;left:50%;transform:translate(-50%)}.stat-card:hover{border-color:var(--surface-mold)}.stat-card:hover:after{width:40%}.stat-card .label{font-family:var(--font-void);color:var(--surface-mold);letter-spacing:3px;text-transform:uppercase;font-size:.75rem}.stat-card .value{font-size:2.2rem;font-weight:700;font-family:var(--font-void);color:var(--surface-paper);margin:.3rem 0;transition:all .3s}.stat-card[data-stat=sanity] .value{color:var(--surface-silver)}.stat-card[data-stat=sanity][data-low=true] .value{color:#8a6a3a;animation:3s infinite stat-flicker}.stat-card[data-stat=sanity][data-critical=true] .value{color:var(--surface-blood);animation:1s infinite stat-flicker}@keyframes stat-flicker{0%,to{opacity:1}50%{opacity:.7}}.coc-tag{color:var(--surface-silver);font-size:.8rem;font-family:var(--font-void);border:1px solid var(--surface-mold);letter-spacing:1px;background:linear-gradient(135deg,#1a2a25,#2a3a35);border-radius:12px;padding:3px 12px;transition:all .3s;display:inline-block}.coc-tag:hover{border-color:var(--surface-silver);color:var(--surface-paper)}.coc-tag.mythos-tag{border-color:var(--deep-mythos);color:#c0a0e0;background:linear-gradient(135deg,#2a0050,#3a1080)}.combat-log{color:#5a6a5a;background:#050807;border:1px solid #1a2a1a;border-radius:4px;max-height:200px;padding:.8rem;font-family:Courier New,monospace;font-size:.85rem;overflow-y:auto}.combat-log .log-entry{margin-bottom:.3rem;transition:all .3s}.combat-log .log-entry:hover{color:#8a9a8a}.combat-log .log-damage{color:var(--surface-blood)}.combat-log .log-heal{color:#4a8a6a}.combat-log .log-mythos{color:#8a6aaa}.note-card{border:1px solid #1a2a25;border-left:3px solid var(--surface-mold);background:#0f1a15cc;border-radius:4px;margin-bottom:.5rem;padding:.8rem;transition:all .3s;position:relative}.note-card:hover{border-left-color:var(--surface-silver);background:#14231ccc}.note-card[data-corrupted=true]{border-left-color:var(--deep-mythos)}.note-card[data-corrupted=true]:after{content:"█";color:var(--deep-mythos);opacity:.3;animation:4s infinite glyph-flicker;position:absolute;top:50%;right:8px;transform:translateY(-50%)}@keyframes glyph-flicker{0%,to{opacity:.1}50%{opacity:.4}}.weapon-item{border-bottom:1px solid #2d4a3e33;justify-content:space-between;align-items:center;padding:.5rem 0;transition:all .3s;display:flex}.weapon-item:last-child{border-bottom:none}.weapon-item:hover{border-bottom-color:#2d4a3e80;padding-left:8px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{text-shadow:0 0 5px #c9b8a033}50%{text-shadow:0 0 20px #c9b8a066}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes reality-stutter{0%,to{filter:none;transform:translate(0)}20%{filter:hue-rotate(5deg)blur(.3px);transform:translate(-2px,1px)}40%{transform:translate(3px,-1px)}60%{filter:saturate(1.2);transform:translate(-1px,2px)}80%{transform:translate(2px,-2px)}}@keyframes void-breath{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.5;transform:scale(1.02)}}@keyframes mold-creep{0%{background-position:0 0}to{background-position:100% 100%}}@keyframes glyph-shift{0%,to{font-weight:400}50%{font-weight:400.5}}@keyframes blood-pulse{0%,to{color:var(--surface-blood)}50%{color:red}}@keyframes eye-glint{0%,to{filter:brightness()}50%{filter:brightness(1.5)drop-shadow(0 0 8px #6b0f1a99)}}@keyframes whisper-fade{0%{opacity:0;transform:translateY(5px)}20%{opacity:.3}80%{opacity:.3}to{opacity:0;transform:translateY(-5px)}}.page-enter{animation:.5s ease-out fadeIn}.pulse{animation:2s ease-in-out infinite pulse}.glow-text{animation:3s ease-in-out infinite glow}.shimmer{background:linear-gradient(90deg,#0000,#ffffff0d,#0000) 0 0/200% 100%;animation:3s infinite shimmer}.glass{-webkit-backdrop-filter:blur(10px);background:#0a0f0db3;border:1px solid #2d4a3e4d}.loading-spinner{border:3px solid #2d4a3e33;border-top-color:var(--surface-mold);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}.typewriter{white-space:nowrap;border-right:2px solid var(--surface-paper);animation:2s steps(40,end) typing,.75s step-end infinite blink;overflow:hidden}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink{50%{border-color:#0000}}@keyframes animStar{0%{transform:translateY(0)}to{transform:translateY(-2000px)}}.stars,.stars2,.stars3{width:100%;height:100%;display:block;position:absolute;inset:0}.stars{background:0 0;width:1px;height:1px;animation:50s linear infinite animStar;box-shadow:100px 200px #fff,200px 400px #fff,300px 600px #fff,400px 800px #fff,500px 1000px #fff,600px 1200px #fff,700px 1400px #fff,800px 1600px #fff,900px 1800px #fff}.stars:after{content:" ";background:0 0;width:1px;height:1px;position:absolute;top:2000px;box-shadow:100px 200px #fff,200px 400px #fff,300px 600px #fff,400px 800px #fff,500px 1000px #fff,600px 1200px #fff,700px 1400px #fff,800px 1600px #fff,900px 1800px #fff}.stars2{background:0 0;width:2px;height:2px;animation:100s linear infinite animStar;box-shadow:150px 300px #ffffff80,350px 500px #ffffff80,550px 700px #ffffff80,750px 900px #ffffff80}.stars3{background:0 0;width:3px;height:3px;animation:150s linear infinite animStar;box-shadow:200px 400px #ffffff4d,450px 650px #ffffff4d,700px 850px #ffffff4d}[data-reality-layer=deep] .stars,[data-reality-layer=deep] .stars2,[data-reality-layer=deep] .stars3{filter:hue-rotate(180deg)saturate(.5)}[data-reality-layer=fractured] .stars,[data-reality-layer=fractured] .stars2,[data-reality-layer=fractured] .stars3{filter:hue-rotate(240deg)saturate(.3)brightness(.7);animation-duration:200s}@media (max-width:768px){body{font-size:14px}.container{padding:0 .5rem}.coc-card{padding:1rem!important}h1{font-size:1.4rem!important}.stat-card .value{font-size:1.6rem}.nav-stones{flex-wrap:wrap;gap:.5rem}div[style*="gridTemplateColumns: 1fr 1fr"]{grid-template-columns:1fr!important}}@media (max-width:480px){.coc-card{padding:.8rem!important}.btn-primary,.btn-danger,.btn-warning{padding:8px 16px!important;font-size:.85rem!important}}@media print{.no-print{display:none!important}body{color:#000!important;filter:none!important;background:#fff!important}.coc-card{box-shadow:none!important;border:1px solid #ccc!important;animation:none!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-sanity-level=low],[data-sanity-level=critical]{--reality-bleed:.5}[data-sanity-level=low] body{filter:contrast(.95)brightness(.92)}[data-sanity-level=critical] body{filter:contrast(.9)brightness(.85)saturate(.8)}
*{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0a060e;border-left:1px solid #503c641a}::-webkit-scrollbar-thumb{background:linear-gradient(#5e436b,#2f1d3a);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#7a5f8c}body{color:#cbbfb0;background-color:#0a060e;background-image:radial-gradient(circle at 20% 30%,#1e0f28e6 0%,#0000 40%),radial-gradient(circle at 80% 70%,#0a0514f2 0%,#0000 50%),repeating-linear-gradient(0deg,#281e3214 0 2px,#0000 2px 6px);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;min-height:100vh;font-family:Special Elite,Courier New,monospace}.void-texture{pointer-events:none;z-index:0;mix-blend-mode:overlay;background:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"100\" viewBox=\"0 0 100 100\"><path d=\"M10 70 Q 30 20 50 50 T 90 30\" stroke=\"%233a2c4a\" stroke-width=\"0.3\" fill=\"none\" opacity=\"0.2\"/><path d=\"M0 90 Q 20 60 40 80 T 80 50\" stroke=\"%235a4a6a\" stroke-width=\"0.4\" fill=\"none\" opacity=\"0.15\"/><circle cx=\"20\" cy=\"20\" r=\"2\" fill=\"%234a3a5a\" opacity=\"0.1\"/><circle cx=\"85\" cy=\"85\" r=\"4\" fill=\"%232a1a3a\" opacity=\"0.1\"/></svg>") 0 0/180px 180px;position:fixed;inset:0}.necronomicon-panel{z-index:2;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0c0812d1;border:1px solid #503c644d;border-top:2px solid #5e436b;border-bottom:2px solid #2f1d3a;flex-direction:column;gap:20px;width:100%;max-width:1200px;margin:20px auto;padding:30px 30px 40px;display:flex;position:relative;box-shadow:0 25px 40px -15px #000000e6,inset 0 0 50px #28143c4d}.gothic-arch{text-align:center;border-bottom:1px solid #3f2c4e;padding-bottom:10px;position:relative}.gothic-arch i{color:#7a5f8c;opacity:.7;margin:0 12px;font-size:18px}.gothic-arch span{letter-spacing:6px;color:#9980aa;text-transform:uppercase;font-family:Uncial Antiqua,serif;font-size:14px}.header{border-bottom:2px solid #34273e;flex-wrap:wrap;justify-content:space-between;align-items:center;padding-bottom:20px;display:flex;position:relative}.eldritch-sigil{color:#5e436b;text-shadow:0 0 20px #5a3c784d;font-size:40px;line-height:1}.site-title{color:#d4c0df;letter-spacing:8px;text-shadow:0 0 30px #5a3c7866;font-family:Uncial Antiqua,serif;font-size:28px}.site-subtitle{color:#7a5f8c;letter-spacing:4px;font-family:MedievalSharp,serif;font-size:14px}.nav-stones{flex-wrap:wrap;gap:4px;display:flex}.nav-stones a,.nav-stones button{color:#9980aa;letter-spacing:1px;cursor:pointer;background:#140e1c80;border:1px solid #3c285033;padding:8px 16px;font-family:MedievalSharp,serif;font-size:13px;text-decoration:none;transition:all .3s}.nav-stones a:hover,.nav-stones button:hover{color:#cbbfb0;background:#3c28504d;border-color:#7a5f8c}.nav-stones a.active{color:#d4c0df;background:#50326e4d;border-color:#7a5f8c}.card-void{background:#0f0a16b3;border:1px solid #3c285033;border-top:2px solid #5a3c784d;padding:18px 20px;transition:all .3s;position:relative;box-shadow:0 4px 12px #0006}.card-void:hover{border-color:#64468c66;transform:translateY(-3px);box-shadow:0 10px 30px #28143c4d}.title-void{color:#d4c0df;letter-spacing:4px;text-shadow:0 0 20px #5a3c784d;border-bottom:1px solid #3f2c4e;margin-bottom:20px;padding-bottom:10px;font-family:Uncial Antiqua,serif}.btn-void{color:#cbbfb0;letter-spacing:2px;cursor:pointer;text-transform:uppercase;background:#1e142899;border:1px solid #503c644d;align-items:center;gap:8px;padding:10px 22px;font-family:MedievalSharp,serif;font-size:14px;text-decoration:none;transition:all .3s;display:inline-flex}.btn-void:hover{background:#3c285080;border-color:#7a5f8c;transform:translateY(-1px);box-shadow:0 0 20px #5a3c7833}.btn-void.danger:hover{border-color:#8b0000;box-shadow:0 0 20px #8b000033}.input-void{color:#cbbfb0;background:#0f0a1699;border:1px solid #3c285033;outline:none;width:100%;padding:8px 12px;font-family:Special Elite,monospace;font-size:14px;transition:all .3s}.input-void:focus{border-color:#7a5f8c;box-shadow:0 0 15px #5a3c7826}.stat-bar{background:#140e1c99;border:1px solid #3c285033;height:8px;overflow:hidden}.stat-bar-fill{background:linear-gradient(90deg,#2f1d3a,#7a5f8c,#9980aa);height:100%;transition:width .5s}.stat-bar-fill.danger{background:linear-gradient(90deg,#3a1a1a,#8b0000,#c33)}.stat-bar-fill.safe{background:linear-gradient(90deg,#1a3a2a,#2a6a4a,#4a9a6a)}.tag-void{color:#9980aa;letter-spacing:1px;background:#28193766;border:1px solid #503c6426;padding:2px 10px;font-family:Special Elite,monospace;font-size:11px;display:inline-block}.void-spinner{border:2px solid #503c6433;border-top-color:#7a5f8c;border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.footer-void{text-align:center;color:#5a3c784d;letter-spacing:2px;border-top:1px solid #3f2c4e;padding:20px;font-family:Special Elite,monospace;font-size:12px}@keyframes eyePulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.eye-pulse{animation:4s ease-in-out infinite eyePulse;display:inline-block}@media (max-width:768px){.necronomicon-panel{margin:10px;padding:15px}.site-title{letter-spacing:4px;font-size:20px}.header{flex-direction:column;gap:15px}.nav-stones{justify-content:center}}
