@font-face{font-family:Cinzel;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/f13700f23fbdc6fd-s.0q1bf9cc3c0ui.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/cc014fcb166cf364-s.p.0rbrcy8kuidpb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel Fallback;src:local(Times New Roman);ascent-override:71.31%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:136.86%}.cinzel_b99a2233-module__Zreyla__className{font-family:Cinzel,Cinzel Fallback;font-style:normal}.cinzel_b99a2233-module__Zreyla__variable{--font-cinzel:"Cinzel", "Cinzel Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
@theme{--color-dungeon: #0a0a0f; --color-stone-900: #111118; --color-stone-800: #1a1a25; --color-stone-700: #252535; --color-stone-600: #3a3a4a; --color-stone-500: #55556a; --color-amber: #d4a843; --color-amber-bright: #f5a623; --color-amber-dim: #9a7a30; --color-crimson: #c41e3a; --color-crimson-deep: #8b1a1a; --color-parchment: #e8d5b7; --color-parchment-dim: #9a8a6a; --color-blue-ethereal: #4a7ab5; --font-heading: var(--font-cinzel), serif; --font-body: var(--font-inter), sans-serif;}html,body{color:#e8d5b7;background:#0a0a0f;min-height:100vh;margin:0;padding:0}@keyframes torchFlicker{0%,to{opacity:.85}25%{opacity:1}50%{opacity:.75}75%{opacity:.95}}@keyframes pulseGlow{0%,to{box-shadow:0 0 3px,0 0 6px}50%{box-shadow:0 0 6px,0 0 12px}}.dungeon-bg{background-color:#0a0a0f;position:relative}.dungeon-bg:before{content:"";opacity:.06;pointer-events:none;z-index:0;background-image:url(/assets/stone-tile.png);background-repeat:repeat;background-size:256px 256px;position:fixed;inset:0}.dungeon-bg:after{content:"";opacity:.03;mix-blend-mode:overlay;pointer-events:none;z-index:0;background-image:url(/assets/grunge.png);background-repeat:repeat;background-size:512px 512px;position:fixed;inset:0}.dungeon-vignette{background:radial-gradient(#0000 30%,#0a0a0fd9 100%)}.dungeon-card{--clip:12px;clip-path:polygon(var(--clip) 0, 100% 0, 100% calc(100% - var(--clip)), calc(100% - var(--clip)) 100%, 0 100%, 0 var(--clip));background-color:#15151f;background-image:url(/assets/card-bg.png);background-position:50%;background-size:cover;min-width:0;transition:transform .2s,filter .2s;display:block;position:relative;overflow:hidden}.dungeon-card-inner{z-index:1;padding:14px;position:relative}.dungeon-card-border{--clip:12px;clip-path:polygon(var(--clip) 0, 100% 0, 100% calc(100% - var(--clip)), calc(100% - var(--clip)) 100%, 0 100%, 0 var(--clip));background:linear-gradient(135deg,#d4a843 0%,#3a3a4a 30% 70%,#d4a843 100%);min-width:0;padding:2px;transition:transform .2s}.dungeon-card-border:hover,.dungeon-card-border:active{background:linear-gradient(135deg,#d4a843 0% 30%,#3a3a4a 50%,#d4a843 70% 100%);transform:translateY(-2px)}.card-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}@media (min-width:480px){.card-grid{grid-template-columns:repeat(3,1fr);gap:12px}}@media (min-width:640px){.card-grid{grid-template-columns:repeat(4,1fr);gap:12px}}@media (min-width:1024px){.card-grid{grid-template-columns:repeat(5,1fr);gap:16px}}.dungeon-btn{--clip:10px;clip-path:polygon(var(--clip) 0, 100% 0, 100% calc(100% - var(--clip)), calc(100% - var(--clip)) 100%, 0 100%, 0 var(--clip))}.app-card:focus-visible,.dungeon-btn:focus-visible,.dungeon-card-border:focus-visible{outline-offset:2px;outline:2px solid #d4a843}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.status-dot{animation:none!important}.dungeon-card-border:hover,.dungeon-card-border:active{transform:none}}.status-dot{animation:2s ease-in-out infinite pulseGlow}.app-card{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.app-card:active .dungeon-card-border{transition:transform .1s;transform:scale(.97)}.app-card:hover .dungeon-card-border{transition:transform .2s;transform:translateY(-2px)scale(1.02)}.logout-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (max-width:768px){.login-input{min-height:44px}.login-submit{min-height:48px}}
