:root{color-scheme:dark;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0b0b0f;color:#f5f5f5}html{scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow-x:hidden;background:radial-gradient(circle at top,rgba(229,9,20,.14),transparent 28%),linear-gradient(180deg,#111218,#09090c);color:#f5f5f5}a{color:inherit;text-decoration:none}button,input{font:inherit}img,iframe{display:block}#root,.app-shell{min-height:100vh}.page-shell{padding-bottom:3rem}.navbar{position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#08080ae0;border-bottom:1px solid rgba(255,255,255,.06)}.navbar__content{width:min(1120px,calc(100% - 1.5rem));margin:0 auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.navbar__brand{display:inline-flex;align-items:center;gap:.75rem;font-weight:800;letter-spacing:.04em}.navbar__logo{width:34px;height:34px}.navbar__links,.navbar__actions,.navbar__user{display:flex;align-items:center;gap:.75rem}.navbar__link{color:#ffffffb8;transition:color .2s ease}.navbar__link:hover,.navbar__link--active{color:#fff}.navbar__avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#e50914,#8d0210);font-weight:700}.navbar__user p,.navbar__user small{margin:0}.navbar__user small{color:#fff9}.page{width:min(1120px,calc(100% - 1.5rem));margin:0 auto}.hero{position:relative;margin-top:1.25rem;min-height:58vh;border-radius:28px;overflow:hidden;background-color:#15151c;background-position:center;background-size:cover;display:flex;align-items:flex-end;padding:2.5rem;box-shadow:0 18px 48px #00000057}.hero--public{min-height:62vh}.hero__pattern{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.18;pointer-events:none}.hero__content{position:relative;max-width:560px;z-index:1}.hero__eyebrow,.section-heading__eyebrow{display:inline-block;margin-bottom:.75rem;color:#ff7a7f;letter-spacing:.18em;text-transform:uppercase;font-size:.74rem;font-weight:700}.hero h1,.about-hero h1,.login-card h1{margin:0 0 .9rem;font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.05}.hero p,.about-hero p,.login-card p,.info-card p,.movie-card__overlay p,.movie-modal__hero p,.preview-card p,.public-panel p{color:#ffffffc7;line-height:1.65}.hero__meta{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.25rem 0}.hero__meta span{padding:.55rem .85rem;border-radius:999px;background:#ffffff17;border:1px solid rgba(255,255,255,.08)}.hero__actions,.about-hero__actions,.movie-modal__actions{display:flex;flex-wrap:wrap;gap:.8rem}.button{border:0;border-radius:999px;padding:.9rem 1.35rem;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button--primary{background:linear-gradient(135deg,#e50914,#ff4048);color:#fff;box-shadow:0 14px 24px #e5091438}.button--secondary{background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.12)}.button--ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.18)}.button--link{display:inline-flex;align-items:center;justify-content:center}.discover,.content-section,.about-grid,.page--login,.public-grid{margin-top:2rem}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-heading h2{margin:0;font-size:clamp(1.3rem,3vw,1.8rem)}.search-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.search-bar input,.login-form input{width:100%;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:#ffffff0d;color:#fff;padding:.95rem 1rem;outline:none}.search-bar input:focus,.login-form input:focus{border-color:#ff7a7fa6;box-shadow:0 0 0 3px #e5091429}.results-block{margin-top:1.35rem}.movie-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,240px);gap:1rem;overflow-x:auto;overflow-y:hidden;padding:.15rem 0 .85rem;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.movie-row::-webkit-scrollbar{height:9px}.movie-row::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}.movie-card{border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#1c1c24f2,#0e0e12f2);border:1px solid rgba(255,255,255,.06);box-shadow:0 12px 28px #00000038;cursor:pointer;scroll-snap-align:start;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.movie-card:hover,.movie-card:focus-visible{transform:translateY(-4px);box-shadow:0 18px 36px #0000004d;border-color:#ff7a7f4d;outline:none}.movie-card__poster-wrapper{position:relative;aspect-ratio:4 / 5;overflow:hidden}.movie-card__poster{width:100%;height:100%;object-fit:cover;transform:scale(1.01)}.movie-card__overlay{position:absolute;inset:auto 0 0 0;padding:.95rem;background:linear-gradient(180deg,transparent,rgba(7,7,10,.96))}.movie-card__overlay p{margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.92rem}.movie-card__badge{display:inline-flex;margin-bottom:.65rem;padding:.42rem .75rem;border-radius:999px;background:#e5091438;color:#ffd6d8;font-size:.76rem;font-weight:700}.movie-card__body{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.95rem}.movie-card__body h3,.preview-card h3{margin:0 0 .3rem;font-size:1rem}.movie-card__body p{margin:0;color:#fff9;font-size:.9rem}.movie-card__rating{min-width:46px;text-align:center;padding:.4rem .7rem;border-radius:999px;background:#ffffff14;font-weight:700}.public-grid{display:grid;grid-template-columns:1.45fr .95fr;gap:1rem}.public-panel,.about-hero,.login-card{background:linear-gradient(180deg,#1b1b22eb,#0c0c10f5);border:1px solid rgba(255,255,255,.06);border-radius:26px;padding:1.8rem;box-shadow:0 18px 42px #00000038}.public-panel--wide{min-width:0}.trailer-frame{overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:#000}.trailer-frame iframe{width:100%;aspect-ratio:16 / 9;border:0}.credentials-box{display:grid;gap:.35rem;margin:1.25rem 0;padding:1rem;border-radius:18px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.credentials-box strong{color:#fff}.credentials-box span{color:#ffffffc7}.credentials-box--login{margin-top:1rem}.preview-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.preview-card{overflow:hidden;border-radius:22px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.preview-card img{width:100%;aspect-ratio:16 / 10;object-fit:cover}.preview-card div{padding:1rem}.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.info-card{border-radius:22px;padding:1.35rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.info-card h2{margin-top:0}.page--login{display:grid;place-items:center;min-height:calc(100vh - 150px)}.login-card{width:min(500px,100%)}.login-form{display:grid;gap:1rem;margin-top:1.4rem}.login-form label{display:grid;gap:.5rem;color:#ffffffc7}.login-form__button{margin-top:.35rem}.status-text{margin-top:1rem;color:#ffffffb8}.status-text--error{color:#ff8f94}.movie-modal__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:1rem;background:#040406bf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.movie-modal{position:relative;width:min(820px,100%);overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.08);background:#111218;box-shadow:0 26px 60px #0006}.movie-modal__close{position:absolute;top:1rem;right:1rem;z-index:2;width:40px;height:40px;border:0;border-radius:50%;background:#00000085;color:#fff;font-size:1.5rem;cursor:pointer}.movie-modal__hero{min-height:420px;padding:2.5rem;background-position:center;background-size:cover;display:flex;flex-direction:column;justify-content:flex-end}.movie-modal__hero h2{margin:.4rem 0 .8rem;font-size:clamp(2rem,4vw,3rem)}@media (max-width: 980px){.public-grid,.preview-list{grid-template-columns:1fr}}@media (max-width: 900px){.navbar__content{flex-wrap:wrap;padding:.8rem 0}.navbar__actions{width:100%;justify-content:space-between}.hero{min-height:52vh;padding:2rem}.movie-row{grid-auto-columns:minmax(210px,230px)}}@media (max-width: 640px){.page,.navbar__content{width:min(100%,calc(100% - 1rem))}.navbar__links,.navbar__user{width:100%;justify-content:space-between}.search-bar{grid-template-columns:1fr}.hero{min-height:46vh;padding:1.4rem;border-radius:22px}.public-panel,.about-hero,.login-card{padding:1.2rem}.movie-row{grid-auto-columns:78%}.movie-modal__hero{min-height:340px;padding:1.5rem}}
