:root{}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{opacity:.35;cursor:default}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}h1,h2,h3,p{margin:0}h1{font-size:36px;line-height:1.12;letter-spacing:-1.3px;font-weight:650}h2{font-size:23px;line-height:1.25;letter-spacing:-.6px;font-weight:650}h3{font-size:17px;font-weight:600}p{color:var(--muted)}small,.small{font-size:12px;color:var(--muted)}input,textarea,select{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--color-surface-subtle);color:var(--ink);outline-color:var(--color-link)}input::placeholder,textarea::placeholder{color:var(--color-muted)}textarea{min-height:90px;resize:vertical}svg{display:block;width:24px;height:24px}.appheader{max-width:1192px;margin:auto;height:86px;display:flex;gap:36px;align-items:center;padding:0 36px;border-bottom:1px solid var(--line)}.brand{font-weight:750;font-size:24px;letter-spacing:-1.3px}.nav{display:flex;gap:24px}.nav button{font-size:13px;color:var(--muted);padding:11px 0}.nav button.active{color:var(--ink);font-weight:600}.nav svg{display:none}.globaltools{display:flex;align-items:center;margin-left:auto;gap:15px}.searchbar{position:relative;max-width:230px}.searchbar input{font-size:12px;border:0;padding:11px 13px}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--color-surface-subtle);font-size:12px;font-weight:600}.workspace{max-width:1120px;margin:auto;padding:36px 0 50px}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:5px 0 28px}.heading p{margin-top:12px;font-size:14px}.eyebrow{display:none}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;background:var(--ink);color:var(--color-on-inverse);border-radius:12px;min-height:46px;padding:12px 20px;font-size:14px;font-weight:550;transition:transform .18s,background .18s}.btn:hover{background:var(--color-inverse);transform:translateY(-1px)}.btn:active{transform:scale(.97)}.btn.secondary{background:var(--color-surface-subtle);color:var(--color-ink)}.btn.ghost{background:var(--color-surface);color:var(--color-muted);border:1px solid var(--line)}.btn.danger{background:var(--color-surface-subtle);color:var(--color-danger)}.btn.tiny{min-height:35px;padding:8px 13px;font-size:12px}.btn.wide{width:100%;margin-top:24px}.textbtn{color:var(--muted);font-size:13px;padding:7px 0}.textbtn:hover{color:var(--ink)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.choosebutton{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--color-inverse);color:var(--color-on-inverse);padding:24px 29px;font-size:20px;font-weight:550;letter-spacing:-.4px;border-radius:18px;transition:transform .2s,box-shadow .2s}.choosebutton span{font-size:27px;font-weight:400}.choosebutton:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgb(var(--shadow-rgb) / 0.067)}.choosebutton:active{transform:scale(.99)}.homeactions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.homeactions button{display:flex;align-items:center;justify-content:center;gap:13px;padding:22px 12px;background:var(--color-surface-subtle);border-radius:15px;transition:transform .2s,background .2s}.homeactions button:hover{background:var(--color-surface-subtle);transform:translateY(-3px)}.homeactions b{font-size:14px;font-weight:500}.homeactions svg{width:23px;height:23px;color:var(--color-muted)}.homeutility{display:flex;justify-content:space-between;padding:18px 2px}.setuprow{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid var(--line);border-radius:15px;padding:18px 20px;margin:8px 0 30px}.setuprow b{font-size:14px;font-weight:550}.setuprow p{font-size:12px;margin-top:4px}.sectiontop{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:34px 0 18px}.shelf{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.card{min-width:0}.poster{display:block;position:relative;overflow:hidden;aspect-ratio:2/3;width:100%;padding:0;border-radius:12px;background:var(--color-surface-subtle);text-align:left;transition:transform .2s}.poster img{width:100%;height:100%;object-fit:cover;display:block}.poster:hover{transform:translateY(-4px)}.posterfallback{background:linear-gradient(135deg,var(--color-surface-subtle),var(--color-surface-raised));width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:18px;color:var(--color-link)}.posterfallback b{font-size:22px;line-height:1.15;letter-spacing:-.6px}.posterfallback small{color:var(--color-muted);margin-top:10px}.card h3{font-size:14px;margin:11px 0 4px;font-weight:550;line-height:1.35}.card h3 button{padding:0;text-align:left}.card p{font-size:11px}.cardactions{display:flex;justify-content:space-between;gap:6px;margin-top:9px}.cardactions button{font-size:10px;padding:6px 8px;border-radius:7px;background:var(--color-surface-subtle);color:var(--color-muted);white-space:nowrap}.cardactions button:hover{background:var(--color-surface-subtle);color:var(--color-link)}.journalentry{border-top:1px solid var(--line);width:100%;padding:22px 0;display:flex;justify-content:space-between;font-size:14px;margin-top:32px}.footnote{display:flex;justify-content:space-between;font-size:10px;color:var(--color-muted);border-top:1px solid var(--color-border);padding-top:25px;margin-top:40px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip,.pill{border:1px solid var(--color-border);padding:9px 15px;border-radius:30px;font-size:13px;color:var(--color-muted);background:var(--color-surface);transition:transform .2s,background .2s}.chip.on{background:var(--color-surface-subtle);border-color:var(--color-primary-border);color:var(--color-link)}.chip:hover{transform:translateY(-2px)}.pill{padding:5px 10px;font-size:11px}.panel{background:var(--color-surface);border:1px solid var(--line);padding:25px;border-radius:17px}.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}.formsection{margin-bottom:28px}.formsection h3,.formsection>label{display:block;margin-bottom:14px;font-size:15px}.formsection p{font-size:12px;margin-top:12px}.compactpage{max-width:620px;margin:15px auto 0}.compactpage .heading{margin-bottom:38px}.morefilters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.morefilters summary{font-size:14px;color:var(--muted);cursor:pointer}.morefilters[open] summary{margin-bottom:25px}.checkrow{display:flex;align-items:center;gap:11px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px;cursor:pointer}.checkrow input{width:18px;height:18px;accent-color:var(--accent)}.checkrow small{margin-left:auto}.notice{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:13px;padding:17px 20px;margin:20px 0;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px}.notice p{font-size:12px}.empty{padding:40px 20px;background:var(--color-surface);border-radius:15px;text-align:center;margin:25px 0}.empty h2{font-size:21px;margin-bottom:12px}.empty p{font-size:13px;margin:8px auto 22px;max-width:430px}.grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px 20px}.resultrow{display:grid;grid-template-columns:80px 1.5fr 1fr 135px;gap:22px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.resultrow h3{margin-bottom:8px}.resultrow h3 button{padding:0;text-align:left}.resultrow p{font-size:13px}.resultrow .reason{margin-top:12px;color:var(--color-link)}.resultrow>.row{display:grid;gap:6px}.metrics{font-size:12px;color:var(--muted);line-height:1.9}.metrics b{color:var(--color-muted);font-weight:500}.listgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.listcard{background:var(--color-surface-subtle);border-radius:17px;padding:26px;text-align:left;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s}.listcard:hover{transform:translateY(-4px)}.listicon{font-size:26px;color:var(--color-muted)}.listcard small{display:block;margin-top:8px}.listcard h3{font-weight:500}.librarytabs{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.deck{max-width:610px;margin:0 auto}.discoverycard{display:grid;grid-template-columns:230px 1fr;gap:24px;background:var(--color-surface);border-radius:20px;border:1px solid var(--line);padding:16px;touch-action:pan-y;transition:transform .25s,opacity .25s}.discoverycard .poster{height:100%;min-height:320px}.discoverycopy{padding:16px 5px}.discoverycopy h2{margin:0 0 12px}.discoverycopy p{font-size:13px;margin:18px 0}.discoverycard.flyright{transform:translateX(150px) rotate(8deg);opacity:0}.discoverycard.flyleft{transform:translateX(-150px) rotate(-8deg);opacity:0}.deckactions{display:flex;gap:12px;justify-content:center;margin:25px 0 15px}.hint{text-align:center;font-size:11px;color:var(--color-muted)}.rating{color:var(--color-muted)}.newsgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.article{border:1px solid var(--line);border-radius:15px;overflow:hidden}.articleart{height:210px;overflow:hidden;background:var(--color-surface-subtle)}.articleart img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.articlebody{padding:23px}.articlebody h2{font-size:22px;margin:10px 0}.articlebody p{font-size:13px;margin:10px 0 20px}.articlelabel{font-size:11px;color:var(--color-muted)}.modalback{position:fixed;inset:0;background:rgb(var(--shadow-rgb) / 0.376);backdrop-filter:blur(7px);z-index:50;display:flex;align-items:center;justify-content:center;padding:25px}.modal{max-width:760px;width:100%;max-height:90vh;overflow:auto;padding:32px;background:var(--color-surface);border-radius:22px;position:relative;box-shadow:0 20px 100px rgb(var(--shadow-rgb) / 0.200);animation:modalin .25s ease}.modal.narrow{max-width:480px}.modal h2{margin:5px 25px 15px 0}.modal p{font-size:14px;margin:12px 0}.close{position:absolute;right:16px;top:13px;width:30px;height:30px;border-radius:50%;background:var(--color-surface-subtle);color:var(--color-muted);font-size:22px;z-index:2}.detail{display:grid;grid-template-columns:180px 1fr;gap:25px}.detailwide{grid-column:1/-1}.detail .chips{margin:16px 0}.detail dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px;margin:18px 0}.detail dt{color:var(--muted)}.detail dd{margin:0}.detailbuttons{display:flex;flex-wrap:wrap;gap:9px}.detailwide .notice{margin-top:0}.reactions{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:25px 0}.reactions button{padding:16px 8px;background:var(--color-surface-subtle);border:1px solid transparent;border-radius:12px;font-size:12px;transition:transform .2s}.reactions button.on{background:var(--color-surface-subtle);border-color:var(--color-primary-border);color:var(--color-link)}.reactions button:hover{transform:scale(1.03)}.reactions strong{display:block;font-size:22px;font-weight:400;margin-bottom:7px}.stars{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:23px 0}.stars button{padding:12px;border:1px solid var(--line);border-radius:9px}.stars button.on{background:var(--soft);color:var(--accent);border-color:var(--color-primary-border)}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--color-inverse);color:var(--color-on-inverse);border-radius:13px;padding:13px 20px;z-index:100;font-size:13px;box-shadow:0 8px 30px rgb(var(--shadow-rgb) / 0.133);max-width:90vw;animation:toastin .2s ease}.toast button{text-decoration:underline;margin-left:15px}.profiletop{display:flex;justify-content:space-between;align-items:center}.reactiontabs{display:flex;gap:9px;margin:22px 0 30px;overflow:auto;padding:3px 0 7px}.reactiontabs button{display:flex;align-items:center;gap:7px;white-space:nowrap;padding:10px 13px;border-radius:11px;background:var(--color-surface-subtle);font-size:12px;color:var(--color-muted)}.reactiontabs button.on{background:var(--color-surface-subtle);color:var(--color-link)}.reactiontabs small{color:inherit;margin-left:3px}.preferenceview,.selectedprefs{display:flex;flex-wrap:wrap;gap:8px}.preference{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:9px;max-width:100%;overflow-wrap:anywhere;font-size:12px;line-height:1.4}.preference.positive{color:var(--color-link);background:var(--color-surface-subtle)}.preference.negative{color:var(--color-danger);background:var(--color-surface-subtle)}.preference button{color:inherit;margin-left:3px;padding:1px;font-size:17px}.profileStats{display:flex;gap:30px;margin:24px 0}.profileStats b{display:block;font-size:27px}.settingsrow{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.settingsrow p{font-size:12px}.settingsrow select{max-width:150px}.onboard{max-width:1020px;margin:auto}.ontop{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--color-muted)}.ontop .textbtn{font-size:12px}.steps{display:flex;gap:4px;max-width:160px;margin:15px auto 38px}.steps button{height:44px;padding:0;position:relative;flex:1;min-width:0;border-radius:8px}.steps button::after{content:"";position:absolute;left:0;right:0;top:20px;height:3px;border-radius:3px;background:var(--color-surface-subtle);transition:background .2s,transform .2s}.steps button:hover::after{background:var(--color-primary);transform:scaleY(1.6)}.steps button.done::after{background:var(--color-primary-soft)}.onheading{text-align:center;margin-bottom:35px}.onheading h1{font-size:39px;letter-spacing:-1.5px}.onheading p{font-size:14px;margin-top:13px}.onfilters{display:flex;gap:20px;align-items:center;justify-content:space-between;max-width:730px;margin:0 auto 25px}.onfilters input{max-width:300px;background:var(--color-surface-subtle);border:0;font-size:13px}.onfilters .chip{border:0;background:var(--color-surface-subtle);font-size:12px;padding:8px 13px}.onfilters .chip.on{background:var(--color-surface-subtle);color:var(--color-link)}.bubblefield{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:34px 22px;align-items:start;padding:20px 10px 45px}.bubble{position:relative;min-width:0;padding:0 0 5px;text-align:center;display:flex;flex-direction:column;align-items:center;transition:transform .25s cubic-bezier(.2,.8,.3,1)}.bubble:nth-child(even){padding-top:24px}.bubbleart{display:block;position:relative;border-radius:50%;width:132px;height:132px;background:var(--color-surface-subtle);transition:transform .3s cubic-bezier(.3,1.6,.5,1),box-shadow .2s;isolation:isolate}.bubbleart img{width:100%;height:100%;object-fit:cover;object-position:50% 28%;border-radius:50%;display:block;user-select:none}.bubble.size1 .bubbleart{width:112px;height:112px}.bubble.size2 .bubbleart{width:142px;height:142px}.bubble.size3 .bubbleart{width:122px;height:122px}.bubble .posterfallback{border-radius:50%;padding:12px}.bubble .posterfallback b{font-size:16px}.bubble .posterfallback small{display:none}.bubble>b{display:block;font-size:12px;line-height:1.3;font-weight:550;margin:12px 0 4px;max-width:145px}.bubble>small{font-size:10px;line-height:1.3}.bubble:hover .bubbleart{transform:translateY(-4px) scale(1.04)}.bubble.on .bubbleart{box-shadow:0 0 0 4px rgb(var(--shadow-rgb) / 1.000),0 0 0 7px rgb(var(--shadow-rgb) / 1.000);transform:scale(1.06)}.bubble.on{animation:bounce .32s ease}.bubbletick{position:absolute;bottom:3px;right:1px;display:grid;place-items:center;border:3px solid var(--color-border);width:27px;height:27px;border-radius:50%;background:var(--color-primary);color:var(--color-on-primary);font-size:13px;opacity:0;transform:scale(.4);transition:transform .25s,opacity .2s}.bubble.on .bubbletick{opacity:1;transform:scale(1)}.endofcatalog{text-align:center;font-size:11px;color:var(--color-muted);padding:0 0 20px}.loadmore{display:block;margin:0 auto 20px}.onboardfooter{position:sticky;bottom:0;background:var(--color-glass);backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:space-between;padding:18px 3px;border-top:1px solid var(--line);z-index:9}.onboardfooter>span{font-size:12px;color:var(--color-muted)}.onboardfooter>.btn{min-width:145px}.onboard #onSearch{display:block;max-width:640px;margin:0 auto 20px;font-size:13px}.ratingrow{border-bottom:1px solid var(--line);padding:22px 0;max-width:640px;margin:auto}.ratingidentity{display:flex;align-items:center;gap:13px}.ratingthumb{width:44px;height:61px;border-radius:7px;overflow:hidden;background:var(--color-surface-subtle);flex-shrink:0}.ratingthumb img{width:100%;height:100%;object-fit:cover}.ratingthumb .posterfallback{padding:4px}.ratingthumb .posterfallback b{font-size:8px}.ratingthumb .posterfallback small{display:none}.ratingidentity b{display:block;font-size:14px;font-weight:550}.ratingidentity small{display:block;margin-top:4px;font-size:11px}.remove{margin-left:auto;color:var(--color-muted);font-size:20px;padding:10px}.inline-reactions{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:14px}.inline-reactions button{background:var(--color-surface-subtle);border:1px solid transparent;border-radius:10px;padding:10px 4px;font-size:11px;color:var(--color-muted);transition:transform .2s}.inline-reactions button span{font-size:19px;display:block;margin-bottom:4px}.inline-reactions button.on{background:var(--color-surface-subtle);border-color:var(--color-primary-border);color:var(--color-link)}.inline-reactions button:active{transform:scale(.95)}.searchsuggestions{max-width:640px;margin:auto;background:var(--color-surface);border:1px solid var(--line);border-radius:12px;padding:0 17px}.searchsuggestions .ratingrow:last-child{border:0}.preferenceeditor{max-width:640px;margin:0 auto 40px;border:1px solid var(--line);padding:24px;border-radius:18px}.segmented{display:inline-flex;background:var(--color-surface-subtle);padding:4px;border-radius:10px;margin-bottom:22px}.segmented button{font-size:12px;padding:7px 15px;border-radius:7px;color:var(--color-muted)}.segmented button.on{background:var(--color-surface);color:var(--color-link);box-shadow:0 2px 6px rgb(var(--shadow-rgb) / 0.067)}.prefentry{display:flex;gap:8px}.prefentry input{background:var(--color-surface);border-color:var(--color-border);font-size:13px;flex:1;min-width:0}.prefentry .btn{background:var(--color-surface-subtle);color:var(--color-link);min-width:45px;padding:7px;font-size:22px}.prefhints{padding:21px 0}.prefhints .chip{font-size:11px;padding:7px 11px;color:var(--color-muted)}.prefhints .chip.on{color:var(--color-link)}.selectedprefs{border-top:1px solid var(--line);padding-top:20px;min-height:50px}.loading{text-align:center;padding:80px 20px}.spinner{width:28px;height:28px;border:2px solid var(--color-border);border-top-color:var(--color-primary-border);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 20px}.workspace.entered>.heading,.workspace.entered>.compactpage{animation:enter .2s ease}.workspace.entered>.onboard .onheading{animation:enter .25s ease}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{from{transform:translateY(7px)}to{transform:translateY(0)}}@keyframes bounce{40%{transform:scale(1.06)}70%{transform:scale(.99)}}@keyframes modalin{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes toastin{from{opacity:0;bottom:15px}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:1200px){.workspace{padding:32px}.appheader{padding:0 32px}.bubblefield{grid-template-columns:repeat(5,minmax(0,1fr));gap:30px 15px}.nav{gap:17px}.appheader{gap:25px}.shelf{grid-template-columns:repeat(5,minmax(0,1fr))}.shelf .card:nth-child(6){display:none}}
@media(max-width:900px){.appheader .nav{gap:13px}.appheader{gap:25px}.searchbar{max-width:180px}.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.shelf{gap:15px;grid-template-columns:repeat(4,minmax(0,1fr))}.shelf .card:nth-child(5){display:none}.bubblefield{grid-template-columns:repeat(4,minmax(0,1fr))}.resultrow{grid-template-columns:70px 1.4fr 1fr;gap:18px}.resultrow>.row{grid-column:2/4;display:flex}.two{grid-template-columns:1fr}}
@media(max-width:650px){h1{font-size:29px;letter-spacing:-1px}h2{font-size:20px;letter-spacing:-.5px}.appheader{height:67px;padding:0 20px;border-bottom:0;gap:15px}.brand{font-size:23px}.globaltools{gap:13px}.searchbar{max-width:170px}.searchbar input{font-size:11px;padding:9px 11px;background:var(--color-surface-subtle)}.avatar{width:31px;height:31px}.nav{position:fixed;bottom:0;left:0;right:0;height:72px;background:var(--color-glass);backdrop-filter:blur(18px);display:grid;grid-template-columns:repeat(4,1fr);gap:0!important;border-top:1px solid var(--color-border);z-index:20;padding:7px 6px max(8px,env(safe-area-inset-bottom))}.nav button{display:flex;flex-direction:column;align-items:center;gap:5px;padding:5px 2px;font-size:9px;color:var(--color-muted)}.nav svg{display:block;width:22px;height:22px}.nav button.active{color:var(--color-link)}.workspace{padding:17px 20px 95px}.heading{margin:7px 0 25px;gap:15px}.heading p{font-size:12px}.heading .btn{padding:9px 12px;font-size:11px;min-height:36px}.choosebutton{padding:19px 21px;font-size:16px;border-radius:14px;letter-spacing:-.3px}.choosebutton span{font-size:23px}.homeactions{gap:8px;margin-top:12px}.homeactions button{flex-direction:column;gap:10px;padding:18px 5px;border-radius:13px}.homeactions b{font-size:10px;font-weight:500;white-space:nowrap}.homeactions svg{width:23px;height:23px}.homeutility{padding:12px 1px}.homeutility .textbtn{font-size:11px}.setuprow{padding:15px;margin:8px 0 23px}.setuprow b{font-size:12px}.setuprow p{font-size:11px}.setuprow .btn{font-size:11px;white-space:nowrap}.sectiontop{margin:29px 0 16px}.sectiontop .textbtn{font-size:11px}.shelf{display:flex;gap:13px;overflow:auto;margin:0 -20px;padding:0 20px 7px;scroll-snap-type:x proximity;scrollbar-width:none}.shelf .card{flex:0 0 130px;scroll-snap-align:start;display:block!important}.shelf .poster{border-radius:10px}.shelf .cardactions button{font-size:9px;padding:5px 6px}.card h3{font-size:12px}.card p{font-size:10px}.cardactions{gap:5px}.cardactions button{font-size:10px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 15px}.profilegrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 12px}.profilegrid .cardactions{flex-direction:column;align-items:stretch}.profilegrid .cardactions button{font-size:9px}.profilegrid .card h3{font-size:11px}.profilegrid .card p{font-size:9px}.profilegrid .poster{border-radius:9px}.resultrow{grid-template-columns:64px 1fr;gap:14px;padding:20px 0}.resultrow>.row{grid-column:2;display:flex;gap:7px}.resultrow .metrics{grid-column:2;font-size:11px}.resultrow h3{font-size:16px}.resultrow p{font-size:12px}.resultrow .btn{font-size:10px;padding:7px 9px;min-height:32px}.resultrow .textbtn{font-size:11px}.compactpage{margin-top:10px}.compactpage .heading{margin-bottom:32px}.compactpage .formsection{margin-bottom:30px}.chip{font-size:12px;padding:9px 14px}.formsection h3{font-size:14px}.deck{max-width:380px}.deck>.row .chips{gap:5px}.deck>.row .chip{font-size:10px;padding:7px 11px}.deck>.row small{font-size:10px}.discoverycard{display:block;padding:0;border-radius:17px;overflow:hidden}.discoverycard .poster{aspect-ratio:auto;height:310px;min-height:0;border-radius:0}.discoverycard .poster img{object-position:center 25%}.discoverycopy{padding:21px}.discoverycopy h2{font-size:25px}.discoverycopy p{font-size:12px;margin:13px 0}.discoverycopy .pill{font-size:10px}.deckactions{gap:8px;margin-top:18px}.deckactions .btn{padding:11px 10px;font-size:11px;min-height:42px}.hint{font-size:10px}.listgrid{grid-template-columns:repeat(2,1fr);gap:12px}.listcard{min-height:155px;padding:20px}.listcard h3{font-size:15px}.newsgrid{grid-template-columns:1fr}.articlebody{padding:20px}.articleart{height:180px}.articlebody h2{font-size:21px}.notice{padding:14px;gap:10px}.notice b{font-size:12px}.notice .btn{font-size:10px;white-space:nowrap}.modalback{padding:8px;align-items:flex-end}.modal{padding:25px 20px;border-radius:20px;max-height:92vh}.detail{grid-template-columns:92px 1fr;gap:16px}.detail .poster{border-radius:9px}.detail h2{font-size:24px}.detail .chips{margin:12px 0;gap:5px}.detail .pill{font-size:10px;padding:4px 8px}.detail p{font-size:12px}.detail dl{font-size:11px}.detailwide{grid-column:1/-1}.detailbuttons .btn{font-size:11px;padding:10px 13px;min-height:40px}.toast{bottom:87px;width:max-content;max-width:90vw;font-size:12px}.footnote{margin-top:30px;font-size:9px;padding-top:20px}.reactiontabs{gap:7px;margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px;scrollbar-width:none}.reactiontabs button{font-size:11px;gap:6px;padding:10px}.reactiontabs small{font-size:10px}.profiletop{font-size:12px}.preferenceview{gap:7px}.preference{font-size:11px;padding:7px 10px}.settingsrow select{max-width:130px}.panel{padding:20px}.onboard{margin-top:-7px}.ontop{margin:0 0 7px}.steps{margin:10px auto 29px;max-width:125px}.onheading{margin-bottom:26px}.onheading h1{font-size:31px;letter-spacing:-1.1px}.onheading p{font-size:12px;margin-top:11px}.onfilters{display:block;margin-bottom:13px}.onfilters>.chips{justify-content:center;margin-bottom:16px}.onfilters input{max-width:none;padding:12px;font-size:12px}.bubblefield{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 10px;padding:16px 0 35px}.bubbleart{width:94px;height:94px}.bubble.size1 .bubbleart{width:80px;height:80px}.bubble.size2 .bubbleart{width:100px;height:100px}.bubble.size3 .bubbleart{width:88px;height:88px}.bubble:nth-child(even){padding-top:16px}.bubble>b{font-size:11px;max-width:110px;margin-top:12px;line-height:1.25}.bubble>small{font-size:9px}.bubbletick{width:23px;height:23px;border-width:2px;bottom:0;right:0;font-size:11px}.bubble.on .bubbleart{box-shadow:0 0 0 3px rgb(var(--shadow-rgb) / 1.000),0 0 0 5px rgb(var(--shadow-rgb) / 1.000)}.onboardfooter{bottom:71px;padding:14px 0;background:var(--color-glass)}.onboardfooter>span{font-size:11px}.onboardfooter>.btn{min-height:42px;min-width:125px;font-size:12px}.onboard #onSearch{font-size:12px}.ratingrow{padding:20px 0}.ratingidentity b{font-size:13px}.ratingidentity small{font-size:10px}.inline-reactions{gap:6px}.inline-reactions button{font-size:9px;padding:9px 2px;line-height:1.25}.inline-reactions button span{font-size:20px;margin-bottom:7px}.preferenceeditor{padding:18px 15px;border-radius:15px;margin-bottom:50px}.prefentry input{font-size:11px;padding:12px 9px}.prefentry .btn{min-width:37px;min-height:39px;font-size:20px}.prefhints .chip{font-size:10px;padding:7px 10px}.selectedprefs .small{font-size:11px}.searchsuggestions{padding:0 10px}.endofcatalog{font-size:10px}.onboard:has(.bubblefield) .onboardfooter{box-shadow:0 -12px 24px rgb(var(--shadow-rgb) / 1.000)}.onboard .footnote{display:none}}
@media(max-width:365px){.searchbar{max-width:145px}.bubbleart{width:80px;height:80px}.bubble.size1 .bubbleart{width:72px;height:72px}.bubble.size2 .bubbleart{width:89px;height:89px}.bubble.size3 .bubbleart{width:78px;height:78px}.homeactions b{font-size:9px}.homeutility .textbtn{font-size:10px}.choosebutton{font-size:15px}.onheading h1{font-size:28px}}
:root{}.prefhints .chip{color:var(--color-muted)}.prefhints .chip.on{color:var(--color-link)}.segmented button{color:var(--color-muted)}.inline-reactions button{color:var(--color-muted)}.reactiontabs button{color:var(--color-muted)}.cardactions button{color:var(--color-muted)}.homeutility .textbtn{color:var(--color-muted)}.bubble>small{color:var(--color-muted)}.preferenceview p{font-size:13px}

