
/* Shared seasonal accents. Default intentionally has no theme overrides. */
.system-theme-greeting{width:min(calc(100% - 24px),720px);margin:10px auto 0;padding:9px 12px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--festival-line,#eadfd7);border-radius:14px;background:var(--festival-soft,#fff);color:var(--festival-accent,#176d36);font-size:12px;font-weight:700;text-align:center;line-height:1.4;overflow-wrap:anywhere}
.system-theme-greeting[hidden]{display:none!important}
.system-theme-settings{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:14px}
.system-theme-settings h3{margin:0 0 10px;font-size:14px}
html[data-system-theme="women_day"]{--festival-accent:#a93664;--festival-mid:#c3507a;--festival-bright:#ed9eb3;--festival-soft:#fff1f5;--festival-line:#efd0dc;--festival-bg:#fff8fb}
html[data-system-theme="christmas"]{--festival-accent:#185a43;--festival-mid:#267754;--festival-bright:#589d78;--festival-soft:#edf6f0;--festival-line:#cbded1;--festival-bg:#f7fbf8}
html[data-system-theme="tet"]{--festival-accent:#a72b27;--festival-mid:#c84a32;--festival-bright:#e8a147;--festival-soft:#fff4df;--festival-line:#edd5b0;--festival-bg:#fffbf3}
html[data-system-theme]:not([data-system-theme="default"]) body{
--matcha:var(--festival-mid)!important;--matcha2:var(--festival-accent)!important;--rose:var(--festival-mid)!important;--rose2:var(--festival-accent)!important;--line:var(--festival-line)!important;background:var(--festival-bg)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.hero,.admin-head,.points-hero){
background:linear-gradient(115deg,var(--festival-accent),var(--festival-mid) 65%,var(--festival-bright))!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.primary,.pos-quick-button,.chat-quick-button,.dashboard-stat.revenue-stat,.admin-bottom-nav a.active,.payment-choice button.selected,.option-pills button.selected,.period-tabs a.active,.report-summary>div,.messenger-compose>button,.messenger-row.mine .messenger-bubble){
background:linear-gradient(110deg,var(--festival-accent),var(--festival-mid))!important;color:#fff!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.admin-card,.admin-tool-panel,.order-card,.login-card,.pos-product,.pos-cart-panel,.member-admin-summary>div,.messenger-admin-layout,.admin-bottom-nav){
border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.tool-icon,.wallet-hero,.pos-row-right button,.messenger-attach,.order-privacy-toggle,.inline-order-items>a,.messenger-contact.active){
background:var(--festival-soft)!important;color:var(--festival-accent)!important;border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.order-privacy-heading,.back-link,.order-grand-total,.pos-total strong,.modal-price,.pos-product small){
color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) body .admin-head .back-link{color:#fff!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.category-tabs,.pos-category-tabs){background:var(--festival-bg)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.rank-bar i,.chart-track i,.chat-avatar){background:var(--festival-mid)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.field,.note-in):focus{border-color:var(--festival-accent)!important}
html[data-system-theme="christmas"] .system-theme-greeting{border-top:3px solid #a9343a}
html[data-system-theme="tet"] .system-theme-greeting{border-top:3px solid #dba63b}
@media print{.system-theme-greeting{display:none!important}html[data-system-theme] body{background:white!important}}

/* Illustrated seasonal covers */
html[data-system-theme="women_day"]{--festival-art-left:url("/static/festivals/roses-left.svg");--festival-art-right:url("/static/festivals/roses-right.svg");--festival-watermark:url("/static/festivals/roses-watermark.svg")}
html[data-system-theme="christmas"]{--festival-art-left:url("/static/festivals/christmas-left.svg");--festival-art-right:url("/static/festivals/christmas-right.svg");--festival-watermark:url("/static/festivals/christmas-watermark.svg")}
html[data-system-theme="tet"]{--festival-art-left:url("/static/festivals/tet-left.svg");--festival-art-right:url("/static/festivals/tet-right.svg");--festival-watermark:url("/static/festivals/tet-watermark.svg")}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting{
position:relative;isolation:isolate;min-height:164px;padding:20px 12px;gap:0;border-radius:22px;overflow:hidden;
background:radial-gradient(ellipse at 50% 0%,#ffffffd9,transparent 75%),var(--festival-soft);
box-shadow:0 8px 24px #44242e09}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::before,
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::after{
content:"";position:absolute;bottom:-4px;width:146px;height:164px;background-position:center bottom;background-repeat:no-repeat;background-size:contain;pointer-events:none;z-index:-1}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::before{left:3px;background-image:var(--festival-art-left)}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::after{right:3px;background-image:var(--festival-art-right)}
.festival-cover-copy{display:flex;flex-direction:column;align-items:center;gap:9px;max-width:calc(100% - 232px);min-width:0}
.festival-cover-copy [data-system-theme-text]{font-size:20px;font-weight:800;line-height:1.35;letter-spacing:-.025em}
.festival-cover-kicker{font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.festival-cover-subtitle{font-size:12px;font-weight:500;line-height:1.5;color:var(--festival-accent)}
html[data-system-theme="women_day"] .festival-cover-kicker::before{content:"20 · 10"}
html[data-system-theme="women_day"] .festival-cover-subtitle::before{content:"Gửi một chút ngọt ngào đến những người phụ nữ yêu thương"}
html[data-system-theme="christmas"] .festival-cover-kicker::before{content:"Merry Christmas"}
html[data-system-theme="christmas"] .festival-cover-subtitle::before{content:"Một mùa lễ ấm áp, một ly ngon bên người thương"}
html[data-system-theme="tet"] .festival-cover-kicker::before{content:"Mừng xuân"}
html[data-system-theme="tet"] .festival-cover-subtitle::before{content:"Đón xuân rộn ràng, trao nhau ngọt ngào và may mắn"}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.hero,.admin-head,.points-hero){
background:var(--festival-watermark) right -5px bottom -18px/160px 180px no-repeat,linear-gradient(115deg,var(--festival-accent),var(--festival-mid) 65%,var(--festival-bright))!important}
html[data-system-theme]:not([data-system-theme="default"]) body .section-head h2::after{
content:"";display:inline-block;width:28px;height:30px;margin-left:6px;vertical-align:middle;background:var(--festival-art-left) center/contain no-repeat;pointer-events:none}
@media(max-width:540px){
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting{min-height:156px;padding:15px 8px}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::before,
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::after{width:96px;height:136px;bottom:-6px}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::before{left:-11px}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::after{right:-11px}
.festival-cover-copy{max-width:calc(100% - 136px);gap:7px}
.festival-cover-copy [data-system-theme-text]{font-size:15px;line-height:1.4}
.festival-cover-subtitle{font-size:10px;line-height:1.45}
.festival-cover-kicker{font-size:9px;letter-spacing:.12em}
}
@media print{html[data-system-theme]:not([data-system-theme="default"]) body :is(.hero,.admin-head,.points-hero){background:white!important;color:black!important}.section-head h2::after{display:none!important}}

/* Full customer journey: seasonal surfaces and welcome screen. */
html[data-system-theme]:not([data-system-theme="default"]) body.customer-app{
background:radial-gradient(ellipse at 8% 0%,var(--festival-soft),transparent 58%),radial-gradient(ellipse at 95% 45%,var(--festival-soft),transparent 55%),var(--festival-bg)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app :is(.admin-return-link,.pwa-actions button,.icon-btn,.zalo-community-link,.back-to-top){
border-color:var(--festival-line)!important;color:var(--festival-accent)!important;background:#fff!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .home-head{
position:relative;padding:13px 8px;background:linear-gradient(120deg,#fff,var(--festival-soft));border:1px solid var(--festival-line);border-radius:22px;margin:4px 0 12px;box-shadow:0 5px 20px #44242e06}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .brand-lockup{position:relative;padding:7px 0}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .welcome{
border-radius:20px;background:linear-gradient(100deg,var(--festival-soft),#fff0);padding:14px 10px;margin:4px 0 10px}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .welcome-copy{color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .leaf-art{
flex:0 0 76px;width:76px;height:84px;font-size:0;background:var(--festival-art-left) center/contain no-repeat}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app :is(.search-box,.member-strip,.menu-image-note,.checkout,.cart-item,.account-tabs section,.account-panel,.product-card){
border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .search-box{box-shadow:0 5px 18px #44242e08}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .search-box:focus-within{outline:2px solid var(--festival-line);outline-offset:2px}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .shop-strip:not(.shop-closed){
background:var(--festival-soft)!important;color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app :is(.member-strip b,.product-price,.brand-script,.cart-name,.modal-price,.home-section-head h2){
color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .member-strip{
background:linear-gradient(100deg,#fff,var(--festival-soft))!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app :is(.home-ticker,.grid-add:not(:disabled),.cartbar,.add-cart-btn){
background:linear-gradient(110deg,var(--festival-accent),var(--festival-mid))!important;color:#fff!important;border-color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .cart-open{
background:#fff!important;color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .home-banner{
border:3px solid var(--festival-line)!important;box-shadow:0 8px 22px #44242e0c}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .home-banner::after{
content:"";position:absolute;top:2px;right:2px;width:48px;height:54px;background:var(--festival-art-right) center/contain no-repeat;pointer-events:none;z-index:4;filter:drop-shadow(0 2px 3px #ffffffc0)}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .quick-icon{
background:linear-gradient(140deg,#fff,var(--festival-soft))!important;border:2px solid var(--festival-line)!important;box-shadow:0 4px 12px #44242e08}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .quick-icon.best{background:var(--festival-soft)!important;color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .home-section-head{
padding:8px 10px;border-left:3px solid var(--festival-accent);border-radius:0 14px 14px 0;background:linear-gradient(90deg,var(--festival-soft),transparent)}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .home-section-head h2::after{
content:"";display:inline-block;width:22px;height:25px;vertical-align:middle;margin-left:5px;background:var(--festival-art-left) center/contain no-repeat;pointer-events:none}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .product-info{background:linear-gradient(180deg,#fff,var(--festival-soft));padding-bottom:5px}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .product-card{
background:var(--festival-soft)!important;box-shadow:0 5px 14px #44242e08}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app :is(.drawer-panel,.modal-panel,.pos-modal-card){
border:1px solid var(--festival-line);background:linear-gradient(180deg,var(--festival-soft),#fff 150px)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app :is(.qty button,.option-pills button,.payment-choice button,.modal-product-photo){
border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .qty button{background:var(--festival-soft)!important;color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .bottom-nav{
border-top:1px solid var(--festival-line)!important;background:linear-gradient(180deg,#fff,var(--festival-soft))!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .bottom-nav .active{
color:var(--festival-accent)!important;background:var(--festival-soft);border-radius:13px;box-shadow:inset 0 2px var(--festival-accent)}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .miu-splash{
background:radial-gradient(circle at 50% 42%,#fff 0%,var(--festival-soft) 58%,var(--festival-bg) 100%)!important;color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash::before,
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash::after{
content:"";position:absolute;pointer-events:none;width:min(42vw,220px);height:min(48vw,248px);background-position:center;background-repeat:no-repeat;background-size:contain;opacity:.9}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash::before{left:-12px;bottom:max(6%,35px);background-image:var(--festival-art-left)}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash::after{right:-14px;top:max(6%,35px);background-image:var(--festival-art-right)}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash .miu-splash-glow{
background:var(--festival-soft)!important;border:1px solid var(--festival-line);animation:none;filter:none}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash :is(img,.miu-splash-name,p,.festival-splash-copy){z-index:1}
.festival-splash-copy{display:none}
html[data-system-theme]:not([data-system-theme="default"]) .festival-splash-copy{display:flex;position:relative;flex-direction:column;gap:7px;text-align:center;max-width:80vw}
.festival-splash-title{font-size:19px;font-weight:800;line-height:1.4}
.festival-splash-note{font-size:12px;line-height:1.5;opacity:.85}
html[data-system-theme="women_day"] .festival-splash-title::before{content:"Tháng 10 ngọt ngào · 20/10"}
html[data-system-theme="women_day"] .festival-splash-note::before{content:"Dành tặng những người phụ nữ yêu thương"}
html[data-system-theme="christmas"] .festival-splash-title::before{content:"Merry Christmas"}
html[data-system-theme="christmas"] .festival-splash-note::before{content:"Giáng sinh ấm áp cùng Miu Bán Trà"}
html[data-system-theme="tet"] .festival-splash-title::before{content:"Miu chúc bạn năm mới an lành"}
html[data-system-theme="tet"] .festival-splash-note::before{content:"Đón xuân rộn ràng · Trao nhau ngọt ngào"}
@media(max-width:360px){
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .leaf-art{flex-basis:62px;width:62px;height:72px}
.festival-splash-title{font-size:17px}
}
@media print{html[data-system-theme]:not([data-system-theme="default"]) .customer-app .home-banner::after,html[data-system-theme]:not([data-system-theme="default"]) .customer-app .home-section-head h2::after{display:none}}

/* Teachers' Day and shared seasonal details throughout the app. */
html[data-system-theme="teachers_day"]{
--festival-accent:#70516c;--festival-mid:#916685;--festival-bright:#c8a6b5;--festival-soft:#f8f1f7;--festival-line:#e3d2de;--festival-bg:#fcf9f5;
--festival-art-left:url("/static/festivals/teachers-left.svg");--festival-art-right:url("/static/festivals/teachers-right.svg");--festival-watermark:url("/static/festivals/teachers-watermark.svg")}
html[data-system-theme="teachers_day"] .festival-cover-kicker::before{content:"20 · 11"}
html[data-system-theme="teachers_day"] .festival-cover-subtitle::before{content:"Một lời cảm ơn, ngàn điều tri ân thầy cô"}
html[data-system-theme="teachers_day"] .festival-splash-title::before{content:"Tri ân thầy cô · 20/11"}
html[data-system-theme="teachers_day"] .festival-splash-note::before{content:"Kính chúc thầy cô hạnh phúc và nhiều niềm vui"}
html[data-system-theme="women_day"]{--festival-pattern:url("/static/festivals/petals-pattern.svg")}
html[data-system-theme="christmas"]{--festival-pattern:url("/static/festivals/snow-pattern.svg")}
html[data-system-theme="tet"]{--festival-pattern:url("/static/festivals/packets-pattern.svg")}
html[data-system-theme="teachers_day"]{--festival-pattern:url("/static/festivals/petals-pattern.svg")}
html[data-system-theme]:not([data-system-theme="default"]) body,
html[data-system-theme]:not([data-system-theme="default"]) body.customer-app{
background:var(--festival-pattern) center top/320px 320px repeat,radial-gradient(ellipse at 8% 0%,var(--festival-soft),transparent 60%),var(--festival-bg)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.admin-card,.admin-tool-panel,.login-card,.account-card,.order-card,.success-card,.track-lookup-card,.order-track-card,.customer-chat-card,.report-card,.report-source-card,.manual-sale-card,.active-orders-card,.account-tabs section,.customer-payment-box,.receiver-saved-card){
background:var(--festival-watermark) right 6px top 7px/58px 66px no-repeat,linear-gradient(180deg,#fff,var(--festival-bg))!important;border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.dashboard-stat,.member-admin-summary>div,.wallet-admin-balance){
border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.account-menu-btn,.account-back,.account-closed-link,.customer-chat-prompts button,.chat-send-image,.saved-address-row,.member-address,.account-rule,.rank-bar,.inline-order,.report-source-card){
border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.panel,.product-panel,.product-edit-panel,.messenger-window,.messenger-thread,.chat-thread){
background:linear-gradient(180deg,var(--festival-soft),#fff 140px)!important;border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.panel-head,.track-head,.account-brand,.account-menu-btn,.member-head-wallet,.chat-customer,.chat-send,.inline-order-total,.track-total){
color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.chat-send,.points-add-btn,.add,.account-options .active,.account-menu-btn.active){
background:var(--festival-accent)!important;color:#fff!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.customer-chat-avatar,.points-preview,.points-use-box,.wallet-use-choice,.chat-pinned,.customer-chat-prompts button){
background:var(--festival-soft)!important;color:var(--festival-accent)!important;border-color:var(--festival-line)!important}
html[data-system-theme]:not([data-system-theme="default"]) body :is(.report-summary>div,.dashboard-stat.revenue-stat){
background:var(--festival-watermark) right bottom/76px 86px no-repeat,linear-gradient(110deg,var(--festival-accent),var(--festival-mid))!important;color:#fff!important}
html[data-system-theme="christmas"] body :is(.system-theme-greeting,.miu-splash){
background:var(--festival-pattern) center top/240px 240px repeat,radial-gradient(circle at center,#fff,var(--festival-soft))!important}
html[data-system-theme="tet"] body :is(.system-theme-greeting,.miu-splash){
background:var(--festival-pattern) center top/260px 260px repeat,radial-gradient(circle at center,#fff,var(--festival-soft))!important}
@media print{html[data-system-theme]:not([data-system-theme="default"]) body{background:#fff!important}html[data-system-theme]:not([data-system-theme="default"]) body.receipt-page .order-card{background:#fff!important}}

/* Compact layout and clean startup mark. */
body.admin-app>.system-theme-greeting{display:none!important}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting{min-height:92px;padding:12px 8px;border-radius:17px;margin-top:7px}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::before,
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::after{width:76px;height:88px;bottom:-4px}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::before{left:-8px}
html[data-system-theme]:not([data-system-theme="default"]) .system-theme-greeting::after{right:-8px}
.festival-cover-copy{max-width:calc(100% - 112px);gap:4px}
.festival-cover-copy [data-system-theme-text]{font-size:14px;line-height:1.35}
.festival-cover-kicker{font-size:9px;letter-spacing:.12em}
.festival-cover-subtitle{display:none}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .home-head{padding:4px 6px;margin:3px 0 5px;border-radius:16px}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .brand-lockup{padding:2px 0}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .brand-logo-img{max-height:52px;width:min(205px,100%)}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .welcome{padding:7px 9px;margin:3px 0 7px;min-height:62px}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .leaf-art{flex-basis:48px;width:48px;height:54px}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .welcome-copy{font-size:20px}
.customer-app .admin-return-link{width:max-content;max-width:100%;margin:4px 0 0;padding:7px 10px;font-size:10px;border-width:1px;border-radius:10px;text-align:left}
.customer-app .pwa-actions{padding:6px 0;gap:6px}
.customer-app .pwa-actions button{padding:6px 9px;font-size:9px}
.customer-app .home-section-head{padding-top:5px!important;padding-bottom:5px!important}
.customer-app .home-section-head h2::after{width:18px!important;height:22px!important}
.product-modal-heading{display:flex;gap:11px;align-items:center;margin-bottom:9px}
.product-modal-heading .modal-product-photo{flex:0 0 64px;width:64px;height:64px;margin:0;border-radius:14px;font-size:28px}
.product-modal-heading .panel-head{flex:1;min-width:0;margin:0;align-items:flex-start;gap:7px}
.product-modal-heading .panel-head>div{min-width:0}
.product-modal-heading h3{font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.product-modal-heading .price{font-size:13px;line-height:1.4;margin-top:4px}
.product-modal-heading .x{flex:0 0 34px;width:34px;height:34px;padding:0;font-size:24px;display:grid;place-items:center}
.customer-app .product-panel{padding:14px 14px calc(14px + env(safe-area-inset-bottom));max-height:88vh;max-height:88dvh;overflow-y:auto}
.customer-app .product-panel .opt-title{margin:10px 0 5px;font-size:12px}
.customer-app .product-panel .seg{gap:6px}
.customer-app .product-panel .seg span{padding:9px 5px;font-size:12px}
.customer-app .product-panel .top-grid{grid-template-columns:1fr!important;gap:6px}
.customer-app .product-panel .top-check{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:7px;align-items:center;padding:7px 8px;font-size:11px}
.customer-app .product-panel .top-check label{gap:4px}
.customer-app .product-panel .top-check label b{font-size:10px}
.customer-app .product-panel .top-check input{width:16px;height:16px;flex:0 0 16px;margin:0}
.customer-app .product-panel .top-qty button{width:32px;height:36px;font-size:20px}
.customer-app .product-panel .top-qty span{font-size:12px}
.customer-app .product-panel .modal-quantity-row{display:flex;justify-content:space-between;align-items:center;margin:10px 0 6px;font-size:12px}
.customer-app .product-panel .modal-qty{display:flex;align-items:center;gap:8px}
.customer-app .product-panel .modal-qty button{width:36px;min-height:36px;padding:0;font-size:20px}
.customer-app .product-panel .note-in{padding:10px;font-size:16px;min-height:40px}
.customer-app .product-panel #add-confirm{padding:12px;font-size:12px;margin-top:10px;position:sticky;bottom:0;z-index:1}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .product-panel :is(.seg input:checked+span,.top-qty,.modal-qty button){
background:var(--festival-soft)!important;border-color:var(--festival-accent)!important;color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .product-panel .top-qty button{
background:var(--festival-line)!important;color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .product-panel :is(.top-check label b,.top-qty span,.price){color:var(--festival-accent)!important}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .product-panel input[type="checkbox"]{accent-color:var(--festival-accent)}
html[data-system-theme]:not([data-system-theme="default"]) .customer-app .product-panel .x{background:var(--festival-soft)!important;color:var(--festival-accent)!important}
.miu-splash .miu-splash-glow{display:none!important}
.miu-splash-mark{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 auto;width:min(56vw,220px);height:min(56vw,220px);border-radius:50%;background:#fff;border:1px solid #d9e7d9;box-shadow:0 14px 38px #28452b12;overflow:hidden;padding:24px}
.miu-splash .miu-splash-mark img{width:100%;max-width:172px;max-height:116px;object-fit:contain;animation:none;filter:none}
.miu-splash .miu-splash-mark .miu-splash-name{font-size:23px;text-align:center;line-height:1.3;max-width:100%;overflow-wrap:anywhere}
.miu-splash{gap:14px;padding:24px}
.miu-splash p{width:min(100%,280px);text-align:center;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash .miu-splash-mark{border:2px solid var(--festival-line);background:#fff}
html[data-system-theme]:not([data-system-theme="default"]) .festival-splash-copy{max-width:270px;width:100%;gap:5px}
.festival-splash-title{font-size:16px;line-height:1.45}
.festival-splash-note{font-size:11px;line-height:1.5}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash::before,
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash::after{width:min(28vw,132px);height:min(32vw,150px);opacity:.75}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash::before{bottom:6%;left:-8px}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash::after{top:6%;right:-8px}
@media(min-width:600px){.festival-cover-copy{max-width:calc(100% - 152px)}.festival-cover-copy [data-system-theme-text]{font-size:16px}}

/* Transparent brand splash with a restrained breathing motion. */
.miu-splash .miu-splash-mark,
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash .miu-splash-mark{
width:min(72vw,260px);height:auto;min-height:0;padding:0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none;overflow:visible}
.miu-splash .miu-splash-mark img{
display:block;width:100%;max-width:260px;max-height:150px;object-fit:contain;filter:none;transform-origin:center;animation:miuBrandBreathe 1.65s ease-in-out both}
.miu-splash .miu-splash-mark .miu-splash-name{font-size:28px}
html[data-system-theme]:not([data-system-theme="default"]) .miu-splash>p{display:none}
@keyframes miuBrandBreathe{
0%{opacity:0;transform:scale(.94)}
22%{opacity:1;transform:scale(1)}
60%{opacity:1;transform:scale(1.025)}
100%{opacity:1;transform:scale(1)}
}
@media(prefers-reduced-motion:reduce){.miu-splash .miu-splash-mark img{animation:none}}

/* Keep scrolling inside open shopping sheets, including iOS edge drags. */
.customer-app :is(#product-modal,#cart-drawer){overscroll-behavior:none}
.customer-app :is(#product-modal,#cart-drawer)>.panel{
min-height:0;max-height:90vh;max-height:90dvh;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}
.customer-app #product-modal>.product-panel{max-height:88vh;max-height:88dvh}
