/* KareChara consolidated editor styles: Canvas, desktop/mobile navigation, gacha. */
:root{--ac-accent:#6cf;--ac-edge:#e6e8ed;--ac-surface:#fafafd}
body .ac-editor-topbar a{text-decoration:none;color:#fff;font-size:12px;font-weight:700;white-space:nowrap}
body #sexMenuBlock{display:none!important}
body #karechara-canvas-preview{display:block!important;position:absolute!important;inset:0;width:240px!important;height:400px!important;pointer-events:none;z-index:100;object-fit:contain}

body #mixBlock2{display:none!important}
body .ac-preview-actions{display:flex;position:absolute;bottom:15px;left:18px;right:18px;justify-content:center}
body .ac-preview-status{font-size:11px;color:#3d9cbc;min-height:13px;margin:6px 0 0}
body #selectArea>div.center_block,body #selectArea2>div.center_block,body #likeBlock,body #rightArea,body .pop_mix_preview,body .mix_close{display:none!important}
body ul.partsBox>li img:focus-visible{outline:3px solid #6cf;outline-offset:2px}
/* Wedding-style mobile editor: viewport locked; fixed preview and dock, panel scrolls. */
@media (max-width:780px){
 :root{--ac-m-preview:43dvh;--ac-m-dock:70px;--ac-m-accent:#6cf}
 /* The document root must remain scrollable so Safari can restore scrolling
    after editor -> snapshot -> site navigation. Only this editor body is locked. */
 html:has(>body.ac-renewal){height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:auto!important}
 body.ac-renewal{width:100%!important;height:100dvh!important;overflow:hidden!important;overscroll-behavior-y:auto!important}
 body.ac-renewal{margin:0!important;background:#fff!important}
 body.ac-renewal #container{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;margin:0!important;padding:0!important;background:#fff!important}
 body.ac-renewal #headerArea,body.ac-renewal #footerArea,body.ac-renewal #rightArea,body.ac-renewal #system_description,body.ac-renewal #likeBlock,body.ac-renewal #start_sexBlock,body.ac-renewal #mixArea2{display:none!important}
 body.ac-renewal #contents{position:absolute!important;inset:0 0 var(--ac-m-dock) 0!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;overflow:hidden!important;padding:0!important;margin:0!important;box-sizing:border-box!important}
 body.ac-renewal #contents>#leftArea,body.ac-renewal #contents>#leftArea2{width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;gap:0!important;overflow:hidden!important;position:relative!important;margin:0!important;padding:0!important}
 body.ac-renewal #mixArea{position:relative!important;top:auto!important;left:auto!important;order:0!important;display:flex!important;visibility:visible!important;flex:0 0 var(--ac-m-preview)!important;width:100%!important;height:var(--ac-m-preview)!important;min-height:260px!important;max-height:none!important;overflow:hidden!important;padding:50px 8px 4px!important;margin:0!important;box-sizing:border-box!important;border:0!important;border-radius:0!important;background:#17191e!important;box-shadow:none!important;z-index:2!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important}
 body.ac-renewal .ac-editor-topbar{position:absolute!important;top:0;left:0;right:0;height:46px;box-sizing:border-box;display:flex!important;align-items:center;justify-content:space-between;padding:0 12px!important;margin:0!important;border:0!important;z-index:4}
 body.ac-renewal .ac-editor-topbar a{color:#fff!important;font-size:13px!important;line-height:1.2;min-width:64px}
 body.ac-renewal .ac-editor-topbar .ac-brand{font-size:15px!important;color:#fff;letter-spacing:.08em}
 body.ac-renewal .ac-editor-topbar .ac-top-save{text-align:right!important;color:#fff!important}
 body.ac-renewal #mixBlock,body.ac-renewal #mixBlock_zoom{width:240px!important;height:400px!important;min-height:400px!important;position:relative!important;flex:0 0 400px!important;transform:scale(var(--ac-scale,.67))!important;transform-origin:top center!important;margin:0 auto calc((var(--ac-scale,.67) - 1)*400px)!important;border-radius:7px!important;overflow:hidden!important;box-shadow:0 2px 18px #0004!important;background:#f2f2f4!important}
 body.ac-renewal #karechara-canvas-preview{display:block!important;width:240px!important;height:400px!important}
 body.ac-renewal .ac-person-tabs{display:flex!important;order:2!important;flex:none!important;margin:7px auto 0!important;gap:10px;justify-content:center!important}
 body.ac-renewal .ac-person-tabs button{color:#ededed!important;background:#31343b!important;border:1px solid #50535a!important;border-radius:99px!important;font-size:12px!important;padding:5px 21px!important;min-height:30px!important}
 body.ac-renewal .ac-person-tabs button[aria-pressed=true]{color:#fff!important;background:var(--ac-m-accent)!important;border-color:var(--ac-m-accent)!important}
 body.ac-renewal .ac-preview-actions,body.ac-renewal .ac-preview-status{display:none!important}
 body.ac-renewal #selectArea,body.ac-renewal #selectArea2{position:relative!important;order:1!important;flex:1 1 0!important;min-height:0!important;max-height:none!important;width:100%!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-gutter:auto!important;padding:12px 12px max(22px,env(safe-area-inset-bottom))!important;margin:0!important;box-sizing:border-box!important;background:#fff!important}
 body.ac-renewal .ac-panel-heading{display:none!important}
 body.ac-renewal #menuSelectBlock{margin:0!important;padding:0!important;width:100%!important}
 body.ac-renewal #menuSelectBlock ul.mainMenu{display:none!important}
 body.ac-renewal #partsReloadArea,body.ac-renewal #fashionReloadArea,body.ac-renewal #itemReloadArea{width:100%!important;padding:0!important;margin:0!important}
 body.ac-renewal ul.partsBox{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:4px 0 18px!important;padding:0!important;float:none!important;width:100%!important}
 body.ac-renewal ul.partsBox>li{width:100%!important;min-width:0!important;min-height:68px!important;aspect-ratio:1/1!important;box-sizing:border-box!important;float:none!important;padding:5px!important;border-radius:9px!important}
 body.ac-renewal ul.partsBox>li img{max-height:100%!important;max-width:100%!important;width:auto!important;height:auto!important;object-fit:contain!important}
 body.ac-renewal .ac-outfit-removers{display:flex!important;flex-wrap:wrap;gap:7px;list-style:none!important;margin:0 0 12px!important;padding:0!important}
 body.ac-renewal .ac-outfit-removers li{display:inline-flex;min-height:34px;align-items:center;padding:4px;border:1px solid #e8e8ed;border-radius:8px;background:#fafafa}
 body.ac-renewal .ac-outfit-removers img{max-height:28px!important;width:auto!important;cursor:pointer}
 body.ac-renewal .ac-bottom-dock{position:fixed!important;left:0!important;right:0!important;bottom:0!important;height:var(--ac-m-dock)!important;padding:4px 6px max(4px,env(safe-area-inset-bottom))!important;box-sizing:border-box!important;background:#fff!important;border-top:1px solid #e9e9ee!important;z-index:1000!important;box-shadow:0 -3px 16px #0000000a!important}
 body.ac-renewal .ac-bottom-dock ul.mainMenu{height:100%;width:100%!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:4px!important;list-style:none!important;margin:0!important;padding:0!important;float:none!important;background:transparent!important}
 body.ac-renewal .ac-bottom-dock ul.mainMenu>li{display:block!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;float:none!important;list-style:none!important;background:none!important;border:0!important}
 body.ac-renewal .ac-bottom-dock ul.mainMenu>li>a{height:100%;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:3px!important;padding:4px 1px!important;box-sizing:border-box!important;border-radius:9px!important;text-decoration:none!important;color:#41414a!important}
 body.ac-renewal .ac-bottom-dock ul.mainMenu>li.btn_on>a{background:#e8f9ff!important;color:#bd315e!important}
 body.ac-renewal .ac-bottom-dock ul.mainMenu img{width:25px!important;height:25px!important;max-width:25px!important;object-fit:contain!important}
 body.ac-renewal .ac-bottom-dock ul.mainMenu .txt{display:block!important;color:inherit!important;font-size:10px!important;line-height:1.2!important;white-space:nowrap!important}
 body.ac-renewal .ac-bottom-dock ul.mainMenu>li.right{display:none!important}
}
@media (max-width:780px) and (max-height:630px){:root{--ac-m-preview:47dvh}body.ac-renewal #mixArea{min-height:225px!important}body.ac-renewal .ac-person-tabs{margin-top:3px!important}}

/* PC: full-viewport blue top header, outside the Canvas/columns. */
@media (min-width:781px){
 body.ac-renewal #headerArea{display:none!important}
 body.ac-renewal #contents{padding-top:82px!important}
 body.ac-renewal #mixArea{top:80px!important}
 body.ac-renewal .ac-editor-topbar{
  position:fixed!important;top:0!important;left:0!important;right:0!important;
  z-index:2000!important;display:grid!important;
  grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr)!important;
  align-items:center!important;gap:12px!important;width:100vw!important;max-width:100%!important;
  height:64px!important;min-height:64px!important;margin:0!important;
  padding:0 clamp(16px,3vw,46px)!important;border:0!important;
  border-radius:0!important;box-sizing:border-box!important;
  background:#6cf!important;box-shadow:0 2px 10px rgba(80,0,30,.10)!important;
 }
 body.ac-renewal .ac-editor-topbar .ac-go-home{grid-column:1;text-align:left!important;color:#fff!important;font-size:12px!important;font-weight:600!important;letter-spacing:.01em!important}
 body.ac-renewal .ac-editor-topbar .ac-brand{grid-column:2;text-decoration:none!important;color:#fff!important;font-size:19px!important;font-weight:800!important;letter-spacing:.07em!important;text-align:center!important;white-space:nowrap!important}
 body.ac-renewal .ac-editor-topbar .ac-top-save{grid-column:3;text-align:right!important;color:#fff!important;font-size:13px!important;font-weight:700!important}
 body.ac-renewal .ac-editor-topbar .ac-header-mobile{display:none!important}
 body.ac-renewal .ac-editor-topbar .ac-header-desktop{display:inline!important}
}
@media (max-width:780px){
 body.ac-renewal .ac-editor-topbar .ac-header-desktop{display:none!important}
 body.ac-renewal .ac-editor-topbar .ac-header-mobile{display:inline!important}
 body.ac-renewal .ac-editor-topbar .ac-brand{color:#fff!important;text-decoration:none!important}
}

body.ac-renewal #mixBlock_zoom.ac-canvas-active > img,body.ac-renewal #mixBlock.ac-canvas-active > img{visibility:hidden!important;}

/* Karechara green identity */
:root{--ac-accent:#cb5;--ac-m-accent:#cb5;}
body #menuSelectBlock ul.mainMenu>li.btn_on,body #menuSelectBlock ul.subMenu>li.now,body ul.partsBox>li.ac-part-selected{background:#fcf7dc!important;border-color:#cb5!important;}
body.ac-renewal #menuSelectBlock ul.subMenu>li.now{background:#fcf7dc!important;border-color:#cb5!important;}

/* Karechara brand override */
:root{--ac-w-pink:#6cf;--ac-w-rose:#6cf;--ac-current:#247fa6;--ac-current-light:#d6f1ff;--ac-pink:#6cf;--ac-gradient:linear-gradient(105deg,#6cf,#b0efff);}
body.ac-wedding-layout .ac-editor-topbar,body.ac-wedding-layout.ac-sex-men .ac-editor-topbar,body.ac-save-body .ac-save-header{background:#6cf!important;border-bottom-color:#469bbd!important;}
body.ac-wedding-layout .ac-main-navigation>li.btn_on,body.ac-wedding-layout #menuSelectBlock ul.subMenu>li.now,body.ac-save-body .ac-design-choice.is-active{background:#247fa6!important;border-color:#6cf!important;color:white!important;}
body.ac-save-body .ac-primary-save{background:#6cf!important;color:white!important;}


/* Consolidated KareChara editor layout */
/* Karechara Wedding-equivalent layout — override only, keep native charatore assets/parts. */
:root{--ac-w-pink:#6cf;--ac-w-rose:#aae7f7;--ac-w-dark:#111216;--ac-w-stage:#17181d;--ac-w-panel:#25262c;--ac-w-button:#33343c;--ac-w-line:#464850;}
.ac-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
/* Desktop architecture: all layout boundaries are relative to #contents.
   Header remains full viewport width; footer follows the editor in document flow.
   Do not restore the obsolete 1000px base layout or viewport-based fixed columns. */
@media (min-width:781px){
 body.ac-renewal{margin:0!important;width:100%!important;height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;background:#111216!important;color:#eeeef2!important}
 body.ac-wedding-layout #container{position:relative!important;display:block!important;width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:#111216!important}
 body.ac-wedding-layout #contents{display:block!important;position:relative!important;width:100%!important;max-width:1280px!important;height:calc(100dvh - 64px)!important;min-height:610px!important;overflow:hidden!important;padding:0!important;margin:64px auto 0!important;float:none!important;box-sizing:border-box!important;border:0!important;background:transparent!important}
 body.ac-wedding-layout #contents>#leftArea,body.ac-wedding-layout #contents>#leftArea2{display:block!important;position:static!important;width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;overflow:visible!important;margin:0!important;padding:0!important;float:none!important;box-sizing:border-box!important;border:0!important;background:transparent!important}
 body.ac-wedding-layout .ac-editor-topbar{display:grid!important;position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;height:64px!important;min-height:64px!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;padding:8px 28px!important;gap:12px!important;margin:0!important;border:0!important;border-bottom:1px solid #469bbd!important;border-radius:0!important;z-index:3000!important;background:#6cf!important}
 body.ac-wedding-layout .ac-editor-topbar .ac-brand{grid-column:2!important;justify-self:center!important;color:#fff!important;font-size:23px!important;font-weight:800!important;letter-spacing:.035em!important}
 body.ac-wedding-layout .ac-editor-topbar .ac-go-home{grid-column:1!important;justify-self:start!important;color:#fff!important;font-size:13px!important}
 body.ac-wedding-layout .ac-editor-topbar .ac-top-save{grid-column:3!important;justify-self:end!important;background:#fff!important;color:#195873!important;min-width:118px!important;min-height:40px!important;border-radius:99px!important;padding:10px 22px!important;text-align:center!important;box-sizing:border-box!important;font-weight:700!important}
 body.ac-wedding-layout #mixArea{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;position:absolute!important;inset:0 auto 0 0!important;top:0!important;left:0!important;right:auto!important;bottom:0!important;width:43%!important;max-width:none!important;height:100%!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:18px 18px 64px!important;border:0!important;border-right:1px solid #383940!important;border-radius:0!important;background:#17181d!important;box-shadow:none!important;z-index:30!important;box-sizing:border-box!important}
 body.ac-wedding-layout #mixBlock,body.ac-wedding-layout #mixBlock_zoom{position:relative!important;top:auto!important;left:auto!important;width:240px!important;height:400px!important;min-height:400px!important;max-height:400px!important;flex:0 0 400px!important;padding:0!important;margin:0 auto!important;border-radius:10px!important;background:#f1f2f5!important;transform:scale(var(--ac-w-preview-scale,1.15))!important;transform-origin:center center!important;overflow:hidden!important;box-shadow:0 12px 36px #0004!important}
 body.ac-wedding-layout #karechara-canvas-preview{width:240px!important;height:400px!important}
 body.ac-wedding-layout .ac-preview-actions,body.ac-wedding-layout .ac-preview-status{display:none!important}
 body.ac-wedding-layout #selectArea,body.ac-wedding-layout #selectArea2{display:flex!important;flex-direction:column!important;position:absolute!important;inset:0 0 0 43%!important;top:0!important;left:43%!important;right:0!important;bottom:0!important;width:57%!important;max-width:none!important;height:100%!important;min-height:0!important;max-height:none!important;padding:0 24px 42px!important;margin:0!important;float:none!important;overflow-x:hidden!important;overflow-y:auto!important;scrollbar-gutter:stable!important;overscroll-behavior:contain!important;background:#25262c!important;color:#f3f4f6!important;box-sizing:border-box!important;z-index:25!important;border:0!important;border-radius:0!important}
 body.ac-wedding-layout #selectArea>.ac-main-navigation,body.ac-wedding-layout #selectArea2>.ac-main-navigation{order:-3!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;position:sticky!important;top:0!important;width:100%!important;margin:0!important;padding:12px 0!important;background:#25262c!important;border-bottom:1px solid #464850!important;z-index:60!important}
 body.ac-wedding-layout .ac-main-navigation>li{list-style:none!important;float:none!important;width:100%!important;margin:0!important;padding:0!important;border:1px solid #4b4c54!important;border-radius:10px!important;background:#33343c!important;overflow:hidden!important}
 body.ac-wedding-layout .ac-main-navigation>li.btn_on{background:#247fa6!important;border-color:#6cf!important}
 body.ac-wedding-layout .ac-main-navigation>li>a{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:54px!important;padding:8px 3px!important;color:#f6f6f8!important;text-decoration:none!important}
 body.ac-wedding-layout .ac-main-navigation .txt{display:block!important;color:#f6f6f8!important;font-size:13px!important;font-weight:700!important;white-space:nowrap!important}
 body.ac-wedding-layout .ac-main-navigation img{width:27px!important;height:27px!important;max-width:27px!important;object-fit:contain!important}
 body.ac-wedding-layout #menuSelectBlock{order:-2!important;flex:none!important;display:block!important;position:sticky!important;top:78px!important;width:100%!important;max-width:none!important;margin:0 0 12px!important;padding:12px 0 14px!important;background:#25262c!important;border-bottom:1px solid #464850!important;z-index:55!important}
 body.ac-wedding-layout #menuSelectBlock ul.mainMenu{display:none!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu{display:flex!important;flex-wrap:wrap!important;gap:7px!important;justify-content:flex-start!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;overflow:visible!important;background:none!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;flex:1 1 74px!important;min-width:62px!important;max-width:118px!important;min-height:66px!important;margin:0!important;padding:6px 3px!important;border:1px solid #50515c!important;background:#34353e!important;border-radius:9px!important;color:#f4f4f6!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li.now{background:#247fa6!important;border-color:#6cf!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu img{max-height:30px!important;height:28px!important;max-width:36px!important;object-fit:contain!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu .txt{color:#f4f4f6!important;font-size:12px!important}
 body.ac-wedding-layout #partsReloadArea,body.ac-wedding-layout #fashionReloadArea,body.ac-wedding-layout #itemReloadArea{order:0!important;display:block!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;background:transparent!important;color:#f4f4f6!important;margin:0!important;padding:0 0 26px!important}
 body.ac-wedding-layout ul.partsBox{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;padding:12px!important;margin:10px 0 20px!important;background:#fff!important;border:1px solid #e5e5e9!important;border-radius:12px!important;width:100%!important;box-sizing:border-box!important}
 body.ac-wedding-layout ul.partsBox>li{display:flex!important;aspect-ratio:1!important;min-height:68px!important;padding:5px!important;margin:0!important;border:1px solid #eaeaec!important;background:#f9f9fa!important;border-radius:10px!important;align-items:center!important;justify-content:center!important}
 body.ac-wedding-layout ul.partsBox>li.ac-part-selected{border-color:#6cf!important;background:#e6f8ff!important;box-shadow:inset 0 0 0 1px #6cf!important}
 body.ac-wedding-layout ul.partsBox img{display:block!important;max-width:100%!important;max-height:95%!important;width:auto!important;height:auto!important;object-fit:contain!important}
 body.ac-wedding-layout .ac-panel-heading{display:none!important}
 body.ac-wedding-layout #system_description,body.ac-wedding-layout #rightArea,body.ac-wedding-layout #headerArea{display:none!important}
}
@media(min-width:781px) and (max-width:1100px){body.ac-wedding-layout ul.partsBox{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
@media(max-width:780px){
 body.ac-wedding-layout .ac-editor-topbar{background:var(--ac-w-pink)!important;border-bottom:1px solid #2f96c0!important}
 body.ac-wedding-layout #mixArea{background:#17181d!important}
 body.ac-wedding-layout .ac-bottom-dock{background:#25262c!important;border-top-color:#484950!important}
 body.ac-wedding-layout .ac-bottom-dock ul.mainMenu>li>a{color:#f3f4f6!important}
 body.ac-wedding-layout .ac-bottom-dock ul.mainMenu>li.btn_on>a{background:#22698d!important;color:#fff!important}
 body.ac-wedding-layout #selectArea,body.ac-wedding-layout #selectArea2{background:#25262c!important;color:#f2f2f5!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li{background:#373840!important;border-color:#51525c!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li.now{background:#255a79!important;border-color:#74d6ee!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu .txt{color:#fff!important}
 body.ac-wedding-layout ul.partsBox{padding:8px!important;background:#fff!important;border-radius:12px!important}
 body.ac-wedding-layout .ac-person-tabs button[aria-pressed=true]{background:#368aac!important;border-color:#8edbf4!important}
}


/* Wedding parity: header logo, true gallery sizing, gender-dependent selection. */
body.ac-wedding-layout{--ac-current:#6cf;--ac-current-light:#e8f9ff;--ac-current-dark:#2f6885;--ac-current-border:#8ed7ee}
body.ac-wedding-layout.ac-sex-men{--ac-current:#57b3e4;--ac-current-light:#e9f5fd;--ac-current-dark:#405d70;--ac-current-border:#9bd5f2}
body.ac-wedding-layout .ac-editor-topbar .ac-brand{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;padding:0!important;line-height:0!important}
body.ac-wedding-layout .ac-editor-topbar .ac-brand img{display:block!important;position:static!important;width:auto!important;max-width:min(240px,38vw)!important;height:auto!important;max-height:43px!important;object-fit:contain!important;filter:none!important;margin:0 auto!important}
/* The original PHP divides the screen into menus, legacy blue category headers and galleries.
   Make them use one Wedding-style dark panel, while retaining their controls. */
body.ac-wedding-layout #selectPartsArea{clear:both!important;width:100%!important;max-width:none!important;margin:0 0 16px!important;padding:0!important;float:none!important;overflow:visible!important;background:transparent!important}
body.ac-wedding-layout #selectPartsArea div.boxTitleBlock,
body.ac-wedding-layout #selectPartsArea div.boxTitleBlock.men,
body.ac-wedding-layout #selectPartsArea div.boxTitleBlock.girl,
body.ac-wedding-layout #selectPartsArea div.boxTitleBlock.item{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;overflow:visible!important;width:100%!important;height:auto!important;min-height:56px!important;box-sizing:border-box!important;border:0!important;border-radius:0!important;margin:0!important;padding:14px 0 10px!important;background:transparent!important;color:#f5f6f8!important}
body.ac-wedding-layout #selectPartsArea div.boxTitleBlock h3{float:none!important;margin:0!important;padding:0!important;border:0!important;color:#f5f6f8!important;font-size:18px!important;font-weight:750!important;line-height:1.4!important}
body.ac-wedding-layout #selectPartsArea div.boxTitleBlock h3 a{color:inherit!important}
body.ac-wedding-layout #selectPartsArea div.boxTitleBlock>img{float:none!important;display:block!important;position:static!important;width:24px!important;max-width:24px!important;height:24px!important;object-fit:contain!important;opacity:.7!important;margin:0!important;cursor:pointer!important}
body.ac-wedding-layout #selectPartsArea div.selectBlock,
body.ac-wedding-layout #selectPartsArea div.selectBlock.men,
body.ac-wedding-layout #selectPartsArea div.selectBlock.girl,
body.ac-wedding-layout #selectPartsArea div.selectBlock.item{display:block!important;float:none!important;clear:both!important;width:100%!important;box-sizing:border-box!important;border:0!important;border-radius:0!important;margin:0!important;padding:0 0 12px!important;overflow:visible!important;background:transparent!important}
body.ac-wedding-layout #selectPartsArea div.selectBlock ul.colorSelectBox{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:9px!important;width:100%!important;min-height:30px!important;overflow:visible!important;box-sizing:border-box!important;border:0!important;border-radius:0!important;margin:0 0 12px!important;padding:0!important;background:transparent!important}
body.ac-wedding-layout #selectPartsArea div.selectBlock ul.colorSelectBox li,
body.ac-wedding-layout #selectPartsArea div.selectBlock ul.colorSelectBox li.coltxt{display:inline-flex!important;align-items:center!important;float:none!important;width:auto!important;min-width:0!important;max-width:none!important;list-style:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body.ac-wedding-layout #selectPartsArea div.selectBlock ul.colorSelectBox li.coltxt{margin-right:3px!important;color:#f5f6f8!important;font-weight:600!important;font-size:12px!important;line-height:26px!important;opacity:1!important}
body.ac-wedding-layout #selectPartsArea div.selectBlock ul.colorSelectBox li img{position:static!important;display:block!important;width:23px!important;height:23px!important;max-width:23px!important;max-height:23px!important;object-fit:cover!important;border:1px solid #a4a6af!important;border-radius:50%!important;box-sizing:border-box!important;margin:0!important;padding:0!important}
/* The legacy left/width offsets on eye/nose/mouth/brow must not leak into cards. */
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:9px!important;width:100%!important;margin:0 0 12px!important;padding:16px!important;box-sizing:border-box!important;list-style:none!important;overflow:visible!important;border:1px solid #e5e6eb!important;border-radius:12px!important;background:#fff!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li,
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li.hair,
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li.icon,
body.ac-wedding-layout #selectPartsArea .item ul.partsBox>li{display:block!important;position:relative!important;float:none!important;clear:none!important;width:100%!important;max-width:none!important;min-width:0!important;min-height:0!important;height:auto!important;aspect-ratio:1/1!important;margin:0!important;padding:0!important;box-sizing:border-box!important;list-style:none!important;border:1px solid #e9e9ed!important;border-radius:10px!important;background:#f9fafb!important;overflow:hidden!important;cursor:pointer!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img{position:absolute!important;display:block!important;left:50%!important;top:50%!important;margin:0!important;padding:0!important;float:none!important;max-width:none!important;max-height:none!important;width:100%!important;height:auto!important;min-width:0!important;object-fit:contain!important;transform:translate(-50%,-50%)!important;cursor:pointer!important;border:0!important;box-shadow:none!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.face{width:100%!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.eye,
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.brow{width:145%!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.nose,
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.mouth{width:160%!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.hair{width:112%!important;top:37%!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.icon{width:70%!important}
body.ac-wedding-layout ul.partsBox>li.ac-part-selected,
body.ac-wedding-layout #selectPartsArea ul.partsBox>li.ac-part-selected{border-color:var(--ac-current)!important;background:var(--ac-current-light)!important;box-shadow:inset 0 0 0 1px var(--ac-current)!important}
/* Match the Wedding galleries for outfits as well, without changing the PHP products. */
body.ac-wedding-layout ul.fashion_list{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;clear:both!important;overflow:visible!important;float:none!important;width:100%!important;box-sizing:border-box!important;list-style:none!important;border:1px solid #e5e6eb!important;border-radius:12px!important;background:#fff!important;margin:12px 0 20px!important;padding:16px!important}
body.ac-wedding-layout ul.fashion_list>li{display:flex!important;flex-direction:column!important;justify-content:space-between!important;align-items:stretch!important;gap:4px!important;float:none!important;clear:none!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:150px!important;list-style:none!important;margin:0!important;padding:6px!important;box-sizing:border-box!important;border:1px solid #e9e9ed!important;border-radius:10px!important;background:#f9fafb!important;overflow:hidden!important;color:#30313a!important}
body.ac-wedding-layout ul.fashion_list>li.ac-part-selected{border-color:var(--ac-current)!important;background:var(--ac-current-light)!important;box-shadow:inset 0 0 0 1px var(--ac-current)!important}
body.ac-wedding-layout ul.fashion_list>li h3{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;height:auto!important;min-height:26px!important;max-height:29px!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;background:none!important;color:#252631!important;text-align:center!important;font-size:11px!important;line-height:1.25!important;font-weight:600!important;word-break:break-word!important}
body.ac-wedding-layout ul.fashion_list>li p{position:relative!important;display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;flex:1 1 auto!important;min-height:75px!important;line-height:normal!important;margin:0!important;padding:0!important;overflow:hidden!important}
body.ac-wedding-layout ul.fashion_list>li p img{position:static!important;display:block!important;float:none!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:100px!important;object-fit:contain!important;transform:none!important;margin:auto!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;cursor:pointer!important}
body.ac-wedding-layout ul.fashion_list>li dl{display:block!important;flex:0 0 auto!important;width:100%!important;margin:2px 0 0!important;padding:0!important;overflow:hidden!important}
body.ac-wedding-layout ul.fashion_list>li dl dt{display:none!important}
body.ac-wedding-layout ul.fashion_list>li dl dd.color{display:flex!important;justify-content:center!important;align-items:center!important;flex-wrap:wrap!important;gap:4px!important;width:100%!important;margin:0!important;padding:0!important}
body.ac-wedding-layout ul.fashion_list>li dl dd.color img{display:block!important;float:none!important;width:18px!important;height:18px!important;max-width:none!important;object-fit:cover!important;border:1px solid #bbb!important;border-radius:3px!important;margin:0!important;padding:0!important;box-sizing:border-box!important;cursor:pointer!important}
body.ac-wedding-layout ul.fashion_list>li dl dd.color img.ac-color-selected{outline:2px solid var(--ac-current)!important;outline-offset:1px!important}
/* Background tiles and standalone items also share the same white-card language. */
body.ac-wedding-layout ul.wallpaper_list{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;clear:both!important;width:100%!important;max-width:none!important;overflow:visible!important;box-sizing:border-box!important;list-style:none!important;background:#fff!important;border:1px solid #e5e6eb!important;border-radius:12px!important;margin:12px 0!important;padding:16px!important}
body.ac-wedding-layout ul.wallpaper_list>li{float:none!important;clear:none!important;width:100%!important;height:auto!important;aspect-ratio:1!important;max-width:none!important;min-width:0!important;margin:0!important;padding:4px!important;box-sizing:border-box!important;border:1px solid #e9e9ed!important;border-radius:10px!important;background:#fafafa!important;overflow:hidden!important}
body.ac-wedding-layout ul.wallpaper_list img{width:100%!important;height:100%!important;object-fit:cover!important;max-width:none!important;margin:0!important}
/* The same semantic selected color for every editor navigation and gender switch. */
body.ac-wedding-layout .ac-person-tabs button[aria-pressed="true"]{background:var(--ac-current-dark)!important;border-color:var(--ac-current-border)!important;color:#fff!important}
body.ac-wedding-layout .ac-main-navigation>li.btn_on,
body.ac-wedding-layout #menuSelectBlock ul.mainMenu>li.btn_on{background:var(--ac-current-dark)!important;border-color:var(--ac-current-border)!important}
body.ac-wedding-layout #menuSelectBlock ul.subMenu>li.now{background:var(--ac-current-dark)!important;border-color:var(--ac-current-border)!important}
@media (min-width:781px) and (max-width:1100px){body.ac-wedding-layout #selectPartsArea ul.partsBox,body.ac-wedding-layout ul.fashion_list,body.ac-wedding-layout ul.wallpaper_list{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
@media (max-width:780px){
 body.ac-wedding-layout .ac-editor-topbar .ac-brand img{max-width:min(170px,43vw)!important;max-height:32px!important}
 body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox,body.ac-wedding-layout ul.fashion_list,body.ac-wedding-layout ul.wallpaper_list{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;padding:8px!important}
 body.ac-wedding-layout ul.fashion_list>li{padding:4px!important;min-height:126px!important}
 body.ac-wedding-layout ul.fashion_list>li p{min-height:64px!important}
 body.ac-wedding-layout ul.fashion_list>li p img{max-height:76px!important}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li.now{background:var(--ac-current-dark)!important;border-color:var(--ac-current-border)!important}
 body.ac-wedding-layout .ac-bottom-dock ul.mainMenu>li.btn_on>a{background:var(--ac-current-dark)!important;color:#fff!important}
 body.ac-wedding-layout .ac-person-tabs button[aria-pressed="true"]{background:var(--ac-current-dark)!important;border-color:var(--ac-current-border)!important}
}
/* Preserve computed Canvas zoom on short desktop viewports; old height-based .8
   fallback used to make the character far smaller than the Wedding preview. */
@media (min-width:781px){
 body.ac-wedding-layout #mixBlock,body.ac-wedding-layout #mixBlock_zoom{
  transform:scale(var(--ac-w-preview-scale,1.15))!important;
 }
 body.ac-wedding-layout .ac-person-tabs{
  margin-top:calc(24px + (var(--ac-w-preview-scale,1.15) - 1)*200px)!important;
 }
}

/* Batch parity: Wedding-like selection headers and clear actions */
body.ac-wedding-layout #selectPartsArea .boxTitleBlock,
body.ac-wedding-layout #fashionReloadArea .ac-fashion-category-title{
 position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
 gap:12px!important;min-height:42px!important;margin:12px 0 6px!important;padding:0!important;
 background:transparent!important;border:0!important;border-radius:0!important;color:#f7f7f9!important;
}
body.ac-wedding-layout #selectPartsArea .boxTitleBlock h3,
body.ac-wedding-layout #fashionReloadArea .ac-fashion-category-title strong{font-size:19px!important;line-height:1.4!important;font-weight:700!important;color:#f7f7f9!important;flex:1!important}
body.ac-wedding-layout #selectPartsArea .boxTitleBlock span.partsReload{display:none!important}
body.ac-wedding-layout #selectPartsArea .boxTitleBlock>img,
body.ac-wedding-layout .ac-fashion-clear{display:block!important;position:static!important;flex:none!important;width:27px!important;height:27px!important;margin:0!important;padding:2px!important;border:0!important;background:transparent!important;object-fit:contain!important;opacity:.78!important;cursor:pointer!important}
body.ac-wedding-layout #fashionReloadArea>h2,body.ac-wedding-layout #fashionReloadArea .ac-fashion-legacy-title{display:none!important}
body.ac-wedding-layout .ac-fashion-category-title{width:100%!important}
body.ac-wedding-layout ul.fashion_list>li h3{font-size:10px!important;line-height:1.25!important;color:#858995!important;font-weight:500!important;min-height:24px!important;max-height:26px!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.hair{top:calc(50% + 20px)!important}
/* Supplementary item shortcuts (Glass / Goods / Pets / Icon). */
body.ac-wedding-layout .ac-item-shortcuts{display:flex!important;align-items:center!important;gap:7px!important;width:100%!important;margin:4px 0 14px!important;padding:0 0 12px!important;border-bottom:1px solid #484950!important;background:transparent!important}
body.ac-wedding-layout .ac-item-shortcuts button{appearance:none!important;border:1px solid #50515c!important;border-radius:9px!important;background:#34353c!important;color:#f7f7f9!important;padding:9px 13px!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important}
body.ac-wedding-layout .ac-item-shortcuts button:focus-visible{outline:2px solid var(--ac-current)!important}
body.ac-wedding-layout #menuSelectBlock .subMenu.ac-empty-submenu{display:none!important}
/* Mobile panel toggle: identical messages and intent to Wedding's drawer. */
body.ac-wedding-layout .ac-drawer-toggle{display:none!important}
@media(max-width:780px){
 body.ac-wedding-layout .ac-drawer-toggle{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
 width:100%!important;min-height:48px!important;border:0!important;border-radius:0!important;
 padding:0 16px!important;background:#303139!important;color:white!important;font-size:13px!important;font-weight:700!important;cursor:pointer!important;flex:none!important}
 body.ac-wedding-layout #selectArea,body.ac-wedding-layout #selectArea2{padding-top:0!important}
 body.ac-wedding-layout.ac-panel-collapsed #mixArea{flex-basis:calc(100dvh - var(--ac-m-dock) - 54px)!important;height:calc(100dvh - var(--ac-m-dock) - 54px)!important;max-height:calc(100dvh - var(--ac-m-dock) - 54px)!important}
 body.ac-wedding-layout.ac-panel-collapsed #selectArea,body.ac-wedding-layout.ac-panel-collapsed #selectArea2{flex:0 0 54px!important;min-height:54px!important;max-height:54px!important;overflow:hidden!important;padding:0!important}
 body.ac-wedding-layout.ac-panel-collapsed #selectArea>*:not(.ac-drawer-toggle),body.ac-wedding-layout.ac-panel-collapsed #selectArea2>*:not(.ac-drawer-toggle){display:none!important}
 body.ac-wedding-layout.ac-panel-collapsed #selectArea .ac-drawer-toggle,body.ac-wedding-layout.ac-panel-collapsed #selectArea2 .ac-drawer-toggle{display:flex!important}
 body.ac-wedding-layout .ac-item-shortcuts{overflow-x:auto!important;white-space:nowrap!important;gap:5px!important;padding:0 8px 8px!important}
 body.ac-wedding-layout .ac-item-shortcuts button{padding:8px 9px!important;font-size:11px!important}
 body.ac-wedding-layout #selectPartsArea .boxTitleBlock h3{font-size:17px!important}
}

/* 2026-10-26: requested parity adjustments; applied AFTER all legacy overrides. */
body.ac-wedding-layout #selectPartsArea .selectBlock ul.partsBox>li img.hair{
  top:calc(50% - 10px)!important; /* 10px ABOVE tile centre, rather than +20px */
}
body.ac-wedding-layout ul.fashion_list>li h3{font-size:8px!important;line-height:1.3!important;font-weight:500!important}
body.ac-wedding-layout #fashionReloadArea .ac-fashion-category-title strong{font-size:18px!important;color:#fff!important}
/* One image-creation entry only: the top-right header. */
body.ac-wedding-layout #selectArea .center_block,
body.ac-wedding-layout #selectArea2 .center_block,
body.ac-wedding-layout #selectArea .ac-preview-actions,
body.ac-wedding-layout #selectArea2 .ac-preview-actions,
body.ac-wedding-layout .ac-preview-actions{display:none!important}
/* Wallpaper has no secondary categories. A blank sticky block must not consume space. */
body.ac-wedding-layout.ac-page-wallpaper #menuSelectBlock{display:none!important}
/* The user should see the shortcuts directly under the main nav on the Items tab. */
body.ac-wedding-layout.ac-page-item #menuSelectBlock{padding-top:6px!important;padding-bottom:8px!important}
body.ac-wedding-layout .ac-item-shortcuts{margin:0!important;padding:5px 0!important;border-bottom:0!important}
body.ac-wedding-layout .ac-item-shortcuts button{font-size:11px!important;padding:6px 10px!important;min-height:32px!important}
@media(max-width:780px){
 body.ac-wedding-layout .ac-drawer-toggle{justify-content:flex-end!important;text-align:right!important;padding-right:20px!important}
 body.ac-wedding-layout .ac-item-shortcuts{gap:5px!important}
 body.ac-wedding-layout .ac-item-shortcuts button{font-size:10px!important;padding:5px 8px!important;min-height:29px!important}
}

/* Distinguish desktop home link from mobile close link. */
body.ac-wedding-layout .ac-header-mobile{display:none!important}
@media(max-width:780px){
 body.ac-wedding-layout .ac-header-desktop{display:none!important}
 body.ac-wedding-layout .ac-header-mobile{display:inline!important}
}

/* v39: Mobile release polish. No changes to selected items or generated image. */
@media (max-width:780px){
 body.ac-wedding-layout .ac-editor-topbar .ac-top-save{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  justify-self:end!important;white-space:nowrap!important;
  min-width:94px!important;min-height:36px!important;
  padding:8px 13px!important;margin-right:4px!important;
  border:1px solid rgba(255,255,255,.88)!important;border-radius:999px!important;
  background:#fff!important;color:#a52f60!important;
  box-shadow:0 2px 6px rgba(73,13,42,.17)!important;
  font-size:13px!important;font-weight:800!important;text-decoration:none!important;
  box-sizing:border-box!important;
 }
 /* Editing mode starts open in PHP, so its preview never shrinks during
    navigation. Keep the 240x400 artboard at 100% and crop below the face. */
 body.ac-wedding-layout.ac-panel-open #mixArea{
  justify-content:flex-start!important;overflow:hidden!important;
 }
 body.ac-wedding-layout.ac-panel-open #mixBlock,
 body.ac-wedding-layout.ac-panel-open #mixBlock_zoom{
  flex:none!important;transform:scale(1)!important;
  transform-origin:top center!important;margin:0 auto!important;
 }
 /* Preview mode fits a larger *complete* image into the area above the
    drawer, instead of leaving a large unused gap under a 0.9x image. */
 body.ac-wedding-layout.ac-panel-collapsed #mixArea{
  justify-content:center!important;padding:50px 12px 8px!important;
 }
 body.ac-wedding-layout.ac-panel-collapsed #mixBlock,
 body.ac-wedding-layout.ac-panel-collapsed #mixBlock_zoom{
  transform:scale(var(--ac-scale,1))!important;
  transform-origin:center center!important;margin:0 auto!important;
 }
 /* Keep any optional person switch below the editing viewport. */
 body.ac-wedding-layout.ac-panel-open .ac-person-tabs{
  margin-top:18px!important;flex-shrink:0!important;
 }
}

@media(min-width:781px){body.ac-wedding-layout .ac-outfit-removers{display:flex!important;flex-wrap:wrap!important;gap:7px!important;align-items:center!important;position:static!important;visibility:visible!important;opacity:1!important;list-style:none!important;margin:8px 0 12px!important;padding:0!important;}body.ac-wedding-layout .ac-outfit-removers li{display:inline-flex!important;align-items:center!important;background:#fafafa!important;border-radius:8px!important;padding:4px!important;}body.ac-wedding-layout .ac-outfit-removers img{display:block!important;max-height:28px!important;width:auto!important;cursor:pointer!important;}}

/* KareChara blue brand palette */
:root{--ac-w-pink:#6cf;--ac-w-rose:#b9edff}
body.ac-wedding-layout,body.ac-wedding-layout.ac-sex-men{--ac-current:#469bbd;--ac-current-light:#e5f5ff;--ac-current-dark:#246c91;--ac-current-border:#9eddf4}
body.ac-wedding-layout .ac-editor-topbar{background:#6cf!important;border-bottom-color:#469bbd!important}
body.ac-wedding-layout .ac-editor-topbar .ac-top-save{background:#fff!important;color:#195873!important}
body.ac-wedding-layout .ac-main-navigation>li.btn_on,body.ac-wedding-layout #menuSelectBlock ul.subMenu>li.now{background:#247fa6!important;border-color:#6cf!important;color:#fff!important}
body.ac-wedding-layout .ac-main-navigation>li.btn_on .txt,body.ac-wedding-layout #menuSelectBlock ul.subMenu>li.now .txt{color:#fff!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.colorSelectBox li img{border-radius:50%!important;border:1px solid #8a8c96!important;box-shadow:0 0 0 2px transparent!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.colorSelectBox li.ac-color-selected img{border-color:#fff!important;outline:3px solid #6cf!important;outline-offset:2px!important;box-shadow:0 0 0 1px #fff!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.colorSelectBox li a{display:inline-flex!important;border-radius:50%!important;align-items:center!important;justify-content:center!important;padding:2px!important}
body.ac-wedding-layout #selectPartsArea .selectBlock ul.colorSelectBox li a:focus-visible{outline:2px solid #6cf;outline-offset:4px}
body.ac-wedding-layout #menuSelectBlock .kc-gacha-tab .kc-gacha-symbol{display:block;color:#fff;font-size:30px;font-weight:700;line-height:29px;height:30px}
body.ac-wedding-layout #menuSelectBlock .kc-gacha-tab a{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;text-decoration:none!important;color:#fff!important}
/* Gacha must not take vertical space on the default Face panel. */
body.ac-wedding-layout:not(.kc-gacha-active) .kc-gacha{display:none!important}
body.ac-wedding-layout.kc-gacha-active #partsReloadArea{display:none!important}
body.ac-wedding-layout.kc-gacha-active #menuSelectBlock ul.subMenu>li:not(.kc-gacha-tab).now{background:#34353e!important;border-color:#50515c!important}
/* Footer is *outside* #contents, never fixed inside the edit viewport. */
.kc-editor-footer{display:block;width:100%;background:#fff;color:#303037;border-top:1px solid #e5e6ec}
.kc-editor-footer-inner{max-width:1280px;margin:0 auto;padding:24px 32px 56px;box-sizing:border-box}
.kc-editor-bottom-ad{min-height:120px;width:100%;padding:0 0 28px;margin:0 0 32px;border-bottom:1px solid #e7e7eb;box-sizing:border-box}
.kc-editor-bottom-ad .adsbygoogle{width:100%;max-width:100%;min-width:0}
.kc-ad-caption{color:#92939a;font-size:11px;text-align:center;margin:0 0 8px}
.kc-editor-help{max-width:890px;margin:0 auto;font-size:14px;line-height:1.85;color:#4b4b54}
.kc-editor-help h2{font-size:22px;color:#202027;margin:0 0 16px}
.kc-editor-help h3{font-size:17px;color:#292933;margin:23px 0 8px}
.kc-editor-help p,.kc-editor-help ol{margin:0 0 16px}.kc-editor-help ol{padding-left:24px}
.kc-help-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px!important}
.kc-editor-help a{color:#6ed6ff;text-decoration:underline}
@media(max-width:780px){
 .kc-editor-footer{display:none!important} /* only snapshot provides help/ad on phones */
 
 
 
}


/* Gacha controls */
/* KareChara gacha experiment: scoped entirely to the face editing screen. */
body.ac-wedding-layout .kc-gacha {
  display:flex!important;flex-direction:column!important;gap:10px!important;
  width:100%!important;box-sizing:border-box!important;
  padding:15px!important;margin:12px 0 18px!important;
  background:#313239!important;color:#fff!important;
  border:1px solid #545963!important;border-radius:12px!important;
}
body.ac-wedding-layout .kc-gacha-heading{display:flex!important;align-items:baseline!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:4px 10px!important;}
body.ac-wedding-layout .kc-gacha-heading strong{font-size:17px!important;color:#fff!important;font-weight:800!important;}
body.ac-wedding-layout .kc-gacha-heading small{font-size:11px!important;color:#c5c8d0!important;}
body.ac-wedding-layout button.kc-gacha-spin{display:block!important;width:100%!important;min-height:48px!important;padding:11px 14px!important;margin:0!important;border:0!important;border-radius:9px!important;background:#32a9dc!important;color:#ffffff!important;font-size:17px!important;font-weight:800!important;cursor:pointer!important;}
body.ac-wedding-layout button.kc-gacha-spin:hover:not(:disabled){background:#6ccef6!important;}
body.ac-wedding-layout button.kc-gacha-spin:disabled{opacity:.55!important;cursor:wait!important;}
body.ac-wedding-layout .kc-gacha-lock-title{font-size:11px!important;color:#d1d4db!important;line-height:1.4!important;}
body.ac-wedding-layout .kc-gacha-chips{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:6px!important;}
body.ac-wedding-layout button.kc-gacha-chip{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;min-height:34px!important;margin:0!important;padding:6px 2px!important;border:1px solid #646774!important;border-radius:7px!important;background:#444650!important;color:#f7f8fa!important;font-weight:700!important;font-size:12px!important;white-space:nowrap!important;cursor:pointer!important;}
body.ac-wedding-layout button.kc-gacha-chip.kc-gacha-locked{background:#dceff7!important;color:#6c1435!important;border-color:#6bcaef!important;}
body.ac-wedding-layout button.kc-gacha-chip:disabled{opacity:.6!important;cursor:not-allowed!important;}
body.ac-wedding-layout .kc-gacha :is(button):focus-visible{outline:3px solid #fff!important;outline-offset:2px!important;}
body.ac-wedding-layout .kc-gacha-footer{display:flex!important;flex-wrap:wrap!important;justify-content:space-between!important;gap:4px 12px!important;font-size:11px!important;color:#bdc1cc!important;}
body.ac-wedding-layout .kc-gacha-status{color:#d8f6ff!important;}
@media(max-width:780px){
 body.ac-wedding-layout .kc-gacha{padding:10px!important;margin:6px 0 12px!important;gap:8px!important;}
 body.ac-wedding-layout .kc-gacha-heading strong{font-size:15px!important;}
 body.ac-wedding-layout button.kc-gacha-spin{min-height:43px!important;font-size:15px!important;padding:8px!important;}
 body.ac-wedding-layout .kc-gacha-chips{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
 body.ac-wedding-layout button.kc-gacha-chip{min-height:32px!important;}
}

/* Three local avatar keeps: a filled slot recalls, an empty slot saves. */
body.ac-wedding-layout .kc-gacha-slot-heading{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:8px!important;margin-top:3px!important;font-size:12px!important;color:#fff!important;}
body.ac-wedding-layout .kc-gacha-slot-heading strong{font-size:13px!important;font-weight:800!important;}
body.ac-wedding-layout .kc-gacha-slot-heading span{font-size:10px!important;color:#c5c8d0!important;}
body.ac-wedding-layout .kc-gacha-slots{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;}
body.ac-wedding-layout .kc-gacha-slot{position:relative!important;min-width:0!important;}
body.ac-wedding-layout button.kc-gacha-slot-main{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:5px!important;width:100%!important;min-width:0!important;height:65px!important;padding:7px 9px!important;border:1px dashed #767b88!important;border-radius:8px!important;background:#42434d!important;color:#eef1f5!important;cursor:pointer!important;}
body.ac-wedding-layout .kc-gacha-slot-filled button.kc-gacha-slot-main{border:1px solid #6bc8ea!important;background:#31596c!important;padding-right:20px!important;}
body.ac-wedding-layout .kc-gacha-slot-main:hover:not(:disabled){background:#4d5661!important;}
body.ac-wedding-layout .kc-gacha-slot-thumb{width:42px!important;height:48px!important;flex-shrink:0!important;border-radius:5px!important;background:#fff!important;object-fit:cover!important;}
body.ac-wedding-layout .kc-gacha-slot-empty{font-size:22px!important;line-height:1!important;color:#c8d1da!important;}
body.ac-wedding-layout .kc-gacha-slot-caption{display:flex!important;flex-direction:column!important;align-items:center!important;gap:2px!important;font-size:10px!important;white-space:nowrap!important;}
body.ac-wedding-layout .kc-gacha-slot-caption strong{font-size:14px!important;}
body.ac-wedding-layout button.kc-gacha-slot-delete{position:absolute!important;top:2px!important;right:2px!important;display:flex!important;align-items:center!important;justify-content:center!important;width:23px!important;height:23px!important;margin:0!important;padding:0!important;border:1px solid #b0b4bf!important;border-radius:50%!important;background:#212936!important;color:#fff!important;font-size:17px!important;line-height:1!important;cursor:pointer!important;z-index:1!important;}
body.ac-wedding-layout button.kc-gacha-slot-delete[hidden],body.ac-wedding-layout .kc-gacha-slot-thumb[hidden],body.ac-wedding-layout .kc-gacha-slot-empty[hidden]{display:none!important;}
body.ac-wedding-layout button.kc-gacha-slot-delete:hover{background:#3b84b9!important;}
body.ac-wedding-layout .kc-gacha-slot button:disabled{cursor:wait!important;opacity:.65!important;}
@media(max-width:780px){body.ac-wedding-layout .kc-gacha-slots{gap:5px!important;}body.ac-wedding-layout button.kc-gacha-slot-main{height:55px!important;padding:4px!important;}body.ac-wedding-layout .kc-gacha-slot-filled button.kc-gacha-slot-main{padding-right:16px!important;}body.ac-wedding-layout .kc-gacha-slot-thumb{width:32px!important;height:42px!important;}body.ac-wedding-layout .kc-gacha-slot-caption{font-size:9px!important;}}

/* Cleaned dark document shell. The side-rail space and lower footer are unobtrusive. */
@media (min-width:781px){
 html,body.ac-renewal,body.ac-wedding-layout #container{background:#111216!important}
 body.ac-wedding-layout #contents{background:#17181d!important}
 body.ac-wedding-layout .ac-editor-topbar{position:fixed!important}
}
body.ac-wedding-layout #menuSelectBlock ul.subMenu>li>a{
 display:flex!important;flex-direction:column!important;align-items:center!important;
 justify-content:center!important;gap:4px!important;width:100%!important;
 min-height:50px!important;color:#fff!important;text-align:center!important;
 text-decoration:none!important;line-height:1.3!important;
}
body.ac-wedding-layout #menuSelectBlock ul.subMenu>li>a img{display:block!important;margin:0 auto!important;flex:none!important}
body.ac-wedding-layout #menuSelectBlock ul.subMenu>li>a .txt{display:block!important;position:static!important;float:none!important;width:100%!important;max-width:100%!important;white-space:nowrap!important;text-align:center!important;font-size:11px!important}
/* Mobile editor: compact, single-row horizontal part tabs. Do not inherit the
   desktop wrapping, growing and minimum tile heights. All 7 options remain
   accessible by swiping, rather than squeezing the icons into the viewport. */
@media(max-width:780px){
 body.ac-renewal .ac-editor-topbar{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:1001!important}
 body.ac-wedding-layout #menuSelectBlock{
  position:sticky!important;top:0!important;width:100%!important;min-width:0!important;
  margin:0 0 7px!important;padding:6px 0 5px!important;
  background:#25262c!important;border-bottom:1px solid #484950!important;
 }
 body.ac-wedding-layout #menuSelectBlock ul.subMenu{
  display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;
  align-items:stretch!important;gap:6px!important;width:100%!important;
  min-width:0!important;max-width:100%!important;margin:0!important;
  padding:2px 1px 6px!important;box-sizing:border-box!important;
  overflow-x:auto!important;overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;
 }
 body.ac-wedding-layout #menuSelectBlock ul.subMenu::-webkit-scrollbar{display:none}
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li{
  display:flex!important;flex:0 0 58px!important;width:58px!important;
  min-width:58px!important;max-width:58px!important;
  height:56px!important;min-height:56px!important;max-height:56px!important;
  margin:0!important;padding:3px 2px!important;box-sizing:border-box!important;
  border-radius:8px!important;
 }
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li>a{
  width:100%!important;height:100%!important;min-height:0!important;
  padding:1px!important;box-sizing:border-box!important;gap:3px!important;
 }
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li>a img{
  display:block!important;width:24px!important;height:24px!important;
  max-width:24px!important;max-height:24px!important;object-fit:contain!important;
 }
 body.ac-wedding-layout #menuSelectBlock ul.subMenu>li>a .txt{
  font-size:10px!important;line-height:1.15!important;white-space:nowrap!important;
 }
 body.ac-wedding-layout #menuSelectBlock .kc-gacha-tab .kc-gacha-symbol{
  font-size:23px!important;line-height:24px!important;height:24px!important;
 }
}
.kc-editor-footer{background:#111216!important;border-top:1px solid #34353e!important;color:#dadbe1!important}
.kc-editor-footer-inner{background:#111216!important}
.kc-editor-bottom-ad{border-bottom:1px solid #34353e!important}
.kc-ad-caption{color:#9da0aa!important}
.kc-editor-help{color:#c4c5ce!important}
.kc-editor-help h2,.kc-editor-help h3{color:#fff!important}
.kc-editor-help a{color:#b9edff!important}
@media(max-width:780px){.kc-editor-footer{display:none!important}}

/* Server-rendered navigation: never relocated while the page is becoming visible. */
@media(min-width:781px){body.ac-wedding-layout .ac-bottom-dock{display:none!important}}
@media(max-width:780px){
 body.ac-wedding-layout #selectArea>.ac-main-navigation,body.ac-wedding-layout #selectArea2>.ac-main-navigation{display:none!important}
 body.ac-wedding-layout .ac-bottom-dock{display:block!important}
}