.librarysearch{display:flex;align-items:center;gap:16px;max-width:620px}.librarysearch input{background:var(--color-surface-subtle);border-color:transparent;min-height:48px}.librarysearch .textbtn{flex-shrink:0}.librarymatches{max-width:800px}.librarymatch{display:grid;grid-template-columns:64px 1fr auto;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);animation:modalin .2s ease}.libraryidentity h3{font-size:16px}.libraryidentity h3 button{padding:0;text-align:left}.libraryidentity p{font-size:12px;margin-top:5px}.libraryidentity small{display:block;margin-top:7px;color:var(--color-link)}.libraryactions{display:flex;gap:8px;align-items:center}.libraryempty{padding:46px 24px;text-align:center;background:var(--color-surface);border-radius:15px}.libraryempty h2{font-size:20px}.libraryempty p{font-size:13px;max-width:410px;margin:12px auto 0}@media(max-width:600px){.librarymatch{grid-template-columns:55px 1fr;gap:12px 15px}.librarymatch>.poster{grid-row:1/3;align-self:start}.libraryidentity h3{font-size:14px}.libraryactions{grid-column:2;flex-wrap:wrap}.libraryactions .btn{font-size:11px;padding:8px 12px}.libraryempty{padding:35px 18px}.libraryempty h2{font-size:18px}.librarysearch input{font-size:13px}}

.homeutility.homeutility-right{justify-content:flex-end;gap:24px}

.listtypes{display:flex;gap:6px;width:max-content;background:var(--color-surface-subtle);padding:4px;border-radius:13px;margin:0 0 26px}.listtypes button{padding:10px 27px;color:var(--muted);font-size:14px;border-radius:10px;transition:background .2s,color .2s,box-shadow .2s}.listtypes button.on{background:var(--color-surface);color:var(--ink);box-shadow:0 2px 7px rgb(var(--shadow-rgb) / 0.039)}.splitlists{grid-template-columns:repeat(3,minmax(0,1fr))}.splitlists .listcard{padding:20px;gap:22px;min-height:210px}.listcover{display:flex;gap:7px;height:100px}.listcover>span{display:block;width:66px;height:100px;border-radius:7px;overflow:hidden;flex-shrink:0}.listcover img{width:100%;height:100%;object-fit:cover}.listcover .listcoverempty{background:var(--color-surface-subtle);display:grid;place-items:center;color:var(--color-muted);font-size:24px}.listcardtitle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}.listcardtitle>span{color:var(--color-muted)}.listcardtitle small{font-size:12px}.listcover .posterfallback{padding:5px}.listcover .posterfallback b{font-size:10px}.listcover .posterfallback small{display:none}.collectionsearch{margin-bottom:20px}.collectionrows{max-width:900px}.collectionitem .libraryactions>.textbtn{font-size:12px;padding:10px}.movedestinations{margin:22px 0}.movedestinations button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);text-align:left}.movedestinations button:hover{color:var(--accent)}.movedestinations small{display:block;margin-top:4px}.newdestination{display:flex;gap:8px;align-items:center;margin-top:20px}.newdestination input{min-width:0;font-size:13px}.newdestination button{flex-shrink:0}@media(max-width:900px){.splitlists{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.splitlists{grid-template-columns:1fr 1fr;gap:12px}.splitlists .listcard{padding:14px;min-height:180px;gap:17px;overflow:hidden}.listcover{height:80px;gap:5px;max-width:100%;overflow:hidden}.listcover>span{height:80px;width:53px}.listcardtitle h3{font-size:13px}.listcardtitle small{font-size:10px}.listcardtitle>span{display:none}.listtypes{margin-bottom:22px}.listtypes button{font-size:13px;padding:9px 25px}.newdestination{flex-wrap:wrap}.newdestination .btn{width:100%}}

.steps{max-width:192px;margin-top:-5px;margin-bottom:18px}@media(max-width:600px){.steps{max-width:176px;margin-top:-10px;margin-bottom:9px}}

.tasteentry{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--line);border-radius:16px;padding:22px 24px;margin:8px 0 30px}.tasteentry h2{font-size:18px;letter-spacing:-.3px}.tasteentry p{font-size:12px;margin-top:6px}.tasteentryactions{display:flex;gap:9px;flex-wrap:wrap}.tasteentry.profilepreferences{display:block}.tastepreftop{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.preflabel{display:block;font-size:13px;margin:20px 0 9px;color:var(--color-muted)}@media(max-width:700px){.tasteentry{display:block;padding:19px 17px}.tasteentryactions{margin-top:17px;display:grid;grid-template-columns:1fr;gap:8px}.tasteentry h2{font-size:17px}.tastepreftop{display:block}.tastepreftop .btn{margin-top:14px}.sectiontop:has([data-action="restart-onboarding"]){align-items:flex-start;flex-direction:column;gap:7px}.preflabel{font-size:12px}}

.preference.neutral{color:var(--color-muted);background:var(--color-surface-subtle)}

.pickwish label{display:flex;justify-content:space-between;gap:12px}.pickwish label span{font-size:12px;font-weight:400;color:var(--muted)}.pickwish textarea{min-height:96px;font-size:14px}.pickwishsummary{padding:17px 20px;background:var(--panel);border-radius:13px;margin:-5px 0 24px}.pickwishsummary>span{font-size:11px;color:var(--muted)}.pickwishsummary p{font-size:14px;color:var(--ink);margin-top:5px;white-space:pre-wrap;overflow-wrap:anywhere}

.checkrow.endedchoice{border:0;padding:0;margin:18px 0 0;font-size:13px;color:var(--color-muted);width:max-content;max-width:100%}.noveltychoice{padding-top:22px;border-top:1px solid var(--line)}.btn.wide.picksubmit{margin-top:0}

.pickclose{display:grid;place-items:center;flex-shrink:0;align-self:flex-start;width:44px;height:44px;border-radius:50%;background:var(--color-surface-subtle);font-size:27px;font-weight:300;line-height:1;color:var(--color-muted);transition:background .18s,transform .18s}.pickclose:hover{background:var(--color-surface-subtle);transform:rotate(90deg)}

.resultcount{font-size:12px;margin:0 0 8px}.resultbatch{scroll-margin-top:24px;outline:none}.batchheading{padding:28px 0 8px}.batchheading h2{font-size:20px}.batchheading p{margin-top:9px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.morerecommendations{max-width:660px;background:var(--color-surface-subtle);border-radius:17px;padding:25px;margin:32px 0}.moretop{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:24px}.moretop h2{font-size:21px}.moretop>span,.morerecommendations label span{font-size:12px;color:var(--muted)}.morerecommendations label{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:10px}.morerecommendations textarea{font-size:13px;background:var(--color-surface);min-height:78px}.moreactions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px}.recommendationsend{padding:30px 0}.recommendationsend p{font-size:13px;margin-bottom:16px}@media(max-width:600px){.morerecommendations{padding:20px 16px}.moretop{align-items:flex-start;flex-direction:column;gap:6px;margin-bottom:18px}.moretop h2{font-size:19px}.moreactions{align-items:stretch;flex-direction:column}.moreactions>.btn{width:100%}.morerecommendations label{font-size:12px}.morerecommendations label span{font-size:10px}}

.howworks{display:inline-flex;align-items:center;gap:7px;flex-shrink:0;padding:10px 13px;background:var(--color-surface-subtle);border-radius:24px;font-size:12px;color:var(--color-muted);white-space:nowrap}.howworks span{font-size:17px;line-height:1}.howworks:hover{background:var(--color-surface-subtle);color:var(--color-link)}.tourlayer{position:fixed;inset:0;z-index:150;overflow:hidden;isolation:isolate}.tourspotlight{position:fixed;border:2px solid var(--color-primary-border);border-radius:18px;box-shadow:0 0 0 9999px rgb(var(--shadow-rgb) / 0.580);pointer-events:none}.tourcard{position:fixed;width:350px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;padding:17px 23px 22px;box-shadow:0 16px 60px rgb(var(--shadow-rgb) / 0.188);animation:tourappear .2s ease}.tourprogress{display:flex;gap:5px}.tourprogress button{position:relative;flex:1;min-width:0;height:24px;padding:0;border-radius:5px}.tourprogress button::after{position:absolute;content:'';left:0;right:0;top:9px;height:3px;border-radius:3px;background:var(--color-surface-subtle)}.tourprogress button.done::after{background:var(--color-primary)}.tourmeta{display:flex;justify-content:space-between;align-items:center;margin:3px 0 10px;color:var(--color-muted);font-size:11px}.tourmeta button{height:28px;width:28px;border-radius:50%;font-size:22px;line-height:1;background:var(--color-surface-subtle);color:var(--color-muted)}.tourcard h2{font-size:21px;letter-spacing:-.4px;margin-bottom:11px}.tourcard p{font-size:13px;line-height:1.55;color:var(--color-muted)}.touractions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:23px}.touractions .btn{min-height:40px;padding:10px 20px}.touractions .textbtn{font-size:12px}.tourcard button:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}@keyframes tourappear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.howworks{font-size:10px;padding:8px 10px;gap:5px}.howworks span{font-size:14px}.heading:has(.howworks){gap:12px}.tourcard{padding:13px 19px 18px;width:330px;border-radius:17px}.tourcard h2{font-size:20px}.tourcard p{font-size:12px}.touractions{margin-top:18px}.tourmeta{margin-bottom:8px}}

/* Home recommendations and interactive collections. */
.shelfcontrols{display:flex;align-items:center;gap:20px}.refreshshelf{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--color-muted);padding:9px 0}.refreshshelf span{font-size:20px;line-height:1}.refreshshelf:hover{color:var(--color-link)}.homesection{margin-top:38px}.homesection .sectiontop{margin-top:0}.homeshelf{align-items:stretch}.homecard{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:16px;overflow:hidden;background:var(--color-surface);transition:box-shadow .2s,transform .2s;animation:cardappear .3s ease both}.homecard:hover{box-shadow:0 8px 24px rgb(var(--shadow-rgb) / 0.063)}.homecard .poster{border-radius:0;transform:none;flex-shrink:0}.homecard .poster img{transition:transform .35s}.homecard .poster:hover img{transform:scale(1.035)}.homecardbody{padding:13px 12px 9px;display:flex;flex-direction:column;flex:1}.homecard h3{margin:0 0 6px;font-size:14px;line-height:1.4;min-height:2.8em}.homecard h3 button{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.homecard p{font-size:11px;line-height:1.4;margin:0 0 7px}.homecardratings{font-size:11px;color:var(--color-muted);margin-bottom:13px;white-space:nowrap}.homecardratings span{color:var(--color-muted);margin:0 3px}.homecard .cardactions{display:grid;grid-template-columns:1.1fr 1fr;gap:5px;margin-top:auto}.homecard .cardactions button{padding:9px 3px;font-size:10px;color:var(--color-muted);background:var(--color-surface-subtle);border-radius:8px;min-height:34px}.homecard .cardactions button:hover{background:var(--color-surface-subtle);color:var(--color-link)}.cardhide{font-size:10px;min-height:32px;margin:4px 0 0;color:var(--color-muted);border-radius:7px}.cardhide:hover{background:var(--color-surface-subtle);color:var(--color-muted)}.themesection{margin-top:40px}.themetiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.themetile{display:flex;flex-direction:column;text-align:left;border-radius:16px;padding:22px;min-height:160px;transition:transform .2s,box-shadow .2s}.themetile:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgb(var(--shadow-rgb) / 0.043)}.peach{background:var(--color-surface-subtle)}.lavender{background:var(--color-surface-subtle)}.blue{background:var(--color-surface-subtle)}.sage{background:var(--color-surface-subtle)}.themetitle{display:flex;justify-content:space-between;gap:10px;width:100%;font-size:17px;font-weight:550;line-height:1.35}.themetitle>span{font-size:20px;font-weight:400;color:var(--color-muted)}.themedesc{font-size:12px;color:var(--color-muted);line-height:1.5;margin-top:9px}.themelink{font-size:12px;margin-top:auto;padding-top:22px;color:var(--color-muted)}.themefilters{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:28px 0 22px}.themecount{font-size:13px;color:var(--color-muted);margin:0 0 18px}.themegrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px 18px}.themeother{margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}.themeother h2{font-size:20px;margin-bottom:18px}@keyframes cardappear{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.themegrid{grid-template-columns:repeat(4,minmax(0,1fr))}.themetiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.homesection{margin-top:30px}.homesection .sectiontop{gap:12px;align-items:flex-start;flex-direction:column;margin-bottom:15px}.shelfcontrols{width:100%;justify-content:space-between;gap:14px}.refreshshelf,.shelfcontrols .textbtn{font-size:12px;padding:3px 0}.homeshelf.shelf{gap:12px;padding-bottom:12px}.homeshelf.shelf .homecard{flex:0 0 164px;display:flex!important;border-radius:13px}.homeshelf.shelf .poster{border-radius:0}.homecardbody{padding:12px 10px 7px}.homecard h3{font-size:13px;min-height:2.8em}.homecard .cardactions button,.homeshelf.shelf .cardactions button{font-size:10px;padding:9px 3px;min-height:38px}.homecard .cardhide{font-size:11px;min-height:38px}.themetiles{gap:12px}.themetile{padding:17px 15px;min-height:166px}.themetitle{font-size:15px}.themedesc{font-size:12px}.themegrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.themefilters{display:block;margin-top:24px}.themefilters>.chips+.chips{margin-top:16px}.themefilters .chip{padding:10px 15px}.themegrid .homecardratings{font-size:10px}}
@media(prefers-reduced-motion:reduce){.homecard,.themetile,.homecard .poster img{animation:none;transition:none}}

.hometaste .tasteentryactions{flex-shrink:0}.hometaste .btn{white-space:nowrap}@media(max-width:700px){.hometaste{display:flex;gap:16px}.hometaste .tasteentryactions{display:block;margin:0}.hometaste p{max-width:190px}.hometaste .btn{font-size:11px;padding:9px 12px}}

.hometaste{margin-top:24px}.hometaste .tasteentryactions{display:flex;align-items:center;gap:24px}.onboard .steps.namedsteps{max-width:640px;width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:8px auto 30px}.namedsteps button{height:58px;padding:8px 2px 20px;color:var(--color-muted);font-size:12px;line-height:1.3}.namedsteps button::after{top:auto;bottom:4px}.namedsteps button[aria-current="step"]{color:var(--color-link);font-weight:600}.namedsteps button[aria-current="step"]::after{background:var(--color-primary)}.namedsteps button:hover{color:var(--color-link)}@media(max-width:700px){.hometaste{display:block}.hometaste p{max-width:none}.hometaste .tasteentryactions{margin-top:15px;display:flex;justify-content:space-between;gap:16px}.onboard .steps.namedsteps{gap:6px;margin:0 auto 24px}.namedsteps button{font-size:10px;height:55px;padding:7px 0 18px}}

.bubblepagination{text-align:center;margin:0 auto 28px}.bubblepagination .loadmore{display:inline-flex;gap:14px;min-width:210px;justify-content:center;margin:0 0 10px;padding:13px 22px}.bubblecount{font-size:12px;color:var(--color-muted)}.bubblepagination .endofcatalog{padding:12px 0}

.accountbutton{font-size:12px;font-weight:550;white-space:nowrap;padding:8px 0;min-width:34px}.accountbutton:hover{color:var(--color-link)}.authcontent{padding-top:10px}.authcontent h2{font-size:26px;line-height:1.2;margin-right:20px}.authcontent>p{font-size:14px;line-height:1.6;margin-top:15px}.authcontent form{margin-top:26px}.authcontent label{display:block;font-size:13px;font-weight:500;margin-bottom:9px}.authcontent input{background:var(--color-surface-subtle)}.authcontent .btn.wide{margin-top:12px}.authcontent .autherror{color:var(--color-danger);font-size:12px;line-height:1.4;margin-top:8px;min-height:17px}.authcontent input[aria-invalid="true"]{border-color:var(--color-border-strong)}.authcontent .authdemo{font-size:12px;color:var(--color-muted);line-height:1.5;margin-top:22px}.authcontent .authdemo b{color:var(--color-muted);font-weight:550}.authcontent .authcode{font-size:28px;letter-spacing:14px;text-align:center;padding-left:29px;min-height:65px}.accountemail{overflow-wrap:anywhere;font-weight:500}.accountlinks{display:flex;gap:10px;flex-direction:column;margin-top:25px}.authresend{margin-top:16px;font-size:12px}.authresend:disabled{opacity:1;color:var(--color-muted)}.authcontent>button[data-action="auth-logout"]{margin-top:16px}@media(max-width:650px){.accountbutton{font-size:11px}.authcontent{padding-top:8px}.authcontent h2{font-size:24px}.authcontent>p{font-size:13px}.authcontent form{margin-top:22px}.authcontent input{font-size:16px}.authcontent .authcode{font-size:28px}}

