/* National Day screening: isolated from the frozen storefront release. */
.holiday-top-banner,.holiday-vote-home,.holiday-vote-page-header,.holiday-vote-hero,.holiday-vote-catalog{box-sizing:border-box}
.holiday-top-banner{display:flex;align-items:center;gap:24px;margin-top:26px;margin-bottom:28px;padding:23px 28px;border-radius:26px;color:#fff;background:linear-gradient(112deg,#a91d24 0%,#c93731 58%,#e96039 100%);box-shadow:0 16px 35px rgba(153,37,32,.16);overflow:hidden;position:relative}
.holiday-top-banner:after{content:'✦';position:absolute;right:205px;top:-55px;font-size:170px;line-height:1;color:#ffffff14;pointer-events:none}
.holiday-banner-icon{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:18px;background:#ffffff29;color:#ffe4a3;font-size:31px}
.holiday-banner-copy{min-width:0;flex:1;position:relative;z-index:1}
.holiday-banner-copy>span{display:block;margin-bottom:5px;font-size:12px;font-weight:800;letter-spacing:.12em;color:#ffe6bb}
.holiday-banner-copy h2{margin:0 0 5px;font-size:clamp(20px,2.5vw,29px);line-height:1.25;color:#fff}
.holiday-banner-copy p{margin:0 0 5px;font-size:15px;font-weight:650;color:#fff9}
.holiday-coser-link{color:#fff!important;font-weight:800;text-decoration:underline!important;text-decoration-color:#ffe4a3!important;text-underline-offset:3px}
.holiday-coser-link:hover,.holiday-coser-link:focus-visible{color:#ffe4a3!important;text-decoration-color:#fff!important}
.holiday-banner-copy .holiday-protection-line{display:inline-block;max-width:100%;margin:5px 0 0;padding:6px 10px;border:1px solid #ffffff45;border-radius:10px;background:#ffffff1c;color:#fff;font-size:12px;font-weight:650;line-height:1.5}
.holiday-banner-copy small{font-size:11px;color:#ffdbc9}
.holiday-banner-dot{padding:0 8px;color:#ffdda7}
.holiday-banner-link,.holiday-primary-link{display:inline-flex;align-items:center;justify-content:center;gap:14px;flex:none;min-height:44px;padding:0 18px;border-radius:14px;background:#fff;color:#ad2527!important;font-size:14px;font-weight:800;text-decoration:none!important;position:relative;z-index:1;transition:transform .18s,box-shadow .18s}
.holiday-banner-link:hover,.holiday-primary-link:hover{transform:translateY(-2px);box-shadow:0 8px 18px #6f171b33}
#holiday-preview-toggle{display:block;margin-top:8px;padding:4px 9px;border:1px solid #ffffff77;border-radius:8px;background:#ffffff20;color:white;font-size:11px;cursor:pointer}
.holiday-vote-home{margin-top:0;margin-bottom:29px;padding:25px;border:1px solid #e8dbd9;border-radius:25px;background:linear-gradient(140deg,#fffaf6 0%,#fff 65%);box-shadow:0 9px 26px #af56500c}
.holiday-vote-home-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}
.holiday-eyebrow{font-size:11px;font-weight:850;letter-spacing:.15em;color:#d75541}
.holiday-vote-home h2,.holiday-vote-catalog h2{margin:5px 0 7px;color:#202234;font-size:clamp(23px,2.4vw,31px);line-height:1.2}
.holiday-vote-home-head p{margin:0;color:#777e91;font-size:14px;line-height:1.6}
.holiday-primary-link{background:#db4936;color:#fff!important;box-shadow:0 7px 17px #d1483630}
.holiday-vote-home-body{display:grid;grid-template-columns:minmax(230px,.85fr) minmax(0,1.6fr);gap:20px}
.holiday-vote-calendar,.holiday-rankings{min-width:0;padding:18px;border:1px solid #f1e6e3;border-radius:18px;background:#fff}
.holiday-vote-calendar-kicker{display:block;margin-bottom:16px;color:#9d5550;font-size:12px;font-weight:750;letter-spacing:.06em}
.holiday-day-dots{display:flex;flex-wrap:wrap;gap:7px}
.holiday-day-dots span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#fff1ea;color:#c24f3b;font-size:12px;font-weight:750}
.holiday-day-dots span.is-past{background:#d8eadf;color:#488463}
.holiday-vote-calendar p{margin:16px 0 0;color:#72798b;font-size:13px}
.holiday-winner{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:16px;padding:10px;border-radius:12px;background:#fff6e5;color:#8b5734;font-size:12px}
.holiday-winner strong{color:#3e3541}
.holiday-winner-symbol{color:#d28b22}
.holiday-winner-free{margin-left:auto;padding:3px 7px;border-radius:6px;background:#ffe5bc;color:#865215;font-weight:800}
.holiday-ranking-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px;color:#282536;font-size:14px}
.holiday-ranking-title span{color:#9da3b1;font-size:12px}
.holiday-rank{display:grid;grid-template-columns:25px 66px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;border-top:1px solid #f4eae7}
.holiday-rank-number{color:#d35b43;font-size:12px;font-weight:850}
.holiday-rank img{width:66px;height:45px;object-fit:cover;border-radius:9px;background:#f4f3f4}
.holiday-rank-copy{min-width:0}
.holiday-rank-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#282536;font-size:13px}
.holiday-rank-copy small{display:block;margin-top:3px;color:#8b91a0;font-size:11px}
.holiday-vote-button{border:0;border-radius:9px;background:#fff0ec;color:#c94636;font-size:12px;font-weight:800;padding:8px 11px;cursor:pointer}
.holiday-vote-button:hover{background:#fbded6}
.holiday-vote-button.is-chosen{background:#e9f2e9;color:#367b52}
.holiday-vote-button:disabled{opacity:.55;cursor:default}
.holiday-empty{padding:20px;color:#8b91a0;text-align:center;font-size:14px}
#holiday-vote-page{min-height:100vh;padding-bottom:70px;background:#f8f8fc;color:#252739;font-family:inherit}
html[data-holiday-vote-page=true] #root{display:none!important}
.holiday-vote-page-header{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px;padding:0 max(24px,calc((100vw - 1180px)/2));border-bottom:1px solid #e9eaf0;background:#fff}
.holiday-vote-page-header a{color:#ba4337;text-decoration:none;font-weight:700}
.holiday-vote-page-header strong{font-size:18px}
.holiday-vote-page-header>span{color:#9b9eaa;font-size:12px}
.holiday-vote-hero,.holiday-vote-catalog{width:min(1180px,calc(100% - 48px));margin:24px auto 0;padding:27px;border:1px solid #ece8ea;border-radius:24px;background:#fff}
.holiday-vote-hero{background:linear-gradient(120deg,#fff5ef,#fff 73%)}
.holiday-vote-hero h1{margin:7px 0;color:#242235;font-size:clamp(28px,3.7vw,40px)}
.holiday-vote-hero>p{margin:0;color:#777e91;line-height:1.7}
.holiday-result-list{margin-top:22px;padding-top:18px;border-top:1px solid #f1e5e0}
.holiday-result-list>strong{font-size:14px}
.holiday-result-list>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}
.holiday-result-list span{padding:7px 10px;border-radius:8px;background:#f8ebeb;color:#844c45;font-size:12px}
.holiday-vote-catalog-heading{display:flex;justify-content:space-between;align-items:end;gap:15px}
.holiday-vote-catalog-heading>span{color:#9da2b0;font-size:13px}
.holiday-vote-toolbar{display:flex;gap:10px;margin:20px 0}
.holiday-vote-toolbar input,.holiday-vote-toolbar select{min-height:44px;padding:0 13px;border:1px solid #e2e4ec;border-radius:11px;background:#fafbff;color:#343747;font:inherit;outline:none}
.holiday-vote-toolbar input{flex:1;min-width:0}
.holiday-vote-toolbar select{max-width:240px}
.holiday-vote-toolbar input:focus,.holiday-vote-toolbar select:focus{border-color:#d65a4b;box-shadow:0 0 0 3px #d65a4b1f}
.holiday-vote-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
.holiday-vote-card{display:flex;flex-direction:column;min-width:0;padding:9px;border:1px solid #e9eaf0;border-radius:17px;background:#fff;text-align:left;cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}
.holiday-vote-card:hover{transform:translateY(-3px);border-color:#e1aa9d;box-shadow:0 9px 22px #a8695a16}
.holiday-vote-card.is-chosen{border-color:#df715f;background:#fffaf8}
.holiday-vote-card-image{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:11px;background:#edf0f5}
.holiday-vote-card-image img{width:100%;height:100%;object-fit:cover}
.holiday-vote-card-image>span{position:absolute;right:8px;bottom:8px;padding:6px 10px;border-radius:8px;background:#c74336;color:#fff;font-size:11px;font-weight:800}
.holiday-vote-card strong{display:block;min-height:36px;margin:11px 3px 4px;overflow:hidden;color:#282938;font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.holiday-vote-card small{display:flex;justify-content:space-between;gap:5px;margin:0 3px 3px;color:#9296a4;font-size:11px}
.holiday-vote-pages{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:25px;color:#808497;font-size:13px}
.holiday-vote-pages button{width:38px;height:34px;border:1px solid #e5e7ee;border-radius:10px;background:#fff;color:#b64a3d;cursor:pointer}
.holiday-vote-pages button:disabled{opacity:.4;cursor:default}
#holiday-toast{position:fixed;z-index:100000;left:50%;bottom:28px;max-width:min(90vw,480px);padding:12px 18px;border-radius:12px;background:#252639;color:#fff;box-shadow:0 9px 25px #1f203c4d;font-size:14px;text-align:center;transform:translate(-50%,15px);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
#holiday-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.holiday-admin-preview{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:14px 18px;border:1px solid #e7d8d6;border-radius:14px;background:#fff8f5}
.holiday-admin-preview>div{display:flex;flex-direction:column;gap:3px}
.holiday-admin-preview strong{color:#923c33;font-size:13px}
.holiday-admin-preview span{color:#7f858f;font-size:12px}
.holiday-admin-preview button{flex:none;padding:8px 12px;border:1px solid #daaa9f;border-radius:9px;background:#fff;color:#ac4a3d;font-size:12px;font-weight:700;cursor:pointer}
.holiday-admin-preview button:hover{background:#ffede9}
.diamond-unlock.holiday-price-button s,.button-diamond.holiday-price-button s,.detail-cover-tag.holiday-price-tag s{margin-right:3px;color:#a9a08a;font-size:.9em;text-decoration:line-through;text-decoration-thickness:1px}
@media(max-width:900px){.holiday-vote-home-body{grid-template-columns:1fr}.holiday-vote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.holiday-admin-preview{align-items:flex-start;flex-direction:column}.holiday-top-banner{gap:12px;margin-top:17px;margin-bottom:20px;padding:17px;border-radius:19px;align-items:flex-start;flex-wrap:wrap}.holiday-banner-icon{width:39px;height:39px;border-radius:12px;font-size:24px}.holiday-banner-copy{flex-basis:calc(100% - 55px)}.holiday-banner-copy h2{font-size:20px}.holiday-banner-copy p{font-size:13px;line-height:1.5}.holiday-banner-dot{padding:0 3px}.holiday-banner-link{width:100%;min-height:38px}.holiday-vote-home{padding:17px;border-radius:19px}.holiday-vote-home-head{align-items:flex-start;flex-wrap:wrap}.holiday-primary-link{min-height:39px}.holiday-vote-calendar,.holiday-rankings{padding:13px}.holiday-rank{grid-template-columns:20px 52px minmax(0,1fr) auto;gap:7px}.holiday-rank img{width:52px;height:42px}.holiday-vote-button{padding:7px 8px}.holiday-vote-page-header{padding:0 16px;min-height:62px}.holiday-vote-page-header>span{display:none}.holiday-vote-page-header strong{font-size:15px}.holiday-vote-hero,.holiday-vote-catalog{width:calc(100% - 24px);padding:17px;margin-top:13px;border-radius:18px}.holiday-vote-toolbar{flex-direction:column}.holiday-vote-toolbar select{max-width:none}.holiday-vote-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.holiday-vote-card{padding:6px}.holiday-vote-card small{flex-wrap:wrap}}
