@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,400;1,500&family=JetBrains+Mono:wght@400;500&display=swap";:root{--sh-void:#07060a;--sh-void-deep:#050408;--sh-rail:linear-gradient(180deg, #1a1518f5, #0a080afa);--sh-panel:linear-gradient(180deg, #140f10eb, #0c090bf5);--sh-panel-raised:linear-gradient(180deg, #181214f5, #0c090bfc);--sh-panel-sunk:#0006;--sh-bone-bright:#f0e6d2;--sh-bone:#d6cab2;--sh-mute:#a89c83;--sh-dim:#6f6555;--sh-gold:#c79a5a;--sh-gold-deep:#9a7a3a;--sh-blood:#6a0a0a;--sh-blood-bright:#8a0d0d;--sh-blood-dark:#3a0606;--sh-blood-ink:#c2564f;--sh-candle:#fff2d0;--sh-rule:#a08c6e38;--sh-rule-strong:#a08c6e57;--sh-rule-faint:#a08c6e1f;--sh-inset:inset 0 2px 8px #0009;--sh-lift:0 24px 60px -34px #000000e6;--sh-display:"Cinzel", Georgia, serif;--sh-body:"Cormorant Garamond", Georgia, serif;--sh-mono:"JetBrains Mono", ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:radial-gradient(900px 500px at 50% -10%, #a0968212, transparent 60%), radial-gradient(700px 380px at 95% 110%, #6a0a0a24, transparent 60%), var(--sh-void);font:400 18px/1.5 var(--sh-body);color:var(--sh-bone);-webkit-font-smoothing:antialiased;margin:0}h1{font:600 38px/1 var(--sh-display);letter-spacing:.05em;color:var(--sh-bone);text-shadow:0 0 26px #8a0d0d4d;margin:0}h2{font:500 27px/1.15 var(--sh-display);font-variant:small-caps;letter-spacing:.03em;color:var(--sh-bone);margin:0}h3{font:500 21px/1.2 var(--sh-display);font-variant:small-caps;letter-spacing:.03em;color:var(--sh-bone);margin:0}input[type=text],input[type=number],input[type=search],textarea,select{background:var(--sh-panel-sunk);box-shadow:var(--sh-inset);font:400 17px/1.35 var(--sh-body);color:var(--sh-bone-bright);border:1px solid #a08c6e47;border-radius:0;padding:12px 14px}input::placeholder,textarea::placeholder{color:var(--sh-dim);font-style:italic}input:focus,textarea:focus,select:focus{box-shadow:var(--sh-inset), 0 0 0 3px #c79a5a1a;border-color:#c79a5a99;outline:none}input:disabled,textarea:disabled,select:disabled{color:var(--sh-dim);cursor:not-allowed}input[type=number]{font:400 16px/1.35 var(--sh-mono);color:var(--sh-gold)}button{font:500 10px/1 var(--sh-display);letter-spacing:.16em;text-transform:uppercase;color:var(--sh-bone);border:1px solid var(--sh-rule-strong);cursor:pointer;background:0 0;border-radius:0;padding:12px 16px 11px;transition:border-color .15s,color .15s,background .15s}button:hover:not(:disabled){color:var(--sh-bone-bright);background:#c79a5a12;border-color:#c79a5a99}button:disabled{color:var(--sh-dim);cursor:not-allowed;border-color:#a08c6e2e}.sh-seal{color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));letter-spacing:.18em;border:1px solid #ffd2b480;padding:14px 24px 13px;font-size:11px;box-shadow:inset 0 1px #ffd2b433}.sh-seal:hover:not(:disabled){color:#fff;background:linear-gradient(#7d1010,#4a0808);border-color:#ffd2b4b3}.sh-danger{color:var(--sh-blood-ink);background:#6a0a0a24;border-color:#8a0d0d80}.sh-danger:hover:not(:disabled){color:#e07a72;background:#6a0a0a47;border-color:#8a0d0dcc}fieldset{border:1px solid var(--sh-rule);background:var(--sh-panel);border-radius:0;padding:22px 26px 26px}legend{font:500 10px/1 var(--sh-display);letter-spacing:.3em;text-transform:uppercase;color:var(--sh-gold);padding:0 10px}code,kbd,samp{font-family:var(--sh-mono);color:var(--sh-gold)}hr{background:var(--sh-rule);border:0;height:1px;margin:32px 0}::selection{color:var(--sh-candle);background:#6a0a0a8c}*{scrollbar-color:#a08c6e59 transparent;scrollbar-width:thin}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}:root{--void:#07060a;--night:#0f0c10;--stone:#1a1518;--stone-2:#241d20;--bone:#d6cab2;--bone-soft:#a89c83;--bone-dim:#6f6555;--blood:#6a0a0a;--blood-bright:#8a0d0d;--blood-deep:#3a0606;--tarnish:#9a7a3a;--rule:#a08c6e38;--sans:"Cormorant Garamond", "Iowan Old Style", Georgia, serif;--heading:"Cinzel", serif;--mono:"JetBrains Mono", ui-monospace, Consolas, monospace;font:18px/1.5 var(--sans);color:var(--bone);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{background:radial-gradient(900px 500px at 50% -10%, #a0968214, transparent 60%), radial-gradient(700px 380px at 90% 110%, #6a0a0a2e, transparent 60%), radial-gradient(600px 380px at 10% 100%, #3c32282e, transparent 60%), var(--void);min-height:100vh;color:var(--bone);background-attachment:fixed;margin:0}#root{text-align:left;box-sizing:border-box;flex-direction:column;width:1100px;max-width:100%;min-height:100svh;margin:0 auto;padding:0 28px 64px;display:flex}h1{font-family:var(--heading);letter-spacing:.06em;color:var(--bone);text-shadow:0 0 28px #8a0d0d4d;margin:36px 0 20px;font-size:44px;font-weight:600}h2{font-family:var(--heading);letter-spacing:.04em;color:var(--bone);margin:0 0 10px;font-size:24px;font-weight:500}p{margin:0 0 12px}@media (width<=1024px){h1{font-size:32px}:root{font-size:16px}}#root>div>a{font-family:var(--heading);letter-spacing:.2em;text-transform:uppercase;color:var(--bone-soft);border-bottom:2px solid #0000;padding:18px 18px 16px;font-size:13px;text-decoration:none;transition:color .2s,border-color .2s;display:inline-block}#root>div>a:first-child{padding-left:0}#root>div>a:hover{color:var(--bone);border-bottom-color:var(--blood-bright)}#root>div{position:relative}#root>div:after{content:"";background:linear-gradient(90deg, var(--rule), transparent 70%);height:1px;margin-bottom:8px;display:block}button,.btn{font-family:var(--heading);letter-spacing:.16em;text-transform:uppercase;color:#ead9b6;cursor:pointer;background:linear-gradient(#302628d9,#1c1618e6);border:1px solid #bea57873;border-radius:0;margin:0 8px 8px 0;padding:11px 20px;font-size:13px;font-weight:500;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform 50ms;box-shadow:inset 0 1px #fff0d20f,inset 0 -2px #00000059}button:hover,.btn:hover{color:#fbeec9;border-color:var(--blood-bright);background:linear-gradient(#6a0a0a73,#3a060699);box-shadow:inset 0 1px #ffc8b429,inset 0 -2px #0006,0 0 14px #8a0d0d59}button:active,.btn:active{transform:translateY(1px)}button:focus-visible,.btn:focus-visible{outline-offset:2px;outline:1px solid #ffd2b480}.btn{text-decoration:none;display:inline-block}textarea{width:100%;max-width:420px;height:40px;font-family:var(--sans);color:var(--bone);resize:none;background:#0a0809b3;border:1px solid #a08c6e40;border-radius:0;outline:none;margin:4px 0 22px;padding:9px 12px;font-size:16px;transition:border-color .2s,box-shadow .2s;display:block;box-shadow:inset 0 2px 6px #0009}textarea::placeholder{color:#a89c8380;font-style:italic}textarea:focus{border-color:var(--blood-bright);box-shadow:inset 0 2px 6px #0009,0 0 0 1px #8a0d0d59,0 0 14px #8a0d0d33}table{border-collapse:collapse;width:100%;margin-top:4px}tbody tr{border-bottom:1px dashed #a08c6e2e}tbody tr:last-child{border-bottom:none}td{vertical-align:top;padding:12px 14px 12px 0;line-height:1.5}td:first-child{font-family:var(--heading);letter-spacing:.03em;color:var(--bone);white-space:nowrap;padding-right:28px;font-size:17px;font-weight:500}td:not(:first-child){color:var(--bone-soft)}img{border:1px solid var(--rule);max-width:100%;height:auto;box-shadow:0 20px 50px -24px #000000e6}a{color:var(--tarnish);text-decoration-color:#9a7a3a80}a:hover{color:#c79a46}code{font-family:var(--mono);color:var(--bone);background:#ffffff0d;border-radius:3px;padding:3px 7px;font-size:15px}.desk__head{border-bottom:1px solid #a08c6e33;align-items:flex-end;gap:20px;padding-bottom:22px;display:flex}.desk__eyebrow{font:500 10px/1 var(--sh-display);letter-spacing:.34em;text-transform:uppercase;color:var(--sh-gold);margin:0}.desk__head h1{text-shadow:0 0 26px #8a0d0d59;margin:10px 0 0}.desk__head-right{text-align:right;margin-left:auto}.desk__note{font:400 13px/1 var(--sh-body);color:var(--sh-dim);margin:0;font-style:italic}.desk__cta{font:500 11px/1 var(--sh-display);letter-spacing:.16em;text-transform:uppercase;color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));border:1px solid #ffd2b480;margin-top:10px;padding:9px 15px 8px;text-decoration:none;display:inline-block;box-shadow:inset 0 1px #ffd2b433}.desk__cta:hover{color:#fff;background:linear-gradient(#7d1010,#4a0808)}.desk__grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:18px;margin:22px 0 0;display:grid}.desk-panel{background:linear-gradient(#140f10e6,#0c090bf2);border:1px solid #a08c6e33;padding:24px 26px 22px}.desk-panel--wide{grid-column:span 2}.desk-panel--full{grid-column:span 3}.desk-panel__head{align-items:baseline;gap:12px;margin:0 0 16px;display:flex}.desk-panel__head:after{content:"";background:#a08c6e33;flex:1;order:1;height:1px}.desk-panel__title{font:500 10px/1 var(--sh-display);letter-spacing:.28em;text-transform:uppercase;color:var(--sh-gold);margin:0}.desk-panel__count{font:400 12px/1 var(--sh-mono);color:var(--sh-dim);order:2}.desk-chronicle{background:linear-gradient(#140f10f5,#0c090bfc);border-color:#a08c6e42;padding:26px 28px 24px;box-shadow:0 24px 60px -30px #000000e6}.desk-chronicle h2{font-size:26px;line-height:1.22}.desk-chronicle__body{color:var(--sh-mute);text-wrap:pretty;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:12px 0 0;font-size:16px;line-height:1.6;display:-webkit-box;overflow:hidden}.desk-chronicle__empty{font:400 18px/1.5 var(--sh-body);color:var(--sh-dim);margin:6px 0 0;font-style:italic}.desk-panel__foot{border-top:1px solid #a08c6e2e;align-items:baseline;gap:14px;margin:18px 0 0;padding-top:14px;display:flex}.desk-panel__byline{font:400 13px/1 var(--sh-body);color:var(--sh-dim);font-style:italic}.desk-panel__foot a{font:400 13px/1 var(--sh-body);font-variant:small-caps;letter-spacing:.12em;margin-left:auto;text-decoration:none}.desk-map{background:#0b0810;padding:0;overflow:hidden}.desk-map__thumb{height:158px;display:block;position:relative;overflow:hidden}.desk-map__thumb img{aspect-ratio:2413/1547;filter:saturate(.45)brightness(.62)contrast(1.05);width:100%;height:auto;margin-top:-22px;display:block}.desk-map__thumb:after{content:"";background:linear-gradient(#07060a14,#07060aeb);position:absolute;inset:0}.desk-map__pin{background:#b81616;border:1px solid #d6cab2e6;border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;position:absolute;box-shadow:0 0 8px 2px #8a0d0d99}.desk-map__pin--hidden{width:7px;height:7px;box-shadow:none;background:#4a4238;border:1px dashed #d6cab280}.desk-map__body{padding:18px 24px 22px}.desk-map__body .desk-panel__title{margin-bottom:12px}.desk-map__count{font:400 32px/1 var(--sh-mono);color:var(--sh-bone);margin:0}.desk-map__count span{color:var(--sh-dim);font-size:17px}.desk-map__hidden{font:400 13px/1.4 var(--sh-body);color:var(--sh-blood-bright);margin:10px 0 0;font-style:italic}.desk-hoard__list{grid-template-columns:1fr 1fr;gap:0 34px;margin:0;padding:0;list-style:none;display:grid}.desk-hoard__list li{color:var(--sh-bone);border-bottom:1px dashed #a08c6e2e;align-items:baseline;gap:10px;padding:9px 0;font-size:16px;display:flex}.desk-hoard__list li:nth-last-child(-n+2){border-bottom:0}.desk-hoard__qty{font:400 12px/1 var(--sh-mono);color:var(--sh-gold-deep);margin-left:auto}.desk-dm{border:1px solid #8a0d0d66;border-left:3px solid var(--sh-blood-bright);background:#6a0a0a24;grid-column:span 3;align-items:center;gap:34px;padding:20px 24px;display:flex}.desk-dm__label{font:500 10px/1.5 var(--sh-display);letter-spacing:.24em;text-transform:uppercase;color:var(--sh-blood-ink);flex:none;margin:0}.desk-dm__label+*{border-left:1px solid #8a0d0d66;padding-left:34px}.desk-dm__stat{flex-direction:column;gap:8px;display:flex}.desk-dm__stat dt,.desk-dm__stat-label{font:500 9px/1 var(--sh-display);letter-spacing:.2em;text-transform:uppercase;color:var(--sh-dim)}.desk-dm__stat dd,.desk-dm__stat-value{font:400 15px/1.35 var(--sh-body);color:var(--sh-mute);margin:0}@media (width<=1240px){.desk__grid{grid-template-columns:1fr 1fr}.desk-panel--wide,.desk-panel--full,.desk-dm{grid-column:span 2}}html{overflow-y:scroll}#root:has(.shop){text-align:left;border:none;width:100%;max-width:100%}.shop{--void:#07060a;--stone:#1a1518;--stone-2:#241d20;--bone:#d6cab2;--bone-soft:#a89c83;--bone-dim:#6f6555;--blood:#6a0a0a;--blood-bright:#8a0d0d;--blood-deep:#3a0606;--tarnish:#9a7a3a;z-index:1;width:90%;max-width:720px;color:var(--bone);background:linear-gradient(180deg, #140f10f5, #0c090bfa), repeating-linear-gradient(0deg, #fff0d203 0 2px, transparent 2px 4px), var(--void);border:1px solid #a08c6e47;margin:64px auto 80px;padding:32px 36px 38px;font-family:Cormorant Garamond,Iowan Old Style,Georgia,serif;font-size:17px;position:relative;box-shadow:0 0 0 1px #0009,0 34px 90px -28px #000000e6,0 0 120px -40px #8a0d0d59,inset 0 1px #fff0d20a}.shop:before,.shop:after{content:"";pointer-events:none;border:1px solid #a08c6e1f;position:absolute;inset:8px}.shop:after{border:1px dashed #a08c6e14;inset:14px}.shop-eyebrow,.shop-title{z-index:1;text-align:center;width:90%;max-width:720px;margin:0 auto;position:relative}.shop-eyebrow{letter-spacing:.42em;text-transform:uppercase;color:#c79a5a;margin-top:32px;font-family:Cinzel,serif;font-size:11px}.shop-title{letter-spacing:.08em;color:var(--bone);text-shadow:0 0 1px #d6cab280,0 0 28px #8a0d0d59,0 0 60px #8a0d0d2e;margin:10px auto 0;font-family:Cinzel,serif;font-size:40px;font-weight:600}.shop h1{letter-spacing:.06em;text-shadow:0 0 20px #8a0d0d4d;margin:0 0 16px;font-family:Cinzel,serif;font-size:26px}.shop>div:first-of-type{border-bottom:1px dashed #a08c6e2e;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding-bottom:16px;display:flex}.shop>div:first-of-type>p{letter-spacing:.32em;text-transform:uppercase;color:var(--bone-soft);margin:0 14px 0 0;font-family:Cinzel,serif;font-size:10px}.shop>div:first-of-type>button{letter-spacing:.18em;text-transform:uppercase;color:#ead9b6;cursor:pointer;background:linear-gradient(#302628d9 0%,#1c1618e6 100%);border:1px solid #bea57873;padding:7px 14px;font-family:Cinzel,serif;font-size:12px;font-weight:500;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform 50ms;box-shadow:inset 0 1px #fff0d20f,inset 0 -2px #00000059}.shop>div:first-of-type>button:hover{color:#fbeec9;border-color:var(--blood-bright);background:linear-gradient(#6a0a0a73 0%,#3a060699 100%);box-shadow:inset 0 1px #ffc8b429,inset 0 -2px #0006,0 0 14px #8a0d0d59}.shop>div:first-of-type>button:active{transform:translateY(1px)}.shop>div:first-of-type>button:focus{outline:none}.shop>div:first-of-type>button.active{background:linear-gradient(180deg, var(--blood) 0%, var(--blood-deep) 100%);color:#fff2d0;border-color:#ffd2b48c;box-shadow:inset 0 1px #ffd2b440,inset 0 -2px #0006,0 0 22px #8a0d0d80}.shop>input{width:100%;height:38px;color:var(--bone);background:#0a0809b3;border:1px solid #a08c6e40;outline:none;margin:0 0 18px;padding:8px 12px;font-family:Cormorant Garamond,serif;font-size:15px;transition:border-color .2s,box-shadow .2s;display:block;box-shadow:inset 0 2px 6px #0009}.shop>input::placeholder{color:#a89c8380;font-style:italic}.shop>input:focus{border-color:var(--blood-bright);box-shadow:inset 0 2px 6px #0009,0 0 0 1px #8a0d0d59,0 0 14px #8a0d0d33}.shop>div:nth-of-type(3){scrollbar-color:var(--blood-bright) #00000059;scrollbar-width:thin;max-height:380px;padding-right:6px;overflow-y:auto}.shop>div:nth-of-type(3)::-webkit-scrollbar{width:8px}.shop>div:nth-of-type(3)::-webkit-scrollbar-track{background:#00000059}.shop>div:nth-of-type(3)::-webkit-scrollbar-thumb{background:var(--blood-bright)}.shop table{border-collapse:collapse;width:100%}.shop tr{border-bottom:1px dashed #a08c6e2e}.shop tr:last-child{border-bottom:none}.shop td{vertical-align:middle;padding:10px 4px}.shop td:last-child{text-align:right;letter-spacing:.06em;color:var(--tarnish);white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.shop td>button{text-align:left;color:var(--bone);cursor:pointer;background:0 0;border:none;margin:0;padding:0;font-family:Cormorant Garamond,serif;font-size:17px;font-weight:500;transition:color .2s,text-shadow .2s;position:relative}.shop td>button:after{content:"";background:var(--blood-bright);height:1px;transition:right .3s;position:absolute;bottom:-3px;left:0;right:100%}.shop td>button:hover{color:#f0e3c4;text-shadow:0 0 12px #8a0d0d80}.shop td>button:hover:after{right:0}.shop td>button:focus{color:#f3e6c7;outline:none}.shop td>button:focus:after{right:0}.shop>div:nth-of-type(2):has(>div){z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#040305b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.shop>div:nth-of-type(2)>div{letter-spacing:.06em;width:100%;max-width:420px;max-height:80vh;color:var(--bone);background:radial-gradient(circle at 50% 0,#8a0d0d24,#0000 60%),linear-gradient(#241d20fa,#100c0efc);border:1px solid #a08c6e4d;padding:24px 28px 26px;font-family:Cinzel,serif;font-size:15px;font-weight:600;position:relative;overflow-y:auto;box-shadow:0 30px 70px -20px #000000e6,inset 0 1px #fff0d20d}.shop>div:nth-of-type(2)>div:before{content:"";pointer-events:none;border:1px solid #a08c6e1f;position:absolute;inset:6px}.item-detail-close{width:26px;height:26px;color:var(--bone-soft);cursor:pointer;background:0 0;border:1px solid #a08c6e4d;justify-content:center;align-items:center;padding:0;font-family:Cinzel,serif;font-size:15px;line-height:1;transition:color .2s,border-color .2s,background .2s;display:flex;position:absolute;top:10px;right:10px}.item-detail-close:hover{color:#fbeec9;border-color:var(--blood-bright);background:#6a0a0a40}.item-detail-header{justify-content:space-between;align-items:baseline;gap:24px;padding-right:24px;display:flex}.item-detail-name{letter-spacing:.04em;font-size:18px}.item-detail-price{letter-spacing:.06em;color:var(--tarnish);white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:400}.item-detail-stats{border-top:1px solid #a08c6e2e;flex-direction:column;gap:6px;margin:14px 0 0;padding-top:12px;display:flex}.item-detail-stat{gap:10px;font-weight:400;display:flex}.item-detail-stat dt{letter-spacing:.14em;text-transform:uppercase;min-width:140px;color:var(--bone-soft);margin:0;font-family:Cinzel,serif;font-size:10px}.item-detail-stat dd{color:var(--bone);margin:0;font-family:Cormorant Garamond,serif;font-size:15px}.shop>div:nth-of-type(2) p{color:var(--bone-soft);border-top:1px solid #a08c6e2e;margin:14px 0 0;padding-top:12px;font-family:Cormorant Garamond,serif;font-size:16px;font-style:italic;font-weight:400;line-height:1.55}.shop>div:nth-of-type(2) p:first-letter{color:var(--blood-bright);padding-right:2px;font-family:Cinzel,serif;font-size:1.5em;font-style:normal}.item-detail-tags{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.item-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--bone-soft);border:1px solid #a08c6e4d;padding:3px 8px;font-family:Cinzel,serif;font-size:9px}.item-detail-empty{text-align:center;color:var(--bone-soft);background:#ffffff04;border:1px dashed #a08c6e40;margin:0 0 18px;padding:14px 16px;font-style:italic;line-height:1.6}.item-detail-empty .sub{letter-spacing:.2em;text-transform:uppercase;color:var(--bone-dim);margin-top:8px;font-size:11px;font-style:normal;display:block}.item-detail-add-row{border-top:1px solid #a08c6e2e;flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;padding-top:14px;display:flex}.item-detail-add{letter-spacing:.16em;text-transform:uppercase;color:#fff2d0;background:linear-gradient(180deg, var(--blood) 0%, var(--blood-deep) 100%);cursor:pointer;border:1px solid #ffd2b480;padding:9px 16px;font-family:Cinzel,serif;font-size:12px;font-weight:500;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform 50ms;box-shadow:inset 0 1px #ffd2b433,inset 0 -2px #0006}.item-detail-add:hover:not(:disabled){border-color:var(--blood-bright);box-shadow:inset 0 1px #ffd2b44d,inset 0 -2px #0006,0 0 18px #8a0d0d80}.item-detail-add:active:not(:disabled){transform:translateY(1px)}.item-detail-add:focus{outline:none}.item-detail-add:disabled{opacity:.55;cursor:default}.item-detail-add-note{color:var(--tarnish);font-family:Cormorant Garamond,serif;font-size:14px;font-style:italic}.item-detail-add-error{color:#e08a8a;font-family:Cormorant Garamond,serif;font-size:14px;font-style:italic}.maps{--void:#07060a;--stone:#1a1518;--stone-2:#241d20;--bone:#d6cab2;--bone-soft:#a89c83;--bone-dim:#6f6555;--blood:#6a0a0a;--blood-bright:#8a0d0d;--blood-deep:#3a0606;--tarnish:#9a7a3a;--dot:14px;--hit:30px;color:var(--bone);font-family:Cormorant Garamond,Iowan Old Style,Georgia,serif}.maps-header{justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 12px;display:flex}.maps-visibility-toggle{font-variant:small-caps;letter-spacing:.12em;color:var(--tarnish);cursor:pointer;background:0 0;border:1px solid #9a7a3a66;padding:6px 12px;font:400 13px/1 Cormorant Garamond,Georgia,serif;transition:color .18s,border-color .18s,background .18s}.maps-visibility-toggle:hover{color:var(--bone);background:#9a7a3a1a;border-color:#9a7a3abf}.maps-visibility-toggle:focus-visible{outline:1px solid var(--tarnish);outline-offset:2px}.maps .map-stage{background:#0b0810;border:1px solid #a08c6e47;position:relative;overflow:hidden;box-shadow:0 0 0 1px #0009,0 34px 90px -28px #000000e6}.maps .map-hotspot{width:var(--hit);height:var(--hit);appearance:none;cursor:pointer;z-index:2;background:0 0;border:0;place-items:center;margin:0;padding:0;display:grid}.maps .map-hotspot:before{content:"";width:var(--dot);height:var(--dot);background:radial-gradient(circle at 35% 30%, #b81616, var(--blood-bright) 55%, var(--blood-deep));outline-offset:4px;border:2px solid #d6cab2e6;border-radius:50%;outline:1px solid #8a0d0d8c;transition:box-shadow .22s,width .18s,height .18s,border-color .18s;animation:3.6s ease-in-out infinite hotspotBeat;box-shadow:0 0 10px 2px #8a0d0d73,0 1px 3px #000c}@keyframes hotspotBeat{0%,to{box-shadow:0 0 8px 1px #8a0d0d59,0 1px 3px #000c}50%{box-shadow:0 0 16px 4px #8a0d0d99,0 1px 3px #000c}}.maps .map-hotspot:hover:before,.maps .map-hotspot:focus-visible:before{width:calc(var(--dot) + 4px);height:calc(var(--dot) + 4px);border-color:#f0e6d2;animation:none;box-shadow:0 0 20px 5px #8a0d0db3,0 1px 3px #000c}.maps .map-hotspot:focus-visible{outline:none}.maps .map-hotspot:focus-visible:before{outline:1px solid var(--tarnish);outline-offset:6px}.maps .map-hotspot:active:before{width:var(--dot);height:var(--dot)}.maps .map-hotspot.is-active:before{width:calc(var(--dot) + 4px);height:calc(var(--dot) + 4px);border-color:var(--tarnish);outline-color:#9a7a3ab3;animation:none;box-shadow:0 0 22px 6px #8a0d0d99,0 0 0 1px #9a7a3a59,0 1px 3px #000c}.maps .map-hotspot.is-hidden:before{background:radial-gradient(circle at 35% 30%,#6f6555,#4a4238 60%,#2a251f);border-style:dashed;border-color:#d6cab28c;outline-color:#9a7a3a66;animation:none;box-shadow:0 1px 3px #000c}.maps .map-hotspot:after{content:attr(title);white-space:nowrap;font-variant:small-caps;letter-spacing:.1em;color:var(--bone);opacity:0;pointer-events:none;background:linear-gradient(#1a1518f7,#0c090bf7);border:1px solid #9a7a3a73;padding:3px 9px 2px;font-size:13px;transition:opacity .16s,translate .16s;position:absolute;bottom:calc(100% + 4px);left:50%;translate:-50% 4px;box-shadow:0 6px 18px -6px #000000e6}.maps .map-hotspot:hover:after,.maps .map-hotspot:focus-visible:after{opacity:1;translate:-50%}.maps .map-hotspot.is-active:after{opacity:0}.maps .loc-panel{--edge:1px solid #a08c6e47;color:var(--bone);background:linear-gradient(180deg, #140f10f7, #0c090bfc), repeating-linear-gradient(0deg, #fff0d203 0 2px, transparent 2px 4px), var(--void);border:var(--edge);position:relative;box-shadow:0 0 0 1px #0009,0 34px 90px -28px #000000f2}.maps .loc-panel__name{font-variant:small-caps;letter-spacing:.04em;color:var(--bone);text-shadow:0 1px #000c;margin:0 34px 0 0;font-size:26px;font-weight:500}.maps .loc-panel__rule{background:linear-gradient(90deg,#0000,#9a7a3a8c 20% 80%,#0000);height:1px;margin:12px 0 14px}.maps .loc-panel__desc{color:var(--bone-soft);text-wrap:pretty;margin:0;font-size:17px;line-height:1.55}.maps .loc-panel__empty{color:var(--bone-dim);font-style:italic}.maps .loc-panel__edit{font-variant:small-caps;letter-spacing:.12em;color:var(--tarnish);cursor:pointer;background:0 0;border:1px solid #9a7a3a66;margin-top:16px;padding:5px 12px 4px;font:400 13px/1 Cormorant Garamond,Georgia,serif;transition:color .18s,border-color .18s,background .18s}.maps .loc-panel__edit:hover{color:var(--bone);background:#9a7a3a1a;border-color:#9a7a3abf}.maps .loc-panel__edit:focus-visible{outline:1px solid var(--tarnish);outline-offset:2px}.maps .loc-edit__label{font-variant:small-caps;letter-spacing:.14em;color:var(--bone-dim);margin-bottom:7px;font-size:12px;display:block}.maps .loc-edit__field{width:100%;color:var(--bone);resize:vertical;box-sizing:border-box;background:#00000073;border:1px solid #a08c6e47;padding:10px 12px;font:400 15px/1.5 Cormorant Garamond,Georgia,serif;display:block}.maps .loc-edit__field:focus{border-color:#9a7a3ab3;outline:none;box-shadow:0 0 0 1px #9a7a3a40}.maps .loc-edit__field:disabled{color:var(--bone-dim)}.maps .loc-edit__actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.maps .loc-edit__btn{font-variant:small-caps;letter-spacing:.12em;color:var(--bone-soft);cursor:pointer;background:0 0;border:1px solid #a08c6e47;padding:6px 14px 5px;font:400 13px/1 Cormorant Garamond,Georgia,serif;transition:color .18s,border-color .18s,background .18s}.maps .loc-edit__btn:hover:not(:disabled){color:var(--bone);background:#9a7a3a14;border-color:#9a7a3a99}.maps .loc-edit__btn--save{color:var(--bone);background:#6a0a0a47;border-color:#9a7a3a8c}.maps .loc-edit__btn--save:hover:not(:disabled){background:#8a0d0d6b}.maps .loc-edit__btn:focus-visible{outline:1px solid var(--tarnish);outline-offset:2px}.maps .loc-edit__btn:disabled{opacity:.5;cursor:default}.maps .loc-edit__error{color:#e2b4b4;border:1px solid #8a0d0d80;border-left:3px solid var(--blood-bright);background:#6a0a0a2e;margin:12px 0 0;padding:9px 12px;font-size:14px}.maps .loc-panel__dm{color:var(--bone-soft);border:1px solid #8a0d0d66;border-left:3px solid var(--blood-bright);background:#6a0a0a24;margin:16px 0 0;padding:12px 14px;font-size:15px;line-height:1.5}.maps .loc-panel__close{width:30px;height:30px;color:var(--bone-dim);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;font:400 20px/1 Cormorant Garamond,Georgia,serif;transition:color .18s,border-color .18s,background .18s;display:grid;position:absolute;top:10px;right:12px}.maps .loc-panel__close:hover{color:var(--bone);background:#9a7a3a14;border-color:#9a7a3a73}.maps .loc-panel__close:focus-visible{outline:1px solid var(--tarnish);outline-offset:2px}.maps .loc-panel--drawer{z-index:40;border-width:0 0 0 1px;width:min(340px,82%);height:100%;padding:26px 28px;animation:.26s cubic-bezier(.2,.7,.3,1) both locSlide;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-30px 0 70px -30px #000000f2}.maps .loc-panel--drawer.loc-panel--left{border-width:0 1px 0 0;animation:.26s cubic-bezier(.2,.7,.3,1) both locSlideLeft;left:0;right:auto;box-shadow:30px 0 70px -30px #000000f2}.maps .loc-panel--popover{z-index:40;width:260px;padding:18px 20px 20px;animation:.18s cubic-bezier(.2,.7,.3,1) both locPop;position:absolute;translate:-50% calc(-100% - 20px)}.maps .loc-panel--popover .loc-panel__name{font-size:21px}.maps .loc-panel--popover .loc-panel__desc{font-size:15px}.maps .loc-panel--popover:after{content:"";background:#0c090bfc;border-bottom:1px solid #a08c6e47;border-right:1px solid #a08c6e47;width:11px;height:11px;position:absolute;top:100%;left:50%;translate:-50% -6px;rotate:45deg}.maps .loc-panel--peek{pointer-events:none;width:230px;padding:13px 16px 15px;box-shadow:0 0 0 1px #0009,0 18px 44px -18px #000000e6}.maps .loc-panel--popover.loc-panel--below{animation-name:locPopBelow;translate:-50% 20px}.maps .loc-panel--popover.loc-panel--below:after{border:0;border-top:1px solid #a08c6e47;border-left:1px solid #a08c6e47;top:auto;bottom:100%;translate:-50% 6px}.maps .loc-panel--peek .loc-panel__name{font-size:19px}.maps .loc-panel--peek .loc-panel__rule{margin:8px 0 9px}.maps .loc-panel--peek .loc-panel__desc{line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.maps .loc-panel__more{font-variant:small-caps;letter-spacing:.12em;color:var(--tarnish);margin-top:9px;font-size:12px;display:block}.maps.has-peek .map-hotspot:after{display:none}.visibility-panel{z-index:40;background:linear-gradient(180deg, #140f10f7, #0c090bfc), repeating-linear-gradient(0deg, #fff0d203 0 2px, transparent 2px 4px), var(--void);border:1px solid #a08c6e47;border-left:none;width:min(280px,75%);height:100%;padding:20px;animation:.26s cubic-bezier(.2,.7,.3,1) both panelSlideRight;position:absolute;top:0;left:0;overflow-y:auto;box-shadow:30px 0 70px -30px #000000f2}.visibility-panel__header{margin-bottom:18px;position:relative}.visibility-panel__header h3{font-variant:small-caps;letter-spacing:.04em;color:var(--bone);text-shadow:0 1px #000c;margin:0;font-size:18px;font-weight:500}.visibility-panel__close{width:30px;height:30px;color:var(--bone-dim);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;font:400 20px/1 Cormorant Garamond,Georgia,serif;transition:color .18s,border-color .18s,background .18s;display:grid;position:absolute;top:-4px;right:-8px}.visibility-panel__close:hover{color:var(--bone);background:#9a7a3a14;border-color:#9a7a3a73}.visibility-panel__close:focus-visible{outline:1px solid var(--tarnish);outline-offset:2px}.visibility-panel__list{flex-direction:column;gap:10px;display:flex}.visibility-panel__item{border-radius:4px;align-items:center;gap:10px;padding:8px 10px;transition:background .18s;display:flex}.visibility-panel__item:hover{background:#9a7a3a14}.visibility-panel__toggle{cursor:pointer;background:0 0;border:1px solid #9a7a3a66;border-radius:3px;flex-shrink:0;place-items:center;width:28px;height:28px;padding:0;font-size:18px;transition:border-color .18s,background .18s;display:grid}.visibility-panel__toggle:hover{background:#9a7a3a1a;border-color:#9a7a3abf}.visibility-panel__toggle:focus-visible{outline:1px solid var(--tarnish);outline-offset:1px}.visibility-panel__name{color:var(--bone-soft);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;overflow:hidden}@keyframes panelSlideRight{0%{opacity:0;translate:-100%}}@keyframes locSlide{0%{translate:100%}}@keyframes locSlideLeft{0%{translate:-100%}}@keyframes locPop{0%{opacity:0;translate:-50% calc(-100% - 10px)}}@keyframes locPopBelow{0%{opacity:0;translate:-50% 10px}}@media (prefers-reduced-motion:reduce){.maps .map-hotspot:before,.maps .loc-panel{animation:none}}.spells__head{border-bottom:1px solid #a08c6e33;align-items:flex-end;gap:20px;padding-bottom:22px;display:flex}.spells__eyebrow{font:500 10px/1 var(--sh-display);letter-spacing:.34em;text-transform:uppercase;color:var(--sh-gold);margin:0}.spells__head h1{margin:11px 0 0}.spells__search{width:320px;margin-left:auto;padding:11px 14px;font-size:16px}.spells__filters{align-items:center;gap:7px;margin:22px 0 0;display:flex}.spells__filters-label{font:500 10px/1 var(--sh-display);letter-spacing:.28em;text-transform:uppercase;color:var(--sh-dim);margin:0 10px 0 0}.spells__filters button{font:400 14px/1 var(--sh-mono);letter-spacing:0;text-transform:none;color:var(--sh-mute);border:1px solid #a08c6e47;padding:8px 13px}.spells__filters button:first-of-type,.spells__filters button:nth-of-type(2){font:500 10px/1 var(--sh-display);letter-spacing:.18em;text-transform:uppercase;padding:9px 15px 8px}.spells__filters button.active{color:var(--sh-candle);background:linear-gradient(#6a0a0ae6,#3a0606e6);border-color:#ffd2b45c}.spells__count{font:400 13px/1 var(--sh-mono);color:var(--sh-dim);margin-left:auto}.spells table{border-collapse:collapse;border:1px solid var(--sh-rule);background:var(--sh-panel);table-layout:fixed;width:100%;margin:22px 0 0}.spells thead tr{background:#6a0a0a1a}.spells th{text-align:left;font:500 9px/1 var(--sh-display);letter-spacing:.2em;text-transform:uppercase;color:var(--sh-gold);border-bottom:1px solid #a08c6e4d;padding:14px 0 13px}.spells th:first-child,.spells td:first-child{width:302px;padding-left:26px}.spells th:nth-child(2),.spells td:nth-child(2){width:56px}.spells th:nth-child(3),.spells td:nth-child(3){width:132px}.spells th:nth-child(4),.spells td:nth-child(4){width:112px}.spells th:nth-child(5),.spells td:nth-child(5){width:132px}.spells th:nth-child(6),.spells td:nth-child(6){padding-right:26px}.spells tbody tr{border-bottom:1px solid var(--sh-rule-faint)}.spells tbody tr:last-child{border-bottom:0}.spells tbody tr:hover{box-shadow:inset 3px 0 0 var(--sh-gold-deep);background:#9a7a3a14}.spells td{vertical-align:baseline;padding:15px 18px 15px 0}.spells td:first-child{color:var(--sh-bone-bright);font-size:18px}.spell-level{font:400 15px/1 var(--sh-mono);color:var(--sh-gold)}.spells td:nth-child(3){font:400 15px/1 var(--sh-body);font-variant:small-caps;letter-spacing:.06em;color:var(--sh-mute);text-transform:capitalize}.spells td:nth-child(4),.spells td:nth-child(5){font:400 13px/1.3 var(--sh-mono);color:var(--sh-mute)}.spells td:nth-child(6){color:var(--sh-dim);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:16px;line-height:1.45;display:-webkit-box;overflow:hidden}.spell-tag{font:500 8px/1 var(--sh-display);letter-spacing:.14em;text-transform:uppercase;color:var(--sh-gold);vertical-align:2px;border:1px solid #c79a5a66;margin-left:8px;padding:3px 5px 2px;display:inline-block}.spells__empty{text-align:center;font:400 19px/1.4 var(--sh-body);color:var(--sh-mute);background:#a08c6e0d;border:1px solid #a08c6e2e;margin:22px 0 0;padding:20px 24px;font-style:italic}#root:has(.app-shell){width:100%;max-width:100%;margin:0;padding:0}.app-shell{align-items:stretch;min-height:100vh;display:flex}.app-rail{background:var(--sh-rail);border-right:1px solid #a08c6e3d;flex:none;width:226px;padding:30px 0 40px;box-shadow:inset -8px 0 24px -18px #000000e6}.app-rail__campaign{border-bottom:1px solid #a08c6e29;padding:0 26px 26px}.app-rail__eyebrow{font:500 9px/1 var(--sh-display);letter-spacing:.34em;text-transform:uppercase;color:var(--sh-dim);margin:0}.app-rail__name{font:500 21px/1.2 var(--sh-display);font-variant:small-caps;letter-spacing:.02em;color:var(--sh-bone);margin:11px 0 0}.app-rail__role{font:500 9px/1 var(--sh-display);letter-spacing:.16em;text-transform:uppercase;color:var(--sh-bone);border:1px solid #a08c6e66;margin:12px 0 0;padding:5px 9px 4px;display:inline-block}.app-rail__role--dm{color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));border-color:#ffd2b466}.app-nav{flex-direction:column;padding:20px 0 0;display:flex}.app-nav a{font:500 12px/1 var(--sh-display);letter-spacing:.2em;text-transform:uppercase;color:var(--sh-mute);border-left:3px solid #0000;padding:13px 26px;text-decoration:none;transition:color .15s,background .15s,border-color .15s}.app-nav a:hover{color:var(--sh-bone-bright);background:linear-gradient(90deg,#c79a5a14,#0000)}.app-nav a.active,.app-nav a[aria-current=page]{color:var(--sh-bone-bright);border-left-color:var(--sh-blood-bright);background:linear-gradient(90deg,#6a0a0a47,#0000)}.app-nav a.app-nav__dm{color:var(--sh-gold)}.app-nav__rule{background:#a08c6e29;height:1px;margin:14px 26px}.app-rail__you{padding:30px 26px 0}.app-rail__you p{font:400 15px/1.4 var(--sh-body);font-variant:small-caps;letter-spacing:.06em;color:var(--sh-dim);margin:0}.app-rail__you button{font:500 9px/1 var(--sh-display);letter-spacing:.16em;text-transform:uppercase;color:var(--sh-dim);background:0 0;border:0;padding:0 0 0 6px}.app-rail__you button:hover:not(:disabled){color:var(--sh-gold);background:0 0}.app-rail__signout{font:400 13px/1 var(--sh-body)!important;letter-spacing:.12em!important;color:var(--sh-gold-deep)!important;margin-top:8px!important}.app-rail__signout button{font:400 13px/1 var(--sh-body);font-variant:small-caps;letter-spacing:.12em;text-transform:none;color:var(--sh-gold-deep);padding:0}.app-main{flex:1;min-width:0;padding:36px 44px 52px;position:relative}.page-head{border-bottom:1px solid #a08c6e33;padding-bottom:22px}.page-head__eyebrow{font:500 10px/1 var(--sh-display);letter-spacing:.34em;text-transform:uppercase;color:var(--sh-gold);margin:0}.page-head h1{margin:12px 0 0}.page-head__sub{max-width:760px;font:400 17px/1.5 var(--sh-body);color:var(--sh-mute);text-wrap:pretty;margin:12px 0 0}.app-shell.atmosphere:after{content:"";pointer-events:none;z-index:30;position:fixed;inset:0;box-shadow:inset 0 0 200px 70px #000000a8}.recaps__heading{margin-bottom:18px}.recaps__new{margin-bottom:22px}.recaps__empty{color:var(--bone-dim);font-style:italic}.recaps .recap{border-top:1px solid var(--rule)}.recaps .recap:last-of-type{border-bottom:1px solid var(--rule)}.recaps .recap__heading{margin:0}.recaps .recap__header{width:100%;box-shadow:none;text-align:left;text-transform:none;cursor:pointer;background:0 0;border:0;align-items:baseline;gap:14px;margin:0;padding:15px 4px 14px;transition:color .18s;display:flex}.recaps .recap__header:hover{box-shadow:none;background:0 0}.recaps .recap__header:hover .recap__title{color:#f0e6d2}.recaps .recap__header:focus-visible{outline:1px solid var(--tarnish);outline-offset:-2px}.recaps .recap__header:before{content:"▸";color:var(--tarnish);flex:none;font-size:13px;line-height:1;transition:rotate .2s}.recaps .recap__header[aria-expanded=true]:before{rotate:90deg}.recaps .recap__title{font-family:var(--heading);letter-spacing:.03em;color:var(--bone);text-transform:none;margin-right:auto;font-size:20px;font-weight:500;transition:color .18s}.recaps .recap__byline{font-family:var(--sans);font-variant:small-caps;letter-spacing:.08em;text-transform:none;color:var(--bone-dim);flex:none;font-size:13px}.recaps .recap__panel{padding:0 4px 24px 27px;animation:.2s both recapOpen}.recaps .recap__body{white-space:pre-wrap;color:var(--bone-soft);text-wrap:pretty;margin:0 0 18px;font-size:17px;line-height:1.65}.recaps .recap__empty{color:var(--bone-dim);font-style:italic}.recaps .recap__actions{gap:8px;display:flex}.recaps .recap__btn{letter-spacing:.14em;margin:0;padding:7px 15px 6px;font-size:12px}.recaps .recap__btn--primary{background:linear-gradient(#6a0a0a80,#3a0606a6);border-color:#bea578b3}.recaps .recap__btn--danger:hover{border-color:var(--blood-bright);color:#ffd9d9}.recaps .recap__btn:disabled{opacity:.5;cursor:default}.recaps .recap__btn:disabled:hover{color:#ead9b6;background:linear-gradient(#302628d9,#1c1618e6);border-color:#bea57873;box-shadow:inset 0 1px #fff0d20f,inset 0 -2px #00000059}.recaps .recap__error{color:#e2b4b4;border:1px solid #8a0d0d80;border-left:3px solid var(--blood-bright);background:#6a0a0a2e;margin:14px 0 0;padding:9px 12px;font-size:15px}.recaps .recap-form{padding:4px 4px 24px 27px}.recaps>.recap-form{margin-bottom:22px;padding-left:4px}.recaps .recap-form__label{font-variant:small-caps;letter-spacing:.14em;color:var(--bone-dim);margin:14px 0 6px;font-size:12px;display:block}.recaps .recap-form__label:first-child{margin-top:0}.recaps .recap-form__hint{font-variant:normal;letter-spacing:.04em;opacity:.75;font-style:italic}.recaps .recap-form__field,.recaps .recap-form__number{width:100%;max-width:none;height:auto;font-family:var(--sans);color:var(--bone);resize:vertical;background:#0a0809b3;border:1px solid #a08c6e40;border-radius:0;outline:none;margin:0;padding:10px 12px;font-size:16px;line-height:1.55;transition:border-color .2s,box-shadow .2s;display:block;box-shadow:inset 0 2px 6px #0009}.recaps .recap-form__number{resize:none;width:130px}.recaps .recap-form__field:focus,.recaps .recap-form__number:focus{border-color:var(--blood-bright);box-shadow:inset 0 2px 6px #0009,0 0 0 1px #8a0d0d59}.recaps .recap-form__field::placeholder,.recaps .recap-form__number::placeholder{color:#a89c8380;font-style:italic}.recaps .recap-form__field:disabled,.recaps .recap-form__number:disabled{color:var(--bone-dim)}.recaps .recap-form__actions{gap:8px;margin-top:18px;display:flex}@keyframes recapOpen{0%{opacity:0;translate:0 -4px}}@media (width<=640px){.recaps .recap__header{flex-wrap:wrap}.recaps .recap__byline{flex-basis:100%;padding-left:27px}.recaps .recap__panel,.recaps .recap-form{padding-left:4px}}@media (prefers-reduced-motion:reduce){.recaps .recap__panel{animation:none}.recaps .recap__header:before{transition:none}}.pi-empty{text-align:center;color:var(--bone-soft);padding:18px 0;font-style:italic}.shop tr td.pi-qty{text-align:right;white-space:nowrap;letter-spacing:.06em;width:1%;color:var(--bone-soft);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.shop tr td.pi-actions{white-space:nowrap;text-align:right;width:1%;color:inherit;font-family:inherit}.shop tr td.pi-actions>button.pi-action{letter-spacing:.1em;text-transform:uppercase;color:#ead9b6;cursor:pointer;background:linear-gradient(#302628d9,#1c1618e6);border:1px solid #bea57873;margin-left:8px;padding:5px 10px;font-family:Cinzel,serif;font-size:11px;font-weight:500;transition:background .2s,color .2s,border-color .2s}.shop tr td.pi-actions>button.pi-action:after{display:none}.shop tr td.pi-actions>button.pi-action:hover:not(:disabled){color:#fbeec9;border-color:var(--blood-bright);background:linear-gradient(#6a0a0a73,#3a060699)}.shop tr td.pi-actions>button.pi-action:disabled{opacity:.5;cursor:default}.shop tr td.pi-actions>button.pi-action--danger{color:#e7b7a0;border-color:#8a0d0d80}.shop tr td.pi-actions>button.pi-action--danger:hover:not(:disabled){color:#ffd9c4;border-color:var(--blood-bright);background:linear-gradient(#6a0a0a99,#3a0606b3)}.pi-error{color:#e08a8a;white-space:normal;margin-top:6px;font-family:Cormorant Garamond,serif;font-size:13px;font-style:italic;display:block}.create-item{max-width:none;margin:0;padding:0}.create-item__eyebrow{font:500 10px/1 var(--sh-display);letter-spacing:.34em;text-transform:uppercase;color:var(--sh-gold);margin:0}.create-item h1{margin:12px 0 0}.create-item__sub{font:400 17px/1.4 var(--sh-body);color:var(--sh-dim);border-bottom:1px solid #a08c6e33;margin:12px 0 24px;padding-bottom:22px;font-style:italic}.create-item-form{grid-template-columns:1fr 1fr;align-items:start;gap:22px 30px;margin-top:26px;display:grid}.create-item-section:first-of-type{grid-area:1/1/span 2}.create-item-section:nth-of-type(2){grid-area:1/2}.create-item-section:nth-of-type(3){border-color:var(--sh-rule-strong);background:linear-gradient(#161112f0,#0c090bfa);grid-area:2/2;box-shadow:0 0 0 1px #6a0a0a24}.create-item-section{background:var(--sh-panel);border:1px solid #a08c6e3d;flex-direction:column;gap:16px;padding:24px 28px 28px;display:flex}.create-item-section>legend{font:500 10px/1 var(--sh-display);letter-spacing:.3em;text-transform:uppercase;color:var(--sh-gold);margin-left:-4px;padding:0 10px 0 0}.create-item-label{font:500 9.5px/1 var(--sh-display);letter-spacing:.22em;text-transform:uppercase;color:var(--sh-mute);margin:0;display:block}.create-item-label:after{color:var(--sh-blood-bright)}.create-item-hint{font:400 13px/1 var(--sh-body);letter-spacing:0;text-transform:none;color:var(--sh-dim);font-style:italic}.create-item-input,.create-item-select{box-sizing:border-box;background:var(--sh-panel-sunk);width:100%;box-shadow:var(--sh-inset);font:400 18px/1.3 var(--sh-body);color:var(--sh-bone-bright);border:1px solid #a08c6e47;margin-top:-7px;padding:12px 14px}.create-item-select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--sh-gold-deep) 50%), linear-gradient(135deg, var(--sh-gold-deep) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 12px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:34px}.create-item-input[type=number]{font:400 16px/1.3 var(--sh-mono);color:var(--sh-gold)}.create-item-input:focus,.create-item-select:focus{box-shadow:var(--sh-inset), 0 0 0 3px #c79a5a1a;border-color:#c79a5a99;outline:none}.create-item-input:disabled,.create-item-select:disabled{color:var(--sh-dim);cursor:not-allowed}.create-item-textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:104px;font-size:17px;line-height:1.5}.create-item-kind-selector{border:1px solid #a08c6e4d;gap:0;margin:0;display:flex}.create-item-radio-label{font:500 11px/1 var(--sh-display);letter-spacing:.2em;text-transform:uppercase;color:var(--sh-mute);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:0;padding:14px 0 13px;transition:color .15s,background .15s;display:flex}.create-item-radio-label+.create-item-radio-label{border-left:1px solid #a08c6e33}.create-item-radio-label:hover{color:var(--sh-bone-bright);background:#c79a5a12}.create-item-radio-label input[type=radio]{opacity:0;pointer-events:none;position:absolute}.create-item-radio-label:has(input:checked){color:var(--sh-candle);background:linear-gradient(#6a0a0ae6,#3a0606e6);box-shadow:inset 0 1px #ffd2b433}.create-item-radio-label:has(input:focus-visible){outline-offset:-2px;outline:2px solid #c79a5a99}.create-item-checkboxes{background:0 0;border:0;grid-template-columns:repeat(3,1fr);gap:9px 14px;margin:0;padding:0;display:grid}.create-item-checkboxes>legend{font:500 9.5px/1 var(--sh-display);letter-spacing:.22em;text-transform:uppercase;color:var(--sh-mute);grid-column:1/-1;margin:0 0 2px;padding:0}.create-item-checkbox-label{font:400 16px/1 var(--sh-body);color:var(--sh-mute);text-transform:capitalize;cursor:pointer;align-items:center;gap:9px;display:flex}.create-item-checkbox-label:has(input:checked){color:var(--sh-bone-bright)}.create-item-checkbox-label input[type=checkbox]{appearance:none;border:1px solid var(--sh-rule-strong);cursor:pointer;background:#00000080;flex:none;width:15px;height:15px;margin:0;box-shadow:inset 0 1px 4px #000000b3}.create-item-checkbox-label input[type=checkbox]:checked{background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));box-shadow:none;border-color:#ffd2b473}.create-item-checkbox-label input[type=checkbox]:checked:after{content:"✓";text-align:center;font:500 10px/15px var(--sh-display);color:var(--sh-candle);margin-top:-2px;display:block}.create-item-checkbox-label input[type=checkbox]:focus-visible{outline-offset:2px;outline:2px solid #c79a5a99}.create-item-section>.create-item-checkbox-label{margin-top:2px}.create-item-actions{border-top:1px solid var(--sh-rule);grid-column:1/-1;justify-content:center;align-items:center;gap:18px;margin:4px 0 0;padding-top:20px;display:flex}.create-item-btn{font:500 11px/1 var(--sh-display);letter-spacing:.18em;text-transform:uppercase;color:var(--sh-bone);border:1px solid var(--sh-rule-strong);cursor:pointer;background:0 0;justify-content:center;align-items:center;min-width:120px;padding:14px 22px 13px;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.create-item-btn--primary{color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));border-color:#ffd2b480;padding:14px 24px 13px;box-shadow:inset 0 1px #ffd2b433}.create-item-btn--primary:hover:not(:disabled){background:linear-gradient(#7d1010,#4a0808);border-color:#ffd2b4b3}.create-item-btn:disabled{color:var(--sh-dim);box-shadow:none;cursor:not-allowed;background:#0000004d;border-color:#a08c6e2e}.create-item-error{font:400 17px/1.4 var(--sh-body);color:#e6b3ad;background:#6a0a0a38;border:1px solid #8a0d0d80;border-left-width:3px;grid-column:1/-1;margin:0;padding:14px 18px}@media (width<=1100px){.create-item-form{grid-template-columns:1fr}.create-item-section:first-of-type,.create-item-section:nth-of-type(2),.create-item-section:nth-of-type(3){grid-area:auto/1}}.threshold{box-sizing:border-box;background:radial-gradient(520px 340px at 50% 0%, #c79a5a21, transparent 68%), radial-gradient(600px 400px at 50% 120%, #6a0a0a24, transparent 65%), var(--sh-void-deep);justify-content:center;min-height:100vh;padding:64px 24px 56px;display:flex}.threshold__inner{width:620px;max-width:100%}.threshold--narrow .threshold__inner{width:560px}.threshold__brand{text-align:center;font:500 9.5px/1 var(--sh-display);letter-spacing:.4em;text-transform:uppercase;color:var(--sh-dim);margin:0}.threshold__inner h1{text-align:center;text-shadow:0 0 30px #c79a5a38;margin:20px 0 0;font-size:34px;line-height:1.15}.threshold__inner h1:after{content:"";background:linear-gradient(90deg,#0000,#c79a5ab3,#0000);width:60px;height:1px;margin:22px auto 0;display:block}.threshold__blurb{text-align:center;font:400 17px/1.6 var(--sh-body);color:var(--sh-mute);text-wrap:pretty;margin:22px 0 0}.threshold__back{text-align:center;font:400 14px/1 var(--sh-body);font-variant:small-caps;letter-spacing:.14em;color:var(--sh-gold-deep);margin:30px 0 0;text-decoration:none;display:block}.threshold__back:hover{color:var(--sh-gold)}.threshold__error{font:400 17px/1.4 var(--sh-body);color:#e6b3ad;background:#6a0a0a38;border:1px solid #8a0d0d80;border-left-width:3px;margin:20px 0 0;padding:14px 18px}.campaigns{flex-direction:column;gap:12px;margin:34px 0 0;padding:0;list-style:none;display:flex}.campaign-row{border:1px solid var(--sh-rule);background:linear-gradient(#140f10cc,#0b080ae6);align-items:center;gap:16px;padding:20px 24px;display:flex}.campaign-row:has(.campaign-row__actions){background:var(--sh-panel-raised);border-color:var(--sh-rule-strong)}.campaign-row__open{min-width:0;font:500 22px/1.2 var(--sh-display);font-variant:small-caps;letter-spacing:.03em;color:var(--sh-bone);flex:1;text-decoration:none}.campaign-row:has(.campaign-row__actions) .campaign-row__open{color:var(--sh-bone-bright)}.campaign-row__open:hover{color:var(--sh-candle)}.campaign-row__actions{gap:10px;display:flex}.campaign-row__actions button{color:var(--sh-mute);border-color:#a08c6e4d;padding:10px 13px 9px;font-size:9.5px}.campaign-row__actions button:last-child{color:var(--sh-blood-ink);background:#6a0a0a24;border-color:#8a0d0d80}.campaign-row__actions button:last-child:hover:not(:disabled){color:#e07a72;background:#6a0a0a47}.campaigns__new{letter-spacing:.18em;color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));border-color:#ffd2b480;align-self:flex-start;margin-top:6px;padding:13px 19px 12px;font-size:10px;box-shadow:inset 0 1px #ffd2b433}.campaigns__empty{text-align:center;font:400 18px/1.5 var(--sh-body);color:var(--sh-dim);margin:34px 0 0;font-style:italic}.threshold__doors{justify-content:center;gap:26px;margin:22px 0 0;display:flex}.threshold__doors a{font:400 15px/1 var(--sh-body);font-variant:small-caps;letter-spacing:.12em;text-decoration:none}.campaign-name-form{background:var(--sh-panel-raised);border:1px solid var(--sh-rule-strong);flex-wrap:wrap;align-items:flex-end;gap:12px;padding:18px 22px 20px;display:flex}.campaign-name-form label{font:500 9.5px/1 var(--sh-display);letter-spacing:.22em;text-transform:uppercase;color:var(--sh-mute);flex-basis:100%}.campaign-name-form input{flex:1;min-width:220px}.campaign-name-form button[type=submit]{color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));border-color:#ffd2b480}.claim-form{flex-direction:column;gap:26px;margin:34px 0 0;display:flex}.claim-form label[for]{font:500 9.5px/1 var(--sh-display);letter-spacing:.22em;text-transform:uppercase;color:var(--sh-mute);margin-bottom:10px;display:block}.claim-form input[type=text]{box-sizing:border-box;width:100%;font:500 19px/1.3 var(--sh-mono);color:var(--sh-bone-bright);overflow-wrap:anywhere;background:#0000008c;border:1px solid #c79a5a73;padding:16px 18px;box-shadow:inset 0 2px 10px #000000b3,0 0 0 3px #c79a5a14}.claim-kind{border:1px solid var(--sh-rule);background:#140f1099;margin:0;padding:20px 22px 22px}.claim-kind legend{letter-spacing:.22em;padding:0;font-size:9.5px}.claim-kind label{font:400 17px/1.3 var(--sh-body);color:var(--sh-mute);cursor:pointer;align-items:center;gap:11px;margin-top:14px;display:flex}.claim-kind label:has(input:checked){color:var(--sh-bone-bright)}.claim-kind input[type=radio]{appearance:none;border:1px solid var(--sh-rule-strong);cursor:pointer;background:#00000080;border-radius:50%;flex:none;width:15px;height:15px;margin:0;box-shadow:inset 0 1px 4px #000000b3}.claim-kind input[type=radio]:checked{background:radial-gradient(circle at 35% 30%, #b81616, var(--sh-blood) 60%);border-color:#ffd2b480;box-shadow:0 0 10px #8a0d0d80}.claim-form button[type=submit]{letter-spacing:.18em;color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));border-color:#ffd2b480;align-self:flex-start;padding:14px 26px 13px;font-size:11px;box-shadow:inset 0 1px #ffd2b433}.claim-done{text-align:center;font:400 19px/1.5 var(--sh-body);color:var(--sh-bone);background:var(--sh-panel-raised);border:1px solid var(--sh-rule-strong);margin:26px 0 0;padding:26px 28px}.threshold .invite-mint,.threshold .invite-list{max-width:none;margin-top:26px}.threshold .invite__row{flex-wrap:wrap}.threshold .invite__code{flex-basis:100%;padding:14px 16px;font-size:20px;line-height:1.35}.invite-mint{align-items:flex-end;gap:16px;max-width:820px;margin:26px 0 0;display:flex}.invite-mint__label{font:500 9.5px/1 var(--sh-display);letter-spacing:.22em;text-transform:uppercase;color:var(--sh-mute);flex-direction:column;flex:1;gap:9px;display:flex}.invite-mint__label span{font:400 13px/1 var(--sh-body);letter-spacing:0;text-transform:none;color:var(--sh-dim);font-style:italic}.invite-mint input{box-sizing:border-box;width:100%}.invite-mint button{letter-spacing:.16em;color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));border-color:#ffd2b480;flex:none;padding:14px 20px 13px;font-size:11px;box-shadow:inset 0 1px #ffd2b433}.invite-mint button:hover:not(:disabled){background:linear-gradient(#7d1010,#4a0808);border-color:#ffd2b4b3}.invite-mint__error{font:400 16px/1.4 var(--sh-body);color:#e6b3ad;flex-basis:100%;margin:0}.invite-list{flex-direction:column;gap:12px;max-width:1040px;margin:30px 0 0;padding:0;list-style:none;display:flex}.invite-empty{font:400 18px/1.5 var(--sh-body);color:var(--sh-dim);margin:26px 0 0;font-style:italic}.invite{background:var(--sh-panel-raised);border:1px solid var(--sh-rule-strong);box-shadow:var(--sh-lift);padding:24px 28px 26px}.invite__head{align-items:baseline;gap:14px;display:flex}.invite__label{font:500 20px/1.2 var(--sh-display);font-variant:small-caps;letter-spacing:.03em;color:var(--sh-bone)}.invite__head:after{content:"";border-bottom:1px dotted #a08c6e38;flex:1;order:1}.invite__status{font:500 9px/1 var(--sh-display);letter-spacing:.2em;text-transform:uppercase;color:var(--sh-gold);border:1px solid #c79a5a66;order:2;padding:5px 9px 4px}.invite__row{align-items:center;gap:16px;margin:18px 0 0;display:flex}.invite__code{min-width:0;font:500 25px/1 var(--sh-mono);letter-spacing:.02em;color:var(--sh-bone-bright);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;background:#0000008c;border:1px dashed #c79a5a73;flex:1;padding:16px 20px;box-shadow:inset 0 2px 10px #000000b3}.invite__row button{border-color:#a08c6e66;flex:none;padding:13px 17px 12px}.invite__row button:last-of-type{color:var(--sh-candle);background:linear-gradient(180deg, var(--sh-blood), var(--sh-blood-dark));border-color:#ffd2b480}.invite__row button:last-of-type:hover:not(:disabled){background:linear-gradient(#7d1010,#4a0808)}.invite--used{box-shadow:none;background:linear-gradient(#140f10b3,#0b080acc);border:1px solid #a08c6e2e;padding:20px 28px 22px}.invite--used .invite__label{color:var(--sh-mute);font-size:19px}.invite--used .invite__head:after{border-bottom-color:#a08c6e29}.invite__claim{font:400 15px/1 var(--sh-body);color:var(--sh-dim);order:2;font-style:italic}.invite__seal{background:radial-gradient(circle at 34% 30%, #7a1414, var(--sh-blood-dark) 70%);border:1px solid #ffbea029;border-radius:50%;flex:none;order:3;width:22px;height:22px}.invite__row button{white-space:nowrap}