/* Public landing. */
body.guest .appheader{max-width:1192px;border-bottom:0;height:88px}body.guest .nav,body.guest .searchbar{display:none!important}body.guest #accountButton{background:var(--color-surface-subtle);border-radius:11px;padding:10px 20px;font-size:13px}body.guest .workspace{padding-top:35px;padding-bottom:22px}.landinghero{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;padding:12px 0 64px}.landingeyebrow{display:inline-block;font-size:12px;color:var(--color-muted);margin-bottom:22px}.landingintro h1{font-size:55px;line-height:1.08;letter-spacing:-2.5px;font-weight:650}.landingintro h1 span{color:var(--color-link)}.landingintro>p{font-size:16px;line-height:1.65;max-width:405px;margin:24px 0 28px;color:var(--color-muted)}.landingcta{font-size:15px;padding:15px 23px;border-radius:13px;min-width:220px;justify-content:space-between}.landingcta span{font-size:21px;font-weight:400}.landingintro>small{display:block;margin-top:12px;font-size:11px;color:var(--color-muted)}.landingdemo{padding:28px;border:1px solid var(--color-border);border-radius:25px;background:linear-gradient(155deg,var(--color-surface-subtle),var(--color-surface) 70%);box-shadow:0 18px 65px rgb(var(--shadow-rgb) / 0.047)}.landingdemotop{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--color-muted);margin-bottom:22px}.landingdemotop>span:first-child{color:var(--color-link)}.demodot:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--color-primary-soft);margin-right:6px;vertical-align:middle}.landingdemo h2{font-size:23px;letter-spacing:-.6px}.landingmoods{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 23px}.landingmoods button{font-size:11px;padding:9px 12px;border:1px solid var(--color-border);border-radius:30px;color:var(--color-muted);transition:background .2s,transform .2s}.landingmoods button.on{color:var(--color-link);border-color:var(--color-primary-border);background:var(--color-surface-subtle)}.landingmoods button:active{transform:scale(.96)}.landingresult{display:grid;grid-template-columns:100px 1fr;gap:20px;align-items:center;min-height:157px;animation:enter .25s ease}.landingposter{aspect-ratio:2/3;border-radius:10px;overflow:hidden;background:var(--color-surface-subtle);box-shadow:0 5px 12px rgb(var(--shadow-rgb) / 0.078)}.landingposter img{width:100%;height:100%;object-fit:cover}.landingmeta{font-size:11px;color:var(--color-muted)}.landingresult h3{font-size:19px;line-height:1.25;letter-spacing:-.4px;margin:7px 0 9px}.landingresult p{font-size:12px;line-height:1.55;color:var(--color-muted)}.landingresult .textbtn{font-size:11px;color:var(--color-link);margin-top:9px}.landingdemo .btn.wide{font-size:13px;margin-top:23px;min-height:43px}.landingdemohint{text-align:center;font-size:10px;line-height:1.5;margin-top:10px;color:var(--color-muted)}.landingfeatures{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding:35px 0;border-top:1px solid var(--color-border)}.featurestep{font-size:11px;color:var(--color-link)}.landingfeatures h2{font-size:17px;letter-spacing:-.35px;line-height:1.3;margin:11px 0 9px}.landingfeatures p{font-size:12px;line-height:1.6;color:var(--color-muted);max-width:280px}.landingbottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:24px 27px;background:var(--color-surface-subtle);border-radius:15px}.landingbottom p{font-size:14px;color:var(--color-muted)}.landingbottom button{color:var(--color-link);white-space:nowrap}.landingfooter{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:33px 0 7px;color:var(--color-muted)}.landingfooter>span{font-size:17px;font-weight:650;letter-spacing:-.6px}.landingfooter small{font-size:10px;color:inherit}@media(max-width:1100px){.landinghero{gap:30px}.landingintro h1{font-size:45px}.landingdemo{padding:24px}.landingmoods{gap:6px}.landingmoods button{padding:8px 10px;font-size:10px}}@media(max-width:700px){body.guest .appheader{height:72px;padding:0 22px}body.guest .workspace{padding:14px 22px 22px}.landinghero{grid-template-columns:1fr;gap:33px;padding:6px 0 34px}.landingintro{text-align:center}.landingeyebrow{font-size:11px;margin-bottom:18px}.landingintro h1{font-size:40px;letter-spacing:-1.8px}.landingintro>p{font-size:14px;line-height:1.6;margin:20px auto 23px;max-width:340px}.landingcta{font-size:14px;min-width:230px;min-height:48px;padding:12px 21px}.landingintro>small{font-size:10px}.landingdemo{padding:22px 20px;border-radius:21px}.landingdemotop{margin-bottom:18px;font-size:10px}.landingdemo h2{font-size:21px}.landingmoods{gap:6px;margin:17px 0 20px}.landingmoods button{font-size:10px;padding:9px 10px}.landingresult{grid-template-columns:86px 1fr;gap:16px;min-height:142px}.landingresult h3{font-size:17px}.landingresult p{font-size:11px}.landingmeta{font-size:10px}.landingdemo .btn.wide{font-size:12px}.landingdemohint{font-size:9px}.landingfeatures{grid-template-columns:1fr;gap:24px;padding:28px 0}.landingfeatures>div{position:relative;padding-left:33px}.featurestep{position:absolute;left:0;top:4px}.landingfeatures h2{font-size:17px;margin:0 0 6px}.landingfeatures p{font-size:12px;max-width:none}.landingbottom{padding:20px;margin-top:3px}.landingbottom p{font-size:12px}.landingbottom button{font-size:12px}.landingfooter{padding:28px 0 0}.landingfooter small{font-size:9px}}@media(max-width:365px){.landingintro h1{font-size:35px}.landingdemo{padding:20px 16px}.landingmoods button{font-size:9px;padding:8px}.landingresult{grid-template-columns:75px 1fr;gap:13px}}
.connectionstatus{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface-subtle);border-top:1px solid var(--color-border);color:var(--color-muted);font-size:11px;text-align:center;padding:7px 12px;z-index:50;pointer-events:none}#backendTask{position:fixed;right:20px;bottom:46px;max-width:360px;background:var(--color-inverse);color:var(--color-on-inverse);padding:17px 22px;border-radius:16px;box-shadow:0 8px 35px rgb(var(--shadow-rgb) / 0.133);z-index:90;font-size:14px}.sources{font-size:11px;line-height:1.6;color:var(--color-muted);margin-top:10px;overflow-wrap:anywhere}.sources a{color:var(--color-link);text-underline-offset:3px}.externalresearch{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:25px 0}.externalresearch small{color:var(--color-muted);max-width:360px}.bubblepagination{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap}.homecard .sources{padding:0 8px 6px}.settingsrow:last-child{margin-bottom:50px}@media(max-width:600px){.connectionstatus{font-size:9px;padding:4px 8px}#backendTask{left:15px;right:15px;bottom:78px}.externalresearch small{font-size:12px}}
@media(max-width:600px){.appheader .nav{bottom:27px}.workspace{padding-bottom:115px}}

