:root{color-scheme:dark;--night: #0b0912;--ink: #141020;--ink-2: #1c1630;--line: #2e2645;--parch: #efe6d8;--mute: #a99fba;--gold: #d9b25f;--gold-2: #f1d48a;--rose: #e8577e;--ombre: #8b72f0;--feu: #ec6a32;--sang: #c4314a;--lumiere: #e9d58a;--ok: #67c38f;--warn: #e6b450;--r-commune: #9aa3b5;--r-rare: #5aa7e8;--r-epique: #b07cf2;--r-legendaire: #f1c45a;--f-display: "Cinzel", "Trajan Pro", "Times New Roman", serif;--f-body: "EB Garamond", "Garamond", "Georgia", serif;--f-ui: ui-sans-serif, -apple-system, "Segoe UI", Roboto, sans-serif;--radius: 14px;--shadow: 0 10px 30px rgba(0, 0, 0, .45);--tab-h: 64px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{margin:0;background:var(--night);color:var(--parch);font:17px/1.5 var(--f-body);overscroll-behavior:none;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}input{font:inherit;color:var(--parch)}h1,h2,h3{font-family:var(--f-display);font-weight:700;letter-spacing:.04em;margin:0;text-wrap:balance}h1{font-size:1.6rem}h2{font-size:1.2rem}h3{font-size:1rem}p{margin:0}.num{font-family:var(--f-ui);font-variant-numeric:tabular-nums}.eyebrow{font:600 .68rem/1 var(--f-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.mute{color:var(--mute)}.small{font-size:.88rem}.center{text-align:center}.row{display:flex;align-items:center;gap:10px}.col{display:flex;flex-direction:column;gap:12px}.grow{flex:1;min-width:0}.spacer{flex:1}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app{position:relative;height:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(120% 60% at 50% 0%,#1f1838 0%,var(--night) 60%)}@media(min-width:520px){.app{border-left:1px solid var(--line);border-right:1px solid var(--line)}}.topbar{flex:none;display:flex;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top,0px) + 10px) max(14px,env(safe-area-inset-right,0px)) 10px max(14px,env(safe-area-inset-left,0px));background:linear-gradient(180deg,#0b0912f5,#0b0912b3);border-bottom:1px solid var(--line);z-index:5}.pill{display:inline-flex;align-items:center;gap:5px;padding:5px 10px 5px 7px;border-radius:99px;background:var(--ink-2);border:1px solid var(--line);font:600 .82rem/1 var(--f-ui);font-variant-numeric:tabular-nums;white-space:nowrap}.pill .ic{font-size:.95rem}.pill small{color:var(--mute);font-weight:500;font-size:.7rem}.avatar-btn{width:38px;height:38px;border-radius:50%;overflow:hidden;flex:none;padding:2px;background:var(--frame, var(--line))}.avatar-btn>*{width:100%;height:100%;border-radius:50%;display:block;background:var(--ink)}.main{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.page{padding:18px max(16px,env(safe-area-inset-right,0px)) 28px max(16px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:18px}.tabs{flex:none;display:grid;grid-template-columns:repeat(5,1fr);padding:6px max(6px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 6px) max(6px,env(safe-area-inset-left,0px));background:#0b0912f7;border-top:1px solid var(--line);z-index:5}.tab{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;border-radius:10px;color:var(--mute);font:600 .66rem/1 var(--f-ui);letter-spacing:.04em;position:relative}.tab svg{width:24px;height:24px}.tab[aria-current=page]{color:var(--gold-2)}.tab[aria-current=page]:before{content:"";position:absolute;top:-7px;width:28px;height:2px;border-radius:2px;background:var(--gold);box-shadow:0 0 12px var(--gold)}.tab .dot{position:absolute;top:3px;right:calc(50% - 18px);width:8px;height:8px;border-radius:50%;background:var(--rose);box-shadow:0 0 0 2px var(--night)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:12px;font:700 .86rem/1 var(--f-display);letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg,var(--gold-2),var(--gold) 55%,#9a7428);color:#1a1206;box-shadow:0 2px #6b4f17,0 8px 20px #d9b25f33;transition:transform .12s,filter .12s}.btn:active:not(:disabled){transform:translateY(1px);filter:brightness(.95)}.btn:disabled{filter:grayscale(.8) brightness(.6);box-shadow:none}.btn.ghost{background:transparent;color:var(--parch);border:1px solid var(--line);box-shadow:none}.btn.rose{background:linear-gradient(180deg,#ff86a5,var(--rose) 60%,#a52d52);color:#2a0612;box-shadow:0 2px #6e1631,0 8px 20px #e8577e40}.btn.small{min-height:38px;padding:0 14px;font-size:.74rem}.btn.block{width:100%}.btn .cost{font-family:var(--f-ui);font-weight:700;letter-spacing:0;text-transform:none;opacity:.85}.panel{background:linear-gradient(180deg,var(--ink-2),var(--ink));border:1px solid var(--line);border-radius:var(--radius);padding:16px}.panel.tight{padding:12px}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:4px;background:var(--ink);border:1px solid var(--line);border-radius:12px}.seg button{padding:9px 6px;border-radius:9px;font:600 .78rem/1 var(--f-ui);color:var(--mute)}.seg button[aria-pressed=true]{background:var(--ink-2);color:var(--parch);box-shadow:inset 0 0 0 1px var(--line)}.bar{height:8px;border-radius:8px;background:#ffffff12;overflow:hidden}.bar>i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,var(--gold),var(--gold-2));transition:width .5s ease}.bar.rose>i{background:linear-gradient(90deg,#a52d52,var(--rose),#ff9ab4)}.chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:99px;font:600 .68rem/1.2 var(--f-ui);letter-spacing:.04em;background:#ffffff0f;color:var(--mute);border:1px solid var(--line);white-space:nowrap}.chip.gold{color:var(--gold-2);border-color:#d9b25f66;background:#d9b25f1a}.chip.rose{color:#ff9ab4;border-color:#e8577e66;background:#e8577e1a}.chip.ok{color:var(--ok);border-color:#67c38f66;background:#67c38f14}.chip.npc{color:var(--mute);border-style:dashed}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}.title-rule{display:flex;align-items:center;gap:10px}.title-rule:before,.title-rule:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(217,178,95,.5))}.title-rule:after{transform:scaleX(-1)}.field{display:flex;flex-direction:column;gap:6px}.field label{font:600 .74rem/1 var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.field input{min-height:48px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--ink);font-size:1.05rem}.field input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #d9b25f26}.error{color:#ff8f8f;font:500 .88rem/1.4 var(--f-ui)}.empty{padding:28px 16px;text-align:center;color:var(--mute)}.overlay{position:absolute;inset:0;z-index:30;background:#05040ab8;backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;animation:fade .2s ease}.sheet{width:100%;max-height:88%;overflow-y:auto;background:linear-gradient(180deg,#1f1834,var(--ink));border:1px solid var(--line);border-bottom:0;border-radius:20px 20px 0 0;padding:20px max(18px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 20px) max(18px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:16px;animation:rise .28s cubic-bezier(.2,.9,.3,1.1)}.sheet .grab{width:40px;height:4px;border-radius:4px;background:var(--line);margin:-8px auto 0}.full{position:absolute;inset:0;z-index:25;display:flex;flex-direction:column;background:var(--night);animation:fade .25s ease}.toasts{position:absolute;left:0;right:0;top:calc(env(safe-area-inset-top,0px) + 64px);z-index:50;display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none}.toast{padding:9px 16px;border-radius:99px;background:#1c1630f5;border:1px solid var(--line);box-shadow:var(--shadow);font:600 .86rem/1.2 var(--f-ui);animation:toast 2.6s ease forwards}.toast.rose{border-color:#e8577e99;color:#ffc2d1}.toast.gold{border-color:#d9b25f99;color:var(--gold-2)}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{transform:translateY(40px);opacity:0}}@keyframes toast{0%{opacity:0;transform:translateY(-8px)}10%,80%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)}}@keyframes glow{50%{opacity:.55}}@keyframes float{50%{transform:translateY(-6px)}}@keyframes drift{0%{transform:translate(-10%)}to{transform:translate(10%)}}.backdrop{position:absolute;inset:0;overflow:hidden;background:var(--bg-grad, var(--night))}.backdrop img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0b091233,#0b091200 30%,#0b09128c 62%,#0b0912f5)}.mist{position:absolute;inset:-20% -30%;background:radial-gradient(40% 25% at 30% 70%,rgba(200,190,255,.08),transparent 70%),radial-gradient(35% 20% at 70% 60%,rgba(255,255,255,.06),transparent 70%);animation:drift 18s ease-in-out infinite alternate;pointer-events:none}.card{--rc: var(--r-commune);position:relative;aspect-ratio:2 / 3;width:100%;max-width:100%;border-radius:12px;padding:3px;background:linear-gradient(150deg,var(--rc),color-mix(in srgb,var(--rc) 30%,#000) 50%,var(--rc));box-shadow:0 6px 16px #00000080;overflow:hidden;text-align:left}.card[data-r=rare]{--rc: var(--r-rare)}.card[data-r=epique]{--rc: var(--r-epique)}.card[data-r=legendaire]{--rc: var(--r-legendaire);box-shadow:0 0 18px #f1c45a59,0 6px 16px #00000080}.card .in{position:relative;height:100%;border-radius:9px;overflow:hidden;background:var(--fac, #222);display:flex;flex-direction:column}.card .art{position:relative;flex:1;display:grid;place-items:center;overflow:hidden}.card .art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.card .glyph{font-size:2.6em;filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}.card .lvl{position:absolute;top:5px;left:5px;font:700 .62em/1 var(--f-ui);padding:3px 5px;border-radius:6px;background:#0009;color:var(--gold-2)}.card .type{position:absolute;top:5px;right:5px;font-size:.8em;padding:2px 4px;border-radius:6px;background:#00000080}.card .name{padding:5px 6px 2px;font:700 .64em/1.15 var(--f-display);letter-spacing:.02em;background:linear-gradient(0deg,#000000d9,#0000008c);min-height:2.6em;display:flex;align-items:center}.card .stats{display:grid;grid-template-columns:repeat(3,1fr);padding:3px 4px 5px;background:#000000d9;font:700 .58em/1 var(--f-ui);font-variant-numeric:tabular-nums;text-align:center}.card .stats span{color:var(--mute);font-weight:500;display:block;font-size:.85em;margin-bottom:2px}.card.locked .in{background:#15121d}.card.locked .glyph{filter:grayscale(1) brightness(.25)}.card.locked .name,.card.locked .stats{color:#4b445a}.card .shine{position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.25) 45%,transparent 60%);transform:translate(-100%);animation:shine 2.8s ease-in-out infinite;pointer-events:none}@keyframes shine{60%,to{transform:translate(100%)}}.grid-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;font-size:15px}@media(min-width:420px){.grid-cards{gap:12px}}.portrait{position:relative;width:100%;height:100%}.portrait img,.portrait svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}.auth{position:relative;flex:1;display:flex;flex-direction:column;overflow-y:auto}.auth-art{position:relative;height:38vh;min-height:220px;flex:none;overflow:hidden;background:radial-gradient(60% 50% at 50% 60%,#2b2346,#0b0912 70%)}.auth-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.auth-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,var(--night))}.auth-moon{position:absolute;left:50%;top:44%;width:150px;height:150px;margin:-75px;border-radius:50%;background:radial-gradient(circle at 40% 38%,#d8d3cc,#8f8a93 60%,#4c4752);box-shadow:0 0 80px 20px #c8c3dc2e;filter:saturate(.3);animation:float 8s ease-in-out infinite}.auth-body{padding:0 max(20px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 28px) max(20px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:22px;margin-top:-40px;position:relative}.auth-title{font-size:2.1rem;line-height:1.05;color:var(--gold-2);text-shadow:0 2px 24px rgba(217,178,95,.35)}.auth-title em{font-style:normal;font-size:.62em;letter-spacing:.3em;color:var(--parch);display:block;margin-top:6px}.creation{flex:1;overflow-y:auto;display:flex;flex-direction:column}.creation-head{display:flex;align-items:flex-end;gap:16px;padding:calc(env(safe-area-inset-top,0px) + 18px) max(16px,env(safe-area-inset-right,0px)) 12px max(16px,env(safe-area-inset-left,0px));background:linear-gradient(180deg,#1f1838,transparent)}.creation-portrait{width:112px;height:146px;flex:none;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:var(--ink);box-shadow:var(--shadow)}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:0 max(16px,env(safe-area-inset-right,0px)) 0 max(16px,env(safe-area-inset-left,0px))}.steps i{height:3px;border-radius:3px;background:var(--line)}.steps i.on{background:var(--gold)}.swatch{width:40px;height:40px;border-radius:50%;border:2px solid var(--line);box-shadow:inset 0 0 0 2px #00000059}.swatch[aria-pressed=true]{border-color:var(--gold-2);box-shadow:0 0 0 3px #d9b25f40,inset 0 0 0 2px #00000059}.option{text-align:left;display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:var(--radius);background:var(--ink);border:1px solid var(--line);position:relative;overflow:hidden}.option[aria-pressed=true]{border-color:var(--oc);background:color-mix(in srgb,var(--oc) 14%,var(--ink));box-shadow:0 0 0 1px var(--oc),0 0 22px color-mix(in srgb,var(--oc) 25%,transparent)}.option:disabled{opacity:.5}.map{position:relative;aspect-ratio:4 / 3;max-width:100%;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#120f1c}.map>img,.map>svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.map:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 60px #000000b3;pointer-events:none}.pin{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;z-index:1}.pin-dot{width:14px;height:14px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 0 4px #d9b25f40,0 0 16px var(--gold);animation:glow 2.4s ease-in-out infinite}.pin-label{display:flex;flex-direction:column;align-items:center;padding:4px 8px;border-radius:8px;background:#0b0912d1;border:1px solid rgba(217,178,95,.3);white-space:nowrap}.pin-label b{font:700 .62rem/1.2 var(--f-display);letter-spacing:.04em}.pin-label small{font:500 .58rem/1.2 var(--f-ui);color:var(--mute)}.cta{text-align:left;display:flex;flex-direction:column;gap:6px;border-color:#d9b25f59;background:radial-gradient(120% 120% at 100% 0%,rgba(217,178,95,.16),transparent 60%),linear-gradient(180deg,var(--ink-2),var(--ink))}.event-banner{display:flex;gap:14px;align-items:center;text-align:left;background:radial-gradient(100% 120% at 0% 100%,rgba(230,160,70,.16),transparent 60%),linear-gradient(180deg,#16202a,var(--ink))}.battle{background:radial-gradient(90% 50% at 50% 50%,#2a1f3c,#0b0912 75%)}.battle-head,.battle-foot{padding:calc(env(safe-area-inset-top,0px) + 14px) max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:8px}.battle-foot{padding-top:10px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 16px)}.battle-field{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:space-around;padding:0 10px}.side{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.tok{width:calc(20% - 6px);max-width:82px;display:flex;flex-direction:column;align-items:center;gap:4px;transition:transform .2s,opacity .4s,filter .4s}.tok.boss{width:34%;max-width:130px}.tok-art{position:relative;width:100%;aspect-ratio:1;border-radius:14px;display:grid;place-items:center;font-size:1.9rem;background:radial-gradient(circle at 50% 35%,#3a2d55,#15111f);border:1px solid var(--line);overflow:visible}.tok.boss .tok-art{font-size:3.4rem;border-color:#b07cf299;box-shadow:0 0 30px #7c62e659}.tok-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:13px}.tok.enemy .tok-art{background:radial-gradient(circle at 50% 35%,#4a1f26,#170d12)}.tok-name{font:600 .6rem/1.1 var(--f-ui);text-align:center;color:var(--mute);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tok-hp{width:100%;height:5px;border-radius:4px;background:#ffffff14;overflow:hidden}.tok-hp i{display:block;height:100%;background:var(--ok);transition:width .35s ease}.tok-hp.enemy i{background:#e0495f}.tok.ko{opacity:.28;filter:grayscale(1)}.tok.lunge.ally{transform:translateY(-12px)}.tok.lunge.enemy{transform:translateY(12px)}.tok.hurt .tok-art{animation:hurt .3s}.tok.cast .tok-art{box-shadow:0 0 20px #67c38f99}@keyframes hurt{30%{transform:translate(-4px);filter:brightness(1.8) saturate(.4)}60%{transform:translate(3px)}}.float{position:absolute;top:-6px;left:50%;transform:translate(-50%);font:800 .9rem/1 var(--f-ui);color:#ffd1d1;text-shadow:0 2px 6px #000;animation:up .9s ease-out forwards;pointer-events:none;white-space:nowrap;z-index:2}.float.crit{color:#ffcf5a;font-size:1.05rem}.float.heal{color:#8ff0b6}@keyframes up{to{transform:translate(-50%,-26px);opacity:0}}.battle-line{min-height:3em;display:grid;place-items:center;text-align:center;font-style:italic;color:var(--parch);padding:0 8px;font-size:.98rem}.result{width:min(92%,380px);padding:26px 22px;border-radius:20px;text-align:center;display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,#221a38,var(--ink));border:1px solid var(--line);box-shadow:var(--shadow);animation:rise .3s ease}.result.win h1{color:var(--gold-2);font-size:2.2rem;text-shadow:0 0 30px rgba(241,212,138,.4)}.result.lose h1{color:#e08a9a;font-size:2.2rem}.reader{user-select:none;-webkit-user-select:none}.reader-top{position:relative;z-index:3;display:flex;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top,0px) + 10px) max(12px,env(safe-area-inset-right,0px)) 8px max(12px,env(safe-area-inset-left,0px))}.icon-btn{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#0b091299;border:1px solid var(--line);color:var(--parch);flex:none}.icon-btn svg{width:20px;height:20px}.reader-portrait{position:absolute;z-index:1;left:50%;bottom:22%;width:min(78%,360px);aspect-ratio:3 / 4;transform:translate(-50%);animation:fade .4s ease;-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}.reader-bottom{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:0 max(12px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 14px) max(12px,env(safe-area-inset-left,0px))}.reader-box{position:relative;padding:18px 18px 22px;border-radius:16px;background:#0e0b16e6;border:1px solid var(--line);box-shadow:var(--shadow);font-size:1.08rem;line-height:1.55;min-height:120px;backdrop-filter:blur(6px)}.reader-box.say{border-color:color-mix(in srgb,var(--sc) 55%,var(--line))}.reader-box.narr p{color:#e4dccd}.speaker{position:absolute;top:-13px;left:16px;padding:4px 12px;border-radius:8px;background:var(--sc);color:#0b0912;font:700 .78rem/1.2 var(--f-display);letter-spacing:.08em}.ghost-text{opacity:0}.tap-hint{position:absolute;right:14px;bottom:6px;color:var(--gold);animation:float 1.4s ease-in-out infinite}.choices{display:flex;flex-direction:column;gap:10px;animation:rise .3s ease}.choice{display:flex;flex-direction:column;align-items:stretch;gap:4px;text-align:left;padding:14px 16px;border-radius:14px;background:#141020f0;border:1px solid rgba(217,178,95,.4);font-size:1.04rem;line-height:1.4;box-shadow:var(--shadow);transition:transform .12s,border-color .12s}.choice:active:not(:disabled){transform:scale(.985);border-color:var(--gold-2)}.choice:disabled{opacity:.55;border-color:var(--line)}.choice-lock{display:inline-flex;align-items:center;gap:4px;font:600 .72rem/1 var(--f-ui);color:var(--mute)}.choice-lock svg{width:13px;height:13px}.chapter-end{position:relative;z-index:2;margin:auto max(20px,env(safe-area-inset-right,0px)) auto max(20px,env(safe-area-inset-left,0px));text-align:center;display:flex;flex-direction:column;gap:14px;padding:28px 22px;border-radius:20px;background:#0e0b16e6;border:1px solid rgba(217,178,95,.4)}.chapter-end h1{color:var(--gold-2);font-size:1.9rem}.chapter-card{position:relative;border-radius:18px;overflow:hidden;border:1px solid rgba(217,178,95,.35);min-height:300px;display:flex;box-shadow:var(--shadow)}.chapter-card-in{position:relative;z-index:1;margin-top:auto;padding:18px;display:flex;flex-direction:column;gap:10px;width:100%}.chapter-card-in h1{color:var(--gold-2)}.lover{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:18px;border:1px solid color-mix(in srgb,var(--lc) 40%,var(--line));background:radial-gradient(120% 70% at 0% 0%,color-mix(in srgb,var(--lc) 20%,transparent),transparent 60%),linear-gradient(180deg,var(--ink-2),var(--ink))}.lover-head{display:flex;gap:14px;align-items:center}.lover-portrait{width:88px;height:110px;flex:none;border-radius:14px;overflow:hidden;background:var(--night);border:1px solid color-mix(in srgb,var(--lc) 50%,var(--line))}.lover-unknown{width:100%;height:100%;display:grid;place-items:center;font:700 2.4rem var(--f-display);color:var(--line)}.aff-bar{position:relative}.aff-bar i{position:absolute;top:-2px;width:2px;height:12px;background:var(--line);transform:translate(-1px);border-radius:1px}.aff-bar i.on{background:#ffd2dc}.secret{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;text-align:left;background:#00000040;border:1px solid var(--line)}.secret b{display:block;font:700 .86rem/1.3 var(--f-display);letter-spacing:.03em}.secret small{display:block;font:500 .74rem/1.3 var(--f-ui);color:var(--mute)}.secret:disabled{opacity:.6}.secret.quest:not(:disabled){border-color:#f1c45a73;background:#f1c45a0f}.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.statgrid>div{padding:10px 6px;border-radius:10px;background:#0000004d;border:1px solid var(--line);text-align:center}.statgrid span{display:block;font:600 .62rem/1 var(--f-ui);letter-spacing:.1em;color:var(--mute);margin-bottom:4px}.statgrid b{font:700 1.05rem/1 var(--f-ui)}.team-slots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;font-size:11px}.slot-empty{aspect-ratio:2 / 3;border-radius:12px;border:1px dashed var(--line);display:grid;place-items:center;color:var(--mute);font:600 .7rem var(--f-ui)}.summon-hero{position:relative;min-height:180px;border-radius:18px;overflow:hidden;border:1px solid rgba(176,124,242,.35);display:flex}.summon-in{position:relative;z-index:1;margin-top:auto;padding:16px;display:flex;flex-direction:column;gap:6px}.reveal.one{display:grid;width:56%;margin:0 auto;font-size:20px}.reveal.five{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;font-size:10px}.flip{position:relative;display:block;width:100%;aspect-ratio:2 / 3;perspective:800px}.flip-back,.flip-front{position:absolute;inset:0;backface-visibility:hidden;transition:transform .5s cubic-bezier(.3,.8,.3,1.1);border-radius:12px}.flip-back{background:radial-gradient(circle at 50% 40%,#3b2c5c,#120e1c);border:1px solid #4a3b6e}.flip-back:after{content:"☾";position:absolute;inset:0;display:grid;place-items:center;color:var(--gold);font-size:1.8em;opacity:.7}.flip[data-r=epique] .flip-back{box-shadow:0 0 18px #b07cf28c}.flip[data-r=legendaire] .flip-back{box-shadow:0 0 22px #f1c45ab3}.flip-front{transform:rotateY(180deg)}.flip.on .flip-back{transform:rotateY(-180deg)}.flip.on .flip-front{transform:rotateY(0)}.flip .new{position:absolute;top:6px;left:50%;transform:translate(-50%);font-size:.55rem;z-index:2;background:#2a0612d9}.stages{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.stage{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;text-align:left;background:var(--ink);border:1px solid var(--line)}.stage b{display:block;font:700 .9rem/1.25 var(--f-display);letter-spacing:.03em}.stage small{display:block;font:500 .76rem/1.35 var(--f-ui);color:var(--mute)}.stage-n{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);font:700 .9rem var(--f-ui);color:var(--mute)}.stage.open{border-color:#d9b25f8c;background:radial-gradient(120% 120% at 0% 50%,rgba(217,178,95,.12),transparent 60%),var(--ink)}.stage.open .stage-n{border-color:var(--gold);color:var(--gold-2)}.stage.done .stage-n{border-color:#67c38f80;color:var(--ok)}.stage.locked{opacity:.5}.stage.boss b{color:#c9b4ff}.patrol{display:flex;align-items:center;gap:12px;text-align:left}.foe{display:inline-flex;flex-direction:column;align-items:center;gap:2px;width:64px;padding:8px 4px;border-radius:10px;background:#0000004d;border:1px solid var(--line)}.foe span{font-size:1.5rem}.foe small{font:500 .58rem/1.2 var(--f-ui);color:var(--mute);text-align:center}.big-num{font:700 1.9rem/1.1 var(--f-ui);color:var(--gold-2)}.board{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.board li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--ink);border:1px solid var(--line)}.board li.me{border-color:var(--gold);background:radial-gradient(120% 120% at 0% 50%,rgba(217,178,95,.14),transparent 60%),var(--ink)}.board .rank{width:26px;text-align:center;font:700 .95rem var(--f-ui);color:var(--mute)}.board li.top1 .rank{color:var(--r-legendaire)}.board li.top2 .rank{color:#d6dbe6}.board li.top3 .rank{color:#d9925f}.board-av{width:34px;height:34px;flex:none;border-radius:50%;padding:2px}.board-av i{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;background:var(--night);font:700 .9rem var(--f-display);font-style:normal}.board b{display:block;font:600 .92rem/1.25 var(--f-ui)}.board small{display:block;font:500 .72rem/1.3 var(--f-ui);color:var(--mute)}.board .pts{font:700 1rem var(--f-ui)}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-hero{position:relative;min-height:300px;display:flex}.event-hero-in{position:relative;z-index:1;margin-top:auto;padding:70px max(16px,env(safe-area-inset-right,0px)) 6px max(16px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:8px}.event-hero-in h1{color:var(--gold-2);font-size:1.8rem}.mission{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--ink);border:1px solid var(--line)}.profile-head{display:flex;align-items:center;gap:16px}.profile-portrait{width:104px;height:104px;flex:none;border-radius:50%;padding:3px}.profile-portrait>div{width:100%;height:100%;border-radius:50%;overflow:hidden;background:var(--night);position:relative}.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.shop-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border-radius:12px;background:var(--ink);border:1px solid var(--line);text-align:center}.shop-item b{font:600 .72rem/1.2 var(--f-ui)}.shop-item small{font:500 .66rem/1.2 var(--f-ui);color:var(--mute)}.shop-item[aria-pressed=true],.secret[aria-pressed=true]{border-color:var(--gold)}.shop-item:disabled{opacity:.55}.swatch-lg{width:44px;height:44px;border-radius:50%;box-shadow:inset 0 0 0 4px #00000059}.moment{margin:0;padding:12px 14px;border-radius:12px;background:#e8577e14;border:1px solid rgba(232,87,126,.3);font-style:italic;color:#f3dce2;animation:fade .4s ease}
