/* Personalisation / Pearl: shared ivory, ink and crimson direction. */
.fudaya-character-page{color-scheme:light}
.fudaya-character{--red:#c8183b;--bone:#241d20;--muted:#796d71;--paper:#fff;--ivory:#f7f3ee;--line:#ded3ce;--soft:#f0e7e2;--font-display:Anton,sans-serif;--font-sans:'Barlow Semi Condensed',sans-serif;--font-mono:'IBM Plex Mono',monospace;background:#fbf9f6;color:var(--bone);font:500 16px/1.5 var(--font-sans)}
.fudaya-character button,.fudaya-character input,.fudaya-character a{font-family:inherit}
.fudaya-character button:focus-visible,.fudaya-character a:focus-visible,.fudaya-character input:focus-visible{outline:2px solid #42698a;outline-offset:4px}
.fudaya-character>header{height:72px;padding:0 max(24px,calc((100% - 1440px)/2));border-bottom:1px solid #e9e2de;background:#fff;gap:24px}
.fudaya-character .brand{display:flex;align-items:center;gap:8px;font:400 25px/1 var(--font-display);color:var(--bone);letter-spacing:-.5px;font-style:normal}
.fudaya-character .brand img{width:32px;height:32px;filter:drop-shadow(0 3px 5px #c8183b1c)}
.fudaya-character nav{align-self:stretch;align-items:stretch;gap:28px}
.fudaya-character nav a{display:flex;align-items:center;position:relative;padding:0;color:#82767a;font-size:12px;font-weight:700;letter-spacing:.05em;white-space:nowrap}
.fudaya-character nav a:hover,.fudaya-character nav a.active{color:var(--red);border:0}
.fudaya-character nav a.active:after{content:'';height:3px;background:var(--red);position:absolute;bottom:0;inset-inline:-6px}
.fudaya-character main{max-width:1488px;padding:36px 24px 12px;margin:auto}
.fudaya-character .intro{margin-bottom:24px;gap:20px;align-items:center}
.fudaya-character .kicker{font:500 9px/1.6 var(--font-mono);letter-spacing:.22em;color:var(--red)}
.fudaya-character .intro h1{font:400 clamp(30px,3vw,46px)/1.15 var(--font-display);letter-spacing:-.02em;margin:10px 0 8px}
.fudaya-character .intro p{font-size:15px;line-height:1.5;color:var(--muted)}
.fudaya-character .live{font:500 9px/1 var(--font-mono);letter-spacing:.07em;border:1px solid #ddc3c4;border-radius:6px;padding:12px 14px;color:#8f364b;background:#fff;box-shadow:0 4px 12px #57313d06;white-space:nowrap}
.fudaya-character .live:before{color:var(--red);font-size:7px;margin-right:7px}
.fudaya-character .layout{gap:16px}
.fudaya-character .preview{border:1px solid #ded3ce;border-radius:18px;background:radial-gradient(ellipse at 49% 28%,#fff 20%,#f7f2ec 70%,#e8ded5);box-shadow:0 18px 45px #503c4510,inset 0 1px #fff;isolation:isolate}
.fudaya-character .preview:before{opacity:.38;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='144' height='72' viewBox='0 0 144 72'%3E%3Cg fill='none' stroke='%23d2c3b8' stroke-width='.7'%3E%3Cpath d='M0 72a72 72 0 0 1 144 0M12 72a60 60 0 0 1 120 0M24 72a48 48 0 0 1 96 0M36 72a36 36 0 0 1 72 0M48 72a24 24 0 0 1 48 0M60 72a12 12 0 0 1 24 0M-72 36a72 72 0 0 1 144 0M72 36a72 72 0 0 1 144 0'/%3E%3C/g%3E%3C/svg%3E");background-size:144px 72px;mask-image:linear-gradient(90deg,#000 0,transparent 32%,transparent 68%,#000)}
.fudaya-character .stage{--avatar-controls-space:0px;height:clamp(620px,calc(100svh - 300px),800px)}
.fudaya-character .stage:before{content:'姿';position:absolute;left:6%;top:19%;font:400 clamp(120px,18vw,260px)/1 serif;color:#b5213c07;pointer-events:none;transform:rotate(-10deg)}
.fudaya-character .stageheader{top:22px;left:24px;right:24px;align-items:center}
.fudaya-character .stageheader>span{font:500 9px/1.4 var(--font-mono);letter-spacing:.13em;color:#897b7a}
.fudaya-character .stageheader>span:first-child:before{content:'';display:inline-block;width:16px;height:2px;margin:0 8px 3px 0;background:var(--red)}
.fudaya-character .stageheader .chip{background:#fff9;border:1px solid #e0d3cc;color:#796869;letter-spacing:.02em;border-radius:5px;padding:7px 10px}
.fudaya-character .load{color:var(--muted);font:600 12px var(--font-sans)}
.fudaya-character .load.loaded{bottom:20px;font:500 9px/1 var(--font-mono);padding:9px 12px;border:1px solid #ded0c8;background:#fff9;color:#8c6871;border-radius:5px}
.fudaya-character .body-options{counter-reset:option;top:78px;bottom:62px;right:26px;width:266px;gap:12px}
.fudaya-character .body-option{counter-increment:option;border:1px solid #e3d7d0;border-radius:12px;background:#fffdfb;box-shadow:0 7px 20px #593c4610;padding:13px 14px;position:relative}
.fudaya-character .body-option>span{color:#8a6b74;font:500 9px/1.5 var(--font-mono);text-align:left;letter-spacing:.14em;margin-bottom:10px}
.fudaya-character .body-option>span:before{content:'0' counter(option);font-size:8px;display:inline-block;margin-right:8px;color:#c09aa3}
.fudaya-character .body-option b{color:var(--bone);font:700 15px/1.3 var(--font-sans)}
.fudaya-character .body-option small{color:#8b7a7d;font:500 10px/1.3 var(--font-mono);margin-top:4px}
.fudaya-character .body-option button:not([data-hair-color]){color:var(--red);background:#fbf5f2;border:1px solid #eadbd7;font:400 31px/1 var(--font-sans);width:40px;min-width:40px;height:44px;border-radius:7px;transition:background .16s,transform .16s}
.fudaya-character .body-option button:hover:not(:disabled):not([data-hair-color]){background:#f8e3e6;transform:translateY(-1px)}
.fudaya-character .body-option>div{gap:8px}
.fudaya-character .body-option.pending{opacity:1;background:#faf6f2;box-shadow:none}
.fudaya-character .body-option.pending b{color:#897a7e;font-weight:600}
.fudaya-character .body-option.pending small{font-size:9px;color:#978a8c}
.fudaya-character .body-option.pending>span:after{content:'BIENTÔT';float:right;font-size:7px;letter-spacing:.08em;color:#ab9198;border:1px solid #e3d7d4;padding:1px 4px;border-radius:3px}
.fudaya-character .body-option.pending button{opacity:.35;color:#a29698;background:transparent;border-color:transparent}
.fudaya-character .body-option .hair-colors{margin-top:13px}
.fudaya-character .body-option .hair-colors>label:first-child{font:500 8px/1.4 var(--font-mono);letter-spacing:.05em;color:#a0838a;margin-bottom:10px}
.fudaya-character .body-option .swatches{gap:8px;flex-wrap:wrap}
.fudaya-character .body-option .swatches button{width:21px;height:21px;min-width:21px;min-height:21px;border:2px solid #fff;box-shadow:0 0 0 1px #cfbfba}
.fudaya-character .body-option .swatches button[aria-pressed=true]{box-shadow:0 0 0 2px var(--red);transform:scale(1.04)}
.fudaya-character .body-option .swatches input{width:24px;height:24px;padding:0;border:0;cursor:pointer;background:transparent}
.fudaya-character .body-option .outline-control{font:500 11px/1.4 var(--font-sans);color:#8c777e;text-transform:none;letter-spacing:0;margin-top:12px}
.fudaya-character .body-option .outline-control input{accent-color:var(--red);width:14px;height:14px}
.fudaya-character .stagefoot{border-top:1px solid #e3d7cf;background:#faf6f1;padding:14px 18px;gap:16px}
.fudaya-character .controls{gap:8px}
.fudaya-character .btn{font:700 12px/1 var(--font-sans);min-height:44px;padding:10px 15px;color:#6b555e;border:1px solid #d5c5bf;background:linear-gradient(#fff,#f5ede7);border-radius:7px;box-shadow:0 3px 0 #d6c6bf,inset 0 1px #fff;transition:transform .16s,box-shadow .16s,background .16s}
.fudaya-character .btn:hover{background:#fff;color:var(--red);transform:translateY(-1px)}
.fudaya-character .btn:active{transform:translateY(2px);box-shadow:0 1px 0 #d6c6bf}
.fudaya-character .btn[aria-pressed=true]{color:var(--red);border-color:#c88a96;background:#fff0f2}
.fudaya-character .stagefoot small{font:500 9px var(--font-mono);color:#9b858c}
.fudaya-character .panel{padding:18px 20px;border:1px solid #e0d3cc;border-radius:12px;background:#fff;box-shadow:0 8px 20px #503c4508;gap:14px}
.fudaya-character .save{position:relative;overflow:hidden;width:260px;min-height:52px;margin-left:auto;padding:14px 22px;border:1px solid #a80f25;border-radius:8px;background:linear-gradient(130deg,#ed3651,#c8183b 50%,#b50f2d);box-shadow:0 5px 0 #771225,0 10px 18px #b713331c,inset 0 1px #ffffff70;color:#fff;font:400 17px/1.2 var(--font-display);font-weight:400;letter-spacing:.04em;transition:transform .16s,box-shadow .16s}
.fudaya-character .save:after{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,#fff3 46%,transparent 60%);transform:translateX(-110%);pointer-events:none;transition:transform .6s}
.fudaya-character .save:hover:not(:disabled):after{transform:translateX(110%)}
.fudaya-character .save:active{transform:translateY(3px);box-shadow:0 2px 0 #771225}
.fudaya-character .status{font:600 13px/1.5 var(--font-sans);color:#8f3b53}
.fudaya-character .helper{margin-top:16px;font:500 11px/1.6 var(--font-sans);color:#9a848c;align-items:center}
.fudaya-character .helper a{color:var(--red);font-weight:700;text-decoration:none}
.fudaya-character footer{max-width:1488px;margin:24px auto 0;padding:20px 24px 28px;border-top:1px solid #e7ded8;color:#9a8a8d;font:500 10px/1.8 var(--font-sans)}
.fudaya-character footer a{color:#8c5b6b}
.fudaya-character .fit-tools{left:24px;top:70px;width:270px}
.fudaya-character .fit-tools #hairFitPanel{background:#fffcf9;border:1px solid #d9c6c0;box-shadow:0 12px 32px #4b25351a;color:var(--bone);border-radius:12px;padding:16px}
.fudaya-character #hairFitPanel h3{font:400 22px/1.2 var(--font-display)}
.fudaya-character #hairFitPanel p{color:#8e777f}
.fudaya-character #hairFitPanel .fit-row{color:#795d67;font-family:var(--font-sans)}
.fudaya-character .fit-row input{accent-color:var(--red);background:transparent}
.fudaya-character .fit-row output{color:var(--red);font-family:var(--font-mono)}
.fudaya-character .fit-actions .btn{padding:8px 10px;min-height:40px}
.fudaya-character #appearanceDialog{padding:30px;border-radius:16px;border:1px solid #d8c7c0;background:#fffcf8;color:var(--bone);box-shadow:0 25px 80px #351b2e33}
.fudaya-character #appearanceDialog::backdrop{background:#30202952;backdrop-filter:blur(3px)}
.fudaya-character #appearanceDialog h2{font:400 30px/1.15 var(--font-display);margin:16px 0 12px}
.fudaya-character #appearanceDialog p{font-size:15px;color:var(--muted)}
.fudaya-character #appearanceDialog label{font:500 10px var(--font-mono);color:#8a6876}
.fudaya-character #appearanceDialog input{color:var(--bone);background:#fff;border:1px solid #bcaaa7;border-radius:6px;font-size:17px;padding:13px}
.fudaya-character #appearanceDialog .save{width:100%;margin:8px 0 0;font-size:16px}
.fudaya-character #appearanceDialog .dialog-close{color:#856975;min-width:44px;min-height:44px;top:8px;right:8px}
@media(max-width:1000px) and (min-width:721px){.fudaya-character .body-options{right:18px;width:238px}.fudaya-character .body-option{padding:12px}.fudaya-character .stage{height:740px}.fudaya-character .stageheader{left:18px;right:18px}}
@media(max-width:720px){
 .fudaya-character>header{height:auto;min-height:104px;padding:16px 18px 0;flex-wrap:wrap;gap:12px}
 .fudaya-character .brand{font-size:23px}.fudaya-character .brand img{width:28px;height:28px}
 .fudaya-character nav{width:100%;gap:22px;min-width:0;overflow-x:auto;scrollbar-width:none}
 .fudaya-character nav a{font-size:10px;padding:11px 0 14px;min-height:38px}
 .fudaya-character nav a.active:after{inset-inline:0}
 .fudaya-character main{padding:24px 12px 10px}
 .fudaya-character .intro{margin-bottom:18px;align-items:flex-start;gap:12px}
 .fudaya-character .intro h1{font-size:31px;max-width:12ch;line-height:1.15;margin-top:10px}
 .fudaya-character .intro p{font-size:13px;max-width:28ch}
 .fudaya-character .kicker{font-size:8px;letter-spacing:.15em}
 .fudaya-character .live{display:none}
 .fudaya-character .preview{border-radius:13px}
 .fudaya-character .stage{--avatar-controls-space:310px;height:730px}
 .fudaya-character .stage:before{font-size:150px;left:4%;top:12%}
 .fudaya-character .stageheader{left:12px;right:12px;top:16px;gap:10px}
 .fudaya-character .stageheader>span{font-size:7px;letter-spacing:.07em}
 .fudaya-character .stageheader .chip{font-size:7px;padding:6px 7px}
 .fudaya-character .body-options{top:auto;bottom:14px;left:12px;right:12px;width:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}
 .fudaya-character .body-option{padding:12px 9px;border-radius:9px}
 .fudaya-character .body-option>span{font-size:8px;letter-spacing:.08em;margin-bottom:8px}
 .fudaya-character .body-option>span:before{margin-right:5px;font-size:7px}
 .fudaya-character .body-option.pending>span:after{font-size:6px;padding:1px 3px}
 .fudaya-character .body-option b{font-size:12px}
 .fudaya-character .body-option small{font-size:8px}
 .fudaya-character .body-option button:not([data-hair-color]){width:32px;min-width:32px;height:44px;font-size:26px}
 .fudaya-character .body-option>div{gap:2px}
 .fudaya-character .body-option .hair-colors>label:first-child{white-space:normal;font-size:7px}
 .fudaya-character .body-option .swatches{gap:8px}
 .fudaya-character .body-option .swatches button{width:20px;height:20px;min-width:20px}
 .fudaya-character .body-option .outline-control{font-size:10px}
 .fudaya-character .load.loaded{bottom:325px;font-size:7px;padding:7px}
 .fudaya-character .stagefoot{padding:12px}
 .fudaya-character .controls{gap:7px;justify-content:center;width:100%}
 .fudaya-character .controls .btn{padding:10px 12px;font-size:11px;flex:1;white-space:nowrap}
 .fudaya-character .stagefoot small{display:none}
 .fudaya-character .panel{padding:15px;border-radius:10px}
 .fudaya-character .panel .save{width:100%;min-height:52px}
 .fudaya-character .status{margin-right:0;text-align:center;width:100%}
 .fudaya-character .helper{align-items:flex-start;flex-direction:column;gap:7px;font-size:11px}
 .fudaya-character footer{margin-top:12px;padding:18px 14px}
 .fudaya-character .fit-tools{position:relative;left:auto;top:auto;width:auto;padding:12px;border-top:1px solid #e3d7cf;background:#fbf7f1}
 .fudaya-character .fit-tools #hairFitPanel{max-height:none;margin-top:12px}
 .fudaya-character .preview.fit-active .stage{height:380px;--avatar-controls-space:0px}
 .fudaya-character .preview.fit-active .load.loaded{bottom:12px}
 .fudaya-character #appearanceDialog{padding:26px 22px}
}
@media(max-width:360px){.fudaya-character nav{gap:17px}.fudaya-character nav a{font-size:9px}.fudaya-character .intro h1{font-size:29px}.fudaya-character .body-options{left:8px;right:8px;gap:8px}.fudaya-character .body-option{padding:11px 7px}.fudaya-character .body-option button:not([data-hair-color]){min-width:28px;width:28px}.fudaya-character .body-option b{font-size:11px}.fudaya-character .body-option>span{font-size:7px}.fudaya-character .body-option>span:before{display:none}.fudaya-character .body-option .swatches{gap:7px}}
@media(prefers-reduced-motion:reduce){.fudaya-character *,.fudaya-character *:before,.fudaya-character *:after{animation:none!important;transition:none!important}}
/* Lycoris: the duel's botanical silhouette, drawn as a lightweight SVG motif. */
.fudaya-character .preview:before{opacity:.18}
.fudaya-character .character-lycoris{position:absolute;z-index:0;pointer-events:none;width:390px;height:620px;bottom:-8px;background:url('../img/personnalisation-lycoris.svg') center bottom/contain no-repeat}
.fudaya-character .character-lycoris--left{left:-72px;opacity:.9}
.fudaya-character .character-lycoris--right{right:-52px;transform:scaleX(-1);width:350px;height:560px;opacity:.65}
@media(max-width:1000px) and (min-width:721px){.fudaya-character .character-lycoris--left{width:290px;height:510px;left:-70px}.fudaya-character .character-lycoris--right{right:-100px;opacity:.45}}
@media(max-width:720px){.fudaya-character .stage{--avatar-controls-space:380px}.fudaya-character .load.loaded{bottom:390px}.fudaya-character .character-lycoris{top:16px;bottom:auto;height:340px;width:220px}.fudaya-character .character-lycoris--left{left:-45px;opacity:.65}.fudaya-character .character-lycoris--right{right:-55px;top:25px;opacity:.4}.fudaya-character .preview.fit-active .character-lycoris{opacity:.25}.fudaya-character .preview.fit-active .stage{--avatar-controls-space:0px}}
