/* TAROKUN landing shell — extracted from simsimi-style-character-landing.html */
:root{--bg:#0f0e0f;--panel:#191718;--line:#383335;--muted:#a9a1a4;--text:#f8f4f5;--pink:#ff4f78;--yellow:#ffd33d}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Noto Sans KR",system-ui,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer;border:0}.layout{display:grid;grid-template-columns:265px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#1a1819;border-right:1px solid var(--line);padding:28px 12px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 16px 38px;font-weight:900;font-size:25px;letter-spacing:-1px}.brand-mark{width:42px;height:42px;border:8px solid var(--yellow);border-radius:50%;position:relative}.brand-mark:after{content:"";position:absolute;height:6px;width:22px;left:2px;top:10px;background:var(--yellow);border-radius:8px}.nav-main-services{margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.nav-main-services a{font-weight:900}
.nav-secondary a{opacity:.92}.nav a{padding:7px 9px;border-radius:9px;font-weight:800;font-size:18px;display:flex;gap:13px;align-items:center}.nav a:hover,.nav a.active{background:#555052}.side-note{margin-top:auto;padding:18px 16px;color:#8d8588;font-size:12px;line-height:1.6}.main{min-width:0}.topbar{height:98px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:22px;padding:0 5%;position:sticky;top:0;background:rgba(15,14,15,.94);backdrop-filter:blur(14px);z-index:5}.search{max-width:650px;flex:1;height:54px;border:1px solid #615b5e;border-radius:30px;background:#211f20;padding:0 22px;display:flex;align-items:center;gap:14px;color:#777}.search input{background:none;border:0;outline:0;width:100%;font-size:16px}.login{margin-left:auto;border-radius:28px;background:var(--pink);padding:14px 27px;font-weight:900}.content{padding:48px 5% 0}.eyebrow{color:#c7b7c1;letter-spacing:3px;font-size:13px;font-weight:900}.hero h1{font-size:clamp(45px,6vw,82px);line-height:1.03;letter-spacing:-5px;max-width:800px;margin:20px 0}.hero h1 em{font-style:normal;color:var(--pink)}.hero p{color:#c0b7ba;font-size:19px;margin:0 0 68px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-head h2{font-size:34px;letter-spacing:-2px;margin:0 0 20px}.section-head small{color:var(--muted);margin-bottom:24px}.chips{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 26px}.chip{background:#171a24;border:1px solid #60677f;border-radius:20px;padding:8px 15px;font-size:13px}.chip.active,.chip:hover{background:var(--pink);border-color:var(--pink);color:#fff}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{background:#191b2a;border:1px solid #3a425e;border-radius:14px;overflow:hidden;min-width:0;transition:transform .2s,border-color .2s;cursor:pointer}.card-media{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;background:#25283b}.card-media .card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s ease}.card-media .card-img-bg{opacity:0}.card-media.show-bg .card-img-char{opacity:0}.card-media.show-bg .card-img-bg{opacity:1}.card:hover{transform:translateY(-4px);border-color:var(--pink)}.card>img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:#25283b}.card-body{padding:14px 15px 17px}.card-meta{font-size:12px;color:#aeb5d2;margin-bottom:9px}.card h3{font-size:20px;margin:0 0 7px;letter-spacing:-.5px}.card p{margin:0;color:#bcb8c4;font-size:13px;line-height:1.5;min-height:39px}.pricing{border-top:1px solid var(--line);margin-top:74px;padding:38px 0 60px}.pricing h2{margin:5px 0 22px;font-size:34px;letter-spacing:-2px}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan{border:1px solid var(--line);border-radius:15px;padding:25px;background:#191718}.plan.featured{border-color:var(--pink)}.plan small{color:#d2c7ca;letter-spacing:1px}.plan h3{font-size:30px;margin:10px 0}.plan p{color:#b8afb2;line-height:1.7}.plan button{background:#2b292a;border:1px solid #5a5356;padding:10px 14px;border-radius:9px}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(430px,100vw);background:#131522;border-left:1px solid #3d435d;z-index:20;transform:translateX(105%);transition:transform .25s;display:flex;flex-direction:column}.drawer.open{transform:translateX(0)}.drawer-head{padding:18px;border-bottom:1px solid #383e55;display:flex;gap:13px;align-items:center}.drawer-head img{width:48px;height:64px;object-fit:cover;border-radius:9px}.drawer-head h3{margin:0 0 4px}.drawer-head p{margin:0;color:#9da4bd;font-size:12px}.close{margin-left:auto;background:#2b3048;border:1px solid #59617f;padding:8px 12px;border-radius:8px}.messages{flex:1;overflow:auto;padding:20px 16px;display:flex;flex-direction:column;gap:12px}.bubble{max-width:88%;padding:12px 14px;border-radius:14px;line-height:1.55;font-size:14px}.bubble.ai{background:#1d2336;align-self:flex-start}.bubble.me{background:#bd4964;align-self:flex-end}.chat-form{border-top:1px solid #383e55;padding:13px;display:flex;gap:9px}.chat-form input{flex:1;background:#171c2d;border:1px solid #4a5372;border-radius:9px;padding:12px;outline:0}.send{background:var(--pink);border-radius:9px;padding:0 18px;font-weight:900}.site-footer{border-top:1px solid var(--line);padding:30px 5%;display:flex;justify-content:space-between;color:#958c8f;font-size:13px}.site-footer strong{color:var(--text);font-size:18px}.site-footer a{margin-left:18px}.empty{border:1px dashed #555b74;padding:45px;text-align:center;color:#9ea4b9;grid-column:1/-1;border-radius:14px}
@media(max-width:1050px){.layout{grid-template-columns:210px 1fr}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero h1{font-size:58px}}
@media(max-width:720px){.layout{display:block}.sidebar{position:static;height:auto;padding:12px}.brand{padding:8px 12px 14px}.nav{display:flex;overflow:auto}.nav a{white-space:nowrap;font-size:14px;padding:10px}.side-note{display:none}.topbar{height:76px;padding:0 16px}.search{height:45px}.login{padding:11px 16px}.content{padding:30px 16px 0}.hero h1{font-size:47px;letter-spacing:-3px}.hero p{font-size:16px;margin-bottom:42px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card h3{font-size:16px}.card-body{padding:11px}.plans{grid-template-columns:1fr}.site-footer{display:block}.site-footer a{margin:14px 14px 0 0;display:inline-block}}

.nbti-watermark-host{position:relative;display:block;overflow:hidden}
.nbti-watermark-host::after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:35%;aspect-ratio:1;background:url('/assets/tarokun-symbol.png') center/contain no-repeat;opacity:.1;filter:brightness(0) invert(1);pointer-events:none;z-index:2}
.card-thumb-wrap.nbti-watermark-host::after,.card-thumb.nbti-watermark-host::after{z-index:1}
#catalog .card-ai-badge{z-index:6}
#catalog .card{position:relative}
.card-follow-btn{position:absolute;top:8px;left:8px;z-index:6;display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(255,107,145,.45);background:rgba(15,14,15,.78);color:#ffd0dc;font-size:11px;font-weight:800;line-height:1;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.card-follow-btn:hover{border-color:#ff6b91;color:#fff}
.card-follow-btn.active{background:rgba(255,107,145,.22);border-color:#ff6b91;color:#fff}
.admin-ranking-toggle{display:inline-flex;align-items:center;gap:8px;margin-left:auto;font-size:13px;font-weight:700;color:#e8e2e5}
.admin-ranking-user-detail{margin-top:14px;padding-top:14px;border-top:1px dashed #5a5356}
.admin-ranking-user-detail h3{margin:0 0 10px;font-size:15px;color:#fff}
.char-profile-hero .nbti-watermark-host{width:92px;height:112px;border-radius:14px}
@media(max-width:720px){.char-profile-hero .nbti-watermark-host{width:72px;height:88px}}

.character-info{display:none;padding:14px 18px;border-bottom:1px solid #383e55;background:#171a29}.character-info.show{display:block}.character-info strong{display:block;color:#ff9ab0;font-size:11px;letter-spacing:.08em;margin-top:10px}.character-info strong:first-child{margin-top:0}.character-info p{margin:4px 0 0;color:#c8cbe0;font-size:12px;line-height:1.5}

/* 모바일 우선 인터랙션 오버라이드 */
.menu-toggle{display:none;position:fixed;right:16px;top:16px;width:46px;height:46px;border:1px solid #655e62;border-radius:50%;background:#211f20;color:#fff;font-size:23px;line-height:1;z-index:50;box-shadow:0 8px 24px rgba(0,0,0,.28)}
.menu-shade{display:none;position:fixed;inset:0;background:rgba(0,0,0,.56);z-index:29}
.menu-shade.open{display:block}
@media(max-width:720px){
  .layout{display:block;min-height:100vh}
  .sidebar{display:none;position:fixed;right:12px;left:12px;top:72px;height:auto;max-height:calc(100vh - 88px);overflow:auto;padding:18px;background:#1a1819;border:1px solid #514b4e;border-radius:17px;z-index:30;box-shadow:0 18px 55px rgba(0,0,0,.55)}
  .sidebar.mobile-open{display:flex}
  .brand{padding:4px 8px 20px;font-size:22px}
  .nav{display:grid;gap:5px}
  .nav a{padding:6px 6px;font-size:16px}
  .side-note{display:block;margin-top:15px;padding:15px 8px}
  .menu-toggle{display:block}
  .topbar{height:76px;padding:0 16px;border-bottom:1px solid var(--line)}
  .topbar .topbar-actions{display:flex!important}
  .search{height:46px;padding:0 17px;max-width:none}
  .content{padding:32px 16px 0}
  .hero h1{font-size:clamp(42px,12vw,58px);line-height:1.06;letter-spacing:-3px;margin:20px 0 24px}
  .hero p{font-size:16px;line-height:1.55;margin-bottom:54px}
  .section-head h2{font-size:32px;margin-bottom:16px}
  .section-head small{margin-bottom:21px}
  .chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:7px;margin-bottom:21px;scrollbar-width:none}
  .chips::-webkit-scrollbar{display:none}
  .chip{flex:0 0 auto;padding:9px 16px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .card>img{aspect-ratio:3/4}
  .card-body{padding:11px 10px 13px}
  .card-meta{font-size:10px;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .card h3{font-size:16px;margin-bottom:5px}
  .card p{font-size:12px;line-height:1.4;min-height:34px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pricing{margin-top:54px;padding:30px 0 46px}
  .pricing h2{font-size:29px;line-height:1.2}
  .plans{grid-template-columns:1fr;gap:12px}
  .plan{padding:21px}
  .site-footer{display:block;padding:25px 16px}
  .site-footer>div+div{margin-top:20px;line-height:2}
  .site-footer a{margin:0 15px 0 0}
  .drawer{width:100%;border-left:0}
}
@media(min-width:721px){
  .layout{display:block;min-height:100vh}
  .sidebar{display:none;position:fixed;right:18px;left:auto;top:78px;width:320px;height:auto;max-height:calc(100vh - 96px);overflow:auto;padding:20px;background:#1a1819;border:1px solid #514b4e;border-radius:17px;z-index:30;box-shadow:0 18px 55px rgba(0,0,0,.55)}
  .sidebar.mobile-open{display:flex}
  .menu-toggle{display:block}
  .topbar{padding-right:84px}
}

/* 캐릭터 선택 후 열리는 몰입형 대화 모달 */
body.modal-open{overflow:hidden}
.chat-backdrop{position:fixed;inset:0;z-index:60;background:rgba(3,4,9,.78);backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .22s ease}.chat-backdrop.open{opacity:1;pointer-events:auto}
.drawer{position:fixed;left:50%;top:50%;bottom:auto;width:min(1180px,calc(100vw - 48px));height:min(820px,calc(100vh - 64px));background:#111522;border:1px solid #4c5572;border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.65);z-index:70;transform:translate(-50%,-46%) scale(.98);opacity:0;pointer-events:none;transition:transform .22s ease,opacity .22s ease;display:grid;grid-template-columns:minmax(310px,36%) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.drawer.open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}
.drawer-head{grid-column:1/-1;min-height:86px;padding:14px 22px;border-bottom:1px solid #383e55;background:linear-gradient(90deg,#151a2c,#10131e);gap:15px}.drawer-head img{width:50px;height:62px;border:1px solid #58617d}.drawer-head h3{font-size:21px}.drawer-head p{font-size:13px}.close{width:42px;height:42px;border-radius:50%;font-size:0}.close:after{content:'×';font-size:28px;line-height:1}
.character-info{display:none;grid-column:1;grid-row:2/4;overflow:hidden;padding:0;border-bottom:0;border-right:1px solid #383e55;background:linear-gradient(180deg,#171c2d 0%,#111522 60%);flex-direction:column}.drawer.open .character-info{display:flex}.character-info-scroll{flex:1;min-height:0;overflow:auto;padding:24px 25px 16px;-webkit-overflow-scrolling:touch}.character-info .dossier-label{margin:0 0 8px;color:#ff9ab0;font-weight:900;letter-spacing:.14em;font-size:10px}.character-info .dossier-title{margin:0 0 23px;font-size:17px;line-height:1.45;color:#f7f2f4}.character-info strong{font-size:11px;letter-spacing:.1em;color:#ff9ab0;margin-top:22px}.character-info p{font-size:13px;line-height:1.75;color:#d1d6e9;margin:7px 0 0}.character-info .opening-scene{margin-top:24px;padding:15px;border:1px solid #485372;border-radius:12px;background:#20263a}.character-info .opening-scene strong{margin-top:0;color:#ffd33d}.character-info .opening-scene p{color:#f4f5fb}
.messages{grid-column:2;grid-row:2;min-height:0;overflow-y:auto;padding:28px 30px;gap:14px;background:radial-gradient(circle at 80% 0%,rgba(77,91,154,.15),transparent 31%),#10131e;display:flex;flex-direction:column}.bubble{max-width:min(76%,610px);padding:13px 16px;font-size:15px;line-height:1.65}.bubble.ai{border:1px solid #313a58;background:#1c2337}.bubble.me{background:#c84d6d}.chat-form{grid-column:2;grid-row:3;padding:18px 24px;border-top:1px solid #383e55;background:#151a29;flex-shrink:0}.chat-form input{height:48px;font-size:15px}.send{min-width:84px}.drawer .chat-note{grid-column:2;grid-row:3;display:none}
@media(max-width:720px){.drawer{width:calc(100vw - 20px);height:calc(100dvh - 20px);grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr) auto;border-radius:18px}.drawer-head{grid-column:1;min-height:74px;padding:10px 14px}.drawer-head img{width:42px;height:54px}.character-info{grid-column:1;grid-row:2;max-height:min(42vh,320px);padding:0;border-right:0;border-bottom:1px solid #383e55}.character-info-scroll{padding:16px 18px 12px}.character-info .dossier-title{margin-bottom:13px;font-size:14px}.character-info strong{margin-top:14px}.character-info p{font-size:12px;line-height:1.6}.character-info .opening-scene{margin-top:16px}.messages{grid-column:1;grid-row:3;padding:18px 15px;overflow-y:auto}.bubble{max-width:90%;font-size:14px}.chat-form{grid-column:1;grid-row:4;padding:12px}.chat-form input{height:44px}.send{min-width:64px;padding:0 12px}.drawer.catalog-chat-direct{grid-template-rows:auto minmax(0,1fr) auto auto auto!important}.drawer.catalog-chat-direct .character-info{display:none!important}.drawer.catalog-chat-direct .messages{grid-row:2!important}.drawer.catalog-chat-direct .chat-form{grid-row:3!important}.drawer.catalog-chat-direct .drawer-foot-actions{grid-row:4!important}.drawer.catalog-chat-direct .chat-ai-disclaimer{grid-row:5!important}}
.drawer.catalog-chat-direct .character-info{display:none!important}.drawer.catalog-chat-direct .messages{grid-column:1/-1!important}.drawer.catalog-chat-direct .chat-form{grid-column:1/-1!important}.drawer.catalog-chat-direct .drawer-foot-actions{grid-column:1/-1!important}.drawer.catalog-chat-direct .chat-ai-disclaimer{grid-column:1/-1!important}
.hero-story-hud{margin:0 0 12px;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,#1f2438,#161b2c);border:1px solid #3d4668}
.hero-story-incident{font-size:13px;font-weight:800;color:#ffd76a;margin:0 0 8px;line-height:1.45}
.hero-story-stats{display:flex;gap:8px;flex-wrap:wrap}
.hero-story-stat{flex:1;min-width:68px;padding:6px 8px;border-radius:10px;background:#121624;font-size:11px;color:#9aa8c8}
.hero-story-stat b{display:block;font-size:13px;color:#f4f6ff;font-weight:800}
.hero-story-progress{margin:8px 0 0;display:grid;gap:4px}
.hero-story-progress span{font-size:10px;font-weight:800;color:#9aa8c8;letter-spacing:.06em}
.hero-story-progress b{font-size:12px;color:#ffd33d;font-weight:900}
.hero-story-progress-bar{height:6px;border-radius:999px;background:#121624;overflow:hidden}
.hero-story-progress-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ff6b91,#ffd33d);transition:width .35s ease}
.hero-story-clues{margin:6px 0 0;font-size:11px;line-height:1.5;color:#b8c4e8}
.hero-story-quick-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 30px 8px;grid-column:2}
.hero-story-quick-chips[hidden]{display:none!important}
.hero-story-quick-chips small{display:block;width:100%;font-size:10px;font-weight:800;color:#ff9ab0;margin-bottom:2px}
.hero-story-quick-chip{padding:6px 10px;border-radius:999px;border:1px solid #4a5678;background:#1c2236;color:#e8ecff;font-size:11px;font-weight:700;cursor:pointer}
.hero-story-quick-chip:hover{border-color:#ffd33d;background:#2a2418}
@media(max-width:720px){.hero-story-quick-chips{grid-column:1;padding:0 15px 8px}}
.hero-story-result{margin:8px 0 12px;padding:10px 12px;border-radius:12px;background:#182032;border:1px dashed #4a5678;font-size:12px;line-height:1.55;color:#d8deef}
.hero-story-result strong{color:#ff9ab0}
.hero-story-delta{margin:6px 0 10px;font-size:11px;color:#9ad7ff}
.hero-story-choice-row{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.hero-story-choice-row small{font-weight:800;color:#ff9ab0;letter-spacing:.04em}
.hero-story-choice-row button{text-align:left;padding:10px 12px;border-radius:12px;border:1px solid #4a5678;background:#1c2236;color:#f2f4ff;font-size:13px;cursor:pointer}
.hero-story-choice-row button:hover{border-color:#ff6b91;background:#232a42}
.hero-story-choice-row button .risk{display:block;margin-top:4px;font-size:11px;color:#9aa8c8;font-weight:500}
.hero-story-choice-row .hero-story-reset{align-self:flex-start;font-size:12px;padding:6px 10px;opacity:.85}
.hero-story-report{margin:10px 0 14px;padding:0;border-radius:18px;overflow:hidden;background:linear-gradient(180deg,#f3ead8 0%,#e8dcc4 100%);border:1px solid #c9b896;box-shadow:0 12px 32px rgba(0,0,0,.28);color:#3a2e1d;max-width:min(100%,520px);align-self:flex-start}
.hero-story-report .hsr-head{padding:14px 16px 10px;border-bottom:1px solid rgba(58,46,29,.12);background:rgba(255,255,255,.22)}
.hero-story-report .hsr-kicker{margin:0;font-size:10px;font-weight:800;letter-spacing:.18em;color:#8a5c3a}
.hero-story-report .hsr-title{margin:4px 0 0;font-size:17px;font-weight:900;line-height:1.35;color:#2f2416}
.hero-story-report .hsr-body{padding:12px 16px 14px;display:grid;gap:12px}
.hero-story-report .hsr-section{display:grid;gap:8px}
.hero-story-report .hsr-section>h4{margin:0;font-size:11px;font-weight:900;letter-spacing:.06em;color:#6b4f2c}
.hero-story-report .hsr-keywords{display:flex;flex-wrap:wrap;gap:6px}
.hero-story-report .hsr-keywords span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#d9c3a0;color:#3f2f1b;font-size:11px;font-weight:800}
.hero-story-report .hsr-summary{margin:0;padding-left:18px;font-size:12px;line-height:1.65;color:#3f3222}
.hero-story-report .hsr-summary li{margin:0 0 6px}
.hero-story-report .hsr-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hero-story-report .hsr-card{display:grid;gap:6px;padding:8px;border-radius:12px;background:rgba(255,255,255,.42);border:1px solid rgba(58,46,29,.1);min-height:92px}
.hero-story-report .hsr-card img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:8px;border:1px solid rgba(58,46,29,.15);background:#d8ccb8}
.hero-story-report .hsr-card .hsr-card-fallback{display:grid;place-items:center;aspect-ratio:2/3;border-radius:8px;background:linear-gradient(160deg,#cdb891,#b89b6d);color:#fff;font-size:22px;font-weight:900}
.hero-story-report .hsr-card b{font-size:11px;line-height:1.35;color:#2f2416}
.hero-story-report .hsr-card small{font-size:10px;color:#6b4f2c;line-height:1.35}
.hero-story-report .hsr-card.tone-positive{border-color:#7ea86d;background:rgba(214,236,205,.55)}
.hero-story-report .hsr-card.tone-risk{border-color:#c97a5d;background:rgba(255,224,214,.55)}
.hero-story-report .hsr-master{margin:0;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.5);border:1px solid rgba(58,46,29,.1);font-size:12px;line-height:1.65;color:#3f3222}
.hero-story-report .hsr-master strong{display:block;margin-bottom:6px;font-size:11px;color:#8a5c3a}
.hero-story-report .hsr-delta{font-size:11px;color:#5c6f8f;font-weight:700}
@media(max-width:520px){.hero-story-report .hsr-milestones{grid-template-columns:1fr}}
/* 관리자 캐릭터 편집 */
.drawer-head-actions{margin-left:auto;display:flex;align-items:center;gap:10px;flex-shrink:0}
.admin-edit-trigger{background:rgba(255,107,145,.12);border:1px solid rgba(255,107,145,.45);color:#ffb8ca;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:800;white-space:nowrap;flex-shrink:0}
.admin-edit-trigger:hover{background:rgba(255,107,145,.22);border-color:#ff6b91;color:#fff}
.drawer-foot-actions{grid-column:1/-1;padding:0 24px 8px;background:#151a29;display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-shrink:0}
.drawer-foot-actions .admin-edit-trigger{display:inline-flex;align-items:center;justify-content:center}
.drawer-foot-actions .admin-edit-trigger[hidden]{display:none!important}
.drawer.persona-group .drawer-foot-actions{display:none!important}
.admin-auth,.admin-editor{position:fixed;inset:0;z-index:120;display:none;place-items:center;padding:clamp(12px,3vw,24px);background:rgba(8,10,18,.72);backdrop-filter:blur(6px);overflow:auto;color:#eef1ff}
.admin-auth[hidden],.admin-editor[hidden]{display:none!important}
.admin-auth.open,.admin-editor.open{display:grid}
.admin-auth-card,.admin-editor-shell{width:min(920px,calc(100vw - 24px));max-height:min(780px,calc(100dvh - 24px));overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:linear-gradient(180deg,#1e2438 0%,#151a29 100%);border:1px solid #66708f;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.65);color:#eef1ff}
.admin-auth-card{max-width:420px;grid-template-rows:auto auto;padding:28px 26px 24px;gap:16px}
.admin-auth-card h3,.admin-editor-head h3{margin:0;font-size:clamp(18px,2.4vw,22px);letter-spacing:-.5px;color:#fff}
.admin-auth-card p,.admin-editor-head p{margin:6px 0 0;color:#c5cce4;font-size:13px;line-height:1.6;word-break:keep-all}
.admin-auth-field{display:grid;gap:8px}
.admin-auth-field span{font-size:12px;font-weight:800;color:#ff9ab0}
.admin-auth-field input{height:46px;background:#10131e;border:1px solid #66708f;border-radius:10px;padding:0 14px;outline:0;width:100%;color:#fff}
.admin-auth-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.admin-editor-head,.admin-editor-foot{padding:16px clamp(14px,2.5vw,22px);border-bottom:1px solid #4a5372}
.admin-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;background:#1a2033}
.admin-editor-head>div{min-width:0;flex:1}
.admin-close-btn{flex:0 0 auto;white-space:nowrap}
.admin-editor-tabs{display:flex;gap:8px;padding:12px clamp(14px,2.5vw,22px);border-bottom:1px solid #4a5372;background:#171d30;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.admin-editor-tabs::-webkit-scrollbar{display:none}
.admin-tab{background:#222842;border:1px solid transparent;color:#c5cce4;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:800;flex:0 0 auto;white-space:nowrap;line-height:1.2}
.admin-tab.active{color:#fff;border-color:rgba(255,107,145,.65);background:rgba(255,107,145,.22)}
.admin-tab:hover{color:#fff;border-color:#66708f;background:#2a314a}
.admin-editor-body{min-height:0;overflow:auto;padding:16px clamp(14px,2.5vw,22px) 20px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);gap:16px;align-items:start;background:#141927}
.admin-editor-form{display:grid;gap:16px;align-content:start;min-width:0}
.admin-panel{display:none;gap:14px}
.admin-panel.active{display:grid}
.admin-field{display:grid;gap:8px;min-width:0}
.admin-field span{font-size:12px;font-weight:800;color:#ff9ab0;letter-spacing:.06em}
.admin-field input,.admin-field textarea{width:100%;background:#10131e;border:1px solid #66708f;border-radius:12px;padding:12px 14px;outline:0;line-height:1.55;font-size:14px;color:#fff}
.admin-field input:focus,.admin-field textarea:focus,.admin-auth-field input:focus{border-color:#ff6b91;box-shadow:0 0 0 3px rgba(255,107,145,.18)}
.admin-field textarea{min-height:140px;resize:vertical}
.admin-field textarea.tall{min-height:220px}
.admin-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-image-uploads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-image-slot{display:grid;gap:10px;padding:16px;border:1px dashed #66708f;border-radius:14px;background:#10131e;text-align:center;min-width:0}.admin-image-slot img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;border:1px solid #66708f;background:#25283b}.admin-image-slot img.is-empty{object-fit:contain;opacity:.45;padding:18px}.admin-upload-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#2a314a;border:1px solid #66708f;border-radius:10px;padding:11px 16px;font-weight:800;color:#eef1ff;cursor:pointer;margin:0 auto}.admin-upload-btn:hover{border-color:#ff6b91;background:#333b56}.admin-upload-btn input{display:none}.admin-image-drop{display:grid;gap:12px;padding:16px;border:1px dashed #66708f;border-radius:14px;background:#10131e}
.admin-image-drop img{width:min(180px,100%);aspect-ratio:3/4;object-fit:cover;border-radius:12px;border:1px solid #66708f}
.admin-image-drop input[type=file]{font-size:13px;color:#c8cbe0;max-width:100%}
.admin-preview-card{padding:16px;border:1px solid #66708f;border-radius:14px;background:#1d2438;position:sticky;top:0;min-width:0}
.admin-preview-card>.legacy-preview-img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;margin-bottom:12px}
.admin-preview-card h4{margin:0 0 6px;font-size:18px;word-break:keep-all;color:#fff}
.admin-preview-card small{display:block;color:#aeb5d2;font-size:12px;margin-bottom:12px;word-break:keep-all}
.admin-preview-card p{margin:0;color:#d8dcef;font-size:13px;line-height:1.65;word-break:keep-all}
.admin-editor-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border-bottom:0;border-top:1px solid #4a5372;background:#171d30}
.admin-foot-status{flex:1 1 220px;min-width:0;margin:0}
.admin-foot-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}
.admin-status{font-size:13px;line-height:1.6;color:#c5cce4;min-height:20px}
.admin-status.error{color:#ff9ab0}
.admin-btn{border-radius:10px;padding:11px 16px;font-weight:800;white-space:nowrap;color:#eef1ff}
.admin-btn.primary{background:var(--pink);color:#fff;border:0}
.admin-btn.secondary{background:#2a314a;border:1px solid #66708f;color:#eef1ff}
.admin-btn.ghost{background:#222842;border:1px solid #66708f;color:#eef1ff}
@media(max-width:900px){
  .admin-editor-body{grid-template-columns:1fr}
  .admin-preview-card{position:static;order:-1;max-width:280px;margin:0 auto}
  .admin-grid-2{grid-template-columns:1fr}
}
@media(max-width:640px){.admin-image-uploads{grid-template-columns:1fr}
  .admin-auth,.admin-editor{padding:8px}
  .admin-editor-shell,.admin-auth-card{max-height:calc(100dvh - 12px);border-radius:16px}
  .admin-editor-head,.admin-editor-foot{padding:12px 14px}
  .admin-editor-tabs{padding:10px 12px}
  .admin-tab{padding:8px 12px;font-size:12px}
  .admin-editor-body{padding:12px 14px 16px;gap:12px}
  .admin-editor-foot{flex-direction:column;align-items:stretch}
  .admin-foot-status{flex:1 1 auto}
  .admin-foot-actions{width:100%;margin-left:0;flex-direction:column}
  .admin-foot-actions .admin-btn{width:100%}
  .admin-edit-trigger{padding:7px 10px;font-size:11px}
  .drawer-head-actions{gap:6px}
}
/* 넓은 화면: 소개는 왼쪽, 캐릭터 탐색은 오른쪽으로 올린다. */
.top-categories,.top-headline{display:none}
@media(min-width:1100px){
  .content{display:grid;grid-template-columns:minmax(430px,.78fr) minmax(0,1.22fr);gap:46px;align-items:start;padding-top:18px}
  .hero{grid-column:1;grid-row:1;padding-top:18px}
  .hero p{max-width:680px}
  #catalog{grid-column:2;grid-row:1;min-width:0}
  #catalog .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pricing{grid-column:1/-1;grid-row:2}
}
@media(min-width:1280px){
  .topbar{justify-content:center}
  .topbar .search{position:absolute;left:57%;transform:translateX(-50%);width:min(650px,calc(100vw - 780px))}
  .topbar .login{margin-left:auto}
  .hero{position:relative;min-height:685px}
  .hero .eyebrow{margin-top:3px}
  .hero .hero-headline{position:absolute;left:0;top:322px;max-width:620px;margin:0;color:#f3edf0;font-size:clamp(23px,1.75vw,34px);font-weight:800;line-height:1.45;letter-spacing:-1.4px}
}
@media(min-width:1600px){
  .top-headline{display:block;position:absolute;left:5%;top:22px;width:550px;margin:0;color:#f3edf0;font-size:18px;font-weight:800;line-height:1.45;letter-spacing:-.7px}
  .hero .hero-headline{display:none}
  .top-categories{display:flex;position:absolute;left:0;top:318px;width:620px;gap:9px;align-items:center;flex-wrap:wrap}
  .top-categories .chip{flex:0 0 auto}
}
@media(max-width:1279px){.top-categories{display:none}}
@media(max-width:720px){.hero{min-height:0}.hero .hero-headline{position:static;margin:22px 0 42px;font-size:22px;letter-spacing:-.7px}.catalog-chips{display:flex}}
@media(min-width:721px){
  .menu-shade{display:none!important}
  .sidebar{display:flex;right:0;left:auto;top:0;width:420px;height:100vh;max-height:none;border:0;border-left:1px solid #514b4e;border-radius:0;transform:translateX(105%);transition:transform .25s ease;box-shadow:-18px 0 55px rgba(0,0,0,.42)}
  .sidebar.mobile-open{display:flex;transform:translateX(0)}
  .main{transition:margin-right .25s ease}
  body.menu-open .main{margin-right:420px}
}
.catalog-eyebrow{margin:0 0 8px}
/* PC: 메뉴를 왼쪽에 상시 고정하고, 빈 소개 영역을 메뉴 영역으로 사용한다. */
@media(min-width:1100px){
  .sidebar{display:flex;left:0;right:auto;top:98px;width:420px;height:calc(100vh - 98px);max-height:none;padding:26px 22px;background:#1a1819;border:0;border-right:1px solid #514b4e;border-radius:0;transform:none;transition:none;box-shadow:18px 0 48px rgba(0,0,0,.25);z-index:12}
  .sidebar.mobile-open{display:flex;transform:none}
  .menu-toggle,.menu-shade{display:none!important}
  .main,body.menu-open .main{margin-right:0!important;transition:none}
  .nav{gap:3px}
  .nav a{padding:9px 10px;font-size:14pt;font-weight:500;line-height:1.2}
  .side-note{padding:20px;font-size:14px;line-height:1.7}
  .content{display:block;margin-left:420px;padding-top:18px}
  .hero{display:none}
  #catalog{max-width:1340px;margin:0 auto}
  #catalog .grid{grid-template-columns:repeat(4,minmax(0,1fr));justify-content:center}
  .header-brand{display:flex;align-items:center;gap:10px;color:#f8f4f5;font-size:24px;font-weight:900;letter-spacing:-1px}
}
.sidebar-footer{margin-top:auto;border-top:1px solid var(--line);padding:22px 20px 4px;color:#958c8f;font-size:11px;line-height:1.7;overflow-x:auto}
.sidebar-footer strong{display:block;color:var(--text);font-size:18px;margin-bottom:4px}
.sidebar-footer a{display:inline-block;margin:0 8px 0 0;color:#c5bdc1;white-space:nowrap;font-size:11px}
.sidebar-footer .footer-links{white-space:nowrap}.sidebar-footer .footer-break{display:block}
.sidebar-footer a:hover{color:var(--pink)}
.sidebar-footer span{display:block;margin-top:5px;color:#80777b}
@media(min-width:1280px){
  .header-brand{position:absolute;left:24px;top:17px}
  .header-brand .brand-mark{width:38px;height:38px;border-width:7px}
  .header-brand .brand-mark:after{width:19px;height:5px;left:2px;top:9px}
  .topbar .top-headline{display:block;position:absolute;left:200px;top:27px;width:470px;margin:0;color:#e6e1e3;font-size:16px;font-weight:500;line-height:1.45;letter-spacing:-.45px}
}
.subpage-view{position:fixed;inset:98px 0 0 420px;z-index:45;display:none;overflow:auto;background:linear-gradient(180deg,#121113 0%,#0f0e0f 100%);border-top:1px solid var(--line)}
.subpage-view.open{display:block}
.subpage-inner{max-width:1180px;margin:0 auto;padding:44px 48px 70px}
.subpage-top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:34px}
.subpage-top .eyebrow{margin-bottom:12px}
.subpage-top h1{font-size:48px;line-height:1.08;letter-spacing:-3px;margin:0 0 14px}
.subpage-top h1 em{font-style:normal;color:var(--pink)}
.subpage-top p{max-width:720px;color:#c0b7ba;font-size:17px;line-height:1.75;margin:0}
.subpage-close{background:#29242a;border:1px solid #625a60;border-radius:24px;padding:11px 17px;font-weight:800;white-space:nowrap}
.subpage-section{margin:34px 0 0;padding-top:28px;border-top:1px solid var(--line)}
.subpage-section h2{font-size:28px;letter-spacing:-1.5px;margin:0 0 18px}
.subpage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.subpage-card,.subpage-panel{background:#191718;border:1px solid #443d41;border-radius:15px;padding:24px}
.subpage-card h3,.subpage-panel h3{font-size:21px;margin:0 0 12px}
.subpage-card p,.subpage-panel p{color:#bdb4b8;line-height:1.75;margin:0}
.subpage-card small,.subpage-panel small{color:#ff91a8;letter-spacing:.12em;font-weight:800}
.subpage-card ul,.subpage-panel ul{color:#c8c0c3;line-height:1.8;margin:15px 0 0;padding-left:20px}
.subpage-card.featured{border-color:var(--pink);box-shadow:0 0 0 1px rgba(255,79,120,.18)}
.subpage-price{font-size:32px;font-weight:900;margin:15px 0}
.subpage-price span{font-size:13px;color:#aaa1a5;font-weight:500}
.subpage-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:20px;background:var(--pink);border-radius:9px;padding:12px 17px;font-weight:900}
.subpage-cta.outline{background:transparent;border:1px solid #6c6670}
.subpage-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.subpage-step b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--pink);font-size:20px;margin-bottom:17px}
.subpage-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.subpage-field{display:grid;gap:8px;margin-bottom:16px}.subpage-field label{font-weight:800}.subpage-field input,.subpage-field select,.subpage-field textarea{width:100%;background:#211f20;border:1px solid #5a5356;border-radius:9px;padding:12px;outline:0}.subpage-field select,.subpage-field select option{color:#f8f4f5;background:#211f20}.subpage-field textarea{min-height:115px;resize:vertical}.subpage-preview{min-height:250px;display:flex;align-items:flex-start;gap:18px}.subpage-avatar{width:150px;aspect-ratio:3/4;object-fit:cover;border-radius:12px;background:#25283b}.subpage-note{color:#968e92;font-size:13px;line-height:1.7;margin-top:16px}
.subpage-moods{display:flex;flex-wrap:wrap;gap:10px}.subpage-mood{background:#171a24;border:1px solid #60677f;border-radius:20px;padding:9px 15px}.subpage-mood.active,.subpage-mood:hover{background:var(--pink);border-color:var(--pink)}
.subpage-alert{border:1px solid #8d4c58;background:#321b23;color:#ffd9df;border-radius:12px;padding:16px 18px;line-height:1.7}
.subpage-checklist{display:grid;gap:12px}.subpage-check{display:flex;gap:10px;align-items:flex-start;color:#c8c0c3;line-height:1.6}.subpage-check input{margin-top:4px;accent-color:var(--pink)}
@media(max-width:1099px){.subpage-view{inset:76px 0 0}.subpage-inner{padding:30px 24px 50px}.subpage-top h1{font-size:39px}.subpage-grid,.subpage-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.subpage-form-grid{grid-template-columns:1fr}}
@media(max-width:720px){.subpage-inner{padding:24px 16px 40px}.subpage-top{display:block}.subpage-close{margin-top:18px}.subpage-grid,.subpage-steps{grid-template-columns:1fr}.subpage-preview{display:block}.subpage-avatar{width:110px;margin-bottom:15px}}

/* TAROKUN landing screenshot fixes */
.topbar .search,.topbar label.search{display:flex!important;visibility:visible!important;pointer-events:auto!important;align-items:center}
@media(min-width:1280px){.topbar .search{display:flex!important;align-items:center}}
.nav{gap:2px!important}
.nav a{padding:7px 9px!important;font-size:14px!important;gap:7px!important;line-height:1.35!important;border-radius:8px!important}
@media(min-width:721px){.nav{gap:3px!important}.nav a{padding:7px 10px!important;font-size:13px!important}}
@media(min-width:1100px){.nav{gap:8px!important}.nav a{padding:7px 10px!important;font-size:13px!important}}
@media(max-width:720px){.nav a{padding:8px 10px!important;font-size:13px!important}}
.topbar-actions{display:flex!important;align-items:center;gap:10px!important;margin-left:auto!important;flex-shrink:0!important}
.credit-badge{flex-shrink:0}
.topbar .login{flex-shrink:0}
.catalog-search{margin:10px 0 0!important;max-width:100%!important}
.section-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.section-head h2,.section-head small{flex:0 0 auto}
.section-head .catalog-search{flex:1 1 220px;margin:0!important}
.sidebar-chat-list{margin-top:auto!important;flex-shrink:0;border-top:1px solid var(--line);padding:8px 2px 6px!important;min-height:0;max-height:min(34vh,280px)!important;display:flex;flex-direction:column;overflow:hidden}
.sidebar-chat-list[hidden]{display:none!important}
.sidebar-chat-list-head{padding:0 8px 6px;font-size:10px;font-weight:800;color:#9aa3c4;letter-spacing:.04em}
.sidebar-chat-list-inner{overflow-y:auto;display:flex;flex-direction:column;gap:1px;padding:0 2px}
.sidebar-chat-row{display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;gap:8px!important;align-items:center;width:100%;padding:6px 4px;border:0;border-radius:8px;background:transparent;color:inherit;text-align:left;cursor:pointer;overflow:hidden}
.sidebar-chat-row:hover,.sidebar-chat-row:focus-visible{background:#242b42;outline:none}
.sidebar-chat-list img,.sidebar-chat-list-inner img,.sidebar-chat-avatar,.sidebar-recent-avatar{width:36px!important;height:36px!important;max-width:36px!important;max-height:36px!important;min-width:36px!important;min-height:0!important;border-radius:50%!important;object-fit:cover!important;object-position:top center!important;display:block!important;flex-shrink:0!important}
.sidebar-chat-main{min-width:0;overflow:hidden}
.sidebar-chat-main strong{display:block;font-size:12px;font-weight:800;color:#f4f6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-chat-main p{margin:2px 0 0;font-size:10px;color:#8f98b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-chat-time{display:block;margin-top:2px;font-size:9px;color:#e8ebf7}
.sidebar-recent-chat{display:none!important}
#sidebarRecentChat{display:none!important}
.sidebar .nav{flex:1 1 auto;min-height:0;overflow-y:auto}
.sidebar-footer{flex-shrink:0}
@media(max-width:720px){.sidebar-chat-list{max-height:min(28vh,220px)!important}}

/* TAROKUN story fun chips */
.persona-story-chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}
.persona-story-chip{padding:5px 10px;border-radius:999px;border:1px solid #6a5d62;background:#2a2226;color:#f5dce6;font-size:11px;font-weight:700;cursor:pointer}
.persona-story-chip:hover{background:#3d2f35;border-color:#ff6b9d}

/* TAROKUN ip filter admin v1 */
.ip-filter-disclaimer{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:12px;background:rgba(255,193,7,.12);border:1px solid rgba(255,193,7,.35);color:#ffe8a3;font-size:12px;line-height:1.55;margin:0 0 12px}
.ip-filter-disclaimer strong{color:#fff}
.ip-filter-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.ip-filter-toolbar select,.ip-filter-toolbar button{height:40px;border-radius:999px;font-size:13px;font-weight:800}
.ip-filter-toolbar select{background:#10131e;border:1px solid #66708f;color:#fff;padding:0 14px;min-width:140px}
.ip-filter-summary{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.ip-filter-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid transparent}
.ip-filter-pill.safe{background:rgba(46,204,113,.14);border-color:rgba(46,204,113,.35);color:#9ef0bf}
.ip-filter-pill.review{background:rgba(255,193,7,.14);border-color:rgba(255,193,7,.35);color:#ffe08a}
.ip-filter-pill.block{background:rgba(255,107,107,.14);border-color:rgba(255,107,107,.35);color:#ffb3b3}
.ip-filter-list{display:grid;gap:10px;max-height:min(58vh,620px);overflow:auto}
.ip-filter-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px;border:1px solid #5a5356;border-radius:12px;background:#211f20}
.ip-filter-row img{width:72px;height:72px;object-fit:cover;border-radius:10px;border:1px solid #5a5356;background:#1a1819}
.ip-filter-row h4{margin:0 0 4px;font-size:14px;color:#fff;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ip-filter-row p{margin:0;color:#c5bdc1;font-size:12px;line-height:1.55}
.ip-filter-row small{display:block;margin-top:6px;color:#958c8f;font-size:11px;line-height:1.5}
.ip-filter-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.ip-filter-actions button{padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;background:#2a2728;border:1px solid #5a5356;color:#fff;cursor:pointer}
.ip-filter-actions button:hover{border-color:#ff6b91}
.ip-filter-actions button.primary{background:rgba(255,107,145,.18);border-color:rgba(255,107,145,.45);color:#ffd0dc}
.ip-filter-empty{padding:18px;border:1px dashed #5a5356;border-radius:12px;color:#958c8f;text-align:center;background:#211f20}
.ip-filter-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.02em;vertical-align:middle}
.ip-filter-badge.safe{background:rgba(46,204,113,.18);color:#9ef0bf}
.ip-filter-badge.review{background:rgba(255,193,7,.18);color:#ffe08a}
.ip-filter-badge.block{background:rgba(255,107,107,.18);color:#ffb3b3}
.ip-filter-badge.none{background:rgba(150,150,150,.14);color:#c5bdc1}
.admin-editor-head .ip-filter-badge{font-size:11px;margin-left:6px}
@media(max-width:720px){.ip-filter-row{grid-template-columns:56px minmax(0,1fr)}.ip-filter-actions{grid-column:1/-1;justify-content:flex-start}}

/* TAROKUN compliance + friendly errors */
.drawer{grid-template-rows:auto minmax(0,1fr) auto auto}
.chat-guest-notice{grid-column:2;grid-row:3;margin:0;padding:10px 24px 0;font-size:12px;line-height:1.5;color:#c9b8a8;background:#151a29;border-top:1px solid #383e55}
.chat-form.guest-locked input,.chat-form.guest-locked .send{opacity:.55;cursor:not-allowed}
/* TAROKUN catalog latest geo v1 */ css
.card-img-fallback,.card-img-single.card-img-fallback{object-fit:contain!important;padding:18px;background:#1a1819!important}
#catalog .card-thumb,#catalog .card-thumb-wrap{min-height:0}
#catalog .card-media,#catalog .card-thumb{aspect-ratio:3/4;position:relative;overflow:hidden;background:#15151d}
/* TAROKUN chat login fix v1 */
.chat-form.guest-locked input.guest-chat-locked,.chat-form.guest-locked .send{cursor:pointer;opacity:.85}
.chat-guest-login-link{border:0;background:transparent;padding:0;color:#ff9ab0;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.chat-ai-disclaimer{grid-column:2;grid-row:4;margin:0;padding:8px 24px 12px;font-size:8pt;line-height:1.45;color:#968e92;font-weight:300;background:#151a29;border-top:1px solid #2a2430}
.persona-ai-disclaimer{margin:8px 0 0;font-size:11px;line-height:1.45;color:#968e92}
.login-age-consent{display:flex;align-items:flex-start;gap:10px;margin:4px 0 14px;font-size:13px;line-height:1.5;color:#d1d6e9}
.login-age-consent input{margin-top:3px;flex-shrink:0}
@media(max-width:720px){.chat-guest-notice{grid-column:1;grid-row:4;padding:8px 12px 0}.chat-ai-disclaimer{grid-column:1;grid-row:5;padding:8px 12px 10px}}

/* TAROKUN logo sidebar + roleplay typewriter */
@media(min-width:721px){.topbar .header-brand{display:none!important}}
.bubble-body.bubble-roleplay{display:grid;gap:10px}
.bubble-narration{color:#b8bfd4;font-size:14px;line-height:1.78;font-weight:500;white-space:pre-wrap;word-break:keep-all}
.bubble-dialogue{color:#f4f6ff;font-size:15px;line-height:1.7;font-weight:600;white-space:pre-wrap;word-break:keep-all}
.bubble-dialogue.action{color:#ffd33d;font-weight:500;font-style:italic}
.bubble-narration.is-typing::after,.bubble-dialogue.is-typing::after{content:'▍';margin-left:2px;color:#ff9ab0;animation:aitolksTwBlink 1s step-end infinite}
@keyframes aitolksTwBlink{50%{opacity:0}}
.bubble.ai .bubble-body.bubble-roleplay{padding:0}

/* TAROKUN persona typewriter */
.persona-bubble-body.bubble-roleplay,.bubble-body.bubble-roleplay{display:grid;gap:8px}
.persona-bubble-body .bubble-narration,.persona-bubble-body .bubble-dialogue{font-size:13px}

/* TAROKUN catalog hero rolling text */
.catalog-hero-rolling{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:0 28px;pointer-events:none;text-align:center}
.catalog-hero-rolling-text{color:#fff;font-family:"Noto Sans KR","Noto Sans JP","Noto Sans SC","Noto Sans TC","Noto Sans Thai","Noto Sans",sans-serif;font-size:18pt;font-weight:700;line-height:1.35;letter-spacing:-.02em;text-shadow:0 2px 18px rgba(0,0,0,.62),0 0 1px rgba(0,0,0,.35);max-width:min(92%,980px);transition:opacity .22s ease,transform .22s ease}
.catalog-hero-rolling-text.is-out{opacity:0;transform:translateY(6px)}
.catalog-hero-rolling-logo{display:block;height:clamp(28px,4.2vw,40px);width:auto;max-width:min(92%,980px);object-fit:contain;filter:drop-shadow(0 2px 18px rgba(0,0,0,.62));transition:opacity .22s ease,transform .22s ease}
.catalog-hero-rolling-logo.is-out{opacity:0;transform:translateY(6px)}
.catalog-hero-rolling-logo[hidden]{display:none!important}
.catalog-hero-sound{z-index:3}
@media(max-width:720px){.catalog-hero-rolling{padding:0 16px}.catalog-hero-rolling-text{font-size:18pt}.catalog-hero-rolling-logo{height:clamp(24px,6vw,32px)}}

/* TAROKUN chat persona disclaimer */
.chat-msg-disclaimer{margin:8px 0 0;padding-top:6px;border-top:1px solid rgba(255,255,255,.08);font-size:10px;line-height:1.45;color:#968e92;font-weight:500}
.persona-bubble-body .chat-msg-disclaimer,.bubble-body .chat-msg-disclaimer{font-size:10px}
.bubble.ai .chat-msg-disclaimer{border-top-color:rgba(255,255,255,.06)}

/* TAROKUN ai badge transparency footer */
.card-thumb-wrap{position:relative;display:block}
.card-ai-badge{position:absolute;right:6px;bottom:6px;z-index:6;display:inline-block;padding:0;font-family:"Noto Sans KR","Noto Sans JP","Noto Sans SC",system-ui,sans-serif;font-size:9pt;font-weight:300;line-height:1;letter-spacing:0;color:#fff;opacity:1;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.45)}
.footer-legal-bottom,.sidebar-legal-bottom{margin:0;font-size:10px;line-height:1.65;color:#958c8f;text-align:left!important}
.sidebar-legal-bottom{padding:0 4px}
.footer-legal-bottom a,.sidebar-legal-bottom a{color:#958c8f;text-decoration:none;word-break:keep-all}
.footer-legal-bottom a:hover,.sidebar-legal-bottom a:hover{color:#958c8f;text-decoration:underline;opacity:.9}
.site-footer-global .footer-legal-bottom{max-width:980px;margin:14px auto 0;padding:0 12px;text-align:left;font-size:10px}
@media(max-width:720px){.site-footer-global .footer-legal-bottom{font-size:9px;padding:0 16px}.sidebar-legal-bottom{font-size:8px;text-align:left}}

/* TAROKUN catalog hot card layout fix */
#catalog #hotGrid .card,#catalog .hot-grid .card:not(.card-random){
  align-self:stretch!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  aspect-ratio:3/4!important;
  min-height:0!important;
  position:relative!important;
  overflow:hidden!important;
}
#catalog #hotGrid .card .card-thumb-wrap,#catalog .hot-grid .card:not(.card-random) .card-thumb-wrap{
  grid-area:1/1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  position:relative!important;
  display:block!important;
}
#catalog #hotGrid .card .card-thumb-wrap>img,
#catalog #hotGrid .card .card-thumb-wrap>.card-media,
#catalog .hot-grid .card:not(.card-random) .card-thumb-wrap>img,
#catalog .hot-grid .card:not(.card-random) .card-thumb-wrap>.card-media{
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center top!important;
  display:block!important;
}
#catalog #hotGrid .card .card-media,#catalog .hot-grid .card:not(.card-random) .card-media{
  aspect-ratio:auto!important;
  height:100%!important;
  width:100%!important;
}
#catalog #hotGrid .card .card-media .card-img,#catalog .hot-grid .card:not(.card-random) .card-media .card-img{
  object-position:center top!important;
}
#catalog #hotGrid .card .card-body,#catalog .hot-grid .card:not(.card-random) .card-body{
  grid-area:1/1!important;
  align-self:end!important;
  z-index:2!important;
  width:100%!important;
  margin:0!important;
  padding:12px 10px 14px!important;
  background:linear-gradient(180deg,rgba(8,10,18,0) 0%,rgba(8,10,18,.52) 36%,rgba(8,10,18,.94) 100%)!important;
  pointer-events:none!important;
}
#catalog #hotGrid .card .card-body *,#catalog .hot-grid .card:not(.card-random) .card-body *{pointer-events:none!important}
#catalog #hotGrid .card .card-body .card-meta,#catalog .hot-grid .card:not(.card-random) .card-body .card-meta{
  color:#d8deef!important;
  margin-bottom:4px!important;
}
#catalog #hotGrid .card .card-body h3,#catalog .hot-grid .card:not(.card-random) .card-body h3,#catalog .card-random .card-body h3{
  color:#fff!important;
  margin:0 0 4px!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
.card-title-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 4px}
.card-mbti-badge{display:inline-block;padding:2px 7px;border-radius:999px;background:#2a2230;border:1px solid #6a4a58;color:#ffd0dc;font-size:10px;font-weight:800;line-height:1.2;flex-shrink:0;letter-spacing:.02em}
#catalog #hotGrid .card .card-body p,#catalog .hot-grid .card:not(.card-random) .card-body p{
  color:#c5cbd8!important;
  -webkit-line-clamp:2!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  min-height:0!important;
}
#catalog #hotGrid .card .card-ai-badge,#catalog .hot-grid .card:not(.card-random) .card-ai-badge{z-index:6!important}
@media(max-width:720px){
  #catalog #hotGrid .card .card-body,#catalog .hot-grid .card:not(.card-random) .card-body{padding:10px 8px 12px!important}
}

/* TAROKUN nav menu cycle image fix v1 */
#catalog .card .card-thumb,#catalog .card .card-thumb-wrap{
  position:relative!important;
  display:block!important;
  width:100%!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
  background:#25283b!important;
}
#catalog .card-random .card-thumb>img,
#catalog .card-random .card-thumb>.card-media,
#catalog .card .card-thumb-wrap>img,
#catalog .card .card-thumb-wrap>.card-media,
#catalog .card>img{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:top center!important;
  display:block!important;
}
#catalog .card .card-media{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
}
#catalog .card .card-media .card-img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:top center!important;
}
#catalog #hotGrid .card .card-thumb-wrap,
#catalog .hot-grid .card:not(.card-random) .card-thumb-wrap{
  aspect-ratio:auto!important;
  height:100%!important;
}
.sidebar{z-index:20!important;pointer-events:auto!important}
.sidebar .nav a,.sidebar .nav-admin-bottom a,.sidebar-footer a{pointer-events:auto!important;position:relative;z-index:1}

/* TAROKUN sitemap page v1 */
.sitemap-page{display:grid;gap:8px}
.sitemap-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.sitemap-list li{margin:0}
.sitemap-list a{display:inline-block;padding:10px 14px;border-radius:10px;background:#211f20;border:1px solid #3a3538;color:#f5f0f2;font-weight:800;font-size:15px;width:100%;box-sizing:border-box}
.sitemap-list a:hover{border-color:#ff6b91;color:#ffd0dc}
.sitemap-page>.subpage-note{margin-top:8px}

/* TAROKUN pm opposite pair ui */
.pm-match-pair{display:grid;gap:12px}
.pm-match-card{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border-radius:14px;border:1px solid #3f465f;background:#121622}
.pm-match-card.is-excluded{opacity:.45;border-style:dashed}
.pm-match-card .pm-match-meta strong{display:block;font-size:14px;color:#f4f5fb}
.pm-match-card .pm-match-meta span{font-size:11px;color:#9aa3bd}
.pm-match-card .pm-match-meta p{margin:6px 0 0;font-size:11px;color:#b8bfd4;line-height:1.45}
.pm-match-opp{display:inline-block;margin-top:6px;padding:2px 8px;border-radius:999px;background:rgba(255,107,145,.15);border:1px solid rgba(255,107,145,.35);color:#ffb8ca;font-size:10px;font-weight:800}
.pm-match-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.pm-exclude-btn,.pm-swap-btn{padding:6px 12px;border-radius:999px;border:1px solid #59617f;background:#151a29;color:#eef1ff;font-size:11px;font-weight:800;cursor:pointer}
.pm-exclude-btn:hover,.pm-swap-btn:hover{border-color:#ff6b91;color:#ffb8ca}
.pm-swap-section{margin-top:16px;padding-top:14px;border-top:1px dashed #3f465f}
.pm-swap-head{margin:0 0 10px;font-size:13px;font-weight:800;color:#ff9ab0}
.pm-swap-grid{display:grid;gap:8px}
.pm-swap-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border-radius:12px;border:1px solid #3f465f;background:#10131e;cursor:pointer;text-align:left;color:inherit}
.pm-swap-card:hover{border-color:#ff6b91;background:#1a1520}
.pm-swap-card strong{display:block;font-size:13px;color:#f4f5fb}
.pm-swap-card span{font-size:10px;color:#9aa3bd}

/* TAROKUN paid nav features v1 */
.sidebar .nav a.nav-paid-feature{display:flex;align-items:center;gap:8px}
.nav-paid-badge{margin-left:auto;flex:0 0 auto;font-style:normal;font-size:7px;font-weight:800;letter-spacing:.04em;color:#1a1014;background:#ff91a8;border-radius:999px;padding:1px 5px;line-height:1.35}
.sidebar .nav a.nav-paid-lock{opacity:.78}

/* TAROKUN chat retry typewriter v1 */
.chat-system-note,.bubble.ai.chat-system-note,.persona-bubble.chat-system-note{opacity:.85;font-size:13px;font-weight:500;color:#c5bdc1!important}

/* TAROKUN landing hot notice v1 */
#home.topbar.topbar-center-v13 .top-notice-bar{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:28px!important;
  min-height:28px!important;
  padding:0 10px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
#home.topbar.topbar-center-v13 .top-notice-kicker{font-size:8px!important;padding:2px 7px!important}
#home.topbar.topbar-center-v13 .top-notice-text{font-size:11px!important}
#home.topbar.topbar-center-v13 .top-notice-date{font-size:8px!important}
#home.topbar.topbar-center-v13 .top-notice-arrow{font-size:10px!important}
#home.topbar.topbar-center-v13 .top-notice-main{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  flex:1 1 auto!important;
  overflow:hidden!important;
}
#home.topbar.topbar-center-v13 .top-notice-text{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  min-width:0!important;
}
@media(max-width:1099px){
  #home.topbar.topbar-center-v13>.topbar-notice-slot{display:flex!important}
}
@media(max-width:720px){
  #home.topbar.topbar-center-v13{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"left actions" "search search"!important;
    height:auto!important;
    min-height:56px!important;
  }
  #home.topbar.topbar-center-v13>.topbar-notice-slot{
    display:flex!important;
    grid-area:left!important;
    max-width:100%!important;
    padding:0 8px 0 0!important;
  }
  #home.topbar.topbar-center-v13 .top-notice-bar{height:26px!important;min-height:26px!important}
  #home.topbar.topbar-center-v13 .top-notice-date{display:none!important}
}

/* TAROKUN mobile header overflow fix */
@media (max-width: 720px) {
  .topbar,
  .topbar.topbar-search-first,
  .topbar.topbar-unified {
    box-sizing:border-box !important;
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:64px !important;
    padding:8px 10px 8px 52px !important;
    overflow:hidden !important;
  }
  .topbar .topbar-notice-slot,
  .topbar .topbar-search-slot { display:none !important; }
  .topbar .topbar-right,
  .topbar .topbar-actions,
  .topbar.topbar-search-first .topbar-right,
  .topbar.topbar-search-first .topbar-actions {
    display:grid !important;
    grid-template-columns:minmax(52px,1fr) 34px auto 84px !important;
    align-items:center !important;
    gap:5px !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  .topbar .topbar-welcome {
    display:block !important;
    min-width:0 !important;
    max-width:none !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    font-size:11px !important;
  }
  .topbar .topbar-welcome-label { font-size:10px !important; }
  .topbar .credit-badge { width:34px !important; height:34px !important; min-width:34px !important; }
  .topbar .credit-badge .credit-icon { font-size:11px !important; }
  .topbar .credit-badge b { font-size:8px !important; }
  .topbar .login { min-width:0 !important; padding:8px 9px !important; font-size:11px !important; line-height:1 !important; }
  .topbar .lang-switcher { display:block !important; min-width:0 !important; width:84px !important; padding:0 !important; }
  .topbar .lang-switcher-select { display:block !important; width:84px !important; max-width:84px !important; height:34px !important; padding:0 22px 0 7px !important; font-size:11px !important; }
}

/* TAROKUN mobile hamburger visibility fix */
@media (max-width: 720px) {
  #menuToggle.menu-toggle {
    display:flex !important;
    position:fixed !important;
    left:10px !important;
    right:auto !important;
    top:11px !important;
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:10px !important;
    font-size:20px !important;
    line-height:1 !important;
    z-index:10001 !important;
    visibility:visible !important;
    opacity:1 !important;
  }
  #menuShade { z-index:10000 !important; }
  .sidebar.mobile-open {
    display:flex !important;
    z-index:10002 !important;
  }
  .topbar,
  .topbar.topbar-search-first,
  .topbar.topbar-unified {
    padding-left:56px !important;
    padding-right:10px !important;
  }
}

#siteGateOverlay{position:fixed;inset:0;z-index:999999;background:#0a0e17;display:flex;align-items:center;justify-content:center;font-family:inherit}
#siteGateOverlay.gate-hidden{display:none}
.site-gate-box{width:100%;max-width:380px;padding:36px 28px;text-align:center}
.site-gate-logo{width:44px!important;height:44px!important;max-width:44px!important;flex:none!important;margin:0 auto 14px;display:block}
.site-gate-box h2{color:#fff;font-size:19px;font-weight:800;margin:0 0 8px;line-height:1.4}
.site-gate-box p{color:#8a97ab;font-size:13px;margin:0 0 22px}
.site-gate-field{position:relative;margin-bottom:12px}
.site-gate-field input{width:100%;box-sizing:border-box;padding:13px 44px 13px 16px;border-radius:10px;border:1px solid #2a3346;background:#131a29;color:#fff;font-size:15px;text-align:center;outline:none}
.site-gate-field input.gate-masked{-webkit-text-security:disc;text-security:disc}
.site-gate-field input:focus{border-color:#3182F6}
#siteGateToggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:32px;height:32px;padding:0;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px}
#siteGateToggle:hover{background:rgba(255,255,255,.08)}
#siteGateToggle svg{width:20px;height:20px}
#siteGateBtn{width:100%;padding:13px 16px;border-radius:10px;border:0;background:#3182F6;color:#fff;font-size:15px;font-weight:700;cursor:pointer;display:block}
#siteGateBtn:hover{background:#4a90ff}
.site-gate-error{color:#ff6b6b;font-size:12px;margin-top:10px;min-height:16px}

/* TAROKUN continue chat + auth */
.continue-chat-page{padding:0 4px}
.continue-chat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 6px 12px;border-bottom:1px solid rgba(72,83,114,.45);margin-bottom:8px}
.continue-chat-head h2{margin:0;font-size:18px;font-weight:800;color:#f4f6ff}
.continue-chat-head button{border:0;background:transparent;color:#b8bfd8;font-size:22px;line-height:1;cursor:pointer;padding:4px 8px;border-radius:8px}
.continue-chat-head button:hover{background:rgba(255,255,255,.06);color:#fff}
.continue-chat-list{display:flex;flex-direction:column;gap:2px}
.continue-chat-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 8px;border-radius:14px;cursor:pointer;border:1px solid transparent;background:transparent;color:inherit;text-align:left;width:100%}
.continue-chat-row:hover,.continue-chat-row:focus-visible{background:#20263a;border-color:#485372;outline:none}
.continue-chat-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;background:#151926;border:1px solid #485372}
.continue-chat-main{min-width:0}
.continue-chat-main strong{display:block;font-size:16px;font-weight:800;color:#f4f6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.continue-chat-main p{margin:6px 0 0;font-size:13px;color:#b8bfd8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.continue-chat-menu{border:0;background:transparent;color:#9aa3c4;font-size:20px;line-height:1;padding:6px 8px;border-radius:8px;cursor:pointer}
.continue-chat-menu:hover{background:rgba(255,255,255,.06);color:#fff}
.continue-chat-empty{padding:24px 12px;color:#b8bfd8}
@media(max-width:720px){.continue-chat-row{gap:10px;padding:12px 4px}.continue-chat-avatar{width:46px;height:46px}}

/* TAROKUN persona chat */
.persona-page{padding:0 0 24px}
.persona-layout{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1.4fr);gap:18px;align-items:stretch}
.persona-picker,.persona-main{background:#211f20;border:1px solid #5a5356;border-radius:16px;padding:14px;min-width:0;display:flex;flex-direction:column}
.persona-picker-head{margin-bottom:8px}
.persona-picker h2,.persona-tuning h2{margin:0 0 4px;font-size:16px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:8px}
.persona-picker h2 span{font-size:12px;color:#ff9ab0;font-weight:800}
.persona-pick-hint{margin:0 0 6px;font-size:11px;color:#958c8f}
.persona-grid{display:grid;gap:6px;overflow:visible;flex:1}
.persona-card{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;padding:8px 10px;border:1px solid #5a5356;border-radius:12px;background:#1a1819;text-align:left;cursor:pointer;transition:border-color .2s,background .2s;width:100%}
.persona-card:hover{border-color:#7a6a70}
.persona-card.in-progress{border-color:#8a5a68}
.persona-card.active-slot{border-color:#ff6b91;background:#241d21}
.persona-slot-badge{position:absolute;top:6px;right:8px;font-size:9px;font-weight:800;color:#ffd0dc;background:#3a2230;padding:1px 6px;border-radius:999px}
.persona-avatar{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-weight:900;color:#fff;font-size:16px;border:1px solid rgba(255,255,255,.12);flex-shrink:0}
.persona-card-body{min-width:0;display:grid;gap:3px;padding-right:18px}
.persona-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.persona-card-head strong{color:#fff;font-size:14px;margin:0;min-width:0}
.persona-card .mbti{display:inline-block;padding:2px 7px;border-radius:999px;background:#2a2230;border:1px solid #6a4a58;color:#ffd0dc;font-size:10px;font-weight:800;margin:0;flex-shrink:0}
.persona-card .tags{display:flex;flex-wrap:wrap;gap:3px}
.persona-card .tags span{font-size:9px;padding:1px 6px;border-radius:999px;background:#2a2728;color:#958c8f}
.persona-card .quote{margin:0;color:#958c8f;font-size:11px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.persona-main{min-height:0}
.persona-tuning{display:grid;gap:8px;padding:12px;border:1px solid #5a5356;border-radius:14px;background:#1a1819;flex-shrink:0}
.persona-tuning-head{margin-bottom:4px}
.persona-tuning-head h2{margin:0 0 6px}
.persona-friend-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 8px}
.persona-friend-tab{padding:8px 4px;border-radius:10px;border:1px solid #5a5356;background:#101012;color:#958c8f;font-size:11px;font-weight:800;text-align:center;cursor:pointer;line-height:1.25}
.persona-friend-tab.active{border-color:#ff6b91;color:#fff;background:#241d21}
.persona-friend-tab.empty{opacity:.55}
.persona-weights{display:grid;gap:6px;padding:10px;border:1px solid #3a3538;border-radius:12px;background:#101012}
.persona-weight{display:grid;grid-template-columns:34px minmax(0,1fr) 30px;gap:8px;align-items:center;font-size:11px;color:#c5bdc1}
.persona-weight-bar{height:6px;border-radius:999px;background:#2a2728;overflow:hidden}
.persona-weight-bar i{display:block;height:100%;background:linear-gradient(90deg,#ff6b91,#a29bfe);border-radius:999px}
.persona-weight b{font-size:10px;color:#ff9ab0;text-align:right}
.persona-premium-note{margin:0;font-size:10px;color:#80777b}
.persona-field{display:grid;gap:5px}
.persona-field label{font-size:12px;font-weight:800;color:#c5bdc1}
.persona-field select,.persona-field input[type=range]{width:100%}
.persona-field select{height:38px;background:#211f20;border:1px solid #5a5356;border-radius:999px;padding:0 14px;color:#f8f4f5}
.persona-field output{display:none!important}
.subpage-top-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.persona-save-btn{background:var(--pink);color:#fff;border:0;border-radius:24px;padding:8px 16px;font-weight:800;font-size:13px;white-space:nowrap}
.persona-save-btn.saved{background:#3a3034;border:1px solid #6a4a58;color:#ffd0dc}
.persona-chat-zone{display:flex;flex-direction:column;flex:1;min-height:0;margin-top:10px}
.persona-chat-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px;padding:8px 10px;border:1px solid #5a5356;border-radius:12px;background:#1a1819;flex-shrink:0}
.persona-chat-head strong{color:#fff;font-size:15px}
.persona-chat-head small{color:#ff9ab0;font-weight:800;font-size:12px}
.persona-messages{display:grid;gap:8px;flex:1 1 auto;min-height:64px;max-height:132px;overflow:auto;padding:10px;border:1px solid #5a5356;border-radius:12px;background:#101012}
.persona-bubble{max-width:min(88%,520px);padding:9px 12px;border-radius:12px;line-height:1.5;font-size:13px;word-break:keep-all}
.persona-bubble.ai{background:#1d2336;border:1px solid #313a58;color:#eef1ff;justify-self:start}
.persona-bubble.me{background:#c84d6d;color:#fff;justify-self:end}
.persona-bubble.typing{opacity:.75}
.persona-chat-form{display:flex;gap:8px;margin-top:8px;flex-shrink:0}
.persona-chat-form input{flex:1;height:38px;background:#211f20;border:1px solid #5a5356;border-radius:999px;padding:0 14px;color:#fff;outline:0;font-size:13px}
.persona-chat-form input:focus{border-color:#ff6b91;box-shadow:0 0 0 3px rgba(255,79,120,.15)}
.persona-chat-form button{height:38px;padding:0 16px;border-radius:999px;background:var(--pink);color:#fff;font-weight:800;font-size:13px}
@media(max-width:900px){.persona-layout{grid-template-columns:1fr}.persona-main{min-height:auto}}

/* TAROKUN persona ui i18n */
.lang-switcher{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid #5a5356;border-radius:999px;background:#211f20;flex-shrink:0}
.lang-switcher button{min-width:52px;height:32px;padding:0 10px;border-radius:999px;background:transparent;color:#958c8f;font-size:10px;font-weight:800;line-height:1.1;white-space:nowrap}
.lang-switcher button:hover{color:#fff;background:#2a2728}
.lang-switcher button.active{background:var(--pink);color:#fff}
.topbar.topbar-unified{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:0 20px 8px!important;min-height:0!important;position:sticky!important;top:0!important;z-index:50!important;background:rgba(15,14,15,.94)!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--line)!important}
.topbar.topbar-unified .search.topbar-search-center{display:flex!important}
@media(min-width:1100px){
  .topbar.topbar-unified{padding-left:24px!important;padding-right:24px!important}
  .topbar.topbar-unified .header-brand{display:inline-flex!important}
}
@media(max-width:720px){
  .topbar:not(.topbar-unified){min-height:76px!important;padding:0 16px!important;gap:8px!important}
  .topbar .header-brand{font-size:18px!important}
  .topbar .header-brand .brand-mark{width:32px!important;height:32px!important}
  .topbar .search{flex:1 1 auto!important;max-width:none!important;height:45px!important}
  .lang-switcher button{min-width:44px;height:28px;padding:0 6px;font-size:9px}
}
#pageContent:has(.persona-page) .subpage-inner{padding-top:14px;padding-bottom:36px}
  #pageContent:has(.persona-page) .subpage-top{display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important}
  #pageContent:has(.persona-page) .subpage-top h1{font-size:clamp(20px,5vw,33.6px)!important;line-height:1.08!important;letter-spacing:-1.4px!important;margin:0 0 4px!important}
#pageContent:has(.persona-page) .subpage-top p{font-size:12px;line-height:1.45;max-width:640px;margin:0}
#pageContent:has(.persona-page) .subpage-close{padding:8px 14px;font-size:13px;flex-shrink:0}
#pageContent:has(.persona-page) .persona-page{margin-top:0}
#pageContent:has(.persona-page) .persona-layout{align-items:stretch!important}
#pageContent:has(.persona-page) .persona-main{min-height:0!important}
  #pageContent:has(.persona-page) .persona-grid{margin-top:0!important}
@media(min-width:1100px){
  .sidebar{padding-left:10px!important;padding-right:14px!important}
  .sidebar .brand{padding-left:6px!important}
  .sidebar .nav a{padding-left:8px!important}
}

/* TAROKUN persona group story */
.persona-speak-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 8px}
.persona-speak-tab{padding:8px 4px;border-radius:10px;border:1px solid #5a5356;background:#101012;color:#958c8f;font-size:11px;font-weight:800;text-align:center;cursor:pointer;line-height:1.25}
.persona-speak-tab.active{border-color:#a29bfe;color:#fff;background:#1d2336}
.persona-speak-tab.auto.active{border-color:#74b9ff;background:#152030}
.persona-speak-tab.story.active{border-color:#ffd33d;background:#2a2418;color:#fff}
.persona-story-choices{display:grid;gap:6px;margin:0 0 8px;padding:10px;border:1px dashed #6a6266;border-radius:12px;background:#151316}
.persona-story-choices-head{margin:0 0 4px;font-size:11px;font-weight:800;color:#ffd33d}
.persona-story-choice{display:block;width:100%;text-align:left;padding:9px 12px;border-radius:10px;border:1px solid #5a5356;background:#211f20;color:#f0eaed;font-size:12px;font-weight:700;line-height:1.45;cursor:pointer}
.persona-story-choice:hover{border-color:#ffd33d;background:#2a2418}
.persona-bubble.ai .persona-speaker{display:block;font-size:10px;font-weight:800;color:#ff9ab0;margin-bottom:4px}
.persona-bubble.me.choice{border-color:#ffd33d;box-shadow:0 0 0 1px rgba(255,211,61,.25)}
.persona-msg-feedback{display:flex;gap:4px;margin-top:6px}
.persona-msg-feedback button{width:28px;height:24px;border-radius:8px;border:1px solid #3a3538;background:#101012;font-size:12px;line-height:1;cursor:pointer;padding:0}
.persona-msg-feedback button:hover{border-color:#ff6b91}
.persona-auto-bar{display:flex;gap:8px;margin-top:6px;flex-shrink:0}
.persona-auto-bar button{flex:1;height:34px;border-radius:999px;border:1px solid #5a5356;background:#1a1819;color:#c5bdc1;font-size:11px;font-weight:800;cursor:pointer}
.persona-auto-bar button.primary{background:#352430;border-color:#ff6b91;color:#fff}
.persona-messages{max-height:min(38vh,220px)!important}
.persona-group-members{margin:0 0 8px;padding:10px;border:1px solid #5a5356;border-radius:12px;background:#151316;flex-shrink:0}
.persona-group-members[hidden]{display:none!important}
.persona-group-members-head{margin:0 0 6px;font-size:11px;font-weight:800;color:#9aa3c4}
.persona-group-members-list{display:flex;flex-wrap:wrap;gap:6px}
.persona-group-member{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 5px;border-radius:999px;border:1px solid #5a5356;background:#101012;color:#f0eaed;font-size:11px;font-weight:800}
.persona-group-member.active{border-color:#ff6b91;background:#241d21}
.persona-group-member-avatar{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;font-size:11px;font-weight:900;color:#fff;border:1px solid rgba(255,255,255,.12)}
.persona-start-wrap{margin-top:14px;padding:12px 0 4px;text-align:center;border-top:1px solid var(--line)}
.persona-start-chat{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:min(100%,320px);height:46px;padding:0 24px;border:0;border-radius:999px;background:var(--pink);color:#fff;font-size:15px;font-weight:900;cursor:pointer;box-shadow:0 8px 24px rgba(255,79,120,.22)}
.persona-start-chat:hover{filter:brightness(1.06)}
.persona-start-hint{margin:8px 0 0;font-size:11px;color:#958c8f}
@media(max-width:720px){.persona-speak-modes{grid-template-columns:repeat(3,minmax(0,1fr))}.persona-start-chat{width:100%}}

/* TAROKUN persona drawer chat */
.drawer.persona-group .drawer-head img{display:none}
.drawer.persona-group .drawer-persona-avatars{display:flex;gap:6px;align-items:center}
.drawer.persona-group .drawer-persona-avatars span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-weight:900;color:#fff;border:1px solid rgba(255,255,255,.15);font-size:16px}
.drawer-persona-modes{display:flex;gap:6px;margin:8px 30px 0;grid-column:2;flex-wrap:wrap}
.drawer-persona-modes button{padding:7px 12px;border-radius:999px;border:1px solid #485372;background:#151a29;color:#c5cbd8;font-size:11px;font-weight:800;cursor:pointer}
.drawer-persona-modes button.active{border-color:#ff6b91;background:#352430;color:#fff}
.drawer-persona-modes button.auto.active{border-color:#74b9ff;background:#152030}
.drawer-persona-modes button.story.active{border-color:#ffd33d;background:#2a2418;color:#fff}
.drawer-story-choices{display:grid;gap:6px;padding:0 30px 10px;grid-column:2}
.drawer-story-choices[hidden]{display:none!important}
.drawer-story-choices-head{margin:0;font-size:11px;font-weight:800;color:#ffd33d}
.drawer-story-choice{display:block;width:100%;text-align:left;padding:9px 12px;border-radius:10px;border:1px solid #485372;background:#151a29;color:#eef1ff;font-size:12px;font-weight:700;cursor:pointer}
.drawer-story-choice:hover{border-color:#ffd33d;background:#2a2418}
.drawer.persona-group .bubble.ai .bubble-speaker{display:block;font-size:11px;font-weight:800;color:#ff9ab0;margin-bottom:4px}
.drawer.persona-group .bubble.me.choice{border:1px solid #ffd33d;box-shadow:0 0 0 1px rgba(255,211,61,.25)}
.drawer.persona-group .character-info .persona-friend-dossier{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #383e55}
.drawer.persona-group .character-info .persona-friend-dossier:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
@media(max-width:720px){.drawer-persona-modes,.drawer-story-choices{grid-column:1;padding-left:15px;padding-right:15px;margin-left:0;margin-right:0}}

/* TAROKUN persona drawer header */
.drawer.persona-group .drawer-head{grid-template-areas:"main actions" "stats stats"!important;grid-template-columns:minmax(0,1fr) auto!important}
.drawer.persona-group .drawer-head img{display:none!important}
.drawer.persona-group .drawer-head-main{display:flex!important;align-items:center!important;gap:12px!important;min-width:0!important;flex-wrap:wrap!important}
.drawer.persona-group .drawer-persona-avatars{display:flex!important;gap:6px!important;align-items:center!important;flex-shrink:0!important}
.drawer.persona-group .drawer-persona-avatars span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-weight:900;color:#fff;border:1px solid rgba(255,255,255,.15);font-size:16px}
.drawer.persona-group .drawer-head-title{min-width:0;flex:1 1 180px}
.drawer.persona-group .drawer-head-title h3{margin:0;font-size:21px;line-height:1.25}
.drawer.persona-group .drawer-head-title p{margin:4px 0 0;font-size:13px;color:#b8bfd4}
.drawer-head-actions .persona-drawer-save{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 16px;border-radius:999px;background:#2b3048;border:1px solid #59617f;color:#eef1ff;font-size:13px;font-weight:800;cursor:pointer;white-space:nowrap}
.drawer-head-actions .persona-drawer-save:hover{border-color:#ff6b91;background:#352430}
.drawer-head-actions .persona-drawer-save.saved{border-color:#55efc4;color:#55efc4;background:#152820}
.persona-save-toast{position:fixed;top:24px;left:50%;transform:translateX(-50%) translateY(-12px);opacity:0;pointer-events:none;z-index:9999;padding:12px 22px;border-radius:999px;background:#152820;border:1px solid #55efc4;color:#55efc4;font-size:14px;font-weight:800;box-shadow:0 12px 40px rgba(0,0,0,.45);transition:opacity .2s ease,transform .2s ease}
.persona-save-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.drawer.persona-group .drawer-foot-actions{display:none!important}
@media(max-width:720px){.drawer.persona-group .drawer-head-main{gap:8px!important}.drawer.persona-group .drawer-persona-avatars span{width:38px;height:38px;font-size:14px;border-radius:12px}.drawer-head-actions .persona-drawer-save{height:38px;padding:0 12px;font-size:12px}}

/* TAROKUN persona avatars */
.persona-avatar,.persona-avatar.letter,.persona-group-member-avatar,.drawer-persona-avatar{flex-shrink:0;overflow:hidden}
.persona-avatar,.persona-avatar img,.persona-avatar.letter{width:44px;height:44px;border-radius:12px}
.persona-avatar img{display:block;object-fit:cover;border:1px solid rgba(255,255,255,.12)}
.persona-avatar.letter{display:grid;place-items:center;font-weight:900;color:#fff;font-size:16px;border:1px solid rgba(255,255,255,.12)}
.persona-group-member-avatar,.persona-group-member-avatar img,.persona-group-member-avatar.letter{width:24px;height:24px;border-radius:999px}
.persona-group-member-avatar img{display:block;object-fit:cover;border:1px solid rgba(255,255,255,.12)}
.persona-group-member-avatar.letter{display:grid;place-items:center;font-size:11px;font-weight:900;color:#fff;border:1px solid rgba(255,255,255,.12)}
.drawer.persona-group .drawer-persona-avatar,.drawer.persona-group .drawer-persona-avatar img,.drawer.persona-group .drawer-persona-avatar.letter{width:46px;height:46px;border-radius:14px}
.drawer.persona-group .drawer-persona-avatar img{display:block;object-fit:cover;border:1px solid rgba(255,255,255,.15)}
.drawer.persona-group .drawer-persona-avatar.letter{display:grid;place-items:center;font-weight:900;color:#fff;font-size:16px;border:1px solid rgba(255,255,255,.15)}
.bubble.ai.persona-has-avatar,.persona-bubble.ai.persona-has-avatar,.bubble.me.persona-has-avatar,.persona-bubble.me.persona-has-avatar{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:flex-start}
.persona-bubble.ai.persona-has-avatar,.persona-bubble.me.persona-has-avatar{grid-template-columns:32px minmax(0,1fr);gap:8px}
.bubble-avatar,.persona-bubble-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;object-position:top center;border:1px solid rgba(255,255,255,.15);display:block}
.persona-bubble-avatar{width:32px;height:32px}
.bubble-avatar.letter,.persona-bubble-avatar.letter{display:grid;place-items:center;font-size:13px;font-weight:900;color:#fff}
.bubble-avatar.letter.me-user,.persona-bubble-avatar.letter.me-user{background:#c84d6d}
.bubble-body,.persona-bubble-body{min-width:0}
@media(max-width:720px){.persona-avatar,.persona-avatar img,.persona-avatar.letter{width:36px!important;height:36px!important;border-radius:10px!important}.bubble.ai.persona-has-avatar,.persona-bubble.ai.persona-has-avatar{grid-template-columns:32px minmax(0,1fr)!important}.bubble-avatar,.persona-bubble-avatar{width:32px!important;height:32px!important}}

/* TAROKUN persona party features */
.persona-party-presets{margin:10px 0 4px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.persona-party-presets-label{font-size:11px;font-weight:800;color:#958c8f;margin-right:2px}
.persona-preset-btn{padding:6px 10px;border-radius:999px;border:1px solid #5a5356;background:#2a2728;color:#eef1ff;font-size:11px;font-weight:800;cursor:pointer}
.persona-preset-btn:hover{border-color:#ff6b91;background:#352430}
.persona-preset-btn.save{border-color:#74b9ff;color:#a8d4ff}
.persona-party-note{margin:0 0 8px;font-size:11px;color:#9aa3bf;line-height:1.45}
.persona-mention-bar{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px;align-items:center}
.persona-mention-bar[hidden]{display:none!important}
.persona-mention-label{font-size:11px;font-weight:800;color:#958c8f}
.persona-mention-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:1px solid #485372;background:#151a29;color:#eef1ff;font-size:11px;font-weight:800;cursor:pointer}
.persona-mention-chip:hover{border-color:#ff6b91;background:#352430}
.persona-mention-chip img,.persona-mention-chip .letter{width:18px;height:18px;border-radius:999px;object-fit:cover}
.drawer .persona-drawer-mention{margin:0 30px 8px;grid-column:2;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.drawer .persona-drawer-mention[hidden]{display:none!important}
@media(max-width:720px){.drawer .persona-drawer-mention{grid-column:1;margin:0 15px 8px}}

/* TAROKUN persona drawer sidebar ui */
.drawer.persona-group{grid-template-rows:auto minmax(0,1fr) auto auto auto!important}
.drawer.persona-group .character-info{grid-column:1;grid-row:2/6!important;max-height:none!important}
.drawer.persona-group .messages{grid-column:2!important;grid-row:2!important;min-height:0!important}
.drawer-persona-controls{grid-column:2;grid-row:3;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:10px 24px 0;background:#151a29;border-top:1px solid #383e55}
.drawer.persona-group .chat-form{grid-column:2!important;grid-row:4!important;border-top:0!important;padding-top:12px!important}
.drawer.persona-group .chat-ai-disclaimer{grid-column:2!important;grid-row:5!important;margin:0;padding:8px 24px 12px;font-size:8pt;line-height:1.45;color:#8b93ad;font-weight:300}
.drawer-persona-controls .drawer-persona-modes{margin:0!important;padding:0!important;grid-column:auto!important;justify-content:flex-start!important;width:100%;flex-wrap:wrap}
.drawer-persona-controls .persona-drawer-mention{margin:0!important;padding:0!important;grid-column:auto!important;justify-content:flex-start!important;width:100%;flex-wrap:wrap;gap:6px}
.drawer-persona-controls #drawerMentionBar{order:1}
.drawer-persona-controls #drawerPersonaModes{order:2}
.drawer.persona-group .persona-friend-dossier-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.drawer.persona-group .persona-dossier-avatar,.drawer.persona-group .persona-dossier-avatar img,.drawer.persona-group .persona-dossier-avatar.letter{width:44px;height:44px;border-radius:14px;flex-shrink:0}
.drawer.persona-group .persona-dossier-avatar img{display:block;object-fit:cover;border:1px solid rgba(255,255,255,.15)}
.drawer.persona-group .persona-dossier-avatar.letter{display:grid;place-items:center;font-weight:900;color:#fff;border:1px solid rgba(255,255,255,.15)}
.drawer.persona-group .persona-friend-dossier-head strong{font-size:13px;color:#f4f5fb;margin:0;letter-spacing:0}
@media(max-width:720px){
  .drawer.persona-group{grid-template-rows:auto auto minmax(0,1fr) auto auto auto!important}
  .drawer.persona-group .character-info{grid-column:1;grid-row:2/3!important;max-height:min(42vh,320px)!important}
  .drawer.persona-group .messages{grid-column:1!important;grid-row:3!important}
  .drawer-persona-controls{grid-column:1;grid-row:4;padding:8px 15px 0;align-items:stretch}
  .drawer.persona-group .chat-form{grid-column:1!important;grid-row:5!important}
  .drawer.persona-group .chat-ai-disclaimer{grid-column:1!important;grid-row:6!important;padding:8px 15px 10px}
  .drawer-persona-controls .drawer-persona-modes,.drawer-persona-controls .persona-drawer-mention{justify-content:flex-start}
}
.catalog-story-guests{margin-top:0;padding:12px 16px 14px;border:0;border-top:1px solid #485372;border-radius:0;background:#151a29;flex-shrink:0}
.drawer .character-info>.catalog-story-guests{max-height:min(38vh,300px);overflow-y:auto;-webkit-overflow-scrolling:touch}
.character-info-scroll .catalog-story-guests{display:none}
.catalog-story-guests strong{display:block;font-size:11px;letter-spacing:.1em;color:#ffd33d;margin:0 0 8px}
.catalog-story-guests p{font-size:12px;line-height:1.6;color:#c5cbd8;margin:0 0 10px}
.catalog-story-guest-list{display:grid;gap:8px;margin:0 0 10px}
.catalog-story-guest-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:#151a29;border:1px solid #3a4460}
.catalog-story-guest-item img,.catalog-story-guest-item .letter{width:34px;height:34px;border-radius:10px;object-fit:cover;flex-shrink:0}
.catalog-story-guest-item .letter{display:grid;place-items:center;font-weight:900;color:#fff;font-size:14px}
.catalog-story-guest-item span{font-size:12px;line-height:1.35;color:#eef1ff}
.catalog-story-guest-item small{display:block;color:#ff9ab0;font-size:10px;font-weight:800;margin-top:2px}
.catalog-story-guest-actions{display:flex;flex-wrap:wrap;gap:8px}
.catalog-story-guest-actions button{padding:8px 12px;border-radius:999px;border:1px solid #485372;background:#151a29;color:#eef1ff;font-size:11px;font-weight:800;cursor:pointer}
.catalog-story-guest-actions button.primary{border-color:#ff6b91;background:#352430}
.catalog-story-guest-actions button:hover{border-color:#ff6b91}
.drawer .bubble-speaker{display:block;font-size:11px;font-weight:600;color:#ff9ab0;margin-bottom:4px}
.drawer .bubble-wrap.guest-ai .chat-msg-avatar{border:1px solid rgba(255,211,61,.35)}

/* TAROKUN persona max two */

/* TAROKUN persona join leave v1 */
.drawer.persona-group .persona-friend-dossier.is-absent{opacity:.55}
.drawer.persona-group .persona-dossier-actions{display:flex;gap:6px;margin-top:10px}
.drawer.persona-group .persona-dossier-actions button{flex:1;min-height:30px;border-radius:8px;border:1px solid #3a4158;background:#1e2436;color:#e8ebf5;font-size:11px;font-weight:700;cursor:pointer;padding:0 8px}
.drawer.persona-group .persona-dossier-join{border-color:#4ade80;color:#bbf7d0}
.drawer.persona-group .persona-dossier-leave{border-color:#fb7185;color:#fecdd3}
.drawer.persona-group .persona-dossier-actions button.is-disabled{opacity:.35;cursor:default;pointer-events:none}
.drawer.persona-group .persona-add-char-btn{display:block;width:100%;margin-top:14px;padding:12px 10px;border-radius:12px;border:1px dashed #5b6380;background:#171c2b;color:#f4f5fb;font-size:12px;font-weight:800;cursor:pointer}
.drawer.persona-group .persona-add-char-btn:hover{border-color:#ff6b91;color:#ffb3c7}
.persona-add-modal{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:16px}
.persona-add-modal[hidden]{display:none!important}
.persona-add-modal-backdrop{position:absolute;inset:0;background:rgba(5,8,16,.72);backdrop-filter:blur(4px)}
.persona-add-modal-panel{position:relative;width:min(520px,100%);max-height:min(78vh,640px);overflow:auto;border-radius:16px;border:1px solid #3a4158;background:#151a29;box-shadow:0 24px 64px rgba(0,0,0,.45)}
.persona-add-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #2c3348}
.persona-add-modal-head strong{font-size:14px;color:#f4f5fb}
.persona-add-modal-close{width:32px;height:32px;border:0;border-radius:8px;background:#252b3d;color:#fff;font-size:20px;line-height:1;cursor:pointer}
.persona-add-modal-grid{display:grid;gap:10px;padding:12px}
.persona-add-modal-card{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:start;width:100%;text-align:left;padding:12px;border-radius:12px;border:1px solid #343b52;background:#1b2132;color:#e8ebf5;cursor:pointer}
.persona-add-modal-card:hover{border-color:#ff6b91;background:#221828}
.persona-add-modal-avatar,.persona-add-modal-avatar img,.persona-add-modal-avatar.letter{width:52px;height:52px;border-radius:14px}
.persona-add-modal-avatar img{display:block;object-fit:cover}
.persona-add-modal-avatar.letter{display:grid;place-items:center;font-weight:900;color:#fff}
.persona-add-modal-name{display:flex;flex-direction:column;gap:2px}
.persona-add-modal-name strong{font-size:13px}
.persona-add-modal-name em{font-style:normal;font-size:11px;color:#9aa3bd}
.persona-add-modal-card p{grid-column:1/-1;margin:0;font-size:11px;color:#b8bfd4;line-height:1.45}

/* TAROKUN persona chat typography */
.drawer.persona-group .drawer-head p,
.drawer.persona-group .character-info p,
.drawer.persona-group .character-info .persona-dossier-meta,
.drawer.persona-group .character-info .persona-dossier-quote,
.drawer.persona-group .character-info .dossier-label,
.drawer.persona-group .character-info .dossier-title,
.drawer.persona-group .chat-ai-disclaimer,
.drawer.persona-group .bubble,
.drawer.persona-group .bubble-body,
.drawer.persona-group .bubble.ai .bubble-speaker,
.drawer.persona-group .persona-bubble,
.drawer.persona-group .persona-bubble-body,
.persona-page .quote,
.persona-page .persona-premium-note,
.persona-page .persona-party-note,
.persona-page .persona-pick-hint,
.persona-page .persona-weight span,
.persona-page .persona-field label,
.persona-mention-label,
.persona-chat-head small,
.persona-card .quote,
.persona-card .tags,
.persona-bubble .persona-speaker{font-weight:500!important}
.drawer.persona-group .character-info .persona-friend-dossier-head strong,
.drawer.persona-group .drawer-head h3,
.persona-page h2,
.persona-page h3,
.persona-card .persona-card-head strong,
.persona-mention-chip,
.drawer-persona-modes button,
.persona-speak-tab{font-weight:700!important}

/* TAROKUN personality quiz flow */
.personality-match-page{max-width:720px;margin:0 auto;padding:8px 0 32px}
.personality-match-app{display:flex;flex-direction:column;gap:18px}
.pm-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:28px 20px;border-radius:20px;border:1px solid #3a4158;background:linear-gradient(180deg,#171c2b,#101522)}
.pm-compass{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;font-size:34px;background:radial-gradient(circle at 30% 30%,#ff9ab0,#6c5ce7 55%,#151a29);border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 32px rgba(0,0,0,.35)}
.pm-hero h2{margin:0;font-size:22px;color:#f4f5fb;letter-spacing:-.02em}
.pm-hero p{margin:0;font-size:13px;line-height:1.65;color:#b8bfd4;max-width:520px}
.pm-author{font-size:11px;color:#8f97b0}
.pm-chips{display:grid;gap:10px;width:100%;max-width:560px}
.pm-chip{width:100%;text-align:left;padding:14px 16px;border-radius:14px;border:1px solid #3f465f;background:#151926;color:#eef1ff;font-size:13px;line-height:1.45;cursor:pointer;transition:border-color .15s,background .15s}
.pm-chip:hover{border-color:#ff6b91;background:#1f1724}
.pm-chip.primary{border-color:#ff6b91;background:linear-gradient(180deg,#2a1822,#17131c);font-weight:800}
.pm-progress{display:flex;gap:8px;justify-content:center}
.pm-progress i{width:48px;height:4px;border-radius:999px;background:#2c3348}
.pm-progress i.on{background:#ff6b91}
.pm-quiz-card{padding:22px 18px;border-radius:18px;border:1px solid #3a4158;background:#151a29}
.pm-quiz-step{font-size:11px;font-weight:800;color:#ff9ab0;letter-spacing:.08em;margin-bottom:8px}
.pm-quiz-q{margin:0 0 16px;font-size:18px;line-height:1.45;color:#f4f5fb}
.pm-options{display:grid;gap:10px}
.pm-option{width:100%;text-align:left;padding:14px 16px;border-radius:12px;border:1px solid #3f465f;background:#121622;color:#e8ebf5;font-size:13px;line-height:1.5;cursor:pointer}
.pm-option:hover{border-color:#ff6b91;background:#1c1520}
.pm-result-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid #59617f;background:#1b2132;color:#fff;font-weight:900;font-size:18px;letter-spacing:.06em}
.pm-result-desc{margin:10px 0 0;font-size:13px;color:#b8bfd4;line-height:1.6}
.pm-rec-head{margin:0 0 12px;font-size:14px;color:#eef1ff}
.pm-rec-grid{display:grid;gap:10px}
.pm-rec-card{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:12px;border-radius:14px;border:1px solid #3f465f;background:#121622;cursor:pointer;text-align:left;color:inherit}
.pm-rec-card.selected{border-color:#ff6b91;background:#211828;box-shadow:0 0 0 1px rgba(255,107,145,.25) inset}
.pm-rec-card img,.pm-rec-avatar{width:56px;height:56px;border-radius:14px;object-fit:cover;border:1px solid rgba(255,255,255,.12)}
.pm-rec-avatar{display:grid;place-items:center;font-weight:900;color:#fff}
.pm-rec-meta strong{display:block;font-size:14px;color:#f4f5fb}
.pm-rec-meta span{font-size:11px;color:#9aa3bd}
.pm-rec-meta p{margin:6px 0 0;font-size:11px;color:#b8bfd4;line-height:1.45}
.pm-rec-check{width:28px;height:28px;border-radius:50%;border:1px solid #59617f;display:grid;place-items:center;font-size:14px;color:#ff6b91}
.pm-rec-card.selected .pm-rec-check{border-color:#ff6b91;background:rgba(255,107,145,.15)}
.pm-match-slots{display:grid;gap:12px;margin-bottom:14px}
.pm-match-slot{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:12px;border-radius:14px;border:1px solid #3f465f;background:#121622}
.pm-match-slot.is-excluded{opacity:.45;border-style:dashed}
.pm-match-slot.is-swap-target{border-color:#ffb8ca;box-shadow:0 0 0 1px rgba(255,107,145,.35) inset}
.pm-slot-actions{display:flex;flex-direction:column;gap:6px}
.pm-slot-btn{border:0;border-radius:8px;background:#ff6b91;color:#fff;font-size:11px;font-weight:800;padding:6px 10px;cursor:pointer;white-space:nowrap}
.pm-slot-btn.outline{background:transparent;border:1px solid #5a5356;color:#d8d2d6}
.pm-slot-btn:hover{filter:brightness(1.05)}
.pm-swap-picker{margin-top:12px;padding-top:12px;border-top:1px dashed #3a4158}
.pm-swap-option{grid-template-columns:56px 1fr!important}

.pm-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.pm-actions .subpage-cta{flex:1 1 180px;margin:0}
.pm-note{font-size:12px;color:#8f97b0;text-align:center;margin:0}
@media(max-width:720px){.pm-hero{padding:22px 14px}.pm-quiz-q{font-size:16px}}

/* TAROKUN card cycle layout fix */
.card>img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:#25283b}
.card-media{position:relative!important;display:block!important;aspect-ratio:3/4!important;overflow:hidden!important;background:#25283b}
.card-media .card-img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;display:block!important;object-fit:cover;object-position:top center;transition:opacity .35s ease;margin:0!important}
.card-media .card-img-bg{opacity:0;z-index:0}
.card-media .card-img-char{z-index:1;opacity:1}
.card-media.show-bg .card-img-char{opacity:0}
.card-media.show-bg .card-img-bg{opacity:1}
.admin-preview-card .card-media{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:12px;margin-bottom:12px;background:#25283b;border:1px solid #66708f}
.admin-preview-card .card-media .card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s ease;margin:0!important;aspect-ratio:auto!important;border-radius:0;border:0}
.admin-preview-card .card-media .card-img-bg{opacity:0;z-index:0}
.admin-preview-card .card-media .card-img-char{z-index:1}
.admin-preview-card .card-media.show-bg .card-img-char{opacity:0}
.admin-preview-card .card-media.show-bg .card-img-bg{opacity:1}
.admin-image-slot img{max-height:200px;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center}

/* TAROKUN admin nav + cycle fix */
.nav-admin-bottom{display:none!important;padding-top:10px;border-top:1px solid var(--line);flex-shrink:0}
.nav-admin-bottom a{padding:7px 9px;border-radius:9px;font-weight:800;font-size:18px;display:flex;gap:13px;align-items:center}
.nav-admin-bottom a:hover,.nav-admin-bottom a.active{background:#555052}
.card-media .card-img-bg{z-index:0}
.card-media .card-img-char{z-index:1}

/* TAROKUN admin bg ui fix */
[hidden]{display:none!important}
.topbar .search,.topbar label.search{background:#211f20!important;border:1px solid #5a5356!important;color:#958c8f!important;box-shadow:none!important}
.topbar .search input,.topbar .search input:-webkit-autofill,.topbar .search input:-webkit-autofill:focus,.topbar .search input:-webkit-autofill:hover{background:#211f20!important;-webkit-text-fill-color:#f8f4f5!important;caret-color:#f8f4f5!important;transition:background-color 99999s ease-out 0s}
.admin-bg-gate{display:grid;gap:14px}
.admin-bg-auth-form{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center}
.admin-bg-auth-form input{flex:1 1 220px;max-width:320px;height:46px;background:#10131e;border:1px solid #5a5356;border-radius:999px;padding:0 16px;color:#fff;outline:0}
.admin-bg-auth-form input:focus{border-color:#ff6b91;box-shadow:0 0 0 3px rgba(255,79,120,.15)}
.admin-bg-gate-status{min-height:20px;font-size:13px;color:#958c8f;text-align:center;margin:0}
.admin-bg-gate-status.is-error{color:#ff9ab0}
.admin-auth,.admin-editor{z-index:200}

/* TAROKUN admin bg batch */
.admin-bg-upload-batch{padding:24px 18px}
.admin-bg-upload-batch p{margin:0 0 14px;color:#958c8f;font-size:13px}
.admin-bg-assign-list{display:grid;gap:10px;max-height:min(52vh,520px);overflow:auto}
.admin-bg-assign-row{display:grid;grid-template-columns:minmax(120px,1.2fr) 72px 72px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid #5a5356;border-radius:12px;background:#211f20}
.admin-bg-assign-row strong{display:block;font-size:13px;color:#fff}
.admin-bg-assign-row small{display:block;color:#958c8f;font-size:11px;line-height:1.4}
.admin-bg-assign-row img{width:72px;height:72px;object-fit:cover;border-radius:10px;border:1px solid #5a5356;background:#1a1819}
.admin-bg-assign-row img.is-empty{opacity:.35;object-fit:contain;padding:8px}
.admin-bg-assign-empty{padding:18px;border:1px dashed #5a5356;border-radius:12px;color:#958c8f;text-align:center;background:#211f20}
@media(max-width:720px){.admin-bg-assign-row{grid-template-columns:1fr 64px 64px;grid-template-areas:"info info info" "char bg note";gap:8px}.admin-bg-assign-row strong,.admin-bg-assign-row small{grid-area:info}.admin-bg-assign-row img:first-of-type{grid-area:char}.admin-bg-assign-row img:last-of-type{grid-area:bg}.admin-bg-assign-row span{grid-area:note}}

/* TAROKUN admin bg page */
.admin-bg-page{display:grid;gap:18px}
.admin-bg-panel{background:#211f20;border:1px solid #5a5356;border-radius:16px;padding:20px;color:#f8f4f5}
.admin-bg-panel h2{margin:0 0 8px;font-size:18px;color:#fff}
.admin-bg-panel p{margin:0 0 14px;color:#958c8f;font-size:13px;line-height:1.6}
.admin-bg-field{display:grid;gap:8px;margin-bottom:14px}
.admin-bg-field label{font-size:12px;font-weight:800;color:#c5bdc1}
.admin-bg-field select{height:46px;background:#211f20;border:1px solid #5a5356;border-radius:999px;padding:0 16px;color:#f8f4f5;outline:0;width:100%;appearance:none}
.admin-bg-field select:focus{border-color:#ff6b91;box-shadow:0 0 0 3px rgba(255,79,120,.15)}
.admin-bg-upload{display:grid;gap:12px;padding:18px;border:1px dashed #5a5356;border-radius:14px;background:#211f20;text-align:center}
.admin-bg-upload img{width:100%;max-height:280px;object-fit:cover;border-radius:12px;border:1px solid #5a5356;background:#1a1819}
.admin-bg-upload img.is-empty{object-fit:contain;opacity:.45;padding:24px}
.admin-bg-upload label{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#2a2728;border:1px solid #5a5356;border-radius:999px;padding:11px 18px;font-weight:800;color:#f8f4f5;cursor:pointer}
.admin-bg-upload label:hover{border-color:#ff6b91;color:#fff}
.admin-bg-upload input[type=file]{display:none}
.admin-bg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-bg-preview{display:grid;gap:10px;padding:16px;border:1px solid #5a5356;border-radius:14px;background:#211f20}
.admin-bg-preview .card-media{position:relative;aspect-ratio:3/4;border-radius:12px;overflow:hidden;border:1px solid #5a5356;background:#1a1819}
.admin-bg-preview .card-media.show-bg .card-img-bg{opacity:1}
.admin-bg-preview .card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s ease}
.admin-bg-preview .card-img-bg{opacity:0;z-index:0}
.admin-bg-preview .card-img-char{z-index:1}
.admin-bg-preview h3,.admin-bg-preview small,.admin-bg-preview p{margin:0;color:#f8f4f5}
.admin-bg-preview small{color:#958c8f}
.admin-bg-gate{text-align:center;padding:28px 16px;background:#211f20;border:1px solid #5a5356;border-radius:16px}
.admin-bg-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
@media(max-width:720px){.admin-bg-grid{grid-template-columns:1fr}}

/* TAROKUN admin edit button fix */
.drawer-foot-actions .admin-edit-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important}
.drawer-foot-actions .admin-edit-trigger[hidden]{display:none!important}

/* TAROKUN chat stats ui */
.drawer-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;grid-template-areas:"avatar main actions" "stats stats stats"!important;align-items:center!important;gap:12px 15px!important}
.drawer-head img{grid-area:avatar}
.drawer-head-main{grid-area:main;min-width:0;overflow:hidden}
.drawer-head-main h3,.drawer-head-main p{margin:0;word-break:keep-all;overflow-wrap:anywhere;line-height:1.3}
.drawer-head-main h3{font-size:clamp(17px,4.2vw,21px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drawer-head-main p{margin-top:3px;font-size:12px;color:#b8bfd4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drawer-head-actions{grid-area:actions;display:flex!important;align-items:center!important;gap:10px!important;flex-shrink:0!important;margin-left:auto!important;align-self:start!important}
.chat-head-stats{grid-area:stats;display:flex!important;flex-wrap:wrap!important;gap:8px!important;padding-top:12px!important;margin-top:2px!important;border-top:1px solid rgba(72,83,114,.45)!important;width:100%!important}
.character-info .chat-head-stats.dossier-stats{margin:0 0 18px!important;padding:0!important;border:0!important}
.chat-stat,.chat-tag{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 10px!important;border-radius:999px!important;background:#242b42!important;border:1px solid #485372!important;font-size:11px!important;font-weight:800!important;color:#d8dcef!important;white-space:nowrap!important;line-height:1.2!important}
.chat-tag{color:#c5cce4!important;font-weight:700!important}
.chat-like-btn{cursor:pointer!important;background:#2a2230!important;border:1px solid #6a4a58!important;color:#ffb8ca!important;-webkit-appearance:none!important;appearance:none!important}
.chat-like-btn:hover{border-color:#ff6b91!important;background:#352430!important;color:#ffd0dc!important}
.chat-like-btn.active{background:rgba(255,107,145,.18)!important;border-color:rgba(255,107,145,.55)!important;color:#ffd0dc!important}
.character-info .chat-stat,.character-info .chat-tag{background:#20263a!important;border-color:#485372!important}
.chat-stat-icon{font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif!important;font-style:normal!important;line-height:1!important}
.drawer-head .close{width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;margin-left:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:#2b3048!important;border:1px solid #59617f!important;color:#eef1ff!important;font-size:0!important;line-height:1!important;-webkit-appearance:none!important;appearance:none!important;overflow:hidden!important}
.drawer-head .close:after{content:'×'!important;display:block!important;font-size:28px!important;line-height:1!important;color:#eef1ff!important}
.drawer .chat-form .send{background:var(--pink)!important;color:#fff!important;border:0!important;border-radius:9px!important;padding:0 18px!important;font-weight:900!important;min-height:48px!important;-webkit-appearance:none!important;appearance:none!important}
@media(max-width:720px){
  .drawer-head{grid-template-columns:44px minmax(0,1fr)!important;grid-template-areas:"avatar main" "actions actions" "stats stats"!important;gap:8px 10px!important;padding:10px 12px!important;align-items:center!important}
  .drawer-head img{width:44px!important;height:54px!important;align-self:center!important}
  .drawer-head-main{align-self:center!important;min-width:0!important;max-width:100%!important}
  .drawer-head-main h3{font-size:17px!important;white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .drawer-head-main p{font-size:11px!important;white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .drawer-head-actions{grid-area:actions!important;width:100%!important;margin-left:0!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:6px!important;row-gap:6px!important}
  .drawer-foot-actions{padding:0 12px 6px}
  .drawer-foot-actions .admin-edit-trigger{font-size:10px!important;padding:5px 9px!important;max-width:100%!important}
  .chat-drawer-tools button{width:30px!important;height:30px!important;font-size:13px!important}
  .drawer-head .close{width:36px!important;height:36px!important;min-width:36px!important}
  .drawer-head .close:after{font-size:24px!important}
  .chat-head-stats{gap:6px!important;padding-top:8px!important}
  .chat-stat,.chat-tag{font-size:11px!important;padding:6px 10px!important}
  .drawer .chat-form .send{min-width:64px!important;padding:0 12px!important;min-height:44px!important}
  .drawer.persona-group .drawer-head{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"main" "actions" "stats"!important}
  .drawer.persona-group .drawer-head-main{align-self:stretch!important}
}

/* TAROKUN chat stats */
.drawer-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"avatar main actions" "stats stats stats";align-items:center;gap:12px 15px}
.drawer-head img{grid-area:avatar}
.drawer-head-main{grid-area:main;min-width:0}
.drawer-head-actions{grid-area:actions;align-self:start}
.chat-head-stats{grid-area:stats;display:flex;flex-wrap:wrap;gap:8px;padding-top:12px;margin-top:2px;border-top:1px solid rgba(72,83,114,.45)}
.character-info .chat-head-stats.dossier-stats{margin:0 0 18px;padding:0;border:0}
.chat-stat,.chat-tag{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:#242b42;border:1px solid #485372;font-size:12px;font-weight:800;color:#d8dcef;white-space:nowrap;line-height:1.2}
.chat-tag{color:#c5cce4;font-weight:700}
.chat-like-btn{cursor:pointer;background:#2a2230;border-color:#6a4a58;color:#ffb8ca}
.chat-like-btn:hover{border-color:#ff6b91;background:#352430}
.chat-like-btn.active{background:rgba(255,107,145,.18);border-color:rgba(255,107,145,.55);color:#ffd0dc}
.character-info .chat-stat,.character-info .chat-tag{background:#20263a;border-color:#485372}
@media(max-width:720px){.chat-head-stats{gap:6px}.chat-stat,.chat-tag{font-size:11px;padding:6px 10px}}

/* NBTITALK layout tune */
.layout{grid-template-columns:186px 1fr}
@media(max-width:1050px){.layout{grid-template-columns:147px 1fr}}
.sidebar{padding:22px 10px}
.brand{padding:0 13px 30px;font-size:20px;gap:10px}
.brand-mark{width:34px;height:34px;border-width:6px}
.brand-mark:after{height:5px;width:18px;top:8px;left:2px}
.nav{gap:3px}
.nav a{padding:6px 7px;font-size:14px;gap:10px;line-height:1.68}
.side-note{padding:16px 10px;font-size:11px;line-height:1.68}
.sidebar-footer{padding:18px 16px 3px;font-size:9px;line-height:1.68}
.sidebar-footer strong{font-size:14px;margin-bottom:3px}
.sidebar-footer a{font-size:9px}
.card>img,.card-media{aspect-ratio:3/3.2}
.card>img,.card-media,.card-media .card-img{object-fit:cover;object-position:top center}
@media(min-width:721px){
  .sidebar{width:294px}
  body.menu-open .main{margin-right:294px!important}
}
@media(min-width:1100px){
  .sidebar{width:294px;padding:21px 18px}
  .content{margin-left:294px!important}
  .nav{gap:9px}
  .nav a{padding:7px 8px;font-size:11.2pt;line-height:1.68}
  .side-note{padding:16px;font-size:11px;line-height:1.68}
  #catalog{max-width:min(1180px,calc(100vw - 294px - 40px));margin:0 auto;padding:0 20px;width:100%}
  #catalog .grid{max-width:1080px;margin:0 auto;justify-content:center}
  .section-head,.catalog-eyebrow,.chips,#count{max-width:1080px;margin-left:auto;margin-right:auto}
}

/* TAROKUN topbar nav layout */
.topbar{display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:20;background:var(--bg)}
.topbar .top-headline{flex:1;min-width:0}
.topbar .search{display:flex!important;align-items:center}
.topbar-actions{display:flex!important;align-items:center;gap:12px;margin-left:auto;flex-shrink:0;position:relative;z-index:6}
.topbar .login{display:inline-flex!important;align-items:center;justify-content:center;padding:11px 18px;border-radius:999px;background:var(--pink);color:#fff;font-weight:800;white-space:nowrap}
.topbar .login[data-logout="true"]{background:#3a3034;border:1px solid #6a4a58;color:#ffd0dc}
.credit-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border-radius:50%;background:#2a2230;border:1px solid #6a4a58;color:#ffd0dc;cursor:pointer;line-height:1}
.credit-badge:hover,.credit-badge:focus-visible{background:#352430;border-color:#ff6b91;outline:none}
.credit-badge[hidden]{display:none!important}
.credit-badge .credit-icon{font-size:15px;line-height:1}
.credit-badge b{font-size:11px;font-weight:900;color:#fff;margin-top:2px}
.catalog-search{display:flex;align-items:center;gap:10px;width:100%;max-width:420px;margin:14px auto 0;height:46px;padding:0 16px;background:#211f20;border:1px solid #5a5356;border-radius:999px;color:#958c8f}
.catalog-search input{width:100%;border:0;background:transparent;outline:0;color:var(--text)}
.sidebar-recent-chat{margin:6px 2px 0;padding:0;background:transparent;border:0;overflow:hidden}
.sidebar-recent-chat[hidden]{display:none!important}
.sidebar-recent-row{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;width:100%;padding:8px;border:0;border-radius:12px;background:transparent;color:inherit;text-align:left;cursor:pointer}
.sidebar-recent-row:hover,.sidebar-recent-row:focus-visible{background:#242b42;outline:none}
.sidebar-recent-avatar{width:48px!important;height:48px!important;max-width:48px;max-height:48px;border-radius:50%;object-fit:cover;background:#151926;border:1px solid #485372;display:block}
.sidebar-recent-main{min-width:0}
.sidebar-recent-main strong{display:block;font-size:14px;font-weight:800;color:#f4f6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-recent-main p{margin:4px 0 0;font-size:12px;color:#8f98b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-recent-time{display:block;margin-top:4px;font-size:11px;color:#e8ebf7}
@media(max-width:720px){.topbar-actions{gap:8px}.credit-badge{width:42px;height:42px}.topbar .login{padding:10px 14px;font-size:13px}}

/* TAROKUN sidebar chat list + password toggle */
.sidebar-chat-list{margin-top:auto;flex-shrink:0;border-top:1px solid var(--line);padding:10px 4px 8px;min-height:0;max-height:min(38vh,320px);display:flex;flex-direction:column;overflow:hidden}
.sidebar-chat-list[hidden]{display:none!important}
.sidebar-chat-list-head{padding:0 10px 8px;font-size:11px;font-weight:800;color:#9aa3c4;letter-spacing:.04em}
.sidebar-chat-list-inner{overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:0 2px;scrollbar-width:thin}
.sidebar-chat-row{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center;width:100%;padding:8px;border:0;border-radius:10px;background:transparent;color:inherit;text-align:left;cursor:pointer}
.sidebar-chat-row:hover,.sidebar-chat-row:focus-visible{background:#242b42;outline:none}
.sidebar-chat-avatar{width:40px!important;height:40px!important;max-width:40px;max-height:40px;border-radius:50%;object-fit:cover;background:#151926;border:1px solid #485372;display:block;flex-shrink:0}
.sidebar-chat-main{min-width:0}
.sidebar-chat-main strong{display:block;font-size:13px;font-weight:800;color:#f4f6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-chat-main p{margin:3px 0 0;font-size:11px;color:#8f98b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-chat-time{display:block;margin-top:3px;font-size:10px;color:#e8ebf7}
.sidebar-chat-empty{padding:8px 10px;font-size:12px;color:#8f98b8;line-height:1.5}
.password-field-wrap{position:relative;display:flex;align-items:center;width:100%}
.password-field-wrap input{padding-right:46px!important;width:100%}
.password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);min-width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:#b8bfd8;font-size:12px;font-weight:800;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;white-space:nowrap}
.password-toggle:hover,.password-toggle:focus-visible{background:rgba(255,255,255,.08);color:#fff;outline:none}
.admin-auth-field .password-field-wrap input{height:46px}
@media(max-width:720px){.sidebar-chat-list{max-height:min(32vh,260px)}}

/* TAROKUN missing css bundle */
.layout{grid-template-columns:186px 1fr}
@media(max-width:1050px){.layout{grid-template-columns:147px 1fr}}
.sidebar{padding:22px 10px}
.brand{padding:0 13px 30px;font-size:20px;gap:10px}
.brand-mark{width:34px;height:34px;border-width:6px}
.brand-mark:after{height:5px;width:18px;top:8px;left:2px}
.nav{gap:3px}
.nav a{padding:6px 7px;font-size:14px;gap:10px;line-height:1.68}
.sidebar-footer{padding:18px 16px 3px;font-size:9px;line-height:1.68}
.sidebar-footer strong{font-size:14px;margin-bottom:3px}
.sidebar-footer a{font-size:9px}
.card>img,.card-media{aspect-ratio:3/3.2}
.card>img,.card-media,.card-media .card-img{object-fit:cover;object-position:top center}
@media(min-width:721px){.sidebar{width:294px}body.menu-open .main{margin-right:294px!important}}
@media(min-width:1100px){
  .sidebar{width:294px;padding:21px 18px}
  .content{margin-left:294px!important}
  .nav{gap:8px}
  .nav a{padding:7px 8px;font-size:11.2pt;line-height:1.68}
  #catalog{max-width:min(1180px,calc(100vw - 294px - 40px));margin:0 auto;padding:0 20px;width:100%}
  #catalog .grid{max-width:1080px;margin:0 auto;justify-content:center}
  .section-head,.catalog-eyebrow,.chips,#count{max-width:1080px;margin-left:auto;margin-right:auto}
}
.continue-chat-page{padding:0 4px}
.continue-chat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 6px 12px;border-bottom:1px solid rgba(72,83,114,.45);margin-bottom:8px}
.continue-chat-head h2{margin:0;font-size:18px;font-weight:800;color:#f4f6ff}
.continue-chat-head button{border:0;background:transparent;color:#b8bfd8;font-size:22px;line-height:1;cursor:pointer;padding:4px 8px;border-radius:8px}
.continue-chat-head button:hover{background:rgba(255,255,255,.06);color:#fff}
.continue-chat-list{display:flex;flex-direction:column;gap:2px}
.continue-chat-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 8px;border-radius:14px;cursor:pointer;border:1px solid transparent;background:transparent;color:inherit;text-align:left;width:100%}
.continue-chat-row:hover,.continue-chat-row:focus-visible{background:#20263a;border-color:#485372;outline:none}
.continue-chat-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;background:#151926;border:1px solid #485372}
.continue-chat-main{min-width:0}
.continue-chat-main strong{display:block;font-size:16px;font-weight:800;color:#f4f6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.continue-chat-main p{margin:6px 0 0;font-size:13px;color:#b8bfd8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.continue-chat-time{display:block;margin-top:4px;font-size:11px;color:#8f98b8}
.continue-chat-menu{border:0;background:transparent;color:#9aa3c4;font-size:20px;line-height:1;padding:6px 8px;border-radius:8px;cursor:pointer}
.continue-chat-menu:hover{background:rgba(255,255,255,.06);color:#fff}
.continue-chat-empty{padding:24px 12px;color:#b8bfd8}
.my-info-panel{text-align:center;padding:28px 24px}
.my-info-panel h2{margin:0 0 10px;font-size:18px}
.my-info-panel h2:not(:first-child){margin-top:28px}
.my-info-identity{font-size:16px;font-weight:700;color:#f4f6ff;word-break:break-all}
.my-info-credits{display:inline-flex;align-items:baseline;gap:6px;margin-top:8px;padding:16px 28px;border-radius:999px;background:#2a2230;border:1px solid #6a4a58}
.my-info-credits span{font-size:42px;font-weight:900;color:#fff;line-height:1}
.my-info-credits small{font-size:16px;color:#ffb8ca;font-weight:700}
.my-info-mask{font-size:28px;display:block;margin-bottom:6px}
@media(max-width:720px){.continue-chat-row{gap:10px;padding:12px 4px}.continue-chat-avatar{width:46px;height:46px}}

/* TAROKUN mypage ui */
.mypage-page{display:grid;gap:18px;max-width:920px;margin:0 auto}
.mypage-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.mypage-toolbar h2{margin:0;font-size:28px;font-weight:800;color:#f4f6ff}
.mypage-toolbar-actions{display:flex;gap:8px}
.mypage-icon-btn{width:38px;height:38px;border:0;border-radius:10px;background:#242028;color:#d8d2d6;font-size:16px;cursor:pointer}
.mypage-icon-btn:hover{background:#2f2a31;color:#fff}
.mypage-profile{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:center;padding:18px;border-radius:16px;background:#1d1b1f;border:1px solid #3a3538}
.mypage-avatar{width:92px;height:92px;border-radius:50%;background:linear-gradient(145deg,#3a3034,#221f22);border:1px solid #5a5356;display:grid;place-items:center;font-size:34px;color:#ffb8ca;overflow:hidden}
.mypage-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.mypage-name-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.mypage-display-name{margin:0;border:0;background:transparent;color:#fff;font-size:24px;font-weight:800;outline:none;width:100%}
.mypage-referrer{color:#ff6b91;font-size:13px;font-weight:700;white-space:nowrap;text-decoration:none}
.mypage-referrer:hover{color:#ff9ab0}
.mypage-uid-row{display:flex;align-items:center;gap:8px;color:#b8b0b4;font-size:13px;margin-bottom:8px}
.mypage-uid-row button{border:0;background:transparent;color:#958c8f;cursor:pointer;font-size:14px;padding:2px 4px;border-radius:6px}
.mypage-uid-row button:hover{background:#2a2528;color:#fff}
.mypage-social{margin:0;color:#958c8f;font-size:13px}
.mypage-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;border-radius:14px;background:#1d1b1f;border:1px solid #3a3538}
.mypage-stat{display:grid;justify-items:center;gap:4px;padding:8px 6px;border-right:1px solid #3a3538}
.mypage-stat:last-child{border-right:0}
.mypage-stat small{color:#958c8f;font-size:12px}
.mypage-stat strong{color:#fff;font-size:18px;font-weight:800}
.mypage-stat-icon{font-size:18px;line-height:1}
.mypage-bio{display:grid;gap:10px}
.mypage-bio label{font-size:14px;font-weight:800;color:#f4f6ff}
.mypage-bio textarea{min-height:120px;resize:vertical;background:#1d1b1f;border:1px solid #3a3538;border-radius:12px;padding:14px;color:#f4f6ff;outline:none}
.mypage-bio textarea:focus{border-color:#ff6b91;box-shadow:0 0 0 3px rgba(255,107,145,.12)}
.mypage-save-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.mypage-tabs{display:flex;gap:18px;overflow:auto;padding-bottom:4px;border-bottom:1px solid #3a3538}
.mypage-tabs button{border:0;background:transparent;color:#958c8f;font-size:15px;font-weight:700;padding:10px 2px;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent}
.mypage-tabs button.active,.mypage-tabs button[aria-selected="true"]{color:#fff;border-bottom-color:#ff6b91}
.mypage-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px 12px}
.mypage-list-head strong{color:#fff;font-size:16px}
.mypage-list-head strong span{color:#ff6b91}
.mypage-tab-content{min-height:180px;padding:28px 12px;border-radius:12px;background:#1a1819;border:1px dashed #3a3538;color:#958c8f;text-align:center}
.mypage-memory-panel{text-align:left;padding:20px 16px 24px}
.mypage-memory-intro{margin:0 0 16px;font-size:14px;line-height:1.55;color:#b8b0b3}
.mypage-memory-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:12px 14px;border-radius:12px;background:#221f21;border:1px solid #3a3538}
.mypage-memory-toggle{display:flex;align-items:center;gap:8px;color:#fff;font-size:14px;font-weight:600}
.mypage-memory-list{display:flex;flex-direction:column;gap:12px}
.mypage-memory-card{padding:14px 16px;border-radius:12px;background:#221f21;border:1px solid #3a3538;text-align:left}
.mypage-memory-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}
.mypage-memory-card-head strong{color:#fff;font-size:15px}
.mypage-memory-card-head small{display:block;color:#7f777a;font-size:12px;margin-top:4px}
.mypage-memory-card p{margin:0 0 8px;color:#d4ced0;font-size:14px;line-height:1.55}
.mypage-memory-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}
.mypage-memory-tags span{padding:3px 8px;border-radius:999px;background:#2d292b;color:#c8b8bc;font-size:12px}
.mypage-memory-actions{display:flex;flex-wrap:wrap;gap:8px}
.mypage-memory-actions button{border:1px solid #4a4246;background:#1a1819;color:#e8e2e4;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}
.mypage-memory-actions button:hover{border-color:#ff6b91;color:#fff}
.mypage-char-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;text-align:left}
.mypage-char-card{padding:12px;border-radius:12px;background:#211f20;border:1px solid #3a3538;color:#f4f6ff}
.mypage-char-card img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:10px;margin-bottom:10px;background:#151926}
.mypage-char-card strong{display:block;font-size:15px;margin-bottom:4px}
.mypage-char-card small{color:#958c8f;font-size:12px}
.mypage-danger-zone{margin:18px 0 0;border-color:#5a3538}.mypage-delete-btn{color:#ffb8ca;border-color:#5a3538}
.mypage-email-settings{margin:18px 0 0}.mypage-email-prefs{display:grid;gap:10px;margin:12px 0 14px}.mypage-email-opt{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.55;color:#e8dcc8;cursor:pointer}.mypage-email-opt input{margin-top:3px}
.admin-email-campaign-form{display:grid;gap:12px}.admin-email-campaign-form label{display:grid;gap:6px;font-size:12px;color:#c5bdc1;font-weight:700}.admin-email-campaign-form input,.admin-email-campaign-form select,.admin-email-campaign-form textarea{width:100%;box-sizing:border-box}.admin-email-campaign-actions{display:flex;flex-wrap:wrap;gap:8px}
.mypage-login-gate{padding:28px;border-radius:14px;background:#1d1b1f;border:1px solid #3a3538;text-align:center;color:#b8b0b4}
.mypage-name-inline{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.mypage-mbti-badge{border:0;border-radius:8px;background:#ff6b91;color:#fff;font-size:12px;font-weight:800;padding:4px 10px;cursor:pointer;flex-shrink:0;line-height:1.2}
.mypage-mbti-badge:hover{background:#ff4d8d}
.mypage-mbti-badge.is-empty{background:#3a3538;color:#958c8f;cursor:pointer}
.mypage-stat-points,.mypage-stat-mileage{position:relative}
.mypage-referrer-btn{margin-top:4px;border:1px solid rgba(255,107,145,.55);border-radius:999px;background:rgba(255,107,145,.12);color:#ffb8ca;font-size:10px;font-weight:800;padding:3px 10px;cursor:pointer}
.mypage-referrer-btn:hover{background:rgba(255,107,145,.22)}
.mypage-mileage-btn{border:0;background:transparent;padding:0;cursor:pointer;width:100%}
.mypage-mileage-btn strong{color:#fff;font-size:18px;font-weight:800}
.mypage-mileage-btn:hover strong{color:#ffb8ca}
.mypage-daily-mission{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,107,145,.45);background:rgba(255,107,145,.08);color:#ffd0dc;font-size:13px;font-weight:700}
.mypage-daily-mission strong{color:#fff;font-size:15px}
.mypage-daily-mission em{font-style:normal;color:#ffb8ca;font-size:12px;font-weight:800;white-space:nowrap}
.mypage-billing-section{display:grid;gap:14px}
.mypage-credit-panel{margin:0}
.mypage-empty-wrap{display:grid;gap:14px;justify-items:center;padding:12px 0}
.mypage-empty-cta{min-width:220px}
.mypage-match-panel{text-align:left;display:grid;gap:16px;color:#f4f6ff}
.mypage-match-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.mypage-match-badge{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:10px;background:#ff6b91;color:#fff;font-size:20px;font-weight:900;letter-spacing:.06em}
.mypage-match-bars{display:grid;gap:12px}
.mypage-match-bar{display:grid;gap:6px}
.mypage-match-bar label{display:flex;justify-content:space-between;font-size:12px;color:#c5bdc1;font-weight:700}
.mypage-match-track{height:8px;border-radius:999px;background:#2a2528;overflow:hidden}
.mypage-match-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#ff6b91,#ffb8ca)}
.mypage-match-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.mypage-support-panel{text-align:left;display:grid;gap:12px;color:#f4f6ff}
.mypage-support-panel a{color:#ffb8ca;font-weight:700;text-decoration:none}
.mypage-support-panel a:hover{text-decoration:underline}
.mypage-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:80;display:grid;place-items:center;padding:20px}
.mypage-modal-backdrop[hidden]{display:none!important}
.mypage-modal{width:min(420px,100%);padding:22px;border-radius:16px;background:#1d1b1f;border:1px solid #3a3538;color:#f4f6ff;box-shadow:0 18px 55px rgba(0,0,0,.45)}
.mypage-modal h3{margin:0 0 12px;font-size:18px}
.mypage-modal-close{float:right;border:0;background:transparent;color:#958c8f;font-size:20px;cursor:pointer}
.mypage-shop-grid{display:grid;gap:10px;margin-top:12px}
.mypage-shop-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;background:#211f20;border:1px solid #3a3538;font-size:13px}
.mypage-shop-item button{border:0;border-radius:8px;background:#ff6b91;color:#fff;font-size:11px;font-weight:800;padding:6px 10px;cursor:pointer}

@media(max-width:720px){.mypage-profile{grid-template-columns:72px minmax(0,1fr)}.mypage-avatar{width:72px;height:72px;font-size:28px}.mypage-display-name{font-size:20px}.mypage-stats{grid-template-columns:1fr}.mypage-stat{border-right:0;border-bottom:1px solid #3a3538}.mypage-stat:last-child{border-bottom:0}}

/* TAROKUN topbar fixed + notify bell */
header.topbar,
.topbar.topbar-search-first,
.topbar.topbar-center-v13{
  position:fixed!important;
  top:0!important;
  left:var(--app-sidebar-w,265px)!important;
  right:0!important;
  width:auto!important;
  z-index:100!important;
  background:rgba(15,14,15,.96)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  border-bottom:1px solid var(--line)!important;
}
.topbar-notify-btn{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  position:relative;
  width:40px;
  height:40px;
  min-width:40px;
  padding:0;
  border:1px solid rgba(94,179,255,.45);
  border-radius:50%;
  background:rgba(94,179,255,.08);
  color:#5eb3ff;
  cursor:pointer;
  flex-shrink:0;
  transition:background .15s,border-color .15s,color .15s,transform .15s;
}
.topbar-notify-btn:hover{background:rgba(94,179,255,.16);border-color:#5eb3ff;color:#9ed0ff;transform:translateY(-1px)}
.topbar-notify-dot{
  position:absolute;
  top:3px;
  right:3px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#ff3b4a;
  border:1.5px solid #211f20;
  box-shadow:0 0 0 1px rgba(255,59,74,.45);
  pointer-events:none;
  z-index:1;
}
.topbar-notify-dot[hidden]{display:none!important}
.topbar-notify-btn:active{transform:translateY(0)}
.topbar-notify-icon{display:block;pointer-events:none}
.topbar.topbar-search-first .topbar-notify-btn,
.topbar .topbar-notify-btn{width:40px!important;height:40px!important;min-width:40px!important}
@media(max-width:720px){
  header.topbar,
  .topbar.topbar-search-first,
  .topbar.topbar-center-v13{left:0!important}
  .topbar .topbar-notify-btn{width:34px!important;height:34px!important;min-width:34px!important}
  .topbar .topbar-notify-icon{width:17px!important;height:17px!important}
  .topbar .topbar-actions,
  .topbar.topbar-search-first .topbar-actions,
  .topbar.topbar-search-first .topbar-right{
    grid-template-columns:minmax(52px,1fr) 34px 34px auto 84px!important;
  }
}

/* TAROKUN zip-ref layout restore */
.topbar{display:flex;align-items:center;gap:22px;padding:0 5%;position:sticky;top:0;z-index:20;background:rgba(15,14,15,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.topbar .top-headline{flex:0 1 auto;min-width:0;margin:0}
.topbar .search{display:flex!important;align-items:center;gap:10px;flex:1 1 280px;max-width:min(650px,calc(100vw - 520px));height:46px;padding:0 16px;background:#211f20;border:1px solid #5a5356;border-radius:999px;color:#958c8f;margin:0}
.topbar .search input{width:100%;border:0;background:transparent;outline:0;color:var(--text)}
.topbar-actions{display:contents}
.topbar .credit-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border-radius:50%;background:#2a2230;border:1px solid #6a4a58;color:#ffd0dc;cursor:pointer;line-height:1;flex-shrink:0}
.topbar .credit-badge[hidden]{display:none!important}
.topbar .credit-badge:not([hidden]){margin-left:auto}
.topbar .credit-badge[hidden]+.login{margin-left:auto}
.topbar .credit-badge:not([hidden])+.login{margin-left:0}
.topbar .login{display:inline-flex!important;align-items:center;justify-content:center;padding:11px 18px;border-radius:999px;background:var(--pink);color:#fff;font-weight:800;white-space:nowrap;flex-shrink:0}
.topbar .login[data-logout="true"]{background:#3a3034;border:1px solid #6a4a58;color:#ffd0dc}
.catalog-search{display:none!important}
.section-head{display:block!important;flex-wrap:unset!important}
.section-head h2,.section-head small{display:inline-block;vertical-align:baseline}
.topbar{background:rgba(15,14,15,.94)!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--line)!important;gap:22px!important;padding:0 5%!important}
@media(min-width:1280px){
  .topbar{justify-content:flex-start}
  .topbar .search{position:absolute;left:57%;transform:translateX(-50%);width:min(650px,calc(100vw - 780px));flex:0 0 auto}
}
@media(max-width:720px){
  .topbar{gap:12px;padding:0 16px;height:76px}
  .topbar .top-headline{display:none}
  .topbar .search{flex:1 1 auto;max-width:none;height:45px;position:static;transform:none}
  .topbar .credit-badge{width:42px;height:42px}
  .topbar .login{padding:10px 14px;font-size:13px}
}
.layout{grid-template-columns:186px 1fr}
@media(max-width:1050px){.layout{grid-template-columns:147px 1fr}}
.sidebar{padding:22px 10px}
.brand{padding:0 13px 30px;font-size:20px;gap:10px}
.brand-mark{width:34px;height:34px;border-width:6px}
.brand-mark:after{height:5px;width:18px;top:8px;left:2px}
.card>img,.card-media{aspect-ratio:3/3.2}
.card>img,.card-media,.card-media .card-img{object-fit:cover;object-position:top center}
@media(min-width:721px){.sidebar{width:294px}body.menu-open .main{margin-right:294px!important}}
@media(min-width:1100px){
  .sidebar{width:294px;padding:21px 18px}
  .content{margin-left:294px!important}
  #catalog{max-width:min(1180px,calc(100vw - 294px - 40px));margin:0 auto;padding:0 20px;width:100%}
  #catalog .grid{max-width:1080px;margin:0 auto;justify-content:center}
  .section-head,.catalog-eyebrow,.chips,#count{max-width:1080px;margin-left:auto;margin-right:auto}
}
.continue-chat-page{padding:0 4px}
.continue-chat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 6px 12px;border-bottom:1px solid rgba(72,83,114,.45);margin-bottom:8px}
.continue-chat-head h2{margin:0;font-size:18px;font-weight:800;color:#f4f6ff}
.continue-chat-list{display:flex;flex-direction:column;gap:2px}
.continue-chat-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 8px;border-radius:14px;cursor:pointer;border:1px solid transparent;background:transparent;color:inherit;text-align:left;width:100%}
.continue-chat-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;background:#151926;border:1px solid #485372}
.continue-chat-main{min-width:0}
.continue-chat-main strong{display:block;font-size:16px;font-weight:800;color:#f4f6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.continue-chat-main p{margin:6px 0 0;font-size:13px;color:#b8bfd8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.continue-chat-time{display:block;margin-top:4px;font-size:11px;color:#8f98b8}
.continue-chat-empty{padding:24px 12px;color:#b8bfd8}
.my-info-panel{text-align:center;padding:28px 24px}
.my-info-credits{display:inline-flex;align-items:baseline;gap:6px;margin-top:8px;padding:16px 28px;border-radius:999px;background:#2a2230;border:1px solid #6a4a58}
.my-info-credits span{font-size:42px;font-weight:900;color:#fff;line-height:1}
.top-notice-bar{display:flex;align-items:center;gap:8px;width:min(920px,100%);max-width:920px;min-width:0;height:31px;min-height:31px;padding:0 12px;border-radius:999px;background:#211f20;border:1px solid #5a5356;cursor:pointer;text-align:left;transition:background .15s,border-color .15s;box-sizing:border-box}
.top-notice-bar:hover,.top-notice-bar:focus-visible{background:#2a2628;border-color:#7a7276;outline:none}
.top-notice-bar[hidden]{display:none!important}
.top-notice-kicker{flex-shrink:0;font-size:8px;font-weight:900;color:#ffb8ca;background:rgba(255,107,145,.18);padding:3px 8px;border-radius:999px;letter-spacing:.02em}
.top-notice-main{flex:1;min-width:0;display:flex;align-items:center;gap:8px}
.top-notice-text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:700;color:#ffd0dc}
.top-notice-date{flex-shrink:0;font-size:8px;color:#958c8f;font-weight:700}
.top-notice-arrow{flex-shrink:0;color:#ffb8ca;font-size:11px;font-weight:900;line-height:1}
.topbar-notice-slot{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;padding:0 10px;box-sizing:border-box}
.nav-notices-bottom{padding-top:0;border-top:0;flex-shrink:0}
.nav-notices-bottom a{padding:7px 9px;border-radius:9px;font-weight:800;font-size:18px;gap:13px;align-items:center}
.nav-notices-bottom a:hover,.nav-notices-bottom a.active{background:#555052}
.nav-support{padding-top:4px;margin-top:2px;border-top:1px solid var(--line);flex-shrink:0;display:flex;flex-direction:column;gap:2px}
.nav-support .nav-group-head{margin:10px 12px 4px;font-size:12px;font-weight:900;letter-spacing:.06em;color:#e8c766;line-height:1.3}
.nav-support a.nav-sub-link{padding-left:18px!important;font-size:16px!important;opacity:.96}
.nav-support a{padding:7px 9px;border-radius:9px;font-weight:800;font-size:18px;gap:13px;align-items:center;display:flex}
.nav-support a:hover,.nav-support a.active{background:#555052}
.sidebar-nav-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:2px;padding-right:2px}
.nav-persona-services{margin-top:16px;padding-top:10px;border-top:1px solid var(--line);flex-shrink:0;display:flex;flex-direction:column;gap:2px}
.nav-persona-services a{opacity:.94}
.notices-page{display:grid;gap:14px;max-width:920px;margin:0 auto}
.notices-list{display:grid;gap:12px}
.notice-card{padding:18px 20px;border-radius:14px;background:#1d1b1f;border:1px solid #3a3538;color:#f4f6ff;text-align:left}
.notice-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.notice-card-head h3{margin:0;font-size:17px;font-weight:800;line-height:1.45}
.notice-card-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}
.notice-badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800}
.notice-badge.event{background:rgba(255,107,145,.18);color:#ffb8ca;border:1px solid rgba(255,107,145,.35)}
.notice-badge.notice{background:rgba(116,185,255,.12);color:#9fd0ff;border:1px solid rgba(116,185,255,.28)}
.notice-card-date{font-size:12px;color:#958c8f;font-weight:700;white-space:nowrap}
.notice-card-body{margin:0;color:#c5bdc1;font-size:14px;line-height:1.7;white-space:pre-wrap}
.notice-empty{padding:28px;border-radius:14px;background:#1d1b1f;border:1px dashed #3a3538;color:#958c8f;text-align:center}
.board-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 0}
.board-tab{padding:10px 18px;border-radius:999px;border:1px solid #3a3538;background:#1d1b1f;color:#c5bdc1;font-size:20px;font-weight:800;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.board-tab:hover{border-color:#6a6266;color:#fff}
.board-tab.active{background:rgba(255,107,145,.16);border-color:rgba(255,107,145,.55);color:#ffd0dc}
.board-page{display:grid;gap:14px;max-width:920px;margin:0 auto}
.board-panel{display:grid;gap:14px}
.inquiry-form{display:grid;gap:12px}
.inquiry-list{display:grid;gap:12px;margin-top:4px}
.inquiry-card{padding:18px 20px;border-radius:14px;background:#1d1b1f;border:1px solid #3a3538;color:#f4f6ff;text-align:left}
.inquiry-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.inquiry-card-head h3{margin:0;font-size:17px;font-weight:800;line-height:1.45}
.inquiry-card-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}
.inquiry-badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800}
.inquiry-badge.open{background:rgba(255,193,7,.12);color:#ffd56a;border:1px solid rgba(255,193,7,.28)}
.inquiry-badge.answered{background:rgba(76,175,80,.12);color:#9be7a0;border:1px solid rgba(76,175,80,.28)}
.inquiry-card-date{font-size:12px;color:#958c8f;font-weight:700;white-space:nowrap}
.inquiry-card-body,.inquiry-card-reply{margin:0;color:#c5bdc1;font-size:14px;line-height:1.7;white-space:pre-wrap}
.inquiry-card-reply{margin-top:12px;padding-top:12px;border-top:1px dashed #3a3538;color:#d8f0dc}
.inquiry-card-reply strong{display:block;margin-bottom:6px;color:#9be7a0;font-size:12px;letter-spacing:.02em}
@media(max-width:1100px){.top-notice-bar{width:min(720px,100%);max-width:720px}}
@media(max-width:900px){.top-notice-bar{width:min(560px,100%);max-width:560px;font-size:13px}}
@media(max-width:720px){.topbar-notice-slot{display:none!important}}

/* TAROKUN chat interaction */
.char-profile-modal{position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:16px}
.char-profile-modal[hidden]{display:none!important}
.char-profile-backdrop{position:absolute;inset:0;background:rgba(8,10,18,.72);backdrop-filter:blur(4px)}
.char-profile-card{position:relative;z-index:1;display:flex;flex-direction:column;width:min(560px,100%);max-height:min(88vh,760px);overflow:hidden;border-radius:20px;border:1px solid #485372;background:linear-gradient(180deg,#1a2034,#121622);box-shadow:0 24px 80px rgba(0,0,0,.45);padding:0;color:#eef1ff}
.char-profile-head{flex-shrink:0;padding:22px 22px 0}
.char-profile-body{flex:1;min-height:0;overflow-y:auto;padding:0 22px;-webkit-overflow-scrolling:touch}
.char-profile-close{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:50%;border:1px solid #59617f;background:#2b3048;color:#eef1ff;font-size:24px;line-height:1;cursor:pointer}
.char-profile-hero{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:center;margin-bottom:14px}
.char-profile-hero img{width:92px;height:112px;object-fit:cover;border-radius:14px;border:1px solid #58617d;background:#151926}
.char-profile-hero h2{margin:0;font-size:24px;line-height:1.2}
.char-profile-hero p{margin:6px 0 0;font-size:13px;color:#b8bfd8}
.char-profile-stats{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}
.char-profile-stats .chat-stat,.char-profile-stats .chat-tag,.char-profile-stats .chat-like-btn{font-size:12px}
.char-profile-section{margin-top:12px}
.char-profile-section strong{display:block;margin-bottom:6px;font-size:12px;color:#ff9ab0;letter-spacing:.04em}
.char-profile-section p{margin:0;font-size:13px;line-height:1.65;color:#d8deef}
.char-profile-opening{margin-top:14px;padding:12px 14px;border-radius:12px;border:1px solid #485372;background:#151926}
.char-profile-creator{margin-top:10px;font-size:12px;color:#9aa3c4}
.char-profile-actions{display:flex;gap:10px;margin-top:0;padding:12px 22px 18px;flex-wrap:wrap;flex-shrink:0;border-top:1px solid #485372;background:#121622}
.char-story-modal{position:fixed;inset:0;z-index:13000;display:flex;align-items:center;justify-content:center;padding:16px}
.char-story-modal[hidden]{display:none!important}
.char-story-card{position:relative;z-index:1;display:flex;flex-direction:column;width:min(560px,100%);max-height:min(88vh,760px);overflow:hidden;border-radius:20px;border:1px solid #485372;background:linear-gradient(180deg,#1a2034,#121622);box-shadow:0 24px 80px rgba(0,0,0,.45);color:#eef1ff}
.char-story-head{flex-shrink:0;padding:22px 52px 12px 22px}
.char-story-head h2{margin:0;font-size:22px;line-height:1.25}
.char-story-head p{margin:6px 0 0;font-size:13px;color:#b8bfd8}
.char-story-body{flex:1;min-height:0;overflow-y:auto;padding:0 22px 22px;-webkit-overflow-scrolling:touch}
.char-story-section{margin-top:14px}
.char-story-section:first-child{margin-top:0}
.char-story-section strong{display:block;margin-bottom:6px;font-size:12px;color:#ff9ab0;letter-spacing:.04em}
.char-story-section p{margin:0;font-size:13px;line-height:1.65;color:#d8deef;white-space:pre-wrap;word-break:break-word}
.drawer-head-stats-row{grid-area:stats!important;display:flex!important;align-items:flex-start!important;gap:10px!important;width:100%!important;padding-top:12px!important;margin-top:2px!important;border-top:1px solid rgba(72,83,114,.45)!important;flex-wrap:wrap!important}
.drawer-head-stats-row .chat-head-stats{flex:1 1 200px;min-width:0;padding-top:0!important;margin-top:0!important;border-top:0!important;width:auto!important;grid-area:unset!important}
.drawer-head-quick-actions{display:flex!important;flex-shrink:0!important;gap:8px!important;align-items:flex-start!important;flex-wrap:nowrap!important;margin-left:auto!important}
.chat-story-view-btn,.chat-add-friend-btn{flex-shrink:0;height:28px;padding:0 11px;border-radius:999px;border:1px solid rgba(255,154,176,.35);background:rgba(200,77,109,.16);color:#ffd0dc;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap;line-height:1}
.chat-story-view-btn:hover,.chat-add-friend-btn:hover{border-color:#ff6b91;background:rgba(200,77,109,.28);color:#fff}
.drawer.persona-group .chat-story-view-btn,.drawer.persona-group .chat-add-friend-btn{display:none!important}
.char-friend-modal{position:fixed;inset:0;z-index:13000;display:flex;align-items:center;justify-content:center;padding:16px}
.char-friend-modal[hidden]{display:none!important}
.char-friend-card{position:relative;z-index:1;display:flex;flex-direction:column;width:min(520px,100%);max-height:min(88vh,720px);overflow:hidden;border-radius:20px;border:1px solid #485372;background:linear-gradient(180deg,#1a2034,#121622);box-shadow:0 24px 80px rgba(0,0,0,.45);color:#eef1ff}
.char-friend-head{flex-shrink:0;padding:22px 52px 12px 22px}
.char-friend-head h2{margin:0;font-size:22px;line-height:1.25}
.char-friend-head p{margin:6px 0 0;font-size:13px;color:#b8bfd8;line-height:1.5}
.char-friend-count{margin-top:10px!important;font-size:12px!important;color:#ff9ab0!important;font-weight:800!important}
.char-friend-body{flex:1;min-height:0;overflow-y:auto;padding:0 16px 16px;display:grid;gap:8px;-webkit-overflow-scrolling:touch}
.char-friend-pick{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:12px;border:1px solid #485372;background:#151926;color:#eef1ff;text-align:left;cursor:pointer}
.char-friend-pick:hover{border-color:#66708f}
.char-friend-pick.selected{border-color:#ff6b91;background:#352430;box-shadow:0 0 0 1px rgba(255,107,145,.35)}
.char-friend-pick.at-limit:not(.selected){opacity:.45;cursor:not-allowed}
.char-friend-pick img,.char-friend-pick .letter{width:44px;height:44px;border-radius:12px;object-fit:cover;flex-shrink:0}
.char-friend-pick .letter{display:grid;place-items:center;font-weight:900;color:#fff;font-size:16px}
.char-friend-pick-meta{min-width:0}
.char-friend-pick-meta strong{display:block;font-size:14px;line-height:1.3}
.char-friend-pick-meta small{display:block;font-size:11px;color:#b8bfd8;margin-top:3px;line-height:1.35}
.char-friend-actions{display:flex;gap:10px;padding:12px 22px 18px;flex-shrink:0;border-top:1px solid #485372;background:#121622}
.char-friend-actions button{flex:1 1 140px}
.char-profile-actions button,.char-profile-actions .subpage-cta{flex:1 1 140px}
.chat-drawer-tools{display:inline-flex;align-items:center;gap:5px;margin-right:2px}
.chat-drawer-tools button{width:32px;height:32px;border-radius:50%;border:1px solid #59617f;background:#2b3048;color:#eef1ff;font-size:14px;line-height:1;cursor:pointer}
.chat-drawer-tools button:hover{border-color:#ff6b91;color:#fff}
.chat-drawer-tools button:disabled{opacity:.45;cursor:not-allowed}
.bubble-wrap{display:flex;flex-direction:row;align-items:flex-start;gap:10px;max-width:min(92%,720px);margin-bottom:8px}
.bubble-wrap.me{flex-direction:row-reverse;margin-left:auto;margin-right:0;align-self:flex-end}
.bubble-wrap.ai{align-items:flex-start;margin-right:auto}
.bubble-main{display:flex;flex-direction:column;align-items:flex-start;min-width:0;flex:1 1 auto;max-width:100%}
.bubble-wrap.me .bubble-main{align-items:flex-end}
.chat-msg-avatar{width:40px;height:40px;min-width:40px;border-radius:50%;object-fit:cover;object-position:top center;border:1px solid rgba(255,255,255,.14);background:#25283b;display:block;flex-shrink:0;margin-top:2px}
.chat-msg-avatar.me{display:grid;place-items:center;font-size:14px;font-weight:900;color:#fff;background:#c84d6d;border-color:rgba(255,255,255,.22)}
.bubble-wrap .bubble{max-width:min(100%,610px)}
.bubble-actions{display:none!important}
.bubble-body{white-space:pre-wrap;word-break:break-word}
.continue-chat-row-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px}
.continue-chat-row-wrap .continue-chat-row{width:100%}
.continue-chat-delete,.sidebar-chat-delete{width:34px;height:34px;border-radius:10px;border:1px solid transparent;background:transparent;color:#9aa3c4;font-size:18px;cursor:pointer;line-height:1}
.continue-chat-delete:hover,.sidebar-chat-delete:hover{background:rgba(255,107,145,.12);border-color:#ff6b91;color:#ff9ab0}
.sidebar-chat-row-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px}
@media(max-width:720px){.char-profile-head{padding:16px 16px 0}.char-profile-body{padding:0 16px}.char-profile-actions{padding:12px 16px 16px}.char-story-head{padding:16px 48px 10px 16px}.char-story-body{padding:0 16px 16px}.char-friend-head{padding:16px 48px 10px 16px}.char-friend-body{padding:0 12px 12px}.char-friend-actions{padding:12px 16px 16px}.chat-story-view-btn,.chat-add-friend-btn{height:32px;padding:0 10px;font-size:10px}.drawer-head-stats-row{gap:8px;padding-top:8px}.drawer-head-quick-actions{gap:6px;width:100%;justify-content:flex-end}.char-profile-hero{grid-template-columns:72px minmax(0,1fr)}.char-profile-hero img{width:72px;height:88px}.chat-msg-avatar{width:34px;height:34px;min-width:34px;font-size:12px}.bubble-wrap{gap:8px}}

/* TAROKUN email login ui v1 */
.auth-panel{display:grid;gap:14px}
.auth-method-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px;border-radius:999px;background:#151926;border:1px solid #3a3538}
.auth-method-btn{height:40px;border:0;border-radius:999px;background:transparent;color:#b8bfd4;font-size:13px;font-weight:800;cursor:pointer}
.auth-method-btn.active{background:linear-gradient(135deg,#ff6b91,#c84d6d);color:#fff;box-shadow:0 8px 20px rgba(200,77,109,.22)}
.auth-method-section{display:grid;gap:12px}
.auth-method-section[hidden]{display:none!important}
.auth-method-note{margin:0;font-size:13px;line-height:1.55;color:#b8bfd4}
.auth-google-panel .google-auth-btn{margin-top:4px}

/* TAROKUN chat modal ux v1 */
.chat-drawer-credit-pill{display:inline-flex;align-items:center;gap:4px;height:34px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,154,176,.35);background:rgba(200,77,109,.16);color:#ffd0dc;font-size:12px;font-weight:800;line-height:1;cursor:pointer;flex-shrink:0}
.chat-drawer-credit-pill[hidden]{display:none!important}
.chat-drawer-credit-pill:hover{border-color:#ff6b91;background:rgba(200,77,109,.28);color:#fff}
.chat-drawer-credit-icon{font-size:13px;line-height:1}
.chat-drawer-credit-unit{opacity:.82;font-size:11px;font-weight:700}
.chat-system-notice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:min(100%,420px);margin:18px auto;padding:18px 20px;border-radius:16px;border:1px dashed rgba(255,154,176,.45);background:linear-gradient(180deg,rgba(42,34,48,.92),rgba(28,24,36,.92));text-align:center;align-self:center}
.chat-system-notice p{margin:0;font-size:14px;line-height:1.55;color:#eef1ff;font-weight:700}
.chat-system-notice-cta{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 18px;border-radius:999px;border:0;background:linear-gradient(135deg,#ff6b91,#c84d6d);color:#fff;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 8px 24px rgba(200,77,109,.28)}
.chat-system-notice-cta:hover{filter:brightness(1.06)}
.chat-form.credit-locked input,.chat-form.credit-locked .send{opacity:.72;cursor:not-allowed}
.bubble-wrap.me{flex-direction:row-reverse;margin-left:auto;margin-right:0;align-self:flex-end}
.bubble-wrap.ai{align-self:flex-start}
.bubble.me{background:linear-gradient(135deg,#d4567a 0%,#c84d6d 100%);border:1px solid rgba(255,154,176,.35);color:#fff;border-radius:16px 16px 4px 16px;box-shadow:0 8px 20px rgba(200,77,109,.18)}
.bubble.ai{border-radius:16px 16px 16px 4px}
.bubble-wrap.me .chat-msg-avatar.me{order:0}
.chat-typing-indicator{display:inline-flex;align-items:center;gap:5px;height:18px;padding:2px 0}
.chat-typing-indicator span{width:7px;height:7px;border-radius:50%;background:#ff9ab0;animation:chatTypingDot 1.2s ease-in-out infinite}
.chat-typing-indicator span:nth-child(2){animation-delay:.15s}
.chat-typing-indicator span:nth-child(3){animation-delay:.3s}
@keyframes chatTypingDot{0%,80%,100%{transform:translateY(0);opacity:.45}40%{transform:translateY(-5px);opacity:1}}
.bubble-wrap.ai .bubble.typing{min-width:68px;padding-top:14px;padding-bottom:14px}
@media(max-width:720px){.chat-drawer-credit-pill{height:32px;padding:0 10px;font-size:11px}}

.storybook-page{padding:0}.subpage-top:has(+ .storybook-page) .subpage-close{display:none}.storybook-launch{max-width:560px;margin:32px auto;padding:32px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,#12213a,#0c1628);box-shadow:0 20px 45px rgba(0,0,0,.35);text-align:center}.sb-card{width:150px;aspect-ratio:2/3;margin:0 auto 20px;border-radius:10px;overflow:hidden;border:1px solid #4a5c7a;box-shadow:0 14px 28px rgba(0,0,0,.45)}.sb-card img{display:block;width:100%;height:100%;object-fit:cover}.storybook-launch p{color:#a9b7c9;font-size:13px;line-height:1.6;margin:0 0 16px}.storybook-launch button{border:0;border-radius:12px;background:linear-gradient(135deg,#bd8b36,#efd077);color:#201806;font-weight:900;padding:14px 28px;font-size:15px;cursor:pointer}.storybook-launch button:hover{filter:brightness(1.05)}

/* TAROKUN sidebar nav visible + last chat only */
.sidebar .nav{flex:0 0 auto!important;min-height:0!important;overflow:visible!important;overflow-y:visible!important;overflow-x:visible!important}
.sidebar{overflow:visible!important}
@media(min-width:721px){.sidebar{overflow-y:visible!important;overflow-x:visible!important}}
.sidebar-chat-list{margin-top:0!important;flex-shrink:0!important;max-height:none!important;padding:6px 2px 4px!important}
.sidebar-chat-list-inner{overflow:visible!important;max-height:none!important}
.sidebar-footer{margin-top:auto!important;flex-shrink:0!important}

/* TAROKUN fix persona mentions corrupt */
.sidebar-chat-list{max-height:min(34vh,280px)!important;overflow:hidden!important}
.sidebar-chat-list-inner{overflow-y:auto!important;max-height:min(28vh,220px)!important}
.sidebar-chat-row{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;align-items:center!important}
.sidebar-chat-main p{display:block!important}

/* TAROKUN persona premium collapse */
.persona-premium-fold{margin-top:4px;border:1px solid #3a3440;border-radius:10px;background:#1a171c;overflow:hidden}
.persona-premium-fold-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important;padding:10px 12px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#d8d2d6!important;text-align:left!important;cursor:default!important;font:inherit!important}
.persona-premium-fold.is-locked .persona-premium-fold-head{opacity:.92}
.persona-premium-fold-title{font-size:12px;font-weight:800;color:#ece7ea}
.persona-paid-badge{font-style:normal;font-size:10px;font-weight:800;color:#ffb8d8;background:rgba(255,77,141,.12);border:1px solid rgba(255,77,141,.35);padding:3px 8px;border-radius:999px;white-space:nowrap}
.persona-premium-fold-body{padding:0 12px 10px}
.persona-premium-fold.is-locked .persona-premium-fold-body{display:none!important}
.persona-premium-fold:not(.is-locked) .persona-premium-fold-head{cursor:pointer!important}
.persona-premium-fold:not(.is-locked) .persona-premium-fold-body{display:block!important}

/* TAROKUN persona context fix */

/* TAROKUN ads removed */
/* TAROKUN monetization system */
.pricing-lead,.pricing-footnote{margin:8px 0 0;font-size:13px;line-height:1.55;color:#958c8f;max-width:720px}
.pricing-footnote{font-size:11px;margin-top:12px}
.plan-cards .plan-card.featured{border-color:rgba(255,77,141,.45);box-shadow:0 0 0 1px rgba(255,77,141,.18)}
.plan-tagline{margin:0 0 8px;font-size:12px;color:#b8bfd4}
.billing-plan-badge{display:inline-block;margin:8px 0 0;padding:6px 12px;border-radius:999px;background:#2a2230;border:1px solid #6a4a58;font-size:11px;font-weight:800;color:#ffb8ca}
.billing-usage{margin-top:10px;font-size:12px;color:#b8bfd4}
.billing-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.billing-faq-list{margin:0;padding-left:18px;color:#b8bfd4;line-height:1.6;font-size:13px}
.billing-faq-list li+li{margin-top:8px}
.billing-page .plan-card.compact{padding:16px}
.billing-hero{margin-bottom:18px}

/* TAROKUN nav brand search v1 */
.topbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:0 24px!important;min-height:56px!important;height:auto!important;position:sticky!important;top:0!important;z-index:50!important;background:rgba(15,14,15,.94)!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--line)!important}
.topbar .header-brand{position:static!important;left:auto!important;top:auto!important;display:inline-flex!important;align-items:center!important;gap:10px!important;flex:0 0 auto!important;font-size:20px!important;font-weight:900!important;letter-spacing:-.5px!important;color:#f8f4f5!important}
.topbar .header-brand .brand-mark{width:34px!important;height:34px!important;border-width:6px!important}
.topbar .top-headline{display:none!important}
.topbar .search{display:none!important}
.topbar .topbar-right,.topbar .topbar-actions{display:flex!important;align-items:center!important;gap:10px!important;margin-left:auto!important;flex:0 0 auto!important;position:relative!important;z-index:2!important}
.topbar .login{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:10px 16px!important;border-radius:999px!important;background:var(--pink)!important;color:#fff!important;font-weight:800!important;white-space:nowrap!important}
.topbar .login[data-logout="true"]{background:#3a3034!important;border:1px solid #6a4a58!important;color:#ffd0dc!important}
.topbar .lang-switcher{display:inline-flex!important;flex-wrap:nowrap!important;gap:4px!important}
.topbar .lang-switcher button{padding:6px 8px!important;font-size:11px!important;border-radius:8px!important;background:#211f20!important;border:1px solid #3a3538!important;color:#958c8f!important}
.topbar .lang-switcher button.active{background:#352430!important;border-color:#ff6b91!important;color:#fff!important}
#catalog .catalog-search-main{display:flex!important;align-items:center!important;gap:10px!important;flex:1 1 260px!important;min-width:180px!important;max-width:min(520px,100%)!important;height:46px!important;margin:0!important;padding:0 16px!important;background:#211f20!important;border:1px solid #5a5356!important;border-radius:999px!important;color:#958c8f!important}
#catalog .catalog-search-main input{width:100%!important;border:0!important;background:transparent!important;outline:0!important;color:var(--text)!important}
#catalog .section-head{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:10px 16px!important}
#catalog .section-head h2,#catalog .section-head small{flex:0 0 auto!important;margin:0!important}
@media(max-width:720px){
  .topbar{padding:0 16px 0 56px!important;min-height:76px!important}
  .topbar .header-brand{font-size:18px!important}
  .topbar .lang-switcher button{padding:5px 6px!important;font-size:10px!important}
  #catalog .catalog-search-main{flex:1 1 100%!important;max-width:100%!important;order:3!important}
}

/* TAROKUN catalog grid square v2 */
#catalog{max-width:min(1500px,calc(100vw - var(--sidebar-w,186px) - 28px))!important;margin:0 auto!important;padding:0 12px!important;width:100%!important;box-sizing:border-box!important}
#catalog .grid{display:grid!important;gap:12px!important;justify-content:center!important;justify-items:stretch!important;margin:0 auto!important;width:100%!important;max-width:1360px!important}
#catalog .section-head,#catalog .catalog-eyebrow,#catalog .chips,#catalog #count{max-width:1360px!important;margin-left:auto!important;margin-right:auto!important}
#catalog .card{align-self:start!important;overflow:hidden!important;border-radius:14px!important}
#catalog .card>img,#catalog .card .card-thumb-wrap>img,#catalog .card .card-thumb>img,#catalog .card-media,#catalog .card .card-thumb-wrap>.card-media{aspect-ratio:1/1!important;max-height:none!important;height:auto!important;width:100%!important;display:block!important}
#catalog .card>img,#catalog .card-media,#catalog .card-media .card-img{object-fit:cover!important;object-position:center top!important}
#catalog .card-media{position:relative!important;overflow:hidden!important;background:#25283b!important}
#catalog .card-media .card-img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;margin:0!important}
#catalog .card-body{padding:8px 10px 10px!important}
#catalog .card-meta{font-size:10px!important;margin-bottom:3px!important;line-height:1.3!important}
#catalog .card h3{font-size:14px!important;line-height:1.25!important;margin:0 0 4px!important}
#catalog .card p{font-size:11px!important;line-height:1.45!important;margin:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
@media(max-width:720px){
  #catalog .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:100%!important;gap:10px!important}
}
@media(min-width:721px) and (max-width:1099px){
  #catalog .grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:760px!important}
}
@media(min-width:1100px){
  #catalog .grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;max-width:1360px!important}
}
#catalog .card[data-id="3"]>img,
#catalog .card[data-id="3"] .card-thumb-wrap>img,
#catalog .card[data-id="3"] .card-media .card-img-char{
  object-position:center 8%!important;
  transform:scale(1.18)!important;
  transform-origin:center top!important;
}

/* TAROKUN sidebar notice layout v1 */
.sidebar{padding-top:10px!important;padding-bottom:12px!important}
.sidebar>.nav:first-of-type{margin-top:0!important;padding-top:0!important}
.sidebar .sidebar-brand{display:flex!important;align-items:center;gap:10px;padding:8px 12px 18px;font-weight:900;font-size:20px;letter-spacing:-.6px;color:#f8f4f5;text-decoration:none;flex-shrink:0}.sidebar .sidebar-brand .brand-mark{width:34px;height:34px;border-width:6px;flex-shrink:0}.sidebar .sidebar-brand .brand-mark:after{height:5px;width:18px;top:8px;left:2px}
.topbar{display:grid!important;grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto)!important;align-items:center!important;column-gap:16px!important;padding:0 24px!important;min-height:56px!important}
.topbar .header-brand{grid-column:1!important;justify-self:start!important}
.topbar .topbar-notice{display:block!important;grid-column:2!important;justify-self:center!important;width:100%!important;max-width:680px!important;margin:0 auto!important;padding:8px 18px!important;border:1px solid #3a3538!important;border-radius:999px!important;background:#191718!important;color:#c5bdc1!important;font-size:13px!important;font-weight:600!important;line-height:1.35!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.topbar .top-headline{display:none!important}
.topbar .topbar-right,.topbar .topbar-actions{grid-column:3!important;justify-self:end!important;margin-left:0!important}
@media(max-width:1100px){
  .topbar .topbar-notice{font-size:12px!important;padding:7px 14px!important;max-width:520px!important}
}
@media(max-width:900px){
  .topbar .topbar-notice{display:none!important}
  .topbar{grid-template-columns:minmax(0,auto) minmax(0,auto)!important}
  .topbar .topbar-right,.topbar .topbar-actions{grid-column:2!important}
}
@media(max-width:720px){
  .sidebar{padding-top:8px!important}
  .topbar{padding:0 16px 0 56px!important;min-height:76px!important}
}

/* TAROKUN admin mode after auth */

/* TAROKUN admin page fix spec */
body.admin-mode .sidebar .nav:not(.nav-admin-sidebar):not(.nav-admin-bottom),
body.admin-mode #sidebarChatList,
body.admin-mode .nav-admin-bottom{display:none!important}
body.admin-mode #sidebarAdminNav{display:grid!important;gap:4px;margin-bottom:12px}
body.admin-mode .admin-dash-nav{display:none!important}
body.admin-mode .admin-dash-layout{grid-template-columns:minmax(0,1fr)!important;gap:0!important}
body.admin-mode .admin-dash-main{width:100%!important;max-width:none!important}
body.admin-mode .topbar-search-slot{display:none!important}
body.admin-mode .topbar.topbar-search-first{grid-template-columns:minmax(0,1fr)!important;column-gap:12px!important}
body.admin-mode .topbar.topbar-search-first .topbar-actions{grid-column:1!important;justify-self:end!important;width:auto!important;max-width:none!important;overflow:visible!important;flex-wrap:nowrap!important;gap:10px!important}
body.admin-mode .topbar-welcome{max-width:none!important;flex:0 1 auto!important;min-width:0!important;overflow:visible!important;text-overflow:unset!important;margin-right:4px!important}
body.admin-mode .topbar-welcome-id{max-width:none!important;overflow:visible!important;text-overflow:unset!important;white-space:nowrap!important;display:inline!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important}
.nav-admin-sidebar .admin-dash-nav-btn{display:flex!important;width:100%}
.admin-credits-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px}
.admin-credits-toolbar input[type=search],.admin-credits-toolbar select{height:42px;background:#10131e;border:1px solid #5a5356;border-radius:10px;padding:0 12px;color:#fff;outline:0;font:inherit}
.admin-credits-toolbar input[type=search]{flex:1 1 220px;min-width:180px;max-width:360px}
.admin-credits-toolbar select{min-width:120px;appearance:none;cursor:pointer}
.admin-credits-toolbar input:focus,.admin-credits-toolbar select:focus{border-color:#ff6b91;box-shadow:0 0 0 3px rgba(255,107,145,.15)}
.admin-self-credit-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.admin-self-credit-panel{border:1px solid rgba(255,107,145,.35)!important;background:linear-gradient(180deg,rgba(255,107,145,.08),rgba(26,24,25,.4))!important}
.admin-self-credit-panel h2{margin:0 0 6px;font-size:16px;color:#ffd0dc}
.admin-self-credit-panel .subpage-note{margin:0 0 8px}

/* TAROKUN admin dashboard v1 */
.admin-dash-shell{display:grid;gap:0}
.admin-dash-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px;align-items:start}
.admin-dash-nav{display:grid;gap:6px;position:sticky;top:12px;padding:10px;background:#191718;border:1px solid #3a3538;border-radius:14px}
.admin-dash-nav-btn{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;border:0;border-radius:10px;background:transparent;color:#c5bdc1;font-weight:800;font-size:14px;text-align:left;cursor:pointer}
.admin-dash-nav-btn span{flex:1}
.admin-dash-nav-btn:hover,.admin-dash-nav-btn.active{background:#2a2728;color:#fff}
.admin-dash-nav-btn.active{border:1px solid #ff6b91;color:#ffd0dc}
.admin-dash-main{min-width:0;display:grid;gap:14px}
.admin-dash-panel{display:none;gap:14px}
.admin-dash-panel.active{display:grid}
.admin-dash-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.admin-stat-card{padding:16px;border:1px solid #3a3538;border-radius:14px;background:#211f20}
.admin-stat-card small{display:block;color:#958c8f;font-size:11px;margin-bottom:6px}
.admin-stat-card strong{display:block;font-size:24px;color:#fff;line-height:1.1}
.admin-stat-card em{display:block;margin-top:6px;font-style:normal;color:#ff9ab0;font-size:11px}
.admin-dash-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}
.admin-dash-toolbar h2{margin:0;flex:1 1 auto}
.admin-dash-toolbar input[type=search],.admin-dash-credit-form input,.admin-dash-credit-form select{height:42px;background:#10131e;border:1px solid #5a5356;border-radius:10px;padding:0 12px;color:#fff;outline:0}
.admin-dash-toolbar input[type=search]{min-width:180px;flex:1 1 200px;max-width:320px}
.admin-dash-table-wrap{overflow:auto;border:1px solid #3a3538;border-radius:12px;background:#191718}
.admin-dash-table{width:100%;border-collapse:collapse;font-size:13px}
.admin-dash-table th,.admin-dash-table td{padding:10px 12px;border-bottom:1px solid #2a2728;text-align:left;vertical-align:middle}
.admin-dash-table th{color:#958c8f;font-size:11px;font-weight:800;background:#211f20;position:sticky;top:0}
.admin-dash-table tr:last-child td{border-bottom:0}
.admin-dash-table .plan-pill{display:inline-block;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#2a2728;color:#c5bdc1}
.admin-dash-table .plan-pill.plus{background:#352430;color:#ffd0dc}
.admin-dash-table .plan-pill.pro{background:#2a314a;color:#dbe4ff}
.admin-dash-table .row-actions{display:flex;flex-wrap:wrap;gap:6px}
.admin-dash-table .row-actions button{padding:6px 10px;border-radius:8px;border:1px solid #5a5356;background:#2a2728;color:#fff;font-size:11px;font-weight:800;cursor:pointer}
.admin-dash-table .row-actions button:hover{border-color:#ff6b91}
.admin-dash-table .row-actions button.admin-btn-warn{border-color:#8a5a20;color:#ffd59a}
.admin-dash-table .row-actions button.admin-btn-warn:hover{border-color:#ffb347;background:#3a3020}
.admin-dash-table .row-actions button.admin-btn-danger{border-color:#8a3048;color:#ffb8c8}
.admin-dash-table .row-actions button.admin-btn-danger:hover{border-color:#ff6b91;background:#4a2028}
.admin-dash-table .admin-credit-plus{color:#3ecf8e;font-weight:800}
.admin-dash-table .admin-credit-minus{color:#ff8a9a;font-weight:800}
.admin-dash-table .status-pill{display:inline-block;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#2a2728;color:#c5bdc1}
.admin-dash-table .status-pill.suspended{background:#4a2028;color:#ffb8c8}
.admin-dash-table .status-pill.suspicious{background:#3a3020;color:#ffd59a}
.admin-dash-table .status-pill.active{background:#1f2a24;color:#b8e6c8}
.admin-dash-table .status-note{display:block;margin-top:4px;font-size:10px;color:#958c8f;font-weight:600}
.admin-dash-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px;color:#958c8f;font-size:12px}
.admin-dash-credit-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end;margin:12px 0}
.admin-dash-credit-form label{display:grid;gap:6px;font-size:12px;color:#c5bdc1;font-weight:700}
.admin-dash-gate .admin-bg-auth-form{margin-top:10px}
.admin-cookie-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cookie-admin-breakdown{display:grid;gap:10px;margin-top:8px}
.cookie-consent-bar{display:grid;grid-template-columns:minmax(120px,28%) 1fr 52px;gap:10px;align-items:center;font-size:13px;color:#e8e2e4}
.cookie-consent-bar .bar{height:10px;border-radius:999px;background:#2a2728;overflow:hidden}
.cookie-consent-bar .bar span{display:block;height:100%;background:linear-gradient(90deg,#ff6b91,#ffb8ca);border-radius:999px}
.cookie-admin-daily{display:grid;gap:8px}
.cookie-daily-row{display:grid;grid-template-columns:92px repeat(4,1fr);gap:8px;align-items:center;font-size:12px;color:#c5bdc1;padding:8px 10px;border-radius:10px;background:#141214;border:1px solid #2a2728}
.cookie-daily-row.head{font-weight:800;color:#958c8f;background:transparent;border:0;padding:0 10px 4px}
.cookie-daily-row b{color:#fff;font-size:11px;font-weight:800}
@media(max-width:900px){.admin-cookie-grid{grid-template-columns:1fr}.cookie-daily-row{grid-template-columns:1fr 1fr;gap:6px}}
@media(max-width:900px){
  .admin-dash-layout{grid-template-columns:1fr}
  .admin-dash-nav{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-dash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-dash-credit-form{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .admin-dash-nav{grid-template-columns:1fr}
  .admin-dash-stats{grid-template-columns:1fr}
  .admin-dash-credit-form{grid-template-columns:1fr}
}

/* TAROKUN admin login eyebrow fix v1 */
.subpage-top .eyebrow{display:none!important}
.subpage-view{inset:56px 0 0 265px!important}
.subpage-view.open~* .content,.subpage-view.open~* .content .site-footer-global{display:none!important}
body:has(.subpage-view.open) .main>.content{display:none!important}
@media(max-width:1099px){
  .subpage-view{inset:76px 0 0 0!important}
}
@media(max-width:720px){
  .subpage-view{inset:76px 0 0 0!important}
}

/* TAROKUN responsive full */
:root{--unified-header-h:96px;--sidebar-w:294px;--safe-bottom:env(safe-area-inset-bottom,0px)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:hidden}
.subpage-view{left:0!important;right:0!important;inset:var(--unified-header-h) 0 0 0!important;width:100%!important;max-width:100vw!important;-webkit-overflow-scrolling:touch}
.subpage-inner{max-width:100%;padding-left:clamp(12px,3vw,24px)!important;padding-right:clamp(12px,3vw,24px)!important}
.layout-unified .content{max-width:100vw;overflow-x:hidden}
.topbar.topbar-unified .topbar-right{flex-wrap:nowrap!important;min-width:0!important}
.topbar.topbar-unified .login{white-space:nowrap!important}
@media(max-width:900px){
  .persona-layout{grid-template-columns:1fr!important;gap:12px!important}
  .persona-main{min-height:auto!important}
}
@media(max-width:720px){
  :root{--unified-header-h:118px}
  .subpage-inner{padding-top:12px!important;padding-bottom:calc(28px + var(--safe-bottom))!important}
  .subpage-top{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-bottom:10px!important}
  .subpage-top h1{font-size:clamp(22px,6.8vw,30px)!important;line-height:1.12!important;letter-spacing:-1.2px!important;word-break:keep-all!important}
  .subpage-top p{font-size:12px!important;line-height:1.45!important;max-width:none!important}
  .subpage-top-actions{display:flex!important;width:100%!important;gap:8px!important;margin-top:2px!important}
  .subpage-top-actions .persona-save-btn,.subpage-top-actions .subpage-close,.subpage-top>.subpage-close{flex:1 1 0!important;min-width:0!important;text-align:center!important;justify-content:center!important}
  .subpage-close{padding:9px 10px!important;font-size:12px!important}
  .persona-save-btn{padding:9px 10px!important;font-size:12px!important}
  #pageContent:has(.persona-page) .subpage-inner{padding-top:10px!important;padding-bottom:calc(24px + var(--safe-bottom))!important}
  #pageContent:has(.persona-page) .subpage-top h1{font-size:clamp(20px,6.2vw,28px)!important}
  #pageContent:has(.persona-page) .subpage-top .eyebrow{font-size:10px!important}
  .persona-page{padding-bottom:12px!important}
  .persona-picker,.persona-main{padding:10px!important;border-radius:12px!important}
  .persona-picker-head{margin-bottom:6px!important}
  .persona-picker h2,.persona-tuning-head h2{font-size:14px!important}
  .persona-pick-hint{font-size:10px!important}
  #pageContent:has(.persona-page) .persona-grid,.persona-grid{max-height:min(38vh,280px)!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin;padding-right:2px!important}
  .persona-card{grid-template-columns:36px minmax(0,1fr)!important;padding:7px 8px!important;gap:7px!important}
  .persona-avatar{width:36px!important;height:36px!important;font-size:13px!important;border-radius:10px!important}
  .persona-card-head strong{font-size:13px!important}
  .persona-card .mbti{font-size:9px!important;padding:1px 6px!important}
  .persona-card .tags span{font-size:8px!important}
  .persona-card .quote{font-size:10px!important;-webkit-line-clamp:1!important;line-height:1.3!important}
  .persona-slot-badge{top:4px!important;right:6px!important;font-size:8px!important;padding:1px 5px!important}
  .persona-tuning{padding:10px!important;gap:7px!important}
  .persona-friend-tabs{gap:4px!important;margin-bottom:6px!important}
  .persona-friend-tab{font-size:10px!important;padding:7px 3px!important}
  .persona-field label{font-size:11px!important}
  .persona-field select{height:36px!important;font-size:13px!important}
  .persona-messages{max-height:110px!important;min-height:56px!important;padding:8px!important}
  .persona-bubble{font-size:12px!important;padding:8px 10px!important}
  .persona-chat-form input{height:40px!important;font-size:16px!important}
  .persona-chat-form button{height:40px!important;padding:0 12px!important;font-size:12px!important}
  .persona-chat-head{padding:7px 8px!important;margin-bottom:6px!important}
  .persona-chat-head strong{font-size:13px!important}
  .persona-chat-head small{font-size:11px!important}
  .topbar.topbar-unified{padding:0 10px 6px!important}
  .topbar-row-nav{gap:6px!important;min-height:46px!important;padding:6px 0 2px!important}
  .topbar.topbar-unified .header-brand{font-size:15px!important;gap:6px!important}
  .topbar.topbar-unified .header-brand .brand-mark{width:28px!important;height:28px!important;border-width:5px!important}
  .menu-toggle-inline{width:36px!important;height:36px!important;font-size:17px!important;border-radius:10px!important}
  .topbar-row-nav .topbar-right{gap:5px!important}
  .topbar .login{padding:8px 11px!important;font-size:12px!important;line-height:1!important}
  .credit-badge{width:36px!important;height:36px!important}
  .credit-badge .credit-icon{font-size:12px!important}
  .credit-badge b{font-size:9px!important;margin-top:1px!important}
  .lang-switcher{padding:2px!important;gap:1px!important}
  .lang-switcher button{min-width:24px!important;height:24px!important;padding:0 3px!important;font-size:9px!important}
  .topbar-search-center{height:36px!important;padding:0 12px!important;font-size:13px!important}
  .layout-unified .content{padding:14px 10px 0!important}
  #catalog{padding:0!important}
  #catalog .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .section-head h2{font-size:clamp(22px,6vw,28px)!important}
  .chips{gap:6px!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:4px!important;scrollbar-width:thin}
  .chips .chip{flex-shrink:0!important}
  .drawer{width:calc(100vw - 16px)!important;height:calc(100dvh - 16px)!important}
}
@media(max-width:480px){
  :root{--unified-header-h:112px}
  .topbar.topbar-unified .header-brand span:not(.brand-mark){display:none!important}
  .topbar.topbar-unified .header-brand .brand-mark{width:26px!important;height:26px!important}
  .topbar .login{padding:8px 9px!important;font-size:11px!important}
  .lang-switcher button{min-width:22px!important;height:22px!important;font-size:8px!important}
  .subpage-top h1{font-size:clamp(18px,5.6vw,24px)!important}
  #pageContent:has(.persona-page) .persona-grid,.persona-grid{max-height:min(34vh,240px)!important}
  #catalog .grid{gap:8px!important}
  .card-body{padding:9px!important}
  .card h3{font-size:14px!important}
}
@media(min-width:721px) and (max-width:1099px){
  :root{--unified-header-h:112px}
  .subpage-inner{padding:20px 18px 40px!important}
  .persona-layout{grid-template-columns:minmax(240px,.9fr) minmax(0,1.1fr)!important;gap:14px!important}
  #catalog .grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(min-width:1100px){
  :root{--unified-header-h:96px}
  .layout.layout-unified,.layout-unified{display:grid!important;grid-template-columns:var(--sidebar-w) minmax(0,1fr)!important}
  aside.sidebar.sidebar-menu-drawer{display:flex!important;visibility:visible!important;pointer-events:auto!important;position:sticky!important;top:0!important;width:var(--sidebar-w)!important;height:100vh!important;transform:none!important}
  .menu-toggle-inline,.menu-shade{display:none!important}
  .layout-unified .content,.content{margin-left:0!important}
  .subpage-view{left:var(--sidebar-w)!important;inset:var(--unified-header-h) 0 0 var(--sidebar-w)!important;width:auto!important}
  #catalog .grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}

/* TAROKUN admin annotated fix */
.subpage-inner:has(.admin-bg-page),.subpage-inner:has(.admin-bg-gate){padding-top:8px!important;padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))!important}
.subpage-inner:has(.admin-bg-page) .subpage-top,.subpage-inner:has(.admin-bg-gate) .subpage-top{margin-bottom:6px!important;gap:8px!important}
.subpage-inner:has(.admin-bg-page) .subpage-top h1,.subpage-inner:has(.admin-bg-gate) .subpage-top h1{font-size:clamp(22px,4.5vw,34px)!important;line-height:1.12!important;margin:0 0 4px!important}
.subpage-inner:has(.admin-bg-page) .subpage-top p,.subpage-inner:has(.admin-bg-gate) .subpage-top p{color:#c5bdc1!important;font-size:13px!important;line-height:1.5!important;margin:0!important}
.subpage-inner:has(.admin-bg-page) .subpage-close,.subpage-inner:has(.admin-bg-gate) .subpage-close{margin-top:0!important;padding:8px 12px!important;font-size:12px!important}
.admin-bg-page{display:grid!important;gap:12px!important;margin-top:0!important}
.admin-bg-panel{background:#211f20!important;border:1px solid #6a6266!important;border-radius:14px!important;padding:16px 18px!important;color:#f8f4f5!important}
.admin-bg-panel h2{margin:0 0 6px!important;font-size:17px!important;font-weight:900!important;color:#fff!important}
.admin-bg-panel>p,.admin-bg-upload-batch p,.admin-bg-gate .subpage-note,.admin-bg-page .subpage-note{color:#e8e2e5!important;font-size:14px!important;line-height:1.55!important;margin:0 0 12px!important}
.admin-bg-upload{background:#1a1819!important;border:1px dashed #8a7a80!important;padding:20px 16px!important;gap:14px!important}
.admin-bg-upload label{background:#352430!important;border:1px solid #a25a72!important;color:#fff!important;font-size:14px!important;font-weight:800!important;padding:12px 20px!important;box-shadow:0 4px 16px rgba(0,0,0,.25)!important}
.admin-bg-upload label span{color:#fff!important}
.admin-bg-upload label:hover{border-color:#ff6b91!important;background:#3f2a36!important}
.admin-bg-upload-batch p{margin-top:4px!important;margin-bottom:0!important;color:#f0eaed!important;font-size:13px!important}
.admin-bg-assign-empty{padding:20px 16px!important;border:1px dashed #8a7a80!important;border-radius:12px!important;color:#f0eaed!important;font-size:14px!important;line-height:1.55!important;background:#1a1819!important;text-align:center!important}
.admin-bg-assign-row strong{color:#fff!important;font-size:14px!important}
.admin-bg-assign-row small{color:#c5bdc1!important;font-size:12px!important}
.admin-bg-assign-row span small{color:#b8b0b4!important}
.admin-bg-gate{padding:20px 16px!important;text-align:center!important}
.admin-bg-gate .subpage-note{margin-bottom:12px!important}
.admin-bg-auth-form input{color:#fff!important;background:#101012!important;border-color:#7a7074!important}
.admin-bg-gate-status{color:#d0c8cc!important;font-size:13px!important}
.admin-bg-gate-status.is-error{color:#ff9ab0!important}
#adminBgStatus{color:#d0c8cc!important;font-size:13px!important;line-height:1.5!important}
.admin-bg-actions{align-items:center!important;gap:10px!important;margin-top:4px!important}
@media(max-width:720px){
  .subpage-inner:has(.admin-bg-page),.subpage-inner:has(.admin-bg-gate){padding-top:6px!important;padding-left:12px!important;padding-right:12px!important}
  .admin-bg-panel{padding:14px 12px!important}
  .admin-bg-upload{padding:16px 12px!important}
  .admin-bg-upload label{width:100%!important;justify-content:center!important}
}

/* TAROKUN footer company info v1 */
.site-footer-global{background:var(--bg);padding:28px 24px 0;text-align:center;margin-top:48px;max-width:100%;box-sizing:border-box;border-top:1px solid var(--line);color:#958c8f}
.site-footer-global .footer-links-legal{margin:0;font-size:11px;color:#958c8f;line-height:2}
.site-footer-global .footer-links-legal a,.site-footer-global .footer-links-legal .footer-cookie-settings{color:#958c8f;text-decoration:none}
.site-footer-global .footer-links-legal a:hover,.site-footer-global .footer-links-legal .footer-cookie-settings:hover{color:#958c8f;text-decoration:underline;opacity:.9}
.site-footer-global .footer-company{margin:20px auto 0;max-width:980px;padding:0 12px;text-align:left;color:#958c8f;font-size:8pt!important;line-height:1.65!important}
.site-footer-global .footer-company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 28px}
.site-footer-global .footer-company-col{display:grid;gap:8px}
.site-footer-global .footer-company p{margin:0;font-size:8pt!important;color:#958c8f;line-height:1.65!important;word-break:keep-all}
.site-footer-global .footer-company strong{font-weight:700;font-size:8pt!important;color:#958c8f;line-height:1.65!important}
.site-footer-global .footer-company a{font-size:8pt!important;color:#958c8f;text-decoration:underline;text-underline-offset:2px;line-height:1.65!important}
.site-footer-global .footer-company a:hover{color:#958c8f;opacity:.9}
.site-footer-global .footer-legal-bottom,.site-footer-global .footer-copy,.site-footer-global .footer-paddle-mor{color:#958c8f}
.site-footer-global .footer-legal-bottom a{color:#958c8f}
.site-footer-global .beta-banner{margin:24px -24px 0;padding:14px 16px;background:var(--panel);border-top:1px solid var(--line);font-size:11px;color:#958c8f;line-height:1.6;text-align:center}
#pageView .site-footer-global{margin-top:0;background:var(--bg)}
.content>.site-footer-global{margin-left:auto;margin-right:auto;width:100%;background:var(--bg)}
.sidebar-footer .footer-company-mini{display:block;margin-top:6px;color:#958c8f;font-size:8px;line-height:1.5;word-break:keep-all}
@media(max-width:900px){
  .site-footer-global .footer-company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .site-footer-global{padding:24px 16px 0;margin-top:32px}
  .site-footer-global .footer-company-grid{grid-template-columns:1fr;gap:10px}
  .site-footer-global .footer-company p{font-size:8pt!important}
  .site-footer-global .beta-banner{margin-left:-16px;margin-right:-16px;font-size:10px}
}

/* TAROKUN responsive mobile fix v1 */
@media(max-width:1100px){
  #catalog{max-width:100%!important;width:100%!important;padding:0 16px!important;box-sizing:border-box!important}
  #catalog .grid,#catalog .section-head,#catalog .chips,#catalog #count{max-width:100%!important;width:100%!important}
  .content{padding:28px 16px 0!important}
}
@media(max-width:720px){
  .content{padding:20px 12px 0!important}
  .topbar{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    align-content:flex-start!important;
    gap:8px 10px!important;
    padding:10px 12px 10px 56px!important;
    min-height:0!important;
    height:auto!important;
  }
  .topbar .header-brand{
    flex:1 1 120px!important;
    min-width:0!important;
    max-width:calc(100% - 8px)!important;
    font-size:16px!important;
    gap:8px!important;
    grid-column:auto!important;
  }
  .topbar .header-brand .brand-mark{width:28px!important;height:28px!important;border-width:5px!important;flex-shrink:0!important}
  .topbar .header-brand span:last-child{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .topbar .topbar-notice{display:none!important}
  .topbar .topbar-right,.topbar .topbar-actions{
    flex:1 1 100%!important;
    width:100%!important;
    justify-content:flex-end!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    grid-column:auto!important;
    min-width:0!important;
  }
  .topbar .credit-badge{
    width:36px!important;
    height:36px!important;
    margin:0!important;
    flex-shrink:0!important;
  }
  .topbar .credit-badge .credit-icon{font-size:12px!important}
  .topbar .credit-badge b{font-size:9px!important;margin-top:1px!important}
  .topbar .login{padding:8px 12px!important;font-size:12px!important;white-space:nowrap!important}
  .topbar .lang-switcher{display:inline-flex!important;flex-wrap:wrap!important;gap:3px!important;padding:2px!important;max-width:100%!important;justify-content:flex-end!important}
  .topbar .lang-switcher button{min-width:0!important;padding:5px 7px!important;font-size:9px!important;height:28px!important}
  #catalog{padding:0!important;margin-top:8px!important}
  #catalog .section-head{gap:8px 10px!important;margin-bottom:10px!important}
  #catalog .section-head h2{font-size:clamp(22px,6vw,28px)!important;line-height:1.15!important}
  #catalog .catalog-search-main{flex:1 1 100%!important;max-width:100%!important;height:42px!important}
  #catalog .chips{margin:0 0 14px!important;gap:6px!important}
  #catalog .grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
  }
  #catalog .card{width:100%!important;min-width:0!important}
  #catalog .card>img,#catalog .card .card-thumb-wrap>img,#catalog .card .card-thumb>img,#catalog .card-media,#catalog .card .card-thumb-wrap>.card-media{aspect-ratio:1/1!important;width:100%!important}
  #catalog .card-body{padding:8px 9px 10px!important}
  #catalog .card h3{font-size:13px!important;line-height:1.3!important;word-break:keep-all!important}
  #catalog .card p{font-size:10px!important;-webkit-line-clamp:2!important}
}
@media(max-width:480px){
  .topbar .header-brand{font-size:15px!important}
  .topbar .lang-switcher button{padding:4px 6px!important;font-size:8px!important}
  #catalog .grid{gap:8px!important}
}
@media(max-width:360px){
  #catalog .grid{grid-template-columns:1fr!important;max-width:320px!important;margin:0 auto!important}
}

/* TAROKUN layout breakage fix v3 */
:root{--app-sidebar-w:265px;--app-topbar-h:68px;--catalog-hot-visible:5}
.layout{display:grid!important;grid-template-columns:var(--app-sidebar-w) minmax(0,1fr)!important;min-height:100vh!important;width:100%!important;max-width:100vw!important;align-items:stretch!important}
.main{min-width:0!important;width:100%!important;overflow-x:clip!important;overflow-y:visible!important;margin:0!important}
.topbar.topbar-search-first{position:fixed!important;top:0!important;left:var(--app-sidebar-w)!important;right:0!important;width:auto!important;z-index:50!important;background:rgba(15,14,15,.94)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--line)!important}
.main>.content{padding-top:calc(var(--app-topbar-h) + 20px)!important}
@media(max-width:720px){.topbar.topbar-search-first{left:0!important}.main>.content{padding-top:calc(var(--app-topbar-h) + 12px)!important}}
.content{margin-left:0!important;padding:calc(var(--app-topbar-h) + 20px) 5% 0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}
.sidebar{position:sticky!important;top:0!important;left:auto!important;right:auto!important;width:auto!important;max-width:100%!important;height:100vh!important;max-height:none!important;transform:none!important;box-shadow:none!important;z-index:20!important;padding:10px 12px!important;overflow-x:hidden!important;overflow-y:auto!important}
.sidebar .sidebar-brand{display:flex!important;align-items:center;gap:10px;padding:8px 12px 18px;font-weight:900;font-size:20px;letter-spacing:-.6px;color:#f8f4f5;text-decoration:none;flex-shrink:0}.sidebar .sidebar-brand .brand-mark{width:34px;height:34px;border-width:6px;flex-shrink:0}.sidebar .sidebar-brand .brand-mark:after{height:5px;width:18px;top:8px;left:2px}
body.menu-open .main{margin-right:0!important}
@media(min-width:1100px){
  .sidebar{width:auto!important;padding:10px 12px!important}
  .content{display:block!important;margin-left:0!important;padding:calc(var(--app-topbar-h) + 20px) 5% 0!important}
  .hero{display:none!important}
}
@media(min-width:721px){
  .sidebar{width:auto!important;right:auto!important;left:auto!important;transform:none!important}
  .content{margin-left:0!important}
}
.subpage-view{
  position:fixed!important;
  display:none;
  inset:var(--app-topbar-h) 0 0 var(--app-sidebar-w)!important;
  width:auto!important;
  max-width:none!important;
  z-index:45!important;
  overflow:auto!important;
  background:var(--bg)!important;
  border-top:1px solid var(--line)!important;
  -webkit-overflow-scrolling:touch!important;
}
.subpage-view.open{display:block!important}
.subpage-inner{max-width:1180px!important;margin:0 auto!important;padding:44px 48px 70px!important;box-sizing:border-box!important}
body:has(.subpage-view.open) .main>.content{display:none!important}
body:has(.subpage-view.open) .main>.content .site-footer-global{display:none!important}
@media(min-width:1280px){
  .header-brand{position:static!important;left:auto!important;top:auto!important}
  .topbar .top-headline{display:none!important}
}
.topbar{display:grid!important;grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto)!important;align-items:center!important;column-gap:16px!important;row-gap:8px!important;padding:0 24px!important;min-height:var(--app-topbar-h)!important;height:auto!important;position:sticky!important;top:0!important;z-index:50!important;background:rgba(15,14,15,.94)!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--line)!important}
.topbar .header-brand{grid-column:1!important;justify-self:start!important;position:static!important;left:auto!important;top:auto!important;display:inline-flex!important;align-items:center!important;gap:10px!important;flex:0 0 auto!important;font-size:20px!important;font-weight:900!important;letter-spacing:-.5px!important;color:#f8f4f5!important;margin:0!important}
.topbar .header-brand .brand-mark{width:34px!important;height:34px!important;border-width:6px!important;flex-shrink:0!important}
.topbar .topbar-notice{display:block!important;grid-column:2!important;justify-self:center!important;width:100%!important;max-width:min(680px,calc(100vw - 420px))!important;margin:0 auto!important;padding:8px 18px!important;border:1px solid #3a3538!important;border-radius:999px!important;background:#191718!important;color:#c5bdc1!important;font-size:13px!important;font-weight:600!important;line-height:1.35!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.topbar .top-headline{display:none!important}
.topbar .topbar-right,.topbar .topbar-actions{grid-column:3!important;justify-self:end!important;display:flex!important;align-items:center!important;gap:10px!important;margin:0!important;flex:0 0 auto!important}
.topbar .search{display:none!important}
.sidebar-footer{padding:14px 16px 8px!important;font-size:10px!important;line-height:1.5!important;text-align:center!important}
.sidebar-footer strong,.sidebar-footer .footer-links,.sidebar-footer br{display:none!important}
.sidebar-footer span{margin:0!important;color:#80777b!important}
@media(max-width:1100px){
  :root{--app-sidebar-w:0px;--app-topbar-h:76px}
  .layout{grid-template-columns:1fr!important}
  .topbar .topbar-notice{max-width:520px!important;font-size:12px!important;padding:7px 14px!important}
  .subpage-view{inset:var(--app-topbar-h) 0 0 0!important}
}
@media(max-width:900px){
  .topbar{grid-template-columns:minmax(0,auto) minmax(0,auto)!important}
  .topbar .topbar-notice{display:none!important}
  .topbar .topbar-right,.topbar .topbar-actions{grid-column:2!important}
}
@media(max-width:720px){
  .topbar{padding:0 16px 0 56px!important;min-height:76px!important}
  .topbar .header-brand{font-size:18px!important}
  .subpage-inner{padding:30px 16px 50px!important}
}

/* TAROKUN google oauth popup */
.auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0;color:#958c8f;font-size:12px}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:#3a3538}
.google-auth-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:#1f1f1f;border:1px solid #dadce0;min-height:46px}
.google-auth-btn:hover{border-color:#4285f4;color:#1f1f1f;background:#fff}
#googleAuthPopup iframe{margin:0 auto}

/* TAROKUN catalog hero video */
.catalog-hero-video{position:relative;width:100%;max-width:1360px;margin:0 auto 18px;aspect-ratio:5.5/1;border-radius:16px;overflow:hidden;background:#211f20;border:1px solid #3a3538;box-shadow:0 18px 48px rgba(0,0,0,.28)}
.catalog-hero-video video{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.catalog-hero-sound{position:absolute;right:14px;bottom:14px;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(15,14,15,.72);color:#fff;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);transition:transform .15s ease,border-color .15s ease,background .15s ease}
.catalog-hero-sound:hover{border-color:#ff6b91;background:rgba(36,29,33,.88);transform:scale(1.04)}
.catalog-hero-sound[aria-pressed="true"]{border-color:rgba(255,107,145,.55);background:rgba(58,34,48,.82)}
.catalog-hero-video::after{content:'';position:absolute;inset:0;background:rgba(15,14,15,.22);pointer-events:none;transition:opacity .2s ease;z-index:1}
.catalog-hero-video.is-playing::after{opacity:0}
.catalog-hero-sound{z-index:2}
/* TAROKUN catalog hero video hover */

@media(max-width:720px){.catalog-hero-video{margin-bottom:14px;border-radius:12px;aspect-ratio:16/9}}

/* TAROKUN billing pricing v4 */
.topup-cards .topup-card{border-color:rgba(116,185,255,.28)}
.billing-topup{margin-top:18px}
.billing-topup-myinfo{margin-top:14px}
.topup-meta-list{list-style:none;margin:10px 0 12px;padding:0;font-size:12px;line-height:1.5;color:#b8b8c4}
.topup-meta-list li+li{margin-top:4px}
.billing-entertainment-disclaimer{margin:10px 0 14px;padding:12px 14px;border-radius:10px;background:rgba(255,193,120,.08);border:1px solid rgba(255,193,120,.22);color:#e8dcc8;font-size:13px;line-height:1.55}
.billing-service-nature,.billing-refund-after-use,.billing-credit-topup-notice{margin:0 0 10px;padding:10px 12px;border-radius:10px;font-size:13px;line-height:1.55}
.billing-service-nature{background:rgba(120,180,255,.08);border:1px solid rgba(120,180,255,.22);color:#dce8ff}
.billing-refund-after-use{background:rgba(255,140,140,.08);border:1px solid rgba(255,140,140,.22);color:#ffd8d8}
.billing-credit-topup-notice{background:rgba(180,255,180,.06);border:1px solid rgba(140,220,140,.18);color:#d8f0d8}
.billing-pay-legal-summary{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);font-size:13px;line-height:1.5;color:#c8cdd8}
.billing-pay-consent{margin-top:16px}
.billing-pay-consent h3{font-size:15px;margin-bottom:10px}
.billing-consent-check{display:flex;gap:8px;align-items:flex-start;margin:8px 0}
.billing-consent-status{color:#ffb4c8;min-height:1.2em}
.billing-topup-buy:disabled,.billing-topup-buy[aria-disabled="true"]{opacity:.45;cursor:not-allowed}

/* TAROKUN catalog hot random v2 */
.header-brand,.topbar .header-brand,.topbar.topbar-unified .header-brand{display:none!important;visibility:hidden!important}
.topbar .topbar-brand{display:flex!important;visibility:visible!important;align-items:center;flex-shrink:0;padding:0;margin:0 8px 0 0;text-decoration:none}
.topbar .topbar-brand .brand-logo{display:block;height:34px;width:auto;max-width:min(140px,28vw);object-fit:contain}
@media(max-width:720px){.topbar .topbar-brand .brand-logo{height:28px;max-width:min(110px,34vw)}}
.topbar-welcome{display:flex;align-items:center;gap:6px;margin:0 12px 0 auto;font-size:14px;font-weight:600;color:#e6e1e3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(360px,42vw);flex-shrink:1;min-width:0}
.topbar-welcome[hidden]{display:none!important}
.topbar-welcome-label{color:#ff6b91;font-weight:800;flex-shrink:0}
.topbar-welcome-id{color:#fff;font-weight:700;overflow:hidden;text-overflow:ellipsis}
.catalog-hot-wrap,.catalog-random-wrap{max-width:1360px;margin-left:auto;margin-right:auto;width:100%}
.catalog-hot-wrap{margin:18px auto 26px;overflow:hidden;position:relative}
.catalog-random-wrap{margin:0 auto 36px}
.catalog-subtitle{margin:0 0 12px;font-size:17px;font-weight:800;color:#f4f6ff;letter-spacing:-.02em}
.catalog-random-head{display:flex;align-items:baseline;gap:10px 14px;margin-bottom:12px;flex-wrap:wrap}
.catalog-random-head .catalog-subtitle{margin:0}
.catalog-random-head small{color:#958c8f;font-size:13px}
#catalog #hotGrid,#catalog .hot-grid{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:stretch!important;grid-template-columns:none!important;grid-auto-flow:unset!important;gap:12px!important;width:100%!important;max-width:1360px!important;margin:0 auto!important;padding:4px 2px 10px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-behavior:smooth!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;-ms-overflow-style:none!important}
#catalog #hotGrid::-webkit-scrollbar{display:none!important}
#catalog #hotGrid .card,#catalog .hot-grid .card{flex:0 0 calc((100% - (var(--catalog-hot-visible) - 1) * 12px)/var(--catalog-hot-visible))!important;width:calc((100% - (var(--catalog-hot-visible) - 1) * 12px)/var(--catalog-hot-visible))!important;min-width:calc((100% - (var(--catalog-hot-visible) - 1) * 12px)/var(--catalog-hot-visible))!important;max-width:calc((100% - (var(--catalog-hot-visible) - 1) * 12px)/var(--catalog-hot-visible))!important;scroll-snap-align:start!important}
#catalog #hotGrid .empty,#catalog .hot-grid .empty{flex:1 1 100%!important;min-width:100%!important}
@media(max-width:720px){#catalog #hotGrid .card,#catalog .hot-grid .card{flex:0 0 calc((100% - 12px)/2)!important;width:calc((100% - 12px)/2)!important;min-width:calc((100% - 12px)/2)!important;max-width:calc((100% - 12px)/2)!important}}
#catalog .catalog-random-grid{display:grid!important}
@media(min-width:1100px){#catalog .catalog-random-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
@media(min-width:721px) and (max-width:1099px){#catalog .catalog-random-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:720px){#catalog .catalog-random-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* TAROKUN catalog screenshot v2 */
#catalog .catalog-random-head small,#catalog #count{display:none!important}
#catalog .card-random .card-thumb{position:relative;display:block}
#catalog .card-random .card-thumb>img,#catalog .card-random .card-thumb>.card-media{width:100%!important;display:block!important}
#catalog .catalog-search-main input[type="text"]{width:100%!important}

/* TAROKUN layout beta swap v1 */
.brand-logo,.footer-brand-logo{display:block;height:42px;width:auto;max-width:200px;object-fit:contain;object-position:left center}
.footer-brand-logo{height:38px;opacity:.95}
.footer-brand{display:inline-block;text-decoration:none}
.footer-brand-wrap{margin:0 0 14px;text-align:center}
.sidebar-footer .footer-brand{display:block;margin:0 0 10px;text-align:left}
.sidebar-brand-block{padding:0 4px 0;margin:0 0 20px}
.sidebar-brand-block .brand.sidebar-brand{padding:0 10px 16px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;font-size:0!important}
.brand-beta{display:inline-flex!important;align-items:center;justify-content:center;padding:3px 9px;border-radius:6px;border:1px solid #5a5356;background:#241f22;color:#ffb8ca;font-size:11px;font-weight:800;letter-spacing:.08em;line-height:1;flex-shrink:0}
.sidebar-brand-divider{display:block;border:0;border-top:1px solid #3a3538;margin:0;height:0;background:transparent}
#catalog .section-head h2{font-size:16pt!important;line-height:1.35!important;margin:0!important;font-weight:800!important}
#catalog .section-head{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px 14px!important}
#catalog .catalog-slogan{display:block!important;flex:1 1 280px!important;max-width:100%!important;margin:0!important;padding:8px 18px!important;border:1px solid #3a3538!important;border-radius:999px!important;background:#191718!important;color:#c5bdc1!important;font-size:13px!important;font-weight:600!important;line-height:1.35!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#catalog .section-head .catalog-search,#catalog .section-head .catalog-search-main{display:none!important}
.topbar.topbar-search-first{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:12px!important;padding:10px 20px!important;min-height:68px!important;grid-template-columns:none!important;grid-template-rows:none!important}
.topbar.topbar-search-first>.topbar-search-slot{display:flex!important;visibility:visible!important;pointer-events:auto!important;align-items:center!important;gap:10px!important;flex:0 0 auto!important;width:min(340px,calc(50vw - 120px))!important;max-width:340px!important;min-width:200px!important;height:46px!important;margin:0!important;padding:0 16px!important;background:#211f20!important;border:1px solid #5a5356!important;border-radius:999px!important;color:#958c8f!important;order:1!important;grid-column:auto!important;justify-self:auto!important}
.topbar.topbar-search-first>.topbar-search-slot input{width:100%!important;border:0!important;background:transparent!important;outline:0!important;color:var(--text)!important}
.topbar.topbar-search-first>.topbar-notice{display:none!important}
.topbar.topbar-search-first .topbar-right,.topbar.topbar-search-first .topbar-actions{display:flex!important;flex:0 0 auto!important;margin-left:auto!important;width:auto!important;order:2!important;grid-column:auto!important;justify-self:end!important;flex-shrink:0!important}
.topbar.topbar-search-first .topbar-welcome{margin-left:0!important;max-width:min(260px,30vw)!important}
.topbar .catalog-search.topbar-search-slot{display:flex!important;visibility:visible!important}
.catalog-search{display:none!important}
.topbar .catalog-search{display:flex!important}
@media(max-width:720px){
  .topbar.topbar-search-first{flex-wrap:wrap!important;padding:10px 16px!important;min-height:0!important}
  .topbar.topbar-search-first>.topbar-search-slot{flex:1 1 100%!important;width:100%!important;max-width:340px!important;height:42px!important;order:2!important;margin:0 auto!important}
  .topbar.topbar-search-first .topbar-actions{order:1!important;width:100%!important;justify-content:flex-end!important;margin-left:0!important}
  #catalog .catalog-slogan{font-size:12px!important;padding:7px 14px!important}
}

/* TAROKUN catalog ui tweaks v3 */
.topbar.topbar-search-first{display:grid!important;grid-template-columns:minmax(0,340px) minmax(0,1fr) auto!important;align-items:center!important;column-gap:14px!important;padding:10px 20px!important;min-height:68px!important}
.topbar.topbar-search-first>.topbar-search-slot{grid-column:1!important;justify-self:start!important;width:100%!important;max-width:340px!important;min-width:0!important;margin:0!important;flex:none!important}
.topbar.topbar-search-first>.topbar-notice-slot{grid-column:2!important;justify-self:center!important;width:100%!important;min-width:0!important;padding:0 10px!important}
.topbar.topbar-search-first .topbar-right,.topbar.topbar-search-first .topbar-actions{grid-column:3!important;justify-self:end!important;display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;width:auto!important;max-width:none!important;min-width:0!important;flex-wrap:nowrap!important;overflow:visible!important}
.topbar.topbar-search-first .topbar-welcome{font-size:calc(14px - 2pt)!important;line-height:1.25!important;max-width:min(200px,24vw)!important;margin:0!important;flex:0 1 auto!important;min-width:0!important}
.topbar.topbar-search-first .topbar-welcome-label{font-size:calc(13px - 2pt)!important}
.topbar.topbar-search-first .topbar-welcome-id{font-size:calc(14px - 2pt)!important}
@media(max-width:720px){
  .topbar.topbar-search-first{grid-template-columns:1fr!important;row-gap:8px!important}
  .topbar.topbar-search-first>.topbar-search-slot{grid-column:1!important;max-width:340px!important;width:100%!important;justify-self:stretch!important}
  .topbar.topbar-search-first .topbar-actions{grid-column:1!important;width:100%!important;justify-self:stretch!important}
  .topbar.topbar-search-first .topbar-welcome{max-width:min(160px,42vw)!important}
}

/* TAROKUN annotated fixes v4 */
.topbar.topbar-search-first{display:grid!important;grid-template-columns:minmax(0,260px) minmax(0,1fr) auto!important;align-items:center!important;column-gap:16px!important;row-gap:8px!important;padding:10px 20px!important;min-height:68px!important;width:100%!important;box-sizing:border-box!important}
.topbar.topbar-search-first>.topbar-search-slot{grid-column:1!important;grid-row:1!important;justify-self:start!important;align-self:center!important;width:100%!important;max-width:260px!important;min-width:0!important;height:44px!important;margin:0!important;padding:0 14px!important;flex:none!important;position:relative!important;z-index:2!important}
.topbar.topbar-search-first>.topbar-notice-slot{grid-column:2!important;grid-row:1!important;justify-self:center!important;align-self:center!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0 12px!important;z-index:2!important}
.topbar.topbar-search-first .topbar-right,.topbar.topbar-search-first .topbar-actions{grid-column:3!important;grid-row:1!important;justify-self:end!important;align-self:center!important;display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;padding:0!important;width:auto!important;max-width:none!important;min-width:0!important;flex-wrap:nowrap!important;overflow:visible!important;position:relative!important;z-index:3!important}
.topbar.topbar-search-first .topbar-welcome{font-size:calc(14px + 2pt)!important;line-height:1.2!important;max-width:min(220px,28vw)!important;margin:0!important;padding:0!important;flex:0 1 auto!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;align-items:center!important;gap:8px!important}
.topbar.topbar-search-first .topbar-welcome-label{font-size:calc(12px + 2pt)!important;flex-shrink:0!important}
.topbar.topbar-search-first .topbar-welcome-id{font-size:calc(14px + 2pt)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;max-width:min(160px,20vw)!important;display:inline-flex!important;align-items:center!important;padding:4px 12px!important;border-radius:999px!important;background:#211f20!important;border:1px solid #5a5356!important;color:#fff!important;font-weight:700!important;line-height:1.2!important;vertical-align:bottom!important}
.topbar.topbar-search-first .credit-badge,.topbar.topbar-search-first .login,.topbar.topbar-search-first .lang-switcher{flex-shrink:0!important}
#catalog .catalog-slogan{display:block!important;background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;margin:0!important;flex:1 1 100%!important;max-width:100%!important;color:#c0b7ba!important;font-size:13px!important;font-weight:500!important;line-height:1.55!important;text-align:left!important;white-space:normal!important;overflow:visible!important;text-overflow:unset!important;border-radius:0!important}
#catalog .section-head{align-items:flex-start!important;gap:6px 12px!important}
#catalog .section-head h2{flex:0 0 auto!important;width:100%!important}
.sidebar-chat-list-head::after{content:attr(data-recent-suffix);font-weight:600;color:#7a849c}
@media(max-width:720px){
  .topbar.topbar-search-first{grid-template-columns:1fr!important;padding:10px 16px!important}
  .topbar.topbar-search-first>.topbar-search-slot{max-width:100%!important;width:100%!important;grid-row:2!important}
  .topbar.topbar-search-first .topbar-actions{grid-row:1!important;width:100%!important;justify-self:stretch!important;justify-content:flex-end!important}
  .topbar.topbar-search-first .topbar-welcome{max-width:min(130px,38vw)!important}
  #catalog .catalog-slogan{font-size:12px!important}
}

/* TAROKUN topbar logo v2 */
.topbar.topbar-search-first>.topbar-notice-slot{display:none!important}
.topbar.topbar-search-first{grid-template-columns:auto minmax(0,280px) minmax(0,1fr) auto!important}
.topbar.topbar-search-first>.topbar-brand{grid-column:1!important;grid-row:1!important;justify-self:start!important;align-self:center!important;z-index:4!important}
.topbar.topbar-search-first>.topbar-search-slot{grid-column:2!important}
.topbar.topbar-search-first .topbar-right,.topbar.topbar-search-first .topbar-actions{grid-column:4!important}
.sidebar-footer .footer-brand,.sidebar-footer .footer-brand-logo{display:none!important}
@media(max-width:720px){
  .topbar.topbar-search-first{grid-template-columns:auto 1fr!important;grid-template-areas:"brand actions" "search search"!important}
  .topbar.topbar-search-first>.topbar-brand{grid-area:brand!important}
  .topbar.topbar-search-first .topbar-actions{grid-area:actions!important;grid-column:auto!important;grid-row:auto!important}
  .topbar.topbar-search-first>.topbar-search-slot{grid-area:search!important;grid-column:auto!important;grid-row:auto!important}
}

/* TAROKUN catalog genre linebox */
#catalog .chips,#catalog .chips.catalog-chips{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  padding:0 2px 8px!important;
  margin:0 auto 20px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  max-width:1360px!important;
}
#catalog .chips::-webkit-scrollbar{display:none!important}
#catalog .chips .chip{
  flex:0 0 auto!important;
  background:transparent!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:999px!important;
  padding:8px 16px!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:-.01em!important;
  box-shadow:none!important;
  white-space:nowrap!important;
  transition:background .15s ease,border-color .15s ease,color .15s ease!important;
}
#catalog .chips .chip:hover{
  border-color:rgba(255,255,255,.38)!important;
  background:rgba(255,255,255,.04)!important;
  color:#fff!important;
}
#catalog .chips .chip.active,#catalog .chips .chip.active:hover{
  background:var(--pink)!important;
  border-color:var(--pink)!important;
  color:#fff!important;
  font-weight:800!important;
}
@media(max-width:720px){
  #catalog .chips .chip{padding:7px 14px!important;font-size:12px!important}
}

/* TAROKUN usage nbti guide */
.usage-guide-page{display:grid;gap:0}
.usage-hero{text-align:center;padding:28px 24px;border-color:rgba(255,79,120,.28);background:linear-gradient(180deg,#1c1418,#191718)}
.usage-hero-kicker{margin:0 0 8px;color:#ff9ab0;font-size:11px;font-weight:900;letter-spacing:.14em}
.usage-hero h2{margin:0 0 12px;font-size:26px;letter-spacing:-1px;color:#f8f4f5}
.usage-hero>p{margin:0 auto 18px;max-width:640px;color:#c8c0c3;line-height:1.75}
.usage-cta-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:4px}
.usage-cta-row .subpage-cta{margin:0;min-width:180px}
.usage-saved-mbti{margin-top:14px!important}
.usage-flow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.usage-flow-card{position:relative;padding-top:18px}
.usage-flow-card small{display:block;margin-bottom:10px}
.usage-flow-card b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--pink);font-size:16px;margin-bottom:12px}
.usage-flow-card h3{margin-top:0}
.usage-flow-card p{font-size:14px}
.usage-feature-grid .subpage-panel h3{margin-bottom:10px}
.usage-feature-grid ul{margin:0;padding-left:18px;line-height:1.85;color:#c8c0c3}
.usage-faq details{border-top:1px solid #443d41;padding:14px 0}
.usage-faq details:first-child{border-top:0;padding-top:0}
.usage-faq summary{cursor:pointer;font-weight:800;color:#f4f0f2;list-style:none}
.usage-faq summary::-webkit-details-marker{display:none}
.usage-faq summary::before{content:'▸ ';color:var(--pink)}
.usage-faq details[open] summary::before{content:'▾ '}
.usage-faq p{margin:10px 0 0;font-size:14px;color:#bdb4b8;line-height:1.75}
@media(max-width:720px){
  .usage-flow-grid{grid-template-columns:1fr}
  .usage-hero h2{font-size:22px}
  .usage-cta-row .subpage-cta{flex:1 1 100%}
}

/* TAROKUN billing pricing v5 */
.billing-plan-grid,.billing-topup-grid{gap:14px!important}
@media(min-width:900px){.billing-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.billing-topup-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
.plan-card.plan-tier-plus.featured,.plan-card.plan-tier-pro.featured{border-color:rgba(255,77,141,.55)!important;box-shadow:0 0 0 1px rgba(255,77,141,.22),0 12px 40px rgba(255,77,141,.08)!important}
.plan-card .subpage-price{font-size:28px!important;font-weight:900!important;letter-spacing:-.02em!important}
.plan-card .subpage-price span{font-size:14px!important;font-weight:700!important;color:#b8bfd4!important}
.plan-card ul{margin:0 0 14px!important;padding-left:18px!important;color:#c5cbd8!important;line-height:1.55!important;font-size:13px!important}
.plan-card .subpage-cta.pro-tier,.plan-card.plan-tier-pro .subpage-cta{background:linear-gradient(135deg,#ff6b91,#c84d6d)!important;border:0!important;color:#fff!important}
.billing-topup h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.billing-topup-kicker{font-size:14px;font-weight:700;color:#ff9ab0}
.billing-topup-note{font-size:12px!important;color:#958c8f!important;margin:0 0 12px!important}
.billing-virtual-test-note{font-size:12px!important;color:#ffd0a8!important;background:rgba(255,180,120,.08);border:1px solid rgba(255,180,120,.22);border-radius:10px;padding:10px 12px!important;margin:0 0 12px!important}
.topup-card{position:relative!important;overflow:hidden!important}
.topup-card.featured{border-color:rgba(255,77,141,.55)!important;box-shadow:0 0 0 1px rgba(255,77,141,.22)!important}
.topup-popular-badge{position:absolute;top:10px;right:10px;padding:4px 10px;border-radius:999px;background:linear-gradient(135deg,#ff6b91,#c84d6d);color:#fff;font-size:10px;font-weight:800;letter-spacing:.04em}
.topup-price-label{font-size:22px;font-weight:900;color:#fff;margin:4px 0 8px;letter-spacing:-.02em}
.topup-credits{font-size:26px!important;margin:0 0 6px!important}
.topup-bonus-badge{display:inline-block;margin:0 0 8px;padding:4px 10px;border-radius:999px;border:1px solid rgba(255,77,141,.45);background:rgba(255,77,141,.12);color:#ffb8ca;font-size:10px;font-weight:800}
.topup-subtitle{min-height:2.6em}
.admin-pricing-form{display:grid;gap:16px}
.admin-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-pricing-topups{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-pricing-plan{border:1px solid #3a3538;border-radius:12px;padding:12px;background:#191718;display:grid;gap:8px}
.admin-pricing-plan legend{padding:0 6px;color:#ffb8ca;font-weight:800;font-size:12px}
.admin-pricing-field{display:grid;gap:4px;font-size:12px;color:#c5bdc1}
.admin-pricing-field input{height:40px;background:#10131e;border:1px solid #5a5356;border-radius:10px;padding:0 10px;color:#fff}
.admin-pricing-field textarea,.admin-pricing-field select,.admin-dash-panel textarea,.admin-dash-panel select,.admin-dash-panel input[type="text"],.admin-dash-panel input[type="number"],.admin-dash-panel input[type="password"],.admin-dash-panel input[type="hidden"]+input,.admin-bg-auth-form input{background:#1d1b1f!important;border:1px solid #3a3538!important;border-radius:10px!important;color:#f4f6ff!important}
.admin-pricing-field textarea{min-height:140px;padding:12px;resize:vertical;line-height:1.6}
.admin-pricing-field select{height:40px;padding:0 10px;color-scheme:dark}
.admin-pricing-field select option{background:#1d1b1f;color:#f4f6ff}
.admin-dash-shell .subpage-cta.outline,.admin-dash-panel .subpage-cta.outline{background:#2a2528!important;border:1px solid #5a5356!important;color:#f4f6ff!important}
.admin-dash-shell .subpage-check{color:#c5bdc1}
.admin-dash-table{color:#f4f6ff}
.admin-dash-table th{color:#ffb8ca}
.admin-dash-table td{color:#e8e2e5;border-color:#3a3538}
.admin-notice-options{display:grid;gap:8px;align-content:start}
.admin-pricing-subhead{margin:8px 0 0;font-size:15px;color:#fff}
.admin-pricing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
@media(max-width:900px){.admin-pricing-grid,.admin-pricing-topups{grid-template-columns:1fr}}

/* TAROKUN spanish i18n */
.topbar .lang-switcher{gap:2px!important;padding:2px 3px!important;max-width:min(100%,430px)!important;flex-wrap:nowrap!important}
.topbar .lang-switcher button{min-width:0!important;padding:5px 7px!important;font-size:9px!important;letter-spacing:-.01em!important;white-space:nowrap!important}
.topbar.topbar-search-first .topbar-actions,.topbar .topbar-right{gap:6px!important;flex-wrap:nowrap!important;align-items:center!important}
.topbar-welcome{flex-shrink:1!important;min-width:0!important}
@media(max-width:960px){
  .topbar .lang-switcher button{padding:4px 5px!important;font-size:8px!important}
  .topbar-welcome{max-width:min(32vw,160px)!important;font-size:12px!important}
}
@media(max-width:720px){
  .topbar.topbar-search-first .topbar-actions{flex-wrap:wrap!important;justify-content:flex-end!important;row-gap:4px!important;column-gap:6px!important}
  .topbar .lang-switcher{order:10!important;flex:1 1 auto!important;justify-content:flex-end!important;max-width:100%!important}
  .topbar-welcome{max-width:min(48vw,180px)!important}
}

/* TAROKUN fantasy card overlay layout v1 */
#catalog #grid .card.card-random,#catalog .catalog-random-grid .card.card-random{
  align-self:stretch!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  aspect-ratio:3/4!important;
  min-height:0!important;
  position:relative!important;
  overflow:hidden!important;
  background:transparent!important;
}
#catalog #grid .card-random .card-thumb,#catalog .catalog-random-grid .card-random .card-thumb{
  grid-area:1/1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  position:relative!important;
  display:block!important;
  overflow:hidden!important;
  background:#25283b!important;
}
#catalog #grid .card-random .card-thumb>img,
#catalog #grid .card-random .card-thumb>.card-media,
#catalog .catalog-random-grid .card-random .card-thumb>img,
#catalog .catalog-random-grid .card-random .card-thumb>.card-media{
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center top!important;
  display:block!important;
}
#catalog #grid .card-random .card-media,
#catalog .catalog-random-grid .card-random .card-media{
  aspect-ratio:auto!important;
  height:100%!important;
  width:100%!important;
}
#catalog #grid .card-random .card-media .card-img,
#catalog .catalog-random-grid .card-random .card-media .card-img{
  object-position:center top!important;
}
#catalog #grid .card-random .card-body,
#catalog .catalog-random-grid .card-random .card-body{
  grid-area:1/1!important;
  align-self:end!important;
  z-index:2!important;
  width:100%!important;
  margin:0!important;
  padding:12px 10px 14px!important;
  background:linear-gradient(180deg,rgba(8,10,18,0) 0%,rgba(8,10,18,.52) 36%,rgba(8,10,18,.94) 100%)!important;
  pointer-events:none!important;
}
#catalog #grid .card-random .card-body *,
#catalog .catalog-random-grid .card-random .card-body *{pointer-events:none!important}
#catalog #grid .card-random .card-body .card-meta,
#catalog .catalog-random-grid .card-random .card-body .card-meta{
  color:#d8deef!important;
  margin-bottom:4px!important;
}
#catalog #grid .card-random .card-body h3,
#catalog .catalog-random-grid .card-random .card-body h3{
  color:#fff!important;
  margin:0 0 4px!important;
}
#catalog #grid .card-random .card-body p,
#catalog .catalog-random-grid .card-random .card-body p{
  color:#c5cbd8!important;
  -webkit-line-clamp:2!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  min-height:0!important;
}
#catalog #grid .card-random .card-ai-badge,
#catalog .catalog-random-grid .card-random .card-ai-badge{z-index:6!important}
#catalog #grid .card-random .card-media .card-img,
#catalog .catalog-random-grid .card-random .card-media .card-img{transition:none!important}
@media(max-width:720px){
  #catalog #grid .card-random .card-body,
  #catalog .catalog-random-grid .card-random .card-body{padding:10px 8px 12px!important}
}

/* TAROKUN admin page fix spec v2 */
body.admin-mode .topbar.topbar-search-first>.topbar-search-slot{display:none!important;visibility:hidden!important;width:0!important;min-width:0!important;max-width:0!important;padding:0!important;margin:0!important;overflow:hidden!important}
body.admin-mode .topbar.topbar-search-first>.topbar-notice-slot{display:none!important}
body.admin-mode .topbar.topbar-search-first{display:flex!important;grid-template-columns:minmax(0,1fr)!important;justify-content:flex-end!important}
body.admin-mode .topbar.topbar-search-first .topbar-right,
body.admin-mode .topbar.topbar-search-first .topbar-actions{grid-column:1!important;justify-self:end!important;width:auto!important;max-width:none!important;overflow:visible!important;flex-wrap:nowrap!important;gap:10px!important;margin-left:auto!important}
body.admin-mode .topbar.topbar-search-first .topbar-welcome,
body.admin-mode .topbar.topbar-search-first .topbar-welcome-id{max-width:none!important;overflow:visible!important;text-overflow:unset!important;white-space:nowrap!important;flex-shrink:0!important}
body.admin-mode .topbar.topbar-search-first .topbar-welcome-id{display:inline!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important}
body.admin-mode .subpage-inner{max-width:none!important;width:100%!important;padding-left:clamp(16px,2vw,36px)!important;padding-right:clamp(16px,2vw,36px)!important}
body.admin-mode .admin-dash-shell,
body.admin-mode .admin-dash-main,
body.admin-mode .admin-dash-table-wrap,
body.admin-mode .admin-bg-panel{width:100%!important;max-width:none!important}
body.admin-mode .admin-dash-credit-form{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important}
@media(max-width:720px){
  body.admin-mode .topbar.topbar-search-first .topbar-welcome,
  body.admin-mode .topbar.topbar-search-first .topbar-welcome-id{max-width:none!important;overflow:visible!important;text-overflow:unset!important}
}

/* TAROKUN board topbar inquiry v1 */
.topbar.topbar-search-first>.topbar-search-slot,
.topbar.topbar-search-first>.topbar-notice-slot .top-notice-bar{height:44px!important;min-height:44px!important;border-radius:999px!important;box-sizing:border-box!important}
.topbar.topbar-search-first>.topbar-notice-slot .top-notice-bar{padding:0 16px!important;background:#211f20!important;border:1px solid #5a5356!important}
.topbar.topbar-search-first .topbar-welcome,
.topbar.topbar-search-first .topbar-welcome-label,
.topbar.topbar-search-first .topbar-welcome-id{font-size:calc(14px - 2pt)!important}
.topbar.topbar-search-first .topbar-welcome-id{padding:4px 12px!important}
.board-tab.active{color:#ffd0dc!important}

/* TAROKUN cookie consent v1 */
.cookie-consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:13000;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));background:rgba(15,14,15,.96);border-top:1px solid #3a3538;backdrop-filter:blur(14px);box-shadow:0 -12px 40px rgba(0,0,0,.35)}
.cookie-consent-banner[hidden],.cookie-consent-modal[hidden]{display:none!important}
.cookie-consent-inner{max-width:1180px;margin:0 auto;display:grid;gap:12px;align-items:center}
.cookie-consent-text{margin:0;color:#e8e2e4;font-size:14px;line-height:1.6}
.cookie-consent-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cookie-btn{padding:10px 16px;border-radius:999px;border:1px solid #5a5356;background:#211f20;color:#f4f6ff;font-size:13px;font-weight:800;white-space:nowrap}
.cookie-btn.primary{background:var(--pink,#ff6b91);border-color:var(--pink,#ff6b91);color:#fff}
.cookie-btn.ghost{background:transparent;color:#c5bdc1}
.cookie-policy-link{font-size:12px;color:#ffb8ca;text-decoration:underline;margin-left:4px}
.footer-cookie-settings{background:none;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
.cookie-consent-modal{position:fixed;inset:0;z-index:13100;display:flex;align-items:center;justify-content:center;padding:16px}
.cookie-consent-modal-backdrop{position:absolute;inset:0;background:rgba(8,8,10,.72);backdrop-filter:blur(4px)}
.cookie-consent-modal-card{position:relative;z-index:1;width:min(640px,100%);max-height:min(88vh,760px);overflow:auto;border-radius:18px;border:1px solid #3a3538;background:#1a1819;color:#f4f6ff;padding:22px;box-shadow:0 24px 80px rgba(0,0,0,.45)}
.cookie-consent-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.cookie-consent-modal-head h2{margin:0;font-size:24px;letter-spacing:-.02em}
.cookie-consent-modal-close{width:36px;height:36px;border-radius:50%;border:1px solid #5a5356;background:#211f20;color:#fff;font-size:22px;line-height:1}
.cookie-consent-categories{display:grid;gap:12px}
.cookie-category{padding:14px 16px;border-radius:14px;border:1px solid #3a3538;background:#141214}
.cookie-category-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.cookie-category strong{display:block;font-size:15px;margin-bottom:6px}
.cookie-category p{margin:0;font-size:13px;line-height:1.6;color:#b8b0b4}
.cookie-toggle{position:relative;display:inline-flex;align-items:center;flex-shrink:0}
.cookie-toggle input{position:absolute;opacity:0;width:0;height:0}
.cookie-toggle span{width:46px;height:26px;border-radius:999px;background:#3a3538;transition:background .15s;position:relative;display:inline-block}
.cookie-toggle span:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .15s}
.cookie-toggle input:checked+span{background:#ff6b91}
.cookie-toggle input:checked+span:after{transform:translateX(20px)}
.cookie-toggle.is-locked{opacity:.75;pointer-events:none}
.cookie-consent-modal-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}
@media(min-width:900px){.cookie-consent-inner{grid-template-columns:minmax(0,1fr) auto;column-gap:18px}}
@media(max-width:720px){.cookie-consent-actions{width:100%}.cookie-btn{flex:1 1 calc(50% - 4px);text-align:center}.cookie-policy-link{flex:1 1 100%;margin:4px 0 0}}

/* TAROKUN paddle compliance v1 */
.footer-paddle-mor{max-width:980px;margin:18px auto 0;padding:0 12px;font-size:8px;line-height:1.65;color:#958c8f;text-align:left;font-style:italic}
.topup-price-dual{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin:4px 0 8px}
.topup-price-usd{font-size:13px;font-weight:700;color:#b8b0b4}
.topup-price-krw{font-size:24px;font-weight:900;color:#fff;letter-spacing:-.02em}
.topup-paddle-note{margin:10px 0 0;font-size:10px;line-height:1.5;color:#958c8f}
.site-beta-banner[hidden]{display:none!important}
body.tarokun-beta-mode .site-beta-banner{display:block!important}
.site-beta-banner-title{display:block;font-size:13px;color:#e8dcc8;margin-bottom:4px}
.site-beta-banner-sub,.site-beta-banner-note{display:block;font-size:11px;color:#958c8f;line-height:1.55}
.billing-beta-notice,.billing-beta-lead{padding:12px 14px;border-radius:10px;background:rgba(120,180,255,.08);border:1px solid rgba(120,180,255,.18)}
.billing-beta-disabled{opacity:.72;cursor:not-allowed!important}
.mythos-v3-notice .mythos-v3-notice-inner span b{color:#ffd0a8}

/* TAROKUN paddle setup admin */
.paddle-setup-panel{display:grid;gap:12px;margin-top:14px}
.paddle-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.paddle-setup-grid label{display:grid;gap:6px;font-size:12px;color:#c5bdc1;font-weight:700}
.paddle-setup-grid input,.paddle-setup-grid select{height:42px;background:#10131e;border:1px solid #5a5356;border-radius:10px;padding:0 12px;color:#fff;font:inherit}
.paddle-setup-status{display:flex;flex-wrap:wrap;gap:8px}
.paddle-setup-pill{padding:4px 10px;border-radius:999px;font-size:11px;font-weight:800;border:1px solid #3a3538;background:#211f20;color:#958c8f}
.paddle-setup-pill.on{border-color:rgba(116,185,255,.45);background:rgba(116,185,255,.12);color:#b8dcff}
.paddle-setup-webhook{font-size:12px;color:#958c8f;word-break:break-all}
.paddle-setup-webhook code{color:#ffb8ca}
@media(max-width:720px){.paddle-setup-grid{grid-template-columns:1fr}}

/* TAROKUN global typography v1 */
html{font-size:12pt}
body{font-size:inherit;line-height:1.6}
h1,h2,h3,h4,h5,h6{font-size:16pt!important;line-height:1.45!important;letter-spacing:-.02em!important;margin-block:0 .65em}
h1 :is(span,em,strong,b,i),h2 :is(span,em,strong,b,i),h3 :is(span,em,strong,b,i),h4 :is(span,em,strong,b,i),h5 :is(span,em,strong,b,i),h6 :is(span,em,strong,b,i){font-size:inherit!important;line-height:inherit!important}
.subpage-top h1,.subpage-section h2,.subpage-card h3,.subpage-panel h2,.subpage-panel h3,.section-head h2,.hero h1,.hero .hero-headline,.hero .eyebrow,.pricing h2,.card h3,.drawer-head h3,.character-info .dossier-title,.continue-chat-head h2,.persona-picker h2,.persona-tuning h2,.mypage-toolbar h2,.mypage-name-inline,.admin-auth-card h3,.admin-editor-head h3,.admin-preview-card h4,.top-headline,.header-brand,.brand,.sidebar-footer strong,.subpage-price,.pricing-card h3,.plan-card h3,.notice-card h3,.board-post-title,.chat-modal-head h3,.auth-panel h2{font-size:16pt!important;line-height:1.45!important}
p,li,dd,dt,label,a,button,input,textarea,select,option,small,em,b,i,th,td,figcaption,blockquote,.subpage-top p,.subpage-note,.subpage-card p,.subpage-panel p,.subpage-field label,.subpage-field input,.subpage-field select,.subpage-field textarea,.subpage-check,.subpage-alert,.subpage-cta,.subpage-close,.subpage-card small,.subpage-panel small,.subpage-step,.card p,.card-meta,.hero p,.nav a,.side-note,.bubble,.drawer-head p,.character-info p,.character-info strong,.character-info .dossier-label,.auth-method-note,.auth-method-btn,.admin-auth-card p,.admin-field span,.admin-field input,.admin-field textarea,.admin-tab,.admin-status,.admin-edit-trigger,.site-footer,.site-footer a,.sidebar-footer,.sidebar-footer a,.eyebrow,.chat-form input,.send,.login,.search,.topbar,.event-banner,.catalog-chips,.subpage-mood,.persona-field label,.persona-chat-form input,.persona-chat-form button,.mypage-display-name,.mypage-stat,.pricing-card p,.plan-card p,.plan-card li,.notice-card p,.board-post-meta,.board-post-body,.cookie-banner,.cookie-banner button,.chat-drawer-credit-pill,.chat-system-notice p,.chat-system-notice-cta,.chat-msg-disclaimer,.persona-ai-disclaimer,.google-auth-btn{font-size:12pt!important;line-height:1.6!important}
.subpage-price span,.card-meta,.sidebar-footer,.sidebar-footer a,.chat-drawer-credit-unit{font-size:12pt!important}
.subpage-step b{font-size:12pt!important;width:2em;height:2em}
@media(max-width:1050px){.hero h1,h1{font-size:16pt!important}}
@media(max-width:720px){.hero h1,h1,.subpage-top h1,.section-head h2{font-size:16pt!important}.nav a,.card h3,.card p{font-size:12pt!important}}

/* TAROKUN auth split login gate v1 */

/* system fonts only — external font CDN disabled for SEO/perf */
.subpage-view:has(.auth-split-shell){inset:0!important;left:0!important;right:0!important;width:100%!important;max-width:100vw!important;z-index:120!important;background:#050505!important;border:0!important}
.subpage-view:has(.auth-split-shell) .subpage-inner{max-width:none!important;margin:0!important;padding:0!important;min-height:100vh!important}
.subpage-view:has(.auth-split-shell) .site-footer-global{display:none!important}
body:has(.auth-split-shell.auth-split-login) .layout .sidebar,
body:has(.auth-split-shell.auth-split-login) .layout .main>.topbar{display:none!important}
body:has(.auth-split-shell.auth-split-login) .layout{display:block!important}
body:has(.auth-split-shell.auth-split-login) .layout .main{width:100%!important}
.auth-split-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh;background:#050505;color:#f5f5f7}
.auth-split-media{position:relative;display:flex;align-items:center;justify-content:center;padding:clamp(24px,4vw,56px);background:linear-gradient(145deg,#120818 0%,#3a1248 42%,#7a2858 100%);overflow:hidden}
.auth-split-media:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(255,107,145,.22),transparent 55%),radial-gradient(circle at 80% 20%,rgba(124,58,237,.18),transparent 50%);pointer-events:none}
.auth-split-media-inner{position:relative;z-index:1;width:min(100%,560px);display:grid;gap:28px;align-content:start}
.auth-split-media-brand{display:flex;align-items:center;justify-content:center;width:100%;padding:0 4px}
.auth-split-media-brand .auth-split-brand-logo{height:63px;width:auto;max-width:300px;object-fit:contain}
.auth-split-media-frame{aspect-ratio:auto;width:100%;max-width:320px;min-height:0;margin:0 auto;border-radius:22px;overflow:visible;background:transparent;border:0;box-shadow:none}
.auth-split-media-frame video,.auth-split-media-frame img{width:100%;height:auto;max-height:min(58vh,480px);object-fit:contain;object-position:center;display:block;background:transparent}
.auth-split-media-placeholder{width:100%;height:100%;background:linear-gradient(135deg,rgba(255,107,145,.35),rgba(124,58,237,.35))}
.auth-split-media-copy{text-align:center}
.auth-split-media-copy h2{font-size:clamp(24px,3vw,34px)!important;line-height:1.2!important;font-weight:800!important;letter-spacing:-.03em!important;margin:0 0 10px!important;color:#fff!important}
.auth-split-media-copy p{color:rgba(255,255,255,.78)!important;font-size:15px!important;line-height:1.6!important;margin:0 auto!important;max-width:36ch}
.auth-split-tabs{display:flex;flex-wrap:wrap;gap:18px;padding-top:4px;justify-content:center}
.auth-split-tabs button{border:0;background:transparent;color:rgba(255,255,255,.45);font:inherit;font-size:12px!important;font-weight:700!important;letter-spacing:.08em;padding:0 0 6px;cursor:default;border-bottom:2px solid transparent;line-height:1.4!important}
.auth-split-tabs button.active{color:#fff;border-bottom-color:#fff}
.auth-split-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(20px,3.5vw,48px) clamp(28px,5vw,72px);background:#050505;border-left:1px solid rgba(255,255,255,.06)}
.auth-split-panel-inner{width:min(100%,420px);margin:0 auto;display:grid;gap:16px}
.auth-split-skip{justify-self:end;border:0;background:transparent;color:#958c8f;font:inherit;font-size:12px!important;padding:0;cursor:pointer;text-decoration:none;line-height:1.4!important}
.auth-split-skip:hover{color:#ff9ab0}
.auth-split-brand{display:flex;align-items:center;gap:12px;font-size:22px!important;font-weight:800!important;letter-spacing:-.03em!important;line-height:1.2!important}
.auth-split-brand-logo{display:block;height:44px;width:auto;max-width:200px;object-fit:contain}
.auth-split-ai-tagline{margin:0;color:#a1a1aa!important;font-size:13px!important;line-height:1.55!important}
.auth-split-title{font-size:clamp(28px,3.2vw,36px)!important;line-height:1.15!important;font-weight:800!important;letter-spacing:-.04em!important;margin:0!important}
.auth-split-title .auth-welcome-thin{font-family:Cinzel,"Song Myung",serif!important;font-weight:200!important;letter-spacing:.02em!important}
.auth-split-title .auth-title-brand{font-weight:800!important;letter-spacing:-.04em!important}
.auth-split-lead{color:#a1a1aa!important;font-size:14px!important;line-height:1.55!important;margin:0!important}
.auth-split-form{display:grid;gap:14px;margin:0}
.auth-split-divider{display:flex;align-items:center;gap:12px;color:#71717a;font-size:12px!important;line-height:1.4!important}
.auth-split-divider:before,.auth-split-divider:after{content:"";flex:1;height:1px;background:rgba(255,255,255,.1)}
.auth-split-divider span{white-space:nowrap}
.auth-split-form .subpage-field{margin:0}
.auth-split-form .subpage-field label{margin-bottom:6px;font-size:13px!important;font-weight:600!important;color:#d4d4d8!important}
.auth-split-form .subpage-field input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #2f2f37;background:#101014;color:#fff;font-size:15px!important}
.auth-split-form .subpage-field input:focus{outline:2px solid #ff6b91;outline-offset:1px;border-color:transparent}
.auth-split-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:2px}
.auth-split-primary,.auth-split-secondary{margin:0!important;padding:12px 10px!important;font-size:13px!important}
.auth-oauth-btn{width:100%;min-height:46px;border-radius:12px;border:1px solid #333;background:#111;color:#fff;font:inherit;font-size:14px!important;font-weight:700!important;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.auth-oauth-btn:hover{background:#1a1a1a}
.auth-google-status{margin:0!important;min-height:18px}
.auth-google-link-panel{margin:10px 0 0;padding:14px 14px 12px;border-radius:12px;border:1px solid rgba(255,154,176,.35);background:rgba(255,107,145,.08)}
.auth-google-link-title{margin:0 0 6px;font-size:15px!important;font-weight:800!important;color:#fff!important;line-height:1.35!important}
.auth-google-link-lead{margin:0 0 12px;font-size:12px!important;line-height:1.55!important;color:#c4c9d8!important}
.auth-google-link-panel .subpage-field{margin:0 0 10px}
.auth-google-link-panel .subpage-field label{font-size:12px!important;margin-bottom:5px}
.auth-google-link-panel .subpage-field input{padding:11px 13px;font-size:14px!important;border-radius:11px}
.auth-google-link-actions{margin:0 0 6px}
.auth-google-link-forgot{margin:0;text-align:right}
.auth-google-link-status{margin:6px 0 0!important;min-height:16px;font-size:11px!important}
.auth-split-footnote{margin:0!important;color:#71717a!important;font-size:12px!important;line-height:1.5!important}
/* TAROKUN auth login compact v1 */
.auth-split-login.auth-split-shell{min-height:100vh;min-height:100svh}
.auth-split-login .auth-split-media{padding:clamp(22px,3.6vw,50px)}
.auth-split-login .auth-split-media-inner{gap:22px;width:min(100%,504px)}
.auth-split-login .auth-split-media-frame{max-width:300px;padding:0;margin:0 auto;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important}
.auth-split-login .auth-split-media-brand .auth-split-brand-logo{height:63px;max-width:300px}
.auth-split-login .auth-split-media-frame img{object-fit:contain;object-position:center;max-height:min(56vh,460px);background:transparent!important;border:0!important;box-shadow:none!important;display:block}
.auth-split-login #authShowcaseHeadline,
.auth-split-login .auth-split-media-copy h2{font-size:clamp(17.6px,2.16vw,24.8px)!important;line-height:1.35!important;margin:0 0 9px!important}
.auth-split-login .auth-split-media-copy{text-align:center}
.auth-split-login #authShowcaseSubtext,
.auth-split-login .auth-split-media-copy p{font-size:14px!important;line-height:1.55!important;max-width:36ch!important;margin-left:auto!important;margin-right:auto!important}
.auth-split-login .auth-split-tabs{justify-content:center}
.auth-split-login .auth-split-panel{padding:clamp(16px,2.8vw,36px) clamp(25px,4.5vw,65px);overflow-y:auto;max-height:100vh;max-height:100svh;justify-content:center}
.auth-split-login .auth-split-panel-inner{gap:14px}
.auth-split-login .auth-split-brand{display:none!important}
.auth-split-login .auth-google-panel .login-legal-consent{margin:8px 0 0;padding:10px 12px}
.auth-split-login .auth-google-panel .login-age-consent{margin:8px 0 0!important}
.auth-forgot-row{margin:0;text-align:right}
.auth-forgot-link{border:0;background:transparent;padding:0;color:#ff9ab0;font:inherit;font-size:12px!important;font-weight:700;cursor:pointer;text-decoration:underline;box-shadow:none!important}
.auth-forgot-link:hover{color:#ffc0d0}
.auth-quick-actions{margin:2px 0 4px}
.auth-quick-actions .auth-quick-btn{margin:0!important;padding:11px 9px!important;font-size:12px!important}
.checkout-phone-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}
.checkout-phone-modal[hidden]{display:none!important}
.checkout-phone-dialog{width:min(100%,380px);padding:20px 18px 16px;border-radius:14px;border:1px solid rgba(255,154,176,.35);background:#101014;color:#f5f5f7;box-shadow:0 24px 80px rgba(0,0,0,.55)}
.checkout-phone-dialog h3{margin:0 0 8px;font-size:17px!important;font-weight:800!important}
.checkout-phone-lead{margin:0 0 14px;font-size:13px!important;line-height:1.55!important;color:#c4c9d8!important}
.checkout-phone-dialog .subpage-field{margin:0 0 12px}
.checkout-phone-dialog .subpage-field input{width:100%;padding:11px 13px;border-radius:11px;border:1px solid #2f2f37;background:#050505;color:#fff;font-size:15px!important}
.checkout-phone-actions{margin:0}
.checkout-phone-status{margin:8px 0 0!important;min-height:16px;font-size:12px!important}
.pricing-plan-note{margin:10px 0 0!important;color:#ff9ab0!important;font-size:13px!important;line-height:1.5!important}
.auth-split-authflow .auth-split-title{font-size:clamp(24px,2.8vw,30px)!important}
.auth-split-login #loginStatus.auth-status-box{background:transparent!important;border:0!important;padding:0!important;min-height:0!important;text-align:right}
.auth-split-login .auth-feedback{margin-top:4px}
.auth-split-login .password-toggle{display:none!important}
.auth-split-login .password-field-wrap input{padding-right:14px!important}
.auth-split-login .auth-split-brand-logo{height:40px;max-width:180px}
.auth-split-login .auth-split-brand{font-size:20px!important}
.auth-split-login .auth-split-title{font-size:clamp(25px,2.9vw,32px)!important;line-height:1.12!important}
.auth-split-login .auth-split-lead{font-size:13px!important;line-height:1.5!important}
.auth-split-login .auth-split-ai-tagline{font-size:12px!important;line-height:1.45!important}
.auth-split-login .auth-split-form{gap:13px}
.auth-split-login .auth-split-divider{gap:11px;font-size:11px!important}
.auth-split-login .auth-split-form .subpage-field label{margin-bottom:5px;font-size:12px!important}
.auth-split-login .auth-split-form .subpage-field input{padding:11px 13px;font-size:14px!important;border-radius:11px}
.auth-split-login .auth-split-actions{gap:7px;margin-top:0}
.auth-split-login .auth-split-primary,.auth-split-login .auth-split-secondary{padding:11px 9px!important;font-size:12px!important}
.auth-split-login .auth-oauth-btn{min-height:42px;border-radius:11px;font-size:13px!important}
.auth-split-login .auth-split-tabs{gap:16px;padding-top:3px}
.auth-split-login .auth-split-footnote{font-size:11px!important;line-height:1.45!important}
.auth-split-login .auth-status-box{padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;font-size:11px!important}
.auth-split-login .login-age-consent{margin:2px 0 7px;font-size:11px!important}
/* TAROKUN login legal consent v1 */
.login-legal-consent{display:grid;gap:6px;margin:10px 0 4px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.login-legal-consent .login-age-consent{margin:0!important;font-size:12px!important;line-height:1.5!important;color:#c4c9d8!important}
.login-legal-link{color:#ff9ab0!important;font-weight:700;text-decoration:none;font-size:80%!important}
.login-legal-link:hover{text-decoration:underline}
.auth-split-login .login-legal-consent .login-legal-link{font-size:80%!important}
.auth-split-login .login-legal-consent{margin:8px 0 2px;padding:10px 12px;border-radius:11px}
.auth-split-login .login-legal-consent .login-age-consent{font-size:11px!important}
.auth-split-login .auth-feedback{gap:7px}
@media(max-width:960px){
  .auth-split-login .auth-split-media{min-height:38vh;padding-bottom:25px}
}
@media(max-width:720px){
  .auth-split-login .auth-split-panel{padding:22px 16px 29px}
}
.auth-feedback{display:grid;gap:8px}
.auth-status-box{margin:0;padding:10px 12px;border-radius:10px;background:#171717;border:1px solid #333;color:#c8c0c3;line-height:1.45;word-break:break-word;overflow-wrap:anywhere;white-space:normal;max-width:100%;font-size:12px!important}
.auth-status-box a{color:#ff9ab0;font-weight:800;text-decoration:underline;word-break:break-all}
.auth-email-title{margin:0 0 4px!important;font-size:16px!important;font-weight:800!important;color:#fff!important;letter-spacing:-.02em!important}
#googleAuthPopup.auth-oauth-btn,
#googleAuthPopup.auth-google-btn{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  min-height:46px!important;
  background:#fff!important;
  color:#1f1f1f!important;
  border:1px solid #dadce0!important;
}
#googleAuthPopup.auth-google-btn-gold,
.auth-google-btn-gold{
  background:linear-gradient(135deg,#e8c766,#c9a227)!important;
  color:#1c1408!important;
  border:1px solid #b8922a!important;
  box-shadow:0 10px 22px rgba(201,162,39,.28)!important;
  font-weight:800!important;
}
#googleAuthPopup.auth-google-btn-gold:hover{background:linear-gradient(135deg,#f0d47a,#d4ad32)!important}
.auth-kakao-btn{background:#FEE500!important;color:#191919!important;border:1px solid #F0D500!important;font-weight:800!important}
.auth-kakao-btn:hover{background:#FADA0A!important}
.auth-kakao-status{margin-top:6px}
#googleAuthPopup[hidden]{display:inline-flex!important}
.auth-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.login-age-consent{margin:2px 0 8px;font-size:12px!important;line-height:1.45!important;color:#b8bfd4!important}
@media(max-width:960px){
  .auth-split-shell{grid-template-columns:1fr}
  .auth-split-media{min-height:42vh;padding-bottom:28px}
  .auth-split-panel{border-left:0;border-top:1px solid rgba(255,255,255,.06)}
  .auth-split-tabs{display:none}
  body:has(.auth-split-shell.auth-split-login) .layout .sidebar{display:none!important}
}
@media(max-width:720px){
  .auth-split-actions{grid-template-columns:1fr}
  .auth-split-panel{padding:24px 18px 32px}
}
.sidebar-footer .sidebar-legal-bottom{display:block;white-space:normal!important;word-break:keep-all;overflow-wrap:anywhere;line-height:1.5!important;padding:0 2px 6px;text-align:left!important}
.sidebar-footer a.footer-ai-transparency-link{white-space:normal!important;display:inline!important;font-size:10pt!important;line-height:1.45!important;margin:4px 0 0}
.sidebar-footer{overflow:visible!important;overflow-x:visible!important;padding-bottom:10px!important}
.sidebar-footer .footer-brand-logo{max-width:160px;height:auto;display:block}

/* TAROKUN login signup ui fix v1 (legacy helpers) */

/* TAROKUN paddle pricing page v1 */
.paddle-pricing-root{margin:8px 0 28px}
.paddle-pricing-root .paddle-pricing-shell{padding:0}

/* TAROKUN annotated ui v6 — taro page + nav */
.topbar .topbar-brand{display:none!important}
.sidebar .sidebar-brand-block{display:block!important}
.sidebar .sidebar-brand .brand-logo{display:block;height:38px;width:auto;max-width:min(180px,calc(100% - 8px));object-fit:contain}
@media(max-width:1099px){
  .sidebar .sidebar-brand-block{padding-top:4px}
  .sidebar .sidebar-brand .brand-logo{height:34px}
}
.subpage-top:has(+ .taro-embed-page){display:none!important}
.subpage-top:has(+ .unse-embed-page){display:none!important}
.taro-embed-page .taro-embed{padding-top:4px}
.unse-embed-page .unse-embed{padding-top:4px}
.subpage-view:has(.unse-embed-page){
  background:transparent!important;
}
.subpage-view.open [data-subpage-bg="unse"]::before{
  background-image:
    linear-gradient(90deg, rgba(5, 7, 17, .98) 0%, rgba(5, 8, 20, .88) 35%, rgba(5, 8, 20, .24) 68%, rgba(5, 7, 17, .68) 100%),
    linear-gradient(180deg, rgba(4, 5, 14, .15), rgba(4, 5, 14, .83)),
    url('/assets/submenu-nav/unse.webp')!important;
  background-position:center right!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
.subpage-inner:has(.unse-embed-page){padding-top:20px;padding-bottom:40px;overflow:visible}
.unse-embed-page{overflow:visible}
.subpage-view:has(.taro-embed-page){
  background:
    linear-gradient(180deg, rgba(10, 9, 10, 0.78) 0%, rgba(15, 14, 15, 0.84) 48%, rgba(8, 7, 8, 0.9) 100%),
    url('/assets/taro-throne-bg.webp') center top / cover no-repeat fixed;
}
.subpage-inner:has(.taro-embed-page){padding-top:20px;padding-bottom:40px;overflow:visible}
.taro-embed-page{overflow:visible}
.sidebar-footer-policy{margin:0 0 10px}
.sidebar-footer-policy a{display:inline-block;color:#c5bdc1;font-size:11px;font-weight:700;text-decoration:none}
.sidebar-footer-policy a:hover{color:#fff}
@media(max-width:1099px){
  #menuToggle.menu-toggle.menu-toggle-sidebar{
    display:flex!important;
    position:fixed!important;
    left:12px!important;
    right:auto!important;
    top:11px!important;
    width:38px!important;
    height:38px!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:10px!important;
    font-size:20px!important;
    z-index:10001!important;
  }
  .topbar.topbar-search-first{padding-left:56px!important}
}
@media(min-width:1100px){
  #menuToggle.menu-toggle.menu-toggle-sidebar{display:none!important}
}

/* TAROKUN annotated ui v5 */
:root{--catalog-hot-card-scale:0.8;--app-topbar-h:61px}
.layout>.sidebar,.sidebar{background:#0f0e0f!important;border-right:1px solid #000!important}
.sidebar-footer{border-top-color:#000!important}
.sidebar-menu-drawer{border-right-color:#000!important}
.top-notice-bar{height:35px!important;min-height:35px!important;padding:0 12px!important;gap:8px!important;max-width:min(780px,100%)!important}
.top-notice-kicker{font-size:10px!important;padding:3px 8px!important}
.top-notice-text{font-size:12px!important}
.top-notice-date{font-size:10px!important}
.top-notice-arrow{font-size:12px!important}
.topbar.topbar-search-first>.topbar-notice-slot .top-notice-bar{height:35px!important;min-height:35px!important;padding:0 12px!important}
.topbar.topbar-search-first{min-height:var(--app-topbar-h)!important;height:auto!important;padding-top:8px!important;padding-bottom:8px!important}
.topbar.topbar-search-first .catalog-search-main{height:48px!important;min-height:48px!important}
.topbar.topbar-search-first .topbar-right,.topbar.topbar-search-first .topbar-actions{gap:8px!important;flex-wrap:nowrap!important}
.topbar.topbar-search-first .lang-switcher{display:inline-flex!important;visibility:visible!important;opacity:1!important;flex-shrink:0!important;border:1px solid #3a3538!important;background:#141214!important;padding:2px!important;gap:2px!important;max-width:none!important}
.topbar.topbar-search-first .lang-switcher button{min-width:34px!important;height:26px!important;padding:0 5px!important;font-size:9px!important;line-height:1.1!important;border-radius:6px!important;border:1px solid transparent!important;background:transparent!important;color:#b8b0b4!important}
.topbar.topbar-search-first .lang-switcher button.active{background:#352430!important;border-color:#ff6b91!important;color:#fff!important}
.topbar.topbar-search-first .login{padding:10px 18px!important;font-size:13px!important;flex-shrink:0!important}
#catalog #hotGrid .card,#catalog .hot-grid .card:not(.card-random){
  flex:0 0 calc(((100% - (var(--catalog-hot-visible) - 1) * 12px) / var(--catalog-hot-visible)) * var(--catalog-hot-card-scale))!important;
  width:calc(((100% - (var(--catalog-hot-visible) - 1) * 12px) / var(--catalog-hot-visible)) * var(--catalog-hot-card-scale))!important;
  min-width:calc(((100% - (var(--catalog-hot-visible) - 1) * 12px) / var(--catalog-hot-visible)) * var(--catalog-hot-card-scale))!important;
  max-width:calc(((100% - (var(--catalog-hot-visible) - 1) * 12px) / var(--catalog-hot-visible)) * var(--catalog-hot-card-scale))!important;
}
#catalog #hotGrid .card .card-body h3,#catalog .hot-grid .card:not(.card-random) .card-body h3{font-size:16px!important;line-height:1.25!important}
#catalog #hotGrid .card .card-body .card-meta,#catalog .hot-grid .card:not(.card-random) .card-body .card-meta{font-size:10px!important;margin-bottom:6px!important}
#catalog #hotGrid .card .card-body p,#catalog .hot-grid .card:not(.card-random) .card-body p{font-size:11px!important;line-height:1.4!important;min-height:32px!important}
#catalog #hotGrid .card .card-body,#catalog .hot-grid .card:not(.card-random) .card-body{padding:10px 8px 11px!important}
@media(max-width:720px){
  #catalog #hotGrid .card,#catalog .hot-grid .card:not(.card-random){
    flex:0 0 calc(((100% - 12px) / 2) * var(--catalog-hot-card-scale))!important;
    width:calc(((100% - 12px) / 2) * var(--catalog-hot-card-scale))!important;
    min-width:calc(((100% - 12px) / 2) * var(--catalog-hot-card-scale))!important;
    max-width:calc(((100% - 12px) / 2) * var(--catalog-hot-card-scale))!important;
  }
  .topbar.topbar-search-first .lang-switcher button{min-width:28px!important;height:24px!important;font-size:8px!important;padding:0 3px!important}
}

/* TAROKUN sidebar topbar v6 */
:root{--sidebar-bg:#0a0a0a;--sidebar-bg-2:#121212;--sidebar-line:#1a1a1a;--sidebar-hover:#1e1e1e;--notice-max:460px}
.layout>.sidebar,.layout .sidebar:not(.sidebar-menu-drawer){background:linear-gradient(180deg,var(--sidebar-bg) 0%,var(--sidebar-bg-2) 100%)!important;border-right:1px solid var(--sidebar-line)!important;box-shadow:none!important}
.sidebar .nav a:hover,.sidebar .nav a.active,.sidebar .nav-notices-bottom a:hover,.sidebar .nav-notices-bottom a.active,.sidebar .nav-support a:hover,.sidebar .nav-support a.active{background:var(--sidebar-hover)!important;color:#f5f5f7!important}
.sidebar-footer,.sidebar-chat-list{background:var(--sidebar-bg)!important;border-top-color:var(--sidebar-line)!important}
.sidebar-brand-divider{border-top-color:var(--sidebar-line)!important}
.sidebar .nav a,.sidebar .nav-notices-bottom a,.sidebar .nav-support a{color:#d4d4d8!important}
.sidebar .sidebar-chat-row:hover,.sidebar .sidebar-chat-row:focus-visible{background:#171717!important}
@media(min-width:721px){.sidebar{border-right:1px solid var(--sidebar-line)!important}}
.topbar.topbar-search-first{display:grid!important;grid-template-columns:minmax(0,220px) minmax(0,var(--notice-max)) minmax(max-content,auto)!important;align-items:center!important;column-gap:10px!important;padding:8px 16px!important;min-height:60px!important;width:100%!important;box-sizing:border-box!important;overflow:visible!important}
.topbar.topbar-search-first>.topbar-search-slot{grid-column:1!important;max-width:220px!important;width:100%!important;height:42px!important;padding:0 12px!important}
.topbar.topbar-search-first>.topbar-notice-slot{grid-column:2!important;justify-self:center!important;width:100%!important;max-width:var(--notice-max)!important;min-width:0!important;padding:0!important;flex:0 1 var(--notice-max)!important}
.top-notice-bar,.topbar.topbar-search-first>.topbar-notice-slot .top-notice-bar{width:100%!important;max-width:var(--notice-max)!important;min-width:0!important}
.top-notice-text{flex:1!important;min-width:0!important}
.topbar.topbar-search-first .topbar-right,.topbar.topbar-search-first .topbar-actions{grid-column:3!important;justify-self:end!important;display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;padding:0!important;width:auto!important;max-width:none!important;min-width:max-content!important;flex-wrap:nowrap!important;overflow:visible!important;flex-shrink:0!important}
.topbar.topbar-search-first .topbar-welcome{max-width:min(150px,18vw)!important;font-size:12px!important;flex-shrink:1!important}
.topbar.topbar-search-first .topbar-welcome-id{max-width:min(120px,16vw)!important;font-size:12px!important;padding:3px 8px!important}
.topbar.topbar-search-first .lang-switcher{display:inline-flex!important;flex:0 0 auto!important;flex-wrap:nowrap!important;overflow:visible!important;max-width:none!important;padding:2px!important;gap:1px!important;border:1px solid #2a2a2a!important;background:#0f0f0f!important}
.topbar.topbar-search-first .lang-switcher button{min-width:28px!important;width:auto!important;height:24px!important;padding:0 6px!important;font-size:10px!important;font-weight:800!important;letter-spacing:.02em!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;flex:0 0 auto!important}
.topbar.topbar-search-first .credit-badge{height:32px!important;padding:0 10px!important;font-size:12px!important;flex-shrink:0!important}
.topbar.topbar-search-first .login{padding:8px 14px!important;font-size:12px!important;white-space:nowrap!important;flex-shrink:0!important}
@media(max-width:1100px){:root{--notice-max:360px}}
@media(max-width:900px){:root{--notice-max:280px}.topbar.topbar-search-first{grid-template-columns:minmax(0,180px) minmax(0,var(--notice-max)) minmax(max-content,auto)!important}}
@media(max-width:720px){
  .topbar.topbar-search-first{grid-template-columns:1fr!important;row-gap:6px!important}
  .topbar.topbar-search-first>.topbar-search-slot{grid-column:1!important;max-width:100%!important}
  .topbar.topbar-search-first>.topbar-notice-slot{grid-column:1!important;max-width:100%!important;display:flex!important;justify-content:center!important}
  :root{--notice-max:min(100%,320px)}
  .topbar.topbar-search-first .topbar-actions{grid-column:1!important;width:100%!important;justify-content:flex-end!important;overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important}
  .topbar.topbar-search-first .topbar-actions::-webkit-scrollbar{display:none!important}
}

/* TAROKUN topbar hero v7 */
.sidebar,.sidebar .nav,.sidebar-chat-list-inner{
  scrollbar-width:thin!important;
  scrollbar-color:#2a2a2a #0a0a0a!important;
}
.sidebar::-webkit-scrollbar,.sidebar .nav::-webkit-scrollbar,.sidebar-chat-list-inner::-webkit-scrollbar{
  width:8px!important;
  height:8px!important;
  background:#0a0a0a!important;
}
.sidebar::-webkit-scrollbar-track,.sidebar .nav::-webkit-scrollbar-track,.sidebar-chat-list-inner::-webkit-scrollbar-track{
  background:#0a0a0a!important;
}
.sidebar::-webkit-scrollbar-thumb,.sidebar .nav::-webkit-scrollbar-thumb,.sidebar-chat-list-inner::-webkit-scrollbar-thumb{
  background:#2a2a2a!important;
  border:2px solid #0a0a0a!important;
  border-radius:8px!important;
}
.sidebar::-webkit-scrollbar-corner,.sidebar .nav::-webkit-scrollbar-corner{
  background:#0a0a0a!important;
}
#catalogHeroRollingLogo,.catalog-hero-rolling-logo{display:none!important;visibility:hidden!important}
.catalog-hero-rolling-text{padding:0 36px!important;max-width:min(88%,920px)!important;overflow:visible!important;white-space:normal!important;word-break:keep-all!important}
.topbar.topbar-search-first .topbar-welcome-label{display:none!important}
.topbar.topbar-search-first .lang-switcher.lang-switcher-compact{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  flex:0 0 auto!important;
  overflow:visible!important;
  max-width:none!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.lang-switcher-label{font-size:11px!important;font-weight:800!important;color:#958c8f!important;white-space:nowrap!important;flex-shrink:0!important}
.lang-switcher-select{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-width:108px!important;
  width:auto!important;
  max-width:none!important;
  height:32px!important;
  padding:0 28px 0 10px!important;
  border:1px solid #3a3538!important;
  border-radius:8px!important;
  background:#141214 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath fill='%23c5bdc1' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E") no-repeat right 10px center!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:32px!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
.lang-switcher-select:focus{outline:2px solid #ff6b91!important;outline-offset:1px!important}
.topbar.topbar-search-first .topbar-actions{overflow:visible!important;min-width:max-content!important}
.topbar.topbar-search-first>.topbar-notice-slot,.top-notice-bar{max-width:min(280px,28vw)!important}
@media(max-width:900px){
  .lang-switcher-label{display:none!important}
  .lang-switcher-select{min-width:96px!important}
}

/* TAROKUN lang row v8 */
:root{--notice-max:132px}
.topbar.topbar-search-first{
  display:grid!important;
  grid-template-columns:minmax(0,168px) minmax(0,132px) minmax(max-content,1fr)!important;
  column-gap:8px!important;
  align-items:center!important;
  overflow:visible!important;
}
.topbar.topbar-search-first>.topbar-search-slot{max-width:168px!important;width:100%!important}
.topbar.topbar-search-first>.topbar-notice-slot{
  grid-column:2!important;
  justify-self:start!important;
  width:132px!important;
  max-width:132px!important;
  min-width:0!important;
  padding:0!important;
  flex:0 0 132px!important;
}
.top-notice-bar,.topbar.topbar-search-first>.topbar-notice-slot .top-notice-bar{
  width:132px!important;
  max-width:132px!important;
  min-width:0!important;
  height:32px!important;
  min-height:32px!important;
  padding:0 8px!important;
  gap:4px!important;
}
.top-notice-date,.top-notice-arrow{display:none!important}
.top-notice-kicker{font-size:10px!important;padding:2px 6px!important}
.top-notice-text{font-size:11px!important}
.topbar.topbar-search-first .topbar-right,
.topbar.topbar-search-first .topbar-actions{
  grid-column:3!important;
  justify-self:end!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  overflow:visible!important;
  min-width:max-content!important;
  max-width:none!important;
  gap:6px!important;
}
.topbar.topbar-search-first .lang-switcher,
.topbar.topbar-search-first .lang-switcher.lang-switcher-row{
  display:inline-flex!important;
  flex-wrap:nowrap!important;
  flex:0 0 auto!important;
  overflow:visible!important;
  max-width:none!important;
  width:auto!important;
  gap:2px!important;
  padding:2px!important;
  border:1px solid #2a2a2a!important;
  background:#0f0f0f!important;
  border-radius:8px!important;
}
.topbar.topbar-search-first .lang-switcher button{
  flex:0 0 auto!important;
  min-width:unset!important;
  width:auto!important;
  height:28px!important;
  padding:0 7px!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  border-radius:6px!important;
}
.lang-switcher-label,.lang-switcher-select{display:none!important}
.topbar.topbar-search-first .topbar-welcome{max-width:110px!important}
.topbar.topbar-search-first .topbar-welcome-id{max-width:96px!important;font-size:11px!important;padding:3px 8px!important}
@media(max-width:1100px){
  :root{--notice-max:120px}
  .topbar.topbar-search-first{grid-template-columns:minmax(0,150px) minmax(0,120px) minmax(max-content,1fr)!important}
  .topbar.topbar-search-first>.topbar-notice-slot,.top-notice-bar{width:120px!important;max-width:120px!important}
}
@media(max-width:720px){
  .topbar.topbar-search-first .lang-switcher{flex-wrap:nowrap!important}
  .topbar.topbar-search-first .topbar-actions{overflow-x:auto!important}
}

/* TAROKUN topbar fill v9 */
.topbar.topbar-search-first{
  display:grid!important;
  grid-template-columns:minmax(140px,180px) minmax(108px,132px) minmax(0,1fr) max-content!important;
  align-items:center!important;
  column-gap:8px!important;
  overflow:visible!important;
}
.topbar.topbar-search-first>.topbar-search-slot{grid-column:1!important;width:100%!important;max-width:180px!important}
.topbar.topbar-search-first>.topbar-notice-slot{
  grid-column:2!important;
  width:100%!important;
  max-width:132px!important;
  justify-self:stretch!important;
  padding:0!important;
}
.top-notice-bar,.topbar.topbar-search-first>.topbar-notice-slot .top-notice-bar{
  width:100%!important;
  max-width:132px!important;
}
.topbar.topbar-search-first>.lang-switcher,
.topbar.topbar-search-first>.lang-switcher.lang-switcher-row{
  grid-column:3!important;
  grid-row:1!important;
  display:flex!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  justify-content:space-evenly!important;
  align-items:center!important;
  flex:1 1 auto!important;
  flex-wrap:nowrap!important;
  overflow:visible!important;
  margin:0!important;
  padding:2px 4px!important;
  border:1px solid #2a2a2a!important;
  background:#0f0f0f!important;
  border-radius:10px!important;
}
.topbar.topbar-search-first>.lang-switcher button{
  flex:1 1 0!important;
  min-width:0!important;
  height:30px!important;
  padding:0 4px!important;
  font-size:12px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.topbar.topbar-search-first .topbar-right,
.topbar.topbar-search-first .topbar-actions{
  grid-column:4!important;
  justify-self:end!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  flex-wrap:nowrap!important;
  overflow:visible!important;
}
@media(max-width:720px){
  .topbar.topbar-search-first{
    grid-template-columns:1fr!important;
    row-gap:6px!important;
  }
  .topbar.topbar-search-first>.topbar-search-slot{grid-column:1!important;max-width:100%!important}
  .topbar.topbar-search-first>.topbar-notice-slot{grid-column:1!important;max-width:100%!important}
  .topbar.topbar-search-first>.lang-switcher{grid-column:1!important}
  .topbar.topbar-search-first .topbar-actions{grid-column:1!important;width:100%!important;justify-content:flex-end!important}
}

/* TAROKUN paddle KRW display v1 */
.topup-price-krw{font-size:24px;font-weight:900;color:#fff;letter-spacing:-.02em}

/* TAROKUN welcome event banner v1 */
.event-welcome-banner{display:flex;align-items:center;gap:10px;background:linear-gradient(90deg,#1a0a2e 0%,#3a0d5e 100%);border-bottom:1px solid #7c3aed;padding:10px 16px;flex-wrap:wrap}
.event-welcome-banner[hidden]{display:none!important}
.event-welcome-icon{font-size:18px;flex-shrink:0}
.event-welcome-text{flex:1;min-width:0;font-size:13px;font-weight:700;color:#e9d5ff;line-height:1.4}
.event-welcome-cta{flex-shrink:0;padding:6px 14px;border-radius:8px;background:#7c3aed;color:#fff;font-size:12px;font-weight:800;text-decoration:none;border:0;cursor:pointer;white-space:nowrap}
.event-welcome-cta:hover{background:#6d28d9}
.event-welcome-close{flex-shrink:0;width:28px;height:28px;border:0;background:rgba(255,255,255,.1);color:#e9d5ff;border-radius:6px;font-size:16px;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}
.event-welcome-close:hover{background:rgba(255,255,255,.2)}
.hero-svc-cost{display:inline-block;margin-left:calc(6px * .7);padding:calc(2px * .7) calc(8px * .7);border-radius:999px;background:linear-gradient(135deg,#f0d47a,#c9a227);border:1px solid rgba(212,173,50,.85);color:#1a1206;font-size:calc(11px * .7);font-weight:800;vertical-align:middle;line-height:1.3;box-shadow:0 1px 3px rgba(201,162,39,.28),inset 0 1px 0 rgba(255,255,255,.32);letter-spacing:.02em}
.hero-svc-cost--free{background:linear-gradient(135deg,#b8e6c8,#5ec48c);border-color:rgba(111,203,154,.65);color:#0d2818;box-shadow:0 1px 3px rgba(94,196,140,.22),inset 0 1px 0 rgba(255,255,255,.28)}
.hero-svc-cost--soon{background:linear-gradient(135deg,#f0d47a,#c9a227);border-color:rgba(212,173,50,.85);color:#1a1206}
.hero-svc-soon-tag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#fbbf24;font-size:10px;font-weight:800;vertical-align:middle}
.hero-svc-event-note{margin:14px 4px 0;font-size:11.5px;line-height:1.55;color:rgba(255,255,255,.52);text-align:center}
.hero-svc-card--soon{opacity:.82;cursor:not-allowed}
.nav-soon{margin-left:4px;padding:1px 6px;border-radius:999px;background:rgba(251,191,36,.15);border:1px solid rgba(251,191,36,.35);color:#fbbf24;font-size:10px;font-weight:800;vertical-align:middle}

/* TAROKUN admin credit give v1 */
.admin-btn-give-credits{background:#7c3aed!important;color:#fff!important;border-color:#7c3aed!important}
.admin-btn-give-credits:hover{background:#6d28d9!important;border-color:#6d28d9!important}

/* TAROKUN topbar ux v10 */
/* ── 검색창 확대 ── */
.topbar .search,
.topbar .catalog-search.search {
  height: 52px !important;
  font-size: 15px !important;
  border-radius: 999px !important;
  padding: 0 20px !important;
  gap: 10px !important;
  min-width: 180px !important;
}
.topbar .search input,
.topbar .catalog-search input {
  font-size: 15px !important;
  line-height: 1.4 !important;
}

/* ── 공지사항 버튼 확대 ── */
.top-notice-bar {
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 20px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
}
.top-notice-kicker {
  font-size: 13px !important;
  padding: 6px 13px !important;
  letter-spacing: 0 !important;
}
.top-notice-text {
  font-size: 15px !important;
  font-weight: 800 !important;
}
.top-notice-arrow {
  font-size: 16px !important;
}

/* ── 사용자 ID 표시 ── */
#topbarWelcome {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  max-width: 200px !important;
  overflow: visible !important;
  flex-shrink: 1 !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
#topbarWelcome .topbar-welcome-label {
  display: none !important; /* "환영" 레이블 제거 → 아이디만 표시 */
}
#topbarWelcomeId {
  display: inline-block !important;
  max-width: 160px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #ffd0dc !important;
  padding: 5px 11px !important;
  background: rgba(255, 107, 145, 0.12) !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 107, 145, 0.3) !important;
  cursor: default !important;
}

/* ── 로그인 버튼 ── */
.topbar .login:not([data-logout="true"]) {
  background: var(--pink) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  border: 0 !important;
}

/* ── 로그아웃 버튼 ── */
.topbar .login[data-logout="true"] {
  background: #3a3034 !important;
  border: 1px solid #6a4a58 !important;
  color: #ffd0dc !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
}

/* ── 언어 스위처 — 위치 유지 ── */
.lang-switcher-row {
  flex-shrink: 0 !important;
  display: flex !important;
  gap: 4px !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
}
.lang-switcher-row button {
  font-size: 11px !important;
  padding: 5px 8px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
}

/* ── topbar 전체 높이 ── */
.topbar {
  height: 68px !important;
  min-height: 68px !important;
}

@media(max-width: 900px) {
  .topbar { height: 60px !important; min-height: 60px !important; }
  .topbar .search, .topbar .catalog-search.search { height: 44px !important; font-size: 14px !important; }
  .top-notice-bar { height: 44px !important; min-height: 44px !important; font-size: 13px !important; }
  #topbarWelcomeId { max-width: 100px !important; font-size: 12px !important; }
}
@media(max-width: 600px) {
  .lang-switcher-row button { font-size: 10px !important; padding: 4px 6px !important; }
  #topbarWelcomeId { max-width: 80px !important; }
}

/* TAROKUN topbar login + lang dropdown v11 */
.topbar.topbar-search-first{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:10px!important;
  height:68px!important;
  min-height:68px!important;
  overflow:visible!important;
  padding:0 20px!important;
}
.topbar.topbar-search-first>.topbar-search-slot,
.topbar.topbar-search-first .search.catalog-search{
  display:flex!important;
  flex:1 1 auto!important;
  min-width:120px!important;
  max-width:280px!important;
  width:auto!important;
}
.topbar.topbar-search-first>.topbar-notice-slot{
  flex:0 1 160px!important;
  width:auto!important;
  max-width:180px!important;
  min-width:0!important;
  grid-column:auto!important;
}
.topbar.topbar-search-first .topbar-right,
.topbar.topbar-search-first .topbar-actions{
  display:flex!important;
  flex:0 0 auto!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:8px!important;
  margin-left:auto!important;
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
  grid-column:auto!important;
  justify-self:auto!important;
  width:auto!important;
}
#topbarWelcome[hidden],
.topbar-welcome[hidden],
#creditBadge[hidden],
.credit-badge[hidden]{display:none!important}
.topbar .login{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  z-index:3!important;
  flex:0 0 auto!important;
  white-space:nowrap!important;
  margin-left:0!important;
}
.lang-switcher.lang-dropdown,
.topbar.topbar-search-first>.lang-switcher,
.topbar.topbar-search-first .lang-switcher.lang-switcher-row{
  position:relative!important;
  display:inline-flex!important;
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  justify-content:flex-start!important;
  z-index:4!important;
}
.lang-dropdown-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  height:36px!important;
  padding:0 12px!important;
  border:1px solid #3a3538!important;
  border-radius:999px!important;
  background:#211f20!important;
  color:#f8f4f5!important;
  font-size:12px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
.lang-dropdown-toggle:hover{border-color:#6a4a58!important;color:#fff!important}
.lang-dropdown.is-open .lang-dropdown-toggle{border-color:#ff6b91!important}
.lang-dropdown-caret{
  width:0!important;height:0!important;
  border-left:4px solid transparent!important;
  border-right:4px solid transparent!important;
  border-top:5px solid #c5bdc1!important;
}
.lang-dropdown.is-open .lang-dropdown-caret{transform:rotate(180deg)!important}
.lang-dropdown-menu{
  position:absolute!important;
  top:calc(100% + 6px)!important;
  right:0!important;
  min-width:100%!important;
  display:grid!important;
  gap:2px!important;
  padding:6px!important;
  border:1px solid #3a3538!important;
  border-radius:12px!important;
  background:#191718!important;
  box-shadow:0 12px 32px rgba(0,0,0,.45)!important;
  z-index:80!important;
}
.lang-dropdown-menu[hidden]{display:none!important}
.lang-dropdown-menu button{
  display:block!important;
  width:100%!important;
  height:34px!important;
  padding:0 12px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#c5bdc1!important;
  font-size:13px!important;
  font-weight:800!important;
  text-align:left!important;
  white-space:nowrap!important;
  min-width:0!important;
  flex:none!important;
}
.lang-dropdown-menu button:hover{background:#2a2728!important;color:#fff!important}
.lang-dropdown-menu button.active{background:#352430!important;color:#fff!important}
@media(max-width:1099px){
  .topbar.topbar-search-first{padding-right:72px!important}
  .menu-toggle{top:11px!important;right:14px!important}
}
@media(max-width:720px){
  .topbar.topbar-search-first{
    flex-wrap:nowrap!important;
    height:60px!important;
    min-height:60px!important;
    padding:0 68px 0 12px!important;
    gap:8px!important;
  }
  .topbar.topbar-search-first>.topbar-search-slot,
  .topbar.topbar-search-first .search.catalog-search{
    flex:1 1 auto!important;
    max-width:none!important;
    min-width:0!important;
  }
  .topbar.topbar-search-first>.topbar-notice-slot{display:none!important}
  .lang-dropdown-toggle{height:32px!important;padding:0 10px!important;font-size:11px!important}
  .topbar .login{padding:8px 14px!important;font-size:13px!important}
}

/* TAROKUN topbar nuclear v12 — last wins */
#home.topbar,
header#home.topbar.topbar-search-first{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  overflow:visible!important;
  padding:0 16px!important;
  grid-template-columns:none!important;
}
#home.topbar>.topbar-search-slot,
#home.topbar .search.catalog-search.topbar-search-slot{
  display:flex!important;
  flex:1 1 220px!important;
  min-width:140px!important;
  max-width:420px!important;
  position:static!important;
  transform:none!important;
  left:auto!important;
}
#home.topbar>.topbar-notice-slot{
  display:flex!important;
  flex:0 1 160px!important;
  max-width:180px!important;
  min-width:0!important;
  width:auto!important;
  padding:0!important;
}
#home.topbar .topbar-actions,
#home.topbar .topbar-right{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:8px!important;
  margin-left:auto!important;
  width:auto!important;
  min-width:0!important;
  overflow:visible!important;
}
#langSwitcher,
#home.topbar #langSwitcher,
#home.topbar .lang-switcher{
  display:inline-flex!important;
  flex-direction:row!important;
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  position:relative!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  gap:0!important;
}
#langSwitcher button,
#langSwitcherMenu,
.lang-dropdown-toggle,
.lang-dropdown-menu,
.lang-dropdown-current,
.lang-dropdown-caret{
  display:none!important;
}
#langSwitcherSelect,
#home.topbar #langSwitcherSelect,
#home.topbar select.lang-switcher-select{
  display:inline-block!important;
  visibility:visible!important;
  appearance:auto!important;
  -webkit-appearance:menulist!important;
  width:auto!important;
  min-width:108px!important;
  max-width:140px!important;
  height:36px!important;
  margin:0!important;
  padding:0 8px!important;
  border:1px solid #5a5356!important;
  border-radius:10px!important;
  background:#211f20!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:34px!important;
  cursor:pointer!important;
}
#home.topbar .login{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 auto!important;
  position:relative!important;
  z-index:6!important;
  height:36px!important;
  padding:0 16px!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:#ff4f78!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
#home.topbar .login[data-logout="true"]{background:#3a3034!important;border:1px solid #6a4a58!important;color:#ffd0dc!important}
#home.topbar #creditBadge[hidden],
#home.topbar #topbarWelcome[hidden]{display:none!important}
@media(max-width:1099px){
  #home.topbar{padding-right:70px!important}
}
@media(max-width:720px){
  #home.topbar>.topbar-notice-slot{display:none!important}
  #langSwitcherSelect{min-width:92px!important;max-width:112px!important;font-size:12px!important}
}

/* TAROKUN hot grid layout fix v1 */
#catalog #hotGrid,
#catalog .hot-grid{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  grid-template-columns:none!important;
  grid-auto-flow:unset!important;
  gap:12px!important;
  width:100%!important;
  max-width:1360px!important;
  margin:0 auto!important;
  padding:4px 2px 10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-behavior:smooth!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#catalog #hotGrid::-webkit-scrollbar{display:none!important}
#catalog #hotGrid .card,
#catalog .hot-grid .card:not(.card-random){
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  flex:0 0 calc(((100% - (var(--catalog-hot-visible) - 1) * 12px) / var(--catalog-hot-visible)) * var(--catalog-hot-card-scale, 1))!important;
  width:calc(((100% - (var(--catalog-hot-visible) - 1) * 12px) / var(--catalog-hot-visible)) * var(--catalog-hot-card-scale, 1))!important;
  min-width:calc(((100% - (var(--catalog-hot-visible) - 1) * 12px) / var(--catalog-hot-visible)) * var(--catalog-hot-card-scale, 1))!important;
  max-width:calc(((100% - (var(--catalog-hot-visible) - 1) * 12px) / var(--catalog-hot-visible)) * var(--catalog-hot-card-scale, 1))!important;
  aspect-ratio:3/4!important;
  scroll-snap-align:start!important;
  position:relative!important;
  overflow:hidden!important;
}
#catalog #hotGrid .card .card-thumb-wrap,
#catalog .hot-grid .card:not(.card-random) .card-thumb-wrap{
  grid-area:1/1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  position:relative!important;
  aspect-ratio:auto!important;
}
#catalog #hotGrid .card .card-body,
#catalog .hot-grid .card:not(.card-random) .card-body{
  grid-area:1/1!important;
  align-self:end!important;
  position:relative!important;
  inset:auto!important;
  height:auto!important;
  background:linear-gradient(180deg,rgba(8,10,18,0) 0%,rgba(8,10,18,.52) 36%,rgba(8,10,18,.94) 100%)!important;
}
@media(max-width:720px){
  #catalog #hotGrid .card,
  #catalog .hot-grid .card:not(.card-random){
    flex:0 0 calc(((100% - 12px) / 2) * var(--catalog-hot-card-scale, 1))!important;
    width:calc(((100% - 12px) / 2) * var(--catalog-hot-card-scale, 1))!important;
    min-width:calc(((100% - 12px) / 2) * var(--catalog-hot-card-scale, 1))!important;
    max-width:calc(((100% - 12px) / 2) * var(--catalog-hot-card-scale, 1))!important;
  }
}

/* TAROKUN admin server restart v1 */
#adminServerOpsPanel code{font-size:12px;color:#ffd0dc}
#adminServerRestartBtn{margin-right:8px}

/* TAROKUN topbar center v13 */
#home.topbar.topbar-center-v13{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(240px,460px) minmax(0,1fr)!important;
  grid-template-areas:"left search actions"!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:8px!important;
  height:64px!important;
  min-height:64px!important;
  max-height:none!important;
  padding:0 16px!important;
  overflow:visible!important;
  flex-wrap:nowrap!important;
  justify-content:stretch!important;
}
#home.topbar.topbar-center-v13>.topbar-notice-slot{display:flex!important;grid-area:left!important;justify-self:stretch!important;align-self:center!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:0 8px 0 0!important}
#home.topbar.topbar-center-v13>.topbar-search-slot,
#home.topbar.topbar-center-v13 .search.catalog-search.topbar-search-slot{
  grid-area:search!important;
  justify-self:center!important;
  align-self:center!important;
  width:100%!important;
  max-width:460px!important;
  min-width:0!important;
  flex:none!important;
  margin:0 auto!important;
}
#home.topbar.topbar-center-v13 .topbar-actions,
#home.topbar.topbar-center-v13 .topbar-right{
  grid-area:actions!important;
  justify-self:end!important;
  align-self:center!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}
#home.topbar.topbar-center-v13 #topbarWelcome{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:0!important;
  padding:0!important;
  max-width:min(200px,28vw)!important;
  overflow:visible!important;
  flex-shrink:0!important;
}
#home.topbar.topbar-center-v13 #topbarWelcome[hidden]{display:none!important}
#home.topbar.topbar-center-v13 .topbar-welcome-label{
  display:inline!important;
  color:#ff6b91!important;
  font-size:12px!important;
  font-weight:800!important;
  flex-shrink:0!important;
}
#home.topbar.topbar-center-v13 #topbarWelcomeId{
  display:inline-block!important;
  max-width:min(160px,24vw)!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:13px!important;
  font-weight:700!important;
  color:#ffd0dc!important;
  padding:4px 10px!important;
  border-radius:999px!important;
  background:rgba(255,107,145,.12)!important;
  border:1px solid rgba(255,107,145,.28)!important;
}
#home.topbar.topbar-center-v13 #langSwitcher,
#home.topbar.topbar-center-v13 #langSwitcherSelect{
  display:inline-block!important;
  flex:0 0 auto!important;
  margin:0!important;
}
html.lumi-lang-switcher-off #langSwitcher,
html.lumi-lang-switcher-off #langSwitcherSelect,
html.lumi-lang-switcher-off #home.topbar #langSwitcher,
html.lumi-lang-switcher-off #home.topbar #langSwitcherSelect,
html.lumi-lang-switcher-off #home.topbar.topbar-center-v13 #langSwitcher,
html.lumi-lang-switcher-off #home.topbar.topbar-center-v13 #langSwitcherSelect{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
#home.topbar.topbar-center-v13 .login{
  display:inline-flex!important;
  flex:0 0 auto!important;
  height:36px!important;
  padding:0 16px!important;
  margin:0!important;
}
#home.topbar.topbar-center-v13 .credit-badge{
  flex:0 0 auto!important;
}
@media(max-width:1099px){
  #home.topbar.topbar-center-v13{padding-right:72px!important}
}
@media(max-width:720px){
  #home.topbar.topbar-center-v13{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"left actions" "search search"!important;
    height:auto!important;
    min-height:56px!important;
    padding:8px 68px 8px 12px!important;
  }
  #home.topbar.topbar-center-v13 .topbar-actions{grid-area:actions!important;justify-self:end!important}
  #home.topbar.topbar-center-v13>.topbar-search-slot{grid-area:search!important;max-width:none!important}
  #home.topbar.topbar-center-v13>.topbar-notice-slot{display:flex!important;grid-area:left!important}
}

/* TAROKUN catalog layout final v1 */
html,body{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  height:auto!important;
  min-height:100vh!important;
}
.layout,.main,.content,#catalog{
  overflow:visible!important;
  max-height:none!important;
  height:auto!important;
}
.main{overflow-x:clip!important}
.content{padding-bottom:56px!important}
#home.topbar.topbar-search-first.topbar-center-v13{
  position:fixed!important;
  top:0!important;
  left:var(--app-sidebar-w)!important;
  right:0!important;
  width:auto!important;
  z-index:100!important;
}
.main>.content,.content{
  padding-top:calc(var(--app-topbar-h) + 20px)!important;
}
@media(max-width:720px){
  #home.topbar.topbar-search-first.topbar-center-v13{left:0!important}
  .main>.content,.content{padding-top:calc(var(--app-topbar-h) + 52px)!important}
}

#catalog #hotGrid,
#catalog .hot-grid{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  gap:12px!important;
  width:100%!important;
  max-width:1360px!important;
  margin:0 auto!important;
  padding:4px 2px 10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-behavior:smooth!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:none!important;
}
#catalog #hotGrid::-webkit-scrollbar{display:none!important}
#catalog #hotGrid .card,
#catalog .hot-grid .card:not(.card-random){
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  aspect-ratio:3/4!important;
  flex:0 0 calc(((100% - (var(--catalog-hot-visible,5) - 1) * 12px) / var(--catalog-hot-visible,5)) * var(--catalog-hot-card-scale,1))!important;
  width:calc(((100% - (var(--catalog-hot-visible,5) - 1) * 12px) / var(--catalog-hot-visible,5)) * var(--catalog-hot-card-scale,1))!important;
  min-width:calc(((100% - (var(--catalog-hot-visible,5) - 1) * 12px) / var(--catalog-hot-visible,5)) * var(--catalog-hot-card-scale,1))!important;
  max-width:calc(((100% - (var(--catalog-hot-visible,5) - 1) * 12px) / var(--catalog-hot-visible,5)) * var(--catalog-hot-card-scale,1))!important;
  overflow:hidden!important;
  position:relative!important;
}
#catalog #hotGrid .card .card-thumb-wrap,
#catalog .hot-grid .card:not(.card-random) .card-thumb-wrap{
  grid-area:1/1!important;
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  min-height:0!important;
}
#catalog #hotGrid .card .card-body,
#catalog .hot-grid .card:not(.card-random) .card-body{
  grid-area:1/1!important;
  align-self:end!important;
  z-index:2!important;
  background:linear-gradient(180deg,rgba(8,10,18,0) 0%,rgba(8,10,18,.52) 36%,rgba(8,10,18,.94) 100%)!important;
  padding:10px 8px 12px!important;
}

#catalog #grid .card.card-random,
#catalog .catalog-random-grid .card.card-random{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  aspect-ratio:3/4!important;
  min-height:0!important;
  position:relative!important;
  overflow:hidden!important;
  align-self:stretch!important;
  background:transparent!important;
}
#catalog #grid .card.card-random .card-thumb,
#catalog .catalog-random-grid .card.card-random .card-thumb{
  grid-area:1/1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  position:relative!important;
  display:block!important;
  overflow:hidden!important;
  background:#25283b!important;
}
#catalog #grid .card.card-random .card-thumb>img,
#catalog #grid .card.card-random .card-thumb>.card-media,
#catalog .catalog-random-grid .card.card-random .card-thumb>img,
#catalog .catalog-random-grid .card.card-random .card-thumb>.card-media,
#catalog #grid .card.card-random .card-media,
#catalog .catalog-random-grid .card.card-random .card-media{
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center top!important;
  display:block!important;
}
#catalog #grid .card.card-random .card-media .card-img,
#catalog .catalog-random-grid .card.card-random .card-media .card-img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center top!important;
}
#catalog #grid .card.card-random .card-body,
#catalog .catalog-random-grid .card.card-random .card-body{
  grid-area:1/1!important;
  align-self:end!important;
  z-index:2!important;
  width:100%!important;
  margin:0!important;
  padding:12px 10px 14px!important;
  background:linear-gradient(180deg,rgba(8,10,18,0) 0%,rgba(8,10,18,.52) 36%,rgba(8,10,18,.94) 100%)!important;
  pointer-events:none!important;
}
#catalog #grid .card.card-random .card-body h3,
#catalog .catalog-random-grid .card.card-random .card-body h3{
  color:#fff!important;
  margin:0 0 4px!important;
  font-size:15px!important;
  line-height:1.25!important;
}
#catalog #grid .card.card-random .card-body .card-meta,
#catalog .catalog-random-grid .card.card-random .card-body .card-meta{
  color:#d8deef!important;
  font-size:10px!important;
  margin-bottom:4px!important;
}
#catalog #grid .card.card-random .card-body p,
#catalog .catalog-random-grid .card.card-random .card-body p{
  color:#c5cbd8!important;
  font-size:11px!important;
  line-height:1.4!important;
  margin:0!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  min-height:0!important;
}
#catalog #grid,
#catalog .catalog-random-grid{
  overflow:visible!important;
  height:auto!important;
  align-items:stretch!important;
}
@media(max-width:720px){
  #catalog #hotGrid .card,#catalog .hot-grid .card:not(.card-random){
    flex:0 0 calc(((100% - 12px)/2) * var(--catalog-hot-card-scale,1))!important;
    width:calc(((100% - 12px)/2) * var(--catalog-hot-card-scale,1))!important;
    min-width:calc(((100% - 12px)/2) * var(--catalog-hot-card-scale,1))!important;
    max-width:calc(((100% - 12px)/2) * var(--catalog-hot-card-scale,1))!important;
  }
}

/* TAROKUN follow i18n v1 */
#catalog .card-follow-btn,
.card-follow-btn{
  min-height:22px!important;
  height:22px!important;
  padding:0 8px!important;
  font-size:9px!important;
  top:6px!important;
  left:6px!important;
  letter-spacing:.01em!important;
}

/* TAROKUN roleplay type contrast v1 */
#drawer.drawer .drawer-head img#dImg{
  width:75px!important;
  height:93px!important;
  min-width:75px!important;
  object-fit:cover!important;
  object-position:center top!important;
  border-radius:12px!important;
}
@media(max-width:720px){
  #drawer.drawer .drawer-head{
    grid-template-columns:66px minmax(0,1fr)!important;
  }
  #drawer.drawer .drawer-head img#dImg{
    width:66px!important;
    height:81px!important;
    min-width:66px!important;
  }
}
.bubble-narration,
.persona-bubble-body .bubble-narration,
.bubble-dialogue.action,
.persona-bubble-body .bubble-dialogue.action{
  font-size:13px!important;
  font-weight:400!important;
  line-height:1.75!important;
  color:#b7becf!important;
  letter-spacing:.01em!important;
}
.bubble-dialogue.action,
.persona-bubble-body .bubble-dialogue.action{
  font-style:italic!important;
  color:#c9c3b2!important;
}
.bubble-dialogue:not(.action),
.persona-bubble-body .bubble-dialogue:not(.action){
  font-size:18px!important;
  font-weight:800!important;
  line-height:1.55!important;
  color:#fff!important;
  letter-spacing:-.02em!important;
}

/* TAROKUN narration italic gray v1 */
.bubble-narration,
.persona-bubble-body .bubble-narration{
  font-style:italic!important;
  font-weight:400!important;
  color:#c8ccd6!important;
}

/* TAROKUN chat archive scroll v1 */
.chat-archive-banner{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:8px 4px 12px;padding:10px 12px;border-radius:12px;background:rgba(255,107,157,.12);border:1px solid rgba(255,107,157,.35);font-size:13px;line-height:1.45;color:#e8eaf0}
.chat-archive-banner p{flex:1 1 180px;margin:0}
.chat-archive-banner .chat-archive-actions{display:flex;flex-wrap:wrap;gap:6px}
.chat-archive-banner button{border:0;border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer;background:#ff6b9d;color:#fff;font-weight:600}
.chat-archive-banner button.outline{background:transparent;border:1px solid rgba(255,255,255,.25);color:#c8ccd6;font-weight:500}
.chat-archive-marker{display:flex;align-items:flex-start;gap:8px;margin:10px 4px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.12);font-size:12px;color:#9aa3b2}
.chat-archive-marker strong{color:#c8ccd6;font-size:12px;white-space:nowrap}
.chat-archive-marker span{flex:1;line-height:1.45}
.drawer-head-actions .persona-drawer-save:not([hidden]){display:inline-flex!important}

/* TAROKUN composer avatar + composing disclaimer v1 */
.chat-form{align-items:center}
.chat-composer-avatar{flex:0 0 40px;width:40px;height:40px;border-radius:50%;padding:0;border:1px solid rgba(255,255,255,.18);background:#2a3148;color:#fff;font-weight:800;font-size:13px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.chat-composer-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.drawer.is-composing .chat-ai-disclaimer,
.drawer.is-composing .chat-msg-disclaimer,
.drawer.is-composing .drawer-foot-actions{display:none!important}
.persona-chat-zone.is-composing .persona-ai-disclaimer{display:none!important}
@media(max-width:720px){
  .chat-composer-avatar{flex-basis:36px;width:36px;height:36px;font-size:12px}
}

/* TAROKUN annotated ui v7 — sidebar fixed, logo 120%, footer pinned */
@media(min-width:1100px){
  .layout{display:block!important}
  .layout>.sidebar,
  .layout .sidebar.sidebar-menu-drawer{
    position:fixed!important;
    top:0!important;
    left:0!important;
    width:var(--app-sidebar-w,265px)!important;
    height:100vh!important;
    max-height:100vh!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    z-index:30!important;
  }
  .sidebar .sidebar-brand-block{flex-shrink:0!important}
  .sidebar .sidebar-nav-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  .sidebar .nav{
    flex:0 0 auto!important;
    min-height:0!important;
    overflow:visible!important;
    overflow-y:visible!important;
    overflow-x:visible!important;
  }
  .sidebar .sidebar-footer{
    flex-shrink:0!important;
    margin-top:auto!important;
  }
  .layout>.main{
    margin-left:var(--app-sidebar-w,265px)!important;
    width:auto!important;
    min-height:100vh!important;
  }
  .sidebar .sidebar-brand .brand-logo{
    height:46px!important;
    width:auto!important;
    max-width:min(216px,calc(100% - 8px))!important;
  }
}
@media(max-width:1099px){
  .sidebar .sidebar-brand .brand-logo{
    height:41px!important;
    max-width:min(216px,calc(100% - 8px))!important;
  }
}

/* TAROKUN annotated ui v8 — dream page + topbar + nav */
.sidebar-brand-block{display:flex!important;justify-content:center!important;padding-left:0!important;padding-right:0!important}
.sidebar-brand-block .brand.sidebar-brand{justify-content:center!important;width:100%!important;padding-left:0!important;padding-right:0!important}
#home.topbar .topbar-actions,
#home.topbar .topbar-right{margin-left:auto!important;padding-right:12px!important;justify-self:end!important}
body:has(.subpage-view.open) #home.topbar .topbar-search-slot{display:none!important}
body:has(.subpage-view.open) #home.topbar #search{visibility:hidden!important}
.subpage-top:has(+ .dream-embed-page){
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  text-align:left!important;
}
.subpage-top:has(+ .dream-embed-page) .eyebrow{display:block!important}
.subpage-top:has(+ .dream-embed-page) > div{max-width:100%;width:100%}
.subpage-top:has(+ .dream-embed-page) p{margin-left:0!important;margin-right:auto!important}
.subpage-view .dream-embed-page,.subpage-view .dream-embed{pointer-events:auto!important;position:relative;z-index:1}
.sidebar-footer-policy{display:none!important}
#home.topbar #topbarWelcome .topbar-welcome-label{display:none!important}

/* TAROKUN annotated ui v9 — tarokun chat page + remove home-back (keep auth login skip) */
.subpage-top>.subpage-close,.subpage-top-actions .subpage-close,button.subpage-close[data-page="home"]:not(.auth-split-skip){display:none!important}
.subpage-view:has(.tarokun-chat-embed-page){background:transparent;overflow-x:hidden}
.subpage-inner:has(.tarokun-chat-embed-page){padding-top:8px}
.tarokun-chat-embed-page{overflow:visible}

/* TAROKUN annotated ui v10 — taro page layout + profile top-right */
.sidebar-brand-block{padding-top:22px!important;padding-bottom:8px!important}
body:has(.subpage-view.open) #home.topbar.topbar-center-v13{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  height:52px!important;
  min-height:52px!important;
  padding:0 18px 0 0!important;
  background:rgba(11,16,38,.94)!important;
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
body:has(.subpage-view.open) .subpage-view{
  top:52px!important;
  border-top:0!important;
}
/* auth login/forgot/reset — full-screen split; must beat v10 subpage strip above */
body:has(.subpage-view.open:has(.auth-split-shell)) #home.topbar.topbar-center-v13,
body.tarokun-auth-login-open #home.topbar.topbar-center-v13{display:none!important}
body:has(.subpage-view.open:has(.auth-split-shell)) .layout .sidebar,
body.tarokun-auth-login-open .layout .sidebar{display:none!important}
body:has(.subpage-view.open:has(.auth-split-shell)) .subpage-view,
body.tarokun-auth-login-open .subpage-view{
  top:0!important;
  inset:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  max-width:100vw!important;
  z-index:120!important;
}
.topbar-notify-btn{color:#5eb3ff!important;border-color:rgba(94,179,255,.45)!important;background:rgba(94,179,255,.08)!important}
.topbar-notify-btn:hover{color:#9ed0ff!important;border-color:#5eb3ff!important;background:rgba(94,179,255,.16)!important}
body:has(.subpage-view.open) #home.topbar.topbar-center-v13 #topbarWelcome:not([hidden]){
  display:inline-flex!important;
  flex-shrink:0!important;
  max-width:min(200px,28vw)!important;
  overflow:visible!important;
}
body:has(.subpage-view.open) #home.topbar.topbar-center-v13 #topbarWelcomeId{
  max-width:min(160px,24vw)!important;
}
body:has(.subpage-view.open) #home.topbar .topbar-brand,
body:has(.subpage-view.open) #home.topbar .topbar-search-slot,
body:has(.subpage-view.open) #home.topbar .topbar-notice-slot{display:none!important}
body:has(.subpage-view.open) #home.topbar .topbar-actions,
body:has(.subpage-view.open) #home.topbar .topbar-right{
  margin-left:auto!important;
  padding-right:0!important;
  justify-self:end!important;
}
#pageView:has(.taro-embed-page) .subpage-inner{padding-bottom:0!important}
#pageView:has(.taro-embed-page) .site-footer-global{
  margin-top:0!important;
  padding:10px 16px 22px!important;
  border-top:0!important;
  text-align:center;
}
#pageView:has(.taro-embed-page) .site-footer-global .footer-brand-wrap,
#pageView:has(.taro-embed-page) .site-footer-global .footer-company,
#pageView:has(.taro-embed-page) .site-footer-global .beta-banner,
#pageView:has(.taro-embed-page) .site-footer-global .footer-links-legal{display:none!important}
#pageView:has(.taro-embed-page) .site-footer-global .footer-legal-bottom{
  margin:0 auto!important;
  padding:0!important;
  text-align:center!important;
  font-size:10px!important;
}
@media(max-width:1099px){
  body:has(.subpage-view.open) #home.topbar.topbar-center-v13{padding-right:12px!important}
}
.auth-fortune-email-wrap{margin:12px 0 4px;padding:14px 14px 10px;border-radius:12px;border:1px solid rgba(243,213,138,.22);background:rgba(21,26,54,.55)}
.auth-fortune-email-wrap .auth-fortune-optin{display:flex;gap:10px;align-items:flex-start;margin:0 0 12px;font-size:13px;line-height:1.55;color:#e8dcc8}
.auth-fortune-fields{display:grid;gap:8px}
.auth-fortune-fields label{font-size:12px;font-weight:700;color:#d8c7a0}
.auth-fortune-fields input[type="text"],.auth-fortune-fields input[type="number"]{width:100%;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.22);color:#f2ecdd;padding:10px 12px;font-size:14px}
.auth-birth-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.auth-fortune-note{margin:8px 0 0;font-size:11px;line-height:1.55;color:#9aa3c7}

/* TAROKUN mobile drawer fix v1 */
@media(max-width:1099px){
  .layout{display:block!important;grid-template-columns:none!important;width:100%!important}
  .menu-shade{display:none!important;position:fixed!important;inset:0!important;background:rgba(0,0,0,.58)!important;z-index:10001!important}
  .menu-shade.open{display:block!important}
  aside.sidebar.sidebar-menu-drawer:not(.mobile-open){
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  aside.sidebar.sidebar-menu-drawer.mobile-open{
    display:flex!important;
    visibility:visible!important;
    pointer-events:auto!important;
    position:fixed!important;
    left:0!important;
    right:auto!important;
    top:0!important;
    width:min(320px,88vw)!important;
    max-width:88vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    transform:none!important;
    z-index:10002!important;
    overflow:auto!important;
    flex-direction:column!important;
    margin:0!important;
    border:0!important;
    border-right:1px solid #514b4e!important;
    border-radius:0!important;
    box-shadow:18px 0 48px rgba(0,0,0,.45)!important;
    padding:18px 14px 16px!important;
    background:#1a1819!important;
  }
  body.menu-open{overflow:hidden!important}
  body.menu-open .main{margin-right:0!important;margin-left:0!important}
}

/* 손금·관상 서브페이지 — 상단 가운데 검색창 유지 */
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar.topbar-center-v13{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(240px,460px) minmax(0,1fr)!important;
  grid-template-areas:"left search actions"!important;
  justify-content:stretch!important;
  align-items:center!important;
  height:64px!important;
  min-height:64px!important;
  padding:0 16px!important;
  background:rgba(15,14,15,.94)!important;
  border-bottom:1px solid var(--line)!important;
}
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar .topbar-notice-slot,
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar .topbar-search-slot{
  display:flex!important;
}
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar #search{
  visibility:visible!important;
}
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar .topbar-brand{
  display:none!important;
}
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar .topbar-actions,
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar .topbar-right{
  grid-area:actions!important;
  margin-left:0!important;
  padding-right:0!important;
  justify-self:end!important;
}
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) .subpage-view{
  top:64px!important;
}
body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar .catalog-search-main{
  display:flex!important;
  grid-area:search!important;
  justify-self:center!important;
  width:100%!important;
  max-width:460px!important;
  min-width:0!important;
  height:46px!important;
  margin:0 auto!important;
  padding:0 16px!important;
  background:#211f20!important;
  border:1px solid #5a5356!important;
  border-radius:999px!important;
  color:#958c8f!important;
}
@media(max-width:720px){
  body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar.topbar-center-v13{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"left actions" "search search"!important;
    height:auto!important;
    min-height:56px!important;
    padding:8px 10px 8px 52px!important;
  }
  body:has(.subpage-view.open:has(.fortune-visual-embed-page)) #home.topbar .topbar-search-slot{
    display:flex!important;
    grid-area:search!important;
    max-width:none!important;
    width:100%!important;
  }
  body:has(.subpage-view.open:has(.fortune-visual-embed-page)) .subpage-view{
    top:76px!important;
  }
}

/* TAROKUN subpage unified system v1 — content inset, width, typography, color */
:root{
  --sp-content-max:1040px;
  --sp-face-pad-top:28px;
  --sp-face-pad-x:16px;
  --sp-face-pad-bottom:60px;
  --sp-face-content-max:1180px;
  --sp-pad-x:var(--sp-face-pad-x);
  --sp-pad-top:var(--sp-face-pad-top);
  --sp-pad-bottom:var(--sp-face-pad-bottom);
  --sp-top-gap:24px;
  --sp-section-gap:32px;
  --sp-ink-title:#f8f4f5;
  --sp-ink-lead:#c5bdc1;
  --sp-ink-body:#bdb4b8;
  --sp-ink-muted:#958c8f;
  --sp-ink-accent:#ff9ab0;
  --sp-ink-em:var(--pink,#ff6b91);
  --sp-title-size:clamp(28px,3.6vw,36px);
  --sp-section-size:22px;
  --sp-card-title-size:18px;
  --sp-lead-size:15px;
  --sp-body-size:14px;
  --sp-note-size:13px;
  --sp-kicker-size:11px;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-inner{
  max-width:var(--sp-content-max)!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:var(--sp-pad-top) var(--sp-pad-x) var(--sp-pad-bottom)!important;
  box-sizing:border-box!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px 24px!important;
  margin:0 0 var(--sp-top-gap)!important;
  max-width:100%!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-top .eyebrow{
  display:block!important;
  margin:0 0 10px!important;
  font-size:var(--sp-kicker-size)!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:var(--sp-ink-accent)!important;
  line-height:1.35!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-top h1,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top .auth-split-title{
  margin:0 0 12px!important;
  font-size:var(--sp-title-size)!important;
  line-height:1.15!important;
  letter-spacing:-.03em!important;
  font-weight:800!important;
  color:var(--sp-ink-title)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-top h1 em{
  font-style:normal!important;
  color:var(--sp-ink-em)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-top > div > p,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top > p,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top .auth-split-lead{
  max-width:640px!important;
  margin:0!important;
  font-size:var(--sp-lead-size)!important;
  line-height:1.65!important;
  color:var(--sp-ink-lead)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-section{
  margin:var(--sp-section-gap) 0 0!important;
  padding-top:var(--sp-section-gap)!important;
  border-top:1px solid var(--line,#3a3538)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .subpage-section,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .subpage-alert,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .board-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .usage-guide-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .billing-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .personality-match-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .persona-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .mypage-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .sitemap-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .taro-embed-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + .fortune-visual-embed-page,
.subpage-view:not(:has(.auth-split-shell)) .subpage-top + section[class*="-page"]{
  margin-top:0!important;
  padding-top:0!important;
  border-top:0!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-section h2,
.subpage-view:not(:has(.auth-split-shell)) .billing-hero h2,
.subpage-view:not(:has(.auth-split-shell)) .usage-hero h2,
.subpage-view:not(:has(.auth-split-shell)) .mypage-toolbar h2{
  margin:0 0 14px!important;
  font-size:var(--sp-section-size)!important;
  line-height:1.35!important;
  letter-spacing:-.02em!important;
  font-weight:800!important;
  color:var(--sp-ink-title)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-card h3,
.subpage-view:not(:has(.auth-split-shell)) .subpage-panel h3,
.subpage-view:not(:has(.auth-split-shell)) .topup-card h3,
.subpage-view:not(:has(.auth-split-shell)) .plan-card h3{
  margin:0 0 10px!important;
  font-size:var(--sp-card-title-size)!important;
  line-height:1.4!important;
  font-weight:800!important;
  color:var(--sp-ink-title)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-card p,
.subpage-view:not(:has(.auth-split-shell)) .subpage-panel p,
.subpage-view:not(:has(.auth-split-shell)) .subpage-panel li,
.subpage-view:not(:has(.auth-split-shell)) .subpage-card li,
.subpage-view:not(:has(.auth-split-shell)) .subpage-check,
.subpage-view:not(:has(.auth-split-shell)) .subpage-alert,
.subpage-view:not(:has(.auth-split-shell)) .billing-hero .pricing-lead,
.subpage-view:not(:has(.auth-split-shell)) .usage-hero > p,
.subpage-view:not(:has(.auth-split-shell)) .board-post-body,
.subpage-view:not(:has(.auth-split-shell)) .notice-card p{
  font-size:var(--sp-body-size)!important;
  line-height:1.75!important;
  color:var(--sp-ink-body)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-note,
.subpage-view:not(:has(.auth-split-shell)) .subpage-panel .subpage-note,
.subpage-view:not(:has(.auth-split-shell)) .billing-topup-note,
.subpage-view:not(:has(.auth-split-shell)) .topup-meta-list,
.subpage-view:not(:has(.auth-split-shell)) .board-post-meta,
.subpage-view:not(:has(.auth-split-shell)) .notice-card small,
.subpage-view:not(:has(.auth-split-shell)) .sitemap-page .subpage-note{
  font-size:var(--sp-note-size)!important;
  line-height:1.65!important;
  color:var(--sp-ink-muted)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-card small,
.subpage-view:not(:has(.auth-split-shell)) .subpage-panel small,
.subpage-view:not(:has(.auth-split-shell)) .billing-hero .eyebrow,
.subpage-view:not(:has(.auth-split-shell)) .usage-hero-kicker{
  font-size:var(--sp-kicker-size)!important;
  letter-spacing:.12em!important;
  font-weight:800!important;
  color:var(--sp-ink-accent)!important;
}
.subpage-view:not(:has(.auth-split-shell)) .subpage-card,
.subpage-view:not(:has(.auth-split-shell)) .subpage-panel{
  padding:20px 22px!important;
  border-radius:14px!important;
}
.subpage-view:not(:has(.auth-split-shell)) .billing-hero,
.subpage-view:not(:has(.auth-split-shell)) .usage-hero{
  text-align:left!important;
  padding:0!important;
  margin:0 0 8px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.subpage-view:not(:has(.auth-split-shell)) .mypage-page{
  max-width:100%!important;
  margin:0!important;
}
.subpage-view:not(:has(.auth-split-shell)) #pageContent:has(.persona-page) .subpage-inner,
.subpage-view:not(:has(.auth-split-shell)) .subpage-inner:has(.admin-bg-page),
.subpage-view:not(:has(.auth-split-shell)) .subpage-inner:has(.admin-bg-gate),
.subpage-view:not(:has(.auth-split-shell)) .subpage-inner:has(.taro-embed-page),
.subpage-view:not(:has(.auth-split-shell)) #pageView:has(.taro-embed-page) .subpage-inner{
  padding-top:var(--sp-pad-top)!important;
  padding-left:var(--sp-pad-x)!important;
  padding-right:var(--sp-pad-x)!important;
}
.subpage-view:not(:has(.auth-split-shell)) #pageContent:has(.persona-page) .subpage-top h1{
  font-size:var(--sp-title-size)!important;
  line-height:1.15!important;
  letter-spacing:-.03em!important;
}
.subpage-view:not(:has(.auth-split-shell)) #pageContent:has(.persona-page) .subpage-top p{
  font-size:var(--sp-lead-size)!important;
  line-height:1.65!important;
}
@media(max-width:720px){
  :root{
    --sp-face-pad-top:20px;
    --sp-face-pad-bottom:calc(40px + env(safe-area-inset-bottom,0px));
    --sp-top-gap:16px;
    --sp-section-gap:24px;
  }
  .subpage-view:not(:has(.auth-split-shell)) .subpage-top{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .subpage-view:not(:has(.auth-split-shell)) .subpage-top-actions,
  .subpage-view:not(:has(.auth-split-shell)) .subpage-top > .subpage-close{
    width:100%!important;
  }
}

/* TAROKUN FAQ critical guard v1 — lazy route CSS 전에도 아이콘·폭 깨짐 방지 */
.subpage-view:has(.tarokun-faq-page){
  background:#0f0e0f!important;
  border-top:0!important;
}
.subpage-view:has(.tarokun-faq-page) .subpage-inner{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.subpage-view:has(.tarokun-faq-page) .site-footer-global{
  display:none!important;
}
.tarokun-faq-page{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  overflow-x:hidden;
  min-height:100%;
  padding:28px 28px 60px;
  color:#ede6f5;
  font-family:"Noto Sans KR",sans-serif;
}
.tarokun-faq-page .tf-wrap{
  width:100%;
  max-width:920px;
  margin:0 auto;
}
.tarokun-faq-page .tf-search-faq{
  margin-top:20px;
  display:flex;
  align-items:center;
  gap:10px;
  max-width:440px;
  padding:12px 18px;
  border-radius:999px;
  border:1px solid rgba(201,162,39,.26);
  background:rgba(255,255,255,.06);
}
.tarokun-faq-page .tf-search-faq svg,
.tarokun-faq-page .tf-faq-q .tf-chev{
  flex:none!important;
  max-width:24px!important;
  max-height:24px!important;
}
.tarokun-faq-page .tf-search-faq svg{
  width:15px!important;
  height:15px!important;
}
.tarokun-faq-page .tf-faq-q .tf-chev{
  width:18px!important;
  height:18px!important;
}
.tarokun-faq-page .tf-search-faq input{
  flex:1;
  min-width:0;
  border:0;
  outline:0;
  background:none;
  color:#fff;
  font:inherit;
  font-size:13.5px;
}
.tarokun-faq-page .tf-cat-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:28px 0 6px;
}
.tarokun-faq-page .tf-faq-list{
  margin-top:18px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.tarokun-faq-page .tf-faq-item{
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(201,162,39,.26);
  background:#1a1819;
}
.tarokun-faq-page .tf-faq-q{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:17px 20px;
  cursor:pointer;
}

/* TAROKUN embed subpage layout fix v1 — sidebar offset + full-bleed embed routes */
body:has(.subpage-view.open) .subpage-view{
  position:fixed!important;
  inset:var(--app-topbar-h,68px) 0 0 var(--app-sidebar-w,265px)!important;
  left:var(--app-sidebar-w,265px)!important;
  right:0!important;
  width:auto!important;
  max-width:none!important;
}
@media(max-width:1099px){
  body:has(.subpage-view.open) .subpage-view{
    inset:76px 0 0 0!important;
    left:0!important;
  }
}
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]),
.subpage-view:has(.saju-embed-page) .subpage-inner,
.subpage-view:has(.fortune-visual-embed-page) .subpage-inner,
.subpage-view:has(.fengshui-embed-page) .subpage-inner,
.subpage-view:has(.dream-embed-page) .subpage-inner,
.subpage-view:has(.tarokun-chat-embed-page) .subpage-inner,
.subpage-view:has(.taro-embed-page) .subpage-inner,
.subpage-view:has(.unse-embed-page) .subpage-inner,
.subpage-view:has(.zodiac-talisman-embed-page) .subpage-inner,
.subpage-view:has(.amulet-page-section) .subpage-inner,
.subpage-view:has(#amuletPageRoot) .subpage-inner,
.subpage-view:has(.amulet-foil-demo) .subpage-inner{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:var(--sp-face-pad-top) var(--sp-face-pad-x) var(--sp-face-pad-bottom)!important;
  box-sizing:border-box!important;
}
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .fv-embed .fv-wrap,
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .fs-main,
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .saju-embed .saju-wrap,
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .unse-embed,
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .dream-embed,
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .taro-embed,
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .tarokun-chat-embed{
  width:100%!important;
  max-width:var(--sp-face-content-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .fv-embed .fv-wrap,
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .fs-main,
.subpage-view.open #pageContent.subpage-inner:has([data-subpage-bg]) .saju-embed .saju-wrap{
  padding-top:0!important;
  padding-bottom:0!important;
}

/* TAROKUN subpage backgrounds — right panel (11 services; no black layer) */
:root{
  --subpage-bg-base:transparent;
  --subpage-bg-watermark-opacity:1;
}
.subpage-view.open:has([data-subpage-bg]){
  position:relative!important;
  background:transparent!important;
  background-color:transparent!important;
}
.subpage-view.open [data-subpage-bg]{
  position:relative!important;
  z-index:1!important;
  background-color:transparent!important;
  background-image:none!important;
  min-height:calc(100vh - var(--unified-header-h, 52px))!important;
  isolation:isolate!important;
}
.subpage-view.open [data-subpage-bg]::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background-repeat:no-repeat!important;
  background-position:left top!important;
  background-size:contain!important;
  opacity:var(--subpage-bg-watermark-opacity)!important;
}
.subpage-view.open [data-subpage-bg] > *,
.subpage-view.open:has([data-subpage-bg]) .subpage-inner,
.subpage-view.open:has([data-subpage-bg]) .site-footer-global{
  position:relative!important;
  z-index:1!important;
}
.subpage-view.open [data-subpage-bg="saju"]::before{background-image:url('/assets/submenu-nav/saju.webp')!important}
.subpage-view.open [data-subpage-bg="palm"]::before{background-image:url('/assets/submenu-nav/palm.webp')!important}
.subpage-view.open [data-subpage-bg="face"]::before{background-image:url('/assets/submenu-nav/face.webp')!important}
.subpage-view.open [data-subpage-bg="fengshui"]::before{background-image:url('/assets/submenu-nav/fengshui.webp')!important}
.subpage-view.open [data-subpage-bg="taro"]::before{display:none!important}
.subpage-view.open:has([data-subpage-bg="taro"]){
  background:
    linear-gradient(180deg, rgba(10, 9, 10, 0.48) 0%, rgba(15, 14, 15, 0.62) 42%, rgba(8, 7, 8, 0.82) 100%),
    url('/assets/submenu-nav/taro.webp') center top / cover no-repeat fixed!important;
  background-color:#0a090a!important;
}
.subpage-view.open:has([data-subpage-bg="taro"]) .subpage-inner{
  padding-top:12px!important;
}
.subpage-view.open [data-subpage-bg="unse"]::before{background-image:url('/assets/submenu-nav/unse.webp')!important}
.subpage-view.open [data-subpage-bg="dream"]::before{background-image:url('/assets/submenu-nav/dream.webp')!important}
.subpage-view.open [data-subpage-bg="amulet"]::before{background-image:url('/assets/submenu-nav/amulet.webp')!important}
.subpage-view.open [data-subpage-bg="tarokun-chat"]::before{
  display:none!important;
}
.subpage-view.open [data-subpage-bg="personality-match"]::before{background-image:url('/assets/submenu-nav/personality-match.webp')!important}
.subpage-view.open [data-subpage-bg="persona-chat"]::before{background-image:url('/assets/submenu-nav/persona-chat.webp')!important}
.subpage-view.open:has([data-subpage-bg="saju"]) .saju-embed,
.subpage-view.open:has([data-subpage-bg="palm"]) .fv-embed,
.subpage-view.open:has([data-subpage-bg="face"]) .fv-embed,
.subpage-view.open:has([data-subpage-bg="fengshui"]) .fs-embed{
  background:transparent!important;
}

/* Sidebar — nav icon/text 한줄 + 20pt inset (관상 레이아웃 기준) */
aside.sidebar.sidebar-menu-drawer .sidebar-nav-scroll{
  padding-top:20pt!important;
  padding-left:20pt!important;
}
aside.sidebar.sidebar-menu-drawer .sidebar-nav-scroll .nav a,
body:has(#catalog .mythos-v3) .sidebar .sidebar-nav-scroll .nav a,
body:has(#catalog .tk-landing-1a) .sidebar .sidebar-nav-scroll .nav a{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:10px!important;
  white-space:nowrap!important;
  grid-template-columns:none!important;
  min-height:34px!important;
}
aside.sidebar.sidebar-menu-drawer .sidebar-nav-scroll .nav a .nav-ic,
body:has(#catalog .mythos-v3) .sidebar .sidebar-nav-scroll .nav a .nav-ic,
body:has(#catalog .tk-landing-1a) .sidebar .sidebar-nav-scroll .nav a .nav-ic{
  width:1.6em!important;
  min-width:1.6em!important;
  flex:0 0 1.6em!important;
  text-align:center!important;
  line-height:1!important;
}
aside.sidebar.sidebar-menu-drawer .sidebar-nav-scroll .nav a > span:last-child,
body:has(#catalog .mythos-v3) .sidebar .sidebar-nav-scroll .nav a > span:last-child,
body:has(#catalog .tk-landing-1a) .sidebar .sidebar-nav-scroll .nav a > span:last-child{
  min-width:0!important;
  flex:1 1 auto!important;
  line-height:1.35!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Sidebar — 성향 맞춤 친구 · 성격유형 채팅설정 숨김 (마크업·라우트 유지) */
aside.sidebar.sidebar-menu-drawer .sidebar-nav-scroll .nav-main-services a[data-page="personality-match"],
aside.sidebar.sidebar-menu-drawer .sidebar-nav-scroll .nav-persona-services a[data-page="persona-chat"],
.sidebar-nav-scroll a.nav-item-suspended[data-page="personality-match"],
.sidebar-nav-scroll a.nav-item-suspended[data-page="persona-chat"]{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  max-height:0!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  pointer-events:none!important;
}

/* Sidebar · 홈 — 84일 챌린지 · 마스터 프로그램 · 나의 타로 도감 숨김 (마크업·라우트 유지) */
.sidebar-promo-1a,
aside.sidebar .sidebar-nav-scroll .nav-secondary a[data-page="almanac-challenge"],
aside.sidebar .sidebar-nav-scroll .nav-secondary a[data-page="master"],
body:has(#catalog .tk-landing-1a) .sidebar .sidebar-nav-scroll .nav-secondary a[data-page="almanac-challenge"],
body:has(#catalog .tk-landing-1a) .sidebar .sidebar-nav-scroll .nav-secondary a[data-page="master"],
#catalog .mythos-v3-block:has(#mythosDogam){
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  max-height:0!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  pointer-events:none!important;
}
