*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--danger:#c0392b;--success:#27ae60;--loan-due:#5bb3f0;--watched:#a78bfa;--font-display:"Archivo", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--radius:8px;--radius-lg:12px;--bg:#15140f;--bg2:#1d1c16;--bg3:#252419;--surface:#1d1c16;--surface2:#252419;--border:#2e2c24;--border2:#3a3830;--text:#ece9e0;--text2:#8f8b80;--text3:#5a5850;--accent:#e0604b;--accent2:#c44a37;--bg-translucent:#15140ff0}[data-theme=light]{--bg:#f4f2ec;--bg2:#fff;--bg3:#edeae2;--surface:#fff;--surface2:#f4f2ec;--border:#ddd9cf;--border2:#c9c5bb;--text:#1a1916;--text2:#6b6862;--text3:#9a948a;--accent:#bb3a2c;--accent2:#9e2e22;--bg-translucent:#f4f2ecf2}html{scrollbar-gutter:stable}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-body);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;font-size:15px;font-weight:400;line-height:1.6}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer;color:inherit;background:0 0;border:none}input,textarea,select{font-family:var(--font-body);background:var(--bg3);border:1px solid var(--border2);color:var(--text);border-radius:var(--radius);outline:none;width:100%;padding:8px 12px;font-size:14px;transition:border-color .2s}input:focus,textarea:focus,select:focus{border-color:var(--accent)}button:focus-visible,a:focus-visible,select:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}input::placeholder,textarea::placeholder{color:var(--text3)}@media (pointer:coarse){input,textarea,select{font-size:16px}}select option{background:var(--bg3)}.btn{border-radius:var(--radius);white-space:nowrap;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;font-weight:600}.btn-primary:hover{background:var(--accent2)}.btn-ghost{border:1px solid var(--border2);color:var(--text2)}.btn-ghost:hover{border-color:var(--border2);background:var(--surface2);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{opacity:.85}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}@keyframes modal-enter{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}@keyframes drawer-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes drawer-left{0%{transform:translate(-100%)}to{transform:translate(0)}}.library-fullscreen{z-index:200;background:var(--bg);padding:0;position:fixed;inset:0;overflow-y:auto}@keyframes scan{0%,to{opacity:1;top:0}50%{opacity:.7;top:calc(100% - 2px)}}.scan-line{background:linear-gradient(90deg, transparent, var(--accent), transparent);border-radius:1px;height:2px;animation:1.8s ease-in-out infinite scan;position:absolute;left:0;right:0}@keyframes esper-zoom{0%{filter:contrast()brightness()saturate()hue-rotate();transform:scale(1)}15%{filter:contrast(1.2)brightness(1.05)saturate(.8)hue-rotate(60deg);transform:scale(1.04)}40%{filter:contrast(1.4)brightness(1.08)saturate(.6)hue-rotate(150deg);transform:scale(1.09)}70%{filter:contrast(1.55)brightness(1.1)saturate(.45)hue-rotate(185deg);transform:scale(1.14)}to{filter:contrast(1.6)brightness(1.1)saturate(.4)hue-rotate(190deg);transform:scale(1.18)}}.esper-img{transform-origin:50%;will-change:transform, filter;animation:12s ease-in forwards esper-zoom}@keyframes esper-scanline{0%{opacity:0;top:-3px}5%{opacity:1}95%{opacity:1}to{opacity:0;top:100%}}.esper-scanline{pointer-events:none;background:linear-gradient(90deg,#0000 0%,#64dcff26 10%,#64dcffb3 50%,#64dcff26 90%,#0000 100%);height:2px;animation:2.4s cubic-bezier(.4,0,.6,1) infinite esper-scanline;position:absolute;left:0;right:0;box-shadow:0 0 8px #64dcff99,0 0 20px #64dcff33}@keyframes esper-blink{0%,to{opacity:1}48%,52%{opacity:.15}}.esper-blink{animation:1.1s ease-in-out infinite esper-blink}@keyframes esper-coord-flash{0%,to{opacity:.85}50%{opacity:.4}}.esper-coords{color:#64dcffcc;letter-spacing:.05em;text-shadow:0 0 6px #64dcff99;font-family:Courier New,monospace;font-size:9px;line-height:1.7;animation:.35s step-end infinite esper-coord-flash}@keyframes esper-cmd-appear{0%{opacity:0;letter-spacing:.4em}12%{opacity:1;letter-spacing:.18em}85%{opacity:1;letter-spacing:.18em}to{opacity:.25;letter-spacing:.18em}}.esper-cmd-current{letter-spacing:.18em;color:#78e6fff2;text-shadow:0 0 10px #64dcffcc,0 0 24px #64dcff66;white-space:nowrap;font-family:Courier New,monospace;font-size:15px;font-weight:700;animation:1.8s ease-out forwards esper-cmd-appear}.badge{letter-spacing:.03em;text-transform:uppercase;border-radius:20px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.main-content{padding:32px 20px}.bottom-nav{display:none}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px;display:grid}.app-header-nav{display:flex}.library-filter-selects{display:contents}.app-wordmark{font-size:18px;line-height:1;display:block}.app-wordmark-line1{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text3);margin-bottom:3px;font-size:10px;font-weight:500;display:block}.app-wordmark-movies{font-family:var(--font-display);letter-spacing:.01em;font-size:32px;font-weight:800;line-height:.92;display:block}.mobile-profile-btn{display:none}.profile-layout{align-items:flex-start;gap:16px;display:flex}.profile-sidebar{flex-shrink:0;width:260px}.profile-main{flex-direction:column;flex:1;min-width:0;display:flex}.profile-main>.profile-sheet-section{border-top:1px solid var(--border);padding:24px 0}.profile-main>.profile-sheet-section:first-child{border-top:none}.profile-header-merged{align-items:flex-start;gap:32px;display:flex}.profile-header-identity{flex:none;align-items:flex-start;gap:16px;max-width:340px;display:flex}.profile-header-stats{border-left:1px solid var(--border);flex:1;min-width:0;padding-left:32px}.stat-profile-row{flex-wrap:wrap;gap:4px 0;display:flex}.stat-profile-cell{flex:auto;min-width:0;padding:0 18px}.stat-profile-cell:first-child{padding-left:0}.stat-profile-value{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);white-space:nowrap;font-size:30px;font-weight:800;line-height:1}.stat-profile-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text3);white-space:nowrap;margin-top:8px;font-size:10px;font-weight:500}.profile-main>.profile-grid-block{padding-top:0;padding-bottom:0}.profile-grid-block .profile-grid-row{grid-template-columns:1fr 1fr;display:grid}.profile-grid-block .profile-grid-row+.profile-grid-row{border-top:1px solid var(--border)}.profile-grid-block .profile-grid-cell{min-width:0;padding:24px 32px 24px 0}.profile-grid-block .profile-grid-cell+.profile-grid-cell{border-left:1px solid var(--border);padding-left:32px}.profile-grid-block .profile-grid-row.single{grid-template-columns:1fr 1fr}.profile-grid-block .profile-grid-row.single .profile-grid-cell:only-child{border-left:none}.add-controls{align-items:stretch;gap:8px;display:flex}.add-controls input{flex:1;min-width:0}.add-controls-btns{flex-shrink:0;gap:8px;display:flex}.runtime-mobile{display:none}@media (width<=600px){.runtime-desktop{display:none}.runtime-mobile{display:block}.app-subtitle,.app-header-nav{display:none}.app-wordmark-line1{font-size:10px}.app-wordmark-movies{font-size:22px}.mobile-profile-btn{border-radius:var(--radius);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;padding:6px;transition:color .15s;display:flex}.bottom-nav{background:var(--bg-translucent);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border);z-index:200;padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-btn{min-height:56px;color:var(--text3);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-family:var(--font-body);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:10px 0;transition:color .15s;display:flex}.bottom-nav-btn.active{color:var(--accent)}.main-content{padding:20px 14px 80px}.library-filter-selects{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:100%;align-items:center;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.library-filter-selects::-webkit-scrollbar{display:none}.library-filter-selects select{flex-shrink:0}.library-item-expanded{flex-direction:column}.library-item-expanded img{max-width:200px;width:100%!important}.search-heading{font-size:28px!important}.add-controls{flex-direction:column}.add-controls-btns{flex-wrap:wrap}.library-grid.density-compact{grid-template-columns:repeat(4,1fr)!important}.library-grid.density-comfortable{grid-template-columns:repeat(3,1fr)!important}.library-grid.density-large{grid-template-columns:repeat(2,1fr)!important}.movie-detail-hero{flex-direction:column}.movie-detail-hero>div:first-child{align-self:center;width:130px}.profile-layout{flex-direction:column;gap:12px}.profile-sidebar{box-sizing:border-box;width:100%!important}.profile-main{width:100%;min-width:0}.profile-grid-block .profile-grid-row{grid-template-columns:1fr}.profile-grid-block .profile-grid-cell+.profile-grid-cell{border-left:none;border-top:1px solid var(--border)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:16px}.profile-header-merged{flex-direction:column;align-items:stretch;gap:20px}.profile-header-identity{align-items:center;max-width:none}.profile-header-stats{border-left:none;border-top:1px solid var(--border);padding-top:20px;padding-left:0}.stat-profile-value{font-size:26px}.stat-profile-cell{padding:0 10px}.stat-profile-label{letter-spacing:.08em;font-size:9px}.compose-bar-desktop{display:none!important}}@media (width>=601px){.compose-fab-mobile{display:none!important}}
