:root{--app-height:100vh;--shell-padding:12px;--logo-color:#2bc6f6;--text-primary:#f4f7fa;--text-secondary:#a9b4c2;--bg-primary:#0a0f1f;--bg-secondary:#1c2a44;--bg-solid:#1f1c19;--feature-icon:#2bc6f6;--button-primary:#1a9bc5;--button-secondary:#f0a500;--button-text-dark:#000;--danger:#c84444;--movie-card-max-height:clamp(420px,68vh,680px)}@supports (height:100dvh){:root{--app-height:100dvh}}*{box-sizing:border-box}body,html{margin:0;height:100%;min-height:100%;padding:0;background-color:#070d1d;color-scheme:dark}body{min-height:var(--app-height);color:var(--text-primary);font-family:Avenir Next,Trebuchet MS,Gill Sans,Segoe UI,sans-serif;background:radial-gradient(circle at 20% 10%,rgba(43,198,246,.14),transparent 40%),radial-gradient(circle at 80% 0,rgba(240,165,0,.12),transparent 35%),radial-gradient(circle at 50% 100%,rgba(28,42,68,.8),transparent 55%),linear-gradient(180deg,#070d1d,#121212)}.join-entry-page,.landing-page{min-height:var(--app-height);padding:var(--shell-padding)}.join-entry-panel,.landing-panel{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.06);border-radius:24px;background:linear-gradient(170deg,rgba(28,42,68,.82),rgba(10,15,31,.96)),linear-gradient(180deg,rgba(10,15,31,.92),rgba(18,18,18,.96));box-shadow:0 20px 40px rgba(0,0,0,.32)}.join-entry-panel:before,.landing-panel:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 0);background-size:16px 16px;opacity:.28;pointer-events:none}.landing-panel{width:min(1100px,100%);margin:0 auto;padding:clamp(18px,3vw,30px);display:grid;grid-gap:22px;gap:22px}.join-entry-page{display:flex;align-items:center;justify-content:center}.join-entry-panel{width:min(760px,100%);padding:clamp(22px,4vw,36px);display:grid;grid-gap:18px;gap:18px;z-index:1}.join-actions,.join-code-badge,.join-entry-copy,.join-entry-logo,.join-notes,.landing-cta-panel,.landing-feature-grid,.landing-hero,.landing-nav,.landing-steps{position:relative;z-index:1}.landing-nav{justify-content:flex-start;gap:16px}.landing-brand,.landing-nav{display:flex;align-items:center}.join-entry-logo,.landing-logo{display:block;width:min(220px,100%);height:auto;filter:drop-shadow(0 10px 18px rgba(43,198,246,.18))}.join-entry-logo{justify-self:center}.landing-nav-link{color:var(--text-secondary);text-decoration:none;font-weight:700}.landing-hero{display:grid;grid-gap:clamp(20px,3vw,30px);gap:clamp(20px,3vw,30px);align-items:center}.landing-copy{display:grid;grid-gap:14px;gap:14px}.landing-eyebrow{margin:0;color:var(--logo-color);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.landing-eyebrow-slogan{font-size:.98rem;letter-spacing:.02em;text-transform:none}.join-entry-title,.landing-title{margin:0;letter-spacing:-.03em}.landing-title{max-width:10ch;font-size:clamp(2.3rem,6vw,4.4rem);line-height:.98}.join-entry-title{font-size:clamp(2rem,6vw,3.2rem);text-align:center}.join-entry-subtitle,.landing-subtitle{margin:0;color:var(--text-secondary);font-size:clamp(1rem,1.9vw,1.15rem);line-height:1.55}.landing-subtitle{max-width:50ch}.join-entry-subtitle{text-align:center}.landing-actions{display:flex;gap:12px;flex-wrap:wrap}.landing-actions-compact{justify-content:flex-end}.landing-preview{display:flex;justify-content:center}.landing-preview-frame{position:relative;width:min(460px,100%);aspect-ratio:1320/2868;display:grid;place-items:center}.landing-preview-glow{position:absolute;inset:9% 12% 9%;border-radius:44px;background:radial-gradient(circle at 50% 18%,rgba(43,198,246,.26),transparent 32%),radial-gradient(circle at 50% 84%,rgba(43,198,246,.14),transparent 24%),radial-gradient(circle at 50% 52%,rgba(255,255,255,.18),transparent 58%);filter:blur(18px);opacity:.96}.landing-preview-shot{position:relative;z-index:1;width:100%;height:100%;border-radius:42px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 28px 56px rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,255,255,.04);background:#030913}.landing-preview-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center top}.join-notes,.landing-feature-grid,.landing-steps{display:grid;grid-gap:12px;gap:12px}.landing-feature-grid,.landing-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.join-code-badge,.landing-cta-panel,.landing-feature-card,.landing-step{border:1px solid rgba(255,255,255,.08);border-radius:20px;background:linear-gradient(165deg,rgba(10,16,34,.82),rgba(7,14,30,.76))}.landing-feature-card,.landing-step{padding:16px}.landing-cta-panel h2,.landing-feature-card h2,.landing-step h3{margin:0 0 8px}.landing-feature-card p,.landing-step p{margin:0;color:var(--text-secondary);line-height:1.55}.landing-step{display:grid;grid-gap:8px;gap:8px}.landing-step span{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;background:var(--button-primary);color:var(--button-text-dark);font-weight:800}.landing-cta-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px}.landing-cta-panel h2{max-width:22ch}.join-code-badge{padding:20px;display:grid;grid-gap:8px;gap:8px;text-align:center}.join-code-badge-muted{opacity:.7}.join-code-label{color:var(--text-secondary);font-size:.86rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.join-code-value{font-size:clamp(1.8rem,7vw,2.7rem);font-weight:800;letter-spacing:.22em}.join-actions{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.join-actions .btn{width:100%}.join-notes{grid-template-columns:repeat(2,minmax(0,1fr))}a{color:inherit}button,input,select{font:inherit}.app-shell{margin:0 auto;max-width:1024px;min-height:var(--app-height);padding:var(--shell-padding)}.page-panel{position:relative;display:flex;min-height:calc(var(--app-height) - (var(--shell-padding) * 2));height:calc(var(--app-height) - (var(--shell-padding) * 2));flex-direction:column;border:1px solid rgba(255,255,255,.06);border-radius:20px;background:linear-gradient(170deg,rgba(28,42,68,.8),rgba(10,15,31,.95)),linear-gradient(180deg,rgba(10,15,31,.92),rgba(18,18,18,.95));box-shadow:0 20px 40px rgba(0,0,0,.32);overflow:hidden}.page-panel:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 0);background-size:16px 16px;opacity:.28;pointer-events:none}.screen{position:relative;z-index:1;display:flex;flex:1 1;min-height:0;flex-direction:column;gap:16px;overflow-y:auto;overscroll-behavior:contain;padding:12px;animation:fadeSlide .36s ease}.screen-fit-viewport{overflow:hidden;padding-bottom:calc(12px + env(safe-area-inset-bottom, 0px))}.screen-flow-state{padding-top:14px}@keyframes fadeSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.top-bar{display:flex;align-items:center;justify-content:space-between;gap:10px}.icon-button{border:0;border-radius:999px;background:rgba(255,255,255,.08);color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 12px;font-weight:700;transition:background .14s ease,transform .14s ease}.icon-button:hover{background:rgba(255,255,255,.16)}.brand-logo{align-self:center;display:block;max-width:min(320px,80vw);width:100%;height:auto;filter:drop-shadow(0 10px 18px rgba(43,198,246,.18))}.title-block{display:grid;grid-gap:6px;gap:6px;text-align:center}.title{margin:0;font-size:clamp(1.35rem,2.6vw,2rem);letter-spacing:.01em}.subtitle{margin:0;color:var(--text-secondary);font-size:clamp(.92rem,1.6vw,1.02rem)}.screen-home{min-height:0}.home-layout{display:flex;flex:1 1;flex-direction:column;justify-content:center;gap:14px;width:min(540px,100%);margin:0 auto;padding:8px 0 16px}.home-title-block{margin:0 auto;max-width:460px}.home-actions{display:grid;grid-gap:12px;gap:12px}.home-button,.home-tile{border:0;border-radius:12px;cursor:pointer;box-shadow:0 10px 18px rgba(0,0,0,.28);transition:transform .12s ease,filter .12s ease,opacity .12s ease}.home-button:active,.home-tile:active{transform:translateY(1px) scale(.995)}.home-tile{align-items:center;display:flex;flex-direction:column;gap:8px;justify-content:center;min-height:96px;padding:12px;font-size:1.05rem;font-weight:700}.home-tile img{width:44px;height:44px;object-fit:contain}.home-tile-primary{background:var(--button-primary);color:var(--button-text-dark)}.home-button{align-items:center;grid-column-gap:10px;column-gap:10px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;min-height:56px;padding:10px 14px}.home-button img{width:24px;height:24px;object-fit:contain}.home-button span{text-align:center;font-weight:700}.home-button-secondary{background:var(--button-secondary);color:var(--button-text-dark)}.home-button[disabled]{cursor:not-allowed;opacity:.72;filter:saturate(.35)}.home-soon-badge{border-radius:999px;background:rgba(8,12,22,.22);padding:3px 8px;font-size:.66rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.home-note{margin:2px 0 0;text-align:center}.home-meta{display:grid;grid-gap:8px;gap:8px;justify-items:center}.home-site-link{border:0;background:transparent;color:var(--logo-color);cursor:pointer;font:inherit;font-weight:700;padding:0}.home-site-link:hover{text-decoration:underline}.btn-col,.btn-row{display:flex;gap:10px}.btn-col{flex-direction:column}.btn-row{flex-wrap:wrap}.btn{border:0;border-radius:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:50px;min-width:44px;font-weight:700;padding:0 16px;text-decoration:none;transition:transform .12s ease,filter .12s ease,opacity .12s ease;box-shadow:0 8px 18px rgba(0,0,0,.25)}.btn:active{transform:translateY(1px) scale(.99)}.btn[disabled]{cursor:not-allowed;opacity:.65;filter:saturate(.5)}.btn-primary{background:var(--button-primary)}.btn-primary,.btn-secondary{color:var(--button-text-dark)}.btn-secondary{background:var(--button-secondary)}.btn-ghost{background:rgba(255,255,255,.08);color:var(--text-primary)}.card-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.option-card{border-radius:14px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(240,165,0,.98),rgba(223,149,0,.94));box-shadow:0 10px 18px rgba(0,0,0,.24);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:98px;padding:12px;text-align:center;transition:transform .16s ease,filter .16s ease,background .16s ease}.option-card:hover{transform:translateY(-2px);filter:brightness(1.03)}.option-card.selected{border-color:rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(26,155,197,.98),rgba(21,138,176,.94))}.option-card img{width:40px;height:40px;object-fit:contain}.option-label{color:var(--button-text-dark);font-size:.9rem;font-weight:600;line-height:1.2}.filters-header{display:grid;grid-gap:10px;gap:10px;justify-items:center}.filters-header .title-block{width:min(100%,520px)}.filters-step-indicator{margin:0;border-radius:999px;background:rgba(26,155,197,.22);color:var(--logo-color);padding:4px 10px;font-size:.8rem;font-weight:700;letter-spacing:.03em}.filters-desktop-layout,.filters-mobile-stack{display:grid;grid-gap:12px;gap:12px}.filters-mobile-layout{display:grid;grid-gap:12px;gap:12px;grid-template-rows:auto minmax(0,1fr) auto;flex:1 1;min-height:0}.filters-desktop-shell{display:grid;grid-gap:8px;gap:8px;grid-template-rows:auto minmax(0,1fr) auto;flex:1 1;min-height:0;width:min(100%,940px);margin:0 auto}.filters-desktop-stage,.filters-mobile-stage{min-height:0;overflow-y:auto;overscroll-behavior:contain}.filters-actions{margin-top:auto}.filters-actions .btn{flex:1 1 150px}.filters-select-row .select-field{flex:1 1 180px}.section{border-radius:16px;background:linear-gradient(165deg,rgba(10,16,34,.9),rgba(7,14,30,.78));border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);padding:14px}.section-title{margin:0 0 6px;font-size:1.02rem}.section-subtitle{margin:0;color:var(--text-secondary);font-size:.9rem}.field,.select-field{width:100%;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(8,12,22,.75);color:var(--text-primary);min-height:46px;padding:0 12px}.range-row{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.range-value{color:var(--text-secondary);font-size:.85rem}.quick-pills{display:flex;flex-wrap:wrap;gap:8px}.pill{border:0;border-radius:999px;background:rgba(26,155,197,.28);color:var(--text-primary);min-height:36px;padding:0 12px;cursor:pointer}.code-line{font-size:clamp(1.35rem,3vw,2rem);font-weight:800;letter-spacing:.22em;text-align:center}.waiting-room-shell{display:grid;grid-gap:14px;gap:14px;grid-template-rows:auto auto minmax(0,1fr) auto;flex:1 1;min-height:0;width:min(100%,720px);margin:0 auto}.paired-loading-shell{display:flex;flex-direction:column;gap:14px;flex:1 1;min-height:0;width:min(100%,640px);margin:0 auto;overflow-y:auto;overscroll-behavior:contain}.waiting-room-header{display:grid;grid-gap:10px;gap:10px;justify-items:center}.screen-paired-loading .brand-logo,.screen-waiting-room .brand-logo{max-width:min(220px,54vw)}.waiting-share-card{padding:16px}.waiting-share-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:auto minmax(0,1fr);align-items:center}.waiting-qr-wrap{margin:0}.waiting-code-block{display:grid;grid-gap:8px;gap:8px;align-content:center}.waiting-helper-copy{margin:0;max-width:34ch}.waiting-status-card{min-height:0;overflow-y:auto;overscroll-behavior:contain}.paired-loading-card,.waiting-empty-state{display:grid;justify-items:center;align-content:center;grid-gap:12px;gap:12px;min-height:170px;text-align:center}.waiting-spinner{width:34px;height:34px;border:3px solid rgba(255,255,255,.16);border-top:3px solid var(--logo-color);border-radius:999px;animation:waitingSpin .9s linear infinite}@keyframes waitingSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.qr-wrap{align-self:center;display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;margin:8px auto 0;background:#fff;border-radius:16px;padding:12px}.qr-code{display:block;width:190px!important;height:190px!important}.participants{display:flex;flex-direction:column;gap:8px}.participant{align-items:center;background:linear-gradient(145deg,rgba(240,165,0,.94),rgba(216,138,0,.9));border-radius:10px;color:#0f0f0f;display:grid;grid-gap:8px;gap:8px;grid-template-columns:1fr auto auto;min-height:46px;padding:8px 10px}.participant-name{font-weight:700}.participant-status{border-radius:999px;background:rgba(8,12,22,.14);padding:3px 10px;font-size:.78rem;font-weight:700}.participant-role{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.participant-kick-button{min-height:34px;padding:0 10px;background:rgba(8,12,22,.12);color:#0f0f0f;font-size:.78rem;justify-self:end}.participant-kick-button:hover{background:rgba(8,12,22,.2)}.waiting-actions{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:auto}.waiting-actions .btn{width:100%}.waiting-actions-single{grid-template-columns:minmax(0,1fr);width:min(100%,320px);margin-inline:auto}.swipe-shell{display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr);grid-template-areas:"header" "main";grid-template-rows:auto minmax(0,1fr);flex:1 1;min-height:0;align-content:start}.complete-shell,.swipe-main{min-height:0}.swipe-main-header{grid-area:header;display:grid;justify-items:center}.swipe-main{grid-area:main}.swipe-card-column,.swipe-main{display:grid;grid-gap:12px;gap:12px;min-height:0;align-content:start}.swipe-card-column{grid-template-rows:minmax(0,1fr)}.screen-complete .brand-logo,.screen-swipe .brand-logo,.screen-swipe-waiting .brand-logo{max-width:min(180px,46vw)}.screen-complete .section,.screen-swipe .section{padding:12px}.progress{height:5px;border-radius:999px;background:rgba(255,255,255,.16);overflow:hidden}.progress>span{display:block;height:100%;background:var(--logo-color)}.swipe-card{position:relative;border-radius:18px;border:1px solid rgba(255,255,255,.1);width:min(100%,500px);max-width:100%;aspect-ratio:1/1.4;max-height:var(--movie-card-max-height);min-height:0;margin:0 auto;overflow:hidden;background:rgba(0,0,0,.5)}.swipe-card-draggable{touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:-webkit-grab;cursor:grab;will-change:transform}.swipe-card-draggable:active{cursor:-webkit-grabbing;cursor:grabbing}.swipe-card img{width:100%;height:100%;display:block;object-fit:cover}.reco-card>.ent-card-flip-scene,.swipe-card>.ent-card-flip-scene{height:100%}.complete-card-stage,.swipe-card-stage{min-height:0;display:flex;align-items:flex-start;justify-content:center;width:100%}.reco-title,.swipe-card-title{margin:0}.swipe-hint{position:absolute;top:18px;z-index:2;border-radius:8px;font-size:1rem;font-weight:800;letter-spacing:.08em;padding:6px 10px;pointer-events:none}.swipe-hint-pass{left:14px;border:2px solid rgba(255,130,130,.95);color:rgba(255,180,180,1);transform:rotate(-12deg)}.swipe-hint-like{right:14px;border:2px solid rgba(137,229,127,.95);color:rgba(184,255,176,1);transform:rotate(12deg)}.swipe-card-overlay{position:absolute;inset:auto 0 0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(10,15,31,.95) 55%,rgba(10,15,31,.98));padding:16px}.ent-card-flip-scene{perspective:1400px}.ent-card-flip,.ent-card-flip-scene{position:relative;width:100%;height:100%}.ent-card-flip{border-radius:inherit;transform-style:preserve-3d;transition:transform .54s cubic-bezier(.22,1,.36,1)}.ent-card-flip.is-flipped{transform:rotateY(180deg)}.ent-card-face{position:absolute;inset:0;border-radius:inherit;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden}.ent-card-face>img,.ent-card-placeholder{position:absolute;inset:0;width:100%;height:100%}.ent-card-front{background:#111824}.ent-card-back{transform:rotateY(180deg);background:#0d1422}.ent-card-flip-scene.is-phone{perspective:none;overflow:hidden}.ent-card-flip-scene.is-phone .ent-card-flip{transform:none!important;transform-style:flat}.ent-card-flip-scene.is-phone .ent-card-face{backface-visibility:visible;-webkit-backface-visibility:visible;transition:opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1)}.ent-card-flip-scene.is-phone .ent-card-front{z-index:2;opacity:1;transform:translateX(0);pointer-events:auto}.ent-card-flip-scene.is-phone .ent-card-back{z-index:1;opacity:0;transform:translateX(8%);pointer-events:none}.ent-card-flip-scene.is-phone.is-flipped .ent-card-front{opacity:0;transform:translateX(-8%);pointer-events:none}.ent-card-flip-scene.is-phone.is-flipped .ent-card-back{z-index:2;opacity:1;transform:translateX(0);pointer-events:auto}.ent-card-front-overlay{position:absolute;inset:auto 0 0;z-index:1;display:grid;grid-gap:11px;gap:11px;padding:18px;max-height:100%;overflow:auto;overscroll-behavior:contain;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(8,13,22,.68) 36%,rgba(8,13,22,.96))}.ent-card-backdrop{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,7,13,.24),rgba(4,7,13,.78) 34%,rgba(4,7,13,.98))}.ent-card-back-content{position:relative;z-index:1;display:grid;grid-gap:12px;gap:12px;height:100%;padding:18px;overflow:auto;align-content:start;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.ent-card-back-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ent-card-heading-stack{display:grid;grid-gap:4px;gap:4px}.ent-card-media-kicker{margin:0;color:rgba(244,247,250,.68);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.ent-card-back-header .inline-note,.ent-card-overview .inline-note,.ent-card-status-block .inline-note{margin:0}.ent-card-tagline{margin:0;color:var(--text-secondary);font-size:.9rem;font-style:italic;line-height:1.45}.ent-card-action-row{display:flex;gap:10px;flex-wrap:wrap}.ent-card-cta{display:inline-flex;align-items:center;gap:8px;min-height:42px;border:0;border-radius:999px;padding:0 16px;cursor:pointer;font:inherit;font-weight:800;letter-spacing:.01em;transition:transform .14s ease,opacity .14s ease,filter .14s ease,background .14s ease}.ent-card-cta:hover:not(:disabled){transform:translateY(-1px)}.ent-card-cta:disabled{cursor:not-allowed;opacity:.62}.ent-card-cta-primary{color:#04111a;background:linear-gradient(135deg,#f0a500,#ffd15f);box-shadow:0 10px 20px rgba(240,165,0,.26)}.ent-card-cta-secondary{color:var(--text-primary);background:rgba(8,13,22,.55);border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 24px rgba(0,0,0,.18)}.ent-card-cta-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:rgba(4,17,26,.14);font-size:.84rem;font-weight:900;line-height:1}.ent-card-cta-secondary .ent-card-cta-icon{background:rgba(255,255,255,.08)}.ent-card-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.ent-card-detail-pill{display:grid;grid-gap:4px;gap:4px;padding:10px 12px;border-radius:14px;background:rgba(28,42,68,.72);border:1px solid rgba(255,255,255,.08);font-size:.84rem}.ent-card-detail-label{color:var(--text-secondary);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ent-card-detail-row,.ent-card-overview,.ent-card-status-block{display:grid;grid-gap:6px;gap:6px;padding:12px 14px;border-radius:14px;background:rgba(8,13,22,.52);border:1px solid rgba(255,255,255,.06)}.ent-card-detail-row span:last-child,.ent-card-overview p{line-height:1.45}.ent-card-placeholder{background:radial-gradient(circle at 28% 18%,rgba(43,198,246,.24),transparent 26%),radial-gradient(circle at 78% 10%,rgba(240,165,0,.22),transparent 22%),linear-gradient(160deg,#111824,#090d17)}.reco-content .inline-note,.reco-content .stats,.swipe-card-overlay .inline-note{margin:0}.meta-row{color:var(--text-secondary);font-size:.88rem;gap:8px}.genre-chips,.meta-row{display:flex;flex-wrap:wrap}.genre-chips{gap:6px;margin-top:8px}.genre-chip{background:rgba(28,42,68,.9);border-radius:999px;color:var(--text-secondary);font-size:.77rem;padding:4px 9px}.swipe-actions{display:grid;grid-gap:12px;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;justify-content:center;width:min(100%,260px);margin:0 auto}.reco-description,.reco-streaming-note,.swipe-description,.swipe-streaming-note{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.reco-streaming-note,.swipe-streaming-note{margin-top:10px;-webkit-line-clamp:2;line-clamp:2}.reco-description,.swipe-description{-webkit-line-clamp:3;line-clamp:3}.complete-empty-state,.swipe-state-card{width:min(100%,420px);margin:0 auto}.swipe-side{display:grid;grid-gap:10px;gap:10px;align-content:start}.swipe-mobile-dock{display:none}.swipe-chip-button,.swipe-circle-button{border:0;cursor:pointer;font:inherit;transition:transform .12s ease,opacity .12s ease,filter .12s ease}.swipe-chip-button:disabled,.swipe-circle-button:disabled{cursor:not-allowed;opacity:.45;filter:saturate(.45)}.swipe-circle-button{width:68px;height:68px;border-radius:999px;color:#fff;font-size:2rem;font-weight:800;box-shadow:0 12px 20px rgba(0,0,0,.28)}.swipe-circle-pass{background:#d83a45}.swipe-circle-like{background:#2bb34b}.swipe-chip-button{min-height:52px;border-radius:18px;background:rgba(28,42,68,.9);color:var(--text-primary);font-weight:700;padding:0 14px}.swipe-progress-card{display:grid;grid-gap:10px;gap:10px;width:min(100%,500px);margin:0 auto}.swipe-progress-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.reco-card{position:relative;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:rgba(8,12,22,.75);width:min(100%,500px);max-width:100%;aspect-ratio:1/1.4;max-height:var(--movie-card-max-height);margin:0 auto;animation:pulseIn .38s ease}.swipe-waiting-shell{width:min(100%,640px)}.complete-shell{display:grid;grid-gap:12px;gap:12px;grid-template-rows:auto minmax(0,1fr) auto;flex:1 1}.complete-header{display:grid;grid-gap:12px;gap:12px;justify-items:center}.complete-header .title-block{width:min(100%,420px)}.celebration-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:90}.confetti-piece{position:absolute;top:-24px;width:10px;height:16px;border-radius:3px;opacity:0;animation-name:confettiFall;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes confettiFall{0%{opacity:0;transform:translateY(0) rotate(0deg)}10%{opacity:1}to{opacity:0;transform:translateY(105vh) rotate(680deg)}}@keyframes pulseIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.reco-media-frame{align-items:center;background:radial-gradient(circle at center,rgba(22,34,57,.85),rgba(5,9,20,.98));display:flex;justify-content:center;min-height:0;padding:8px}.reco-media{width:auto;max-width:100%;height:100%;max-height:100%;object-fit:contain;display:block}.reco-content{display:grid;grid-gap:6px;gap:6px;padding:12px}.stats{color:var(--text-secondary);font-size:.82rem}.complete-actions,.complete-actions .btn-row{display:grid;grid-gap:10px;gap:10px}.complete-actions .btn-row{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-backdrop{position:fixed;inset:0;background:rgba(3,7,16,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:12px;z-index:1000}.modal{width:min(560px,100%);max-height:min(88vh,760px);overflow-y:auto;border-radius:16px;border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 46px rgba(0,0,0,.45);background:linear-gradient(180deg,rgba(18,25,44,.98),rgba(10,15,31,.99));padding:16px}.modal-auth{width:min(620px,100%)}.auth-mode-row{margin-top:10px}.auth-mode-row .btn{flex:1 1}.auth-form-fields{margin-top:8px}.auth-action-row{margin-top:10px}.auth-action-row .btn-primary{flex:1 1 180px}.auth-provider-btn{align-items:center;display:inline-flex;flex:1 1 130px;gap:8px;justify-content:center}.auth-provider-icon{width:18px;height:18px;object-fit:contain;filter:brightness(0) invert(1)}.history-list{display:flex;flex-direction:column;gap:8px;max-height:50vh;overflow:auto}.history-row{display:grid;grid-gap:10px;gap:10px;grid-template-columns:1fr auto;align-items:center;border-radius:12px;border:1px solid rgba(255,255,255,.09);background:rgba(10,15,31,.7);padding:10px}.inline-note{color:var(--text-secondary);font-size:.84rem}.error{color:#ff9f9f;font-size:.88rem}@media (min-width:960px){.landing-hero{grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr)}}@media (max-width:959px){.join-notes,.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-cta-panel{flex-direction:column;align-items:flex-start}.landing-actions-compact{justify-content:flex-start}}@media (min-width:720px){:root{--shell-padding:16px;--movie-card-max-height:clamp(500px,72vh,760px)}.screen{padding:18px;gap:18px}.home-layout{width:min(560px,100%);gap:16px;padding-bottom:20px}.home-tile{min-height:110px}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.swipe-actions{max-width:520px;margin:0 auto}}@media (min-width:900px){.screen-swipe .swipe-shell{width:min(100%,980px);margin:0 auto}.screen-complete .complete-shell{width:min(100%,660px);margin:0 auto}.screen-filter-desktop .filters-header{gap:4px}.screen-filter-desktop .filters-header .brand-logo{max-width:120px}.screen-filter-desktop .filters-header .title-block{width:min(100%,640px)}.screen-filter-desktop .title{font-size:1.42rem}.screen-filter-desktop .subtitle{font-size:.88rem}.filters-desktop-layout{display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr);align-content:start}.screen-filter-desktop .section{padding:10px}.screen-filter-desktop .section-title{font-size:.98rem;margin-bottom:4px}.screen-filter-desktop .range-value,.screen-filter-desktop .section-subtitle{font-size:.82rem}.screen-filter-desktop .filters-mood-section .filters-card-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.screen-filter-desktop .filters-streaming-section .filters-card-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.screen-filter-desktop .option-card{gap:4px;min-height:60px;padding:6px}.screen-filter-desktop .option-card img{width:22px;height:22px}.screen-filter-desktop .option-label{font-size:.82rem}.screen-filter-desktop .field,.screen-filter-desktop .select-field{min-height:42px}.screen-filter-desktop .range-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.screen-filter-desktop .quick-pills{gap:6px}.screen-filter-desktop .pill{min-height:32px;padding:0 10px;font-size:.82rem}}@media (min-width:1000px){:root{--movie-card-max-height:clamp(560px,76vh,840px)}.screen{padding:22px;gap:20px}.home-layout{width:min(560px,100%);gap:16px}.swipe-shell{grid-template-columns:minmax(0,1fr) 290px;grid-template-areas:"header ." "main side";grid-template-rows:auto minmax(0,1fr);gap:14px;align-items:start}.swipe-side{grid-area:side;display:flex;flex-direction:column;gap:12px;align-self:start}.swipe-main-header{justify-self:center}.reco-card,.swipe-card,.swipe-progress-card{width:min(100%,560px)}}@media (max-width:999px) and (min-width:360px){.swipe-side{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (max-width:760px){.join-entry-page,.landing-page{padding:10px}.join-entry-panel,.landing-panel{border-radius:20px}.landing-nav{flex-direction:row;align-items:flex-start;justify-content:flex-start}.landing-brand{max-width:180px}.landing-nav-link{padding-top:8px}.join-actions,.landing-actions{width:100%}.join-actions .btn,.landing-actions .btn{flex:1 1 100%}.landing-title{max-width:none;font-size:clamp(2rem,10vw,3.2rem)}.landing-preview-frame{width:100%}.landing-preview-shot{border-radius:30px}.join-actions,.join-notes,.landing-feature-grid,.landing-steps{grid-template-columns:minmax(0,1fr)}.join-code-value{letter-spacing:.16em}.screen-flow-state .brand-logo{max-width:min(150px,38vw)}.screen-paired-loading .brand-logo,.screen-swipe-waiting .brand-logo,.screen-waiting-room .brand-logo{max-width:min(160px,44vw)}.filters-header{gap:8px}.filters-header .title-block{width:min(100%,360px)}.paired-loading-shell,.waiting-room-shell{gap:12px}.waiting-share-grid{grid-template-columns:minmax(0,1fr)}.waiting-code-block,.waiting-share-grid{justify-items:center;text-align:center}.waiting-helper-copy{max-width:28ch}.screen-paired-loading .paired-loading-card,.screen-waiting-room .waiting-status-card,.waiting-share-card{padding:12px}.paired-loading-card,.waiting-empty-state{min-height:96px;gap:8px}.screen-paired-loading .waiting-spinner,.screen-waiting-room .waiting-spinner{width:28px;height:28px}.screen-complete .section,.screen-swipe .section,.screen-swipe-waiting .section{padding:10px}.screen-complete.screen-fit-viewport{overflow-y:auto}.screen-complete .complete-shell{flex:0 0 auto;min-height:auto;grid-template-rows:auto auto auto;align-content:start;padding-bottom:calc(8px + env(safe-area-inset-bottom, 0px))}.screen-swipe .swipe-shell{grid-template-rows:auto minmax(0,1fr)}.screen-swipe .swipe-side{display:none}.swipe-card-overlay{padding:12px}.reco-title,.swipe-card-title{font-size:clamp(1.05rem,6vw,1.45rem)}.swipe-main{gap:10px;height:100%;grid-template-rows:minmax(0,1fr) auto}.swipe-card-column{height:100%}.screen-swipe .swipe-card{aspect-ratio:1/1.58}.screen-complete .reco-card{width:min(100%,440px);aspect-ratio:1/1.34;max-height:min(56vh,var(--movie-card-max-height))}.screen-swipe .swipe-card-stage{align-items:stretch}.screen-complete .complete-card-stage{align-items:flex-start}.swipe-mobile-dock{display:grid;grid-gap:10px;gap:10px;padding-bottom:2px}.swipe-mobile-meta{display:flex;justify-content:space-between;gap:10px;color:var(--text-secondary);font-size:.88rem}.swipe-mobile-actions{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px}.swipe-mobile-center{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.swipe-exit-link{border:0;background:transparent;color:var(--text-secondary);padding:0;text-align:center;font:inherit;font-size:.92rem;cursor:pointer}.ent-card-flip-scene.is-phone .ent-card-back-content,.ent-card-flip-scene.is-phone .ent-card-front-overlay{padding:14px;gap:10px}.ent-card-flip-scene.is-phone .reco-streaming-note,.ent-card-flip-scene.is-phone .swipe-streaming-note{-webkit-line-clamp:1;line-clamp:1}.ent-card-flip-scene.is-phone .reco-description,.ent-card-flip-scene.is-phone .swipe-description{-webkit-line-clamp:2;line-clamp:2}.ent-card-flip-scene.is-phone .ent-card-back-header{gap:8px}.ent-card-flip-scene.is-phone .ent-card-cta{width:100%;justify-content:center}}@media (max-height:760px){:root{--movie-card-max-height:clamp(320px,52vh,460px)}.screen-fit-viewport{gap:10px}.screen-complete .brand-logo,.screen-swipe .brand-logo,.screen-swipe-waiting .brand-logo{max-width:min(150px,40vw)}.screen-swipe .swipe-card{aspect-ratio:1/1.15}.screen-complete .reco-card{aspect-ratio:1/1.2}}@media (max-width:560px){.ent-card-detail-grid{grid-template-columns:1fr}}@media (max-width:520px){.qr-code{width:160px!important;height:160px!important}.participant{grid-template-columns:1fr auto;row-gap:6px}.participant-role{grid-column:1/-1;justify-self:end}}