/* Interface refinement: readable type, consistent controls and clear mobile layouts. */
:root{}
body{line-height:1.55}
h1{font-size:36px;line-height:1.16;letter-spacing:-1.15px}
h2{line-height:1.3}h3{line-height:1.4}
small,.small{font-size:13px}
button,input,textarea,select{transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s}
input,textarea,select{min-height:48px;border-color:var(--color-border);background:var(--color-surface-subtle);font-size:15px;line-height:1.5}
input::placeholder,textarea::placeholder{color:var(--color-muted);opacity:1}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px;background:var(--color-surface)}
button:focus-visible,a:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}
.btn{min-height:48px;padding:12px 20px;font-size:14px;border-radius:12px}
.btn.tiny{min-height:44px;padding:10px 14px;font-size:13px}
.btn.ghost{color:var(--muted)}
.textbtn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;padding:9px 3px;line-height:1.4}
.chip{min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;padding:10px 16px;color:var(--color-muted);border-color:var(--color-border)}
.chip.on{color:var(--color-link);background:var(--color-surface-subtle);border-color:var(--color-primary-border)}
.pill{font-size:12px;color:var(--color-muted);padding:5px 11px;line-height:1.5}
.heading{align-items:flex-start;margin:4px 0 28px}.heading>div{min-width:0}.heading h1{overflow-wrap:anywhere}.heading p{font-size:15px;line-height:1.6;margin-top:10px}
.appheader{gap:28px}.nav{gap:20px}.nav button{font-size:14px;min-height:44px}.nav button.active{color:var(--accent)}
.globaltools{min-width:0}.searchbar{max-width:260px;width:260px}.searchbar input{min-height:44px;font-size:13px;padding:11px 14px}
.accountbutton{min-width:44px;min-height:44px;font-size:13px}.avatar{width:40px;height:40px;font-size:14px}
.homeactions b{font-size:14px}.homeactions button{min-width:0;padding:22px 12px}
.howworks{min-height:44px;font-size:13px;padding:10px 14px;color:var(--muted)}
.tasteentry{padding:22px 24px}.tasteentry p{font-size:14px}.hometaste .tasteentryactions{gap:20px}
.homesection{margin-top:36px}.shelfcontrols{gap:20px}.refreshshelf{min-height:44px;font-size:14px;padding:8px 0}
.homecard{border-color:var(--color-border);border-radius:16px;box-shadow:0 2px 7px rgb(var(--shadow-rgb) / 0.016)}
.homecardbody{padding:14px 12px 8px}.homecard h3{font-size:15px;min-height:2.8em}.homecard p{font-size:12px}
.homecardratings{font-size:12px;color:var(--color-muted);margin-bottom:14px}
.homecard .cardactions{gap:6px;grid-template-columns:1fr 1fr}
.homecard .cardactions button,.cardactions button{min-height:44px;font-size:12px;padding:9px 5px;color:var(--color-link);white-space:normal;line-height:1.3}
.cardhide,.homecard .cardhide{min-height:44px;font-size:12px;color:var(--color-muted)}
.card h3{font-size:15px}.card p{font-size:12px}
.themesection{margin-top:40px}.themetile{border:1px solid var(--color-border);padding:22px;min-height:180px}.themedesc,.themelink{font-size:14px;color:var(--color-muted)}
.themetitle{font-size:18px}.sectiontop{align-items:center}.footnote{font-size:12px;color:var(--color-muted);padding-top:24px}
.formsection{margin-bottom:30px}.formsection h3,.formsection>label{font-size:16px;margin-bottom:14px}.formsection p{font-size:14px}
.pickwish label span{font-size:13px}.pickwish textarea{font-size:15px;min-height:112px}.endedchoice.checkrow{font-size:14px;min-height:44px;line-height:1.4}
.checkrow input{width:20px;height:20px;min-height:20px;flex-shrink:0}.checkrow{min-height:52px}
.compactpage{max-width:660px}.compactpage .heading{margin-bottom:32px}.noveltychoice{padding-top:26px}
.resultrow{grid-template-columns:88px minmax(0,1.5fr) minmax(170px,1fr) 144px;gap:24px;align-items:start;padding:26px 0}
.resultrow p{font-size:14px;line-height:1.65}.resultrow .reason{color:var(--color-link)}.metrics{font-size:13px;line-height:1.9}.resultrow>.row{gap:8px}.resultrow .textbtn{font-size:13px}
.morerecommendations{padding:26px;margin:32px 0}.morerecommendations h2{margin-bottom:20px}.morerecommendations label{font-size:14px}.morerecommendations textarea{font-size:15px;min-height:100px}.morerecommendations>.btn{margin-top:16px}
.deck{max-width:680px}.deck>.row .chips{gap:8px}.deck>.row .chip{font-size:14px;padding:10px 17px}
.discoverycard{grid-template-columns:210px minmax(0,1fr);gap:24px;padding:20px;border-radius:20px;overflow:hidden}
.discoverycard .poster{min-height:0;height:auto;align-self:start;aspect-ratio:2/3}.discoverycopy{padding:4px 0}.discoverycopy h2{font-size:27px;margin-bottom:10px}.discoveryintro>small{font-size:13px;line-height:1.6;display:block}
.discoverycopy p{font-size:14px;line-height:1.65;margin:16px 0}.discoverycopy .pill{font-size:12px}.deckactions{gap:10px;margin:20px 0 14px}.deckactions .btn{min-height:48px;font-size:14px}.hint{font-size:12px;line-height:1.6;color:var(--color-muted)}
.librarysearch{max-width:680px}.librarysearch input{font-size:15px}.librarytabs .chip{font-size:13px}.libraryidentity h3{font-size:16px}.libraryidentity p,.libraryidentity small{font-size:13px}.libraryactions{flex-wrap:wrap}
.listcardtitle h3{font-size:17px;overflow-wrap:anywhere}.listcardtitle small{font-size:13px}.listcard{border:1px solid var(--color-border)}.listtypes button{min-height:44px;font-size:14px}.collectionsearch{margin-bottom:24px}
.empty,.libraryempty{padding:40px 24px;border:1px solid var(--color-border)}.empty p,.libraryempty p{font-size:14px;line-height:1.6}.empty h2,.libraryempty h2{font-size:22px}
.modalback{background:rgb(var(--shadow-rgb) / 0.400);backdrop-filter:blur(5px);padding:24px;z-index:80}.modal{max-height:calc(100dvh - 48px);overscroll-behavior:contain;padding:28px;border-radius:24px;scrollbar-width:thin;scroll-padding-top:60px}
.modal .close{position:sticky;float:right;top:0;right:auto;margin:-8px -8px 0 4px;width:44px;height:44px;display:grid;place-items:center;line-height:1;font-size:28px;background:var(--color-surface-subtle);color:var(--color-muted);z-index:5}
.modal h2{margin:4px 44px 16px 0;font-size:26px;overflow-wrap:anywhere}.modal p{font-size:15px;line-height:1.6}.modal .detail h2{margin-right:20px}.detail{clear:both;grid-template-columns:160px minmax(0,1fr);gap:24px}
.detailintro small{font-size:13px}.detail dl{font-size:14px;grid-template-columns:1fr 1fr;gap:12px 20px;line-height:1.5}.detail dd{overflow-wrap:anywhere}.detail p{font-size:15px}.detail .notice{padding:20px}.detail .notice p{margin-bottom:0}
.detailbuttons .btn{min-height:48px;font-size:14px}.detailwide>.row{gap:8px 20px;margin-top:12px}.detailwide>.small{font-size:13px}
.reactions{gap:12px;margin:24px 0}.reactions button{min-height:104px;padding:16px 10px;font-size:14px;color:var(--color-link)}.reactions strong{font-size:28px}.stars button{min-height:48px;font-size:16px}
.authcontent label{font-size:14px}.authcontent>p{font-size:15px}.authcontent .authdemo{font-size:13px;color:var(--color-muted);border-top:1px solid var(--line);padding-top:16px}.authcontent .autherror{font-size:13px;min-height:0;margin:8px 0}.authcontent .autherror:empty{display:none}.authcontent .authresend{font-size:14px;min-height:44px}
.onheading p{font-size:15px}.ontop,.ontop .textbtn{font-size:13px}.namedsteps button{font-size:13px;color:var(--color-muted)}.onfilters input{font-size:15px}.onfilters .chip{font-size:13px;min-height:44px}
.bubble>b{font-size:13px;line-height:1.4}.bubble>small{font-size:12px;color:var(--color-muted)}.onboard #onSearch{font-size:15px}.ratingidentity b{font-size:15px}.ratingidentity small{font-size:13px}.remove{min-width:44px;min-height:44px;color:var(--color-muted)}
.inline-reactions button{font-size:12px;line-height:1.4;min-height:76px;color:var(--color-muted)}.inline-reactions button.on{color:var(--color-link);border-color:var(--color-primary-border)}.ratingrow{padding:24px 0}
.preferenceeditor{padding:24px}.prefentry input{font-size:15px}.prefentry .btn{min-width:48px;min-height:48px}.prefhints .chip{font-size:13px;min-height:44px;color:var(--color-muted)}.segmented button{min-height:44px;font-size:14px;color:var(--color-muted)}.preference{font-size:14px}.preference button{min-width:28px;min-height:28px}.selectedprefs .small{font-size:13px}
.onboardfooter{gap:12px;padding:16px 0;display:grid;grid-template-columns:1fr auto auto auto}.onboardfooter>span{font-size:13px;white-space:nowrap}.onboardfooter>.btn{min-width:120px}.onboardfooter .textbtn{font-size:13px;max-width:110px}
.reactiontabs button{font-size:13px;min-height:44px}.preflabel{font-size:14px}.settingsrow{min-width:0}.settingsrow>span{min-width:0;overflow-wrap:anywhere}.settingsrow .textbtn{flex-shrink:0}
.tourcard{padding:20px 24px 24px}.tourcard p{font-size:15px;color:var(--color-muted)}.tourcard h2{font-size:24px}.tourmeta{font-size:13px}.tourmeta button{width:44px;height:44px;font-size:27px}.tourprogress button{height:30px}.touractions .btn,.touractions .textbtn{min-height:44px;font-size:14px}
.toast{line-height:1.5;max-width:min(480px,calc(100vw - 32px));font-size:14px;padding:12px 18px}.toast button{min-height:36px;font-weight:600}
.connectionstatus{position:static;max-width:1120px;margin:0 auto;padding:0 0 24px;background:none;border:0;font-size:12px;line-height:1.6;color:var(--color-muted);text-align:left;pointer-events:auto}
body:has(.modalback) .connectionstatus{visibility:hidden}#backendTask{font-size:14px;max-width:360px}.sources{font-size:12px;color:var(--color-muted)}.sources a{text-decoration:underline;color:var(--color-link)}
.landingintro>small,.landingeyebrow,.landingmeta,.landingdemotop,.landingdemohint{font-size:13px;color:var(--color-muted)}.landingmoods button{font-size:13px;min-height:44px;padding:10px 14px;color:var(--color-muted)}.landingresult p{font-size:14px;color:var(--color-muted)}.landingresult .textbtn{font-size:13px;color:var(--color-link)}.landingfeatures p{font-size:14px;color:var(--color-muted)}.featurestep{color:var(--color-link);font-size:13px}.landingfooter small{font-size:12px;color:var(--color-muted)}.landingdemo .btn.wide{font-size:14px;min-height:48px}.landingintro h1 span{color:var(--color-link)}
@media(max-width:1200px){.connectionstatus{margin:0 32px}.themegrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:901px) and (max-width:1100px){.appheader{gap:20px}.nav{gap:14px}.nav button{font-size:13px}.searchbar{width:210px}.shelf{grid-template-columns:repeat(4,minmax(0,1fr))}.shelf .card:nth-child(n+5){display:none}}
@media(max-width:900px){
 .appheader{height:76px;padding:0 24px;gap:24px;border-bottom:1px solid var(--color-border)}.globaltools{flex:1;justify-content:flex-end;gap:12px}.searchbar{width:min(100%,300px);max-width:300px}
 .appheader .nav{position:fixed;bottom:0;left:0;right:0;height:calc(72px + env(safe-area-inset-bottom));padding:6px 8px calc(6px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:var(--color-glass);backdrop-filter:blur(18px);border-top:1px solid var(--color-border);z-index:30}
 .nav button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:56px;padding:4px;font-size:12px;color:var(--color-muted);border-radius:12px}.nav svg{display:block;width:23px;height:23px}.nav button.active{background:var(--color-surface-subtle);color:var(--color-link);font-weight:600}
 .workspace{padding:28px 24px 24px}.connectionstatus{margin:0 24px;padding-bottom:calc(96px + env(safe-area-inset-bottom))}
 .resultrow{grid-template-columns:80px minmax(0,1fr);gap:16px 20px}.resultrow>.poster{grid-row:1/3}.resultrow .metrics{grid-column:2}.resultrow>.row{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.resultrow .btn{min-height:44px;font-size:13px}.resultrow .textbtn{font-size:13px}
 body:has(.onboard) .nav{display:none}.onboardfooter{bottom:0;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.workspace:has(.onboard){padding-bottom:0}body:has(.onboard) .connectionstatus{display:none}
 .toast{bottom:calc(88px + env(safe-area-inset-bottom))}body:has(.onboard) .toast{bottom:155px}#backendTask{bottom:calc(88px + env(safe-area-inset-bottom))}
 body.guest .connectionstatus{padding-bottom:24px}body.guest .workspace{padding-bottom:24px}
}
@media(max-width:600px){
 body{font-size:15px}.appheader{height:72px;padding:0 20px;gap:16px}.brand{font-size:24px}.globaltools{gap:10px}.searchbar{max-width:none;min-width:0}.searchbar input{font-size:16px;padding:10px 12px;min-height:44px}.accountbutton{flex-shrink:0;min-width:40px}
 .workspace{padding:24px 20px}.heading{gap:12px;flex-wrap:wrap;margin:0 0 24px}.heading h1{font-size:29px;letter-spacing:-.8px}.heading p{font-size:14px}.heading:has(.howworks){align-items:center}.heading:has(.howworks) h1{font-size:27px}.howworks{font-size:12px;padding:10px 12px}.heading .btn{font-size:13px;min-height:44px;padding:10px 14px}
 .choosebutton{padding:20px;font-size:17px;line-height:1.4;gap:16px}.choosebutton span{flex-shrink:0}.homeactions{gap:10px;margin-top:12px}.homeactions button{padding:16px 8px;gap:10px;min-height:108px}.homeactions b{font-size:12px;white-space:normal;line-height:1.4;max-width:100px}.homeactions svg{width:24px;height:24px}
 .tasteentry{padding:20px;margin:22px 0 30px}.tasteentry h2{font-size:19px}.tasteentry p{font-size:14px}.hometaste .tasteentryactions{gap:12px;margin-top:14px}.hometaste .btn{font-size:13px;min-height:44px;padding:10px 14px}.hometaste .textbtn{font-size:14px}
 .homesection .sectiontop{gap:4px;margin-bottom:16px}.homesection h2{font-size:23px}.shelfcontrols .textbtn,.refreshshelf{font-size:14px;min-height:44px;padding:8px 0}.homeshelf.shelf{gap:14px;padding:0 20px 12px;scroll-padding-inline:20px}.homeshelf.shelf .homecard{flex-basis:180px;border-radius:16px}.homecardbody{padding:14px 12px 8px}.homecard h3{font-size:15px}.homecard .cardactions button,.homeshelf.shelf .cardactions button{font-size:12px;min-height:44px;padding:9px 4px}.homecard p,.homecardratings,.themegrid .homecardratings{font-size:12px}.homecard .cardhide{font-size:12px;min-height:44px}
 .themetiles{gap:12px}.themetile{padding:18px 16px;min-height:190px}.themetitle{font-size:16px}.themedesc,.themelink{font-size:13px}.themegrid{gap:16px 12px}.themegrid .homecardbody{padding:12px 10px 6px}.themegrid .homecard .cardactions{grid-template-columns:1fr}.themegrid .card h3{font-size:14px}
 .chip,.deck>.row .chip{font-size:14px;min-height:44px;padding:10px 15px}.compactpage{margin-top:0}.compactpage .heading{margin-bottom:28px}.formsection h3{font-size:16px}.pickwish label{font-size:15px;align-items:center;flex-wrap:wrap;gap:4px}.pickwish label span{font-size:12px}.pickwish textarea{font-size:16px}.noveltychoice .chips{display:grid;grid-template-columns:1fr 1fr}.noveltychoice .chip{font-size:13px;padding:10px 12px}
 .deck{max-width:440px}.discoverycard{position:relative;display:block;padding:0;border-radius:20px}.discoverycard>.poster{position:absolute;top:20px;left:20px;width:100px;height:150px;min-height:0;aspect-ratio:2/3;border-radius:10px}.discoverycard .poster img{object-fit:cover;object-position:center}.discoverycopy{padding:20px}.discoveryintro{padding-left:118px;min-height:150px;display:flex;flex-direction:column;justify-content:center}.discoverycopy h2{font-size:23px;line-height:1.25;overflow-wrap:anywhere}.discoveryintro>small{font-size:13px}.discoverycopy p{font-size:14px;margin:18px 0}.discoverycopy .pill{font-size:12px}.discoverycopy>.chips{gap:7px}.deckactions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.deckactions .btn{font-size:13px;padding:12px 10px;min-height:48px}.deckactions [data-action="swipe-save"]{grid-column:1/-1;grid-row:1}.hint{font-size:12px}.deck>.row{margin-bottom:16px!important}
 .listtypes button{font-size:14px}.splitlists{gap:12px}.splitlists .listcard{padding:16px;min-height:200px}.listcardtitle h3{font-size:15px;line-height:1.4}.listcardtitle small{font-size:12px}.listcover{height:88px}.listcover>span{height:88px;width:59px}.librarysearch input{font-size:16px}.librarytabs{gap:8px;margin:20px 0}.librarytabs .chip{font-size:12px;padding:10px 12px}.libraryidentity h3{font-size:16px}.libraryidentity p,.libraryidentity small{font-size:13px}.libraryactions .btn{font-size:13px;min-height:44px}.librarymatch{gap:14px;grid-template-columns:60px minmax(0,1fr)}.libraryempty h2{font-size:21px}.libraryempty p{font-size:14px}
 .resultrow{grid-template-columns:72px minmax(0,1fr);gap:14px 16px;padding:24px 0}.resultrow h3{font-size:18px}.resultrow p{font-size:14px}.resultrow .metrics{font-size:13px}.resultrow>.row{justify-content:flex-start}.resultrow .btn{font-size:13px;min-height:44px;padding:10px 14px}.resultrow .textbtn{font-size:13px;padding:8px}.morerecommendations{padding:22px 18px}.morerecommendations label{font-size:14px;flex-wrap:wrap}.morerecommendations label span{font-size:12px}.morerecommendations textarea{font-size:16px}.morerecommendations>.btn{width:100%}
 .modalback{padding:8px 8px 0;align-items:flex-end}.modal{padding:24px 20px calc(24px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;max-height:calc(100dvh - 24px)}.modal h2{font-size:24px}.modal p{font-size:14px}.detail{grid-template-columns:88px minmax(0,1fr);gap:16px;align-items:start}.detailposter{grid-column:1}.detailmain{display:contents}.detailintro{grid-column:2;align-self:center;min-width:0}.detail h2{font-size:24px;margin:0 0 8px!important}.detailintro>small{font-size:12px;overflow-wrap:anywhere}.detail .chips,.detail #detailDescription,.detail dl{grid-column:1/-1;margin:0}.detail .chips{gap:7px}.detail .pill{font-size:12px;padding:5px 10px}.detail #detailDescription{font-size:15px;line-height:1.65}.detail dl{font-size:14px;gap:12px 16px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr}.detail .notice{padding:18px;margin:4px 0 18px}.detail .notice p{font-size:14px}.detailbuttons{display:grid;grid-template-columns:1fr}.detailbuttons .btn{font-size:14px;min-height:48px}.detailwide>.row .textbtn{font-size:14px}.reactions button{font-size:14px;min-height:102px}.authcontent input{font-size:16px}.authcontent .authdemo{font-size:12px}.authcontent>p{font-size:14px}.authcontent .btn.wide{min-height:48px}
 .onheading h1{font-size:30px}.onheading p{font-size:14px;line-height:1.6}.onheading{margin-bottom:24px}.ontop,.ontop .textbtn{font-size:13px}.onboard .steps.namedsteps{gap:8px;margin:0 auto 24px}.namedsteps button{font-size:11px;height:58px;padding:8px 0 18px;line-height:1.4}.onfilters input,.onboard #onSearch{font-size:16px}.onfilters .chip{font-size:13px}.bubblefield{gap:28px 10px}.bubble>b{font-size:12px;line-height:1.4}.bubble>small{font-size:11px}.onboardfooter{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;padding:12px 0 calc(12px + env(safe-area-inset-bottom));background:var(--color-surface);box-shadow:0 -12px 24px rgb(var(--shadow-rgb) / 1.000)}.onboardfooter>span{grid-column:1;grid-row:1;font-size:12px}.onboardfooter [data-action="discard-draft"]{grid-column:2;grid-row:1;justify-self:end;min-height:36px;max-width:none;font-size:12px}.onboardfooter [data-action="on-next"]{grid-column:2;grid-row:2}.onboardfooter [data-action="commit-draft"]{grid-column:1;grid-row:2}.onboardfooter>.btn{min-width:0;min-height:48px;font-size:13px;padding:10px;line-height:1.4}.ratingidentity b{font-size:15px}.ratingidentity small{font-size:12px}.inline-reactions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.inline-reactions button{font-size:13px;min-height:70px;padding:10px 8px;display:flex;align-items:center;justify-content:center;gap:10px}.inline-reactions button span{font-size:23px;margin:0;flex-shrink:0}.preferenceeditor{padding:18px;margin-bottom:24px}.prefentry input{font-size:16px;padding:12px}.prefentry .btn{min-width:48px}.prefhints .chip{font-size:13px}.segmented{display:flex}.segmented button{flex:1;font-size:14px}.preference{font-size:13px}.selectedprefs .small{font-size:13px}.reactiontabs button{font-size:13px}.preflabel{font-size:14px}
 .tourcard{padding:16px 20px 22px;max-width:calc(100vw - 32px);width:350px}.tourcard p{font-size:14px}.tourcard h2{font-size:23px}.touractions .textbtn{font-size:14px}.tourmeta{font-size:12px}.tourmeta button{width:44px;height:44px}.touractions{margin-top:20px}
 .connectionstatus{margin:0 20px;font-size:12px;padding-top:0;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.footnote{font-size:12px;margin-top:32px}.toast{font-size:13px;max-width:calc(100vw - 24px)}
 body.guest .workspace{padding:20px}.landingintro h1{font-size:39px}.landingintro>p{font-size:16px;line-height:1.65}.landingintro>small{font-size:12px}.landingintro .btn{font-size:15px}.landingdemo{padding:22px 20px}.landingmoods{gap:8px}.landingmoods button{font-size:12px;padding:10px 12px;min-height:44px}.landingresult{grid-template-columns:82px minmax(0,1fr);gap:16px}.landingresult p{font-size:13px}.landingmeta{font-size:12px}.landingdemotop{font-size:12px}.landingdemohint{font-size:12px}.landingresult .textbtn{font-size:13px}.landingdemo .btn.wide{font-size:14px}.landingfeatures p{font-size:14px}.landingbottom{align-items:flex-start;flex-direction:column;gap:6px}.landingbottom p{font-size:14px}.landingbottom button{font-size:14px}.landingfooter small{font-size:12px}
}
@media(max-width:375px){.appheader{gap:12px;padding:0 16px}.workspace{padding-left:16px;padding-right:16px}.searchbar input{font-size:16px}.homeactions{gap:8px}.homeactions b{font-size:12px}.hometaste .tasteentryactions{gap:8px}.hometaste .textbtn{font-size:13px}.discoverycard>.poster{width:88px;height:132px;left:16px;top:16px}.discoverycopy{padding:16px}.discoveryintro{padding-left:104px;min-height:132px}.discoverycopy h2{font-size:22px}.themetile{padding:16px 13px}.landingintro h1{font-size:35px}.bubblefield{gap:24px 8px}.namedsteps button{font-size:11px}.settingsrow{gap:12px}.settingsrow>span{font-size:14px}}
@media(hover:hover){.btn.secondary:hover{background:var(--color-surface-subtle)}.chip:hover{background:var(--color-surface-subtle)}.chip.on:hover{background:var(--color-surface-subtle)}.textbtn:hover{color:var(--accent)}.cardhide:hover{background:var(--color-surface-subtle)}.onboardfooter .btn:hover{transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Narrow-screen checks and final field alignment. */
.formsection>label.checkrow{display:flex;gap:12px;align-items:center}
.checkrow input{margin:0;flex:0 0 20px}
.prefentry{align-items:flex-end}.prefentry textarea{flex:1;min-width:0;min-height:100px;resize:vertical;font-size:15px;background:var(--color-surface);padding:12px 14px}
.homecard .cardactions button{white-space:nowrap;padding-inline:3px}
.authcontent form .btn.wide{margin-top:16px}
@media(max-width:600px){.prefentry textarea{font-size:16px;min-height:112px}.profilegrid{grid-template-columns:repeat(2,minmax(0,1fr))}.profilegrid .card h3{font-size:14px}.profilegrid .card p{font-size:12px}.profilegrid .cardactions button{font-size:12px;min-height:44px}.profilegrid .cardactions{flex-direction:row}.profileStats{flex-wrap:wrap;gap:20px}}
@media(max-width:375px){.shelf,.reactiontabs{margin-inline:-16px;padding-inline:16px}.homeshelf.shelf{padding-inline:16px}.homeactions b{font-size:11px}.listgrid.splitlists{grid-template-columns:1fr}.splitlists .listcard{min-height:160px;flex-direction:row;align-items:center;gap:20px}.splitlists .listcover{flex-shrink:0;width:94px;overflow:hidden}.listcardtitle h3{font-size:15px}.heading:has(.howworks){align-items:flex-start}.heading:has(.howworks) .howworks{margin-top:0}}

/* Persistent movie selection loader */
#backendTask{position:fixed;right:24px;bottom:100px;z-index:80;width:min(390px,calc(100vw - 32px));padding:28px;background:var(--color-surface-subtle);color:var(--color-ink);border:1px solid var(--color-border);border-radius:24px;box-shadow:0 12px 40px rgb(var(--shadow-rgb) / 0.078);text-align:center}
#backendTask.cinema-loader-inline{position:relative;inset:auto;z-index:auto;width:100%;box-sizing:border-box;margin:24px 0 18px;padding:34px 20px;box-shadow:none}
.cinema-loader-art{position:relative;width:112px;height:94px;margin:0 auto 22px}
.cinema-loader-art i{position:absolute;left:27px;top:8px;width:58px;height:78px;border:1px solid var(--color-primary-border);border-radius:11px;background:var(--color-surface-subtle);transform:translateX(-24px) rotate(-17deg);animation:cinema-float 3.6s ease-in-out infinite}
.cinema-loader-art i:nth-child(2){transform:translateX(24px) rotate(17deg);background:var(--color-surface-subtle);animation-delay:-1.2s}
.cinema-loader-art i:nth-child(3){display:grid;place-items:center;transform:translateY(-4px);background:var(--color-surface);box-shadow:0 5px 15px rgb(var(--shadow-rgb) / 0.102);animation-delay:-2.4s}
.cinema-loader-art span{font-style:normal;font-size:32px;color:var(--color-link)}
#backendTask h2{font-size:23px;line-height:1.25;letter-spacing:-.5px;margin:0 0 12px}
#backendTask p{font-size:15px;line-height:1.5;margin:0;color:var(--color-link)}
.cinema-loader-note{display:block;margin-top:9px;font-size:13px;line-height:1.5;color:var(--color-muted)}
.cinema-loader-track{height:3px;width:150px;border-radius:4px;background:var(--color-surface-subtle);margin:24px auto 0;overflow:hidden}
.cinema-loader-track span{display:block;height:100%;width:42%;border-radius:inherit;background:var(--color-primary);animation:cinema-travel 2.4s ease-in-out infinite}
@keyframes cinema-float{50%{translate:0 -7px}}
@keyframes cinema-travel{0%{transform:translateX(-110%)}100%{transform:translateX(350%)}}
@media(max-width:600px){#backendTask{right:16px;bottom:92px;padding:20px}#backendTask h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.cinema-loader-art i,.cinema-loader-track span{animation:none}.cinema-loader-track span{margin:auto}}

.pickyear label{display:block;margin-bottom:14px;font-weight:600}.pickyear input{max-width:240px}.pickyear .small{margin-top:10px}

/* Compact, paginated recommendations */
.compact-results{max-width:1040px;margin:auto;outline:none}.compact-results .pagehead{margin-bottom:20px}.compact-wish{margin:0 0 16px;color:var(--muted)}.compact-results-count{font-size:14px;color:var(--color-muted);margin-bottom:12px}
.compact-rec{display:grid;grid-template-columns:92px minmax(0,1fr);gap:20px;padding:22px 0;border-top:1px solid var(--color-border)}.compact-rec>.poster{width:92px;height:138px;border-radius:12px;overflow:hidden}.compact-rec-body h2{font-size:21px;line-height:1.3;margin:0 0 5px}.compact-rec-body h2 button{text-align:left}.compact-rec-meta{font-size:13px;color:var(--color-muted);margin:0 0 10px}.compact-rec-description,.compact-rec-reason{font-size:15px;line-height:1.5;margin:6px 0;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;-webkit-line-clamp:2}.compact-rec-reason{color:var(--color-link)}.compact-rec-details{font-size:14px;margin:9px 0}.compact-rec-details summary{cursor:pointer;color:var(--color-link)}.compact-rec-details p{font-size:15px;line-height:1.55}.compact-rec-actions{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-top:14px}.compact-rec-actions .btn,.compact-rec-actions .textbtn{font-size:13px;min-height:40px;padding:9px 13px}.compact-rec-actions .textbtn:last-child{color:var(--color-muted)}.rec-pagination{display:flex;align-items:center;justify-content:center;gap:24px;padding:22px 0;border-top:1px solid var(--color-border)}.rec-pagination span{font-size:14px;color:var(--color-muted)}.rec-pagination button:disabled{opacity:.35;cursor:default}.compact-more{border:1px solid var(--color-border);border-radius:16px;padding:18px 22px;margin:12px 0 30px}.compact-more summary{font-weight:600;cursor:pointer}.compact-more p,.compact-more label{font-size:14px}.compact-more textarea{min-height:80px;margin:12px 0}.compact-more .btn{font-size:14px}
@media(max-width:600px){.compact-rec{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:18px 0}.compact-rec>.poster{width:64px;height:96px}.compact-rec-body h2{font-size:19px}.compact-rec-meta{font-size:12px}.compact-rec-actions{margin-left:-76px;margin-top:18px}.compact-rec-actions .btn,.compact-rec-actions .textbtn{padding:9px 11px}.rec-pagination{gap:12px}.rec-pagination .btn{padding:10px 12px}.compact-more{padding:16px}.compact-rec-description,.compact-rec-reason{font-size:14px}}

/* Full-screen loading state; dialog also blocks keyboard interaction behind it. */
body:has(#backendTask[open]){overflow:hidden}
#backendTask[open]{position:fixed;inset:0;display:grid;place-items:center;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;box-sizing:border-box;margin:0;padding:24px;border:0;border-radius:0;box-shadow:none;background:var(--color-surface);color:var(--color-ink);overflow:auto;text-align:center}
#backendTask::backdrop{background:var(--color-surface)}
#backendTask .cinema-loader-center{width:min(100%,460px);margin:auto}
#backendTask h2{font-size:clamp(24px,4vw,34px);line-height:1.2;margin:0 0 16px}
#backendTask .cinema-loader-art{margin-bottom:32px}
#backendTask .cinema-loader-note{margin-top:14px}
#backendTask .cinema-loader-track{width:180px;margin-top:30px}
.rec-next-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:24px 0 36px}.rec-next-actions .btn{min-width:180px;font-size:15px}@media(max-width:480px){.rec-next-actions .btn{width:100%}}

/* Pick: experiences and story genres, with secondary constraints grouped below. */
.pick-simple{max-width:760px}.pick-simple .pick-block{margin:0 0 26px}.pick-simple h3{font-size:17px;margin:0 0 12px}.pick-simple .pick-help{font-size:13px;line-height:1.5;color:var(--color-muted);margin:0 0 12px}.pick-simple .chips{gap:8px}.pick-simple .chip,.pick-simple .pill{font-size:14px;padding:10px 16px}.pick-simple .pickwish label{font-size:17px;margin-bottom:12px}.pick-simple .pickwish textarea{min-height:90px;font-size:15px;padding:16px}.pick-options{border:1px solid var(--color-border);border-radius:16px;margin:0 0 24px;padding:16px 20px}.pick-options summary{cursor:pointer;font-size:15px;font-weight:600}.pick-options-body{padding-top:20px;display:grid;gap:20px}.pick-options .checkrow{margin:0;font-size:14px}.pick-options .pickyear label{font-size:14px;margin-bottom:8px}.pick-options .pickyear input{font-size:15px;padding:12px;max-width:200px}.pick-options .pickyear .pick-help{margin:8px 0 0}.pick-previous{margin-top:14px}.pick-simple .picksubmit{font-size:16px;min-height:52px}.pick-simple .pagehead{margin-bottom:28px}@media(max-width:600px){.pick-simple .pick-block{margin-bottom:22px}.pick-options{padding:16px}.pick-simple .chip,.pick-simple .pill{font-size:13px;padding:10px 13px}}
.pick-simple .heading{margin-bottom:28px;align-items:flex-start}.pick-simple .heading h1{font-size:36px;line-height:1.2}.pick-simple .heading p{font-size:15px;margin-top:10px;line-height:1.5}.pick-simple .pickclose{width:40px;height:40px;font-size:28px;flex-shrink:0}@media(max-width:600px){.pick-simple .heading h1{font-size:28px}}
.compact-rec.is-expanded .compact-rec-description,.compact-rec.is-expanded .compact-rec-reason{display:block;-webkit-line-clamp:unset;overflow:visible}
.compact-rec-toggle{font-size:14px;color:var(--color-link);padding:6px 0;margin-top:4px}.compact-rec-sources[hidden]{display:none}
.pick-categories{display:grid;gap:12px}.pick-categories h3,.pick-categories .pick-help{margin:0}

/* Personal ratings stay visible before scrolling past tall posters. */
.library-rated-card{position:relative}.personal-rating-badge{position:absolute;top:12px;left:12px;right:12px;z-index:1;max-width:calc(100% - 24px);width:fit-content;padding:8px 12px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);color:var(--color-link);font-size:13px;font-weight:600;line-height:1.35;text-align:left;box-shadow:0 2px 10px rgb(var(--shadow-rgb) / 0.125)}.personal-rating-badge:focus-visible{outline:1px solid var(--accent);outline-offset:1px}

.library-rated-card{display:flex;flex-direction:column;min-width:0}
.library-rated-card>.poster{flex-shrink:0}
.library-rated-card .cardactions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:auto;padding-top:9px}
.library-rated-card .cardactions button{display:flex;align-items:center;justify-content:center;width:100%;height:56px;min-width:0;padding:8px 6px;white-space:normal;text-align:center;line-height:1.3}
/* Compact personal discovery with touch-friendly actions. */
.discovery-page{max-width:680px;margin:0 auto}.discovery-page .deck{max-width:560px;margin:0 auto}.deck-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.deck-toolbar .chips{gap:6px}.deck-toolbar .chip{padding:9px 14px;font-size:13px}.deck-count{font-size:12px;color:var(--muted);white-space:nowrap}
.discovery-page .discoverycard{position:relative;display:block;padding:22px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:24px;box-shadow:0 8px 28px rgb(var(--shadow-rgb) / 0.031);touch-action:pan-y;transition:transform .18s ease;overflow:hidden}.discovery-page .discoverycard.dragging{transition:none;user-select:none;cursor:grabbing}.deck-identity{display:grid;grid-template-columns:112px minmax(0,1fr);gap:20px;align-items:center}.discovery-page .deck-identity>.poster{position:static;width:112px;height:168px;min-height:0;aspect-ratio:2/3;border-radius:12px}.discovery-page .discoveryintro{padding:0;min-height:0;display:block}.discovery-page .discoveryintro h2{font-size:25px;line-height:1.18;margin:8px 0 12px;overflow-wrap:anywhere}.discovery-page .deck-kicker,.discovery-page .deck-rating{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.discoveryintro .chips{margin-top:10px}.discoveryintro .pill{font-size:11px;padding:4px 8px}.discovery-page .discoverycopy{padding:0}.deck-fit{background:var(--color-surface-subtle);border-radius:14px;padding:12px 14px;margin-top:18px}.deck-fit>span{font-size:11px;font-weight:600;color:var(--color-link)}.discovery-page .deck-fit p{margin:5px 0 0;font-size:14px;line-height:1.5;color:var(--color-link);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.discovery-page .deck-synopsis{font-size:14px;line-height:1.55;margin:14px 0 8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.deck-details{font-size:12px;min-height:40px}.discovery-page .deckactions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0 0}.discovery-page .deckactions button{grid-column:auto;grid-row:auto;min-height:48px;padding:10px 8px;font-size:13px;border-radius:14px;line-height:1.3}.discovery-page .deckactions .textbtn{min-height:42px;color:var(--color-muted)}.deck-gesture-hint{text-align:center;font-size:11px;color:var(--color-muted);margin:10px 0}.deck-undo{text-align:center;margin:8px 0 16px}.deck-undo .textbtn{min-height:40px;font-size:12px}.swipe-feedback{position:absolute;z-index:2;top:18px;padding:9px 12px;border-radius:10px;background:var(--color-surface);font-size:13px;font-weight:600;box-shadow:0 2px 16px rgb(var(--shadow-rgb) / 0.125);pointer-events:none}.swipe-feedback-save{right:18px;color:var(--color-link);opacity:var(--swipe-save,0)}.swipe-feedback-hide{left:18px;color:var(--color-danger);opacity:var(--swipe-hide,0)}
@media(max-width:600px){.discovery-page .discoverycard{padding:16px;border-radius:20px}.deck-identity{grid-template-columns:88px minmax(0,1fr);gap:14px}.discovery-page .deck-identity>.poster{width:88px;height:132px}.discovery-page .discoveryintro h2{font-size:21px}.deck-count{display:none}.deck-toolbar .chips{width:100%}.deck-toolbar .chip{flex:1}.discovery-page .deck-fit{margin-top:14px}.discovery-page .deck-fit p,.discovery-page .deck-synopsis{font-size:13px}.discovery-page .deckactions button{font-size:12px}.deck-gesture-hint{font-size:10px}}
@media(prefers-reduced-motion:reduce){.discovery-page .discoverycard{transition:none}}
/* Discovery is a single-screen decision surface; full text is in details. */
.workspace:has(.discovery-page){padding-top:12px;padding-bottom:12px}
.workspace:has(.discovery-page)>.footnote,body:has(.discovery-page)>.connectionstatus{display:none}
.discovery-page{--deck-height:calc(100dvh - 110px);height:var(--deck-height);display:flex;flex-direction:column;max-width:560px}
.discovery-page>.heading{flex:none;margin:0 0 10px;padding:0}
.discovery-page>.heading h1{font-size:24px;line-height:1.2;margin:0}
.discovery-page>.heading p{display:none}
.discovery-page .deck{width:100%;max-width:560px;flex:1;min-height:0;display:flex;flex-direction:column}
.discovery-page .deck-toolbar{flex:none;margin-bottom:10px}
.discovery-page .deck-toolbar .chip{padding:7px 14px;min-height:36px}
.discovery-page .discoverycard{flex:1;min-height:0;padding:16px;display:flex;flex-direction:column;justify-content:center}
.discovery-page .deck-identity{grid-template-columns:76px minmax(0,1fr);gap:14px}
.discovery-page .deck-identity>.poster{width:76px;height:114px}
.discovery-page .discoveryintro h2{font-size:22px;margin:5px 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.discovery-page .discoveryintro .chips{display:none}
.discovery-page .deck-fit{margin-top:10px;padding:9px 12px}
.discovery-page .deck-fit p{font-size:13px;line-height:1.4;-webkit-line-clamp:2}
.discovery-page .deck-synopsis{margin:9px 0 0;font-size:13px;line-height:1.4;-webkit-line-clamp:2}
.discovery-page .deck-details{min-height:32px;padding:6px 0}
.discovery-page .deckactions{flex:none;margin-top:10px;gap:4px 8px}
.discovery-page .deckactions button{min-height:44px;padding:8px;font-size:12px}
.discovery-page .deckactions .textbtn{min-height:36px}
.discovery-page .deck-gesture-hint{display:none}
.discovery-page .deck-undo{flex:none;margin:3px 0 0}
.discovery-page .deck-undo .textbtn{min-height:30px;padding:4px 8px}
@media(max-width:900px){.discovery-page{--deck-height:calc(100dvh - 172px - env(safe-area-inset-bottom))}.workspace:has(.discovery-page){padding-top:10px;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.discovery-page>.heading h1{font-size:21px}}
@media(max-height:740px){.discovery-page .deck-synopsis{display:none}.discovery-page .deck-identity{grid-template-columns:60px minmax(0,1fr)}.discovery-page .deck-identity>.poster{width:60px;height:90px}.discovery-page .discoveryintro h2{font-size:20px}.discovery-page .discoverycard{padding:12px}.discovery-page .deck-fit{margin-top:8px}.discovery-page .deck-rating{font-size:11px}}
@media(max-height:580px){.discovery-page>.heading{display:none}.discovery-page .deck-fit{display:none}.discovery-page .discoverycard{justify-content:flex-start}.discovery-page .deck-identity>.poster{height:72px;width:48px}.discovery-page .deck-identity{grid-template-columns:48px minmax(0,1fr)}}
/* Very short windows retain scroll access rather than clipping actions. */
@media(max-height:440px){.discovery-page{height:auto;min-height:var(--deck-height)}.discovery-page .discoverycard{flex:none}}

/* Compact shelf ratings: no clipped vote counts, aligned actions across cards. */
.homecardbody{min-width:0}
.homecardratings{display:flex;flex-direction:column;gap:3px;white-space:normal;min-height:38px;line-height:1.45;overflow-wrap:anywhere}
.homecardratings .rating-value{color:var(--color-muted);margin:0}
.homecardratings .rating-value strong{color:var(--color-ink);font-weight:600}
.homecardratings .rating-votes{color:var(--color-muted);margin:0;font-size:10px}

/* Home recommendations form one continuous, accessible horizontal shelf. */
.homeshelf.shelf{display:flex;flex-wrap:nowrap;gap:20px;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-x:contain;padding-bottom:12px;scrollbar-width:thin}
.homeshelf.shelf .homecard{display:flex!important;flex:0 0 calc((100% - 100px)/6);min-width:180px;scroll-snap-align:start}
.shelf-arrows{display:flex;gap:8px}.shelf-arrow{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--color-surface-subtle);font-size:20px;display:grid;place-items:center}
.shelf-arrow:disabled{opacity:.3;cursor:default}.shelf-arrow:focus-visible,.homeshelf:focus-visible{outline:1px solid var(--accent);outline-offset:1px}
@media(max-width:900px){.homeshelf.shelf .homecard{flex-basis:190px}.homeshelf.shelf{gap:14px}}
@media(max-width:600px){.homeshelf.shelf .homecard{flex-basis:180px}.shelfcontrols{justify-content:space-between}}

/* Wordmark sized for the new product name. */
.appheader .brand{font-size:clamp(20px,2.3vw,29px);letter-spacing:-1px;white-space:nowrap;flex-shrink:0}

@media(hover:hover) and (pointer:fine){.homeshelf[data-home-type]{cursor:grab;user-select:none}.homeshelf[data-home-type] img{-webkit-user-drag:none}.homeshelf.is-grabbing,.homeshelf.is-grabbing *{cursor:grabbing!important}.homeshelf.is-grabbing{scroll-snap-type:none;scroll-behavior:auto}}

.preferencegroup{margin-top:24px}.preferencegroup h3{font-size:16px;margin:0 0 10px}.preferencegroup .small{margin:0 0 12px}.preferencegroup .chips{gap:8px}.preferencegroup .chip{font-size:14px;padding:10px 15px}

.custom-pref-entry{display:flex;gap:10px;align-items:center;margin-top:12px}.custom-pref-entry input{min-width:0;flex:1;max-width:420px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.custom-pref-entry button{white-space:nowrap}.custom-pref-chips{margin-top:8px}@media(max-width:600px){.custom-pref-entry{flex-wrap:wrap}.custom-pref-entry input{flex-basis:100%;max-width:none}}

/* Cinema intermission: status, editorial fact and optional exit. */
#backendTask[open]{background:radial-gradient(ellipse at 50% 15%,var(--color-surface-subtle) 0,transparent 55%),var(--color-surface);padding:28px 20px}
#backendTask .cinema-loader-center{width:min(100%,560px);display:grid;gap:22px}
.cinema-projector{width:260px;max-width:70%;margin:0 auto}
.cinema-projector svg{display:block;width:100%;height:auto}
.projector-reel{transform-box:fill-box;transform-origin:center;animation:projector-turn 10s linear infinite}.reel-two{animation-direction:reverse;animation-duration:13s}
.projector-beam{animation:projector-light 4s ease-in-out infinite}.projector-spark{animation:cinema-float 4s ease-in-out infinite}
@keyframes projector-turn{to{transform:rotate(360deg)}}@keyframes projector-light{50%{opacity:.45}}
.cinema-eyebrow{display:block;font-size:10px;font-weight:650;letter-spacing:1.8px;color:var(--color-link);margin-bottom:12px}
#backendTask h2{font-size:clamp(25px,4vw,34px);letter-spacing:-.8px;margin:0 0 12px}
#backendTask .cinema-loader-stage{font-size:14px;line-height:1.5;min-height:42px;max-width:400px;margin:auto;color:var(--color-muted)}
#backendTask .cinema-loader-progress{margin-top:-12px}
#backendTask .cinema-loader-track{width:120px;height:3px;margin:0 auto 10px}
#backendTask .cinema-loader-elapsed{font-size:12px;color:var(--color-muted);font-variant-numeric:tabular-nums}
.cinema-fact{background:var(--color-surface);border:1px solid var(--color-border);border-radius:22px;padding:22px 26px;text-align:left;box-shadow:0 8px 30px rgb(var(--shadow-rgb) / 0.063)}
.cinema-fact-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.cinema-fact-category{font-size:12px;font-weight:600;color:var(--color-link);background:var(--color-surface-subtle);padding:5px 10px;border-radius:20px}
.cinema-fact-caption{font-size:11px;color:var(--color-muted)}
#backendTask .cinema-fact-text{font-size:17px;line-height:1.6;color:var(--color-link);min-height:110px;text-wrap:pretty}
.cinema-fact-controls{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding-top:10px;border-top:1px solid var(--color-border)}
.cinema-fact-controls .textbtn{min-height:40px;padding:6px 0;font-size:13px;color:var(--color-link)}
#backendTask .cinema-loader-exit .btn{font-size:14px;min-height:44px;padding:10px 22px}
#backendTask .cinema-loader-exit p{font-size:12px;color:var(--color-muted);margin:10px 0 0;line-height:1.5}
@media(max-width:600px){#backendTask[open]{padding:20px 16px}#backendTask .cinema-loader-center{gap:18px}.cinema-projector{width:210px}.cinema-fact{padding:18px 20px;border-radius:18px}#backendTask .cinema-fact-text{font-size:16px;min-height:145px}.cinema-fact-caption{font-size:10px}.cinema-eyebrow{font-size:9px;letter-spacing:1.5px}}
@media(max-height:740px){#backendTask .cinema-loader-center{gap:12px}.cinema-projector{width:170px}#backendTask .cinema-loader-stage{min-height:0}#backendTask .cinema-loader-progress{margin-top:0}.cinema-fact{padding-block:14px}.cinema-fact-top{margin-bottom:10px}#backendTask .cinema-fact-text{min-height:100px}.cinema-fact-controls{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.projector-reel,.projector-beam,.projector-spark{animation:none}}

/* Discovery actions: watched/rating is a visible peer to saving. */
.discovery-page .deckactions{gap:8px;margin-top:12px;align-items:stretch}
.discovery-page .deckactions button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:46px;padding:10px 12px;border:1px solid transparent;border-radius:12px;font-size:13px;font-weight:600;line-height:1.35;transition:background-color .15s,border-color .15s,box-shadow .15s}
.discovery-page .deckactions button svg{width:18px;height:18px;flex:none;stroke-width:1.8}
.discovery-page .deckactions button>span[aria-hidden]{font-size:20px;line-height:1;flex:none}
.discovery-page .deckactions .deck-rate{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary-border);box-shadow:0 2px 5px rgb(var(--shadow-rgb) / 0.102)}
.discovery-page .deckactions .deck-save{background:var(--color-inverse);color:var(--color-on-inverse);border-color:var(--color-primary-border)}
.discovery-page .deckactions .deck-hide{background:var(--color-surface-subtle);color:var(--color-muted);border-color:var(--color-border)}
.discovery-page .deckactions .deck-skip{background:var(--color-surface);color:var(--color-muted);border-color:var(--color-border);font-weight:500}
@media(hover:hover){.discovery-page .deckactions .deck-rate:hover{background:var(--color-primary);border-color:var(--color-primary-border)}.discovery-page .deckactions .deck-save:hover{background:var(--color-inverse)}.discovery-page .deckactions .deck-hide:hover{background:var(--color-surface-subtle)}.discovery-page .deckactions .deck-skip:hover{background:var(--color-surface-subtle);border-color:var(--color-border)}}
.discovery-page .deckactions button:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}
.discovery-page .deckactions button:active{box-shadow:inset 0 2px 4px rgb(var(--shadow-rgb) / 0.133)}
.discovery-page .deckactions button:disabled{opacity:.5;cursor:default}
@media(max-width:400px){.discovery-page .deckactions button{font-size:12px;padding:8px;gap:6px;min-height:48px}.discovery-page .deckactions button svg{width:16px;height:16px}}
@media(prefers-reduced-motion:reduce){.discovery-page .deckactions button{transition:none}}

/* Mood cards are editable starting points for the standard picker. */
.theme-entry-help{font-size:14px;line-height:1.6;color:var(--color-muted);margin:-6px 0 20px;max-width:620px}
.themesection .themetile{min-height:170px}
.themesection .themetile:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}
.pick-simple .pickwish textarea{min-height:116px;line-height:1.55}
@media(max-width:600px){.theme-entry-help{font-size:13px}.themesection .themetile{min-height:175px}.themesection .themelink{font-size:12px}.pick-simple .pickwish textarea{font-size:16px;min-height:150px}}

/* Denser results: a short personal reason, with the synopsis available on expansion. */
.compact-results>.heading{margin-bottom:18px;gap:16px}
.compact-results>.heading h1{font-size:clamp(25px,3vw,32px);line-height:1.2}
.compact-results>.heading p{font-size:14px;margin-top:8px}
.compact-results>.heading .btn{min-height:40px;padding:10px 16px;font-size:13px}
.compact-results .compact-results-count{font-size:12px;margin:0 0 10px}
.compact-results .compact-rec{grid-template-columns:72px minmax(0,1fr);gap:16px;padding:16px 0;align-items:start}
.compact-results .compact-rec>.poster{width:72px;height:108px;border-radius:9px}
.compact-results .compact-rec-body{min-width:0}
.compact-results .compact-rec-body h2{font-size:18px;line-height:1.3;margin:0 0 4px}
.compact-results .compact-rec-meta{font-size:12px;line-height:1.5;margin:0 0 6px;overflow-wrap:anywhere}
.compact-results .compact-rec-description{display:none}
.compact-results .compact-rec-reason{font-size:14px;line-height:1.45;margin:0;-webkit-line-clamp:2}
.compact-results .compact-rec.is-expanded .compact-rec-description{display:block;margin:8px 0;font-size:14px;line-height:1.55}
.compact-results .compact-rec.is-expanded .compact-rec-reason{display:block;overflow:visible}
.compact-results .compact-rec-actions{margin:10px 0 0;gap:4px 8px}
.compact-results .compact-rec-actions .btn,.compact-results .compact-rec-actions .textbtn{min-height:36px;padding:7px 10px;font-size:12px;line-height:1.4;border-radius:9px;margin:0}
.compact-results .compact-rec-actions .compact-rec-toggle{color:var(--color-link)}
@media(max-width:600px){.compact-results .compact-rec{grid-template-columns:56px minmax(0,1fr);gap:12px;padding:14px 0}.compact-results .compact-rec>.poster{width:56px;height:84px}.compact-results .compact-rec-body h2{font-size:17px}.compact-results .compact-rec-meta{font-size:11px}.compact-results .compact-rec-reason{font-size:13px}.compact-results .compact-rec-actions{margin-left:-68px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 6px}.compact-results .compact-rec-actions .btn,.compact-results .compact-rec-actions .textbtn{min-height:44px;padding:7px 8px}.compact-results>.heading{flex-wrap:wrap}.compact-results>.heading .btn{min-height:44px}}

/* Film detail: poster-led layout, distinct personal insight and clear actions. */
.modal.film-modal{max-width:820px;padding:36px;border-radius:28px;background:radial-gradient(ellipse at 0 0,var(--color-surface-subtle) 0,transparent 48%),var(--color-surface);box-shadow:0 28px 100px rgb(var(--shadow-rgb) / 0.251);max-height:calc(100dvh - 40px);overscroll-behavior:contain}
.film-modal .close{position:sticky;float:right;top:0;margin:-18px -18px 6px 8px;width:36px;height:36px;background:var(--color-surface);box-shadow:0 2px 14px rgb(var(--shadow-rgb) / 0.082);color:var(--color-link);font-size:25px}
.film-modal .detail{clear:both;grid-template-columns:190px minmax(0,1fr);gap:26px;align-items:start}
.film-modal .detailmain{display:block;min-width:0}
.film-modal .detail-art{aspect-ratio:2/3;overflow:hidden;border-radius:16px;background:var(--color-surface-subtle);box-shadow:0 14px 28px -10px rgb(var(--shadow-rgb) / 0.333);transform:rotate(-2deg)}
.film-modal .detail-art img{display:block;width:100%;height:100%;object-fit:cover}
.film-modal .detailintro .eyebrow{display:flex;gap:9px;align-items:center;color:var(--color-link);font-size:12px;font-weight:650;letter-spacing:.04em;margin:0 0 10px}
.film-modal .detail h2{font-size:32px;line-height:1.12;letter-spacing:-1px;margin:0 0 9px!important}
.film-modal .detailintro>small{font-size:13px;color:var(--color-muted)}
.film-modal .detail .chips{gap:6px;margin:14px 0 0}
.film-modal .detail .chips:empty{display:none}
.film-modal #detailDescription{font-size:14px;line-height:1.65;color:var(--color-link);margin:16px 0}
.film-modal #detailDescription:empty{display:none}
.film-modal #detailFacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 0;padding:0;border:0}
.film-modal .detail-stat{padding:12px 14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;min-width:0}
.film-modal .detail-stat dt{font-size:11px;color:var(--color-muted);margin-bottom:6px}
.film-modal .detail-stat dd{font-size:13px;line-height:1.35}
.film-modal .detail-stat dd>small{display:block;font-size:10px;margin-top:4px;color:var(--color-muted)}
.film-modal .detail-stat strong{font-size:17px;font-weight:650}
.film-modal .detail-score{font-size:23px;font-weight:750;letter-spacing:-.6px;color:var(--color-success)}
.film-modal .detail-score small{font-size:12px;font-weight:400;color:var(--color-muted);letter-spacing:0}
.film-modal #detailFit{position:relative;display:block;margin:0 0 22px;padding:20px 22px 20px 58px;border:1px solid var(--color-primary-border);border-radius:18px;background:linear-gradient(115deg,var(--color-surface-subtle),var(--color-surface-subtle));box-shadow:0 4px 18px rgb(var(--shadow-rgb) / 0.031)}
.film-modal #detailFit:before{content:'✦';position:absolute;left:20px;top:18px;font-size:25px;color:var(--color-link)}
.film-modal #detailFit b{font-size:12px;color:var(--color-link);letter-spacing:.02em}
.film-modal #detailFit p{font-size:15px;line-height:1.6;color:var(--color-link);margin:7px 0 0}
/* Clear action hierarchy without full-width promotional banners. */
.film-modal .detailbuttons{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.film-modal .detailbuttons .btn{min-height:46px;padding:11px 18px;font-size:14px;border:1px solid var(--color-primary-border);border-radius:12px;background:var(--color-inverse);box-shadow:none;gap:9px}
.film-modal .detailbuttons .btn svg{width:19px;height:19px;flex:none}
.film-modal .detailbuttons .btn.secondary{background:var(--color-surface);border-color:var(--color-primary-border);color:var(--color-link);box-shadow:none}
.film-modal .detailbuttons .btn:hover{background:var(--color-inverse);transform:none;box-shadow:none;filter:none}
.film-modal .detailbuttons .btn.secondary:hover{background:var(--color-surface-subtle);border-color:var(--color-primary-border)}
.film-modal .detail-secondary{justify-content:flex-start;gap:8px;margin:12px 0 0}
.film-modal .detail-secondary .textbtn{font-size:12px;padding:9px 12px;min-height:40px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-subtle);color:var(--color-muted)}
.film-modal .detail-secondary .textbtn:hover{background:var(--color-surface-subtle);border-color:var(--color-border);color:var(--color-link)}
.film-modal .detail-secondary [data-action="hide"]:hover{background:var(--color-surface-subtle);border-color:var(--color-border);color:var(--color-danger)}
.film-modal #detailTrailer:empty,.film-modal #detailStatus:empty{display:none}
.film-modal #detailTrailer{margin-top:18px;padding-top:16px;border-top:1px solid var(--color-border)}
.film-modal .detail-trailer-link{display:inline-flex;align-items:center;gap:11px;padding:8px 14px 8px 8px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);color:var(--color-link);transition:background .18s,border-color .18s}
.film-modal .detail-trailer-link:hover{background:var(--color-surface-subtle);border-color:var(--color-primary-border);transform:none}
.film-modal .detail-play{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:9px;background:var(--color-surface-subtle);color:var(--color-link);font-size:12px}
.film-modal .detail-trailer-link b{display:block;font-size:13px;font-weight:600}
.film-modal .detail-trailer-link small{display:block;color:var(--color-muted);font-size:11px;margin-top:2px}
.film-modal #detailStatus{margin:12px 0 0;font-size:12px}
@media(max-width:600px){
 .modal.film-modal{padding:22px;border-radius:24px;max-height:calc(100dvh - 24px)}
 .film-modal .close{margin:-10px -10px 8px 8px}
 .film-modal .detail{grid-template-columns:94px minmax(0,1fr);gap:18px 16px}
 .film-modal .detailmain{display:contents}
 .film-modal .detail-art{border-radius:12px}
 .film-modal .detailintro{align-self:center}
 .film-modal .detail h2{font-size:25px;letter-spacing:-.6px}
 .film-modal .detailintro .eyebrow{font-size:11px;margin-bottom:8px}
 .film-modal #detailDescription,.film-modal #detailFacts,.film-modal .detail .chips{grid-column:1/-1;margin:0}
 .film-modal #detailFit{padding:16px 16px 16px 43px;margin-bottom:16px}
 .film-modal #detailFit:before{left:14px;top:13px;font-size:21px}
 .film-modal #detailFit p{font-size:14px}
 .film-modal .detailbuttons{display:grid;grid-template-columns:1fr}
 .film-modal .detailbuttons .btn{min-height:48px}
}
@media(prefers-reduced-motion:reduce){.film-modal .btn,.film-modal .detail-trailer-link{transition:none;transform:none!important}}

/* Shared compact catalog results for global search and watched library. */
.catalog-matches{max-width:940px}
.catalog-match{grid-template-columns:58px minmax(0,1fr) auto;gap:18px;padding:16px 0;animation:none}
.catalog-match .poster{border-radius:9px}
.catalog-match .libraryidentity{min-width:0}
.catalog-match .libraryidentity h3{font-size:17px;line-height:1.35}
.catalog-match .libraryidentity p{margin-top:4px;font-size:13px}
.catalog-match .libraryidentity .catalog-original{font-size:12px;color:var(--color-muted)}
.catalog-match .libraryactions{gap:8px}
.catalog-match .libraryactions .btn{min-height:42px;font-size:13px;padding:10px 14px}
.catalog-match .libraryactions .btn:not(.secondary){background:var(--color-primary);color:var(--color-on-primary)}
.catalog-match .catalog-watched{color:var(--color-success)}
.searchstatus{padding:18px 0;color:var(--color-link)}
@media(max-width:600px){
 .catalog-match{grid-template-columns:54px minmax(0,1fr);gap:10px 14px;padding:15px 0}
 .catalog-match .libraryactions{grid-column:2;display:flex}
 .catalog-match .libraryactions .btn{min-height:44px;padding:9px 12px;font-size:12px}
 .catalog-match .libraryidentity h3{font-size:16px}
}
.catalog-match .posterfallback{padding:5px}
.catalog-match .posterfallback b{font-size:10px;line-height:1.2;letter-spacing:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.catalog-match .posterfallback small{display:none}
.pick-discoveries{padding:18px 20px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-subtle)}
.pick-discoveries .checkrow{border:0;padding:5px 0 9px;align-items:flex-start;font-weight:550}
.pick-discoveries .checkrow input{flex:0 0 18px;margin-top:2px}
.pick-discoveries .pick-help{margin:0;color:var(--color-link);line-height:1.55}

/* Mood entries: small illustrated invitations into the shared picker. */
.themesection .themetiles{gap:18px}
.themesection .themetile{--mood-accent:#bb5537;--mood-tint:#fff1e8;--mood-border:#f0dbcf;position:relative;isolation:isolate;overflow:hidden;min-height:252px;padding:24px;border:1px solid var(--mood-border);border-radius:24px;background:linear-gradient(155deg,var(--mood-tint),var(--color-surface) 76%);box-shadow:0 3px 8px rgb(var(--shadow-rgb) / 0.016);text-align:left;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.themesection .themetile.blue{--mood-accent:#315ed4;--mood-tint:#e9f0ff;--mood-border:#dbe4f9}
.themesection .themetile.sage{--mood-accent:#27795f;--mood-tint:#e5f5ed;--mood-border:#d3e9df}
.themesection .themetile.lavender{--mood-accent:#7950c4;--mood-tint:#f0eaff;--mood-border:#e4daf5}
.themesection .themetile:before{content:"";position:absolute;z-index:-1;width:160px;height:160px;top:-85px;right:-65px;border:28px solid var(--mood-accent);border-radius:50%;opacity:.045;pointer-events:none}
.theme-visual{display:flex;width:100%;align-items:flex-start;justify-content:space-between;margin-bottom:20px;color:var(--mood-accent)}
.theme-visual>svg{width:62px;height:62px;overflow:visible;filter:drop-shadow(0 4px 5px rgb(var(--shadow-rgb) / 0.565))}
.theme-arrow{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--color-glass);border:1px solid var(--mood-border);font-size:20px;transition:background .2s,color .2s,transform .2s}
.themesection .themetitle{display:block;font-size:19px;line-height:1.25;letter-spacing:-.35px;font-weight:650;color:var(--color-link)}
.themesection .themedesc{font-size:14px;line-height:1.5;margin-top:9px;color:var(--color-muted);max-width:27ch}
.themesection .themelink{display:flex;align-items:center;gap:8px;padding-top:22px;margin-top:auto;font-size:12px;font-weight:600;color:var(--mood-accent)}
.themesection .themelink>span{transition:transform .2s}
@media(hover:hover){.themesection .themetile:hover{transform:translateY(-4px);border-color:var(--mood-accent);box-shadow:0 12px 26px rgb(var(--shadow-rgb) / 0.063)}.themetile:hover .theme-arrow{background:var(--mood-accent);color:var(--color-on-inverse);transform:rotate(45deg)}.themetile:hover .themelink>span{transform:translateX(4px)}}
.themesection .themetile:active{transform:translateY(-1px)}
.themesection .themetile:focus-visible{outline:1px solid var(--mood-accent);outline-offset:1px}
@media(max-width:1100px) and (min-width:901px){.themesection .themetile{padding:19px}.themesection .themetitle{font-size:17px}}
@media(max-width:600px){.themesection .themetiles{gap:12px}.themesection .themetile{padding:16px;min-height:242px;border-radius:20px}.theme-visual{margin-bottom:16px}.theme-visual>svg{width:48px;height:48px}.theme-arrow{width:27px;height:27px;font-size:17px}.themesection .themetitle{font-size:17px}.themesection .themedesc{font-size:12px;line-height:1.5}.themesection .themelink{font-size:11px;padding-top:18px;gap:5px}}
@media(prefers-reduced-motion:reduce){.themesection .themetile,.theme-arrow,.themesection .themelink>span{transition:none!important;transform:none!important}}

/* мэтч: a quiet wordmark with a bright full stop. */
.brand{display:inline-flex;align-items:baseline;gap:0;white-space:nowrap;flex-shrink:0}
.brand-dot{display:inline-block;flex:none;width:.24em;height:.24em;border-radius:50%;background:var(--color-danger);margin-left:.09em}

/* Loading and empty states live in the space reserved for results. */
.content-feedback{display:flex;align-items:center;justify-content:center;gap:26px;padding:32px;border:1px solid var(--color-border);border-radius:22px;background:linear-gradient(135deg,var(--color-surface-subtle),var(--color-surface) 70%);color:var(--color-link);min-width:0}
.content-feedback .feedback-copy{max-width:370px;min-width:0}
.content-feedback h3{font-size:19px;line-height:1.35;letter-spacing:-.3px;color:var(--color-link);margin:0 0 9px}
.content-feedback p{font-size:14px;line-height:1.65;color:var(--color-link);margin:0;overflow-wrap:anywhere}
.content-feedback .btn{margin-top:18px;min-height:42px;background:var(--color-surface-subtle);color:var(--color-link)}
.waiting-art{position:relative;display:block;flex:0 0 104px;width:104px;height:108px}
.waiting-art i{position:absolute;display:block;width:58px;height:78px;left:24px;top:13px;border:1px solid var(--color-primary-border);border-radius:12px;background:var(--color-surface-subtle);transform:rotate(-14deg) translateX(-14px)}
.waiting-art i:nth-child(2){background:var(--color-surface-subtle);transform:rotate(14deg) translateX(14px)}
.waiting-art i:nth-child(3){background:var(--color-surface);transform:none;box-shadow:0 6px 20px rgb(var(--shadow-rgb) / 0.094)}
.waiting-art b{position:absolute;width:104px;inset:22px 0 0;display:grid;place-items:center;height:60px;font-size:32px;color:var(--color-link);font-weight:400;animation:waiting-spark 2.4s ease-in-out infinite}
.waiting-dots{display:flex;gap:5px;margin-top:18px;height:6px}
.waiting-dots i{width:6px;height:6px;border-radius:50%;background:var(--color-primary);animation:waiting-dot 1.5s ease-in-out infinite}
.waiting-dots i:nth-child(2){animation-delay:.2s}.waiting-dots i:nth-child(3){animation-delay:.4s}
.feedback-symbol{display:grid;place-items:center;flex:none;width:66px;height:66px;border-radius:20px;background:var(--color-surface-subtle);color:var(--color-link);font-size:34px}
.homeshelf.shelf .shelf-feedback{flex:1 0 300px;min-height:330px;scroll-snap-align:start;cursor:default;user-select:text;flex-direction:column;text-align:center;padding:28px 22px}
.shelf-feedback .feedback-copy{max-width:330px}.shelf-feedback .waiting-dots{justify-content:center}
.homeshelf.shelf .shelf-feedback-empty{flex-basis:100%;min-height:310px;flex-direction:row;text-align:left;gap:38px}.shelf-feedback-empty .waiting-dots{justify-content:flex-start}
.deck-feedback{min-height:350px;margin-top:8px;flex-direction:column;text-align:center;gap:20px}.deck-feedback .feedback-copy{max-width:420px}.deck-feedback .waiting-dots{justify-content:center}
.search-feedback{max-width:940px;margin:16px 0 0;justify-content:flex-start;padding:24px 28px}.search-feedback .feedback-copy{max-width:610px}.search-feedback.has-results{margin-top:20px}.search-feedback.has-results .waiting-art{transform:scale(.7);margin:-12px -12px -12px -14px}
.search-skeletons{max-width:940px;padding:0 12px}
.search-skeleton{display:flex;gap:18px;align-items:center;border-bottom:1px solid var(--color-border);padding:18px 0}
.search-skeleton>i{width:52px;height:76px;border-radius:8px;background:var(--color-surface-subtle);flex:none}
.search-skeleton>span{display:grid;gap:12px;width:min(55%,340px)}
.search-skeleton b{display:block;height:12px;border-radius:5px;background:var(--color-surface-subtle)}.search-skeleton b:last-child{width:60%;height:9px}
.search-skeleton:nth-child(2){opacity:.7}.search-skeleton:nth-child(3){opacity:.4}
.results-feedback{margin:22px 0;justify-content:flex-start}.results-feedback .feedback-copy{max-width:600px}
@keyframes waiting-dot{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}
@keyframes waiting-spark{0%,100%{transform:scale(.9);opacity:.7}50%{transform:scale(1.07);opacity:1}}
@media(max-width:600px){.content-feedback{padding:24px 20px;gap:18px}.content-feedback h3{font-size:17px}.content-feedback p{font-size:13px}.homeshelf.shelf .shelf-feedback{flex-basis:250px;min-height:330px}.homeshelf.shelf .shelf-feedback-empty{flex-basis:100%;flex-direction:column;text-align:center;min-height:310px;gap:15px}.shelf-feedback-empty .waiting-dots{justify-content:center}.search-feedback,.results-feedback{align-items:flex-start;gap:15px;padding:22px 18px}.search-feedback .waiting-art,.results-feedback .waiting-art{transform:scale(.65);transform-origin:top left;flex-basis:60px;height:70px;width:60px}.search-feedback.has-results .waiting-art{margin:0;transform:scale(.65)}.search-feedback .feedback-symbol,.results-feedback .feedback-symbol{width:40px;height:40px;border-radius:12px;font-size:26px}.deck-feedback{min-height:320px}.search-skeleton{padding:14px 0}}
@media(prefers-reduced-motion:reduce){.waiting-art b,.waiting-dots i{animation:none!important;transform:none!important;opacity:1}}
.card-metadata-status{font-size:11px;line-height:1.45;color:var(--color-muted);margin-top:8px}
.card-metadata-status .textbtn{font-size:11px;color:var(--color-link);padding:4px 0;display:block;min-height:30px}
.homecardbody .card-metadata-status{order:2}

#backendTask .cinema-loader-estimate{font-size:13px;line-height:1.5;color:var(--color-muted);margin:0 0 10px}

.recommendation-entry{display:flex;align-items:center;flex-wrap:wrap;gap:4px 14px;margin:6px 0 2px}
.recommendation-entry .textbtn{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:8px 2px;font-size:14px;color:var(--color-link)}
.recommendation-entry .textbtn:hover{color:var(--color-link);text-decoration:underline;text-underline-offset:4px}
.recommendation-entry .textbtn:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px;border-radius:6px}
.recommendation-entry-status{font-size:12px;color:var(--color-muted)}
.recommendation-shortcut{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;min-height:44px;padding:7px 10px;border-radius:12px;color:var(--color-link);background:var(--color-surface-subtle);font-size:13px;white-space:nowrap}
.recommendation-shortcut svg{width:18px;height:18px}.recommendation-shortcut:hover{background:var(--color-surface-subtle)}.recommendation-shortcut:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}
.recommendation-shortcut.is-running{position:relative}.recommendation-shortcut.is-running:after{content:'';position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--color-danger)}
@media(max-width:1250px){.recommendation-shortcut{width:40px;justify-content:center;padding:6px}.recommendation-shortcut span{display:none}}
@media(max-width:700px){.recommendation-entry{gap:0 12px}.recommendation-entry .textbtn{font-size:13px}.recommendation-entry-status{padding-bottom:6px}.globaltools:has(.recommendation-shortcut){gap:6px}.recommendation-shortcut{width:36px}.globaltools:has(.recommendation-shortcut) .searchbar{flex:1;min-width:0}}


.collection-toolbar{display:flex;align-items:center;gap:24px;justify-content:space-between;max-width:1000px;padding:16px 18px;background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:16px;margin:0 0 12px}
.collection-toolbar label{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--color-muted)}
.collection-toolbar select{font:inherit;color:var(--color-link);border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);padding:10px;max-width:100%}
.collection-toolbar p{font-size:12px;line-height:1.5;color:var(--color-muted);max-width:290px;margin:0}
.collectionrows{max-width:1000px}
.collectionitem{position:relative;min-width:0;animation:none}
.collectionitem .libraryidentity{min-width:0}
.collectionitem .libraryidentity h3{overflow-wrap:anywhere}
.collectionitem .list-rating{display:inline-block;margin-left:8px;font-size:12px;color:var(--color-link);white-space:nowrap}
.collectionitem .libraryidentity .list-comment{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6;color:var(--color-link);border-left:3px solid var(--color-primary-border);padding:6px 10px;background:var(--color-surface-subtle);border-radius:0 8px 8px 0;margin:10px 0 2px}
.collectionitem .list-comment-edit{color:var(--color-link);font-size:12px;padding:8px 0;min-height:36px}
.can-reorder .collectionitem{grid-template-columns:42px 64px minmax(0,1fr) auto}
.list-order{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--color-muted)}
.list-grip{font-size:21px;letter-spacing:-4px;min-width:40px;min-height:40px;cursor:grab;touch-action:none;user-select:none;border-radius:9px;background:var(--color-surface-subtle);color:var(--color-link)}
.list-grip:active{cursor:grabbing}
.list-order>div{display:flex}.list-order>div button{font-size:15px;padding:6px;min-height:32px;color:var(--color-link)}.list-order button:disabled{opacity:.25}
.is-list-dragging{opacity:.55;background:var(--color-surface-subtle)}
.collectionitem.drop-before:before,.collectionitem.drop-after:after{content:'';position:absolute;height:3px;left:0;right:0;border-radius:4px;background:var(--color-primary)}.collectionitem.drop-before:before{top:0}.collectionitem.drop-after:after{bottom:0}
#listCommentForm textarea{display:block;width:100%;margin-top:10px;resize:vertical;min-height:120px}#listCommentForm label{display:block;font-size:14px;margin-top:20px}#listCommentForm .small{line-height:1.5;margin:12px 0 22px}#listCommentForm .row{flex-wrap:wrap}
@media(max-width:650px){.collection-toolbar{align-items:stretch;flex-direction:column;gap:10px;padding:14px}.collection-toolbar label{align-items:stretch;flex-direction:column;gap:6px}.collection-toolbar select{width:100%;font-size:13px}.collection-toolbar p{max-width:none}.can-reorder .collectionitem{grid-template-columns:34px 48px minmax(0,1fr);gap:10px}.can-reorder .collectionitem .list-order{grid-column:1;grid-row:1/3;align-self:start}.can-reorder .collectionitem>.poster{grid-column:2;grid-row:1;align-self:start}.can-reorder .collectionitem .libraryidentity{grid-column:3}.can-reorder .collectionitem .libraryactions{grid-column:2/4;grid-row:2}.collectionitem .list-rating{margin:4px 0 0;display:block}.list-grip{min-width:34px}.list-order>div button{padding:4px}.collectionitem .libraryactions{flex-wrap:wrap}}

/* A deliberate change of direction for shared personal recommendations. */
.shake-recommendations{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 14px;border:1px solid var(--color-primary-border);border-radius:12px;background:var(--color-surface-subtle);color:var(--color-link);font-size:13px;font-weight:600;white-space:nowrap;transition:background .15s,border-color .15s}
.shake-recommendations>span{font-size:21px;line-height:1}.shake-recommendations:hover{background:var(--color-surface-subtle);border-color:var(--color-primary-border)}.shake-recommendations:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}.shake-recommendations:disabled{opacity:.65;cursor:wait}.shake-notice{font-size:13px;line-height:1.5;color:var(--color-link);margin:0 0 14px}.deck-shake{display:flex;justify-content:flex-end;margin:0 0 10px}.shelfcontrols{flex-wrap:wrap}
@media(max-width:900px){.homesection .sectiontop{flex-wrap:wrap}.deck-shake{justify-content:flex-start}.deck-shake .shake-recommendations{font-size:12px}.shelfcontrols{gap:8px 12px}.shake-recommendations{font-size:12px;padding:8px 10px}.shake-notice{font-size:12px}}
@media(prefers-reduced-motion:reduce){.shake-recommendations{transition:none}}

/* Search refresh sits with pagination actions, separate from shared discovery. */
.rec-next-actions .shake-recommendations{min-height:46px;padding:11px 18px;font-size:14px}
.search-shake-hint{max-width:580px;margin:12px auto 0;text-align:center;font-size:12px;line-height:1.5;color:var(--color-muted)}
@media(max-width:600px){.rec-next-actions{display:grid;grid-template-columns:1fr;gap:8px}.rec-next-actions>*{width:100%}.search-shake-hint{font-size:12px}}

.rec-next-actions:has(+.search-shake-hint){margin-bottom:0}

/* Personal cinema: destinations are separate from viewing status and ratings. */
[hidden]{display:none!important}
.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}
button:focus-visible,summary:focus-visible,a:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}
.cinema-nav{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:0 0 30px;padding-bottom:10px;flex-wrap:wrap}
.cinema-nav button{display:flex;align-items:center;gap:9px;min-height:46px;padding:10px 17px;border-radius:12px;font-size:14px;color:var(--color-muted);white-space:nowrap}
.cinema-nav button span{font-size:11px;min-width:21px;padding:2px 5px;border-radius:6px;background:var(--color-surface-subtle);color:var(--color-muted);line-height:1.5}
.cinema-nav button[aria-current]{color:var(--color-link);background:var(--color-surface-subtle);font-weight:600}
.cinema-nav button[aria-current] span{background:var(--color-surface-subtle);color:var(--color-link)}
.cinema-nav button:hover{background:var(--color-surface-subtle)}
.cinema-section-heading{margin:24px 0 20px}
.cinema-section-heading h2{font-size:22px;letter-spacing:-.5px;margin:0}
.cinema-section-heading p{font-size:14px;line-height:1.65;color:var(--color-muted);margin:7px 0 0;max-width:690px}
.cinema-list-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.collection-back{margin-bottom:20px;min-height:40px}
.cinema-page .librarysearch{max-width:780px;margin:0 0 24px;gap:12px}
.cinema-page .librarysearch input{min-height:48px;border:1px solid var(--color-border);border-radius:13px;font-size:15px}
.cinema-page .librarysearch .textbtn{min-height:44px;white-space:nowrap;font-size:13px}
.cinema-page .librarytabs{margin:0 0 12px;gap:8px;display:flex;flex-wrap:wrap}
.cinema-page .librarytabs .chip{min-height:40px;font-size:13px;padding:8px 14px;display:flex;gap:8px;align-items:center}
.cinema-page .librarytabs .chip span{opacity:.7;font-size:12px}
.personal-movies{max-width:100%;border-top:1px solid var(--line)}
.personal-movie,.catalog-match{grid-template-columns:64px minmax(0,1fr) auto;gap:18px;padding:19px 0;align-items:center}
.personal-movie>.poster,.catalog-match>.poster{width:64px;height:96px;aspect-ratio:2/3;border-radius:10px;align-self:start;overflow:hidden}
.personal-movie .libraryidentity h3,.catalog-match .libraryidentity h3{font-size:17px;line-height:1.4;margin:0 0 6px}
.libraryidentity h3 button{text-align:left}
.personal-movie .libraryidentity p,.catalog-match .libraryidentity p{font-size:13px;line-height:1.5;margin:4px 0}
.media-status{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.media-status:empty{display:none}
.media-status>span{font-size:11px;line-height:1.4;padding:4px 8px;border-radius:6px;background:var(--color-surface-subtle);color:var(--color-link);font-weight:500}
.media-status .status-watched{background:var(--color-surface-subtle);color:var(--color-success)}.media-status .status-watching{background:var(--color-surface-subtle);color:var(--color-link)}
.libraryactions{gap:8px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}
.libraryactions>.btn{min-height:42px;font-size:13px;border-radius:11px;padding:10px 15px}
.title-more{position:relative;flex:0 0 40px;font-size:13px;text-align:left}
.title-more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;min-height:42px;min-width:40px;border:1px solid var(--color-border);border-radius:11px;color:var(--color-link);font-weight:700;letter-spacing:2px;background:var(--color-surface)}
.title-more>summary::-webkit-details-marker{display:none}
.title-more[open]>summary,.title-more>summary:hover{background:var(--color-surface-subtle);color:var(--color-link)}
.title-more-panel{position:absolute;z-index:12;right:0;top:calc(100% + 7px);width:245px;padding:6px;border:1px solid var(--color-border);border-radius:14px;box-shadow:0 12px 38px rgb(var(--shadow-rgb) / 0.133);background:var(--color-surface);display:grid}
.title-more-panel>button{min-height:43px;padding:10px 12px;text-align:left;font-size:13px;line-height:1.45;color:var(--color-link);border-radius:8px;white-space:normal}
.title-more-panel>button:hover{background:var(--color-surface-subtle);color:var(--color-link)}
.title-more-panel>button[data-action="remove-list-item"],.title-more-panel>button[data-action="unwatch"]{border-top:1px solid var(--color-border);border-radius:0 0 8px 8px}
.librarymatch:has(.title-more[open]){position:relative;z-index:15}
.personal-movies .librarymatch:last-child{border-bottom:0}
.libraryempty{margin:16px 0;padding:40px 24px;border:1px dashed var(--color-border);background:var(--color-surface);border-radius:20px}
.libraryempty .empty-symbol{display:grid;place-items:center;margin:0 auto 18px;width:48px;height:48px;border-radius:16px;background:var(--color-surface-subtle);color:var(--color-link);font-size:26px}
.libraryempty h3{font-size:20px;letter-spacing:-.3px}
.libraryempty .btn{margin-top:20px;min-height:44px}
.libraryempty p{font-size:14px;line-height:1.65}
.profile-movies{margin-top:24px}
.film-modal .detailwide>.media-status{margin:0 0 16px}
.collectionitem .media-status{margin:6px 0}
.collection-toolbar{align-items:center}.collection-toolbar p{max-width:380px;line-height:1.6}
.list-order button{min-width:30px;min-height:32px}
.homeactions button{border:1px solid var(--color-border);background:var(--color-surface-subtle);border-radius:16px}
.homeactions button:hover{background:var(--color-surface-subtle);border-color:var(--color-border)}
.homeactions button b{font-weight:500}
.hometaste{background:var(--color-surface);border-radius:18px;box-shadow:none}
.sectiontop{gap:16px}.sectiontop h2{min-width:0}
.toast{max-width:min(540px,calc(100vw - 32px));line-height:1.5;gap:16px}.toast button{min-height:44px;flex-shrink:0}
@media(min-width:901px){.nav button{white-space:nowrap}.appheader{gap:24px}.nav{gap:22px}.globaltools{min-width:0}.searchbar{width:clamp(180px,20vw,280px)}}
@media(max-width:900px){
 .cinema-nav{gap:4px;margin-bottom:24px;padding-bottom:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
 .cinema-nav button{flex-direction:column;gap:4px;font-size:12px;padding:10px 4px;min-height:62px}
 .cinema-nav button span{font-size:10px;background:transparent;padding:0;min-width:0}
 .workspace{padding-bottom:calc(90px + env(safe-area-inset-bottom))}
 .connectionstatus{padding-bottom:calc(90px + env(safe-area-inset-bottom))}
 .workspace:has(+ #modal .modalback){padding-bottom:90px}
 .toast{margin-bottom:calc(76px + env(safe-area-inset-bottom));font-size:13px}
}
@media(max-width:600px){
 .cinema-page .heading,.workspace:has(>.cinema-nav)>.heading{margin-bottom:24px}
 .cinema-page .heading p{font-size:14px;line-height:1.6;max-width:290px}
 .cinema-page .heading>.btn{min-height:44px}
 .cinema-nav button{font-size:11px}
 .cinema-section-heading{margin:22px 0 16px}.cinema-section-heading h2{font-size:20px}.cinema-section-heading p{font-size:13px}
 .cinema-list-heading{align-items:flex-start}.cinema-list-heading>.btn{font-size:12px;padding:9px 12px;white-space:nowrap;min-height:44px}
 .cinema-page .librarysearch{flex-wrap:wrap;gap:4px;margin-bottom:20px}
 .cinema-page .librarysearch input{width:100%;flex-basis:100%;font-size:16px}
 .cinema-page .librarysearch .textbtn{margin-left:auto}
 .personal-movie,.catalog-match{grid-template-columns:56px minmax(0,1fr);gap:8px 14px;padding:18px 0}
 .personal-movie>.poster,.catalog-match>.poster{grid-row:1/3;width:56px;height:84px;border-radius:8px}
 .personal-movie .libraryidentity h3,.catalog-match .libraryidentity h3{font-size:16px}
 .personal-movie .libraryidentity p,.catalog-match .libraryidentity p{font-size:12px}
 .libraryactions{grid-column:2;justify-content:flex-start;gap:7px;margin-top:5px}
 .libraryactions>.btn{min-height:44px;padding:9px 12px;font-size:12px}
 .title-more{flex-basis:44px}.title-more>summary{min-height:44px;min-width:44px}
 .title-more-panel{width:min(255px,calc(100vw - 56px));right:0}
 .libraryactions .title-more{margin-left:auto}
 .title-more-panel>button{min-height:46px;font-size:13px}
 .media-status>span{font-size:10px}
 .collectionitem .libraryactions{grid-column:2/-1;justify-content:flex-start}
 .collectionitem .title-more{margin-left:auto}
 .collection-toolbar{flex-direction:column;align-items:stretch;gap:10px}.collection-toolbar select{max-width:100%;font-size:13px;min-height:44px}.collection-toolbar p{margin:0;font-size:12px}
 .list-order button{min-width:32px;min-height:36px}
 .homeactions{gap:8px}.homeactions button{padding:15px 8px;flex-direction:column;gap:10px;min-height:88px}.homeactions button b{font-size:12px;line-height:1.35}
 .film-modal .detail-secondary{gap:8px}.film-modal .detail-secondary .textbtn{min-height:44px}
 .footnote{margin-top:32px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.title-more-panel{animation:none}}
.list-order-help{margin:-4px 0 18px;font-size:13px;line-height:1.6;color:var(--color-muted)}
@media(max-width:600px){.collection-toolbar{flex-direction:row;flex-wrap:wrap;align-items:center}.collection-toolbar>label{flex:1;min-width:200px}.collection-toolbar>.textbtn{font-size:12px;min-height:44px}.collectionitem:not(:has(.list-order)) .libraryactions{grid-column:2}.collectionitem:not(:has(.list-order)){grid-template-columns:56px minmax(0,1fr)}.collectionitem:not(:has(.list-order))>.poster{grid-row:1/3;width:56px;height:84px}.collectionitem:not(:has(.list-order)) .libraryidentity{grid-column:2}.collectionitem .libraryidentity h3{line-height:1.45}.collectionitem .list-comment-edit{min-height:40px}}
@media(max-width:600px){
 .hometaste{display:flex;flex-direction:row;align-items:center;gap:12px;padding:17px 16px}
 .hometaste h2{font-size:17px;margin:0 0 5px}.hometaste p{font-size:12px;line-height:1.45;max-width:190px;margin:0}
 .hometaste .tasteentryactions{margin:0;flex-shrink:0}.hometaste .tasteentryactions .btn{font-size:12px;padding:10px 11px;min-height:44px}
 .homesection .sectiontop{margin-bottom:16px}.homesection .shelfcontrols{width:100%;justify-content:space-between;gap:10px}
 .homesection .shake-recommendations{font-size:11px;min-height:44px}.homesection .shelf-arrow{min-width:44px;min-height:44px}
 .compact-rec-actions .title-more{margin-left:auto}
}
.profile-rating-heading{align-items:center;margin-bottom:18px}.profile-rating-heading p{font-size:13px;color:var(--color-muted);line-height:1.6;margin:6px 0 0}.profile-rating-heading .btn{flex-shrink:0}
.compact-rec:has(.title-more[open]){position:relative;z-index:15}.compact-rec-actions .title-more-panel{bottom:calc(100% + 7px);top:auto}
@media(max-width:600px){.reactiontabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;overflow:visible;margin:18px 0 24px}.reactiontabs button{min-height:46px;padding:10px 12px;font-size:12px;justify-content:flex-start;white-space:normal}.reactiontabs button small{margin-left:auto}.profile-rating-heading h2{font-size:21px}.profile-rating-heading p{font-size:12px}.profilepreferences .tastepreftop{gap:16px}.profilepreferences{padding:20px}.profilepreferences .preferenceview{margin-top:20px}.compact-rec-actions .title-more{align-self:flex-start}}
.pick-simple>.heading{position:relative;padding-right:0}.pick-simple>.heading>div{width:100%}.pick-simple>.heading h1{padding-right:52px}.pick-simple>.heading .pickclose{position:absolute;top:0;right:0;min-width:44px;min-height:44px;margin:0}
@media(max-width:600px){.pick-simple>.heading{display:block}.pick-simple>.heading p{padding-right:0;margin-top:14px}.onboardfooter{gap:12px}}

.confirm-actions{gap:10px;flex-wrap:wrap;margin-top:24px}.confirm-actions .btn{min-height:44px}

/* Shared editorial discovery, separate from personal recommendations. */
.radar-section{margin:48px 0 60px;padding:28px;border:1px solid var(--color-border);border-radius:24px;background:linear-gradient(145deg,var(--color-surface),var(--color-surface) 65%);min-width:0}
.radar-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.radar-heading h2{margin:0}.radar-eyebrow{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-link);margin:0 0 8px;font-weight:650}
.radar-types{display:flex;padding:4px;border-radius:12px;background:var(--color-surface-subtle);flex-shrink:0}.radar-types button{padding:9px 15px;border-radius:9px;color:var(--color-muted);min-height:44px}.radar-types button[aria-pressed=true]{background:var(--color-surface);color:var(--color-link);box-shadow:0 2px 6px rgb(var(--shadow-rgb) / 0.039)}
.radar-tabs{display:flex;gap:8px;flex-wrap:wrap}.radar-tabs button{padding:10px 17px;min-height:44px;border-radius:30px;border:1px solid var(--color-border);color:var(--color-muted);background:var(--color-surface)}.radar-tabs button[aria-pressed=true]{background:var(--color-surface-subtle);border-color:var(--color-primary-border);color:var(--color-link)}.radar-description{font-size:14px;color:var(--color-muted);line-height:1.5;margin:14px 0 24px;min-height:21px}
.radar-shelf{display:flex;gap:16px;overflow-x:auto;padding:0 0 14px;scrollbar-width:thin;scrollbar-color:var(--color-surface-subtle) transparent;touch-action:pan-x pan-y;overscroll-behavior-x:contain;cursor:grab}.radar-shelf.is-grabbing{cursor:grabbing;user-select:none}.radar-card{flex:0 0 168px;min-width:0}.radar-card .poster{width:100%;height:252px;border-radius:14px;overflow:hidden}.radar-card .poster img{width:100%;height:100%;object-fit:cover}.radar-card-body h3{font-size:15px;line-height:1.35;margin:12px 0 7px;height:41px}.radar-card-body h3 button{text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.radar-card-body>p{display:flex;justify-content:space-between;font-size:12px;color:var(--color-muted);margin:0 0 10px}.radar-card-body>p span{color:var(--color-success)}.radar-card-actions{display:flex;align-items:center;justify-content:space-between;gap:4px}.radar-card-actions>.btn{min-height:40px;padding:8px 12px;font-size:12px}.radar-card-actions .title-more-menu{bottom:100%;top:auto}.radar-loading{min-height:338px;flex:1;min-width:210px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:var(--color-muted);font-size:13px}.radar-loading b{font-weight:500;color:var(--color-link)}.radar-empty{padding:45px 0;max-width:520px;color:var(--color-muted);line-height:1.6}
.radar-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;flex-wrap:wrap}.radar-browse{display:flex;align-items:center;gap:16px}.radar-personal{color:var(--color-link)}.radar-note{font-size:13px;color:var(--color-muted)}.radar-credit{font-size:10px;line-height:1.5;color:var(--color-muted);margin:20px 0 0}.radar-credit a{color:inherit;text-decoration:underline}.radar-section button:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}
@media(max-width:600px){.radar-section{padding:18px 14px;margin:32px 0 40px;border-radius:18px}.radar-heading{align-items:flex-start;gap:12px;flex-direction:column;margin-bottom:16px}.radar-types{align-self:stretch}.radar-types button{flex:1}.radar-tabs{gap:6px}.radar-tabs button{padding:9px 11px;font-size:12px}.radar-description{font-size:12px;margin-bottom:18px}.radar-card{flex-basis:142px}.radar-card .poster{height:213px}.radar-shelf{gap:12px}.radar-card-body h3{font-size:14px;height:38px}.radar-footer{align-items:flex-start;gap:10px}.radar-footer .textbtn{font-size:13px;min-height:44px}.radar-personal{width:100%;text-align:left}.radar-credit{font-size:9px}.radar-browse{width:100%;justify-content:space-between}}
.radar-card-actions .radar-rate{font-size:12px;min-height:40px;padding:8px 4px;color:var(--color-link)}.radar-card-actions .btn{padding:8px}.radar-card-actions{gap:2px}
.radar-card-actions .btn{white-space:nowrap;flex:1;min-width:0}.radar-footer .textbtn{padding:8px 0}.radar-personal{font-weight:500}.radar-shelf .radar-card-body{padding:0}.radar-credit{max-width:680px}
.radar-credit{font-size:12px}.radar-credit summary{cursor:pointer;min-height:32px;display:list-item;width:fit-content}.radar-credit p{margin:6px 0;line-height:1.5}.radar-credit p[lang=en]{font-size:11px}
@media(min-width:361px) and (max-width:600px){.radar-heading{flex-direction:row;align-items:center}.radar-eyebrow{display:none}.radar-heading h2{font-size:22px}.radar-types{align-self:auto}.radar-types button{font-size:12px;padding:8px 10px}}
@media(max-width:600px){.radar-credit{margin-top:12px}}

