:root{--atlas-primary:#df6f93;--atlas-primary-light:#efa6b8;--atlas-primary-mid:#e786a4;--atlas-title:#6d4f53;--atlas-text:#655b64;--atlas-muted:#948b94;--atlas-line:rgba(217,120,143,.14)}
.atlas-page,.atlas-page *{box-sizing:border-box}
.atlas-page{min-height:100svh;margin:0;color:var(--atlas-text);background:transparent;font-family:system-ui,sans-serif}.atlas-shell{width:min(760px,calc(100% - 24px));min-height:100svh;margin:auto;padding:0 0 calc(92px + env(safe-area-inset-bottom))}.dream-back-pill{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border:1px solid rgba(217,120,143,.18);border-radius:999px;color:var(--dream-muted);background:rgba(255,253,251,.72);font:500 12px/1 system-ui,sans-serif;text-decoration:none;transition:background .18s ease,border-color .18s ease}.dream-back-pill:active{background:rgba(239,166,184,.12)}.dream-back-pill:focus-visible{outline:2px solid rgba(223,111,147,.28);outline-offset:2px}.atlas-module-topbar{display:flex;justify-content:flex-start;align-items:center;min-height:58px;padding-top:max(10px,env(safe-area-inset-top))}.atlas-module-heading{display:flex;align-items:center;gap:14px;margin:10px 0 20px}.atlas-module-heading h1{margin:0;color:var(--atlas-title);font:700 24px/1.3 system-ui,sans-serif}.atlas-module-heading p{margin:4px 0 0;color:var(--atlas-muted);font-size:12px}.atlas-module-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:var(--atlas-primary);background:rgba(255,253,251,.72);font-size:24px}.atlas-module-icon.is-large{width:58px;height:58px;font-size:30px}.atlas-state-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border:1px solid var(--atlas-line);border-radius:999px;background:rgba(255,253,251,.62)}.atlas-state-tabs button{min-height:36px;border:0;border-radius:999px;color:var(--atlas-text);background:transparent;font:500 12px system-ui,sans-serif}.atlas-state-tabs button.is-active{color:#fff;background:linear-gradient(135deg,var(--atlas-primary-light),var(--atlas-primary-mid))}.atlas-search{display:block;margin-top:12px}.atlas-search input{width:100%;min-height:48px;padding:0 18px;border:1px solid rgba(188,156,153,.28);border-radius:26px;color:var(--atlas-text);background:rgba(255,253,251,.92);font:400 14px system-ui,sans-serif;outline:none}.atlas-search input:focus{border-color:rgba(223,111,147,.42);box-shadow:0 0 0 3px rgba(223,111,147,.08)}.atlas-filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.atlas-filter-row button{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 14px;border:1px solid var(--atlas-line);border-radius:22px;color:var(--atlas-text);background:rgba(255,253,251,.72);font-size:12px}.atlas-filter-row i{font-style:normal;color:var(--atlas-muted)}.atlas-result-count{margin:16px 2px 0;color:var(--atlas-muted);font-size:12px}.atlas-result-count strong{color:var(--atlas-title);font-weight:700}.atlas-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px;margin-top:12px}.atlas-card{position:relative;min-width:0;padding:6px 6px 10px;border:1px solid var(--atlas-line);border-radius:16px;background:rgba(255,253,251,.76)}.atlas-card[hidden]{display:none}.atlas-card-image{aspect-ratio:1;overflow:hidden;border-radius:12px;background:rgba(245,238,232,.7)}[data-atlas-module="official-cards"] .atlas-card-image{aspect-ratio:3/4}[data-atlas-module="lights"] .atlas-card-image img{object-fit:contain}.atlas-card-image img{width:100%;height:100%;object-fit:cover}.atlas-card-copy{display:grid;gap:3px;padding:8px 4px 0}.atlas-card-copy strong{overflow:hidden;color:var(--atlas-title);font-size:13px;white-space:nowrap;text-overflow:ellipsis}.atlas-card-copy small{overflow:hidden;color:var(--atlas-muted);font-size:11px;white-space:nowrap;text-overflow:ellipsis}.atlas-card-state{position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(223,111,147,.18);border-radius:50%;color:var(--atlas-primary);background:rgba(255,253,251,.92);font-size:16px}.atlas-card-state.is-active{color:#fff;border-color:transparent;background:var(--atlas-primary-mid)}.atlas-empty{margin-top:28px;padding:32px 20px;text-align:center;border:1px solid var(--atlas-line);border-radius:18px;background:rgba(255,253,251,.64)}.atlas-empty strong{color:var(--atlas-title);font-size:18px}.atlas-empty p{margin:8px 0 0;color:var(--atlas-muted);font-size:13px}.atlas-lucky-entry{display:grid;gap:6px;margin-top:18px;padding:16px;border:1px solid var(--atlas-line);border-radius:18px;background:rgba(255,253,251,.72)}.atlas-lucky-entry[hidden]{display:none}.atlas-lucky-entry strong{color:var(--atlas-title);font-size:16px}.atlas-lucky-entry small{color:var(--atlas-muted);font-size:12px}.atlas-lucky-entry button{justify-self:start;min-height:40px;padding:0 16px;border:0;border-radius:20px;color:#fff;background:linear-gradient(135deg,var(--atlas-primary-light),var(--atlas-primary-mid));font-weight:600}.atlas-lucky-entry span{color:var(--atlas-primary-dark);font-size:12px}.atlas-filter-sheet{width:min(430px,100%);margin:auto auto 0;padding:0;border:0;border-radius:26px 26px 0 0;background:#fffaf5}.atlas-filter-sheet::backdrop{background:rgba(70,54,58,.22)}.atlas-filter-sheet form{padding:18px}.atlas-filter-sheet header{display:flex;align-items:center;justify-content:space-between}.atlas-filter-sheet h2{margin:0;color:var(--atlas-title);font-size:18px}.atlas-filter-sheet header button{width:44px;height:44px;border:0;border-radius:50%;background:transparent;font-size:24px}.atlas-filter-sheet [data-filter-sheet-options]{display:grid;gap:8px;margin-top:14px}.atlas-filter-sheet [data-filter-sheet-options] button{min-height:44px;border:1px solid var(--atlas-line);border-radius:22px;background:#fff;color:var(--atlas-text)}.atlas-filter-sheet [data-filter-sheet-options] button.is-active{color:#fff;background:var(--atlas-primary-mid)}.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}@media(min-width:761px){.atlas-shell{width:min(760px,100%)}.atlas-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Compact atlas landing page. */
.dream-back-pill{min-height:36px;padding:0 14px;color:var(--dream-muted,var(--atlas-muted,#948b94));background:rgba(255,253,247,.58);font:500 13px/1 system-ui,sans-serif}
.atlas-home-page .atlas-shell{width:min(430px,calc(100% - 24px));padding:0 0 calc(74px + env(safe-area-inset-bottom))}
.atlas-home-topbar{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding-top:max(16px,env(safe-area-inset-top))}
.atlas-home-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;min-height:190px;margin:16px 0 10px;padding:20px 18px 18px;overflow:hidden;border:1px solid rgba(217,120,143,.16);border-radius:20px;background:linear-gradient(90deg,rgba(255,253,249,.84) 0%,rgba(255,253,249,.58) 54%,rgba(255,253,249,.14) 100%),url('https://img.allforjunming.com/img/atlas-home-background-v1.webp') center/cover no-repeat}
.atlas-home-hero::after{position:absolute;inset:0;content:"";pointer-events:none;background:linear-gradient(90deg,rgba(255,253,249,.18),transparent 68%)}
.atlas-home-hero::before{position:absolute;right:-29px;bottom:-34px;width:112px;height:78px;border-radius:54% 0 0 0;content:"";background:rgba(237,166,184,.13);transform:rotate(-9deg)}
.atlas-home-copy{position:relative;z-index:1;display:flex;width:calc(100% + 2px);min-width:0;min-height:146px;margin:0 auto;flex-direction:column;align-items:flex-start;justify-content:center;padding:20px 20px 19px;border:1px solid rgba(255,255,255,.62);border-radius:18px;background:rgba(255,255,255,.68);box-shadow:0 4px 10px rgba(94,68,61,.045);-webkit-backdrop-filter:none;backdrop-filter:none;text-align:left}
.atlas-home-kicker{display:block;margin-bottom:7px;color:#c48796;font-size:9px;font-weight:600;letter-spacing:.16em}
.dream-page .atlas-home-copy h1{margin:0;color:var(--atlas-title);font:750 25px/1.18 system-ui,sans-serif;letter-spacing:.01em;white-space:nowrap}
.atlas-home-copy p{margin:7px 0 0;color:var(--atlas-muted);font:400 11px/1.5 system-ui,sans-serif;white-space:nowrap}
.atlas-home-copy em{display:block;margin-top:13px;color:#e79d9d;font:italic 11px/1.2 system-ui,sans-serif;letter-spacing:.05em}
.atlas-home-page .atlas-module-list{display:grid;gap:7px}
.atlas-home-page .atlas-module-row{display:grid;grid-template-columns:36px minmax(0,1fr) 14px;gap:9px;align-items:center;min-height:56px;padding:7px 12px;border:1px solid var(--atlas-line);border-radius:15px;color:inherit;background:rgba(255,253,251,.62);text-decoration:none}
.atlas-home-page .atlas-module-icon{width:36px;height:36px;border-radius:12px;font-size:20px}
.atlas-module-icon img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.atlas-home-page .atlas-module-copy{min-width:0}
.atlas-home-page .atlas-module-copy strong{color:var(--atlas-title);font:650 15px/1.3 system-ui,sans-serif}
.atlas-home-page .atlas-module-chevron{color:var(--atlas-primary);font-size:20px;line-height:1}
@media(max-width:360px){.atlas-home-page .atlas-shell{padding-inline:0}.atlas-home-hero{padding-inline:12px}.atlas-home-copy h1{font-size:25px}.atlas-home-copy p{font-size:10px}}
.atlas-page{padding:0}
.atlas-module-title{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.atlas-title-decoration{display:inline-flex;align-items:center;min-height:26px;padding:4px 8px;border:1px dashed #eab4bd;border-radius:5px;color:#bf8194;font:700 9px/1 system-ui,sans-serif;letter-spacing:.12em;transform:rotate(-2deg)}

.atlas-quantity-dialog form{position:relative;padding:24px}
.atlas-quantity-close{position:absolute;top:10px;right:12px;width:34px;height:34px;border:0;border-radius:50%;color:var(--atlas-title);background:transparent;font-size:24px}
.atlas-quantity-dialog p{margin:0;color:var(--atlas-primary);font-size:10px;font-weight:700;letter-spacing:.16em}
.atlas-quantity-dialog h2{margin:6px 0 18px;color:var(--atlas-title);font-size:18px}
.atlas-quantity-dialog label{display:grid;gap:7px;color:var(--atlas-muted);font-size:12px}
.atlas-quantity-dialog input{width:100%;min-height:46px;padding:0 14px;border:1px solid rgba(188,156,153,.28);border-radius:23px;color:var(--atlas-title);background:#fff;font:600 16px system-ui,sans-serif;outline:none}
.atlas-quantity-dialog input:focus{border-color:rgba(223,111,147,.52);box-shadow:0 0 0 3px rgba(223,111,147,.1)}
.atlas-quantity-dialog small{display:block;margin-top:9px;color:var(--atlas-muted);font-size:11px}
.atlas-quantity-actions{display:flex;gap:8px;margin-top:20px}
.atlas-quantity-actions button{flex:1;min-height:40px;border:1px solid var(--atlas-line);border-radius:20px;color:var(--atlas-title);background:#fff;font:600 13px system-ui,sans-serif}
.atlas-quantity-actions button[type="submit"]{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--atlas-primary-light),var(--atlas-primary-mid))}

/* Module refinements: keep image cards vertical and controls visibly styled on mobile. */
.atlas-state-row{display:flex;align-items:center;gap:8px;margin-top:2px}
.atlas-state-row .atlas-state-tabs{flex:1;min-width:0}
.atlas-filter-select{position:relative;display:block;min-width:0}
.atlas-filter-select::after{position:absolute;right:14px;top:50%;content:"⌄";color:var(--atlas-muted);font-size:14px;line-height:1;pointer-events:none;transform:translateY(-55%)}
.atlas-filter-select select{display:block;width:100%;min-height:42px;padding:0 34px 0 14px;border:1px solid var(--atlas-line);border-radius:22px;color:var(--atlas-text);background:rgba(255,253,251,.72);font:400 12px/1 system-ui,sans-serif;appearance:none;outline:none}
.atlas-filter-select select:focus{border-color:rgba(223,111,147,.42);box-shadow:0 0 0 3px rgba(223,111,147,.08)}
.atlas-filter-row:has(.atlas-lucky-inline){grid-template-columns:minmax(0,1fr) minmax(132px,auto);align-items:center}
.atlas-filter-row .atlas-lucky-inline{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 12px;border:1px solid transparent;border-radius:22px;color:#fff;background:linear-gradient(135deg,var(--atlas-primary-light),var(--atlas-primary-mid));font:600 12px/1 system-ui,sans-serif;white-space:nowrap;cursor:pointer}
.atlas-filter-row .atlas-lucky-inline:disabled{opacity:.72;cursor:wait}
.atlas-lucky-inline-result{display:none;color:var(--atlas-primary);font-size:11px}.atlas-lucky-inline-result:not(:empty){display:inline}
.atlas-page[data-atlas-module="handwritten"] .atlas-card-image,.atlas-page[data-atlas-module="official-cards"] .atlas-card-image{aspect-ratio:3/4}
.atlas-page[data-atlas-module="handwritten"] .atlas-card-copy strong{display:none}
.atlas-page[data-atlas-module="handwritten"] .atlas-card-copy{padding-top:6px}
.atlas-card-image{display:block;width:100%;padding:0;border:0;text-align:left;cursor:pointer}
.atlas-card-image:has(.atlas-card-flip-inner){perspective:900px}
.atlas-card-flip-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .58s cubic-bezier(.2,.75,.25,1)}
.atlas-card[data-flipped="true"] .atlas-card-flip-inner{transform:rotateY(180deg)}
.atlas-card-face{position:absolute;inset:0;overflow:hidden;border-radius:12px;background:rgba(245,238,232,.7);backface-visibility:hidden;transition:opacity .18s ease,visibility 0s linear .18s}
.atlas-card-face-back{opacity:1;visibility:visible}
.atlas-card-face-front{opacity:0;visibility:hidden}
.atlas-card[data-flipped="true"] .atlas-card-face-back{opacity:0;visibility:hidden}
.atlas-card[data-flipped="true"] .atlas-card-face-front{opacity:1;visibility:visible;transition-delay:0s}
.atlas-card-face img{display:block;width:100%;height:100%;object-fit:cover}
.atlas-card-face.is-image-unavailable::after,.atlas-lucky-face.is-image-unavailable::after,.atlas-lucky-card.is-image-unavailable::after{position:absolute;inset:0;display:grid;place-items:center;padding:14px;color:var(--atlas-primary);background:linear-gradient(135deg,rgba(255,253,251,.96),rgba(252,227,232,.92));font:700 12px/1.45 system-ui,sans-serif;text-align:center;content:attr(data-missing-label)}
.atlas-card-face.is-image-unavailable img,.atlas-lucky-face.is-image-unavailable img,.atlas-lucky-card.is-image-unavailable img{opacity:.12}
.atlas-card-face-front{transform:rotateY(180deg)}
.atlas-page .atlas-card-actions{display:flex;align-items:center;gap:5px;padding:8px 4px 0}
.atlas-page .atlas-card-action,.atlas-page .atlas-card-quantity{appearance:none;-webkit-appearance:none;min-height:30px;padding:0 8px;border:1px solid rgba(223,111,147,.28);border-radius:999px;color:var(--atlas-primary);background:rgba(255,253,251,.94);font:600 11px/1 system-ui,sans-serif;cursor:pointer;text-align:center;white-space:nowrap}
.atlas-page .atlas-card-action{flex:1;min-width:0}
.atlas-page .atlas-card-action.is-active{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--atlas-primary-light),var(--atlas-primary-mid))}
.atlas-page .atlas-card-quantity{flex:0 0 auto;padding-inline:7px;color:var(--atlas-title);background:rgba(239,166,184,.16)}
.atlas-page .atlas-card-quantity[hidden]{display:none}
.atlas-page .atlas-quantity-dialog{display:none;width:min(320px,calc(100% - 32px));margin:auto;padding:0;border:1px solid rgba(217,120,143,.28);border-radius:24px;background:#fffaf5;color:var(--atlas-text);box-shadow:0 18px 50px rgba(109,79,83,.18)}
.atlas-page .atlas-quantity-dialog[open]{display:block}
.atlas-page .atlas-quantity-dialog::backdrop{background:rgba(70,54,58,.28);backdrop-filter:blur(3px)}
@media(max-width:380px){.atlas-filter-row .atlas-lucky-inline{padding-inline:9px;font-size:11px}.atlas-state-row{gap:5px}}

.atlas-lucky-dialog{width:min(350px,calc(100% - 32px));margin:auto;padding:0;border:1px solid rgba(231,134,164,.34);border-radius:28px;background:rgba(255,250,245,.97);color:var(--atlas-text);box-shadow:0 20px 70px rgba(223,111,147,.28)}
.atlas-lucky-dialog::backdrop{background:rgba(65,46,53,.42);backdrop-filter:blur(5px)}
.atlas-lucky-panel{position:relative;display:grid;justify-items:center;padding:25px 22px 22px;text-align:center}
.atlas-lucky-close{position:absolute;top:10px;right:12px;width:34px;height:34px;border:0;border-radius:50%;color:var(--atlas-title);background:transparent;font-size:25px;cursor:pointer}
.atlas-lucky-panel p{margin:0;color:var(--atlas-primary);font-size:10px;font-weight:700;letter-spacing:.18em}
.atlas-lucky-panel h2{margin:5px 0 13px;color:var(--atlas-title);font-size:21px}
.atlas-lucky-stage{display:grid;place-items:center;width:100%;min-height:280px;padding:8px}
.atlas-lucky-card{position:relative;overflow:hidden;width:min(190px,68vw);aspect-ratio:3/4;border:5px solid rgba(255,255,255,.8);border-radius:17px;background:#fff;box-shadow:0 0 0 1px rgba(231,134,164,.2),0 0 24px rgba(239,166,184,.32);filter:drop-shadow(0 0 16px rgba(231,134,164,.38)) drop-shadow(0 14px 20px rgba(157,84,108,.2))}
.atlas-lucky-card img{display:block;width:100%;height:100%;object-fit:cover}
.atlas-lucky-card[data-lucky-side="front"] img{animation:atlas-lucky-swap .18s ease both}
.atlas-lucky-face{position:absolute;inset:0;overflow:hidden;border:5px solid rgba(255,255,255,.8);border-radius:17px;background:#fff;backface-visibility:hidden;box-shadow:0 0 0 1px rgba(231,134,164,.2),0 0 24px rgba(239,166,184,.32)}
.atlas-lucky-face img{display:block;width:100%;height:100%;object-fit:cover}
.atlas-lucky-back{transform:rotateY(180deg)}
.atlas-lucky-stage.is-drawing .atlas-lucky-card{animation:atlas-lucky-draw .9s ease both}
@keyframes atlas-lucky-draw{0%{opacity:0;transform:translateY(25px) scale(.78) rotate(-5deg)}45%{opacity:1;transform:translateY(-8px) scale(1.04) rotate(3deg)}75%{transform:translateY(3px) scale(.98) rotate(-1deg)}100%{transform:translateY(0) scale(1) rotate(0)}}
@keyframes atlas-lucky-swap{0%{opacity:.35;transform:scale(.985)}100%{opacity:1;transform:scale(1)}}
.atlas-lucky-name{margin-top:5px;color:var(--atlas-title);font-size:15px}
.atlas-lucky-series{margin-top:3px;color:var(--atlas-muted);font-size:11px}
.atlas-lucky-flip{min-width:122px;min-height:38px;margin-top:15px;padding:0 16px;border:0;border-radius:20px;color:#fff;background:linear-gradient(135deg,var(--atlas-primary-light),var(--atlas-primary-mid));font:600 12px system-ui,sans-serif;cursor:pointer;box-shadow:0 6px 14px rgba(223,111,147,.2)}
.atlas-lucky-flip:disabled{opacity:.62;cursor:wait}

.atlas-lucky-close,
.atlas-quantity-close,
.atlas-filter-sheet header button{
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
