:root{--bg-primary: #141517;--bg-rail: #0D0E0F;--bg-panel: #1A1C1E;--bg-secondary: #1C1E20;--bg-elevated: #232629;--bg-glass: rgba(255,255,255,.03);--bg-glass-hover: rgba(255,255,255,.06);--border-glass: rgba(255,255,255,.07);--border-glass-hover: rgba(255,255,255,.18);--text-primary: #EEEEEE;--text-bright: #DDE1E4;--text-secondary: #9BA1A6;--text-soft: #C8CCD0;--text-muted: #6A7075;--text-dim: #5F656A;--text-faint: #4A4F54;--accent-primary: #E5A00D;--accent-primary-hover: #F2B01F;--accent-secondary: #8FB8D8;--on-accent: #141517;--success: #3FBF6F;--warning: #E5A00D;--danger: #E0523F;--info: #8FB8D8;--pending-bg: rgba(229,160,13,.15);--pending-text: #E5A00D;--approved-bg: rgba(63,191,111,.15);--approved-text: #3FBF6F;--declined-bg: rgba(224,82,63,.15);--declined-text: #E0523F;--font-body: "Archivo", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-heading: "Archivo", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 6px;--radius-xl: 8px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 3px 14px rgba(0,0,0,.5);--shadow-lg: 0 20px 60px rgba(0,0,0,.7);--transition-fast: .13s ease;--transition-base: .18s ease;--transition-slow: .24s ease;--rail-w: 84px;--topbar-h: 68px;--gutter: 34px;--poster-w: 168px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;overflow-x:hidden;max-width:100vw;overscroll-behavior-y:none;background:var(--bg-primary)}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;max-width:100vw}a{color:var(--accent-primary);text-decoration:none}a:hover{color:var(--accent-primary-hover)}img{max-width:100%;display:block}button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit}input,select,textarea{font-family:inherit;color:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:1.2}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2c2f33;border-radius:6px;border:3px solid var(--bg-primary)}::-webkit-scrollbar-thumb:hover{background:#3c4046}body.no-scroll,html.no-scroll{overflow:hidden!important}@keyframes jp-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes jp-fade{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.shell{display:flex;min-height:100vh}.shell-main{flex:1;min-width:0;display:flex;flex-direction:column}.rail{position:sticky;top:0;align-self:flex-start;height:100vh;width:var(--rail-w);flex:0 0 var(--rail-w);background:var(--bg-rail);border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;align-items:center;padding:18px 0 16px;z-index:40}.rail-logo{width:44px;height:44px;border-radius:var(--radius-lg);background:var(--bg-secondary);border:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;font-size:21px;cursor:pointer;margin-bottom:26px;transition:border-color var(--transition-fast),background var(--transition-fast)}.rail-logo:hover{border-color:#e5a00d8c;background:var(--bg-elevated)}.rail-nav{display:flex;flex-direction:column;gap:4px;width:100%;align-items:center}.rail-item{position:relative;width:64px;padding:10px 0 8px;border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;color:var(--text-dim);background:transparent;transition:color .12s ease,background .12s ease}.rail-item:hover{color:var(--text-primary);background:#1a1c1e}.rail-item.active{color:var(--accent-primary);background:#e5a00d17}.rail-item svg{width:24px;height:24px;display:block}.rail-item-label{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.rail-item:after{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:3px;height:26px;border-radius:0 3px 3px 0;background:var(--accent-primary);opacity:0;transition:opacity .14s ease}.rail-item.active:after{opacity:1}.rail-spacer{flex:1}.rail-admin{width:64px;padding:10px 0;border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;color:var(--text-dim);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;transition:color var(--transition-fast),background var(--transition-fast)}.rail-admin:hover{color:var(--text-secondary);background:#1a1c1e}.rail-admin svg{width:22px;height:22px;display:block}.navbar{position:sticky;top:0;z-index:30;height:var(--topbar-h);flex:0 0 var(--topbar-h);display:flex;align-items:center;gap:20px;padding:0 var(--gutter);background:#141517f0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.06)}.navbar-brand{display:flex;align-items:baseline;gap:9px;font-size:19px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary);cursor:pointer;white-space:nowrap}.navbar-brand:hover{color:var(--text-primary)}.navbar-brand-plex{color:var(--accent-primary);margin-left:-9px}.navbar-brand-tag{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.navbar-spacer{flex:1}.navbar-search{position:relative;width:300px;max-width:34vw}.navbar-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--text-muted);pointer-events:none}.navbar-search-icon svg{width:100%;height:100%;display:block}.navbar-search input{width:100%;height:38px;padding:0 12px 0 36px;background:var(--bg-secondary);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px;outline:none;transition:border-color .14s ease,background .14s ease}.navbar-search input::placeholder{color:var(--text-muted)}.navbar-search input:focus{border-color:#e5a00db3;background:#212426}.navbar-account{display:flex;align-items:center;gap:10px;padding:5px 12px 5px 5px;border-radius:var(--radius-full);background:var(--bg-secondary);border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.navbar-account:hover{background:var(--bg-elevated);border-color:#ffffff29}.navbar-account-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;background:var(--accent-primary);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0}.navbar-account-avatar img{width:100%;height:100%;object-fit:cover}.navbar-account-name{font-size:13px;font-weight:500;color:var(--text-soft)}.page{flex:1;min-width:0;animation:jp-fade .22s ease both}.section{padding:var(--gutter)}.container{width:100%}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-primary);margin-bottom:10px}.page-title{margin:0 0 24px;font-size:30px;font-weight:800;letter-spacing:-.03em}.page-sub{margin:0 0 26px;font-size:13px;color:var(--text-muted)}.hero{position:relative;padding:74px var(--gutter) 54px;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.06)}.hero-inner{position:relative;max-width:760px;margin:0 auto;text-align:center}.hero-title{margin:0 0 34px;font-size:44px;font-weight:800;letter-spacing:-.035em;line-height:1.06}.hero-stats{display:flex;justify-content:center;flex-wrap:wrap;gap:26px;margin-top:26px;font-size:12px;color:var(--text-muted)}.hero-stats b{color:var(--text-soft);font-weight:700}.search-bar-wrapper{position:relative;max-width:620px;margin:0 auto}.search-bar,.search-bar-field{position:relative}.search-bar-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--text-muted);pointer-events:none;z-index:2}.search-bar-icon svg{width:100%;height:100%;display:block}.search-bar input{width:100%;height:58px;padding:0 132px 0 52px;background:var(--bg-secondary);border:1px solid rgba(255,255,255,.1);border-radius:5px;color:var(--text-primary);font-size:16px;outline:none;transition:border-color .14s ease,box-shadow .14s ease}.search-bar input::placeholder{color:var(--text-muted)}.search-bar input:focus{border-color:#e5a00dcc;box-shadow:0 0 0 3px #e5a00d1f}.search-bar-btn{position:absolute;right:6px;top:6px;height:46px;padding:0 26px;border:none;border-radius:var(--radius-md);background:var(--accent-primary);color:var(--on-accent);font-size:14px;font-weight:700;letter-spacing:.01em;transition:background .14s ease}.search-bar-btn:hover{background:var(--accent-primary-hover)}.rows{padding:var(--gutter) var(--gutter) 60px;display:flex;flex-direction:column;gap:38px}.row-head{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.row-head h2{margin:0;font-size:19px;font-weight:700;letter-spacing:-.015em}.row-note{font-size:12px;color:var(--text-dim)}.row-more{margin-left:auto;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast)}.row-more:hover{color:var(--accent-primary)}.row-track{display:grid;grid-auto-flow:column;grid-auto-columns:var(--poster-w);gap:16px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x proximity}.row-track>*{scroll-snap-align:start}.results-header{padding:0 0 16px;display:flex;align-items:baseline;gap:12px}.results-header h2{font-size:19px;font-weight:700;letter-spacing:-.015em}.results-header span{color:var(--text-dim);font-weight:400;font-size:12px}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--poster-w),1fr));gap:20px;padding-bottom:20px}.media-card{cursor:pointer;animation:jp-rise .3s ease both}.media-card-frame{position:relative;aspect-ratio:2/3;border-radius:var(--radius-md);overflow:hidden;background:var(--bg-secondary);box-shadow:var(--shadow-md);border:1px solid rgba(255,255,255,.06);transition:transform .22s ease,border-color var(--transition-base)}.media-card:hover .media-card-frame{transform:translateY(-4px);border-color:#e5a00d99}.media-card-poster{width:100%;height:100%;object-fit:cover;background:var(--bg-secondary)}.media-card-no-poster{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);color:var(--text-faint);font-size:32px}.media-card-title{margin-top:9px;font-size:13px;font-weight:600;color:var(--text-bright);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-card-meta{font-size:11px;color:var(--text-muted)}.media-card-tag{position:absolute;top:9px;left:9px;padding:3px 8px;border-radius:var(--radius-sm);background:#0d0e0fd1;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-primary)}.media-card-tag.tv{color:var(--accent-secondary)}.on-plex-badge{position:absolute;top:9px;right:9px;width:22px;height:22px;border-radius:50%;background:var(--accent-primary);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;z-index:2;pointer-events:none}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:26px}.filter-input{position:relative;width:280px;max-width:100%}.filter-input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--text-muted);pointer-events:none}.filter-input-icon svg{width:100%;height:100%;display:block}.filter-input input{width:100%;height:36px;padding:0 12px 0 34px;background:var(--bg-secondary);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px;outline:none;transition:border-color .14s ease}.filter-input input::placeholder{color:var(--text-muted)}.filter-input input:focus{border-color:#e5a00db3}.seg{display:flex;gap:6px;flex-wrap:wrap}.seg-btn{padding:8px 16px;border-radius:var(--radius-md);font-size:12px;font-weight:600;cursor:pointer;color:var(--text-secondary);background:transparent;border:1px solid rgba(255,255,255,.1);transition:all var(--transition-fast)}.seg-btn:hover{border-color:#fff3}.seg-btn.active{color:var(--on-accent);background:var(--accent-primary);border-color:var(--accent-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-weight:600;font-size:13px;transition:all var(--transition-fast)}.btn-primary{background:var(--accent-primary);color:var(--on-accent);font-weight:700}.btn-primary:hover{background:var(--accent-primary-hover)}.btn-secondary{background:transparent;border:1px solid rgba(255,255,255,.12);color:var(--text-soft)}.btn-secondary:hover{background:var(--bg-secondary);border-color:#ffffff38;color:var(--text-primary)}.btn-success{background:#3fbf6f29;color:var(--success);border:1px solid rgba(63,191,111,.4);font-weight:700}.btn-success:hover{background:#3fbf6f42}.btn-danger{background:transparent;border:1px solid rgba(224,82,63,.5);color:var(--danger);font-weight:700}.btn-danger:hover{background:#e0523f1f}.btn-sm{padding:6px 13px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:var(--radius-sm);background:#ffffff12;color:var(--text-soft);font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.badge-movie{background:#e5a00d24;color:var(--accent-primary)}.badge-tv{background:#8fb8d824;color:var(--accent-secondary)}.badge-pending{padding:4px 11px;background:var(--pending-bg);color:var(--pending-text)}.badge-approved{padding:4px 11px;background:var(--approved-bg);color:var(--approved-text)}.badge-declined{padding:4px 11px;background:var(--declined-bg);color:var(--declined-text)}.toast-container{position:fixed;top:24px;right:24px;z-index:10002;display:flex;flex-direction:column;gap:8px}.toast{display:flex;align-items:center;gap:12px;padding:13px 18px;border-radius:var(--radius-lg);background:var(--bg-panel);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px #0009;animation:slideDown .2s ease forwards;min-width:280px;max-width:420px}.toast-success{border-left:3px solid var(--success)}.toast-error{border-left:3px solid var(--danger)}.toast-info{border-left:3px solid var(--info)}.toast-icon{font-size:15px;flex-shrink:0}.toast-message{font-size:13px}.toast-close{margin-left:auto;color:var(--text-muted);font-size:16px;transition:color var(--transition-fast)}.toast-close:hover{color:var(--text-primary)}.detail-backdrop{position:relative;height:340px;overflow:hidden;background:var(--bg-secondary)}.detail-backdrop img{width:100%;height:100%;object-fit:cover}.detail-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,21,23,.25) 0%,rgba(20,21,23,.8) 55%,var(--bg-primary) 100%)}.detail-back{position:absolute;top:22px;left:var(--gutter);z-index:2;display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:var(--radius-md);background:#0d0e0fb8;border:1px solid rgba(255,255,255,.1);font-size:12px;font-weight:600;color:var(--text-soft);transition:background var(--transition-fast),color var(--transition-fast)}.detail-back:hover{background:#0d0e0ff2;color:var(--text-primary)}.detail-content{position:relative;padding:0 var(--gutter) 60px;margin-top:-190px}.detail-main{display:flex;gap:38px;align-items:flex-start;margin-bottom:48px}.detail-poster{flex:0 0 240px;width:240px;position:relative;aspect-ratio:2/3;border-radius:5px;overflow:hidden;background:var(--bg-secondary);box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.1)}.detail-poster img{width:100%;height:100%;object-fit:cover}.detail-poster-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);font-size:48px}.detail-info{flex:1;min-width:0;padding-top:96px}.detail-title{margin:0 0 14px;font-size:40px;font-weight:800;letter-spacing:-.035em;line-height:1.08}.detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px;font-size:13px;color:var(--text-secondary)}.detail-dot{width:3px;height:3px;border-radius:50%;background:var(--text-faint)}.detail-rating{color:var(--accent-primary);font-weight:700}.detail-genres{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.detail-genre-tag{padding:5px 13px;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.1);background:#ffffff08;font-size:11px;font-weight:600;color:var(--text-secondary)}.detail-overview{margin:0 0 32px;max-width:640px;font-size:15px;line-height:1.75;color:var(--text-secondary);text-wrap:pretty}.detail-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.detail-hint{font-size:12px;color:var(--text-dim)}.request-btn{height:48px;padding:0 32px;border:none;border-radius:var(--radius-md);background:var(--accent-primary);color:var(--on-accent);font-size:15px;font-weight:700;transition:filter .14s ease}.request-btn:hover:not(:disabled){filter:brightness(1.1)}.request-btn.requested{background:#3fbf6f29;color:var(--success);cursor:default}.request-btn:disabled{cursor:not-allowed}.seasons-section{margin-bottom:20px}.seasons-section h2{font-size:19px;font-weight:700;letter-spacing:-.015em;margin-bottom:16px}.seasons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px}.season-card{border-radius:var(--radius-md);overflow:hidden;background:var(--bg-panel);border:1px solid var(--border-glass);transition:border-color var(--transition-base),transform .22s ease}.season-card:hover{border-color:#e5a00d80;transform:translateY(-4px)}.season-card-poster{aspect-ratio:2/3;width:100%;object-fit:cover;background:var(--bg-secondary)}.season-card-info{padding:10px 12px}.season-card-name{font-weight:600;font-size:13px;margin-bottom:2px}.season-card-episodes{font-size:11px;color:var(--text-muted)}.help-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start;max-width:1000px}.help-steps{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:var(--bg-panel);padding:8px 0}.help-step{display:flex;gap:18px;padding:20px 26px;border-bottom:1px solid rgba(255,255,255,.04)}.help-step:last-child{border-bottom:none}.help-step-n{flex:0 0 28px;height:28px;border-radius:50%;border:1px solid rgba(229,160,13,.5);color:var(--accent-primary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}.help-step-title{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.help-step-body{font-size:13px;line-height:1.65;color:var(--text-secondary);text-wrap:pretty}.help-aside{display:flex;flex-direction:column;gap:14px}.help-card{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:var(--bg-panel);padding:22px}.help-card.accent{border-color:#e5a00d47;background:#e5a00d0f}.help-card-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px}.help-card.accent .help-card-label{color:var(--accent-primary)}.help-card-body{font-size:14px;line-height:1.65;color:var(--text-soft)}.help-card-body b{color:var(--text-primary)}.help-handle{font-family:var(--font-mono);font-size:16px;font-weight:600;color:var(--accent-primary)}.help-note{font-size:12px;color:var(--text-muted);margin-top:8px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:7px}.form-input{width:100%;padding:11px 14px;background:var(--bg-secondary);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);font-size:13px;color:var(--text-primary);outline:none;transition:border-color var(--transition-fast)}.form-input:focus{border-color:#e5a00db3}.form-input::placeholder{color:var(--text-muted)}.login-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--topbar-h));padding:24px}.login-card{width:100%;max-width:380px;background:var(--bg-panel);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:34px 32px 28px;box-shadow:0 30px 80px #000000b3}.login-card h1{font-size:21px;font-weight:800;letter-spacing:-.025em;text-align:center;margin-bottom:6px}.login-card>p{text-align:center;color:var(--text-muted);margin-bottom:26px;font-size:13px}.login-btn{width:100%;padding:13px;margin-top:8px}.login-error{background:#e0523f1f;border:1px solid rgba(224,82,63,.35);border-radius:var(--radius-md);padding:10px 14px;color:var(--danger);font-size:13px;margin-bottom:16px;text-align:center}.dashboard-header{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:26px}.dashboard-header h1{font-size:28px;font-weight:800;letter-spacing:-.03em}.dashboard-stats{display:flex;gap:10px;flex-wrap:wrap}.stat-card{min-width:104px;padding:12px 18px;border:1px solid var(--border-glass);border-radius:5px;background:var(--bg-panel)}.stat-number{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--accent-primary)}.stat-card.approved .stat-number{color:var(--success)}.stat-card.declined .stat-number{color:var(--danger)}.stat-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-top:2px}.dashboard-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:6px;margin-bottom:16px;border:1px solid var(--border-glass);border-radius:5px;background:var(--bg-panel)}.dashboard-tab{padding:7px 16px;border-radius:var(--radius-md);font-size:12px;font-weight:600;cursor:pointer;color:var(--text-secondary);background:transparent;transition:all var(--transition-fast)}.dashboard-tab:hover{color:var(--text-primary)}.dashboard-tab.active{color:var(--on-accent);background:var(--accent-primary)}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:22px;padding:12px 18px;margin-bottom:18px;border:1px solid var(--border-glass);border-radius:5px;background:var(--bg-panel)}.filter-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-label{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--text-dim);margin-right:2px}.filter-chips{display:flex;gap:6px;flex-wrap:wrap}.filter-chip{padding:6px 15px;border-radius:var(--radius-full);font-size:12px;font-weight:600;color:var(--text-secondary);background:transparent;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all var(--transition-fast)}.filter-chip:hover{border-color:#ffffff38;color:var(--text-primary)}.filter-chip.active{color:var(--on-accent);background:var(--accent-primary);border-color:var(--accent-primary)}.requests-table-wrapper{border:1px solid var(--border-glass);border-radius:var(--radius-lg);overflow:hidden;overflow-x:auto;background:var(--bg-panel)}.requests-table{width:100%;border-collapse:collapse}.requests-table th{text-align:left;padding:13px 20px;white-space:nowrap;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--text-dim);background:#ffffff05;border-bottom:1px solid var(--border-glass)}.requests-table td{padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:middle;font-size:13px}.requests-table tr:last-child td{border-bottom:none}.requests-table tr:hover td{background:#ffffff08}.requests-table tr.row-clickable{cursor:pointer}.request-row-media{display:flex;align-items:center;gap:14px;min-width:0}.request-row-poster{width:44px;height:66px;border-radius:var(--radius-sm);object-fit:cover;background:var(--bg-secondary);flex-shrink:0}.request-row-title{font-size:14px;font-weight:600;color:var(--text-primary)}.request-row-year{font-size:12px;color:var(--text-muted)}.request-row-overview{font-size:12px;color:var(--text-muted);margin-top:4px;max-width:420px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.request-row-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.request-row-hint{font-size:16px;color:var(--text-faint);white-space:nowrap}.truncate-cell{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.req-cancel-btn{padding:4px 11px;font-size:11px}.cred-row{display:flex;align-items:center;gap:10px}.empty-state{text-align:center;padding:80px 20px;color:var(--text-muted);border:1px dashed rgba(255,255,255,.09);border-radius:var(--radius-lg)}.empty-state-icon{font-size:32px;margin-bottom:12px}.empty-state h3{font-size:16px;font-weight:700;margin-bottom:6px;color:var(--text-primary)}.empty-state p{font-size:13px;color:var(--text-muted)}.loading{display:flex;align-items:center;justify-content:center;padding:64px}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.08);border-top-color:var(--accent-primary);animation:spin .8s linear infinite}.glass-card{background:var(--bg-panel);border:1px solid var(--border-glass);border-radius:var(--radius-lg)}.login-modal-overlay,.modal-overlay{position:fixed;inset:0;z-index:90;background:#08090ac7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:jp-fade .16s ease both}.login-modal,.modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:91;width:calc(100% - 48px);max-width:380px;background:var(--bg-panel);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:34px 32px 28px;box-shadow:0 30px 80px #000000b3;display:flex;flex-direction:column;gap:10px;animation:jp-rise .2s ease both}.modal-content{max-width:520px;max-height:80vh;overflow-y:auto}.login-modal h2{font-size:21px;font-weight:800;letter-spacing:-.025em;text-align:center;margin-bottom:4px}.login-modal-grip{display:none}.login-option-btn{height:46px;border-radius:var(--radius-md);font-size:14px;font-weight:700;transition:background .14s ease}.login-option-plex{background:var(--accent-primary);color:var(--on-accent)}.login-option-plex:hover{background:var(--accent-primary-hover)}.login-option-custom{background:transparent;border:1px solid rgba(255,255,255,.14);color:var(--text-bright);font-weight:600}.login-option-custom:hover{background:#ffffff0d}.login-option-admin{height:40px;background:transparent;border:none;color:var(--text-muted);font-size:13px;font-weight:600}.login-option-admin:hover{color:var(--text-soft);background:transparent}.login-modal-cancel{margin-top:8px;text-align:center;color:var(--text-dim);font-size:13px}.login-modal-cancel:hover{color:var(--text-secondary)}.login-modal-back{align-self:flex-start;color:var(--text-muted);font-size:13px;padding:0}.login-modal-back:hover{color:var(--text-primary)}.login-modal-error{background:#e0523f1f;border:1px solid rgba(224,82,63,.35);border-radius:var(--radius-md);padding:10px 14px;color:var(--danger);font-size:13px}.login-modal-form{display:flex;flex-direction:column;gap:12px;text-align:left}.login-modal-form label{display:block;font-size:12px;color:var(--text-muted);margin-bottom:6px}.login-modal-submit{margin-top:4px;height:44px}.auth-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-primary)}.auth-gate-card{width:100%;max-width:380px;background:var(--bg-panel);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:34px 32px 28px;box-shadow:0 30px 80px #000000b3;display:flex;flex-direction:column;gap:10px;text-align:center;animation:jp-rise .2s ease both}.auth-gate-mark{font-size:30px;line-height:1}.auth-gate-card h1{font-size:21px;font-weight:800;letter-spacing:-.025em;margin:0}.auth-gate-sub{color:var(--text-muted);font-size:13px;margin:0 0 4px}.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}.tabbar,.navbar-auth-mobile{display:none}@media(max-width:1100px){:root{--gutter:24px;--poster-w:150px}.help-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:768px){:root{--gutter:16px;--poster-w:132px;--topbar-h:58px}.rail{display:none}.navbar{gap:12px;padding:0 16px}.navbar-brand-tag,.navbar-search,.navbar-account-desktop{display:none}body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}.tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;height:calc(62px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--bg-rail);border-top:1px solid rgba(255,255,255,.07)}.tabbar-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-dim);position:relative;-webkit-tap-highlight-color:transparent}.tabbar-item.active{color:var(--accent-primary)}.tabbar-icon{width:22px;height:22px}.tabbar-icon svg{width:100%;height:100%;display:block}.tabbar-label{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.navbar-auth-mobile{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;overflow:hidden;background:var(--accent-primary);color:var(--on-accent);font-weight:800;font-size:13px}.navbar-auth-mobile img{width:100%;height:100%;object-fit:cover}.navbar-auth-signin{width:auto;height:32px;padding:0 14px;border-radius:var(--radius-full);font-size:13px;font-weight:700}.hero{padding:40px var(--gutter) 34px}.hero-title{font-size:30px;margin-bottom:24px}.search-bar{display:flex;flex-direction:column;gap:10px}.search-bar input{height:50px;padding:0 16px 0 46px;font-size:15px}.search-bar-icon{left:16px;width:18px;height:18px}.search-bar-btn{position:static;width:100%;height:44px}.hero-stats{gap:14px;font-size:11px}.rows{padding:24px var(--gutter) 40px;gap:28px}.page-title{font-size:24px}.detail-backdrop{height:200px}.detail-content{margin-top:-90px;padding:0 var(--gutter) 40px}.detail-main{flex-direction:column;gap:20px}.detail-poster{flex:0 0 auto;width:150px}.detail-info{padding-top:0}.detail-title{font-size:26px}.request-btn{width:100%}.requests-table-wrapper{border:none;background:transparent;overflow:visible}.requests-table,.requests-table tbody,.requests-table tr,.requests-table td{display:block;width:100%}.requests-table thead{display:none}.requests-table tr{background:var(--bg-panel);border:1px solid var(--border-glass);border-radius:var(--radius-lg);margin-bottom:12px;padding:6px 0}.requests-table td{border-bottom:none;padding:8px 16px}.requests-table td:before{content:attr(data-label);display:block;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px}.requests-table td[data-label=Media]:before,.requests-table td[data-label=Title]:before{display:none}.requests-table td.details-empty,.requests-table td[data-label=Details]{display:none}.requests-table tr:hover td{background:transparent}.request-row-actions{justify-content:flex-start}.toast-container{top:auto;bottom:calc(72px + env(safe-area-inset-bottom));left:16px;right:16px}.toast{min-width:0;width:100%}.toast-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.login-modal{top:auto;bottom:0;left:0;transform:none;width:100%;max-width:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:20px 20px calc(24px + env(safe-area-inset-bottom));animation:sheet-up .22s ease both}.login-modal-grip{display:block;width:38px;height:4px;border-radius:2px;background:#ffffff2e;margin:0 auto 12px}}@media(max-width:400px){:root{--poster-w:120px}.results-grid{gap:14px}}body.app-paused .jp-decorative,body.app-calm .jp-decorative{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