.homeshelf.shelf .shelf-pick-card{flex:0 0 210px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:16px;padding:24px 20px;min-height:320px;border:1px solid var(--color-border);border-radius:16px;background:linear-gradient(150deg,var(--color-surface-subtle),var(--color-surface-subtle));text-align:left;scroll-snap-align:start;transition:background .18s,box-shadow .18s}.shelf-pick-card:hover{background:var(--color-surface-subtle);box-shadow:0 6px 22px rgb(var(--shadow-rgb) / 0.071)}.shelf-pick-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--color-surface-subtle);color:var(--color-link);font-size:28px}.shelf-pick-title{font-size:21px;font-weight:650;line-height:1.2;letter-spacing:-.4px;color:var(--color-link)}.shelf-pick-copy{font-size:13px;line-height:1.55;color:var(--color-link)}.shelf-pick-link{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--color-link);padding-top:8px}.shelf-pick-card:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}
@media(max-width:600px){.homeshelf.shelf .shelf-pick-card{flex-basis:164px;padding:20px 15px;border-radius:13px;gap:14px}.shelf-pick-title{font-size:19px}.shelf-pick-copy,.shelf-pick-link{font-size:12px}}
@media(prefers-reduced-motion:reduce){.homeshelf.shelf .shelf-pick-card{transition:none}}

