/* Independent destination design: cr-v1-layout-03-purple-neon. */
:root{--coral:#7a45d7;--coral-dark:#7a45d7;--accent:#c3a3ff;--pink:#0c0716;--navy:#f7f2ff;--ink:#f7f2ff;--muted:color-mix(in srgb,#f7f2ff 62%,transparent);--line:color-mix(in srgb,#7a45d7 18%,#d8dee7);--bg:#0c0716;--white:#171023;--yellow:#c3a3ff;--shadow:0 18px 45px color-mix(in srgb,#7a45d7 15%,transparent)}
body{background:var(--bg);color:var(--ink)}
.hero-copy{position:relative}.hero-copy .search-thumb{left:0;right:auto;top:0;width:1px;height:1px!important;opacity:.001;border:0}
.title-line .partner-name{display:flex;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 100px);margin:0 0 7px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--muted);font-size:12px;line-height:1.35}
.title-line .partner-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:13px}.title-line .page-description{color:var(--muted);margin:0}
.step h3{display:block;margin:0 0 6px;font-size:16px;line-height:1.4}.profile-summary .profile-call{display:grid;place-items:center;width:100%;min-height:48px;border-radius:inherit;background:var(--yellow);color:#111827;font-weight:900}
.top-search input,.finder input,.finder select{color:var(--ink);background:var(--white)}.fixed-call:focus-visible,.profile-call:focus-visible,.shop-card:focus-visible,.text-card:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:560px){.title-line .partner-name{max-width:calc(100% - 70px);font-size:11px}.title-line .partner-name strong{font-size:12px}}

body{background:#090513;color:#f7f1ff}.top{background:#08040f;border-bottom:1px solid #39204f}.top-search{background:#171021;border-color:#a83cff}.top-search input{background:transparent;color:#fff}.nav a{color:#fff}.notice{background:#12081f;color:#ffb9ec;padding:4px}.notice-inner{background:transparent;border:0;box-shadow:none}.hero-panel{min-height:560px;border-radius:22px;background:radial-gradient(circle at 18% 20%,rgba(168,60,255,.3),transparent 36%),radial-gradient(circle at 80% 75%,rgba(255,67,188,.2),transparent 30%),linear-gradient(145deg,#161020,#08040f);border:1px solid #593078;color:#fff;padding:62px;box-shadow:0 0 55px rgba(168,60,255,.13)}.hero-copy h1{font-size:50px}.hero-copy p{color:#d8c8e7}.hero-art{width:370px;height:370px;border-radius:24px;border:1px solid #a83cff;background:#171021;box-shadow:0 0 40px rgba(255,67,188,.22)}.hero-art img{width:100%;height:100%;object-fit:cover;border-radius:23px;filter:saturate(.8)}.finder,.shop-card,.feature,.panel,.text-card,.search-shell{background:#171021;border-color:#3f2a55;color:#fff}.finder input,.finder select{background:#0d0815;color:#fff;border-color:#4a3261}.section-heading h2,.card-copy strong,.feature h3,.panel h2,.title-line h1{color:#fff}.card-copy small,.feature p,.panel p{color:#cbbbd8}.shop-card{border-radius:14px;box-shadow:0 14px 35px rgba(0,0,0,.3)}.footer{background:#050208}.fixed-call{background:linear-gradient(135deg,#a83cff,#ff43bc)}

.page-head{margin:28px 0 18px;padding:42px;border:1px solid #b354ff;border-radius:22px;background:radial-gradient(circle at 85% 0,rgba(230,64,255,.24),transparent 40%),#13091f;box-shadow:0 0 44px rgba(174,56,255,.18)}.title-line h1{font-size:48px;text-shadow:0 0 24px rgba(213,94,255,.42)}.detail-gallery{grid-template-columns:1.7fr 1fr 1fr;grid-template-rows:220px 160px}.detail-gallery img{height:100%;aspect-ratio:auto;border:1px solid #8b42bd}.detail-gallery img:first-child{grid-row:1/3}.detail-gallery img:nth-child(4){grid-column:2/4}.detail-layout{grid-template-columns:minmax(0,1fr) 340px}.profile-summary{background:linear-gradient(160deg,#301047,#14091e);border:1px solid #b354ff;box-shadow:0 0 35px rgba(184,64,255,.18)}.panel{border:1px solid #43245b;border-radius:20px}.step{background:#241333}#faq .faq-item button{color:#f7f1ff!important}#faq .faq-item p{color:#cbbbd8}#faq .faq-item button:focus-visible{outline-color:#d39aff!important}
@media(max-width:560px){.page-head{padding:26px 18px}.title-line h1{font-size:32px}.detail-gallery{grid-template-columns:1fr;grid-template-rows:300px}.detail-gallery img:first-child{display:block}.detail-gallery img:nth-child(n+2){display:none}}

/* Cross-family production mobile guard: preserve each visual family while
   preventing later family layers from overriding the base responsive header. */
.faq-item button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
@media(max-width:900px){
html,body{max-width:100%;overflow-x:clip}
.header-row{width:100%!important;min-height:auto!important;grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr)!important;gap:10px!important;padding:10px!important}
.brand{min-width:0!important}.brand img{width:min(180px,100%)!important;max-height:72px!important;object-fit:contain!important;object-position:left center!important}
.top-search{width:100%!important;min-width:0!important;max-width:100%!important}.top-search input{width:100%!important;min-width:0!important}
.nav{grid-column:1/-1!important;width:100%!important;max-width:100%!important;display:flex!important;overflow-x:auto!important;justify-content:flex-start!important;gap:16px!important;padding:8px 0 10px!important;white-space:nowrap!important;overscroll-behavior-inline:contain}
.nav a{flex:0 0 auto!important}
.hero-panel,.finder,.page-head,.title-line,.detail-layout,.search-shell{max-width:100%!important;min-width:0!important}
}
@media(max-width:560px){
.header-row{grid-template-columns:minmax(100px,.78fr) minmax(0,1.22fr)!important;padding:9px 10px!important}
.brand img{max-height:56px!important}.top-search{height:40px!important}.nav{gap:14px!important;font-size:12px!important}
}
@media(max-width:560px){.hero-panel{display:grid;grid-template-columns:minmax(0,1fr);padding:26px 18px;gap:22px}.hero-copy{order:2;width:100%;min-width:0}.hero-copy h1{font-size:32px}.hero-art{order:1;width:100%;max-width:300px;height:280px;justify-self:center}}

/* Per-platform approved-pool presentation tokens. */
:root{--pool-layout-token:53ba98ecacc55e0d;--platform-image-radius:23px;--platform-card-gap:16px}
.card-photo,.detail-gallery img,.hero-art img{border-radius:var(--platform-image-radius)}
.shop-grid{gap:var(--platform-card-gap)}

/* TNT mobile detail cascade guard v1 (2026-09-29): this final cascade layer deliberately follows every source-family
   override. It preserves the desktop design while preventing a two-column
   profile from compressing Korean copy into one-character vertical strips. */
@media(max-width:900px){
  .detail-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
  .detail-layout>*{width:100%!important;max-width:100%!important;min-width:0!important}
  .profile-summary{position:static!important;top:auto!important}
}
@media(max-width:560px){
  .fact-list div{grid-template-columns:minmax(78px,92px) minmax(0,1fr)!important;gap:12px!important}
  .course-table{table-layout:auto!important}
  .course-table th,.course-table td{word-break:keep-all!important;overflow-wrap:normal!important}
}
