:root{--ink:#15252e;--muted:#66747c;--teal:#077f79;--teal2:#0fa69d;--cream:#f7f4ed;--white:#fff;--orange:#ff8a3d;--shadow:0 12px 30px #21323b18}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.4 system-ui,-apple-system,Segoe UI,sans-serif}button,input{font:inherit}header{height:82px;background:#fff;display:flex;align-items:center;padding:0 4vw;gap:24px;border-bottom:1px solid #e6e3db;position:sticky;top:0;z-index:5}.logo{font-weight:900;font-size:27px;letter-spacing:-1px}.logo b{color:var(--teal)}header .tag{color:var(--muted)}.search{margin-left:auto;width:min(420px,38vw);padding:14px 18px;border:1px solid #d8ddd9;border-radius:14px;background:#fafafa}.cartbtn{border:0;border-radius:14px;background:var(--teal);color:#fff;padding:14px 19px;font-weight:800}.wrap{max-width:1440px;margin:auto;padding:32px 4vw 80px}.hero{background:linear-gradient(110deg,#073c47,#07877f);border-radius:24px;color:#fff;padding:36px 42px;margin-bottom:28px;display:flex;justify-content:space-between;align-items:center}.hero h1{font-size:40px;margin:0 0 6px}.hero p{margin:0;color:#cce9e6}.cats{display:flex;gap:13px;margin:24px 0}.cat{border:1px solid #d8ddd9;background:#fff;padding:14px 24px;border-radius:999px;font-weight:800}.cat.active{background:var(--ink);color:#fff;border-color:var(--ink)}h2{font-size:24px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:24px}.album{background:#fff;border-radius:18px;padding:12px;box-shadow:var(--shadow);cursor:pointer;transition:.18s}.album:hover{transform:translateY(-4px)}.cover{aspect-ratio:1;border-radius:12px;display:block;width:100%;object-fit:cover;background:linear-gradient(135deg,#0b7f79,#f49a54)}.album h3{margin:12px 4px 2px;font-size:17px}.album p{margin:0 4px 7px;color:var(--muted);font-size:14px}.badge{position:absolute;background:#fff;color:var(--teal);font-weight:800;border-radius:12px;padding:5px 9px;margin:9px}.modal{position:fixed;inset:0;background:#0a161dcc;z-index:20;display:none;align-items:center;justify-content:center;padding:24px}.modal.open{display:flex}.panel{background:#fff;max-width:850px;width:100%;max-height:92vh;overflow:auto;border-radius:24px;padding:28px;position:relative}.close{position:absolute;right:22px;top:18px;border:0;background:#eef1ef;border-radius:50%;width:40px;height:40px;font-size:20px}.detail{display:grid;grid-template-columns:280px 1fr;gap:30px}.detail h1{margin:4px 0}.tracks{margin:18px 0;border-top:1px solid #e5e8e5}.track{display:flex;gap:12px;padding:11px 4px;border-bottom:1px solid #eceeec}.play{border:0;color:var(--teal);background:#e5f5f3;border-radius:50%;width:28px;height:28px}.primary{width:100%;border:0;background:var(--orange);color:#fff;font-weight:900;padding:16px;border-radius:14px}.drawer{position:fixed;right:0;top:0;height:100%;width:min(430px,100%);background:#fff;z-index:30;box-shadow:-15px 0 40px #0003;padding:26px;transform:translateX(110%);transition:.2s}.drawer.open{transform:none}.line{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #eee}.checkout input{width:100%;padding:15px;border:1px solid #ccd5d1;border-radius:12px;margin:18px 0}.empty{padding:60px;text-align:center;color:var(--muted)}@media(max-width:700px){header .tag,.search{display:none}.hero{padding:25px}.hero h1{font-size:29px}.detail{grid-template-columns:1fr}.detail .cover{max-width:260px}.grid{grid-template-columns:repeat(2,1fr);gap:12px}.wrap{padding:20px 14px}.album{padding:8px}}
.artist-card{appearance:none;-webkit-appearance:none;border:0;text-align:left;color:inherit;font:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.artist-card:active{transform:scale(.98)}
.gate{position:fixed;inset:0;z-index:100;background:linear-gradient(135deg,#063d47,#0b9288);display:flex;align-items:center;justify-content:center;padding:24px}.gate.hidden{display:none}.signin{width:min(480px,100%);background:#fff;border-radius:26px;padding:38px;box-shadow:0 24px 70px #001b}.signin .logo{margin-bottom:30px}.signin h1{font-size:40px;margin:0 0 8px}.signin>p{color:var(--muted);margin:0 0 26px}.signin label{display:block;font-weight:800;margin:16px 0}.signin input{display:block;width:100%;margin-top:7px;padding:16px;border:1px solid #bfc9c5;border-radius:13px;font-size:18px}.signin .primary{margin-top:12px}.signin .sign-error{color:#b42318;margin:12px 0 0;min-height:22px}@media(max-width:700px){.signin{padding:28px 22px}.signin h1{font-size:34px}}
.logo{display:flex;align-items:center;gap:9px}.brand-mark{width:30px;height:30px;color:var(--teal);flex:0 0 auto}.signin .logo{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.signin .brand-mark-signin{width:76px;height:76px}.signin .logo span{font-size:29px;letter-spacing:2px;text-transform:uppercase;font-weight:500}
.order-sent{font-size:18px;line-height:1.5}.order-sent b{font-size:24px;color:var(--teal)}.order-sent .done-btn{margin:22px 0 10px}.order-sent small{display:block;text-align:center;color:var(--muted)}
.drawer.confirmed #cartLines,.drawer.confirmed #cartTotal,.drawer.confirmed #cartCustomer,.drawer.confirmed .checkout>.primary{display:none}.drawer.confirmed .checkout{margin-top:32px}
/* Full direction flip for Hebrew-script Yiddish. */
html[dir="rtl"] body{text-align:right}html[dir="rtl"] header{direction:rtl}html[dir="rtl"] .search{margin-left:0;margin-right:auto}html[dir="rtl"] .logo{direction:rtl}html[dir="rtl"] .signin .logo{align-items:flex-end}html[dir="rtl"] .signin label,html[dir="rtl"] .signin input{text-align:right}html[dir="rtl"] .language-picker{direction:ltr;justify-content:flex-end}html[dir="rtl"] .grid{direction:rtl}html[dir="rtl"] .artist-card{text-align:right}html[dir="rtl"] .drawer{right:auto;left:0;transform:translateX(-110%);box-shadow:15px 0 40px #0003;text-align:right}html[dir="rtl"] .drawer.open{transform:none}html[dir="rtl"] .drawer .close{right:auto;left:22px}html[dir="rtl"] .panel{text-align:right}html[dir="rtl"] .panel .close{right:auto;left:22px}html[dir="rtl"] .detail{direction:rtl}html[dir="rtl"] .track{direction:rtl}html[dir="rtl"] .line{direction:rtl}html[dir="rtl"] .badge{right:auto;left:0}html[dir="rtl"] #pager{direction:rtl}
.language-picker{display:flex;gap:8px;margin:0 0 22px}.language{border:1px solid #cbd4d0;background:#fff;padding:9px 16px;border-radius:999px;font-weight:800}.language.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.browse-search{margin:0 0 20px}.browse-search .search{margin:0;width:100%;padding:18px 20px;border-radius:16px;font-size:18px;background:#fff}.browse-search .search:focus{outline:3px solid #0fa69d55;border-color:var(--teal)}@media(max-width:700px){.browse-search .search{display:block}}
html[dir="rtl"] .drawer{right:auto!important;left:0!important}
.holiday-cats{margin-top:-10px;padding:14px;border-radius:18px;background:#fff;box-shadow:var(--shadow);flex-wrap:wrap}.holiday-cats[hidden]{display:none}.holiday-cat small{font-weight:600;opacity:.7}
.logoutbtn{border:1px solid #cbd4d0;border-radius:14px;background:#fff;color:var(--ink);padding:13px 17px;font-weight:800;white-space:nowrap}
@media(max-width:700px){header{gap:8px;padding:0 14px}.logo span{display:none}.logoutbtn,.cartbtn{padding:12px 13px}}
.touch-keyboard{position:fixed;left:0;right:0;bottom:0;z-index:200;background:#eef2f0;border-top:1px solid #c5cfcb;box-shadow:0 -12px 30px #10252d30;padding:10px 12px max(10px,env(safe-area-inset-bottom))}.touch-keyboard[hidden]{display:none}.keyboard-keys{max-width:900px;margin:auto}.key-row{display:flex;justify-content:center;gap:7px;margin:7px 0;direction:ltr}.key{height:57px;min-width:57px;flex:0 1 78px;border:1px solid #bec9c5;border-radius:11px;background:#fff;color:var(--ink);font-size:23px;font-weight:750;box-shadow:0 2px 2px #0001;touch-action:manipulation}.key:active,.key.active{background:var(--teal);color:#fff}.key-actions .key{font-size:17px}.key-shift,.key-backspace,.key-done{flex:0 1 130px}.key-space{flex:1 1 360px;max-width:430px}.keyboard-rtl .key-row{direction:rtl}.numeric-keys{max-width:420px}.numeric-keys .key{flex:1 1 100px}.keyboard-open{padding-bottom:310px}.keyboard-open .gate{align-items:flex-start;overflow:auto;padding-bottom:330px}.keyboard-open .signin{margin-top:10px}html[dir="rtl"] input[data-keyboard="text"]{direction:rtl;text-align:right}html[dir="ltr"] input[data-keyboard="text"]{direction:ltr;text-align:left}
@media(max-width:700px){.touch-keyboard{padding-left:5px;padding-right:5px}.key-row{gap:4px;margin:5px 0}.key{height:54px;min-width:0;font-size:21px}.key-actions .key{font-size:15px}.keyboard-open{padding-bottom:285px}.keyboard-open .gate{padding-bottom:305px}}
/* The kiosk keyboard is viewport chrome, independent of RTL flow, page width, or zoom. */
.touch-keyboard{position:fixed!important;inset:auto 0 0 0!important;width:100vw!important;max-width:none!important;margin:0!important;direction:ltr!important;transform:none!important}.keyboard-keys{width:100%!important;max-width:none!important}.key-row{width:100%;padding:0;margin:6px 0}.key{min-height:60px;flex:1 1 0!important;max-width:none!important}.key-actions .key-shift,.key-actions .key-backspace,.key-actions .key-done{flex:1 1 16%!important}.key-actions .key-space{flex:4 1 48%!important;max-width:none!important}.numeric-keys{width:min(100%,520px)!important;max-width:520px!important;margin:auto!important}.numeric-keys .key{min-height:64px}
@media(max-width:700px){.touch-keyboard{padding:7px 4px max(7px,env(safe-area-inset-bottom))!important}.key{min-height:58px}.key-row{gap:4px;margin:4px 0}}
/* Flex items must be allowed below their content width so every key stays inside the viewport. */
.touch-keyboard,.keyboard-keys,.key-row{box-sizing:border-box;overflow:hidden}.key-row{padding-left:2px;padding-right:2px}.key{min-width:0!important;width:0!important;padding-left:2px;padding-right:2px}.key-actions .key-shift,.key-actions .key-backspace,.key-actions .key-done,.key-actions .key-space{width:0!important}
/* A readonly field uses our touch keyboard, so provide an explicit caret. */
.browse-search{position:relative}.search-caret{display:none;position:absolute;top:50%;left:21px;width:2px;height:1.35em;background:var(--ink);transform:translateY(-50%);pointer-events:none;animation:search-caret-blink 1s steps(1,end) infinite}.browse-search .search.keyboard-focused:placeholder-shown+.search-caret{display:block}html[dir="rtl"] .search-caret{left:auto;right:21px}@keyframes search-caret-blink{0%,49%{opacity:1}50%,100%{opacity:0}}
.listen-only{width:100%;margin-top:10px;border:2px solid var(--teal);background:#fff;color:var(--teal);font-weight:900;padding:14px;border-radius:14px}.listen-only:active{background:#e5f5f3}.browse-login[hidden],#logoutBtn[hidden],#cartBtn[hidden]{display:none}.browse-only .checkout{display:none}
.back-to-top{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:80;min-width:148px;min-height:58px;padding:14px 20px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-weight:900;font-size:17px;box-shadow:0 10px 28px #0005;touch-action:manipulation}.back-to-top::before{content:'↑';font-size:22px;margin-right:8px}.back-to-top[hidden]{display:none}html[dir="rtl"] .back-to-top{right:auto;left:max(22px,env(safe-area-inset-left))}html[dir="rtl"] .back-to-top::before{margin-right:0;margin-left:8px}@media(max-width:700px){.back-to-top{min-width:132px;min-height:56px;right:14px;bottom:16px}html[dir="rtl"] .back-to-top{left:14px}}

/* v36 bilingual kiosk refinements. */
@font-face{font-family:KioskHebrew;src:url('/noto-sans-hebrew.woff2') format('woff2');font-weight:100 900;font-display:swap}
html[lang="yi"] body,html[lang="yi"] button,html[lang="yi"] input{font-family:KioskHebrew,"Noto Sans Hebrew",Arial,sans-serif}
.signin label{position:relative}.signin input.keyboard-focused{outline:4px solid #0fa69d66;border-color:var(--teal);box-shadow:0 0 0 2px #fff,0 0 0 6px var(--teal)}
.field-caret{display:none;position:absolute;bottom:18px;left:17px;width:2px;height:24px;background:var(--ink);animation:search-caret-blink 1s steps(1,end) infinite;pointer-events:none}
.signin input.keyboard-focused:placeholder-shown+.field-caret{display:block}html[dir="rtl"] .field-caret{left:auto;right:17px}
.homebtn{border:0;border-radius:13px;background:var(--ink);color:#fff;padding:13px 18px;font-weight:900;white-space:nowrap}
.browse-search .search{padding-left:52px}.search-icon{position:absolute;left:19px;top:50%;transform:translateY(-53%);font-size:31px;font-weight:900;color:var(--teal);z-index:1;pointer-events:none}html[dir="rtl"] .browse-search .search{padding-left:20px;padding-right:52px}html[dir="rtl"] .search-icon{left:auto;right:19px}
.holiday-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}.holiday-cat{border-radius:18px;min-height:128px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;font-size:17px}.holiday-symbol{font-size:44px;line-height:1}
#heading:has(.back-arrow){display:flex;align-items:center;gap:18px}.back-arrow{width:64px;height:56px;border:0;border-radius:14px;background:var(--ink);color:#fff;font-size:38px;font-weight:900;line-height:1;touch-action:manipulation}
.artist-card strong{color:var(--teal)}
@media(max-width:700px){header .tag{display:none}.homebtn{padding:12px}.holiday-cats{grid-template-columns:repeat(2,1fr)}.holiday-cat{min-height:112px}}
.holiday-symbol{display:block;width:58px;height:58px;object-fit:contain}
.cover-missing{background:linear-gradient(135deg,#168b7d,#e8aa5a)!important}
.cover-missing{object-fit:contain!important;padding:25%!important}
.order-failed{color:#b42318;font-size:22px}.ticket-num{font-size:56px;font-weight:900;color:var(--teal);letter-spacing:2px;margin:10px 0 2px}.ticket-total{font-size:22px;margin:4px 0 10px}

/* online app: no in-store previews */
button.play{display:none}