/* Mobile web: a dedicated request-first home, with discovery on its own screen. */
.mobile-nav,.mobile-lookup{display:none}
@media(max-width:700px){
 body.mobile-web{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
 .mobile-web .appheader{height:70px;padding:0 20px;gap:12px;border-bottom:0;position:relative;z-index:20;background:var(--color-surface)}
 .mobile-web .brand{font-size:25px;white-space:nowrap}.mobile-web .globaltools{gap:8px;flex:0 0 auto;min-width:0}
 .mobile-web .appheader>.nav,.mobile-web .searchbar{display:none!important}
 .mobile-web .mobile-lookup{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--color-surface-subtle);color:var(--color-link)}
 .mobile-web .accountbutton{width:38px;height:38px;min-width:38px;font-size:14px}
 .mobile-web #recommendationShortcut{width:42px;min-width:42px;height:42px;padding:10px;border-radius:50%}.mobile-web #recommendationShortcut span{display:none}
 .mobile-web .workspace{width:100%;padding:20px 20px 30px;max-width:600px}
 .mobile-web .mobile-nav{position:fixed;z-index:60;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);padding:8px 10px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface);backdrop-filter:blur(16px)}
 .mobile-nav button{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;min-height:52px;padding:5px 0;color:var(--color-muted);font-size:11px;font-weight:500}.mobile-nav svg{width:22px;height:22px}.mobile-nav button[aria-current=page]{color:var(--color-link)}.mobile-nav button[aria-current=page] svg{background:var(--color-surface-subtle);box-shadow:0 0 0 7px rgb(var(--shadow-rgb) / 1.000);border-radius:5px}
 .mobile-home .footnote{display:none}.mobile-search-home{max-width:480px;margin:8px auto 0}
 .mobile-eyebrow{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--color-link);font-weight:600;letter-spacing:.02em}.mobile-eyebrow svg{width:16px;height:16px}
 .mobile-intro h1{font-size:36px;line-height:1.08;letter-spacing:-1.3px;margin:17px 0 14px}.mobile-intro>p:last-child{font-size:15px;line-height:1.6;color:var(--color-muted)}
 .mobile-composer{margin-top:26px;padding:18px 16px 12px;border:1px solid var(--color-border);border-radius:20px;background:linear-gradient(145deg,var(--color-surface),var(--color-surface));box-shadow:0 6px 24px rgb(var(--shadow-rgb) / 0.020)}
 .mobile-composer label{display:block;font-size:12px;font-weight:600;color:var(--color-link);margin-bottom:6px}.mobile-composer textarea{padding:6px 0;border:0;background:transparent;min-height:116px;height:116px;resize:none;font-size:16px;line-height:1.55;border-radius:4px}.mobile-composer textarea::placeholder{color:var(--color-muted)}.mobile-composer:focus-within{border-color:var(--color-primary-border)}
 .mobile-format{display:flex;gap:5px;border-top:1px solid var(--color-border);padding-top:12px;margin-top:4px}.mobile-format button{min-height:40px;padding:8px 14px;border-radius:11px;font-size:13px;color:var(--color-muted)}.mobile-format button[aria-pressed=true]{color:var(--color-link);background:var(--color-surface-subtle);font-weight:600}
 .mobile-parameters{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;margin-top:10px;font-size:13px;color:var(--color-link);padding:0 3px}.mobile-parameters>span:first-child{display:flex;align-items:center;gap:8px}.mobile-parameters svg{width:17px;height:17px}.mobile-filter-summary{font-size:11px;line-height:1.5;margin:0 3px 15px;color:var(--color-muted)}
 .mobile-submit.btn{width:100%;min-height:54px;border-radius:15px;display:flex;justify-content:space-between;padding:15px 20px;background:var(--color-inverse);font-size:15px}.mobile-submit span{font-size:23px;line-height:1}
 .mobile-ideas{margin-top:24px}.mobile-ideas>span{font-size:12px;color:var(--color-muted)}.mobile-ideas>div{display:flex;gap:7px;margin-top:10px;flex-wrap:wrap}.mobile-ideas button{padding:10px 13px;min-height:42px;border:1px solid var(--color-border);border-radius:24px;font-size:12px;color:var(--color-muted)}
 .mobile-taste-note{font-size:12px;line-height:1.6;margin:24px 0 12px;color:var(--color-muted)}.mobile-taste-note button{display:block;min-height:40px;padding:7px 0;color:var(--color-link);font-size:12px}
 .mobile-web .mobile-picker .heading h1{font-size:28px}.mobile-picker>.pick-block{margin-bottom:20px}.mobile-pick-options{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:0 0 2px}.mobile-pick-options>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;min-height:56px;font-size:14px;font-weight:550;list-style:none}.mobile-pick-options>summary::-webkit-details-marker{display:none}.mobile-pick-options[open]>summary{margin-bottom:16px}.mobile-pick-options[open]>summary span{transform:rotate(45deg)}
 .mobile-web .mobile-title-search{margin:0 0 24px}.mobile-title-search label{display:block;font-size:12px;color:var(--color-muted);margin-bottom:8px}.mobile-title-search input{font-size:16px}
 .mobile-web .radar-section{margin-top:32px}.mobile-web .homesection .sectiontop{align-items:flex-start;flex-wrap:wrap}
}
@media(max-width:360px){.mobile-web .appheader{padding:0 16px}.mobile-web .workspace{padding-left:16px;padding-right:16px}.mobile-intro h1{font-size:32px}.mobile-search-home{margin-top:0}.mobile-composer{margin-top:20px}.mobile-ideas button{padding:9px 11px}}

