/* 바삭젤리단 연구실 · 페이지 레이아웃 및 실제 사진 카드 */
:root{--ink:#30293f;--pink:#c77a82;--cream:#fbf8f4}
body{background:radial-gradient(circle at 78% 2%,#fff2e8 0%,#fbf8f4 45%)}
.brand-mark,.mobile-mark{transform:none;background:#ffe0b2;font-size:24px}
.brand-mark span{transform:none}.side-label{letter-spacing:1.5px}
#page-home.active{display:flex;justify-content:center;align-items:center;min-height:min(80vh,780px)}
.lab-landing{text-align:center;width:100%;max-width:1040px;margin:auto;padding:36px 6px 32px;position:relative}
.landing-ornament{font-size:31px;color:#d8afad;opacity:.55;letter-spacing:34px;margin-bottom:6px}
.landing-ornament span{color:#f0b95e}
.lab-kicker{display:block;margin:10px 0;color:#a48a91;font-weight:800;letter-spacing:2.2px;font-size:10px}
.lab-seal{width:78px;height:78px;margin:13px auto 13px;border-radius:26px;display:grid;place-content:center;font-size:45px;transform:rotate(-8deg);background:linear-gradient(135deg,#fff1dc,#edb69c);box-shadow:inset 0 0 0 2px #fff8ed,0 10px 35px #a96d5b26}
.lab-landing h1{font-weight:950;font-size:clamp(35px,5.4vw,66px);line-height:1.2;letter-spacing:-3px;margin:0}
.lab-landing h1 em{font-style:normal;color:#c17f6d}
.lab-landing>p{color:#81747e;font-size:14px;line-height:1.85;margin:17px 0 27px}
.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;text-align:left;margin:0 auto;max-width:1000px}
.mode-card{border:1px solid #e8dcd9;border-radius:23px;background:#fff;min-height:260px;padding:24px 22px 20px;text-align:left;position:relative;display:flex;flex-direction:column;box-shadow:0 12px 36px #3c284014;color:var(--ink);transition:transform .2s ease,box-shadow .2s ease,border .2s ease;overflow:hidden}
.mode-card:before{content:'';position:absolute;width:175px;height:175px;right:-65px;top:-73px;background:#f5e8ef;border-radius:50%}
.mode-card:hover,.mode-card:focus-visible{transform:translateY(-5px);box-shadow:0 20px 42px #4b374024;border-color:#d2aca7}
.mode-card .mode-art{font-size:53px;margin-bottom:14px;position:relative;z-index:1}
.mode-label{font-size:10px;font-weight:850;letter-spacing:1.4px;color:#b37e78}
.mode-card strong{font-size:26px;letter-spacing:-1px;margin:9px 0 5px}
.mode-card small{color:#8a8190;font-size:12px}
.mode-link{margin-top:auto;padding-top:23px;font-size:12px;font-weight:900;color:#b86966}
.arena-mode{background:linear-gradient(155deg,#fff8f5,#fff 75%)}.arena-mode:before{background:#f9e1df}
.dungeon-mode{background:linear-gradient(155deg,#f9f9ff,#fff 75%)}.dungeon-mode:before{background:#e7e7fa}
.dimension-mode{background:linear-gradient(155deg,#f7f4ff,#fff 75%)}.dimension-mode:before{background:#e8e0f6}
.lab-landing .landing-note{margin:28px 0 0;font-size:11px;color:#a7a0a6}
.dungeon-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dungeon-choice{display:flex;align-items:center;gap:20px;min-height:127px;text-align:left;border:1px solid #e9e1e0;border-radius:18px;padding:20px 22px;background:#fff;box-shadow:var(--shadow);color:#302b3f;transition:.2s ease}
.dungeon-choice:hover{transform:translateY(-3px);border-color:#cfa7a1}
.dungeon-symbol{flex-shrink:0;width:75px;height:75px;border-radius:20px;background:#eff4ff;display:grid;place-items:center;font-size:35px}
.dungeon-choice.gold .dungeon-symbol{background:#fff1d9}.dungeon-choice.pink .dungeon-symbol{background:#ffe9ec}.dungeon-choice.purple .dungeon-symbol{background:#f2eaff}.dungeon-choice.teal .dungeon-symbol{background:#e5f7f5}
.dungeon-text{display:flex;flex-direction:column;gap:7px}.dungeon-text small{font-size:9px;font-weight:900;color:#b3a0a7;letter-spacing:1px}.dungeon-text strong{font-size:21px;letter-spacing:-1px}.dungeon-text em{font-style:normal;font-size:11px;color:#8a8088}.dungeon-end{margin-left:auto;font-size:11px;font-weight:850;color:#ba7971;white-space:nowrap;align-self:flex-end}
.crumb-back{border:0;background:#fff;padding:10px 15px;border-radius:10px;color:#8e7277;font-size:12px;font-weight:800;border:1px solid var(--line);margin-bottom:22px}
.dimension-intro{display:flex;align-items:center;gap:15px;border-radius:15px;background:#f3eef9;padding:17px 21px;margin-bottom:24px;color:#524663}.dimension-intro>span{font-size:34px}.dimension-intro strong,.dimension-intro small{display:block}.dimension-intro strong{font-size:14px}.dimension-intro small{font-size:11px;margin-top:6px;color:#8d839a}
.stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.stage-card{display:flex;align-items:stretch;min-height:200px;width:100%;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;text-align:left;box-shadow:var(--shadow);position:relative;transition:.2s ease}
.stage-card:hover{transform:translateY(-3px);box-shadow:0 20px 38px #44304719}
.boss-photo{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 40% 38%,#605675,#29253e 80%);min-width:155px;min-height:178px;width:38%;align-self:stretch}
.boss-photo img{position:absolute;z-index:2;width:100%;height:100%;object-fit:contain;inset:0;padding:10px}.boss-silhouette{font-size:65px;color:#c5a8c9;filter:drop-shadow(0 10px 18px #100b1b56);opacity:.7}
.stage-card-copy{padding:22px 18px;flex:1;min-width:0}.stage-card-copy h3{font-size:23px;letter-spacing:-1px;margin:10px 0 3px}.stage-card-copy p{font-size:13px;font-weight:800;color:#63516d}.stage-card-copy span:last-child{font-size:11px;color:#a19aa5}.stage-arrow{position:absolute;top:18px;right:15px;font-size:19px;color:#a48b9b}
.stage-hero{min-height:235px;display:flex;overflow:hidden;border-radius:20px;background:linear-gradient(100deg,#27273c,#574366);color:white;margin:0 0 24px}.stage-hero .boss-photo{width:38%;min-width:180px}.stage-hero-copy{padding:35px 28px;align-self:center}.stage-hero-copy h1{font-size:clamp(28px,4vw,46px);margin:10px 0}.stage-hero-copy p{font-size:20px;font-weight:850}.stage-hero-copy>span:last-child{color:#e5cfdf;font-size:12px}
.power-box{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;margin:18px 0 32px}.power-head{display:flex;justify-content:space-between;align-items:center;padding:16px 19px;border-bottom:1px solid var(--line)}.power-head b{font-size:14px}.power-head small{color:#a6a0aa;font-size:10px}.power-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}.power-table th{background:#f8f5f3;color:#74697a;font-size:11px;padding:13px 20px}.power-table td{border-top:1px solid var(--line);padding:15px 20px}.power-table td b{color:#b26760}.power-placeholder{margin:0;color:#9a909b;font-size:12px;padding:21px}
.card-team{display:flex;margin-top:-35px;position:relative;z-index:2;margin-bottom:11px;gap:5px}.card-team .mini-avatar{width:41px;height:41px;min-width:41px;border:2px solid white;border-radius:11px;box-shadow:0 3px 7px #4e303019}.unit-avatar{display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#fff4e1,#f3d8dc);overflow:hidden;position:relative;isolation:isolate;aspect-ratio:1/1;color:#a77876}
.unit-avatar>span{font-size:25px}.unit-avatar img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1}
.formation-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.formation-grid.pet-formation{grid-template-columns:repeat(3,minmax(0,1fr))}.formation-grid.perk-formation{grid-template-columns:repeat(2,minmax(0,1fr))}
.unit-tile{text-align:center;position:relative;min-width:0;border:1px solid #ede5e3;border-radius:13px;background:#fffcfa;padding:7px 5px 10px}
.unit-tile .unit-avatar{margin:0 auto 7px;max-width:95px;width:100%;border-radius:11px}.unit-tile .unit-name{display:block;font-size:10px;font-weight:850;line-height:1.45;word-break:keep-all;overflow-wrap:anywhere;min-height:29px}
.unit-tile.empty-unit{opacity:.4}.captain-flag{position:absolute;top:6px;left:6px;border-radius:5px;background:#362d48;color:#fff;padding:3px 5px;font-size:9px;font-weight:800}
.detail-boss{display:flex;align-items:center;gap:15px;font-size:17px}.detail-boss .boss-photo{min-width:130px;width:165px;min-height:120px;height:120px;border-radius:12px}.detail-boss .boss-silhouette{font-size:40px}
.picker-chip{display:flex;align-items:center;gap:7px;min-height:43px;text-align:left}.picker-chip span{flex:1}.picker-chip .micro-avatar{min-width:27px;width:27px;height:27px;border-radius:7px}.picker-chip .micro-avatar>span{font-size:15px}
.selected-chip{display:flex;align-items:center;gap:6px;padding:5px 8px 5px 4px}.selected-chip .micro-avatar{width:28px;min-width:28px;height:28px;border-radius:6px}.selected-chip .micro-avatar>span{font-size:13px}
#edit-dimension-wrap{display:grid;gap:13px;margin-top:14px}.editor-form #edit-dimension-wrap.hidden{display:none!important}.asset-studio{margin:24px 0}.asset-studio p{font-size:12px;color:#837781;line-height:1.7}.asset-studio label{display:grid;gap:8px;font-size:12px;font-weight:750}.asset-studio select,.asset-studio input{border:1px solid #ded8d6;padding:11px;border-radius:9px;width:100%;min-width:0;background:#fff}.asset-studio .form-grid{margin:14px 0}.asset-preview-row{display:flex;gap:15px;align-items:center}.asset-preview-row>.unit-avatar{width:75px;height:75px}.asset-preview-row>#asset-preview{width:75px;height:75px;flex-shrink:0}.asset-preview-row>#asset-preview>.unit-avatar{width:75px;height:75px}
@media(max-width:1060px){.mode-grid{gap:11px}.mode-card{padding:19px;min-height:245px}.mode-card strong{font-size:23px}.stage-grid{grid-template-columns:1fr}}
@media(max-width:780px){#page-home.active{min-height:calc(100dvh - 165px)}.lab-landing{padding:12px 0 26px}.lab-seal{width:67px;height:67px;font-size:37px}.lab-landing h1{letter-spacing:-1.8px}.lab-landing>p{font-size:12px}.mode-grid{gap:10px}.mode-card{min-height:185px;border-radius:16px;padding:14px 11px}.mode-art{font-size:32px!important;margin-bottom:10px!important}.mode-card strong{font-size:19px}.mode-card small{font-size:10px;line-height:1.5}.mode-label{font-size:8px}.mode-link{font-size:10px;padding-top:12px}.dungeon-choice-grid{grid-template-columns:1fr}.stage-card .boss-photo{min-width:130px}.formation-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.formation-grid.pet-formation{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:480px){.landing-ornament{font-size:19px;margin-bottom:6px}.lab-kicker{font-size:8px;letter-spacing:1.2px}.lab-landing h1{font-size:36px}.mode-grid{grid-template-columns:1fr;gap:11px;max-width:390px}.mode-card{min-height:110px;display:grid;grid-template-columns:65px 1fr auto;column-gap:12px;align-items:center;padding:15px 13px}.mode-card:before{width:110px;height:110px;right:-65px;top:-55px}.mode-card .mode-art{grid-row:1/5;grid-column:1;font-size:42px!important;margin:0!important}.mode-card .mode-label{grid-column:2;grid-row:1;font-size:8px}.mode-card strong{grid-column:2;grid-row:2;font-size:21px;margin:1px 0}.mode-card small{grid-column:2;grid-row:3;font-size:10px}.mode-card .mode-link{grid-column:3;grid-row:1/5;font-size:0;white-space:nowrap;padding:0}.mode-card .mode-link:after{content:'›';font-size:27px;color:#ae7579}.lab-landing>p{margin:12px 0 20px}.lab-landing .landing-note{margin-top:18px;font-size:10px}.dungeon-choice{padding:14px;min-height:101px;gap:11px}.dungeon-symbol{width:59px;height:59px;font-size:30px;border-radius:15px}.dungeon-text strong{font-size:18px}.dungeon-end{font-size:10px}.stage-card .boss-photo{min-width:125px;width:37%}.stage-card-copy{padding:18px 13px}.stage-card-copy h3{font-size:19px}.stage-hero .boss-photo{min-width:112px}.stage-hero-copy{padding:23px 18px}.stage-hero-copy h1{font-size:26px}.stage-hero-copy p{font-size:15px}.formation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.formation-grid.pet-formation{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.top-admin{display:flex;align-items:center;justify-content:center;width:33px;height:33px;margin-left:1px}}


.dimension-lookup{display:grid;gap:18px;padding:26px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(252,247,255,.92));box-shadow:0 18px 40px rgba(45,38,61,.08)}
.lookup-copy h2{margin:6px 0 8px;font-size:clamp(1.3rem,2vw,1.8rem)}
.lookup-copy p{margin:0;color:#6f6576;line-height:1.7}
.lookup-form{display:flex;flex-wrap:wrap;gap:14px;align-items:end}
.lookup-form label,.stage-search-inline label{display:grid;gap:8px;flex:1 1 220px;font-weight:700;color:#43384a}
.lookup-form input,.stage-search-inline input{height:54px;border:1px solid rgba(78,60,94,.15);border-radius:16px;padding:0 16px;font-size:1.02rem;background:#fff;color:#2d263d}
.lookup-meta{display:flex;flex-wrap:wrap;gap:10px;color:#8b7d8c;font-size:.93rem}
.lookup-meta span,.stage-chip-list b{padding:8px 12px;border-radius:999px;background:#f3eef7}
.stage-chip-list{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.stage-mini-chip{border:none;background:#fff;color:#55405e;padding:10px 14px;border-radius:999px;box-shadow:0 8px 18px rgba(45,38,61,.08);font-weight:700;cursor:pointer}
.stage-mini-chip:hover{transform:translateY(-1px)}
.stage-search-inline{display:flex;flex-wrap:wrap;gap:14px;align-items:end;margin:20px 0}
.stage-search-inline .btn{height:48px}
@media (max-width: 720px){.lookup-form,.stage-search-inline{flex-direction:column;align-items:stretch}.stage-chip-list{align-items:flex-start}}

.asset-bulk-studio textarea{width:100%;min-height:260px;border:1px solid rgba(78,60,94,.15);border-radius:18px;padding:14px 16px;background:#fff;color:#2d263d;line-height:1.5;resize:vertical}
.bulk-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 14px}
.asset-bulk-studio code{display:inline-block;padding:2px 8px;border-radius:999px;background:#f3eef7;color:#5f4c69;font-size:.9em}

/* 6-stage boss cycle shared-deck explanation */
.boss-repeat-note{border:1px solid #e4d9f0;border-radius:16px;padding:14px 17px;margin:18px 0;background:linear-gradient(90deg,#f9f5ff,#fff);font-size:.91rem;line-height:1.7;color:#5b4569}
.boss-repeat-note strong{color:#3e2c54}
.stage-chip-list{gap:8px}
.boss-mini-symbol{display:inline-block;margin-right:3px}
.stage-mini-chip{border:1px solid #eadfee;background:#fff}
#edit-dim-boss[readonly]{background:#f4f0fa;color:#5e4868;cursor:default}
