.audio-toggle{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px));z-index:1000;display:flex;align-items:center;gap:6px;background:#140f08b3;border:1px solid rgba(139,105,20,.3);border-radius:20px;padding:4px 10px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.audio-toggle__btn{background:none;border:none;font-size:18px;cursor:pointer;padding:2px;line-height:1;filter:grayscale(.3);transition:filter .2s}@media(hover:hover){.audio-toggle__btn:hover{filter:grayscale(0)}}.audio-toggle__slider{width:70px;height:4px;accent-color:#8b6914;cursor:pointer}@media(max-width:768px){.audio-toggle__slider{display:none}}.title-screen{display:flex;flex-direction:column;height:100%;overflow:hidden;padding:env(safe-area-inset-top,0px) 20px env(safe-area-inset-bottom,0px)}.title-screen__top-bar{display:flex;justify-content:flex-end;padding:8px 0;flex-shrink:0}.title-screen__locale-toggle{display:flex;gap:4px;border:1px solid rgba(139,105,20,.3);border-radius:var(--border-radius);overflow:hidden}.title-screen__locale-btn{padding:6px 14px;font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:1px;color:#8a7a60;background:#2a1f0e80;border:none;cursor:pointer;transition:all .2s ease}@media(hover:hover){.title-screen__locale-btn:hover{color:var(--color-text);background:#3d2b14b3}}.title-screen__locale-btn--active{color:var(--color-gold);background:#8b691440}.title-screen__content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:0}.title-screen__title{font-family:var(--font-display);font-size:52px;font-weight:900;letter-spacing:6px;color:var(--color-gold);text-shadow:0 0 40px rgba(212,164,57,.4),0 2px 4px rgba(0,0,0,.6);margin:0}.title-screen__subtitle{font-size:14px;color:#a89878;letter-spacing:6px;text-transform:uppercase;margin:0}.title-screen__difficulty{display:flex;flex-direction:column;align-items:center;gap:16px}.title-screen__section-label{font-size:13px;font-weight:700;letter-spacing:4px;color:#8a7a60;margin:0}.title-screen__difficulty-options{display:flex;gap:8px}.title-screen__diff-btn{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:4px;flex:1;padding:12px 8px;background:#2a1f0eb3;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);color:var(--color-text);cursor:pointer;font-family:var(--font-body);transition:all .2s ease}@media(hover:hover){.title-screen__diff-btn:hover{background:#3d2b14cc;border-color:#8b691480}}.title-screen__diff-btn--active{background:#8b691440;border-color:var(--color-gold);box-shadow:0 0 16px #d4a43940}.title-screen__diff-label{font-size:16px;font-weight:700;letter-spacing:3px}.title-screen__diff-desc{font-size:10px;color:#a89878;letter-spacing:1px}.title-screen__buttons{display:flex;flex-direction:column;gap:10px;margin-top:8px}.title-screen__start-btn{padding:14px 48px;font-family:var(--font-body);font-size:16px;font-weight:700;letter-spacing:4px;color:var(--color-parchment);background:#2a1f0eb3;border:2px solid rgba(139,105,20,.4);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}@media(hover:hover){.title-screen__start-btn:hover{background:#3d2b14e6;border-color:var(--color-gold);transform:translateY(-2px);box-shadow:0 4px 16px #d4a43933}}.title-screen__start-btn--story{font-size:18px;background:linear-gradient(135deg,#8b691480,#64460f99);border-color:var(--color-gold);color:var(--color-gold)}@media(hover:hover){.title-screen__start-btn--story:hover{background:linear-gradient(135deg,#a0781999,#785514b3);box-shadow:0 4px 20px #d4a43959}}.title-screen__start-btn--collection{font-size:14px;letter-spacing:3px;padding:10px 48px;color:#a89878;border-color:#8b691440;background:#2a1f0e66}@media(hover:hover){.title-screen__start-btn--collection:hover{color:var(--color-gold)}}@media(max-width:400px){.title-screen__title{font-size:36px;letter-spacing:3px}.title-screen__content{gap:14px}.title-screen__diff-btn{padding:10px 6px}.title-screen__diff-label{font-size:14px}.title-screen__start-btn{padding:12px 36px;font-size:14px}.title-screen__start-btn--collection{padding:8px 36px}}.card{position:relative;background:#1a1209;border:3px solid var(--color-cell-border);border-radius:var(--border-radius);cursor:default;-webkit-user-select:none;user-select:none;transition:transform var(--place-duration) ease,box-shadow .2s ease,border-color .3s ease;overflow:hidden}.card--normal{width:var(--card-width);height:var(--card-height);font-size:14px}.card--small{width:calc(var(--card-width) * .85);height:calc(var(--card-height) * .85);font-size:12px}.card__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.card__values{position:absolute;top:2px;left:2px;display:grid;grid-template-areas:".     top    ." "left  .      right" ".     bottom .";grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr 1fr;place-items:center;width:2.8em;height:2.8em;z-index:2}.card__value{font-weight:900;font-size:.85em;color:#fff;text-shadow:0 0 3px rgba(0,0,0,.9),0 1px 2px rgba(0,0,0,.8),1px 0 2px rgba(0,0,0,.8);line-height:1}.card__value--top{grid-area:top}.card__value--right{grid-area:right}.card__value--bottom{grid-area:bottom}.card__value--left{grid-area:left}.card__name-bar{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:2px 4px;background:linear-gradient(transparent,#000000bf);z-index:2}.card__name{font-family:var(--font-body);font-size:.5em;font-weight:700;color:var(--color-parchment);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;text-shadow:0 1px 2px rgba(0,0,0,.8)}.card__level{font-size:.45em;color:var(--color-gold);letter-spacing:.5px;line-height:1;flex-shrink:0;text-shadow:0 1px 2px rgba(0,0,0,.8)}.card--common{border-color:#6a5a40}.card--uncommon{border-color:#5a7a40}.card--rare{border-color:#3a6a9a}.card--epic{border-color:#7a4a9a}.card--legendary{border-color:var(--color-gold);box-shadow:0 0 10px #d4a4394d}.card--blue{border-color:var(--color-blue-primary)}.card--red{border-color:var(--color-red-primary)}.card--blue.card--legendary,.card--red.card--legendary{box-shadow:none}.card--selected{transform:translateY(-8px);box-shadow:0 8px 20px #d4a43966;border-color:var(--color-gold)}.card--playable{cursor:pointer}@media(hover:hover){.card--playable:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0006}}.card--captured{animation:cardFlip var(--flip-duration) ease-in-out}@keyframes cardFlip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg)}to{transform:rotateY(0)}}.card--face-down{background:linear-gradient(135deg,#3d2b14,#2a1f0e);border-color:#5a4020}.card__back{font-family:var(--font-display);font-size:32px;color:var(--color-gold-dark);font-weight:700;display:flex;align-items:center;justify-content:center;height:100%}@media(max-width:768px){.card__image{object-fit:contain;object-position:top}.card__name-bar{background:linear-gradient(#1a120999,#0a0704f2);border-top:1px solid rgba(139,105,20,.2)}}.card-select{display:flex;flex-direction:column;align-items:center;height:100%;overflow:hidden;padding:40px 20px;gap:24px}.card-select__title{font-family:var(--font-display);font-size:28px;font-weight:900;letter-spacing:4px;color:var(--color-gold);text-shadow:0 2px 4px rgba(0,0,0,.5);margin:0}.card-select__count{font-size:14px;color:#a89878;letter-spacing:2px;margin:0}.card-select__pool{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:600px}.card-select__card-wrapper--disabled{opacity:.4;pointer-events:none}.card-select__preview{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px;background:#2a1f0e99;border-radius:var(--border-radius);border:1px solid rgba(139,105,20,.3)}.card-select__preview-label{font-size:11px;font-weight:700;letter-spacing:3px;color:var(--color-gold);margin:0}.card-select__preview-cards{display:flex;gap:8px}.card-select__actions{display:flex;flex-direction:column;align-items:center;gap:12px}.card-select__confirm{padding:14px 40px;font-family:var(--font-body);font-size:16px;font-weight:700;letter-spacing:3px;color:var(--color-gold);background:linear-gradient(135deg,#8b691480,#64460f99);border:2px solid var(--color-gold);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.card-select__confirm:disabled{opacity:.3;cursor:not-allowed}@media(hover:hover){.card-select__confirm:not(:disabled):hover{background:linear-gradient(135deg,#a0781999,#785514b3);transform:translateY(-2px);box-shadow:0 4px 16px #d4a4394d}}.card-select__shuffle{padding:10px 32px;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:2px;color:var(--color-gold);background:#8b691426;border:2px solid rgba(139,105,20,.4);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}@media(hover:hover){.card-select__shuffle:hover{background:#8b69144d;border-color:var(--color-gold)}}.card-select__back{padding:10px 32px;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:2px;color:#a89878;background:transparent;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}@media(hover:hover){.card-select__back:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}.score-display{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-size:28px;font-weight:900}.score-display__blue{color:var(--color-blue-light)}.score-display__red{color:var(--color-red-light)}.score-display__separator{color:var(--color-gold-dark)}@media(max-width:768px){.score-display{font-size:22px;gap:8px}}.result-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;overflow:hidden;gap:40px}.result-screen__message{font-family:var(--font-display);font-size:52px;font-weight:900;letter-spacing:6px;margin:0}.result-screen--win .result-screen__message{color:var(--color-gold);text-shadow:0 0 40px rgba(212,164,57,.5)}.result-screen--lose .result-screen__message{color:#8b2020;text-shadow:0 0 40px rgba(139,32,32,.4)}.result-screen--draw .result-screen__message{color:#a89878}.result-screen__score{display:flex;flex-direction:column;align-items:center;gap:12px}.result-screen__score-label{font-size:13px;font-weight:700;letter-spacing:3px;color:#8a7a60}.result-screen__btn{padding:16px 48px;font-family:var(--font-body);font-size:16px;font-weight:700;letter-spacing:3px;color:var(--color-gold);background:linear-gradient(135deg,#8b691480,#64460f99);border:2px solid var(--color-gold-dark);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}@media(hover:hover){.result-screen__btn:hover{border-color:var(--color-gold);transform:translateY(-2px);box-shadow:0 4px 16px #d4a4394d}}@media(max-width:400px){.result-screen__message{font-size:36px}}.lives-display{display:flex;gap:4px;align-items:center;flex-wrap:wrap;justify-content:center}.lives-gem{width:32px;height:32px;position:relative;transition:all .3s ease}.lives-display--small .lives-gem{width:22px;height:22px}.lives-gem__img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 0 4px rgba(40,100,220,.5));animation:gem-pulse 3s ease-in-out infinite}@keyframes gem-pulse{0%,to{filter:drop-shadow(0 0 4px rgba(40,100,220,.5)) brightness(1)}50%{filter:drop-shadow(0 0 8px rgba(40,100,220,.7)) brightness(1.1)}}.lives-gem--empty .lives-gem__img{filter:brightness(.15) saturate(0) drop-shadow(0 0 0px transparent);animation:none;opacity:.5}.lives-gem--burning .lives-gem__img{animation:gem-burn .8s ease-out forwards}@keyframes gem-burn{0%{filter:drop-shadow(0 0 4px rgba(40,100,220,.5)) brightness(1);transform:scale(1)}15%{filter:drop-shadow(0 0 16px rgba(255,120,30,.9)) brightness(1.8) saturate(.5) hue-rotate(180deg);transform:scale(1.2)}40%{filter:drop-shadow(0 0 20px rgba(255,60,0,.7)) brightness(1.4) saturate(.3) hue-rotate(160deg);transform:scale(1.1)}to{filter:brightness(.15) saturate(0) drop-shadow(0 0 0px transparent);transform:scale(1);opacity:.5}}.story-select{display:flex;flex-direction:column;align-items:center;height:100%;overflow-y:auto;overflow-x:hidden;padding:40px 20px;gap:32px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.story-select::-webkit-scrollbar{display:none}.story-select__title{font-family:var(--font-display);font-size:36px;font-weight:900;letter-spacing:6px;color:var(--color-gold);text-shadow:0 0 30px rgba(212,164,57,.3);margin:0}.story-select__stages{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:520px;width:100%}.story-select__stage{display:flex;flex-direction:column;gap:4px;padding:16px;font-family:var(--font-body);background:#2a1f0e99;border:2px solid rgba(139,105,20,.2);border-radius:var(--border-radius);color:var(--color-text);cursor:pointer;text-align:left;transition:all .2s ease}@media(hover:hover){.story-select__stage:not(:disabled):hover{background:#3d2b14cc;border-color:#8b691480;transform:translateY(-2px)}}.story-select__stage--current{border-color:var(--color-gold);background:#8b691433;box-shadow:0 0 16px #d4a43933}.story-select__stage--cleared{border-color:#78a05066;background:#5078321f}.story-select__stage--locked{opacity:.35;cursor:not-allowed}.story-select__stage-header{display:flex;justify-content:space-between;align-items:center}.story-select__stage-name{font-size:12px;font-weight:700;letter-spacing:2px;color:#a89878}.story-select__cleared-mark{font-size:10px;font-weight:700;letter-spacing:1px;color:#90b060;background:#78a05033;padding:2px 8px;border-radius:4px}.story-select__lock{font-size:10px;font-weight:700;letter-spacing:1px;color:#6a5a40}.story-select__stage--premium{opacity:.85;border-color:#d4a43959}.story-select__premium{font-size:10px;font-weight:700;letter-spacing:1px;color:#f0d060;background:#d4a43929;border:1px solid rgba(212,164,57,.4);padding:2px 8px;border-radius:4px}.story-select__opponent{font-size:18px;font-weight:700;color:var(--color-text)}.story-select__difficulty{font-size:11px;font-weight:600;letter-spacing:1px;color:#a89878}.story-select__actions{display:flex;gap:12px;align-items:stretch}.story-select__collection,.story-select__back{flex:1;display:flex;align-items:center;justify-content:center;padding:12px 16px;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:2px;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.story-select__collection{color:var(--color-gold);background:#8b691426;border-color:#8b691466}@media(hover:hover){.story-select__collection:hover{background:#8b69144d;border-color:var(--color-gold)}}.story-select__back{color:#a89878;background:transparent}@media(hover:hover){.story-select__back:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}@media(max-width:768px){.story-select__stages{grid-template-columns:1fr}}.stage-intro{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;padding:0 20px 40px;overflow:hidden;box-sizing:border-box}.stage-intro__portrait{position:absolute;top:0;left:50%;transform:translate(-50%);width:480px;height:70vh;pointer-events:none;mask-image:linear-gradient(to bottom,black 40%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 40%,transparent 100%);animation:portrait-cutin .8s cubic-bezier(.22,1,.36,1) both}.stage-intro__portrait-frame{width:100%;height:100%}.stage-intro__portrait-img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;filter:contrast(1.1) brightness(.85) saturate(1.1)}@keyframes portrait-cutin{0%{opacity:0;transform:translate(-50%) scale(1.15)}to{opacity:1;transform:translate(-50%) scale(1)}}.stage-intro__overlay{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:16px;padding:28px 36px;background:radial-gradient(ellipse at center,rgba(8,5,2,.85) 0%,rgba(8,5,2,.6) 60%,transparent 100%);border-radius:12px;animation:overlay-fadein .6s .3s ease both}@keyframes overlay-fadein{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stage-intro__badge{font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:4px;color:var(--color-gold);background:#8b691433;padding:6px 20px;border-radius:999px;border:1px solid rgba(139,105,20,.4)}.stage-intro__opponent{font-family:var(--font-display);font-size:48px;font-weight:900;letter-spacing:4px;color:var(--color-text);text-shadow:0 0 40px rgba(139,32,32,.3),0 2px 8px rgba(0,0,0,.8);margin:0;text-align:center}.stage-intro__description{font-size:14px;color:#d0c4a8;text-align:center;max-width:400px;line-height:1.6;margin:0;text-shadow:0 1px 6px rgba(0,0,0,.9),0 0 12px rgba(0,0,0,.5)}.stage-intro__info{display:flex;gap:24px}.stage-intro__info-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stage-intro__info-label{font-size:10px;font-weight:700;letter-spacing:2px;color:#b0a080;text-shadow:0 1px 4px rgba(0,0,0,.8)}.stage-intro__info-value{font-size:15px;font-weight:700;letter-spacing:1px}.stage-intro__info-value--easy{color:#90b060}.stage-intro__info-value--medium{color:var(--color-gold)}.stage-intro__info-value--hard{color:#c04040}.stage-intro__actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:8px}.stage-intro__fight{padding:16px 64px;font-family:var(--font-display);font-size:22px;font-weight:900;letter-spacing:6px;color:var(--color-parchment);background:linear-gradient(135deg,#8b2020,#6b1515);border:2px solid #a03030;border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;text-shadow:0 2px 4px rgba(0,0,0,.4)}@media(hover:hover){.stage-intro__fight:hover{transform:translateY(-2px);box-shadow:0 6px 24px #8b202066;border-color:#c04040}}.stage-intro__back{padding:10px 32px;font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:2px;color:#a89878;background:transparent;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}@media(hover:hover){.stage-intro__back:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}@media(max-width:480px){.stage-intro__overlay{padding:20px 16px;max-width:100%;box-sizing:border-box}.stage-intro__description{max-width:100%}.stage-intro__info{flex-wrap:wrap;justify-content:center}}@media(max-width:400px){.stage-intro__opponent{font-size:32px}.stage-intro__portrait{width:320px}.stage-intro__fight{padding:14px 48px;font-size:18px}}.stage-result{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;overflow:hidden;gap:24px;padding:40px 20px}.stage-result__crown{font-family:var(--font-body);font-size:15px;font-weight:900;letter-spacing:4px;color:var(--color-gold);background:#8b691433;padding:8px 24px;border-radius:999px;border:2px solid rgba(212,164,57,.4);animation:glow 2s ease-in-out infinite}@keyframes glow{0%,to{box-shadow:0 0 20px #d4a43933}50%{box-shadow:0 0 40px #d4a43980}}.stage-result__stage-badge{font-size:13px;font-weight:700;letter-spacing:3px;color:#a89878}.stage-result__message{font-family:var(--font-display);font-size:48px;font-weight:900;letter-spacing:6px;margin:0}.stage-result--victory .stage-result__message{color:var(--color-gold);text-shadow:0 0 40px rgba(212,164,57,.5)}.stage-result--defeat .stage-result__message{color:#8b2020;text-shadow:0 0 40px rgba(139,32,32,.4)}.stage-result__sub{font-size:14px;color:#a89878;margin:0}.stage-result__opponent{font-size:16px;color:#a89878;margin:0}.stage-result__score{display:flex;flex-direction:column;align-items:center;gap:8px}.stage-result__score-label{font-size:11px;font-weight:700;letter-spacing:3px;color:#8a7a60}.stage-result__actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:16px}.stage-result__btn{padding:14px 48px;font-family:var(--font-body);font-size:15px;font-weight:700;letter-spacing:3px;border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.stage-result__btn--primary{color:var(--color-gold);background:linear-gradient(135deg,#8b691480,#64460f99);border:2px solid var(--color-gold-dark)}@media(hover:hover){.stage-result__btn--primary:hover{border-color:var(--color-gold);transform:translateY(-2px);box-shadow:0 4px 16px #d4a4394d}}.stage-result__btn--secondary{color:#a89878;background:transparent;border:2px solid rgba(139,105,20,.3)}@media(hover:hover){.stage-result__btn--secondary:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}@media(max-width:400px){.stage-result__message{font-size:32px}}.card-loot{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;overflow:hidden;gap:24px;padding:40px 20px}.card-loot__title{font-family:var(--font-display);font-size:36px;font-weight:900;letter-spacing:4px;color:var(--color-gold);text-shadow:0 0 30px rgba(212,164,57,.4);margin:0}.card-loot__sub{font-size:13px;color:#a89878;margin:0}.card-loot__cards{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:16px 0}.card-loot__card-wrapper{cursor:pointer;transition:transform .2s ease;border-radius:var(--border-radius)}@media(hover:hover){.card-loot__card-wrapper:hover{transform:translateY(-4px)}}.card-loot__card-wrapper--selected{filter:drop-shadow(0 0 12px rgba(212,164,57,.6))}.card-loot__info{display:flex;align-items:center;gap:12px}.card-loot__card-name{font-family:var(--font-body);font-size:18px;font-weight:700;color:var(--color-text)}.card-loot__card-level{font-size:13px;font-weight:700;color:var(--color-gold);letter-spacing:1px}.card-loot__btn{padding:14px 64px;font-family:var(--font-body);font-size:16px;font-weight:700;letter-spacing:3px;color:var(--color-gold);background:linear-gradient(135deg,#8b691480,#64460f99);border:2px solid var(--color-gold-dark);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;margin-top:8px}@media(hover:hover){.card-loot__btn:hover:not(:disabled){border-color:var(--color-gold);transform:translateY(-2px);box-shadow:0 4px 16px #d4a4394d}}.card-loot__btn:disabled{opacity:.4;cursor:not-allowed}.collection{display:flex;flex-direction:column;align-items:center;height:100%;overflow-y:auto;overflow-x:hidden;padding:40px 20px 80px;gap:20px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.collection::-webkit-scrollbar{display:none}.collection__title{font-family:var(--font-display);font-size:36px;font-weight:900;letter-spacing:4px;color:var(--color-gold);text-shadow:0 2px 4px rgba(0,0,0,.5);margin:0}.collection__count{font-size:14px;color:#a89878;letter-spacing:2px;margin:0}.collection__grid{display:flex;flex-direction:column;gap:20px;max-width:700px;width:100%}.collection__level{display:flex;flex-direction:column;gap:8px}.collection__level-label{font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:3px;color:var(--color-gold-dark);border-bottom:1px solid rgba(139,105,20,.25);padding-bottom:4px;margin:0}.collection__level-cards{display:flex;flex-wrap:wrap;gap:8px}.collection__card-wrapper{cursor:pointer;transition:transform .2s ease,filter .2s ease;border-radius:var(--border-radius)}@media(hover:hover){.collection__card-wrapper:hover{transform:translateY(-3px)}}.collection__card-wrapper--locked{filter:brightness(.2) grayscale(1);pointer-events:none;cursor:default}.collection__card-wrapper--selected{filter:drop-shadow(0 0 10px rgba(212,164,57,.6))}.collection__detail{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.collection__detail-panel{display:flex;gap:24px;background:linear-gradient(135deg,#2a1f0e,#1a1209);border:2px solid var(--color-gold-dark);border-radius:12px;padding:24px;max-width:480px;width:90%;box-shadow:0 12px 40px #0009}.collection__detail-image{width:200px;height:200px;flex-shrink:0;border-radius:8px;overflow:hidden;border:2px solid rgba(139,105,20,.3)}.collection__detail-image img{width:100%;height:100%;object-fit:cover}.collection__detail-info{display:flex;flex-direction:column;gap:12px;justify-content:center}.collection__detail-name{font-family:var(--font-display);font-size:22px;font-weight:900;color:var(--color-gold);margin:0}.collection__detail-level{font-size:13px;color:#a89878;margin:0;letter-spacing:2px}.collection__detail-values{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px;background:#0000004d;border-radius:8px;border:1px solid rgba(139,105,20,.2)}.collection__detail-val-row{display:grid;grid-template-columns:32px 32px 32px;text-align:center}.collection__detail-val-row span{font-weight:900;font-size:20px;color:var(--color-parchment)}.collection__detail-desc{font-size:13px;line-height:1.6;color:#c4b08a;margin:0;font-style:italic;padding:10px 12px;background:#0003;border-left:2px solid rgba(212,164,57,.3);border-radius:4px}.collection__detail-close{padding:8px 24px;font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:2px;color:#a89878;background:transparent;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;align-self:flex-start}@media(hover:hover){.collection__detail-close:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}.collection__back{padding:12px 40px;font-family:var(--font-body);font-size:14px;font-weight:700;letter-spacing:3px;color:#a89878;background:transparent;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;margin-top:8px}@media(hover:hover){.collection__back:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}@media(max-width:768px){.collection__detail-panel{flex-direction:column;align-items:center}.collection__detail-image{width:160px;height:160px}.collection__detail-info{align-items:center;text-align:center}.collection__detail-close{align-self:center}}.story-text{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;overflow:hidden;padding:40px 20px;cursor:pointer}.story-text__parchment{max-width:600px;width:100%;padding:48px 40px;background:linear-gradient(180deg,#281e0ff2,#1e160aeb);border:2px solid rgba(139,105,20,.4);border-radius:8px;box-shadow:0 0 60px #00000080,inset 0 0 40px #0003;position:relative}.story-text__parchment:before{content:"";position:absolute;inset:4px;border:1px solid rgba(139,105,20,.15);border-radius:4px;pointer-events:none}.story-text__paragraphs{display:flex;flex-direction:column;gap:20px}.story-text__paragraph{font-family:var(--font-body);font-size:15px;line-height:1.9;color:var(--color-parchment);font-style:italic;opacity:0;transform:translateY(12px);animation:storyFadeIn .8s ease forwards}.story-text__paragraph--dialogue{font-style:normal;color:var(--color-text)}@keyframes storyFadeIn{to{opacity:1;transform:translateY(0)}}.story-text__continue{margin-top:32px;font-family:var(--font-body);font-size:11px;letter-spacing:3px;color:var(--color-gold-dark);text-align:center;opacity:0;animation:continuePulse 2s ease-in-out infinite;animation-delay:var(--continue-delay, 2s)}@keyframes continuePulse{0%,to{opacity:.4}50%{opacity:.9}}.story-text--ending .story-text__parchment{border-color:#d4a43980;box-shadow:0 0 80px #d4a43926,0 0 60px #00000080,inset 0 0 40px #0003}.story-text--ending .story-text__parchment:before{border-color:#d4a43940}.story-text--ending .story-text__paragraph{color:var(--color-gold);font-size:16px}.story-text--ending .story-text__paragraph--dialogue{color:#f0d890}.story-text__the-end{margin-top:40px;font-family:var(--font-display);font-size:28px;font-weight:900;letter-spacing:8px;color:var(--color-gold);text-align:center;text-shadow:0 0 30px rgba(212,164,57,.4);opacity:0;animation:storyFadeIn 1.2s ease forwards}@media(max-width:768px){.story-text__parchment{padding:32px 24px}.story-text__paragraph{font-size:14px}.story-text--ending .story-text__paragraph{font-size:15px}.story-text__the-end{font-size:22px}}.dice-roll{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;overflow:hidden;gap:48px;background:radial-gradient(ellipse at center,rgba(42,31,14,.4) 0%,transparent 70%);animation:dice-roll-fadein .3s ease both}@keyframes dice-roll-fadein{0%{opacity:0}to{opacity:1}}.dice-roll__scene{width:100px;height:100px;perspective:400px}.dice-roll__cube{width:100px;height:100px;position:relative;transform-style:preserve-3d}.dice-roll__cube--spinning{transition:transform .1s linear}.dice-roll__cube--settling{transition:transform .8s cubic-bezier(.22,1,.36,1)}.dice-roll__face{position:absolute;width:100px;height:100px;border-radius:12px;background:linear-gradient(145deg,#f5f0e6,#e8dcc8,#d4c4a8);border:2px solid rgba(139,105,20,.3);box-shadow:inset 0 0 12px #00000014;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;backface-visibility:visible}.dice-roll__face--1{transform:translateZ(50px)}.dice-roll__face--2{transform:rotateY(90deg) translateZ(50px)}.dice-roll__face--3{transform:rotateX(90deg) translateZ(50px)}.dice-roll__face--4{transform:rotateX(-90deg) translateZ(50px)}.dice-roll__face--5{transform:rotateY(-90deg) translateZ(50px)}.dice-roll__face--6{transform:rotateY(180deg) translateZ(50px)}.dice-roll__dot{position:absolute;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#4a3520,#1a0f05);box-shadow:inset 0 2px 3px #0000004d,0 1px 1px #fff3}.dice-roll__dot--center{top:50%;left:50%;transform:translate(-50%,-50%)}.dice-roll__dot--top-left{top:16px;left:16px}.dice-roll__dot--top-right{top:16px;right:16px}.dice-roll__dot--mid-left{top:50%;left:16px;transform:translateY(-50%)}.dice-roll__dot--mid-right{top:50%;right:16px;transform:translateY(-50%)}.dice-roll__dot--bottom-left{bottom:16px;left:16px}.dice-roll__dot--bottom-right{bottom:16px;right:16px}.dice-roll__result{animation:dice-result-appear .5s cubic-bezier(.22,1,.36,1) both}@keyframes dice-result-appear{0%{opacity:0;transform:scale(.5) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.dice-roll__result-text{font-family:var(--font-display);font-size:32px;font-weight:900;letter-spacing:4px}.dice-roll__result--first .dice-roll__result-text{color:var(--color-gold);text-shadow:0 0 30px rgba(212,164,57,.5),0 0 60px rgba(212,164,57,.2)}.dice-roll__result--second .dice-roll__result-text{color:#a89878;text-shadow:0 2px 4px rgba(0,0,0,.5)}@media(max-width:400px){.dice-roll__scene,.dice-roll__cube{width:80px;height:80px}.dice-roll__face{width:80px;height:80px;border-radius:10px}.dice-roll__face--1{transform:translateZ(40px)}.dice-roll__face--2{transform:rotateY(90deg) translateZ(40px)}.dice-roll__face--3{transform:rotateX(90deg) translateZ(40px)}.dice-roll__face--4{transform:rotateX(-90deg) translateZ(40px)}.dice-roll__face--5{transform:rotateY(-90deg) translateZ(40px)}.dice-roll__face--6{transform:rotateY(180deg) translateZ(40px)}.dice-roll__dot{width:14px;height:14px}.dice-roll__dot--top-left{top:12px;left:12px}.dice-roll__dot--top-right{top:12px;right:12px}.dice-roll__dot--mid-left{left:12px}.dice-roll__dot--mid-right{right:12px}.dice-roll__dot--bottom-left{bottom:12px;left:12px}.dice-roll__dot--bottom-right{bottom:12px;right:12px}.dice-roll__result-text{font-size:26px}}.rules{display:flex;flex-direction:column;align-items:center;height:100%;overflow-y:auto;overflow-x:hidden;padding:40px 20px 100px;gap:20px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.rules::-webkit-scrollbar{display:none}.rules__title{font-family:var(--font-display);font-size:32px;font-weight:900;letter-spacing:6px;color:var(--color-gold);text-shadow:0 0 30px rgba(212,164,57,.3);margin:0}.rules__section{width:100%;max-width:480px;padding:20px;background:#2a1f0e99;border:2px solid rgba(139,105,20,.2);border-radius:var(--border-radius);animation:rules-fadein .4s ease both}@keyframes rules-fadein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rules__section-title{font-family:var(--font-display);font-size:16px;font-weight:800;letter-spacing:3px;color:var(--color-gold);margin:0 0 12px;text-transform:uppercase}.rules__text{font-family:var(--font-body);font-size:13px;line-height:1.7;color:var(--color-text);margin:0}.rules__caption{font-family:var(--font-body);font-size:11px;color:#6a5a40;text-align:center;margin:8px 0 0;letter-spacing:2px}.rules__board-diagram{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:120px;margin:16px auto 0}.rules__board-cell{aspect-ratio:1;background:#1e160ab3;border:1px solid rgba(139,105,20,.2);border-radius:4px;display:flex;align-items:center;justify-content:center}.rules__board-cell--highlight{border-color:var(--color-gold);background:#8b691426}.rules__board-cell-icon{color:var(--color-gold);font-size:14px}.rules__card-diagram{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:16px}.rules__card-mock{position:relative;width:100px;height:120px;background:linear-gradient(135deg,#2a1f0e,#1a1308);border:2px solid var(--color-gold);border-radius:8px;box-shadow:0 0 16px #d4a43933}.rules__card-val{position:absolute;font-family:var(--font-display);font-size:16px;font-weight:900;color:#e8dcc0;text-shadow:0 1px 3px rgba(0,0,0,.8)}.rules__card-val--top{top:4px;left:50%;transform:translate(-50%)}.rules__card-val--bottom{bottom:4px;left:50%;transform:translate(-50%)}.rules__card-val--left{left:6px;top:50%;transform:translateY(-50%)}.rules__card-val--right{right:6px;top:50%;transform:translateY(-50%)}.rules__card-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.rules__card-center-icon{font-size:24px;color:var(--color-gold);opacity:.5}.rules__card-labels{display:flex;flex-direction:column;gap:6px;font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:1px;color:#6a5a40}.rules__label{display:flex;align-items:center;gap:4px}.rules__label:before{content:"";width:8px;height:1px;background:#6a5a40}.rules__steps{font-family:var(--font-body);font-size:13px;line-height:1.8;color:var(--color-text);margin:0;padding-left:20px}.rules__steps li{margin-bottom:4px}.rules__steps li::marker{color:var(--color-gold);font-weight:700}.rules__capture-diagram{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px}.rules__capture-card{position:relative;width:72px;height:88px;border-radius:6px;border:2px solid}.rules__capture-card--blue{background:linear-gradient(135deg,#1a2a4a,#0f1a2f);border-color:#4a7aba;box-shadow:0 0 10px #4a7aba4d}.rules__capture-card--red{background:linear-gradient(135deg,#4a1a1a,#2f0f0f);border-color:#ba4a4a;box-shadow:0 0 10px #ba4a4a4d}.rules__capture-val{position:absolute;font-family:var(--font-display);font-size:13px;font-weight:900;color:silver}.rules__capture-val--top{top:3px;left:50%;transform:translate(-50%)}.rules__capture-val--bottom{bottom:3px;left:50%;transform:translate(-50%)}.rules__capture-val--left{left:5px;top:50%;transform:translateY(-50%)}.rules__capture-val--right{right:5px;top:50%;transform:translateY(-50%)}.rules__capture-val--attack{color:#6af;font-size:16px;text-shadow:0 0 8px rgba(102,170,255,.5)}.rules__capture-val--defend{color:#f66;font-size:16px;text-shadow:0 0 8px rgba(255,102,102,.5)}.rules__capture-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-body);font-size:9px;font-weight:700;letter-spacing:1px;color:#fff6}.rules__capture-arrow{display:flex;flex-direction:column;align-items:center;gap:4px}.rules__arrow-symbol{font-size:20px;color:var(--color-gold)}.rules__arrow-compare{font-family:var(--font-display);font-size:12px;font-weight:800;color:var(--color-gold);white-space:nowrap}.rules__capture-result{font-family:var(--font-body);font-size:12px;font-weight:700;color:var(--color-gold);text-align:center;margin:12px 0 0;letter-spacing:1px}.rules__score-formula{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px;padding:12px;background:#1e160a80;border:1px solid rgba(139,105,20,.2);border-radius:6px;font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--color-text)}.rules__formula-plus,.rules__formula-eq{color:var(--color-gold);font-size:16px}.rules__formula-score{color:var(--color-gold);font-size:16px;letter-spacing:2px}.rules__back{margin-top:auto;padding:12px 48px;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:2px;color:#a89878;background:transparent;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}@media(hover:hover){.rules__back:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}@media(max-width:400px){.rules__title{font-size:24px;letter-spacing:4px}.rules__section{padding:16px}.rules__section-title{font-size:14px;letter-spacing:2px}.rules__text{font-size:12px}.rules__capture-card{width:60px;height:74px}.rules__capture-val{font-size:11px}.rules__capture-val--attack,.rules__capture-val--defend{font-size:14px}.rules__card-mock{width:80px;height:100px}}.sound-room{display:flex;flex-direction:column;align-items:center;height:100%;overflow-y:auto;overflow-x:hidden;padding:40px 20px;gap:24px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sound-room::-webkit-scrollbar{display:none}.sound-room__title{font-family:var(--font-display);font-size:32px;font-weight:900;letter-spacing:6px;color:var(--color-gold);text-shadow:0 0 30px rgba(212,164,57,.3);margin:0}.sound-room__list{display:flex;flex-direction:column;gap:8px;width:100%;max-width:480px}.sound-room__track{display:flex;align-items:center;gap:12px;padding:14px 16px;font-family:var(--font-body);background:#2a1f0e99;border:2px solid rgba(139,105,20,.2);border-radius:var(--border-radius);color:var(--color-text);cursor:pointer;text-align:left;transition:all .2s ease;animation:sound-room-fadein .4s ease both}@keyframes sound-room-fadein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(hover:hover){.sound-room__track:not(.sound-room__track--playing):hover{background:#3d2b14cc;border-color:#8b691466;transform:translate(4px)}}.sound-room__track--playing{background:#8b691433;border-color:var(--color-gold);box-shadow:0 0 16px #d4a43933}.sound-room__track-number{font-size:11px;font-weight:700;letter-spacing:1px;color:#6a5a40;min-width:24px}.sound-room__track--playing .sound-room__track-number{color:var(--color-gold)}.sound-room__track-name{flex:1;font-size:14px;font-weight:600;letter-spacing:1px}.sound-room__track--playing .sound-room__track-name{color:var(--color-gold)}.sound-room__track-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1.5px solid rgba(139,105,20,.3);background:#2a1f0e80;flex-shrink:0;transition:all .2s ease}.sound-room__track--playing .sound-room__track-icon{border-color:var(--color-gold);background:#8b691440;box-shadow:0 0 10px #d4a4394d;animation:sound-room-pulse 1.5s ease-in-out infinite}.sound-room__icon-play{display:block;width:0;height:0;border-style:solid;border-width:5px 0 5px 9px;border-color:transparent transparent transparent #8a7a60;margin-left:2px}.sound-room__track--playing .sound-room__icon-play{border-left-color:var(--color-gold)}.sound-room__icon-stop{display:flex;gap:3px}.sound-room__icon-stop:before,.sound-room__icon-stop:after{content:"";display:block;width:3px;height:10px;background:var(--color-gold);border-radius:1px}@keyframes sound-room-pulse{0%,to{opacity:1;box-shadow:0 0 10px #d4a4394d}50%{opacity:.7;box-shadow:0 0 20px #d4a43980}}.sound-room__back{margin-top:auto;padding:12px 48px;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:2px;color:#a89878;background:transparent;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}@media(hover:hover){.sound-room__back:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}@media(max-width:400px){.sound-room__title{font-size:24px;letter-spacing:4px}.sound-room__track{padding:12px 14px;gap:10px}.sound-room__track-name{font-size:13px}}.world-map{display:flex;flex-direction:column;align-items:center;height:100%;overflow-y:auto;overflow-x:hidden;padding:40px 12px 100px;gap:14px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.world-map::-webkit-scrollbar{display:none}.world-map__title{font-family:var(--font-display);font-size:28px;font-weight:900;letter-spacing:6px;color:var(--color-gold);text-shadow:0 0 30px rgba(212,164,57,.3);margin:0}.world-map__container{position:relative;width:100%;max-width:520px;background:transparent;line-height:0;animation:map-fadein .5s ease both}@keyframes map-fadein{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.world-map__image{display:block;width:100%;height:auto;pointer-events:none;user-select:none;-webkit-user-select:none;filter:brightness(.88) contrast(1.05) saturate(.9) drop-shadow(0 4px 20px rgba(0,0,0,.7))}.world-map__container:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 75% 75% at 50% 50%,transparent 50%,rgba(10,7,4,.3) 75%,rgba(10,7,4,.55) 100%)}.world-map__paths{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.world-map__pin{position:absolute;transform:translate(-50%,-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:2px;background:none;background-color:transparent;border:none;padding:11px;margin:-11px;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.world-map__pin:focus,.world-map__pin:focus-visible,.world-map__pin:active{outline:none;background:none;background-color:transparent}.world-map__pin-dot{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#d4a439,#8b6914);border:2px solid #f0d060;color:#2a1a08;font-family:var(--font-display);font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 0 6px #d4a43980,0 2px 4px #0006;transition:transform .2s ease,box-shadow .2s ease}.world-map__pin--selected .world-map__pin-dot{transform:scale(1.25);box-shadow:0 0 12px #d4a439cc,0 0 24px #d4a43966,0 2px 4px #0006;border-color:#fff8e0}@media(hover:hover){.world-map__pin:hover .world-map__pin-dot{transform:scale(1.15);box-shadow:0 0 10px #d4a439b3,0 2px 4px #0006}}.world-map__pin-label{font-family:var(--font-display);font-size:7px;font-weight:700;letter-spacing:.5px;color:#1a1008;background:#d4c096d9;padding:1px 5px;border-radius:3px;white-space:nowrap;text-shadow:none;box-shadow:0 1px 2px #0003;max-width:80px;overflow:hidden;text-overflow:ellipsis}.world-map__pin--selected .world-map__pin-label{background:#d4a439f2;color:#1a0e04;font-weight:800}.world-map__info{width:100%;max-width:520px;padding:16px 20px;background:#2a1f0ebf;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);animation:info-slidein .25s ease both}@keyframes info-slidein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.world-map__info-header{display:flex;align-items:baseline;gap:10px}.world-map__info-stage{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:1px;color:#a89878;text-transform:uppercase}.world-map__info-name{font-family:var(--font-display);font-size:18px;font-weight:800;letter-spacing:2px;color:var(--color-gold)}.world-map__info-character{font-family:var(--font-body);font-size:12px;font-weight:600;color:#c0a878;margin-top:4px;letter-spacing:1px}.world-map__info-desc{font-family:var(--font-body);font-size:13px;line-height:1.6;color:var(--color-text);margin:8px 0 0}.world-map__back{margin-top:auto;padding:12px 48px;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:2px;color:#a89878;background:transparent;border:2px solid rgba(139,105,20,.3);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}@media(hover:hover){.world-map__back:hover{color:var(--color-text);border-color:var(--color-gold-dark)}}@media(max-width:400px){.world-map{padding:32px 8px 90px}.world-map__title{font-size:22px;letter-spacing:4px}.world-map__pin-dot{width:18px;height:18px;font-size:8px;border-width:1.5px}.world-map__pin-label{font-size:6px;padding:1px 3px;max-width:60px}.world-map__info{padding:12px 14px}.world-map__info-name{font-size:15px}.world-map__info-desc{font-size:12px}}.paywall{min-height:100%;display:flex;align-items:center;justify-content:center;padding:32px 20px;padding-top:calc(32px + env(safe-area-inset-top,0px));padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}.paywall__plate{position:relative;max-width:420px;width:100%;text-align:center;padding:36px 28px 30px;border:1px solid transparent;background:linear-gradient(165deg,#171109,#0e0a05) padding-box,linear-gradient(150deg,#b8902f,#6e5312 35%,#8b6914 65%,#d2aa44) border-box}.paywall__plate:before{content:"";position:absolute;inset:7px;border:1px solid rgba(212,164,57,.2);pointer-events:none}.paywall__rivet{position:absolute;width:11px;height:11px;background:linear-gradient(135deg,#241b0d,#0e0a05);border:1px solid #b8902f;transform:rotate(45deg);box-shadow:0 0 0 3px #0a0704,0 0 12px #d4a43947}.paywall__rivet--tl{top:-6.5px;left:-6.5px}.paywall__rivet--tr{top:-6.5px;right:-6.5px}.paywall__rivet--bl{bottom:-6.5px;left:-6.5px}.paywall__rivet--br{bottom:-6.5px;right:-6.5px}.paywall__eyebrow{font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.34em;text-transform:uppercase;color:#8b6914;margin-bottom:14px}.paywall__title{font-size:24px;font-weight:700;letter-spacing:.1em;color:#f0d060;margin-bottom:16px}.paywall__lead{font-size:14px;line-height:1.9;color:#b9b0a0;margin-bottom:12px}.paywall__promise{font-size:12.5px;line-height:1.85;color:#8a7a5c;margin-bottom:24px}.paywall__coming{font-family:var(--font-display, inherit);font-size:13.5px;letter-spacing:.06em;line-height:1.7;color:#d4a439;margin-bottom:20px;text-wrap:balance}.paywall__cta{display:block;box-sizing:border-box;text-align:center;text-decoration:none;width:100%;padding:14px 20px;font-family:var(--font-body);font-size:16px;font-weight:700;letter-spacing:.08em;color:#0a0704;background:linear-gradient(178deg,#f0d060,#d4a439);border:none;border-radius:8px;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}.paywall__cta:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 10px 26px #d4a4394d}.paywall__cta:disabled{opacity:.6;cursor:default}.paywall__note{margin-top:12px;font-size:12px;color:#8a7a5c}.paywall__links{display:flex;justify-content:center;gap:22px;margin-top:18px}.paywall__link{background:none;border:none;font-family:var(--font-body);font-size:12.5px;letter-spacing:.06em;color:#6a5a40;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.paywall__link:not(:disabled):hover{color:#d4a439}.board-cell{background:var(--color-cell-bg);border:2px solid var(--color-cell-border);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;width:var(--card-width);height:var(--card-height);transition:background .2s ease}.board-cell--valid-target{cursor:pointer;background:#d4a4391f;border-color:#d4a43966}@media(hover:hover){.board-cell--valid-target:hover{background:#d4a43940;border-color:#d4a439b3}}.board-cell--last-placed{box-shadow:0 0 12px #d4a43966}.board-cell__placeholder{width:40%;height:40%;border:2px dashed rgba(212,164,57,.25);border-radius:50%}.game-board{display:grid;grid-template-columns:repeat(3,var(--card-width));grid-template-rows:repeat(3,var(--card-height));gap:var(--board-gap);background:var(--color-board-bg);padding:calc(var(--board-gap) + 4px);border-radius:calc(var(--border-radius) + 4px);border:2px solid rgba(139,105,20,.3);box-shadow:0 8px 32px #00000080,inset 0 1px #8b69141a}@media(max-width:400px){.game-board{padding:calc(var(--board-gap) + 2px)}}.player-hand{display:flex;flex-direction:column;align-items:center;gap:12px}.player-hand__label{font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:3px;color:var(--color-text);text-transform:uppercase}.player-hand--left .player-hand__label{color:var(--color-blue-light)}.player-hand--right .player-hand__label{color:var(--color-red-light)}.player-hand__cards{display:flex;flex-direction:column;gap:8px}@media(max-width:768px){.player-hand{gap:4px}.player-hand__label{font-size:11px;letter-spacing:2px}.player-hand__cards{gap:6px}}.turn-indicator{font-family:var(--font-body);font-size:14px;font-weight:700;letter-spacing:3px;text-transform:uppercase;padding:8px 24px;border-radius:var(--border-radius);text-align:center}@media(max-width:768px){.turn-indicator{font-size:11px;letter-spacing:2px;padding:4px 16px}}.turn-indicator--blue{color:var(--color-blue-light);background:#3b6cb526;border:2px solid rgba(59,108,181,.3)}.turn-indicator--red{color:var(--color-red-light);background:#b8323026;border:2px solid rgba(184,50,48,.3);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@font-face{font-family:Cinzel;font-style:normal;font-weight:400 900;font-display:swap;src:url(../fonts/cinzel-variable.woff2) format("woff2")}@font-face{font-family:Cinzel Decorative;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/cinzel-decorative-700.woff2) format("woff2")}@font-face{font-family:Cinzel Decorative;font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/cinzel-decorative-900.woff2) format("woff2")}@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/shippori-mincho-400.woff2) format("woff2")}@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/shippori-mincho-500.woff2) format("woff2")}@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/shippori-mincho-600.woff2) format("woff2")}@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/shippori-mincho-700.woff2) format("woff2")}@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/shippori-mincho-800.woff2) format("woff2")}:root{--color-blue-primary: #3b6cb5;--color-blue-light: #8bb8e8;--color-red-primary: #b83230;--color-red-light: #e08080;--color-board-bg: rgba(20, 12, 5, .85);--color-cell-bg: rgba(40, 28, 14, .7);--color-cell-border: #5a4020;--color-card-bg: #f8f0e0;--color-text: #f0e6d0;--color-text-dark: #1a1209;--color-gold: #d4a439;--color-gold-dark: #8b6914;--color-parchment: #e8d5b0;--color-leather: #3d2b14;--color-wood: #2a1f0e;--card-width: 110px;--card-height: 140px;--board-gap: 6px;--border-radius: 6px;--flip-duration: .3s;--place-duration: .2s;--font-display: "Cinzel Decorative", "Cinzel", "Shippori Mincho", Georgia, serif;--font-body: "Cinzel", "Shippori Mincho", Georgia, serif}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}body{font-family:var(--font-body);background:#0a0704;color:var(--color-text)}#root{height:100%;overflow:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);background:linear-gradient(180deg,#0a07044d,#0a07041a,#0a070466),url(../bg-medieval.webp) center / cover no-repeat fixed}button,[role=button],.card--playable,.board-cell--valid-target{touch-action:manipulation}.game-layout{display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:auto 1fr;gap:24px;align-items:center;justify-items:center;height:100%;padding:20px}.game-layout__header{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:8px}@media(max-width:768px){.game-layout__header{gap:4px}}.game-layout__hand--left{justify-self:end}.game-layout__hand--right{justify-self:start}@media(max-width:768px){:root{--card-width: 80px;--card-height: 100px}.game-layout{grid-template-columns:1fr;grid-template-rows:auto auto auto auto;gap:6px;padding:8px 12px}.game-layout__hand--right{order:-2;justify-self:center}.game-layout__header{order:-1}.game-layout__hand--left{order:1;justify-self:center}.game-layout__hand--left .player-hand__cards,.game-layout__hand--right .player-hand__cards{flex-direction:row}}@media(max-width:400px){:root{--card-width: 68px;--card-height: 86px;--board-gap: 4px}}