@media(max-width:700px) and (max-height:740px){
 .mobile-home .workspace{padding-top:8px}.mobile-search-home{margin-top:0}.mobile-intro h1{font-size:30px;margin:12px 0 10px}.mobile-intro>p:last-child{font-size:14px;line-height:1.5}.mobile-composer{margin-top:18px;padding:14px 14px 10px}.mobile-composer textarea{height:90px;min-height:90px}.mobile-ideas{margin-top:18px}
}

/* Shared taste/search preferences */
.category-choice{display:flex;align-items:flex-start;gap:12px;padding:12px 0;cursor:pointer}.category-choice input{flex:0 0 auto;width:19px;height:19px;margin-top:3px;accent-color:var(--color-primary)}.category-choice span{min-width:0}.category-choice b{display:block;font-size:15px;font-weight:600}.category-choice small{display:block;margin-top:5px;color:var(--muted,var(--color-muted));line-height:1.5}.category-settings summary .small{font-weight:400}.taste-avoid{margin-top:16px}.taste-avoid summary,.taste-saved summary{cursor:pointer;color:var(--color-link);font-size:14px}.taste-avoid .chips{margin-top:14px}.taste-saved{margin:26px 0}.pick-year-range{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pick-year-range label{display:grid;gap:8px;color:var(--color-link)}.pick-year-range input{min-width:0;width:100%}.category-notice{color:var(--color-warning);background:var(--color-surface-subtle);padding:12px 16px;border-radius:12px;font-size:14px}.preferencegroup h3{line-height:1.35}.preferenceeditor .segmented{margin:12px 0}.category-settings{margin-top:18px}

/* Category controls: one compact list and an explicit restore action. */
.category-settings .pick-options-body{gap:14px}.category-list{display:grid;gap:0}.category-list .category-choice{margin:0;padding:14px 0}.category-list .category-choice+.category-choice{border-top:1px solid var(--line)}.category-settings .category-source{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px}.category-source .textbtn{color:var(--color-link);text-align:left}.category-source [hidden]{display:none}.category-settings .pick-help{margin:0;line-height:1.5}

.search-draft-tools{display:flex;align-items:flex-start;justify-content:space-between;gap:10px 24px;margin:0 0 24px;flex-wrap:wrap}.search-draft-tools .pick-help{flex:1 1 280px;margin:0;font-size:13px}.search-draft-tools .textbtn{color:var(--color-link);padding:0;font-size:13px}

.taste-editor .onboardfooter{grid-template-columns:1fr auto}.taste-editor .ontop{margin-bottom:24px}@media(max-width:600px){.taste-editor .onboardfooter{grid-template-columns:1fr}.taste-editor .onboardfooter>span{white-space:normal}.taste-editor .onboardfooter>.btn{width:100%}}

@media(max-width:700px){.mobile-web .taste-editor .onboardfooter{bottom:calc(70px + env(safe-area-inset-bottom));padding-bottom:12px}}

.account-data-actions{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border-top:1px solid var(--line);padding-top:12px}.account-data-actions .textbtn{min-height:44px;text-align:left}.account-data-actions [data-action="delete-account"]{color:var(--color-muted);font-size:12px}

/* Only the onboarding flow and account exit are reachable until completion/skip. */
.onboarding-required .appheader>.nav,.onboarding-required .globaltools .searchbar,.onboarding-required #recommendationShortcut,.onboarding-required #mobileNav,.onboarding-required #mobileLookup{display:none!important}
.onboarding-required .brand{pointer-events:none}
.onboarding-required .globaltools{margin-left:auto}
@media(max-width:700px){body.mobile-web.onboarding-required{padding-bottom:0}.onboarding-required .onboardfooter{bottom:0}.onboarding-required .ontop{gap:8px}.onboarding-required .ontop .textbtn{font-size:12px}}

/* Explain the outcome of each home action without adding another navigation block. */
.choosebutton.home-start{padding:25px 28px;gap:24px;text-align:left}
.home-start .home-start-copy{display:flex;flex-direction:column;gap:8px;min-width:0;flex-shrink:1;font-size:inherit;letter-spacing:normal}
.home-start-copy strong{font-size:21px;font-weight:600;line-height:1.35}
.home-start-copy small{font-size:14px;line-height:1.5;color:var(--color-muted);font-weight:400}
.home-start .home-start-arrow{font-size:30px}
.home-options button{justify-content:flex-start;align-items:flex-start;text-align:left;padding:23px 22px;gap:15px}
.home-options .home-option-icon{flex-shrink:0;padding-top:2px}
.home-option-copy{display:flex;flex-direction:column;gap:7px;min-width:0}
.home-options button b{font-size:15px;font-weight:600;line-height:1.4;max-width:none;white-space:normal}
.home-option-copy small{font-size:13px;line-height:1.55;color:var(--muted)}
@media(min-width:701px) and (max-width:950px){.home-options button{padding:20px 16px;flex-direction:column;gap:12px}.home-start-copy strong{font-size:19px}}

.choosebutton.home-start-simple{margin-top:24px;min-height:104px;padding:24px 28px;border:1px solid var(--color-border-strong);cursor:pointer;box-shadow:0 5px 16px rgb(var(--shadow-rgb) / 0.043)}
.home-start-simple strong{font-size:21px;font-weight:600;line-height:1.4}
.home-start-simple .home-start-arrow{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--color-glass);font-size:27px;transition:background .18s,transform .18s}
.home-start-simple:hover{background:var(--color-inverse);box-shadow:0 9px 24px rgb(var(--shadow-rgb) / 0.125)}
.home-start-simple:hover .home-start-arrow{background:var(--color-glass);transform:translateX(3px)}
.home-start-simple:focus-visible{outline:1px solid var(--color-primary-border);outline-offset:1px}
@media(prefers-reduced-motion:reduce){.home-start-simple,.home-start-simple .home-start-arrow{transition:none;transform:none}}

