@font-face{font-family:Cinzel;src:url('./assets/fonts/cinzel.ttf') format('truetype');font-weight:400 900;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('./assets/fonts/sourcesans3.ttf') format('truetype');font-weight:200 900;font-display:swap}
:root{--serif:Cinzel,Georgia,serif;--sans:'Source Sans 3',Arial,sans-serif;--gold:#c5ad7e;--gold-bright:#ead4a2;--ink:#e1d9c8;--pale:#e1d9c8;--muted:#a29b91;--line:#8a765043;--panel:#111014;--teal:#9fc8b5;--blood:#763139;--veil:#a892c1;--body-art:url('./assets/eldritch/sanctuary.webp')}
body{font-family:var(--sans);color:var(--ink);background:#08090c;font-variant-numeric:tabular-nums}
button,input,select,textarea{font-family:var(--sans)}
button,a.button{border-radius:1px;transition:background .16s,border-color .16s,box-shadow .16s,color .16s}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}
button:not(:disabled):hover{border-color:#c6aa77;box-shadow:inset 0 0 20px #b99a5810,0 0 12px #0005}
button:disabled{opacity:.42;cursor:not-allowed}
button.primary,.primary{color:#f2e4c7;background:linear-gradient(180deg,#71313b,#3b1d29);border:1px solid #a56662;box-shadow:inset 0 0 0 2px #1c121a,inset 0 0 0 3px #bc9c6433,0 5px 18px #0008;font-weight:600;letter-spacing:.7px}
button.primary:hover{background:linear-gradient(180deg,#89424a,#502633)}
button.secondary,.secondary{color:#d0c1a2;background:linear-gradient(160deg,#242126,#111115);border-color:#9d87584d}
select,input[type=text],input[type=number]{background:#0a0b10;color:#e2d6bf;border:1px solid #8d795950;border-radius:1px;padding:8px 10px;accent-color:var(--gold)}
select option{background:#121117;color:#e2d6bf}
.title-art{background-image:url('./assets/eldritch/title.webp');background-size:cover;background-position:center;filter:none}
.title-avatar{display:none}.title-shade{background:linear-gradient(90deg,#07090ce8 0%,#090a0d77 34%,transparent 65%),linear-gradient(0deg,#08090c 0%,transparent 25%)}
#masthead{border-bottom:1px solid #bd9c5d30;padding-bottom:14px}.wordmark{font-family:var(--serif);color:#d7c69d}.wordmark>b{color:#a95759}.edition{color:#b7a88b;letter-spacing:3px}
.title-content{left:7.5%;width:49%;top:19%}.title-content h1{font-family:var(--serif);font-weight:500;font-size:clamp(68px,7.3vw,116px);line-height:1.05;letter-spacing:3px;color:#e0d3b5;text-shadow:0 3px 0 #151016,0 7px 24px #000}
.title-content h1 em{color:#a55355;font-style:normal;font-weight:600}.eyebrow{font-family:var(--sans);color:#c5ac80;font-size:11px;letter-spacing:2.4px;font-weight:600}.title-content>.eyebrow{font-size:10px;margin-bottom:18px}.subtitle{font-family:var(--serif);letter-spacing:5px;color:#c9b991;font-size:14px;margin:18px 0}
.premise{font-size:16px;line-height:1.6;color:#c1bbb0}.title-actions{width:330px;max-width:100%;margin-top:24px}.title-actions>.primary,.title-actions>.secondary{font-family:var(--serif);font-size:13px;letter-spacing:1.8px;padding:16px 20px;min-height:49px}.small-actions button{font-size:12px;color:#b6ad9c}.title-meta{gap:24px;margin-top:24px;font-size:11px;color:#a89e8a}.title-meta b{font-family:var(--serif);color:#dbc18a;font-size:19px}.title-footer{border-top:1px solid #b89b5d30;color:#a99e88;font-size:9px;letter-spacing:1.5px}.art-caption{right:5%;bottom:17%;text-shadow:0 3px 15px #000}.art-caption>b{font-family:var(--serif);font-size:27px;color:#d3c5ab}.art-caption>span{color:#b78b80}
.modal-shade,body[data-screen] .modal-shade{background-image:linear-gradient(90deg,#05060b9c,#06060bbd),var(--body-art);background-size:cover;background-position:center;backdrop-filter:blur(2px)}
body[data-screen=map] .modal-shade,body[data-screen=accounts] .modal-shade{background-image:linear-gradient(#05060baf,#05060bd9),url('./assets/eldritch/title.webp')}
.modal-body{background:linear-gradient(135deg,#19161aed,#0d0d12f5 50%,#15121af7),var(--body-art);background-size:cover;border:1px solid #a28b60a6;box-shadow:0 20px 100px #000e,inset 0 0 0 4px #08090c,inset 0 0 0 5px #b6995b40,inset 0 0 80px #0005;border-radius:1px;padding-top:26px}
.modal-body:before{top:6px;left:12px;right:12px;width:auto;height:26px;background:url('./assets/eldritch/quest-seal.webp') center/auto 26px no-repeat;border:0;pointer-events:none;opacity:.75}
.modal-body h2{font-family:var(--serif);font-weight:500;color:#e3d4b4;letter-spacing:.4px;font-size:29px;margin-top:8px}.modal-body h3{font-family:var(--serif);font-weight:500;color:#d7c59e}.modal-body p{font-size:13px;line-height:1.55;color:#bcb6ad}.modal-body .note{font-size:11px!important;line-height:1.5;color:#aaa297!important}.modal-body .eyebrow{font-size:10px;letter-spacing:1.7px}.modal-body .close{color:#c4b38c;border:1px solid #9e815630;background:#151018b3;width:28px;height:28px;right:14px;top:14px;font-size:22px;z-index:2;padding:0;line-height:1}
.rpg-tabs{gap:6px;border-color:#ac8c5340;margin:12px 0;padding-bottom:8px}.rpg-tabs button,.bag-tabs button,.calling-filter button{font-family:var(--serif);font-size:10px;letter-spacing:.6px;color:#aaa195;background:#100e1480;border:1px solid #7b664030;padding:8px 13px}.rpg-tabs button.active,.bag-tabs .active,.calling-filter button.active{color:#e8d4a5;background:linear-gradient(#49333b88,#1d1622);border-color:#b89c65a0;box-shadow:inset 0 -2px #9d5158}
.hero-card{background:radial-gradient(ellipse at 50% 20%,#5b405b38,transparent 60%),linear-gradient(160deg,#1d1920,#0b0c11);border-color:#a0865359}.hero-emblem .painted-avatar{height:130px;width:120px;filter:drop-shadow(0 8px 12px #000)}.hero-card h3{font-family:var(--serif);font-size:19px}.hero-level{font-family:var(--serif);color:#bfb293}.hero-facts span{border-color:#96826125}.hub-welcome{background:linear-gradient(95deg,#221823e8,#0d0c12bd),url('./assets/eldritch/title.webp') right center/cover;border-color:#9b7b5159}.hub-welcome h3{font-size:24px}.hub-welcome .eyebrow{font-size:10px}.hub-welcome p{max-width:690px}
.service-card{background:linear-gradient(135deg,#211b24e6,#0e0e14);border:1px solid #8a715347;min-height:76px}.service-card>b,.service-card b{font-family:var(--serif);font-size:12px;line-height:1.4;font-weight:500}.service-card small{font-size:12px;line-height:1.3;color:#a79e94}.service-card em{color:#b79564}.service-card .painted-item{box-shadow:none;background-color:transparent}
.roster button{border-color:#7e6c4633;background:#0a0a10}.roster button.active{border-color:#bc9d65}.wallets{font-size:12px;color:#aea38e;gap:14px}.wallets b{color:#dec48c}
.painted-icon{background-size:500% 500%;border:1px solid #9f865260;border-radius:1px;box-shadow:inset 0 0 0 1px #000,0 2px 8px #0008}.painted-item{background-size:500% 100%;border:0;border-radius:0;box-shadow:none;background-color:transparent}.painted-avatar{filter:drop-shadow(0 5px 9px #000b)}
.class-choice{background:radial-gradient(ellipse at 50% 40%,#78605628,transparent 65%),linear-gradient(#211a22,#0e0d12);border:1px solid #9b80544f}.class-choice.selected{background:radial-gradient(ellipse at 50% 40%,#91725630,transparent 65%),linear-gradient(#35232c,#141018);border-color:#d0ae73;box-shadow:inset 0 -3px #7b3944,0 3px 18px #0006}.class-choice b{font-family:var(--serif);font-weight:500;color:#e0cba3}.class-choice .painted-avatar{height:150px;max-height:22vh;object-fit:contain}.class-choice p{font-size:13px;line-height:1.45}.class-choice small{color:#ac9b81}
.equip-slot{background:linear-gradient(125deg,#211b23,#101016);border:1px solid #7d674848;border-left:2px solid var(--rarity);min-height:45px}.equip-slot b{color:#bfb39d;font-size:10px}.equipment-column>h3{font-size:14px}.equipment-column .hero-facts{font-size:11px}.equip-slot.selected{border-color:var(--rarity);background:#342734}
.item-tile{background:radial-gradient(ellipse at 50% 25%,#8b705418,transparent 70%),linear-gradient(#211b24,#0c0d12);border:1px solid #a0864d35;border-bottom:2px solid var(--rarity);min-height:115px;box-shadow:inset 0 0 16px #0003}.item-tile.selected{border-color:var(--rarity);background:linear-gradient(#352633,#15131c)}.item-tile b{font-size:12px;font-weight:500;line-height:1.25}.item-tile small{font-size:10px;color:#a89d8e}.item-tile .painted-item{width:58px!important;height:58px!important;margin:0 auto 4px}.item-inspector{background:linear-gradient(150deg,#1b151f,#090b10);border-color:#9f81544d;box-shadow:inset 0 0 25px #0005}.inspector-heading h3{font-size:21px}.item-inspector p,.item-inspector li{font-size:12px!important}.item-inspector .painted-item{background-color:#08090c55;box-shadow:inset 0 0 25px #71604615}.item-actions button{font-size:11px}.collection-pages button{font-family:var(--serif);border-color:#8b714d50;background:#1c1520;color:#c1af8a}
.skill-branch{background:linear-gradient(180deg,#17121b4d,transparent);border-top:1px solid #9c7c4a77;padding-top:9px}.branch-title h3{font-size:16px}.branch-title small{color:#a49880;font-size:11px}.skill-node{background:linear-gradient(115deg,#211927,#101016);border-color:#79603e5c;position:relative}.skill-node:before{content:'';position:absolute;height:7px;left:24px;top:-7px;width:1px;background:#a58a5855}.skill-node.trained{border-color:#a9915b9c;box-shadow:inset 2px 0 #b7a16c}.skill-node.selected{border-color:#d3b87b;background:linear-gradient(110deg,#40303c,#17121d)}.skill-node b{font-size:11px;font-weight:600;color:#d9cdb4}.skill-node small{font-size:10px;color:#a3998b}.skill-node.keystone .painted-icon{transform:none;border-color:#c5a16b;box-shadow:0 0 13px #966e4c22}.skill-inspector{background:linear-gradient(#221926,#0c0d13);border-color:#a1885459}.skill-inspector h3{font-size:21px}.spell-card{background:linear-gradient(135deg,#271b2d,#101016);border-color:#92764d54}.spell-card h3{font-size:17px}.spell-card p{font-size:12px}.spell-slots select{border-color:#b096585c}
.quest-card,.recipe-grid article,.companion-disciplines article{background:linear-gradient(135deg,#221a27,#0e0d13);border:1px solid #9a805147}.quest-card h3{font-size:17px}.quest-card .eyebrow{color:#c6a884}.quest-progress,.xp-track{background:#05070b;border:1px solid #9e82504d}.quest-progress i{background:linear-gradient(90deg,#584753,#a492ae)}.positive{color:#a2c9b6}.negative{color:#d18f8d}.empty-state{font-style:italic;color:#aca293}
.choice{background:linear-gradient(150deg,#28202d,#0e0d13);box-shadow:inset 0 0 35px #0004}.choice b{font-family:var(--serif);font-size:18px}.choice p{font-size:13px}.choice .category{font-size:10px}.choice:hover{transform:translateY(-3px)}.choice .choose{color:#d8b67b}.journey>div{background:#21192577;border-color:#9c7e4d66}.journey b{font-family:var(--serif)}.stats b{font-family:var(--serif);color:#d6b87c}.stats small{font-size:10px;color:#aaa08e}
.setting{background:linear-gradient(90deg,#22172544,transparent);padding:15px 12px;border-color:#aa8e5333;font-size:14px}.setting input[type=checkbox]{appearance:none;width:20px;height:20px;border:1px solid #ba9d65;background:#0a0b10;position:relative}.setting input:checked{background:linear-gradient(#79525b,#34202d)}.setting input:checked:after{content:'✓';color:#edd4a0;position:absolute;inset:-2px 0 0;text-align:center;font-size:17px}.setting input[type=range]{height:4px;accent-color:#c4ac7c}.control-grid kbd{background:#18131e;border-color:#ae925657;color:#ddc694}.control-grid div{font-size:13px}.loading{background:linear-gradient(#07080bd9,#07080bea),url('./assets/eldritch/title.webp') center/cover;font-family:var(--serif);font-size:20px;letter-spacing:3px}.loading:before{content:'';width:90px;height:60px;background:url('./assets/eldritch/quest-seal.webp') center/auto 60px no-repeat;margin:auto;opacity:.8}
.playing .chapter{top:18px;left:31%;right:27%;padding:5px 10px;background:linear-gradient(90deg,transparent,#08090cb8,transparent);border:0;box-shadow:none}.playing .chapter p{font-size:9px;letter-spacing:1.6px}.playing .chapter b{font-family:var(--serif);font-size:17px;font-weight:500;color:#e0cba4}.playing .chapter>span{font-size:10px;color:#afa595}.playing .vitals{top:20px;left:24px;width:235px;padding:10px 13px;background:linear-gradient(150deg,#141017e8,#080b10da);border:1px solid #a4885050;box-shadow:inset 0 0 0 3px #08090c,0 4px 16px #0007}.playing .stat-label span{font-size:10px;color:#c9b997}.playing .stat-label b{font-size:11px;color:#ddd1b9}.health{height:9px;background:#08090d;border-color:#b9995c66}.health i{background:linear-gradient(#aa555c,#6a273a);box-shadow:inset 0 1px #d28f8155}.dash-pips{margin-top:7px}.dash-pips i.ready{background:#8bbbac}.dash-pips small{font-size:9px;color:#aba58f}
#rpg-xp-track{height:5px;background:#0a0b10;border-color:#85764b44}#rpg-xp-fill{background:linear-gradient(90deg,#605370,#b99ecb)}#rpg-xp-label{font-size:10px;color:#a99f90}#sp-ready{font-size:10px;min-height:28px;color:#e0c68f;background:#48344377;border-color:#b49b6099}.skill-badge{background:#b9a273;color:#171218;box-shadow:0 0 10px #b18a4922}
.playing .resources{top:20px;right:24px;padding:7px 10px;border:1px solid #9b7f5144;background:#0a0b10bd;gap:8px}.resources>b{font-family:var(--serif);color:#d5c8ae}.resources>span:last-of-type{font-size:9px}.soul-icon{background-image:url('./assets/eldritch/soul-beacon.webp');width:34px;height:42px}#pause{background:#201823;border-color:#9c815459;color:#c4b08b}.boss-bar{background:#0b0a10e6;border-color:#a37f55;box-shadow:0 0 25px #000b}.boss-bar>span{font-family:var(--serif);letter-spacing:2px;color:#d2bea2}.boss-bar .bar i{background:linear-gradient(90deg,#53243d,#a05260)}
#action-rail{bottom:19px;background:linear-gradient(#111018e8,#08090ce8);border-color:#a48b5459;padding:7px 10px;box-shadow:inset 0 0 0 3px #08090c,0 8px 35px #000b;gap:12px}.ability{width:57px;height:63px;border-color:#a58b5f80;background:#0a0b11;border-radius:0;box-shadow:inset 0 0 0 2px #08090c,0 3px 10px #000b}.ability .glyph>.painted-icon{width:42px!important;height:42px!important}.ability kbd{font-size:9px;color:#e1cf9f}.ability small{font-size:8px;letter-spacing:.5px}.ability .cost{font-size:8px;color:#bcb2a4}.ability .cooldown{font-family:var(--serif);color:#e9d9b5;background:#0b0711c7}.ability:hover{border-color:#e3c48a}.legion-count small,.run-clock small{font-size:8px;color:#aaa08a}.legion-count>span{color:#b5a8c5}.legion-count>b,.run-clock>b{font-family:var(--serif);font-size:17px}
#combat-menus{bottom:106px;gap:4px;opacity:.91}#combat-menus button{background:#100d16c9;border-color:#967b4b4d;color:#c9b997;padding:6px 12px;min-height:28px;font-family:var(--serif);font-size:9px;letter-spacing:.4px}#combat-menus kbd{font-family:var(--sans);font-size:9px;color:#a99b88}.combat-hint{font-size:9px;background:linear-gradient(90deg,transparent,#07080bc7,transparent);color:#a79e8a;bottom:0;letter-spacing:.2px;padding:2px}
#toast{font-family:var(--sans);font-size:13px;color:#d5c4a2;background:linear-gradient(90deg,transparent,#120e1be8,transparent);border-color:#9e855549;max-width:620px}#fullscreen-toggle{border-color:#9d855646;color:#b8a788;background:#100d16c7;font-family:var(--sans)}
#hollow-map{border-color:#ad8a5259;filter:sepia(.12)}.map-key{font-size:12px;color:#b3aa96}.terrain-card{background:linear-gradient(#1b1520,#0c0d12);border-color:#a68a5152}.terrain-card b{font-family:var(--serif);font-size:10px;color:#d7c39b}.terrain-card small{color:#a59a87}.gear-tools button{font-family:var(--sans);font-size:11px}.gear-tools label{font-size:12px}.gear-tools select{font-size:11px}
@media(max-height:760px) and (min-width:760px){.title-content{top:17%}.title-content h1{font-size:clamp(62px,6.7vw,87px)}.title-content>.eyebrow{margin-bottom:12px}.subtitle{margin:12px 0}.premise{font-size:14px}.title-actions{margin-top:16px}.title-actions>.primary,.title-actions>.secondary{padding:12px 17px;min-height:42px}.title-meta{margin-top:16px}.modal-body h2{font-size:25px}.hero-emblem .painted-avatar{height:95px}.class-choice .painted-avatar{height:110px}.service-card{min-height:65px}.service-card small{font-size:11px}.skill-node{min-height:45px}.item-tile{min-height:105px}.item-tile .painted-item{width:46px!important;height:46px!important}.item-inspector p,.item-inspector li{font-size:11px!important}.playing .chapter b{font-size:15px}.setting{padding:12px}.modal-body p{font-size:12px}}
@media(max-width:900px){.title-content{width:62%;left:6%}.title-content h1{font-size:clamp(58px,8vw,88px)}.playing .vitals{left:12px;width:190px;padding:8px}.playing .chapter{left:30%;right:24%}.playing .chapter b{font-size:13px}.playing .chapter>span{font-size:9px}.playing .resources{right:12px}.ability{width:49px;height:59px}.ability .glyph>.painted-icon{width:36px!important;height:36px!important}#combat-menus button{padding:5px 9px}.service-card b{font-size:11px}.modal-body h2{font-size:24px}}
@media(max-width:600px){.title-content{width:84%;top:19%;left:8%}.title-content h1{font-size:66px}.title-shade{background:linear-gradient(90deg,#07090cf0,#080a0d99 70%,#080a0d44)}.premise{font-size:14px}.subtitle{font-size:11px;letter-spacing:3px}.title-meta{display:none}.playing .vitals{left:8px;top:12px;width:140px;padding:6px}.playing .stat-label span{font-size:8px}.playing .stat-label b{font-size:9px}.playing .chapter{left:37%;right:18%;top:13px}.playing .chapter p{font-size:7px}.playing .chapter b{font-size:11px}.playing .chapter>span{font-size:8px}.playing .resources{right:8px;top:12px;padding:5px;gap:2px}.resources .soul-icon{display:none}.resources>b{font-size:17px}#action-rail{padding:5px;gap:3px;bottom:20px}.ability{width:40px;height:53px}.ability .glyph>.painted-icon{width:31px!important;height:31px!important}.ability small{font-size:6px}#combat-menus{bottom:90px;flex-wrap:wrap;max-width:96vw}#combat-menus button{font-size:8px;padding:4px 6px;min-height:24px}.combat-hint{font-size:7px}#sp-ready{font-size:8px;min-height:24px}.modal-body p{font-size:13px}.modal-body .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-height:760px) and (min-width:760px){.modal-body{padding-top:20px}.equip-slot{min-height:35px;padding:3px 6px}.equipment-column .hero-facts{margin:6px 0;gap:3px 8px}.equipment-column .hero-facts span{font-size:9px}.skill-inspector .proc{padding:7px;margin:7px 0}.skill-inspector p{font-size:11px;line-height:1.4}.skill-inspector h3{font-size:19px}.skill-inspector .secondary{min-height:30px!important;padding:6px 10px!important}.branch-title{margin-bottom:6px;padding-bottom:4px}.skill-branch{padding-top:6px}.rpg-wide>.buttons{margin-top:8px}}
input[type=checkbox]{appearance:none;width:17px;height:17px;border:1px solid #a98e5d;background:#0a0b10;position:relative;vertical-align:middle;flex-shrink:0}input[type=checkbox]:checked{background:linear-gradient(#79525b,#34202d)}input[type=checkbox]:checked:after{content:'✓';position:absolute;inset:-3px 0 0;text-align:center;color:#edd4a0;font-size:15px}
.vitals .stat-label{gap:8px}.vitals .stat-label>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vitals .stat-label>b{flex-shrink:0;white-space:nowrap}
.small-actions{width:470px;max-width:calc(100vw - 160px);gap:18px}.small-actions button{white-space:nowrap;font-size:11px}
@media(max-height:760px){.title-meta{display:none}}
@media(max-width:600px){.small-actions{width:100%;max-width:100%;flex-wrap:wrap;gap:12px}.small-actions button{font-size:10px}}
button.secondary:hover{background:linear-gradient(160deg,#3a2d39,#1b151f);color:#ead5ae}.modal-body select{background:#100d15;color:#e2d6bf}
