*{box-sizing:border-box}body,html,#root{margin:0;width:100%;min-height:100%;background:#0f0f0f;color:#fff;font-family:Inter,system-ui,-apple-system,sans-serif}.screen{min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.stack-wrapper{width:min(420px,100vw);height:100vh;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:96px 12px 24px}.stack-area{width:100%;height:calc(100vh - 130px);position:relative}.movie-card{width:100%;height:100%;background-size:cover;background-position:center;border-radius:24px;display:flex;align-items:flex-end;overflow:hidden;box-shadow:0 20px 60px #00000073}.movie-overlay{width:100%;padding:20px;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.82) 60%)}.movie-overlay h2{margin:0;font-size:28px}.movie-overlay p{margin:6px 0 0;opacity:.92}.movie-meta-primary{font-size:15px;font-weight:600}.movie-meta{font-size:13px;line-height:1.35}.movie-overview{font-size:14px;line-height:1.4;margin-top:10px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.actions{display:flex;gap:18px;padding-bottom:10px}.btn{width:62px;height:62px;border-radius:999px;border:none;font-size:28px;cursor:pointer}.btn.skip{background:#2a2a2a;color:#e6d46b}.dislike{background:#2a2a2a;color:#ff6b6b}.like{background:#2a2a2a;color:#58d68d}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center}.modal{background:#1f1f1f;border-radius:16px;padding:24px;width:min(90vw,420px);text-align:center}.modal button{margin-top:12px;border:none;border-radius:10px;padding:10px 16px;cursor:pointer}.auth-screen{padding:16px}.auth-card{width:min(420px,92vw);background:#1c1c1c;border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:10px}.auth-card input{border-radius:10px;border:1px solid #3a3a3a;background:#111;color:#fff;padding:10px 12px}.auth-card button{margin-top:8px;border:none;border-radius:10px;padding:10px 12px;font-weight:600;cursor:pointer}.auth-switch{font-size:14px;color:#9fc2ff;text-decoration:none;margin-top:6px}.top-nav{position:fixed;top:0;left:0;right:0;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:#0a0a0aeb;border-bottom:1px solid #252525;z-index:5}.top-nav nav{display:flex;gap:14px}.top-nav a{color:#fff;text-decoration:none;font-weight:600;font-size:14px}.top-nav-right{display:flex;align-items:center;gap:10px}.top-nav-right button{border:none;border-radius:8px;padding:7px 10px;cursor:pointer}.status-bar{position:fixed;top:56px;left:0;right:0;z-index:4;text-align:center;background:#111111eb;border-bottom:1px solid #252525}.status-bar p{margin:8px 0;font-size:14px}.matches-screen{align-items:flex-start;justify-content:center;padding-top:70px}.matches-shell{width:min(900px,95vw);padding:18px 10px 20px}.matches-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.match-card{position:relative;background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;padding:12px}.match-card-corner{position:absolute;top:8px;right:8px;display:flex;gap:6px}.tiny-btn{width:30px;height:30px;border-radius:999px;border:none;cursor:pointer;font-weight:700}.match-card h3{margin:0;font-size:18px}.match-score{margin:8px 0;font-weight:700;color:#79df9c}.match-actions{margin-top:10px;display:flex;gap:8px}.match-actions .btn{width:auto;height:auto;padding:8px 12px;font-size:14px;border-radius:10px}.muted-text{color:#b6b6b6;margin-top:2px}.error-text{color:#ff8f8f}.account-screen{align-items:flex-start;justify-content:center;padding-top:70px}.account-shell{width:min(980px,95vw);padding:18px 10px 24px}.account-section{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;padding:12px;margin-bottom:12px}.account-section h3{margin:0 0 8px}.section-header-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.account-input{width:100%;border-radius:10px;border:1px solid #3a3a3a;background:#111;color:#fff;padding:10px 12px}.compact-movie-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.compact-movie-card{background:#131313;border:1px solid #2a2a2a;border-radius:10px;padding:10px}.compact-movie-card h4{margin:0;font-size:15px}.user-search-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;margin-top:10px}.user-card{background:#131313;border:1px solid #2a2a2a;border-radius:10px;padding:10px}.user-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.user-card-top button,.account-action-btn,.selected-user-chip{border:none;border-radius:8px;padding:7px 10px;cursor:pointer}.selected-users{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.user-preview-list{display:flex;flex-wrap:wrap;gap:6px}.user-preview-list span{background:#202020;border:1px solid #2f2f2f;border-radius:999px;padding:3px 8px;font-size:12px}.common-screen,.notifications-screen,.summary-screen{align-items:flex-start;justify-content:center;padding-top:70px}.common-shell,.notifications-shell,.summary-shell{width:min(1100px,95vw);padding:18px 10px 24px}.summary-grid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.summary-card{background:linear-gradient(135deg,#171717,#101010);border:1px solid #2d2d2d;border-radius:12px;padding:14px}.summary-label{margin:0;color:#b6b6b6;font-size:13px}.summary-value{margin:8px 0 0;font-size:28px;font-weight:800}.summary-details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.editable-table-wrap{overflow-x:auto}.editable-table{width:100%;border-collapse:collapse}.editable-table th,.editable-table td{border-bottom:1px solid #2f2f2f;padding:8px;text-align:left;font-size:14px}.table-number-input,.table-text-input{border-radius:8px;border:1px solid #3a3a3a;background:#101010;color:#fff;padding:6px 8px}.table-number-input{width:90px}.table-text-input{width:100%}.watched-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:8px;border-radius:999px;border:1px solid #fff;font-size:11px;font-weight:700;cursor:help}.manual-movie-add{margin-top:12px;border-top:1px solid #2f2f2f;padding-top:10px}.manual-movie-add h4{margin:0 0 8px}.manual-search-list{margin-top:8px;display:grid;gap:6px}.manual-search-item{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#101010;border:1px solid #2e2e2e;border-radius:8px;padding:8px}.winner-row{background:#58d68d1f}.wheel-zone{position:relative;width:min(92vw,420px);aspect-ratio:1 / 1;margin:8px 0 14px}.fortune-wheel{width:100%;height:100%;border-radius:50%;border:6px solid #2f2f2f;box-shadow:0 0 0 8px #141414 inset;position:relative;overflow:hidden}.wheel-pointer{position:absolute;left:50%;top:-8px;transform:translate(-50%);width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-top:22px solid #fff;z-index:2}.wheel-ring-label{position:absolute;transform:translate(-50%,-50%);background:#000000b3;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:999px;padding:2px 7px;font-size:clamp(9px,1.5vw,12px);line-height:1.25;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.wheel-ring-label.active{border-color:#fff;background:#000000eb}.wheel-actions{display:flex;flex-wrap:wrap;gap:8px}.winner-text{margin-top:10px;font-weight:700}.winner-celebration{margin-top:10px;position:relative;background:#090909;border:1px solid #fff;border-radius:10px;padding:10px;overflow:hidden}.mono-fireworks{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mono-fireworks span{--angle: calc(var(--i) * 22.5deg);position:absolute;left:50%;top:58%;width:2px;height:44px;background:linear-gradient(180deg,#fffffff2,#fff0);transform:translate(-50%,-50%) rotate(var(--angle));transform-origin:center -10px;animation:mono-burst .9s ease-out forwards;opacity:0}@keyframes mono-burst{0%{opacity:0;height:0}25%{opacity:1;height:46px}to{opacity:0;height:62px}}@media (max-width: 760px){.wheel-ring-label{font-size:9px;padding:1px 6px}}.success-text{color:#7fe3a8}.notifications-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px;margin-top:10px}.notification-card{border:1px solid #2f2f2f;border-radius:12px;padding:12px;background:#151515}.notification-card.unread{border-color:#7fe3a8}.notification-card h3{margin:0}.notification-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.notification-actions .btn{width:auto;height:auto;border-radius:10px;font-size:14px;padding:8px 10px}
