@charset "UTF-8";:root{--color-background: 0 0% 98%;--color-foreground: 220 15% 15%;--color-card: 0 0% 100%;--color-card-foreground: 220 15% 15%;--color-popover: 0 0% 100%;--color-popover-foreground: 220 15% 15%;--color-primary: var(--color-foreground);--color-primary-foreground: var(--color-background);--color-secondary: 220 15% 92%;--color-secondary-foreground: 220 15% 15%;--color-muted: 220 15% 90%;--color-muted-foreground: 220 10% 45%;--color-accent: var(--color-foreground);--color-accent-foreground: var(--color-background);--color-destructive: var(--color-foreground);--color-destructive-foreground: var(--color-background);--color-border: 220 15% 88%;--color-input: 220 15% 94%;--color-ring: var(--color-foreground);--primary-color: hsl(var(--color-primary));--primary-rgb: 0, 0, 0;--primary-color-light: hsl(var(--color-primary-foreground));--accent-color: hsl(var(--color-accent));--warning-color: var(--text-primary);--success-color: var(--text-primary);--info-color: var(--text-primary);--error-color: hsl(var(--color-destructive));--status-watched-bg: hsl(142 70% 28%);--status-planned-bg: hsl(36 90% 35%);--status-badge-fg: hsl(0 0% 100%);--background-color: hsl(var(--color-background));--surface-color: hsl(var(--color-card));--surface-variant: hsl(var(--color-muted));--surface-elevated: hsl(0 0% 100%);--text-primary: hsl(var(--color-foreground));--text-secondary: hsl(var(--color-muted-foreground));--text-disabled: hsl(220 10% 65%);--text-hint: hsl(220 10% 55%);--on-surface-color: hsl(var(--color-card-foreground));--on-primary-color: hsl(var(--color-primary-foreground));--border-color: hsl(var(--color-border));--separator-color: hsl(220 15% 90%);--divider-color: hsl(220 15% 92%);--button-bg: var(--surface-color);--button-bg-hover: hsl(220 15% 94%);--button-bg-active: hsl(220 15% 88%);--button-text: var(--primary-color);--button-text-contrast: hsl(0 0% 100%);--overlay-backdrop: rgba(0, 0, 0, .4);--overlay-light: rgba(0, 0, 0, .08);--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-xl: none;--primary-hsl: var(--color-primary);--accent-hsl: var(--color-accent);--muted-hsl: var(--color-muted);--destructive-hsl: var(--color-destructive);--card-hsl: var(--color-card);--border-hsl: var(--color-border);--background-hsl: var(--color-background);--content-gutter: 12px}[data-theme=dark],.dark{--color-background: 220 15% 8%;--color-foreground: 220 15% 92%;--color-card: 220 15% 11%;--color-card-foreground: 220 15% 92%;--color-popover: 220 15% 11%;--color-popover-foreground: 220 15% 92%;--color-primary: var(--color-foreground);--color-primary-foreground: var(--color-background);--color-secondary: 220 15% 18%;--color-secondary-foreground: 220 15% 88%;--color-muted: 220 15% 16%;--color-muted-foreground: 220 10% 65%;--color-accent: var(--color-foreground);--color-accent-foreground: var(--color-background);--color-destructive: var(--color-foreground);--color-destructive-foreground: var(--color-background);--color-border: 220 15% 22%;--color-input: 220 15% 18%;--color-ring: var(--color-foreground);--primary-color: hsl(var(--color-primary));--primary-rgb: 255, 255, 255;--primary-color-light: hsl(var(--color-primary-foreground));--accent-color: hsl(var(--color-accent));--warning-color: var(--text-primary);--success-color: var(--text-primary);--info-color: var(--text-primary);--error-color: hsl(var(--color-destructive));--status-watched-bg: hsl(142 70% 42%);--status-planned-bg: hsl(36 95% 48%);--status-badge-fg: hsl(0 0% 100%);--background-color: hsl(var(--color-background));--surface-color: hsl(var(--color-card));--surface-variant: hsl(var(--color-muted));--surface-elevated: hsl(220 15% 14%);--text-primary: hsl(var(--color-foreground));--text-secondary: hsl(var(--color-muted-foreground));--text-disabled: hsl(220 10% 45%);--text-hint: hsl(220 10% 50%);--on-surface-color: hsl(var(--color-card-foreground));--on-primary-color: hsl(var(--color-primary-foreground));--border-color: hsl(var(--color-border));--separator-color: hsl(220 15% 20%);--divider-color: hsl(220 15% 18%);--button-bg: var(--surface-color);--button-bg-hover: hsl(220 15% 20%);--button-bg-active: hsl(220 15% 24%);--button-text: var(--primary-color);--button-text-contrast: hsl(0 0% 100%);--overlay-backdrop: rgba(0, 0, 0, .7);--overlay-light: rgba(255, 255, 255, .05);--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-xl: none;--primary-hsl: var(--color-primary);--accent-hsl: var(--color-accent);--muted-hsl: var(--color-muted);--destructive-hsl: var(--color-destructive);--card-hsl: var(--color-card);--border-hsl: var(--color-border);--background-hsl: var(--color-background);--content-gutter: 12px}.mini-search-row{margin:0}.mini-search{display:flex;align-items:center;gap:6px;width:100%;box-sizing:border-box;border:1px solid var(--border-color);border-radius:0;padding:0 8px;height:34px;background:var(--surface-color)}.mini-search__icon{font-size:14px;opacity:.7}.mini-search__input{flex:1;height:100%;border:none;outline:none;background:transparent;font-size:14px;line-height:34px;color:var(--text-primary)}.mini-search__input::placeholder{color:var(--text-primary);opacity:.6}.mini-search__clear{border:none;outline:none;background:transparent!important;background-color:transparent!important;box-shadow:none!important;padding:0!important;min-height:0!important;min-width:0!important;font-size:14px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.mini-search__action{border:none;outline:none;background:transparent!important;background-color:transparent!important;box-shadow:none!important;color:var(--text-primary);border-radius:0;border:1px solid var(--border-color);padding:6px 10px!important;min-height:0!important;min-width:0!important;font-size:13px;cursor:pointer;-webkit-tap-highlight-color:transparent}.mini-search__clear:hover,.mini-search__clear:active,.mini-search__action:hover,.mini-search__action:active{background:transparent!important;background-color:transparent!important}.mini-search__clear:focus,.mini-search__clear:focus-visible,.mini-search__action:focus,.mini-search__action:focus-visible{outline:none!important;box-shadow:none!important}html,body{height:100%;margin:0;padding:0;overflow:visible}*{box-sizing:border-box}html,body{height:100%;font-family:Roboto,Arial,sans-serif;background:var(--background-color);color:var(--text-primary)}body{margin:0}.container{max-width:1200px;margin:0 auto;padding:0 16px}.text-center{text-align:center}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fade-in{animation:none}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background-color)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--text-disabled)}.loading-container,.empty-state,.welcome-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;gap:16px}.loading-container mat-icon,.empty-state mat-icon,.welcome-state mat-icon,.error-state mat-icon{font-size:48px;width:48px;height:48px;color:var(--text-disabled)}.loading-container h3,.empty-state h3,.welcome-state h3,.error-state h3{margin:0;color:var(--text-primary)}.loading-container p,.empty-state p,.welcome-state p,.error-state p{margin:0;color:var(--text-secondary);font-size:14px}.grid-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(max-width:480px){.grid-cards{grid-template-columns:1fr;gap:12px}}.two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.app-root{height:100vh;overflow:hidden}button,.mat-button,.mat-raised-button,.mat-fab,.mat-icon-button{background:var(--button-bg)!important;color:var(--text-primary)!important;border-radius:0!important;min-height:40px;min-width:40px;font-size:14px;padding:8px 16px;box-shadow:none!important;-webkit-tap-highlight-color:transparent}button:active,.mat-button:active,.mat-raised-button:active,.mat-fab:active,.mat-icon-button:active{background:var(--button-bg-active)!important;color:var(--text-primary)!important}button[disabled],.mat-button[disabled],.mat-raised-button[disabled],.mat-fab[disabled],.mat-icon-button[disabled]{color:var(--text-disabled)!important;background:var(--button-bg)!important;opacity:.5}.footer-btn{background:var(--button-bg)!important;color:var(--text-primary)!important;border-radius:0!important;box-shadow:none!important}.footer-btn.primary{background:transparent!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important}.card-base{display:flex;flex-direction:column;border-radius:0;background:var(--surface-color);border:1px solid var(--border-color);box-shadow:none;transition:none}.card-base:active{box-shadow:none}.card-elevated{background:var(--surface-elevated);box-shadow:none}.app-popup-panel{background:var(--surface-color);color:var(--on-surface-color, var(--text-primary));border:1px solid var(--border-color);box-shadow:none;padding:0;min-width:180px;max-width:96vw;box-sizing:border-box;max-height:80vh;overflow:auto;-webkit-overflow-scrolling:touch}@media(max-width:360px){.app-popup-panel{min-width:160px}}.mat-menu-panel.app-popup-panel,.app-popup-panel.mat-menu-panel{padding:0}.mat-menu-panel.app-popup-panel{border-radius:0}.app-popup-list{display:flex;flex-direction:column}.app-popup-list .app-popup-list-item{padding:12px 16px;margin:0;border:none;border-bottom:1px solid var(--border-color);background:transparent;border-radius:0}.app-popup-list .app-popup-list-item:last-child{border-bottom:none}.mat-menu-panel.app-popup-panel .mat-menu-content{padding:0}.mat-menu-panel.app-popup-panel .mat-menu-item{padding:12px 16px;min-height:44px;border-radius:0}.mat-menu-panel.app-popup-panel .mat-divider{background:var(--border-color);height:1px;margin:0}.app-popup-panel--light{background:var(--surface-color)}.app-popup-backdrop{position:fixed;inset:0;background:var(--overlay-backdrop);z-index:1090;-webkit-tap-highlight-color:transparent}.app-popup-bottom{position:fixed;left:0;right:0;bottom:0;z-index:1095;padding:12px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12px)}.mat-dialog-container.app-popup-bottom{position:fixed;left:0;right:0;bottom:0;z-index:1095}.cdk-overlay-pane.app-popup-bottom{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:1305!important}.cdk-overlay-pane.app-popup-panel,.mat-select-panel.app-popup-panel{z-index:1310!important}.cdk-overlay-container,.cdk-global-overlay-wrapper,.cdk-overlay-connected-position-bounding-box{pointer-events:none}.cdk-overlay-pane{pointer-events:auto}.cdk-overlay-backdrop.app-popup-backdrop-high,.app-popup-backdrop-high{position:fixed;inset:0;background:var(--overlay-backdrop);z-index:1300!important}.mat-dialog-container.app-popup-bottom{z-index:1305!important}.app-popup-bottom .app-popup-panel{border-radius:0;margin:0 auto;width:100%;max-width:800px}.app-popup-panel--full{border-radius:0!important;width:100%!important;max-width:100%!important;left:0!important;right:0!important}.mat-dialog-container.app-popup-bottom .app-popup-panel.app-popup-panel--full{border-radius:0!important;width:100%!important;max-width:100%!important}.mat-dialog-container.app-popup-center{display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important;border-radius:0!important}.mat-dialog-container.app-popup-center .app-popup-panel{border-radius:0!important;max-width:720px!important;width:96vw!important}.mat-menu-panel .mat-menu-item.danger mat-icon,.mat-menu-panel .mat-menu-item.danger span{color:var(--warning-color)!important}.app-popup-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--divider-color)}.app-popup-title{font-weight:600;font-size:1rem;margin:0}.app-popup-body{padding:12px 0}.app-popup-actions{display:flex;gap:8px;justify-content:flex-end;padding-top:8px;border-top:1px solid var(--divider-color)}.app-popup-panel button,.app-popup-panel .btn,.app-popup-panel .action{border:none;background:transparent;padding:0;min-height:44px;border-radius:0;font-size:14px;display:block;width:100%;text-align:left}.app-popup-panel .btn--primary{background:transparent;color:var(--primary-color);border-color:transparent}.app-popup-panel .btn--warn{background:transparent;color:var(--warning-color);border-color:transparent}.app-popup-list{display:flex;flex-direction:column;gap:4px}.app-popup-list .app-popup-list-item{display:flex;align-items:center;gap:10px;padding:0;border-radius:0}.app-popup-list .app-popup-list-item:hover{background:transparent}.app-popup-list .app-popup-list-item span{word-break:break-word}.app-popup-list .app-popup-list-item:focus{outline:2px solid var(--divider-color);outline-offset:2px}@media(max-width:600px){.app-popup-panel{padding:14px}.app-popup-panel button,.app-popup-panel .btn{padding:12px 16px;min-height:48px}.mat-mdc-menu-item{min-height:48px!important;padding:10px 16px!important}}@media(max-width:360px){.app-popup-panel{max-width:92vw;min-width:160px}.mat-mdc-menu-item{padding:8px 12px!important;font-size:13px!important}}.overlay-backdrop{position:fixed;inset:0;background:var(--overlay-backdrop);z-index:1200}.slide-up-panel{position:fixed;left:0;right:0;z-index:1201;background:var(--surface-elevated, var(--surface-color));border:1px solid var(--border-color);box-shadow:none;border-radius:0;display:flex;flex-direction:column;top:auto!important;bottom:var(--movie-app-footer-height, 56px)!important;margin:0 auto!important;transform:none;animation:none}.slide-up-panel.half-screen{top:auto!important;bottom:var(--movie-app-footer-height, 56px)!important;height:52vh;max-height:calc(100vh - var(--movie-app-header-height, 56px) - var(--movie-app-footer-height, 56px))}.slide-up-panel.modal-screen{top:auto!important;bottom:var(--movie-app-footer-height, 56px)!important;height:80vh;max-height:calc(100vh - var(--movie-app-header-height, 56px) - var(--movie-app-footer-height, 56px));margin:0 8px;left:6px;right:6px}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-weight:600;border-bottom:1px solid var(--divider-color)}.panel-body{overflow:auto;padding:12px 16px 20px}.slide-up-panel{max-height:calc(100vh - var(--movie-app-header-height, 56px) - var(--movie-app-footer-height, 56px))}.slide-up-panel .panel-header{position:sticky;top:0;background:inherit;z-index:4}.slide-up-panel button[mat-icon-button]{width:40px;height:40px}@keyframes slideUp{}::ng-deep html.no-scroll,::ng-deep body.no-scroll{height:100%;overflow:hidden!important}.mat-mdc-menu-panel{background:var(--surface-elevated, var(--surface-color))!important}.mat-mdc-menu-content{padding:0!important}.mat-mdc-menu-item{background:transparent!important;color:var(--text-primary, inherit)!important;min-height:44px!important;height:auto!important;line-height:1.4!important;padding:8px 16px!important;border-bottom:1px solid var(--border-color)!important;white-space:normal!important;word-break:break-word!important;overflow-wrap:break-word!important;display:flex!important;align-items:center!important;gap:12px!important}.mat-mdc-menu-item:last-child{border-bottom:none!important}.mat-mdc-menu-item:hover{background:var(--surface-variant)!important}.mat-mdc-menu-item mat-icon{color:var(--text-secondary, inherit)!important;flex-shrink:0!important;min-width:24px!important}.mat-mdc-menu-item span{word-break:break-word!important;overflow-wrap:break-word!important;white-space:normal!important}.mat-mdc-menu-item.active{color:var(--text-primary)!important}.mat-mdc-menu-panel{border-radius:0!important;background:var(--surface-elevated, var(--surface-color))!important;border:1px solid var(--border-color)!important;min-width:0!important;max-width:none!important}.page-container{min-height:100vh;background:var(--background-color);display:flex;flex-direction:column;overflow:visible}.page-content{flex:1 1 auto;padding:72px 16px;max-width:800px;margin:0 auto;overflow:visible}.feature-content{width:100%;box-sizing:border-box;margin:0;overflow-x:hidden}.feature-content .tab-content{padding:0!important;max-height:calc(100vh - 92px);overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.feature-content .tab-content::-webkit-scrollbar{width:0;height:0}.popup-backdrop{position:fixed;inset:0;background:var(--overlay-backdrop);display:flex;align-items:center;justify-content:center;padding:16px;z-index:1050}.popup-shell{width:min(520px,100%);background:var(--surface-elevated, var(--surface-color));border-radius:0;border:1px solid var(--border-color);box-shadow:none}.dialog-root{padding:0;background:var(--surface-elevated, var(--surface-color));color:var(--text-primary);border-radius:0;box-shadow:none;display:flex;flex-direction:column;max-height:calc(100vh - 32px);min-height:320px;overflow:hidden}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;border-bottom:1px solid var(--divider-color);flex-shrink:0;background:var(--surface-elevated, var(--surface-color));z-index:2}.dialog-title{font-size:18px;font-weight:600;line-height:1.2}.dialog-close-btn{border:1px solid var(--border-color);background:transparent;width:36px;height:36px;font-size:22px;line-height:1;border-radius:0;padding:0;cursor:pointer;color:var(--text-secondary)}.dialog-close-btn:focus{outline:none}.dialog-close-btn:hover{background:var(--overlay-light)}.dialog-content{display:flex;flex-direction:column;gap:12px;padding:16px;border-bottom:1px solid var(--divider-color);background:transparent;overflow-y:auto;flex:1 1 auto;min-height:0}.dialog-field-label{font-size:13px;color:var(--text-secondary);margin-bottom:4px}.dialog-field-input{width:100%;border:1px solid var(--border-color);border-radius:0;padding:10px 12px;font-size:15px;background:transparent;color:var(--text-primary);outline:none;box-sizing:border-box}.dialog-field-input:focus{border-color:var(--text-primary)}.dialog-field-input--multiline{min-height:96px;resize:vertical}.dialog-actions{padding:12px 16px;background:transparent;display:flex;gap:8px;justify-content:flex-end;flex-shrink:0;z-index:2}.dialog-actions--single{justify-content:stretch}.dialog-actions--single .dialog-action-btn{width:100%}.dialog-action-btn{border:1px solid var(--border-color);background:transparent;color:var(--text-primary);padding:12px 14px;font-size:15px;font-weight:600;border-radius:0;cursor:pointer;box-shadow:none}.dialog-action-btn:focus{outline:none}.dialog-action-btn:active,.dialog-action-btn:hover{filter:none;box-shadow:none}.dialog-action-btn--secondary{background:transparent;color:var(--text-primary);border-color:var(--border-color)}.dialog-action-btn--secondary:hover{background:var(--overlay-light)}.dialog-action-btn--disabled{opacity:.6;cursor:not-allowed}