/* Keep the decision card and its actions in the available viewport. */
body:has(.discovery-page){padding-bottom:0}
.workspace:has(.discovery-page){padding-top:12px;padding-bottom:12px}
.discovery-page{height:calc(100dvh - 110px);max-width:640px;gap:12px}
.deck-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none}
.deck-heading h1{font-size:24px;line-height:1.2;letter-spacing:-.7px}
.deck-refresh-slot{flex:none}
.deck-refresh-slot .shake-recommendations{min-height:40px;font-size:12px;padding:8px 12px;border-radius:12px}
.discovery-page .deck{max-width:none}
.discovery-page .deck-toolbar{margin:0 0 10px}
.discovery-page .deck-toolbar .chips{display:flex;gap:6px;width:auto;margin:0}
.discovery-page .deck-toolbar .chip{min-height:36px;margin:0;font-size:13px;padding:6px 16px}
.discovery-page .discoverycard{flex:1;min-height:180px;max-height:420px;justify-content:flex-start;padding:20px;border-radius:22px;gap:16px}
.discovery-page .deck-identity{flex:none;grid-template-columns:88px minmax(0,1fr);gap:16px}
.discovery-page .deck-identity>.poster{width:88px;height:132px}
.discovery-page .discoveryintro h2{font-size:24px;line-height:1.2;margin:6px 0 8px}
.discovery-page .deck-kicker,.discovery-page .deck-rating{font-size:12px;line-height:1.45}
.discovery-page .discoverycopy{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;display:flex;flex-direction:column;gap:8px;flex:1}
.discovery-page .deck-fit{display:block;flex:none;margin:0;padding:12px 14px;border-radius:14px}
.discovery-page .deck-fit p{font-size:14px;line-height:1.45;-webkit-line-clamp:3}
.discovery-page .deck-fit>span{font-size:12px}
.discovery-page .deck-synopsis{display:-webkit-box;flex-shrink:0;font-size:13px;margin:0;-webkit-line-clamp:2}
.discovery-page .discoverycopy:has(.deck-fit) .deck-synopsis{display:none}
.discovery-page .deck-details{flex:none;align-self:flex-start;min-height:36px;margin-top:auto;font-size:13px;text-align:left;padding:6px 2px}
.discovery-page .deckactions{margin:10px 0 0;gap:8px}
.discovery-page .deckactions button{min-height:44px;padding:9px 10px;font-size:13px}
.discovery-page .deck-undo{margin:2px 0 0}
.discovery-page .deck-undo .textbtn{min-height:32px}
.discovery-page .deck-feedback{flex:1;min-height:0;margin:0;padding:20px;overflow:auto}
.discovery-page .shake-notice{flex:none;font-size:12px;margin:0 0 8px}
@media(min-width:701px) and (max-width:900px){
 .discovery-page{height:calc(100dvh - 188px - env(safe-area-inset-bottom))}
 .workspace:has(.discovery-page){padding-bottom:calc(90px + env(safe-area-inset-bottom))}
}
@media(max-width:700px){
 .mobile-web .workspace:has(.discovery-page){padding:8px 16px}
 .discovery-page{height:calc(100dvh - 155px - env(safe-area-inset-bottom));gap:8px}
 .deck-heading h1{font-size:21px;letter-spacing:-.5px}
 .deck-refresh-slot .shake-recommendations{font-size:12px;padding:8px;gap:4px;min-height:40px}
 .discovery-page .deck-toolbar{margin-bottom:8px}
 .discovery-page .deck-toolbar .chip{padding:6px 14px}
 .discovery-page .discoverycard{padding:14px;gap:12px;border-radius:18px}
 .discovery-page .deck-identity{grid-template-columns:68px minmax(0,1fr);gap:12px}
 .discovery-page .deck-identity>.poster{width:68px;height:102px}
 .discovery-page .discoveryintro h2{font-size:21px;margin:4px 0 6px}
 .discovery-page .deck-fit{padding:10px 12px}
 .discovery-page .deck-fit p{font-size:13px;-webkit-line-clamp:3}
 .discovery-page .deckactions button{font-size:12px;padding:8px;gap:6px}
}
@media(max-height:740px){
 .discovery-page .discoverycard{padding:12px;gap:10px}
 .discovery-page .deck-identity{grid-template-columns:60px minmax(0,1fr);gap:12px}
 .discovery-page .deck-identity>.poster{width:60px;height:90px}
 .discovery-page .discoveryintro h2{font-size:20px}
 .discovery-page .deck-fit{padding:8px 10px}
 .discovery-page .deck-fit p{font-size:13px;-webkit-line-clamp:2}
 .discovery-page .deck-synopsis{-webkit-line-clamp:2}
}
@media(max-width:360px){.deck-heading h1{font-size:19px}.deck-refresh-slot .shake-recommendations{font-size:11px}.discovery-page .deckactions button{gap:4px;font-size:11px}}
/* Short landscape windows and large text keep every control reachable. */
@media(max-height:550px){.discovery-page{height:auto;min-height:calc(100dvh - 155px)}.discovery-page .discoverycard{flex:none;min-height:220px}.workspace:has(.discovery-page){padding-bottom:90px}}

.discovery-page .discoverycard{flex:0 1 auto}
.discovery-page .deck-details{margin:2px 0 0;min-height:32px;padding:4px 0;color:var(--color-link)}
.discovery-page .discoverycopy{flex:0 1 auto}
@media(max-width:700px) and (max-height:620px){
 .discovery-page .discoverycard{gap:8px;padding:10px;min-height:180px}
 .discovery-page .deck-identity{grid-template-columns:52px minmax(0,1fr);gap:10px}
 .discovery-page .deck-identity>.poster{width:52px;height:78px}
 .discovery-page .discoveryintro h2{font-size:18px;margin:2px 0 4px}
 .discovery-page .deck-kicker,.discovery-page .deck-rating{font-size:11px}
 .discovery-page .deck-fit{padding:7px 9px}
 .discovery-page .deck-fit>span{display:none}
 .discovery-page .deck-fit p{margin:0;-webkit-line-clamp:1;font-size:12px}
}

/* V tochku color system: shared functional roles; see DESIGN_SYSTEM.md. */
:root{
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 --font-step:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
 --radius-control:14px;
 --radius-surface:24px;
 --radius-pill:999px;
 --motion-fast:160ms;
 
 
 
}
.brand-dot{background:var(--color-coral)}
.btn:not(.secondary):not(.ghost):not(.danger),.choosebutton.home-start-simple{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}
.btn:not(.secondary):not(.ghost):not(.danger):hover,.choosebutton.home-start-simple:hover{background:var(--color-primary-hover)}
.btn.secondary{background:var(--color-primary-soft);color:var(--color-link)}
.btn.secondary:hover{background:var(--color-surface-subtle)}
.btn.ghost{background:var(--color-surface);color:var(--color-link);border-color:var(--color-primary-border)}
.btn.danger{background:var(--color-danger-soft);color:var(--color-danger)}
.chip,.pill{border-radius:var(--radius-pill);border-color:var(--color-border);background:var(--color-surface);color:var(--color-muted)}
.chip.on{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}
.chip.on:hover{background:var(--color-primary-hover)}
input,textarea,select{background:var(--color-surface);border-color:var(--color-border);color:var(--color-ink);accent-color:var(--color-primary)}
input::placeholder,textarea::placeholder{color:var(--color-muted)}
.shake-recommendations{background:var(--color-lilac-soft);color:var(--color-link);border-color:var(--color-primary-border)}
.shake-recommendations:hover{background:var(--color-surface-subtle);border-color:var(--color-primary-border)}
.discovery-page .deck-fit{background:var(--color-lilac-soft);color:var(--color-link)}
.discovery-page .deck-fit p,.discovery-page .deck-fit>span{color:var(--color-link)}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:1px solid var(--color-primary);outline-offset:1px;box-shadow:0 0 0 2px rgb(var(--shadow-rgb) / 1.000)}

.btn{border-radius:var(--radius-control)}

/* Onboarding: compact editorial selection, shared color system. */
.workspace:has(.onboarding-flow){padding-top:20px;padding-bottom:18px}
.onboarding-flow{max-width:1020px;margin:0 auto;padding-bottom:12px}
.onboarding-flow .ontop{min-height:38px;margin:0 0 16px;gap:12px;color:var(--color-muted)}
.onboarding-flow .ontop .textbtn{min-height:40px;font-size:13px;color:var(--color-link)}
.onboarding-flow .onstep-label{font-size:12px;font-weight:600;letter-spacing:.02em}
.onboarding-flow .steps.namedsteps{max-width:680px;margin:0 auto 26px;gap:8px}
.onboarding-flow .namedsteps button{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:8px;border-radius:999px;color:var(--color-muted);font-size:12px;transition:background .18s,color .18s}
.onboarding-flow .namedsteps button::after{display:none}
.onboarding-flow .step-number{display:grid;place-items:center;flex:none;width:24px;height:24px;border:1px solid var(--line);border-radius:50%;font-variant-numeric:tabular-nums;font-size:11px}
.onboarding-flow .namedsteps button.done{color:var(--color-link)}
.onboarding-flow .namedsteps button[aria-current="step"]{background:var(--color-lilac-soft);color:var(--color-link);font-weight:650}
.onboarding-flow .namedsteps button[aria-current="step"] .step-number{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}
.onboarding-flow .onheading{max-width:740px;margin:0 auto 24px;text-align:center}
.onboarding-flow .onheading h1{font-size:clamp(28px,3.4vw,40px);line-height:1.12;letter-spacing:-1.3px}
.onboarding-flow .onheading p{max-width:620px;margin:12px auto 0;font-size:14px;line-height:1.55;color:var(--color-muted)}
.onboarding-flow .onfilters{max-width:none;gap:16px;margin:0 0 24px;padding:0;display:flex;justify-content:space-between}
.onboarding-flow .onfilters>.chips{margin:0;gap:6px}
.onboarding-flow .onfilters .chip{min-height:40px;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:var(--color-surface);color:var(--color-muted);font-size:13px}
.onboarding-flow .onfilters .chip.on{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}
.onboarding-flow .onfilters input{max-width:300px;min-height:44px;background:var(--color-surface);border:1px solid var(--line);border-radius:14px;font-size:14px}
.onboarding-flow .bubblefield{grid-template-columns:repeat(8,minmax(0,1fr));gap:24px 16px;padding:6px 4px 38px;align-items:start}
.onboarding-flow .bubble,.onboarding-flow .bubble:nth-child(even){padding:0;align-items:stretch;text-align:left;border-radius:14px;scroll-margin-block:110px}
.onboarding-flow .bubble .bubbleart{width:100%;height:auto;aspect-ratio:2/3;border-radius:14px;background:var(--color-blue-mist);transition:transform .18s,box-shadow .18s}
.onboarding-flow .bubbleart img,.onboarding-flow .bubble .posterfallback{border-radius:14px;object-position:center}
.onboarding-flow .bubble>b{max-width:none;font-size:12px;line-height:1.35;margin:10px 0 4px;font-weight:600;color:var(--color-ink)}
.onboarding-flow .bubble>small{font-size:11px;color:var(--color-muted)}
.onboarding-flow .bubble.on{animation:none}
.onboarding-flow .bubble.on .bubbleart{box-shadow:0 0 0 3px var(--color-canvas),0 0 0 5px var(--color-primary);transform:none}
.onboarding-flow .bubbletick{top:6px;right:6px;bottom:auto;width:26px;height:26px;border:2px solid var(--color-border);background:var(--color-primary);font-size:13px}
.onboarding-flow .onboardfooter{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;max-width:760px;margin:0 auto;position:sticky;bottom:16px;padding:12px 16px 12px 24px;border:0;border-radius:24px;background:var(--color-primary);backdrop-filter:none;box-shadow:0 8px 28px rgb(var(--shadow-rgb) / 0.141);z-index:9}
.onboarding-flow:has(.bubblefield) .onboardfooter{box-shadow:0 8px 28px rgb(var(--shadow-rgb) / 0.141)}
.onboarding-flow .onboardfooter>span{color:var(--color-on-inverse);font-size:14px;font-weight:500;white-space:normal}
.onboarding-flow .onboardfooter>button.btn:not(.danger){min-width:142px;min-height:46px;padding:12px 20px;background:var(--color-surface);color:var(--color-link);border-radius:16px;font-size:14px;font-weight:650}
.onboarding-flow .onboardfooter>.textbtn{color:var(--color-on-inverse)}
.onboarding-flow .preferenceeditor{background:var(--color-surface)}
.onboarding-flow .inline-reactions button.on{background:var(--color-primary-soft);color:var(--color-link);border-color:var(--color-primary)}
@media(hover:hover){
 .onboarding-flow .bubble:hover .bubbleart{transform:translateY(-3px)}
 .onboarding-flow .namedsteps button:hover{background:var(--color-primary-soft);color:var(--color-link)}
 .onboarding-flow .onfilters .chip:not(.on):hover{background:var(--color-primary-soft)}
 .onboarding-flow .onboardfooter>button.btn:not(.danger):hover{background:var(--color-primary-soft)}
}
@media(max-width:1000px){.onboarding-flow .bubblefield{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:700px){
 .workspace:has(.onboarding-flow){padding-top:12px;padding-bottom:12px}
 .onboarding-flow .ontop{margin-bottom:10px;gap:6px}
 .onboarding-flow .onstep-label{font-size:11px}
 .onboarding-flow .ontop .textbtn{font-size:12px}
 .onboarding-flow .steps.namedsteps{gap:4px;margin-bottom:22px}
 .onboarding-flow .namedsteps button{flex-direction:column;gap:6px;height:66px;padding:8px 2px;border-radius:14px;font-size:10px}
 .onboarding-flow .namedsteps button>span:last-child{display:block;max-width:100%;min-height:26px;line-height:1.3;overflow-wrap:normal}
 .onboarding-flow .onheading{margin-bottom:20px}
 .onboarding-flow .onheading h1{font-size:29px;letter-spacing:-.9px}
 .onboarding-flow .onheading p{font-size:13px;line-height:1.5}
 .onboarding-flow .onfilters{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:18px}
 .onboarding-flow .onfilters>.chips{justify-content:center}
 .onboarding-flow .onfilters input{max-width:none;font-size:16px}
 .onboarding-flow .onfilters .chip{font-size:12px;padding:8px 15px}
 .onboarding-flow .bubblefield{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 12px;padding:6px 4px 28px}
 .onboarding-flow .bubble>b{font-size:12px;margin-top:9px}
 .onboarding-flow .bubble>small{font-size:10px}
 .onboarding-flow .onboardfooter{bottom:calc(10px + env(safe-area-inset-bottom));border-radius:20px;padding:10px 12px 10px 16px;gap:10px}
 .onboarding-flow .onboardfooter>span{font-size:12px;flex:1;min-width:70px}
 .onboarding-flow .onboardfooter>button.btn:not(.danger){min-width:114px;min-height:44px;padding:10px 14px;font-size:13px;border-radius:12px}
 .onboarding-flow .onboardfooter>.btn[data-action="commit-draft"]{flex:1}
}
@media(prefers-reduced-motion:reduce){.onboarding-flow .bubble,.onboarding-flow .bubbleart,.onboarding-flow .bubbletick,.onboarding-flow .namedsteps button{transition:none;animation:none}.onboarding-flow .bubble:hover .bubbleart{transform:none}}

/* Keep the onboarding choices in the first viewport. */
body:has(.onboarding-flow) .appheader{height:60px}
.workspace:has(.onboarding-flow){padding-top:14px}
.onboarding-flow .ontop{position:relative;min-height:0;height:0;margin:0}
.onboarding-flow .onstep-label{display:none}
.onboarding-flow .ontop .textbtn{position:absolute;right:0;top:0;min-height:40px}
.onboarding-flow .ontop [data-action="on-back"]{right:166px}
.onboarding-flow .steps.namedsteps{max-width:620px;width:calc(100% - 250px);margin:0 250px 16px 0;gap:4px}
.onboarding-flow .namedsteps button{height:40px;padding:6px;font-size:11px;gap:6px}
.onboarding-flow .step-number{width:22px;height:22px}
.onboarding-flow .onheading{max-width:none;margin:0 0 16px;text-align:left}
.onboarding-flow .onheading h1{font-size:28px;letter-spacing:-.8px}
.onboarding-flow .onheading p{max-width:none;margin:7px 0 0;font-size:13px;line-height:1.45}
.onboarding-flow .onfilters{margin-bottom:14px}
.onboarding-flow .onboardfooter{max-width:420px;width:100%;padding:8px 10px 8px 18px;border-radius:18px;gap:16px}
.onboarding-flow .onboardfooter>button.btn:not(.danger){min-height:44px;min-width:120px;padding:10px 16px;border-radius:12px}
@media(max-width:850px){
 .onboarding-flow .steps.namedsteps{width:calc(100% - 210px);margin-right:210px}
 .onboarding-flow .namedsteps button{flex-direction:column;height:56px;gap:4px;font-size:10px;border-radius:12px}
 .onboarding-flow .ontop [data-action="on-back"]{right:136px}
}
@media(max-width:700px){
 body:has(.onboarding-flow) .appheader{height:54px}
 .workspace:has(.onboarding-flow){padding-top:4px}
 .onboarding-flow .ontop{height:38px;min-height:38px;margin-bottom:4px}
 .onboarding-flow .ontop .textbtn{min-height:36px}
 .onboarding-flow .ontop [data-action="on-back"]{left:0;right:auto}
 .onboarding-flow .steps.namedsteps{width:100%;max-width:none;margin:0 0 14px}
 .onboarding-flow .namedsteps button{height:56px;padding:5px 2px;gap:4px}
 .onboarding-flow .onheading{margin-bottom:14px}
 .onboarding-flow .onheading h1{font-size:24px;letter-spacing:-.6px}
 .onboarding-flow .onheading p{font-size:12px;margin-top:6px}
 .onboarding-flow .onfilters{gap:8px;margin-bottom:12px}
 .onboarding-flow .onfilters>.chips{justify-content:flex-start}
 .onboarding-flow .onboardfooter{max-width:340px;padding:8px 10px 8px 14px;gap:12px;border-radius:16px}
 .onboarding-flow .onboardfooter>button.btn:not(.danger){min-width:108px;font-size:13px}
}

/* One-pass onboarding: compact reactions directly on each poster. */
.onboarding-unified .steps.namedsteps{grid-template-columns:repeat(2,minmax(0,1fr));max-width:370px}
.onboarding-unified .namedsteps button{flex-direction:row;height:40px;font-size:12px}
.onboarding-unified .namedsteps button>span:last-child{min-height:0}
.onboarding-unified .bubblefield{grid-template-columns:repeat(6,minmax(0,1fr));gap:22px 18px}
.onboarding-unified .bubble{scroll-margin-bottom:100px;align-items:stretch;cursor:default}
.onboarding-unified .bubble .bubbleart{width:100%;margin:0;aspect-ratio:2/3;position:relative}
.onboarding-unified .bubble.on .bubbleart,.onboarding-unified .bubble:hover .bubbleart{box-shadow:none;transform:none}
.onboarding-unified .bubble>b{min-height:32px;font-size:12px;line-height:1.3;margin:8px 0 3px}
.onboarding-unified .bubbletick{width:24px;height:24px;font-size:15px;line-height:1}
.onboarding-unified .onboardfooter{display:block;max-width:420px;padding:8px 12px 8px 18px}
.onboarding-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}
.onboarding-footer-bottom>span{font-size:12px;color:var(--color-on-inverse)}
.onboarding-unified .onboardfooter .onboarding-footer-bottom>.btn:not(.danger){min-height:40px;min-width:124px;background:var(--color-surface);color:var(--color-link);font-size:13px;border-radius:12px;padding:8px 16px}
.onboarding-reactions{position:absolute;bottom:6px;left:6px;right:6px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:3px;border-radius:11px;background:var(--color-surface);box-shadow:0 2px 12px rgb(var(--shadow-rgb) / 0.200)}
.onboarding-reactions button{display:grid;place-items:center;min-width:0;min-height:34px;padding:0;border-radius:8px;color:var(--color-muted);background:transparent;font-size:20px;line-height:1;transition:background .15s,color .15s}
.onboarding-reactions button.on{background:var(--color-primary);color:var(--color-on-primary)}
.onboarding-reactions button:focus-visible{outline-offset:-2px}
.onboarding-rating-tools{display:flex;align-items:center;justify-content:space-between;gap:2px;min-height:30px}
.onboarding-rating-tools .textbtn{padding:5px 0;font-size:10px;min-height:30px;white-space:normal;text-align:left}
.onboarding-rating-tools [data-action="onboarding-clear"]{width:28px;flex:none;text-align:center;font-size:19px}
.onboarding-rating-tools .clear-empty{visibility:hidden}
.reaction-legend{display:flex;flex-wrap:wrap;gap:6px 18px;margin:-6px 0 14px;color:var(--color-muted);font-size:12px}
.reaction-legend span{display:inline-flex;align-items:center;gap:5px}.reaction-legend b{font-weight:400;font-size:18px;color:var(--color-link)}
@media(hover:hover){.onboarding-reactions button:not(.on):hover{background:var(--color-primary-soft);color:var(--color-link)}}
@media(max-width:1100px){.onboarding-unified .bubblefield{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:900px){.onboarding-unified .bubblefield{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){
 .onboarding-unified .steps.namedsteps{max-width:360px;width:100%}
 .onboarding-unified .namedsteps button{font-size:12px;gap:8px}
 .onboarding-unified .onheading h1{font-size:24px}
 .onboarding-unified .bubblefield{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}
 .onboarding-unified .onboardfooter{max-width:340px;padding:8px 10px 8px 14px}
 .onboarding-unified .bubble>b{font-size:13px}
 .onboarding-rating-tools .textbtn{min-height:34px}
 .onboarding-reactions button{min-height:38px}
 .reaction-legend{gap:2px 12px;font-size:11px}
}
@media(max-width:350px){.onboarding-reactions{left:3px;right:3px;padding:2px;gap:1px}.onboarding-reactions button{min-height:34px;font-size:18px}}
@media(prefers-reduced-motion:reduce){.onboarding-reactions button{transition:none}}
