:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--primary-color: #2196f3;--primary-dark: #1976d2;--primary-light: #e3f2fd;--secondary-color: #ff9800;--accent-color: #e91e63;--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: #f0f0f0;--bg-card: #ffffff;--text-primary: #1a1a1a;--text-secondary: #4a4a4a;--text-tertiary: #666666;--text-disabled: #aaaaaa;--border-color: #e0e0e0;--border-light: #f0f0f0;--border-dark: #cccccc;--shadow-light: 0 2px 8px rgba(0, 0, 0, .1);--shadow-medium: 0 4px 12px rgba(0, 0, 0, .15);--shadow-heavy: 0 8px 25px rgba(0, 0, 0, .2);--radius-small: 4px;--radius-medium: 8px;--radius-large: 12px;--radius-xl: 16px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 24px;--spacing-3xl: 32px;--font-xs: 10px;--font-sm: 12px;--font-base: 14px;--font-md: 16px;--font-lg: 18px;--font-xl: 20px;--font-2xl: 24px;--font-3xl: 28px;--font-4xl: 32px;--header-height: 64px;--bottom-nav-height: 70px;--fab-size: 56px;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}[data-theme=dark]{--bg-primary: #121212;--bg-secondary: #1e1e1e;--bg-tertiary: #2a2a2a;--bg-card: #1e1e1e;--text-primary: #ffffff;--text-secondary: #e0e0e0;--text-tertiary: #b3b3b3;--text-disabled: #666666;--border-color: #404040;--border-light: #333333;--border-dark: #555555;--shadow-light: 0 2px 8px rgba(0, 0, 0, .4);--shadow-medium: 0 4px 12px rgba(0, 0, 0, .5);--shadow-heavy: 0 8px 25px rgba(0, 0, 0, .6)}[data-theme=dark] .MuiCard-root{background-color:var(--bg-card, #1e1e1e)!important;color:var(--text-primary, #ffffff)!important}[data-theme=dark] .MuiCardContent-root{background-color:transparent!important;color:var(--text-primary, #ffffff)!important}[data-theme=dark] .MuiChip-root{color:var(--text-primary)!important;background-color:var(--bg-card)!important;border-color:var(--border-color)!important}[data-theme=dark] .MuiChip-root:hover{background-color:var(--bg-tertiary)!important;border-color:var(--primary-color)!important}[data-theme=dark] .MuiChip-root.MuiChip-filled{background-color:var(--primary-color)!important;color:#fff!important}[data-theme=dark] .MuiChip-outlined{border-color:var(--border-color)!important;color:var(--text-primary)!important}*{box-sizing:border-box}.MuiGrid-root,.MuiGrid-container,.MuiGrid-item,.MuiBox-root{transition:none!important;animation:none!important}.MuiCssBaseline-root{transition:none!important}.MuiChip-root{transition:opacity .2s ease,transform .2s ease!important}.MuiChip-root:hover{transform:none!important}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.5;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.page-container{display:flex;flex-direction:column;min-height:100vh;background-color:var(--bg-secondary);padding-bottom:var(--bottom-nav-height);overflow-x:hidden;overflow-y:auto}.page-content{flex:1;padding:var(--spacing-lg);max-width:1200px;margin:0 auto;width:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.page-header{text-align:center;margin-bottom:var(--spacing-3xl);padding:var(--spacing-2xl);background-color:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-light)}.page-title{color:var(--primary-color);font-weight:700;margin:0 0 var(--spacing-lg) 0;font-size:var(--font-4xl)}.page-subtitle{color:var(--text-secondary);margin:0;font-size:var(--font-lg)}.section{margin-bottom:var(--spacing-3xl)}.section-title{color:var(--text-primary);font-weight:600;margin-bottom:var(--spacing-lg);font-size:var(--font-xl)}.card{background-color:var(--bg-card);border-radius:var(--radius-large);box-shadow:var(--shadow-light);overflow:hidden;transition:all .3s ease}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium)}.card-content{padding:var(--spacing-xl)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--radius-medium);font-size:var(--font-base);font-weight:500;text-decoration:none;cursor:pointer;transition:all .3s ease;min-height:44px}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-light)}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:var(--border-light)}.btn-outline{background-color:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.btn-outline:hover{background-color:var(--primary-light)}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;margin-bottom:var(--spacing-sm);color:var(--text-primary);font-weight:500;font-size:var(--font-sm)}.form-input{width:100%;padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-medium);background-color:var(--bg-primary);color:var(--text-primary);font-size:var(--font-base);transition:border-color .3s ease}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #2196f333}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-5{grid-template-columns:repeat(5,1fr)}.grid-6{grid-template-columns:repeat(6,1fr)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.p-0{padding:0}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.m-0{margin:0}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mt-0{margin-top:0}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-xs{font-size:var(--font-xs)}.text-sm{font-size:var(--font-sm)}.text-base{font-size:var(--font-base)}.text-lg{font-size:var(--font-lg)}.text-xl{font-size:var(--font-xl)}.text-2xl{font-size:var(--font-2xl)}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.hidden{display:none}.visible{display:block}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:var(--border-dark) var(--bg-tertiary)}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:var(--radius-small)}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:var(--radius-small)}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media(max-width:768px){:root{--spacing-lg: 12px;--spacing-xl: 16px;--spacing-2xl: 20px;--spacing-3xl: 24px}.page-content{padding:var(--spacing-md)}.page-title{font-size:var(--font-3xl)}.form-row{grid-template-columns:1fr}.grid-4,.grid-5,.grid-6{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){:root{--spacing-lg: 8px;--spacing-xl: 12px;--spacing-2xl: 16px;--spacing-3xl: 20px}.page-content{padding:var(--spacing-sm)}.page-title{font-size:var(--font-2xl)}.grid-2,.grid-3,.grid-4,.grid-5,.grid-6{grid-template-columns:1fr}.btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-sm)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-in{animation:slideIn .3s ease-out}.loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-3xl);color:var(--text-secondary)}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--border-light) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.loader-container{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100vw;height:100vh;background:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999}[data-theme=dark] .loader-container{background:#000000e6}.loader-container.small{gap:16px}.loader-icon{position:relative;width:180px;height:180px;display:flex;align-items:center;justify-content:center}.loader-container.small .loader-icon{width:90px;height:90px}.loader-container.large .loader-icon{width:240px;height:240px}.loader-svg{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 16px rgba(0,0,0,.15));position:relative;z-index:2;animation:iconPulse 2s ease-in-out infinite}.loader-message{color:#618bd3e6;font-size:1rem;text-align:center;max-width:200px;margin:0}.loader-container.small .loader-message{font-size:.8rem}.loader-container.large .loader-message{font-size:1.2rem;max-width:300px}@keyframes iconPulse{0%{transform:scale(1);filter:drop-shadow(0 0 16px rgba(0,0,0,.15))}50%{transform:scale(1.05);filter:drop-shadow(0 0 24px rgba(0,0,0,.25))}to{transform:scale(1);filter:drop-shadow(0 0 16px rgba(0,0,0,.15))}}@media(max-width:768px){.loader-container{padding:20px}.loader-message{font-size:.9rem;max-width:250px}}@media(max-width:480px){.loader-container{padding:16px}.loader-message{font-size:.8rem;max-width:200px}}.offline-indicator{position:fixed;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.offline-chip,.online-chip,.queue-chip{cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #00000026}.offline-chip:hover,.online-chip:hover,.queue-chip:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.offline-details{position:fixed;inset:0;background:#00000080;z-index:1001;display:flex;align-items:center;justify-content:center;padding:20px}.offline-details-content{background:var(--bg-card, #ffffff);border-radius:12px;padding:24px;max-width:400px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-heavy, 0 8px 32px rgba(0, 0, 0, .3));color:var(--text-primary, #333333)}.status-item{margin-bottom:16px;padding:12px;background:var(--bg-secondary, #f5f5f5);border-radius:var(--radius-medium, 8px);border-left:4px solid var(--primary-color, #2196f3);color:var(--text-primary, #333333)}.status-item:last-child{margin-bottom:0}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.offline-chip{animation:pulse 2s infinite}[data-theme=dark] .offline-details-content{background:var(--bg-card, #1e1e1e);color:var(--text-primary, #ffffff)}[data-theme=dark] .status-item{background:var(--bg-secondary, #2a2a2a);border-left-color:var(--primary-color, #64b5f6);color:var(--text-primary, #ffffff)}@media(max-width:480px){.offline-indicator{top:10px;right:10px}.offline-details{padding:10px}.offline-details-content{padding:16px}}.offline-details{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.offline-details-content{animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--primary-color, #667eea) 0%,var(--accent-color, #764ba2) 100%);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;text-align:center;padding:20px;box-sizing:border-box;position:relative;overflow:hidden}[data-theme=dark] .error-container{background:linear-gradient(135deg,var(--primary-dark, #1976d2) 0%,var(--accent-color, #7b1fa2) 100%)}.error-container:before{content:"";position:absolute;inset:0;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1}[data-theme=dark] .error-container:before{background:#0003}.error-content{position:relative;z-index:2;background:#fffffff2;border-radius:20px;padding:40px 30px;box-shadow:0 20px 40px #0000001a;max-width:400px;width:100%;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:var(--text-primary, #1a1a1a)}[data-theme=dark] .error-content{background:#1e1e1ef2;box-shadow:0 20px 40px #00000080}.error-icon{width:80px;height:80px;margin:0 auto 20px;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;color:#fff;box-shadow:0 10px 20px #ff6b6b4d}.error-title{font-size:1.8rem;font-weight:700;color:var(--text-primary, #2c3e50);margin-bottom:15px;line-height:1.2}.error-message{font-size:1rem;color:var(--text-secondary, #7f8c8d);margin-bottom:20px;line-height:1.5}.error-details{background:#2196f31a;border-radius:12px;padding:20px;margin:20px 0;border-left:4px solid var(--primary-color, #3498db)}[data-theme=dark] .error-details{background:#2196f333}.error-details h3{font-size:1.1rem;font-weight:600;color:var(--text-primary, #2c3e50);margin-bottom:15px;margin-top:0}.error-details ul{list-style:none;padding:0;margin:0}.error-details li{font-size:.95rem;color:var(--text-primary, #34495e);margin-bottom:8px;padding-left:20px;position:relative}.error-details li:before{content:"✓";position:absolute;left:0;color:#27ae60;font-weight:700}.error-instruction{font-size:.9rem;color:var(--text-secondary, #7f8c8d);margin-top:20px;line-height:1.4}.error-instruction a{color:var(--primary-color, #0088cc);text-decoration:none;font-weight:600;transition:color .3s ease}.error-instruction a:hover{color:var(--primary-dark, #006699)}.telegram-button{display:inline-flex;align-items:center;justify-content:center;background:var(--primary-color, #0088cc);color:#fff;padding:12px 24px;border-radius:25px;text-decoration:none;font-weight:600;margin-top:20px;transition:all .3s ease;box-shadow:0 4px 15px #0088cc4d;min-height:44px}.telegram-button:hover{background:var(--primary-dark, #006699);transform:translateY(-2px);box-shadow:0 6px 20px #08c6}.telegram-icon{width:20px;height:20px;margin-right:8px;fill:currentColor}@media(max-width:480px){.error-container{padding:15px}.error-content{padding:30px 20px;border-radius:15px}.error-icon{width:60px;height:60px;font-size:30px}.error-title{font-size:1.5rem}.error-message{font-size:.9rem}.error-details{padding:15px;margin:15px 0}.error-details h3{font-size:1rem}.error-details li{font-size:.9rem}.error-instruction{font-size:.8rem}}@media(min-width:481px)and (max-width:768px){.error-content{max-width:500px;padding:50px 40px}}@media(max-height:500px)and (orientation:landscape){.error-container{min-height:100vh;padding:10px}.error-content{padding:20px 30px}.error-icon{width:50px;height:50px;font-size:25px;margin-bottom:15px}}.platform-info{display:flex;gap:8px;align-items:center;justify-content:center;padding:8px 12px;background:#ffffff1a;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);font-size:.8rem;color:var(--text-primary, #ffffff);margin:10px 0}[data-theme=dark] .platform-info{background:#0000004d;border-color:#ffffff1a}.platform-badge,.theme-badge{display:flex;align-items:center;gap:4px;padding:4px 8px;background:#ffffff26;border-radius:12px;font-weight:500}.platform-icon,.theme-icon{font-size:1rem}.platform-name,.theme-name{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}[data-theme=dark] .platform-info{background:#0003;border-color:#ffffff1a}[data-theme=dark] .platform-badge,[data-theme=dark] .theme-badge{background:#ffffff1a}@media(max-width:480px){.platform-info{padding:6px 10px;font-size:.75rem}.platform-badge,.theme-badge{padding:3px 6px}.platform-icon,.theme-icon{font-size:.9rem}.platform-name,.theme-name{font-size:.7rem}}@media(min-width:481px)and (max-width:768px){.platform-info{padding:10px 16px;font-size:.85rem}.platform-badge,.theme-badge{padding:5px 10px}}.user-tutorial{position:relative;z-index:10000}.user-tutorial .joyride-overlay{background-color:#00000080}.user-tutorial .joyride-tooltip{background-color:var(--bg-card, #ffffff);border-radius:var(--radius-medium, 8px);box-shadow:var(--shadow-medium, 0 4px 12px rgba(0, 0, 0, .15));max-width:300px;padding:16px;color:var(--text-primary, #333333)}.user-tutorial .joyride-tooltip__title{color:var(--text-primary, #333333);font-size:16px;font-weight:700;margin-bottom:8px}.user-tutorial .joyride-tooltip__content{color:var(--text-secondary, #666666);font-size:14px;line-height:1.4}.user-tutorial .joyride-tooltip__footer{margin-top:16px;display:flex;justify-content:space-between;align-items:center}.user-tutorial .joyride-button{background-color:var(--primary-color, #2196f3);border:none;border-radius:var(--radius-small, 6px);color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s ease;min-height:44px}.user-tutorial .joyride-button:hover{background-color:var(--primary-dark, #1976d2)}.user-tutorial .joyride-button--secondary{background-color:transparent;color:var(--primary-color, #2196f3);border:1px solid var(--primary-color, #2196f3)}.user-tutorial .joyride-button--secondary:hover{background-color:var(--primary-color, #2196f3);color:#fff}.user-tutorial .joyride-button--skip{background-color:transparent;color:var(--text-tertiary, #999999);border:none}.user-tutorial .joyride-button--skip:hover{color:var(--text-secondary, #666666)}.user-tutorial .joyride-progress{background-color:var(--border-color, #e0e0e0);border-radius:10px;height:4px;margin-bottom:12px;overflow:hidden}.user-tutorial .joyride-progress__bar{background-color:var(--primary-color, #2196f3);height:100%;transition:width .3s ease}.user-tutorial .joyride-tooltip__arrow{border-color:var(--bg-card, #ffffff)}@media(max-width:768px){.user-tutorial .joyride-tooltip{max-width:280px;margin:0 10px}.user-tutorial .joyride-tooltip__title{font-size:15px}.user-tutorial .joyride-tooltip__content{font-size:13px}.user-tutorial .joyride-button{font-size:13px;padding:6px 12px}}[data-theme=dark] .user-tutorial .joyride-tooltip{background-color:var(--bg-card, #1e1e1e);color:var(--text-primary, #ffffff)}[data-theme=dark] .user-tutorial .joyride-tooltip__title{color:var(--text-primary, #ffffff)}[data-theme=dark] .user-tutorial .joyride-tooltip__content{color:var(--text-secondary, #b3b3b3)}[data-theme=dark] .user-tutorial .joyride-tooltip__arrow{border-color:var(--bg-card, #1e1e1e)}[data-theme=dark] .user-tutorial .joyride-progress{background-color:var(--border-color, #404040)}.book-impressions{margin-top:24px;padding:24px;background:var(--bg-card, #ffffff);border-radius:16px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.impressions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.impressions-header .section-title{margin:0;color:var(--text-primary, #333333)}[data-theme=dark] .impressions-header .section-title{color:var(--text-primary, #ffffff)}[data-theme=dark] .impressions-header p,[data-theme=dark] .impressions-header .MuiTypography-root,[data-theme=dark] .impressions-header .MuiTypography-body1,[data-theme=dark] .impressions-header .MuiTypography-body2,[data-theme=dark] .impressions-header span{color:var(--text-primary, #ffffff)!important}.reviews-list{display:flex;flex-direction:column;gap:16px}.review-card{background:var(--bg-secondary, #f8f9fa);border-radius:12px;box-shadow:var(--shadow-light, 0 1px 4px rgba(0, 0, 0, .1))}[data-theme=dark] .review-card{background:var(--bg-secondary, #2a2a2a)}.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.review-user{display:flex;flex-direction:column;gap:8px}.impression-chip{align-self:flex-start}.review-text{margin:12px 0;color:var(--text-secondary, #666666);white-space:pre-wrap;word-wrap:break-word}[data-theme=dark] .review-text{color:var(--text-secondary, #cccccc)}.review-actions{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color, #e0e0e0)}[data-theme=dark] .review-actions{border-top-color:var(--border-color, #444444)}.comments-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color, #e0e0e0)}[data-theme=dark] .comments-section{border-top-color:var(--border-color, #444444)}.comments-title{margin-bottom:12px;color:var(--text-primary, #333333);font-weight:600}[data-theme=dark] .comments-title{color:var(--text-primary, #ffffff)}.add-comment{display:flex;gap:8px;margin-top:12px;align-items:flex-start}.add-comment .MuiTextField-root{flex:1}@media(max-width:768px){.book-impressions{padding:16px}.impressions-header{flex-direction:column;align-items:flex-start;gap:12px}.review-header{flex-direction:column;gap:8px}}.bottom-navigation{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-fixed);background-color:var(--bg-card);border-top:1px solid var(--border-color);box-shadow:var(--shadow-light)}.bottom-nav{background:transparent!important;height:var(--bottom-nav-height)}.bottom-nav .MuiBottomNavigationAction-root{color:var(--text-secondary);transition:color .3s ease}.bottom-nav .MuiBottomNavigationAction-root.Mui-selected{color:var(--primary-color)}.bottom-nav .MuiBottomNavigationAction-label{font-size:var(--font-xs);font-weight:500;margin-top:var(--spacing-xs)}.bottom-nav .MuiBottomNavigationAction-label.Mui-selected{font-size:var(--font-xs)}.nav-item{min-width:60px}.book-detail-page{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-primary, #ffffff);padding-bottom:var(--bottom-nav-height, 80px)}.book-detail-content{flex:1;padding:16px;max-width:1200px;margin:0 auto;width:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - var(--bottom-nav-height, 80px))}.book-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.back-button,.menu-button{background:var(--bg-card, #ffffff);box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1));color:var(--text-primary, #333333)}.back-button:hover,.menu-button:hover{background:var(--bg-tertiary, #f0f0f0)}[data-theme=dark] .back-button,[data-theme=dark] .menu-button{background:var(--bg-card, #1e1e1e)!important;color:var(--text-primary, #ffffff)!important;border:1px solid var(--border-color, #404040)}[data-theme=dark] .back-button:hover,[data-theme=dark] .menu-button:hover{background:var(--bg-tertiary, #2a2a2a)!important;color:var(--text-primary, #ffffff)!important}[data-theme=dark] .back-button .MuiSvgIcon-root,[data-theme=dark] .menu-button .MuiSvgIcon-root{color:var(--text-primary, #ffffff)!important}.book-main{background:var(--bg-card, #ffffff);border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.book-main .MuiGrid-root{margin:0}.book-cover-container{position:relative;text-align:center}.book-cover{width:100%;max-width:250px;height:auto;border-radius:8px;box-shadow:var(--shadow-medium, 0 4px 12px rgba(0, 0, 0, .15))}.book-info{padding-left:16px}.book-info-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.book-info-text{flex:1;min-width:0;max-width:100%;overflow:hidden}.book-top-impressions{flex:0 0 240px;background:var(--bg-secondary, #f5f5f5);border-radius:12px;padding:12px 16px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.top-impressions-title{font-weight:600;color:var(--text-secondary, #555555);text-transform:uppercase;letter-spacing:.5px}.top-impressions-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}.top-impression-pill{display:flex;justify-content:space-between;align-items:center;background:var(--bg-card, #ffffff);border-radius:10px;padding:6px 10px;font-size:13px;color:var(--text-primary, #333333);font-weight:500;border:1px solid var(--border-light, #e0e0e0)}.top-impression-pill .pill-count{font-weight:700;color:var(--primary-color, #2196f3);margin-left:12px}.top-impression-empty{font-size:12px;color:var(--text-secondary, #777777)}[data-theme=dark] .book-top-impressions{background:#ffffff0d;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .6))}[data-theme=dark] .top-impression-pill{background:#0000004d;border-color:#ffffff1a;color:var(--text-primary, #ffffff)}[data-theme=dark] .top-impression-pill .pill-count{color:var(--primary-light, #90caf9)}[data-theme=dark] .top-impression-empty{color:var(--text-secondary, #bbbbbb)}@media(max-width:768px){.book-info-header{flex-direction:column}.book-info-text{width:100%}.book-top-impressions{width:100%;flex:1 1 auto}}.book-detail-page .book-title,.book-detail-content .book-title,.book-main .book-title{color:var(--text-primary, #333333);font-weight:700;margin-bottom:8px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:normal;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;display:block;max-width:100%;-webkit-box-orient:unset;-webkit-line-clamp:unset;line-clamp:unset}.book-author{color:var(--text-secondary, #666666);margin-bottom:24px;font-weight:500;overflow:hidden;text-overflow:ellipsis;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;max-width:100%}.book-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.stat-item{text-align:center;padding:12px;background:var(--bg-secondary, #f5f5f5);border-radius:8px}.stat-label{color:var(--text-secondary, #666666);font-size:12px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.stat-value{color:var(--text-primary, #333333);font-weight:600}.book-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:stretch}.read-button{background:var(--primary-color, #2196f3);color:#fff;font-weight:600;text-transform:none;border-radius:8px;padding:0 24px;flex:1;min-width:120px;display:flex;align-items:center;justify-content:center;height:48px}.read-button:hover{background:var(--primary-dark, #1976d2)}.add-button{border-color:var(--primary-color, #2196f3);color:var(--primary-color, #2196f3);font-weight:600;text-transform:none;border-radius:8px;padding:0 24px;flex:1;min-width:120px;display:flex;align-items:center;justify-content:center;height:48px}.add-button:hover{background:var(--primary-light, #e3f2fd);border-color:var(--primary-dark, #1976d2)}[data-theme=dark] .add-button:hover{background:#2196f333}.favorite-button{background:transparent!important;border:none!important;border-radius:8px;width:48px;height:48px;padding:0!important;display:flex;align-items:center;justify-content:center;transition:none}.favorite-button.MuiIconButton-root{background:transparent!important;border:none!important;color:inherit!important}.favorite-button.MuiIconButton-root:hover,.favorite-button.active.MuiIconButton-root,.favorite-button.active.MuiIconButton-root:hover{background:transparent!important}.book-description{background:var(--bg-card, #ffffff);border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.section-title{color:var(--text-primary, #333333);font-weight:600;margin-bottom:16px;font-size:18px}.description-text{color:var(--text-secondary, #555555);line-height:1.6;font-size:15px}.book-details{background:var(--bg-card, #ffffff);border-radius:16px;padding:24px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.book-files{background:var(--bg-card, #ffffff);border-radius:16px;padding:16px 24px;margin-bottom:24px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.book-files .section-title{margin-bottom:12px;color:var(--text-primary, #333333)}.book-files-list{padding:0}.book-file-item{border:1px solid var(--border-light, #e0e0e0);border-radius:12px;margin-bottom:12px;padding:8px 16px}.book-file-item:last-child{margin-bottom:0}.file-actions{display:flex;gap:8px;align-items:center}.detail-card{background:var(--bg-secondary, #f5f5f5);border-radius:8px;box-shadow:none;border:1px solid var(--border-color, #e0e0e0)}[data-theme=dark] .detail-card{background:var(--bg-card, #1e1e1e);border-color:var(--border-color, #404040)}.detail-label{color:var(--text-secondary, #666666);font-size:12px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}[data-theme=dark] .detail-label{color:var(--text-secondary, #b3b3b3)}.detail-value{color:var(--text-primary, #333333);font-weight:600}[data-theme=dark] .detail-value{color:var(--text-primary, #ffffff)}[data-theme=dark] .detail-card .MuiCardContent-root,[data-theme=dark] .detail-card .MuiCardContent-root .MuiTypography-root{color:var(--text-primary, #ffffff);background:transparent}[data-theme=dark] .detail-card .MuiCardContent-root .detail-label{color:var(--text-secondary, #b3b3b3)}.genre-chip{background:var(--primary-light, #e3f2fd);color:var(--primary-dark, #1976d2);font-weight:500}[data-theme=dark] .genre-chip{background:#2196f333;color:var(--primary-color, #2196f3)}.detail-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.detail-chip{background:var(--bg-secondary, #f5f5f5);color:var(--text-primary, #333333);font-weight:500}[data-theme=dark] .detail-chip{background:#ffffff1a;color:var(--text-primary, #ffffff)}.detail-empty{color:var(--text-secondary, #666666);font-size:12px}.book-shelves{background:var(--bg-card, #ffffff);border-radius:16px;padding:16px 24px;margin-bottom:24px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.book-shelves .section-title{color:var(--text-primary, #333333)!important;margin-bottom:12px}[data-theme=dark] .book-shelves .section-title{color:var(--text-primary, #ffffff)!important}.shelves-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.shelf-chip{background:var(--primary-light, #e3f2fd)!important;color:var(--primary-dark, #1976d2)!important;border:1px solid var(--primary-color, #2196f3)!important;font-weight:500!important;font-size:14px!important;height:32px!important;padding:0 12px!important;border-radius:16px!important;transition:all .2s ease!important}.shelf-chip:hover{background:var(--primary-color, #2196f3)!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 2px 8px #2196f34d}.shelf-chip .MuiChip-deleteIcon{color:var(--primary-dark, #1976d2)!important;font-size:18px!important;margin-left:4px!important;transition:color .2s ease!important}.shelf-chip:hover .MuiChip-deleteIcon{color:#fff!important}.shelf-chip .MuiChip-label{padding:0 4px!important;font-weight:500!important}[data-theme=dark] .book-shelves{background:var(--bg-card, #1e1e1e)}[data-theme=dark] .shelf-chip{background:#2196f333!important;color:var(--primary-color, #2196f3)!important;border-color:var(--primary-color, #2196f3)!important}[data-theme=dark] .shelf-chip:hover{background:var(--primary-color, #2196f3)!important;color:#fff!important}[data-theme=dark] .shelf-chip .MuiChip-deleteIcon{color:var(--primary-color, #2196f3)!important}[data-theme=dark] .shelf-chip:hover .MuiChip-deleteIcon{color:#fff!important}.book-quotes{background:var(--bg-card, #ffffff);border-radius:16px;padding:16px 24px;margin-bottom:24px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.book-quotes .section-title,.book-quotes .book-quotes-header{color:var(--text-primary, #333333)!important;margin-bottom:12px}[data-theme=dark] .book-quotes .section-title,[data-theme=dark] .book-quotes .book-quotes-header{color:var(--text-primary, #ffffff)!important}.quotes-list{display:flex;flex-direction:column;gap:12px;margin-top:8px}.book-quotes .quote-item{border:1px solid var(--border-light, #e0e0e0);border-radius:12px;padding:12px 16px;background:var(--bg-secondary, #f5f5f5)}.book-quotes .quote-text{color:var(--text-primary, #333333);font-size:15px;line-height:1.5;margin-bottom:8px}.book-quotes .quote-date{color:var(--text-secondary, #666666)}.book-quotes .quotes-empty{margin-top:12px}[data-theme=dark] .book-quotes{background:var(--bg-card, #1e1e1e)}[data-theme=dark] .book-quotes .quote-item{background:#ffffff0d;border-color:var(--border-color, #404040)}[data-theme=dark] .book-quotes .quote-text{color:var(--text-primary, #ffffff)}[data-theme=dark] .book-quotes .quote-date{color:var(--text-secondary, #b3b3b3)}.loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:18px;color:var(--text-secondary, #666666)}@media(max-width:768px){.book-detail-content{padding:12px}.book-main{padding:16px}.book-info{padding-left:0;margin-top:16px}.book-stats{grid-template-columns:repeat(4,1fr);gap:8px}.stat-item{padding:8px}.book-actions{flex-direction:column}.read-button,.add-button{width:100%;height:44px}.favorite-button{height:44px;width:44px}.favorite-button{align-self:center}.book-description,.book-details{padding:16px}}@media(max-width:480px){.book-detail-content{padding:8px}.book-main{padding:12px}.book-info-text{width:100%}.book-detail-page .book-title,.book-detail-content .book-title,.book-main .book-title{font-size:20px;line-height:1.2}.book-author{font-size:14px;margin-bottom:16px}.book-stats{grid-template-columns:repeat(2,1fr)}.stat-item{padding:6px}.stat-label{font-size:10px}.stat-value{font-size:16px}.book-description,.book-details,.book-shelves,.book-quotes,.book-files{padding:12px 16px}.description-text{font-size:14px}.shelf-chip{font-size:12px!important;height:28px!important;padding:0 10px!important}.shelves-list{gap:6px}}.book-files{background:var(--bg-card, #ffffff);border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1))}.book-files-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.book-files-header .section-title{margin-bottom:0;flex:1;min-width:200px}.book-formats{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.format-button{min-width:80px;text-transform:uppercase;font-weight:600;font-size:12px;padding:6px 16px}.manage-files-button{margin-left:8px}[data-theme=dark] .book-files{background:var(--bg-card, #1e1e1e)}@media(max-width:768px){.book-files-header{flex-direction:column;align-items:flex-start}.book-files-header .section-title{width:100%;margin-bottom:12px}.book-formats{width:100%;justify-content:flex-start}}.MuiDialog-root .MuiDialogTitle-root,.MuiDialog-root .MuiDialogContent-root h1,.MuiDialog-root .MuiDialogContent-root h2,.MuiDialog-root .MuiDialogContent-root h3,.MuiDialog-root .MuiDialogContent-root h4,.MuiDialog-root .MuiDialogContent-root h5,.MuiDialog-root .MuiDialogContent-root h6{color:var(--text-primary, #1a1a1a)}[data-theme=dark] .MuiDialog-root .MuiDialogTitle-root,[data-theme=dark] .MuiDialog-root .MuiDialogTitle-root .MuiTypography-root,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root .MuiTypography-root,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root h1,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root h2,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root h3,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root h4,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root h5,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root h6{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .MuiDialog-root .MuiDialogActions-root{background-color:var(--bg-card, #1e1e1e);border-top:1px solid var(--border-color, #404040)}[data-theme=dark] .MuiDialog-root .MuiInputBase-input,[data-theme=dark] .MuiDialog-root .MuiInputLabel-root,[data-theme=dark] .MuiDialog-root .MuiSelect-select,[data-theme=dark] .MuiDialog-root .MuiAutocomplete-inputRoot,[data-theme=dark] .MuiDialog-root .MuiOutlinedInput-notchedOutline,[data-theme=dark] .MuiDialog-root .MuiSvgIcon-root{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .MuiDialog-root .MuiOutlinedInput-root{background-color:var(--bg-primary, #121212)!important}[data-theme=dark] .MuiDialog-root .MuiOutlinedInput-notchedOutline{border-color:var(--border-color, #404040)!important}[data-theme=dark] .MuiDialog-root .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline,[data-theme=dark] .MuiDialog-root .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color, #2196f3)!important}[data-theme=dark] .MuiDialog-root .MuiInputLabel-root.Mui-focused{color:var(--primary-color, #2196f3)!important}[data-theme=dark] .MuiDialog-root .MuiAutocomplete-popper{background-color:var(--bg-card, #1e1e1e)!important;color:var(--text-primary, #ffffff)!important}[data-theme=dark] .MuiDialog-root .MuiAutocomplete-option{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .MuiDialog-root .MuiAutocomplete-option[aria-selected=true]{background-color:var(--bg-secondary, #2a2a2a)!important}.selection-actions-menu{padding:6px 8px;border-radius:8px;background-color:#202124f5;color:#fff;display:flex;gap:8px;align-items:center;box-shadow:0 1px 3px #0000004d,0 4px 8px #00000040;z-index:40;max-width:100%}.selection-actions-menu__btn{background:none;border:none;padding:4px 8px;min-width:56px;box-sizing:border-box;cursor:pointer;color:inherit;display:flex;flex-direction:column;align-items:center;font-size:11px;gap:2px}.selection-actions-menu__btn:hover{background-color:#ffffff1a;border-radius:6px}.selection-actions-menu__icon{fill:currentColor;margin-bottom:2px;flex-shrink:0}.selection-actions-menu__label{line-height:1.2;text-align:center}.djvu-reader-container{width:100%;height:100%;display:flex;flex-direction:column;position:relative;overflow:hidden;padding:0;margin-top:0;margin-bottom:0;background-color:var(--bg-primary, #ffffff);color:var(--text-primary, #1b1b1b)}.djvu-reader-container.fullscreen{background-color:#525252}.djvu-viewer{flex:1;width:100%;height:100%;overflow:auto;display:flex;justify-content:center;align-items:center;-webkit-overflow-scrolling:touch}.djvu-viewer canvas,.djvu-canvas{display:block;box-shadow:0 4px 8px #0000004d;background-color:#fff}.djvu-text-layer{line-height:1;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;-webkit-touch-callout:default;-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:text}.djvu-text-layer span{color:transparent;position:absolute;white-space:pre;transform-origin:0% 0%;pointer-events:auto;user-select:text;-webkit-user-select:text;cursor:text}.djvu-text-layer ::selection{background:#ffeb0080}.djvu-text-layer ::-moz-selection{background:#ffeb0080}.pdf-reader-container{display:flex;flex-direction:column;width:100%;height:100%;position:relative;overflow:hidden}.pdf-reader-container.fullscreen{background-color:#525252}.pdf-viewer{flex:1;width:100%;height:100%;overflow:auto;display:flex;justify-content:center;align-items:center;-webkit-overflow-scrolling:touch}.pdf-viewer canvas{display:block;box-shadow:0 4px 8px #0000004d;background-color:#fff}.pdf-page-wrapper{width:100%;height:100%;display:flex;justify-content:center;align-items:center;transform-origin:center center}.pdf-text-layer.textLayer{line-height:1;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;-webkit-touch-callout:default;-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:text}.pdf-text-layer.textLayer span,.pdf-text-layer.textLayer br{color:transparent;position:absolute;white-space:pre;transform-origin:0% 0%;pointer-events:auto;user-select:text;-webkit-user-select:text;cursor:text}.pdf-text-layer.textLayer ::selection{background:#ffeb0080}.pdf-text-layer.textLayer ::-moz-selection{background:#ffeb0080}.pdf-bottom-bar{position:absolute;bottom:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:#000000b3;color:#fff}.pdf-controls{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;background:#ffffffe6;padding:8px 16px;border-radius:8px;box-shadow:0 2px 8px #0000001a;z-index:10}.pdf-controls .MuiIconButton-root{color:var(--text-primary, #333333)}.pdf-controls .MuiIconButton-root:disabled{color:#00000042}.pdf-pageflip{width:100%;height:100%;position:relative;overflow:hidden;touch-action:none}.pdf-pageflip-page{background:var(--bg-primary, #ffffff);border-radius:8px;width:100%;height:100%;box-shadow:0 4px 10px #00000040}.pdf-pageflip-page-inner{width:100%;height:100%;box-sizing:border-box;position:relative}.pdf-pageflip-canvas{display:block;width:100%;height:100%;position:absolute;top:0;left:0}.pdf-reader-container.reader-mode-flip{transition:none;animation:none}.pdf-reader-container.reader-mode-flip.is-animating{animation:none;transition:none}.reader-settings-drawer{background-color:#1a1a3a;color:#fff;border-top:2px solid #4d4dff;transition:background-color .2s ease,border-top-color .2s ease;display:flex;flex-direction:column}.reader-settings-drawer.expanded{max-height:80vh;overflow-y:auto}.reader-settings-drawer.slider-active{background-color:transparent!important;border-top-color:transparent!important;box-shadow:none!important}.reader-settings-drawer.slider-active .reader-settings-header,.reader-settings-drawer.slider-active .reader-theme-row,.reader-settings-drawer.slider-active .reader-font-section,.reader-settings-drawer.slider-active .reader-more-button,.reader-settings-drawer.slider-active .reader-settings-actions,.reader-settings-drawer.slider-active .reader-settings-divider,.reader-settings-drawer.slider-active .slider-caption{opacity:0;pointer-events:none;transition:opacity .15s ease}.slider-dragging-backdrop.MuiBackdrop-root{background-color:transparent!important;transition:background-color .2s ease}.reader-settings-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px 0;border-bottom:1px solid #333355}.reader-settings-close{color:#fff}.reader-settings-section{padding:12px 16px 0;flex:1;display:flex;flex-direction:column}.reader-theme-row{display:flex;gap:42px;margin-bottom:24px;justify-content:center}.reader-theme-option{position:relative;width:48px;height:48px;border-radius:50%;border:2px solid #333355;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;transition:all .2s ease}.reader-theme-option.active{border-color:#4d4dff;box-shadow:0 0 0 3px #4d4dff4d}.theme-checkmark{position:absolute;top:50%;left:50%;width:28px;height:28px;transform:translate(-50%,-50%);background:#4d4dff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;color:#1a1a3a}.reader-font-section{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.font-label{color:#1a1a3a;font-weight:500;min-width:70px}.font-slider{flex:1;display:flex;align-items:center;justify-content:space-between;gap:12px}.font-nav-button{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:#1a1a3a;font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center}.font-name-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:140px}.current-font-name{font-size:20px;letter-spacing:.6px;color:#1a1a3a;margin:0;font-weight:600}.font-dots{display:flex;justify-content:center;gap:6px}.dot{width:6px;height:6px;background-color:#ccc;border-radius:50%;transition:background-color .2s ease}.dot.active{background-color:#4d4dff}.reader-sliders{display:flex;gap:16px;margin-bottom:24px;justify-content:center}.reader-slider-item{display:flex;flex-direction:column;align-items:center;gap:14px}.reader-slider{position:relative;width:80px;height:120px;background:#2a2a4a;border:1px solid #333355;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;cursor:pointer;transition:all .2s ease,opacity .15s ease;padding:12px 0 36px;overflow:hidden}.reader-slider:before{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--slider-fill, 0%);background:#6b6bff;transition:height .1s ease}.reader-slider.is-muted{opacity:0;pointer-events:none;transition:opacity .15s ease}.reader-slider.is-disabled{opacity:.4;filter:grayscale(1);cursor:not-allowed;pointer-events:none}.reader-slider:hover{background:linear-gradient(180deg,#335,#2a2a4a)}.slider-icon{width:24px;height:24px;margin-top:0;display:flex;align-items:center;justify-content:center;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.slider-icon svg{width:24px;height:24px;fill:none;stroke:#fff!important;stroke-width:2;color:#fff}.slider-icon svg path{stroke:#fff!important}.slider-caption{font-size:12px;color:#1a1a3a;margin-top:10px;margin-bottom:0;text-align:center;transition:opacity .15s ease}.reader-slider-root{width:100%;height:70px!important;padding:0!important;margin:0!important;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.reader-slider-root span{opacity:0}.reader-slider-root span.MuiSlider-mark{opacity:0!important}.reader-slider-rail{width:100%;height:100%;background:transparent;border-radius:12px}.reader-slider-track{width:100%;background:transparent;border-radius:12px;left:0!important;right:0!important}.reader-slider-thumb{width:18px;height:18px;background:transparent;border:none;border-radius:50%;margin-left:0;box-shadow:none;opacity:0}.reader-slider-root .MuiSlider-mark{width:6px;height:6px;margin-left:-3px;border-radius:50%;background:#f2f5ff;opacity:1!important}.reader-slider-root .MuiSlider-markActive{background:#6b6bff;opacity:1}.reader-brightness-auto{position:static;min-width:auto;padding:0;font-size:10px;color:#f2f5ff;border:none;border-radius:8px;text-transform:none;display:inline-flex;align-items:center;gap:6px;background:transparent;margin-top:0;cursor:pointer;line-height:1;height:auto;position:absolute;top:-12px;left:50%;transform:translate(-50%);z-index:2;appearance:none;box-shadow:none}.reader-brightness-auto:hover{background:transparent}.reader-brightness-radio{width:10px;height:10px;display:block}.reader-brightness-radio .radio-ring{fill:none;stroke:#f2f5ff;stroke-width:1.5}.reader-brightness-radio .radio-dot{fill:#f2f5ff;opacity:0}.reader-brightness-auto.is-checked .reader-brightness-radio .radio-dot{opacity:1}.reader-more-button{width:100%;margin-top:auto;margin-bottom:4px;padding:12px;background:transparent;color:#fff;border:none;border-radius:8px;text-transform:none;font-weight:500;display:flex;justify-content:center;align-items:center;gap:8px}.reader-more-button:hover{background:transparent}.reader-settings-actions{display:flex;gap:16px;margin-top:16px;justify-content:space-between}.reader-settings-actions.is-submenu{flex-wrap:wrap;justify-content:center;gap:40px}.reader-settings-divider{height:1px;background:#335;margin:16px 0}.reader-settings-action-item{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1}.reader-settings-actions.is-submenu .reader-settings-action-item{flex:0 0 auto}.reader-settings-action{display:flex;flex-direction:column;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:#2a2a4a;border:1px solid #333355;color:#fff;text-transform:none;font-weight:500;padding:8px;transition:all .2s ease}.reader-settings-action:hover{background:#335}.reader-settings-action.active{background:#4d4dff;color:#1a1a3a;border-color:#4d4dff}.reader-settings-action.is-disabled,.reader-font-section.is-disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.reader-font-section.is-disabled .font-nav-button{opacity:.6;cursor:not-allowed}.reader-settings-action-item.is-active .reader-settings-action{background:#4d4dff;color:#1a1a3a;border-color:#4d4dff}.reader-settings-action svg{width:28px;height:28px;display:block}.reader-settings-option-text{font-size:12px;color:inherit;text-align:center;line-height:1.2;padding:0 8px}.reader-settings-action.is-close{background:#2a2a4a;color:#fff;border:1px solid #333355}.reader-settings-action-label{font-size:12px;color:#1a1a3a;text-align:center}.reader-settings-toggles{display:flex;flex-direction:row;justify-content:center;gap:32px}.reader-settings-toggle-item{display:flex;flex-direction:column;align-items:center;gap:8px}.reader-settings-toggle-item.is-disabled{opacity:.4;pointer-events:none}.reader-settings-toggle-label{font-size:14px;color:#1a1a3a;font-weight:500}.reader-settings-toggle{position:relative;width:44px;height:24px;padding:0;border:none;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.reader-settings-toggle.is-disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.reader-settings-toggle-track{position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:14px;background:#c4c4c4;border-radius:7px;transition:background-color .2s ease}.reader-settings-toggle.active .reader-settings-toggle-track{background:#a0a0ff}.reader-settings-toggle-thumb{position:absolute;top:50%;left:2px;transform:translateY(-50%);width:20px;height:20px;background:#666;border-radius:50%;transition:left .2s ease,background-color .2s ease;box-shadow:0 2px 4px #0003}.reader-settings-toggle.active .reader-settings-toggle-thumb{left:22px;background:#4d4dff}.MuiDialog-paper{background-color:#1a1a3a;color:#fff;border:1px solid #333355}.MuiDialogTitle-root{color:#fff;border-bottom:1px solid #333355}.MuiDialogContent-root{padding:16px}.MuiListItem-button{border-radius:8px;margin:4px 0;transition:background-color .2s ease}.MuiListItem-button:hover{background-color:#2a2a4a}.reader-footer{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border-color, #e0e0e0);padding:12px 16px;z-index:105;position:fixed;bottom:0;left:0;right:0;width:100%;will-change:transform;touch-action:none;pointer-events:auto;transition:transform .3s ease}.reader-footer .footer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;position:relative;z-index:106;touch-action:none}.reader-footer .footer-bottom{display:flex;align-items:center;gap:12px}.reader-footer .footer-button{background:#fffc;border:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #333333);width:44px;height:44px;min-width:44px;min-height:44px}.reader-footer .footer-button:hover{background:#fff}.reader-footer .footer-button:disabled{opacity:.5;cursor:not-allowed}.reader-footer .page-info-container{display:flex;align-items:center;justify-content:center;gap:8px;position:absolute;left:50%;transform:translate(-50%)}.reader-footer .page-info-wrapper{display:flex;align-items:center;gap:4px}.reader-footer .page-info-wrapper .MuiTextField-root{margin:0;width:auto}.reader-footer .page-info-wrapper .MuiInput-root{font-size:14px;color:#1b1b1b}.reader-footer .page-info-wrapper .MuiInputBase-input{color:#1b1b1b}.reader-footer .page-info-separator{color:#1b1b1b;font-weight:500;margin:0;font-size:14px}.reader-footer .page-nav-button{color:var(--text-primary, #333333);padding:4px;min-width:32px;min-height:32px}.reader-footer .page-nav-button:hover{background-color:#0000000a}.reader-footer .page-nav-button:disabled{opacity:.3;cursor:not-allowed}.reader-footer .progress-bar{flex:1;height:6px;border-radius:3px}.reader-footer .progress-bar .MuiLinearProgress-bar{background-color:var(--primary-color, #2196f3);border-radius:3px}.reader-footer .page-info-wrapper .page-input-field{text-align:center;padding:4px 8px;font-size:14px;width:40px}.reader-footer .page-info-wrapper .MuiInput-underline:before{border-bottom:1px solid rgba(0,0,0,.42)}.reader-footer .page-info-wrapper .MuiInput-underline:hover:before{border-bottom:2px solid rgba(0,0,0,.87)}.reader-footer .page-info-wrapper .MuiInput-underline:after{border-bottom:2px solid var(--primary-color, #2196f3)}[data-theme=dark] .reader-footer{background:#121212f2;border-color:var(--border-color, #404040)}[data-theme=dark] .reader-footer .footer-button{background:#1e1e1ecc;border-color:var(--border-color, #404040);color:var(--text-primary, #ffffff)}[data-theme=dark] .reader-footer .footer-button:hover{background:#1e1e1e}[data-theme=dark] .reader-footer .page-info-wrapper .MuiInput-root,[data-theme=dark] .reader-footer .page-info-wrapper .MuiInputBase-input{color:var(--text-primary, #ffffff)}[data-theme=dark] .reader-footer .page-info-separator{color:var(--text-secondary, #999999)}[data-theme=dark] .reader-footer .page-nav-button{color:var(--text-primary, #ffffff)}[data-theme=dark] .reader-footer .page-nav-button:hover{background-color:#ffffff14}@media(max-width:768px){.reader-footer{padding:8px 12px}}@media(max-width:480px){.reader-footer{padding:6px 8px}.reader-footer .footer-button{width:36px;height:36px;min-width:36px;min-height:36px}.reader-footer .page-info{font-size:11px}}.reader-header{display:flex;justify-content:space-between;align-items:center;padding:calc(4px + var(--reader-safe-top, 0px)) 10px 4px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color, #e0e0e0);z-index:100;position:fixed;top:0;left:0;right:0;width:100%;will-change:transform;touch-action:none;pointer-events:auto;gap:6px;transition:transform .3s ease}.reader-header .header-button{pointer-events:auto;touch-action:manipulation;background:#fffc;border:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #333333);min-width:36px;min-height:36px;padding:4px}.reader-header .header-button:hover{background:#fff}.reader-header .book-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:0;padding:4px 0;line-height:1.2}.reader-header .book-title{font-weight:600;color:#1b1b1b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;margin:0;padding:0}.reader-header .book-author{color:#1b1b1b;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;padding:0}.reader-header .header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.reader-header .header-zoom-box{display:flex;align-items:center;gap:8px}.reader-header .header-search-btn,.reader-header .header-zoom-icon-btn{color:inherit;padding:8px;min-width:44px;min-height:44px}.reader-header .header-zoom-scale{min-width:55px;text-align:center;font-weight:500;font-size:14px}[data-theme=dark] .reader-header{background:#1e1e1ef2;border-color:var(--border-color, #404040)}[data-theme=dark] .reader-header .header-button{background:#1e1e1ecc;border-color:var(--border-color, #404040);color:var(--text-primary, #ffffff)}[data-theme=dark] .reader-header .header-button:hover{background:#1e1e1e}[data-theme=dark] .reader-header .book-title{color:var(--text-primary, #ffffff)}[data-theme=dark] .reader-header .book-author{color:var(--text-secondary, #e0e0e0)}@media(max-width:768px){.reader-header{padding:1px 6px;min-height:30px}.reader-header .book-info{line-height:1.05}.reader-header .book-title{font-size:12px;line-height:1}.reader-header .book-author{font-size:9px;line-height:1}.reader-header .header-button{min-width:26px;min-height:26px;padding:2px}.reader-header .header-button.MuiIconButton-root{width:28px;height:28px;min-width:28px;min-height:28px;padding:2px}}@media(max-width:480px){.reader-header{padding:0 4px;min-height:26px}.reader-header .book-info{line-height:.98}.reader-header .book-title{font-size:11px;line-height:1}.reader-header .book-author{font-size:8px;line-height:1}.reader-header .header-button{min-width:22px;min-height:22px;padding:2px}.reader-header .header-button.MuiIconButton-root{width:24px;height:24px;min-width:24px;min-height:24px;padding:2px}}.book-reader{display:flex;flex-direction:column;height:100vh;background:var(--bg-primary, #ffffff);position:relative;overflow:hidden;--reader-safe-top: env(safe-area-inset-top, 0px);--reader-header-height: calc(48px + var(--reader-safe-top));--reader-footer-height: 64px;padding-top:var(--reader-safe-top);padding-bottom:0}.book-reader>.epub-reader-container,.book-reader>.pdf-reader-container,.book-reader>.mobi-reader-container,.book-reader>.djvu-reader-container,.book-reader>.doc-reader-container,.book-reader>.html-reader-container,.book-reader>.txt-reader-container,.book-reader>.rtf-reader-container,.book-reader>.reader-content{margin-top:0;margin-bottom:0;height:100%}.book-reader .reader-content{padding:var(--reader-page-margins, 20px)!important;margin-top:var(--reader-header-height);margin-bottom:var(--reader-footer-height);height:calc(100% - var(--reader-header-height) - var(--reader-footer-height));box-sizing:border-box}.book-reader .pdf-reader-container,.book-reader .epub-reader-container,.book-reader .mobi-reader-container,.book-reader .djvu-reader-container,.book-reader .doc-reader-container,.book-reader .html-reader-container,.book-reader .txt-reader-container,.book-reader .rtf-reader-container{padding-top:var(--reader-header-height);padding-bottom:var(--reader-footer-height);padding-left:var(--reader-page-margins, 20px);padding-right:var(--reader-page-margins, 20px);margin:0;height:100%;box-sizing:border-box;filter:brightness(var(--reader-brightness, 1))}.book-reader .pdf-reader-container{padding-top:max(0px,calc(var(--reader-header-height) - 14px));padding-bottom:max(0px,calc(var(--reader-footer-height) - 20px));padding-left:max(0px,calc(var(--reader-page-margins, 20px) - 8px));padding-right:max(0px,calc(var(--reader-page-margins, 20px) - 8px))}.book-reader .djvu-reader-container{padding:0;margin-top:0;margin-bottom:0}.book-reader.fullscreen{position:fixed;inset:0;z-index:9999;background:var(--bg-primary, #ffffff)}.reader-dev-filename{position:fixed;top:var(--reader-header-height);right:0;padding:2px 10px 4px;font-size:11px;color:var(--text-secondary, #666);background:#ffffffe6;border-bottom-left-radius:6px;z-index:99;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}[data-theme=dark] .reader-dev-filename{background:#000000b3;color:var(--text-secondary, #aaa)}.reader-header{display:flex;justify-content:space-between;align-items:center;padding:calc(4px + var(--reader-safe-top)) 10px 4px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color, #e0e0e0);z-index:100;position:fixed;top:0;left:0;right:0;width:100%;will-change:transform;touch-action:none;pointer-events:auto;gap:6px}.reader-header .header-button{pointer-events:auto;touch-action:manipulation}.header-right{display:flex;align-items:center;gap:6px}.header-button{background:#fffc;border:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #333333);min-width:36px;min-height:36px;padding:4px}.header-button:hover{background:#fff}[data-theme=dark] .header-button:hover{background:#1e1e1e}.book-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:0;padding:0;line-height:1.2}.book-reader .book-info{padding:4px 0!important;gap:0!important;min-height:auto!important}.book-reader .book-info span{color:#1b1b1b}.book-title{font-weight:600;color:#1b1b1b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;margin:0;padding:0}.book-author{color:#1b1b1b;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;padding:0}.reader-content{flex:1;overflow-y:auto;padding:var(--reader-page-margins, 20px);line-height:var(--reader-line-height, 1.8);color:var(--text-primary, #333333);scroll-behavior:smooth;background:var(--bg-primary, #ffffff);font-family:var(--reader-font-family, "Roboto");font-size:var(--reader-font-size, 16px);filter:brightness(var(--reader-brightness, 1));-webkit-hyphens:var(--reader-hyphens, auto);hyphens:var(--reader-hyphens, auto)}.reader-content::-webkit-scrollbar{width:6px}.reader-content::-webkit-scrollbar-track{background:var(--bg-tertiary, #f0f0f0)}.reader-content::-webkit-scrollbar-thumb{background:var(--border-dark, #cccccc);border-radius:3px}.reader-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary, #999999)}.book-text{max-width:800px;margin:0 auto;text-align:justify;word-break:break-word}.reader-footer{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border-color, #e0e0e0);padding:12px 16px;z-index:105;position:fixed;bottom:0;left:0;right:0;width:100%;will-change:transform;touch-action:none;pointer-events:auto}.reader-footer .footer-button,.reader-footer .page-nav-button{pointer-events:auto;touch-action:manipulation}[data-theme=dark] .reader-footer{background:#121212f2}.footer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;position:relative;z-index:106;touch-action:none}.footer-top .page-info{position:absolute;left:50%;transform:translate(-50%)}.footer-bottom{display:flex;align-items:center;gap:12px}.footer-button{background:#fffc;border:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #333333);width:44px;height:44px;min-width:44px;min-height:44px}[data-theme=dark] .footer-button{background:#1e1e1ecc;border-color:var(--border-color, #404040);color:var(--text-primary, #ffffff)}.footer-button:hover{background:#fff}[data-theme=dark] .footer-button:hover{background:#1e1e1e}.footer-button:disabled{opacity:.5;cursor:not-allowed}.page-info{color:var(--text-secondary, #666666);font-weight:500}.page-info-container{display:flex;align-items:center;justify-content:center;gap:8px;position:absolute;left:50%;transform:translate(-50%)}.page-info-wrapper{display:flex;align-items:center;gap:4px}.page-info-wrapper .MuiTextField-root{margin:0;width:auto}.page-info-wrapper .MuiInput-root{font-size:14px;color:#1b1b1b}[data-theme=dark] .page-info-wrapper .MuiInput-root{color:var(--text-primary, #ffffff)}.page-info-wrapper .MuiInputBase-input{color:#1b1b1b}[data-theme=dark] .page-info-wrapper .MuiInputBase-input{color:#fff}.page-info-separator{color:#1b1b1b;font-weight:500;margin:0;font-size:14px}.page-nav-button{color:var(--text-primary, #333333);padding:4px;min-width:32px;min-height:32px}.page-nav-button:hover{background-color:#0000000a}[data-theme=dark] .page-nav-button:hover{background-color:#ffffff14}.page-nav-button:disabled{opacity:.3;cursor:not-allowed}[data-theme=dark] .page-nav-button{color:var(--text-primary, #ffffff)}[data-theme=dark] .page-info-separator{color:var(--text-secondary, #999999)}.progress-bar{flex:1;height:6px;border-radius:3px}.progress-bar .MuiLinearProgress-bar{background-color:var(--primary-color, #2196f3);border-radius:3px}.footer-actions{display:flex;gap:8px}.search-result{padding:12px;border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-medium, 8px);margin-bottom:8px;background:var(--bg-card, #f8f9fa);color:var(--text-primary, #333333)}.search-result:hover{background:var(--bg-tertiary, #e9ecef);cursor:pointer}@media(max-width:768px){.reader-header{padding:1px 6px;min-height:30px}.reader-content{padding:16px}.reader-footer{padding:8px 12px}.book-info{line-height:1.05;margin-top:10px;gap:0}.book-title{font-size:12px;line-height:1}.book-author{font-size:9px;line-height:1;margin-top:0}.header-button{min-width:26px;min-height:26px;padding:2px}.reader-header .header-button.MuiIconButton-root{width:28px;height:28px;min-width:28px;min-height:28px;padding:2px}.book-reader .epub-reader-container,.book-reader .pdf-reader-container,.book-reader .mobi-reader-container,.book-reader .djvu-reader-container,.book-reader .doc-reader-container,.book-reader .html-reader-container,.book-reader .txt-reader-container,.book-reader .rtf-reader-container,.book-reader .reader-content{--reader-header-height: 32px;--reader-footer-height: 44px;margin-top:var(--reader-header-height);margin-bottom:var(--reader-footer-height);height:calc(100% - var(--reader-header-height) - var(--reader-footer-height))}}@media(max-width:480px){.reader-header{padding:0 4px;min-height:26px}.header-left{gap:8px}.reader-content{padding:12px;font-size:14px;line-height:1.6}.reader-footer{padding:6px 8px}.footer-actions{gap:4px}.footer-button{width:36px;height:36px}.book-info{line-height:.98;gap:0}.book-title{font-size:11px;line-height:1}.book-author{font-size:8px;line-height:1;margin-top:0}.page-info{font-size:11px}.header-button{min-width:22px;min-height:22px;padding:2px}.reader-header .header-button.MuiIconButton-root{width:24px;height:24px;min-width:24px;min-height:24px;padding:2px}.book-reader .epub-reader-container,.book-reader .pdf-reader-container,.book-reader .mobi-reader-container,.book-reader .djvu-reader-container,.book-reader .doc-reader-container,.book-reader .html-reader-container,.book-reader .txt-reader-container,.book-reader .rtf-reader-container,.book-reader .reader-content{--reader-header-height: 28px;--reader-footer-height: 40px;margin-top:var(--reader-header-height);margin-bottom:var(--reader-footer-height);height:calc(100% - var(--reader-header-height) - var(--reader-footer-height))}.book-reader .djvu-reader-container{margin-top:0;margin-bottom:0}}[data-theme=dark] .book-reader,[data-theme=dark] .book-reader.fullscreen{background:var(--bg-primary, #121212)}[data-theme=dark] .reader-header,[data-theme=dark] .reader-footer{background:#1e1e1ef2;border-color:var(--border-color, #404040);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-theme=dark] .header-button,[data-theme=dark] .footer-button{background:#1e1e1ecc;border-color:var(--border-color, #404040);color:var(--text-primary, #ffffff)}[data-theme=dark] .header-button:hover,[data-theme=dark] .footer-button:hover{background:#1e1e1e}[data-theme=dark] .book-title{color:var(--text-primary, #ffffff)}[data-theme=dark] .book-author,[data-theme=dark] .page-info{color:var(--text-secondary, #e0e0e0)}[data-theme=dark] .reader-content{background:var(--bg-primary, #121212);color:var(--text-primary, #ffffff)}[data-theme=dark] .reader-content::-webkit-scrollbar-track{background:var(--bg-tertiary, #2a2a2a)}[data-theme=dark] .reader-content::-webkit-scrollbar-thumb{background:var(--border-dark, #555555)}[data-theme=dark] .reader-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary, #b3b3b3)}[data-theme=dark] .search-result{background:var(--bg-card, #1e1e1e);border-color:var(--border-color, #404040);color:var(--text-primary, #ffffff)}[data-theme=dark] .search-result:hover{background:var(--bg-tertiary, #2a2a2a)}::selection{background:#2196f34d}::-moz-selection{background:#2196f34d}.reader-header,.reader-footer{transition:transform .3s ease}.book-reader.fullscreen .reader-header.hidden,.book-reader.fullscreen .reader-footer.hidden{transform:translateY(-100%)}.contents-dialog .MuiDialog-paper{z-index:1;background:#fff}[data-theme=dark] .contents-dialog .MuiDialog-paper{background:#121212}.contents-dialog .MuiDialogTitle-root,.contents-dialog-title{color:#1b1b1b;font-size:1.25rem;font-weight:600;padding:16px 24px}[data-theme=dark] .contents-dialog .MuiDialogTitle-root,[data-theme=dark] .contents-dialog-title{color:#f5f5f5}.contents-dialog .MuiDialogContent-root{padding-bottom:100px}.contents-dialog .toc-item{padding-left:var(--toc-padding, 16px)}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.header-zoom-box{display:flex;align-items:center;gap:8px}.header-zoom-icon-btn{color:inherit;padding:8px;min-width:44px;min-height:44px}.header-zoom-scale{min-width:55px;text-align:center;font-weight:500;font-size:14px}.header-search-btn{color:inherit;padding:8px;min-width:44px;min-height:44px}.reader-content.reader-loading{display:flex;justify-content:center;align-items:center;min-height:50vh}.reader-content.reader-file-not-available{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:50vh;padding:20px;text-align:center}.reader-file-not-available-title{margin-bottom:16px}.reader-content.reader-error{display:flex;justify-content:center;align-items:center;min-height:50vh}.page-info-wrapper .page-input-field{text-align:center;padding:4px 8px;font-size:14px;width:40px}.page-info-wrapper .MuiInput-underline:before{border-bottom:1px solid rgba(0,0,0,.42)}.page-info-wrapper .MuiInput-underline:hover:before{border-bottom:2px solid rgba(0,0,0,.87)}.page-info-wrapper .MuiInput-underline:after{border-bottom:2px solid var(--primary-color, #2196f3)}.search-dialog .MuiDialogTitle-root{position:relative}.search-dialog .search-dialog-close{position:absolute;right:8px;top:8px}.search-dialog .search-dialog-input{margin-bottom:16px}.search-loading,.search-no-results,.search-results-count{padding:16px 0;text-align:center}.search-result mark{background-color:#ffeb3b;color:inherit;padding:0 2px;border-radius:2px}[data-theme=dark] .search-result mark{background-color:#ffc107;color:#000}.quote-dialog .quote-dialog-text{margin-bottom:16px;font-style:italic}.lazy-image-container{position:relative;width:100%;height:100%;overflow:hidden}.lazy-image{width:100%;height:100%;object-fit:cover;transition:opacity .3s ease;opacity:0}.lazy-image.loaded{opacity:1}.lazy-image.loading{opacity:0}.image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--bg-tertiary);background-image:linear-gradient(45deg,var(--border-light) 25%,transparent 25%),linear-gradient(-45deg,var(--border-light) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--border-light) 75%),linear-gradient(-45deg,transparent 75%,var(--border-light) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px;animation:shimmer 2s infinite linear;display:flex;align-items:center;justify-content:center}.placeholder-content{text-align:center}.placeholder-icon{font-size:2rem;opacity:.5;color:var(--text-tertiary);animation:pulse 1.5s ease-in-out infinite alternate}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes pulse{0%{opacity:.3}to{opacity:.7}}.book-card-wrapper{display:flex;flex-direction:column;width:100%;height:100%;min-height:400px;background-color:var(--bg-card, #ffffff);border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;overflow:hidden}.book-card-wrapper:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-4px)}.book-card{display:flex;flex-direction:column;flex:1;text-decoration:none;color:inherit;overflow:hidden}.book-cover{position:relative;width:100%;aspect-ratio:2 / 3;overflow:hidden;background-color:var(--bg-tertiary, #f5f5f5);display:flex;align-items:center;justify-content:center;flex-shrink:0}.book-cover-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.book-card-wrapper:hover .book-cover-image{transform:scale(1.05)}.book-info{padding:12px;display:flex;flex-direction:column;gap:8px;flex:1;min-height:80px}.book-title{font-size:14px;font-weight:600;line-height:1.4;margin:0;color:var(--text-primary, #333333);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.8em;max-height:2.8em}.book-meta{display:flex;flex-direction:column;gap:6px}.book-meta-row{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.4;color:var(--text-secondary, #666666)}.book-meta-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #666666);flex-shrink:0}.book-meta-icon svg{width:14px;height:14px;fill:currentColor}.book-meta-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-actions{display:flex;justify-content:space-around;align-items:center;padding:8px 12px;border-top:1px solid var(--border-color, #e0e0e0);background-color:var(--bg-secondary, #fafafa);gap:4px}.book-actions .MuiIconButton-root{border:none!important;background:transparent!important;box-shadow:none!important;outline:none!important;height:40px;width:40px;padding:8px;display:flex;align-items:center;justify-content:center}.book-actions .MuiIconButton-root:before,.book-actions .MuiIconButton-root:after{display:none!important;content:none!important}.book-actions .MuiIconButton-root:hover{background-color:transparent!important;box-shadow:none!important}.book-actions .MuiIconButton-root:hover:before,.book-actions .MuiIconButton-root:hover:after{display:none!important;content:none!important}.book-actions .MuiIconButton-root:focus{outline:none!important;box-shadow:none!important}.book-actions .MuiIconButton-root:focus-visible{outline:none!important;box-shadow:none!important}.action-button{flex:1;min-width:0;padding:8px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #666666);transition:color .2s ease;border-radius:8px;border:none!important;background:transparent!important;outline:none!important;box-shadow:none!important}[data-theme=dark] .action-button{color:var(--text-secondary, #b3b3b3)}.action-button:before,.action-button:after{display:none!important}.action-button:hover{color:var(--primary-color, #1976d2);background-color:transparent!important;box-shadow:none!important}[data-theme=dark] .action-button:hover{color:var(--primary-color, #64b5f6)}[data-theme=dark] .book-actions .MuiIconButton-root,[data-theme=dark] .book-actions .MuiSvgIcon-root,[data-theme=dark] .book-actions .action-button,[data-theme=dark] .book-actions .action-button svg{color:var(--text-secondary, #b3b3b3)!important}[data-theme=dark] .book-actions .add-button,[data-theme=dark] .book-actions .add-button svg{color:var(--primary-color, #64b5f6)!important}[data-theme=dark] .book-actions .read-button,[data-theme=dark] .book-actions .read-button svg{color:#81c784!important}[data-theme=dark] .book-actions .action-button:hover,[data-theme=dark] .book-actions .action-button:hover svg{color:var(--primary-color, #64b5f6)!important}.action-button:hover:before,.action-button:hover:after{display:none!important}.action-button:focus{outline:none!important;box-shadow:none!important}.action-button:focus-visible{outline:none!important;box-shadow:none!important}.favorite-button{background:transparent!important;border:none!important;padding:0!important}.favorite-button .MuiSvgIcon-root{color:var(--text-primary, #333333)!important;transition:color .3s ease}.favorite-button:hover .MuiSvgIcon-root,.favorite-button.active .MuiSvgIcon-root{color:#f44336!important}.favorite-button.active:hover .MuiSvgIcon-root{color:var(--text-primary, #333333)!important}[data-theme=dark] .favorite-button .MuiSvgIcon-root{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .favorite-button:hover .MuiSvgIcon-root,[data-theme=dark] .favorite-button.active .MuiSvgIcon-root{color:#f44336!important}[data-theme=dark] .favorite-button.active:hover .MuiSvgIcon-root{color:var(--text-primary, #ffffff)!important}.favorite-button:hover{background-color:transparent!important;box-shadow:none!important}.favorite-button:hover:before,.favorite-button:hover:after{display:none!important}.add-button{color:var(--primary-color, #1976d2)}.add-button:hover{color:var(--primary-color, #1976d2);background-color:transparent!important;box-shadow:none!important}.add-button:hover:before,.add-button:hover:after{display:none!important}.read-button{color:var(--success-color, #4caf50)}.read-button:hover{color:var(--success-color, #4caf50);background-color:transparent!important;box-shadow:none!important}.read-button:hover:before,.read-button:hover:after{display:none!important}@media(max-width:600px){.book-card-wrapper{min-height:380px}.book-title{font-size:13px}.book-meta-text{font-size:11px}.action-button{padding:6px;height:36px}.book-actions .MuiIconButton-root{height:36px;width:36px;padding:6px}}.search-bar{width:100%;margin-bottom:var(--spacing-xl)}.search-input{background-color:var(--bg-primary);border-radius:var(--radius-large);box-shadow:var(--shadow-light)}.search-input .MuiOutlinedInput-root{border-radius:var(--radius-large);background-color:var(--bg-primary)}.search-input .MuiOutlinedInput-notchedOutline{border:1px solid var(--border-color)}.search-input .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color)}.search-input .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color);border-width:2px}.search-input .MuiInputBase-input{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-md);color:var(--text-primary)}.search-input .MuiInputAdornment-root{color:var(--text-secondary)}.genres-container{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);overflow-x:auto;padding-bottom:var(--spacing-sm)}.genres-container.custom-scrollbar{scrollbar-width:thin;scrollbar-color:var(--border-dark) var(--bg-tertiary)}.genres-container.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.genres-container.custom-scrollbar::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:var(--radius-small)}.genres-container.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:var(--radius-small)}.genres-container.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.genre-chip{flex-shrink:0;transition:all .3s ease;border:1px solid var(--border-color)!important;color:var(--text-primary)!important;background-color:var(--bg-primary)!important}.genre-chip:hover{background-color:var(--bg-tertiary)!important;border-color:var(--primary-color)!important}.genre-chip.active{background-color:var(--primary-color)!important;color:#fff!important;border-color:var(--primary-color)!important}.genre-chip-child{font-size:.875rem!important;opacity:.9}.genre-chip-child:hover,.genre-chip-child.active{opacity:1}.genre-chip-parent{min-width:100%;flex-basis:100%}.page-content .section-title,.page-content .section-title.MuiTypography-h6,.page-content .MuiTypography-h6.section-title,.page-content h6.section-title,.section .section-title,.section .MuiTypography-h6{color:var(--text-primary)!important;text-align:center}.upload-fab{position:fixed;bottom:calc(var(--bottom-nav-height) + var(--spacing-xl));right:var(--spacing-xl);z-index:var(--z-fixed);background-color:var(--primary-color);box-shadow:var(--shadow-medium);width:var(--fab-size);height:var(--fab-size);border-radius:50%;border:none;color:#fff;cursor:pointer;transition:all .3s ease}.upload-fab:hover{background-color:var(--primary-dark);box-shadow:var(--shadow-heavy);transform:translateY(-2px)}.upload-fab:active{transform:translateY(0)}[data-theme=dark] .MuiDialog-root .MuiDialogTitle-root,[data-theme=dark] .MuiDialog-root .MuiDialogTitle-root .MuiTypography-root,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root,[data-theme=dark] .MuiDialog-root .MuiDialogContent-root .MuiTypography-root{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .MuiDialog-root .MuiDialogTitle-root{background-color:var(--bg-card, #1e1e1e);border-bottom:1px solid var(--border-color, #404040)}[data-theme=dark] .MuiDialog-root .MuiDialogContent-root{background-color:var(--bg-card, #1e1e1e);color:var(--text-primary, #ffffff)}.bookshelf{background-color:var(--bg-card);border-radius:var(--radius-large);box-shadow:var(--shadow-light);margin-bottom:var(--spacing-lg);overflow:hidden}.bookshelf-header{padding:var(--spacing-lg);cursor:pointer;transition:background-color .3s ease;border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between}.bookshelf-header:hover{background-color:var(--bg-tertiary)}.shelf-info{display:flex;align-items:center;gap:var(--spacing-md);flex:1}.shelf-icon{display:flex;align-items:center;justify-content:center;color:var(--text-primary, #333333);flex-shrink:0}.shelf-icon .MuiSvgIcon-root{color:var(--text-primary, #333333)!important;font-size:24px}[data-theme=dark] .shelf-icon{color:var(--text-primary, #ffffff)}[data-theme=dark] .shelf-icon .MuiSvgIcon-root{color:var(--text-primary, #ffffff)!important}.shelf-edit-button{color:var(--text-secondary);transition:color .2s ease}.shelf-edit-button:hover{color:var(--primary-color);background-color:transparent!important}.shelf-name{font-weight:600;color:var(--text-primary);flex:1}.shelf-count{color:var(--text-secondary);font-size:var(--font-sm)}.bookshelf-content{padding:var(--spacing-lg)}.bookshelf-content .books-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;width:100%}.bookshelf-content .book-grid-item{width:100%;min-width:0}@media(max-width:1200px){.bookshelf-content .books-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:900px){.bookshelf-content .books-grid{grid-template-columns:repeat(3,1fr);gap:12px}}@media(max-width:600px){.bookshelf-content .books-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media(max-width:400px){.bookshelf-content .books-grid{grid-template-columns:repeat(2,1fr);gap:8px}}.empty-shelf{text-align:center;color:var(--text-tertiary);font-style:italic;padding:var(--spacing-xl)}.book-upload-dialog{z-index:1300}.book-upload-dialog .MuiDialogContent-root .MuiTypography-root.MuiTypography-h6,.book-upload-dialog .MuiDialogContent-root .MuiTypography-root[class*=MuiTypography-h6],.book-upload-dialog .MuiDialogContent-root .MuiTypography-root[class*=section-title],.book-upload-dialog .MuiDialogContent-root .MuiTypography-root.section-title,.book-upload-dialog .MuiDialogContent-root .MuiTypography-root.MuiTypography-h6.section-title,.book-upload-dialog .form-section .MuiTypography-root.MuiTypography-h6,.book-upload-dialog .form-section .MuiTypography-root[class*=MuiTypography-h6],.book-upload-dialog .form-section .MuiTypography-root[class*=section-title],.book-upload-dialog .form-section .MuiTypography-root.section-title,.book-upload-dialog .form-section .MuiTypography-root.MuiTypography-h6.section-title{color:var(--text-primary, #333333)!important}.dialog-title{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #333333)!important;background-color:var(--bg-card, #ffffff)}.dialog-title,.dialog-title h2,.dialog-title h6,.dialog-title span,.dialog-title div,.dialog-title p,.dialog-title .MuiTypography-root,.dialog-title .MuiTypography-h2,.dialog-title .MuiTypography-h6,.book-upload-dialog .MuiDialogTitle-root,.book-upload-dialog .MuiDialogTitle-root h2,.book-upload-dialog .MuiDialogTitle-root h6,.book-upload-dialog .MuiDialogTitle-root span,.book-upload-dialog .MuiDialogTitle-root div,.book-upload-dialog .MuiDialogTitle-root p,.book-upload-dialog .MuiDialogTitle-root .MuiTypography-root,.book-upload-dialog .MuiDialogTitle-root *{color:var(--text-primary, #333333)!important}.dialog-title-text{color:var(--text-primary, #333333)!important;font-weight:600!important;flex:1;font-size:1.25rem;line-height:1.6}.file-format-select{margin-bottom:16px!important}.close-button{position:absolute;right:8px;top:8px}.dialog-content{padding:24px;max-height:70vh;overflow-y:auto;background:var(--bg-card, #ffffff);color:var(--text-primary, #333333)}.book-upload-dialog .MuiDialogContent-root h1,.book-upload-dialog .MuiDialogContent-root h2,.book-upload-dialog .MuiDialogContent-root h3,.book-upload-dialog .MuiDialogContent-root h4,.book-upload-dialog .MuiDialogContent-root h5,.book-upload-dialog .MuiDialogContent-root h6,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h1,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h2,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h3,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h4,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h5,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h6,.book-upload-dialog .MuiDialogContent-root .MuiTypography-root[class*=MuiTypography-h]{color:var(--text-primary, #333333)!important}.error-alert,.success-alert,.loading-progress{margin-bottom:16px}.form-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border-light, #f0f0f0)}.form-section:last-child{border-bottom:none;margin-bottom:0}.section-title,.book-upload-dialog .section-title,.book-upload-dialog .MuiDialogContent-root .section-title,.book-upload-dialog .form-section .section-title{color:var(--text-primary, #333333)!important;font-weight:600;margin-bottom:16px;font-size:16px}.book-upload-dialog .MuiDialogContent-root .MuiTypography-h6.section-title,.book-upload-dialog .form-section .MuiTypography-h6.section-title,.book-upload-dialog .MuiDialogContent-root .MuiTypography-root.section-title,.book-upload-dialog .MuiDialogContent-root .MuiTypography-root.MuiTypography-h6.section-title,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h6,.book-upload-dialog .MuiDialogContent-root .MuiTypography-root.MuiTypography-h6,.book-upload-dialog .form-section .MuiTypography-h6,.book-upload-dialog .form-section .MuiTypography-root.MuiTypography-h6,.book-upload-dialog .MuiDialogContent-root .MuiTypography-root,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h1,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h2,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h3,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h4,.book-upload-dialog .MuiDialogContent-root .MuiTypography-h5,.book-upload-dialog h1,.book-upload-dialog h2,.book-upload-dialog h3,.book-upload-dialog h4,.book-upload-dialog h5,.book-upload-dialog h6,.book-upload-dialog .MuiTypography-h1,.book-upload-dialog .MuiTypography-h2,.book-upload-dialog .MuiTypography-h3,.book-upload-dialog .MuiTypography-h4,.book-upload-dialog .MuiTypography-h5,.book-upload-dialog .MuiTypography-h6,.book-upload-dialog .MuiDialogContent-root h1,.book-upload-dialog .MuiDialogContent-root h2,.book-upload-dialog .MuiDialogContent-root h3,.book-upload-dialog .MuiDialogContent-root h4,.book-upload-dialog .MuiDialogContent-root h5,.book-upload-dialog .MuiDialogContent-root h6,.book-upload-dialog .form-section h1,.book-upload-dialog .form-section h2,.book-upload-dialog .form-section h3,.book-upload-dialog .form-section h4,.book-upload-dialog .form-section h5,.book-upload-dialog .form-section h6,.book-upload-dialog .form-section .MuiTypography-h1,.book-upload-dialog .form-section .MuiTypography-h2,.book-upload-dialog .form-section .MuiTypography-h3,.book-upload-dialog .form-section .MuiTypography-h4,.book-upload-dialog .form-section .MuiTypography-h5{color:var(--text-primary, #333333)!important}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{width:100%}.authors-container,.genres-container,.isbns-container{display:flex;flex-direction:column;gap:12px}.author-input,.genre-input,.isbn-input{display:flex;gap:8px;align-items:flex-start;width:100%}.author-field,.genre-field,.isbn-field{flex:1;width:100%}.add-author-button,.add-genre-button,.add-isbn-button{min-width:48px;height:56px;margin-top:8px}.selected-authors,.selected-genres,.selected-isbns{display:flex;flex-wrap:wrap;gap:8px;min-height:32px;padding:8px;background:var(--bg-secondary, #f8f9fa);border-radius:var(--radius-medium, 8px);border:1px solid var(--border-color, #e0e0e0)}.author-chip,.genre-chip,.isbn-chip{background:var(--primary-light, #e3f2fd);color:var(--primary-dark, #1976d2)}.author-chip .MuiChip-deleteIcon,.genre-chip .MuiChip-deleteIcon,.isbn-chip .MuiChip-deleteIcon{color:var(--primary-dark, #1976d2)}[data-theme=dark] .author-chip,[data-theme=dark] .genre-chip,[data-theme=dark] .isbn-chip{background:#2196f333;color:var(--primary-color, #2196f3)}[data-theme=dark] .author-chip .MuiChip-deleteIcon,[data-theme=dark] .genre-chip .MuiChip-deleteIcon,[data-theme=dark] .isbn-chip .MuiChip-deleteIcon{color:var(--primary-color, #2196f3)}.file-upload-area{padding:16px;margin-bottom:16px;border:2px dashed var(--border-color, #c0c0c0);border-radius:var(--radius-medium, 8px);text-align:center;transition:border-color .3s ease;background:var(--bg-secondary, #fafafa)}.file-upload-area:hover{border-color:var(--primary-color, #2196f3)}[data-theme=dark] .file-upload-area{background:var(--bg-secondary, #1e1e1e);border-color:var(--border-color, #404040)}.file-upload-button{margin-bottom:8px}.file-info{color:var(--text-secondary, #666666);font-size:12px;margin-top:8px}.dialog-actions{padding:16px 24px;border-top:1px solid var(--border-color, #e0e0e0);gap:8px;background:var(--bg-card, #ffffff)}.submit-button{background:var(--primary-color, #2196f3);color:#fff;font-weight:600;padding:10px 24px;min-height:44px}.submit-button:hover{background:var(--primary-dark, #1976d2)}@media(max-width:768px){.dialog-content{padding:16px}.form-row{grid-template-columns:1fr;gap:8px}.author-input,.genre-input,.isbn-input{flex-direction:column;gap:8px}.add-author-button,.add-genre-button,.add-isbn-button{align-self:stretch;height:48px;margin-top:0}.selected-authors,.selected-genres,.selected-isbns{min-height:24px;padding:6px}.file-upload-area{padding:12px}}@media(max-width:480px){.dialog-title{padding:16px 20px 12px;font-size:18px}.dialog-content{padding:12px}.section-title{font-size:15px;margin-bottom:12px}.form-section{margin-bottom:24px;padding-bottom:16px}.selected-authors,.selected-genres,.selected-isbns{gap:6px}.author-chip,.genre-chip,.isbn-chip{font-size:12px}.file-upload-button{font-size:14px;padding:8px 16px}.dialog-actions{padding:12px 16px;flex-direction:column}.submit-button{width:100%;order:-1}}[data-theme=dark] .dialog-title{border-bottom-color:var(--border-color, #404040);background-color:var(--bg-card, #1e1e1e)}[data-theme=dark] .dialog-title,[data-theme=dark] .dialog-title h2,[data-theme=dark] .dialog-title h6,[data-theme=dark] .dialog-title span,[data-theme=dark] .dialog-title div,[data-theme=dark] .dialog-title p,[data-theme=dark] .dialog-title .MuiTypography-root,[data-theme=dark] .dialog-title .MuiTypography-h2,[data-theme=dark] .dialog-title .MuiTypography-h6,[data-theme=dark] .book-upload-dialog .MuiDialogTitle-root,[data-theme=dark] .book-upload-dialog .MuiDialogTitle-root h2,[data-theme=dark] .book-upload-dialog .MuiDialogTitle-root h6,[data-theme=dark] .book-upload-dialog .MuiDialogTitle-root span,[data-theme=dark] .book-upload-dialog .MuiDialogTitle-root div,[data-theme=dark] .book-upload-dialog .MuiDialogTitle-root p,[data-theme=dark] .book-upload-dialog .MuiDialogTitle-root .MuiTypography-root{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .book-upload-dialog .MuiDialogTitle-root *{color:#fff!important}[data-theme=dark] .dialog-title-text,[data-theme=dark] .book-upload-dialog h1,[data-theme=dark] .book-upload-dialog h2,[data-theme=dark] .book-upload-dialog h3,[data-theme=dark] .book-upload-dialog h4,[data-theme=dark] .book-upload-dialog h5,[data-theme=dark] .book-upload-dialog h6,[data-theme=dark] .book-upload-dialog .MuiTypography-h1,[data-theme=dark] .book-upload-dialog .MuiTypography-h2,[data-theme=dark] .book-upload-dialog .MuiTypography-h3,[data-theme=dark] .book-upload-dialog .MuiTypography-h4,[data-theme=dark] .book-upload-dialog .MuiTypography-h5,[data-theme=dark] .book-upload-dialog .MuiTypography-h6,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root h1,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root h2,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root h3,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root h4,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root h5,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root h6,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-h1,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-h2,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-h3,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-h4,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-h5,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-h6,[data-theme=dark] .book-upload-dialog .form-section h1,[data-theme=dark] .book-upload-dialog .form-section h2,[data-theme=dark] .book-upload-dialog .form-section h3,[data-theme=dark] .book-upload-dialog .form-section h4,[data-theme=dark] .book-upload-dialog .form-section h5,[data-theme=dark] .book-upload-dialog .form-section h6,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-h1,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-h2,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-h3,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-h4,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-h5,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-h6,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-root[class*=MuiTypography-h],[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-root.MuiTypography-h6,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-root[class*=MuiTypography-h6],[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-root[class*=section-title],[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-root.section-title,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-root.MuiTypography-h6.section-title,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-root.MuiTypography-h6,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-root[class*=MuiTypography-h6],[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-root[class*=section-title],[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-root.section-title,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-root.MuiTypography-h6.section-title,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-root,[data-theme=dark] .section-title,[data-theme=dark] .book-upload-dialog .section-title,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .section-title,[data-theme=dark] .book-upload-dialog .form-section .section-title,[data-theme=dark] .book-upload-dialog .MuiDialogContent-root .MuiTypography-h6.section-title,[data-theme=dark] .book-upload-dialog .form-section .MuiTypography-h6.section-title{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .form-section{border-bottom-color:var(--border-color, #404040)}[data-theme=dark] .selected-authors,[data-theme=dark] .selected-genres,[data-theme=dark] .selected-isbns{background:var(--bg-secondary, #1e1e1e);border-color:var(--border-color, #404040)}[data-theme=dark] .file-upload-area{border-color:var(--border-color, #404040);background:var(--bg-secondary, #1e1e1e)}[data-theme=dark] .file-upload-area:hover{border-color:var(--primary-color, #2196f3)}[data-theme=dark] .file-info{color:var(--text-secondary, #b3b3b3)}[data-theme=dark] .dialog-actions{border-top-color:var(--border-color, #404040);background:var(--bg-card, #1e1e1e)}[data-theme=dark] .dialog-content{background:var(--bg-card, #1e1e1e);color:var(--text-primary, #ffffff)}[data-theme=dark] .book-upload-dialog .MuiTextField-root,[data-theme=dark] .book-upload-dialog .MuiTextField-root .MuiInputBase-root,[data-theme=dark] .book-upload-dialog .MuiTextField-root .MuiInputBase-input,[data-theme=dark] .book-upload-dialog .MuiOutlinedInput-root,[data-theme=dark] .book-upload-dialog .MuiOutlinedInput-input{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .book-upload-dialog .MuiInputLabel-root,[data-theme=dark] .book-upload-dialog .MuiInputLabel-outlined,[data-theme=dark] .book-upload-dialog .MuiFormLabel-root{color:var(--text-secondary, #b3b3b3)!important}[data-theme=dark] .book-upload-dialog .MuiInputLabel-root.Mui-focused,[data-theme=dark] .book-upload-dialog .MuiInputLabel-outlined.Mui-focused,[data-theme=dark] .book-upload-dialog .MuiFormLabel-root.Mui-focused{color:var(--primary-color, #2196f3)!important}[data-theme=dark] .book-upload-dialog .MuiOutlinedInput-notchedOutline{border-color:var(--border-color, #404040)!important}[data-theme=dark] .book-upload-dialog .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:var(--border-dark, #555555)!important}[data-theme=dark] .book-upload-dialog .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color, #2196f3)!important}[data-theme=dark] .book-upload-dialog .MuiSelect-root,[data-theme=dark] .book-upload-dialog .MuiSelect-select,[data-theme=dark] .book-upload-dialog .MuiSelect-icon,[data-theme=dark] .book-upload-dialog .MuiAutocomplete-root .MuiOutlinedInput-root,[data-theme=dark] .book-upload-dialog .MuiAutocomplete-root .MuiOutlinedInput-input{color:var(--text-primary, #ffffff)!important}[data-theme=dark] .book-upload-dialog .MuiCardContent-root{color:var(--text-primary, #ffffff)}[data-theme=dark] .book-upload-dialog .MuiTypography-root,[data-theme=dark] .book-upload-dialog .MuiTypography-body1,[data-theme=dark] .book-upload-dialog .MuiTypography-body2,[data-theme=dark] .book-upload-dialog p,[data-theme=dark] .book-upload-dialog span,[data-theme=dark] .book-upload-dialog div,[data-theme=dark] .book-upload-dialog label{color:var(--text-primary, #ffffff)!important}.reading-progress{margin-top:var(--spacing-md);padding:var(--spacing-md);background-color:var(--bg-tertiary);border-radius:var(--radius-medium)}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.progress-text{color:var(--text-secondary);font-size:var(--font-xs);font-weight:500}.progress-percentage{color:var(--primary-color);font-size:var(--font-xs);font-weight:600}.progress-bar{height:6px;border-radius:var(--radius-small);background-color:var(--border-color);margin-bottom:var(--spacing-sm)}.progress-bar .MuiLinearProgress-bar{background-color:var(--primary-color);border-radius:var(--radius-small)}.progress-pages{color:var(--text-tertiary);font-size:var(--font-xs);text-align:center;display:block}.tabs-container{margin-bottom:var(--spacing-2xl);background-color:var(--bg-card);border-radius:var(--radius-large);box-shadow:var(--shadow-light);overflow:hidden;display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-md);gap:var(--spacing-md)}.tabs{background:transparent;flex:1;min-width:0}[data-theme=dark] .tabs-container{background-color:var(--bg-card, #1e1e1e)}[data-theme=dark] .tabs .MuiTab-root,[data-theme=dark] .tabs .MuiTab-root .MuiTab-label,[data-theme=dark] .tabs .MuiTab-root span{color:var(--text-secondary, #b3b3b3)!important}[data-theme=dark] .tabs .MuiTab-root.Mui-selected,[data-theme=dark] .tabs .MuiTab-root.Mui-selected .MuiTab-label,[data-theme=dark] .tabs .MuiTab-root.Mui-selected span,[data-theme=dark] .tabs .MuiTab-root:hover,[data-theme=dark] .tabs .MuiTab-root:hover .MuiTab-label,[data-theme=dark] .tabs .MuiTab-root:hover span{color:var(--primary-color, #2196f3)!important}.add-book-button{flex-shrink:0;background-color:var(--primary-color)!important;color:#fff!important;width:40px;height:40px;min-width:40px;border-radius:50%;transition:all .3s ease;border:none!important;box-shadow:var(--shadow-light)}.add-book-button:before,.add-book-button:after{display:none!important}.add-book-button:hover{background-color:var(--primary-dark)!important;transform:scale(1.1);box-shadow:var(--shadow-medium)}.add-book-button:hover:before,.add-book-button:hover:after{display:none!important}.add-book-button:active{transform:scale(.95)}.add-book-button:focus{outline:none!important;box-shadow:var(--shadow-light)!important}.add-book-button:focus-visible{outline:none!important;box-shadow:var(--shadow-light)!important}.tabs-container .MuiIconButton-root.add-book-button{border:none!important;background:var(--primary-color)!important;box-shadow:var(--shadow-light)!important;outline:none!important}.tabs-container .MuiIconButton-root.add-book-button:before,.tabs-container .MuiIconButton-root.add-book-button:after{display:none!important;content:none!important}.tabs-container .MuiIconButton-root.add-book-button:hover{background-color:var(--primary-dark)!important;box-shadow:var(--shadow-medium)!important}.tabs-container .MuiIconButton-root.add-book-button:hover:before,.tabs-container .MuiIconButton-root.add-book-button:hover:after{display:none!important;content:none!important}.tabs-container .MuiIconButton-root.add-book-button:focus{outline:none!important;box-shadow:var(--shadow-light)!important}.tabs-container .MuiIconButton-root.add-book-button:focus-visible{outline:none!important;box-shadow:var(--shadow-light)!important}.tabs .MuiTabs-indicator{background-color:var(--primary-color);height:3px}.tab-item{min-height:48px;color:var(--text-secondary);font-weight:500;transition:none!important;transform:none!important}.tab-item.Mui-selected{color:var(--primary-color)}.tabs .MuiTab-root{transition:none!important;transform:none!important;transition-property:color!important}.tabs .MuiTab-root:hover{transform:none!important;scale:1!important;background-color:transparent!important}.tabs .MuiTab-root:hover .MuiSvgIcon-root{color:var(--primary-color);transition:color .2s ease}.tabs .MuiTab-root .MuiSvgIcon-root{transition:color .2s ease;color:inherit}.tabs .MuiTab-root.Mui-selected .MuiSvgIcon-root{color:var(--primary-color)}.tab-content{background-color:var(--bg-card);border-radius:var(--radius-large);box-shadow:var(--shadow-light);padding:var(--spacing-xl);min-height:400px}.book-item{display:flex;flex-direction:column;height:100%;gap:0}.book-item .book-card-wrapper{flex:1}.book-item .reading-progress{margin-top:8px;flex-shrink:0}.books-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:var(--spacing-lg);width:100%}.book-grid-item{width:100%;min-width:0}@media(max-width:1200px){.books-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:900px){.books-grid{grid-template-columns:repeat(3,1fr);gap:12px}}@media(max-width:600px){.books-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media(max-width:400px){.books-grid{grid-template-columns:repeat(2,1fr);gap:8px}}.quote-item,.impression-item{background-color:var(--bg-tertiary);border-radius:var(--radius-medium);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);border-left:4px solid var(--primary-color)}.quote-text{font-style:italic;color:var(--text-primary);line-height:1.6;margin-bottom:var(--spacing-sm)}.quote-source{color:var(--text-secondary);font-weight:500;margin-bottom:var(--spacing-xs)}.quote-date{color:var(--text-tertiary)}.impression-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.impression-book{color:var(--primary-color);font-weight:600}.impression-rating{font-size:var(--font-md)}.impression-text{color:var(--text-primary);line-height:1.6;margin-bottom:var(--spacing-sm)}.impression-date{color:var(--text-tertiary)}.impression-meta{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-sm)}.impression-stats{display:flex;align-items:center;gap:var(--spacing-md)}.impression-stats-item{display:flex;align-items:center;gap:4px;color:var(--text-secondary)}.impression-icon{color:var(--text-primary, #333333)}[data-theme=dark] .impression-icon{color:var(--text-primary, #ffffff)}.impression-stats-button{padding:0;min-width:auto;text-transform:none;display:flex;align-items:center;gap:4px;color:var(--text-secondary)}.impression-stats-button:hover{background:transparent;color:var(--primary-color)}.impression-comments{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color, #e0e0e0)}[data-theme=dark] .impression-comments{border-top-color:var(--border-color, #444444)}.impression-comment{margin-bottom:var(--spacing-md);color:var(--text-primary, #333333)}.comment-author{font-weight:600;margin-bottom:4px;color:var(--text-primary, #333333)}.comment-date{color:var(--text-tertiary)}.support-modal{width:100%;max-width:600px;margin:0 auto;background-color:var(--bg-card, #ffffff);color:var(--text-primary, #333333)}.support-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #e0e0e0);background-color:var(--bg-card, #ffffff)}.support-modal-header h2{margin:0;font-size:1.5rem;color:var(--text-primary, #333333)}.close-button{background:transparent!important;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-primary, #333333);padding:.25rem;border-radius:var(--radius-small, 4px);transition:all .2s ease;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.close-button:hover{background:var(--bg-tertiary, #f5f5f5)!important;color:var(--text-primary, #333333)}[data-theme=dark] .close-button:hover{background:var(--bg-tertiary, #2a2a2a)!important;color:var(--text-primary, #ffffff)}.support-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;color:var(--text-primary, #333333);font-size:.9rem}.message-input{width:100%;padding:.75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-medium, 8px);font-size:1rem;font-family:inherit;resize:vertical;min-height:100px;transition:border-color .2s ease;background-color:var(--bg-primary, #ffffff);color:var(--text-primary, #333333)}.message-input:focus{outline:none;border-color:var(--primary-color, #2196f3);box-shadow:0 0 0 2px #2196f31a;background-color:var(--bg-primary, #ffffff);color:var(--text-primary, #333333)}[data-theme=dark] .message-input{background-color:var(--bg-primary, #121212);color:var(--text-primary, #ffffff)}[data-theme=dark] .message-input:focus{background-color:var(--bg-primary, #121212);color:var(--text-primary, #ffffff);box-shadow:0 0 0 2px #2196f34d}.file-input{width:100%;padding:.5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-medium, 8px);font-size:.9rem;background:var(--bg-primary, #ffffff);color:var(--text-primary, #333333);cursor:pointer;transition:border-color .2s ease;min-height:44px}.file-input:hover{border-color:var(--primary-color, #2196f3);background:var(--bg-primary, #ffffff)}[data-theme=dark] .file-input{background:var(--bg-primary, #121212);color:var(--text-primary, #ffffff)}[data-theme=dark] .file-input:hover{background:var(--bg-primary, #121212)}.files-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.file-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:var(--bg-secondary, #f5f5f5);border-radius:var(--radius-small, 6px);font-size:.9rem}[data-theme=dark] .file-item{background:var(--bg-secondary, #1e1e1e)}.file-name{flex:1;color:var(--text-primary, #333333);word-break:break-all}.remove-file-button{background:transparent!important;border:none;color:var(--text-primary, #333333);cursor:pointer;padding:.25rem;border-radius:var(--radius-small, 4px);transition:all .2s ease;margin-left:.5rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.remove-file-button:hover{background:var(--bg-tertiary, #e0e0e0)!important;color:var(--text-primary, #333333)}[data-theme=dark] .remove-file-button{color:var(--text-primary, #ffffff)}[data-theme=dark] .remove-file-button:hover{background:var(--bg-tertiary, #2a2a2a)!important;color:var(--text-primary, #ffffff)}.error-message{background:#f443361a;color:#c62828;padding:.75rem;border-radius:var(--radius-medium, 8px);font-size:.9rem;border:1px solid rgba(244,67,54,.3)}[data-theme=dark] .error-message{background:#f4433633;color:#ef5350;border-color:#f4433666}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.cancel-button,.submit-button{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-medium, 8px);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:100px;min-height:44px}.cancel-button{background:var(--bg-secondary, #f5f5f5);color:var(--text-secondary, #666666);border:1px solid var(--border-color, #e0e0e0)}[data-theme=dark] .cancel-button{background:var(--bg-secondary, #1e1e1e);color:var(--text-secondary, #b3b3b3);border-color:var(--border-color, #404040)}.cancel-button:hover:not(:disabled){background:var(--bg-tertiary, #e0e0e0);color:var(--text-primary, #333333)}[data-theme=dark] .cancel-button:hover:not(:disabled){background:var(--bg-tertiary, #2a2a2a);color:var(--text-primary, #ffffff)}.submit-button{background:var(--primary-color, #2196f3);color:#fff}.submit-button:hover:not(:disabled){background:var(--primary-dark, #1976d2);transform:translateY(-1px)}.cancel-button:disabled,.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media(max-width:480px){.support-modal{max-width:100%;margin:0}.support-modal-header h2{font-size:1.3rem}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.support-modal-content{display:flex;flex-direction:column;gap:1.5rem;background-color:var(--bg-card, #ffffff);color:var(--text-primary, #333333)}.tickets-list{border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-medium, 8px);padding:1rem;background:var(--bg-card, #ffffff)}.tickets-list h3{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary, #333333)}.ticket-item{padding:.75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-small, 6px);margin-bottom:.5rem;cursor:pointer;transition:all .2s ease;background:var(--bg-card, #ffffff)}.ticket-item:hover{border-color:var(--primary-color, #2196f3);box-shadow:var(--shadow-light, 0 2px 4px rgba(0, 0, 0, .1));background:var(--bg-secondary, #f5f5f5)}[data-theme=dark] .ticket-item{background:var(--bg-card, #1e1e1e)}[data-theme=dark] .ticket-item:hover{background:var(--bg-secondary, #2a2a2a)}.ticket-item.selected{border-color:var(--primary-color, #2196f3);background:transparent!important}.ticket-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.ticket-id{font-weight:600;color:var(--primary-color, #2196f3);font-size:.9rem}.ticket-date{font-size:.8rem;color:var(--text-secondary, #666666)}.ticket-status{padding:.25rem .5rem;border-radius:var(--radius-small, 4px);font-size:.8rem;font-weight:500}.status-open{background:#ff98001a;color:#f57c00}[data-theme=dark] .status-open{background:#ff980033;color:#ffa726}.status-resolved{background:#4caf501a;color:#2e7d32}[data-theme=dark] .status-resolved{background:#4caf5033;color:#66bb6a}.ticket-preview{font-size:.9rem;color:var(--text-primary, #333333);line-height:1.4}.messages-container{border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-medium, 8px);padding:1rem;background:var(--bg-card, #ffffff);max-height:300px;overflow-y:auto}[data-theme=dark] .messages-container{background:var(--bg-card, #1e1e1e)}.messages-container h3{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary, #333333)}.messages-list{display:flex;flex-direction:column;gap:1rem}.message{padding:.75rem;border-radius:var(--radius-medium, 8px);border:1px solid var(--border-color, #e0e0e0);background:var(--bg-secondary, #f5f5f5)}[data-theme=dark] .message{background:var(--bg-secondary, #1e1e1e)}.user-message{background:transparent!important;margin-left:2rem;border-color:var(--primary-color, #2196f3)}.admin-message{background:var(--bg-secondary, #f5f5f5)!important;margin-right:2rem}[data-theme=dark] .admin-message{background:var(--bg-secondary, #1e1e1e)!important}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.message-author{font-weight:600;font-size:.9rem}.user-message .message-author{color:var(--primary-color, #1976d2)}.admin-message .message-author{color:var(--text-primary, #333333)}[data-theme=dark] .admin-message .message-author{color:var(--text-primary, #ffffff)}.message-date{font-size:.8rem;color:var(--text-secondary, #666666)}.message-content{line-height:1.4;color:var(--text-primary, #333333)}.message-files{margin-top:.5rem;display:flex;flex-direction:column;gap:.25rem}.message-files a{color:var(--primary-color, #2196f3);text-decoration:none;font-size:.9rem}.message-files a:hover{text-decoration:underline}.new-ticket-button,.create-first-ticket-button{padding:.75rem 1.5rem;border:1px solid var(--primary-color, #2196f3);border-radius:var(--radius-medium, 8px);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;background:var(--bg-card, #ffffff);color:var(--primary-color, #2196f3);min-height:44px}.new-ticket-button:hover:not(:disabled),.create-first-ticket-button:hover:not(:disabled){background:var(--primary-color, #2196f3);color:#fff}.new-ticket-button:disabled,.create-first-ticket-button:disabled{opacity:.6;cursor:not-allowed}.no-tickets{text-align:center;padding:2rem;color:var(--text-primary, #333333);background:var(--bg-card, #ffffff)}.no-tickets p{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary, #333333)}@media(max-width:480px){.support-modal,.ticket-item{padding:.5rem}.message{padding:.5rem;margin-left:0!important;margin-right:0!important}.user-message,.admin-message{margin-left:0!important;margin-right:0!important}}.profile-avatar{width:80px;height:80px;margin:0 auto var(--spacing-lg);background-color:var(--primary-color);font-size:32px;font-weight:600;color:#fff}.theme-switcher{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background-color:var(--bg-card);border-radius:var(--radius-medium);border:1px solid var(--border-color);box-shadow:var(--shadow-light)}.theme-switcher h3{margin:0 0 var(--spacing-md) 0;color:var(--text-primary);font-size:var(--font-lg);font-weight:600}.theme-options{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.theme-option{flex:1;min-width:120px}.theme-switcher .MuiFormControl-root{width:100%}.theme-switcher .MuiRadioGroup-root{gap:var(--spacing-sm)}.theme-switcher .MuiFormControlLabel-root{margin:0;padding:var(--spacing-sm);border-radius:var(--radius-medium);border:1px solid var(--border-color);background-color:var(--bg-primary);transition:all .3s ease}.theme-switcher .MuiFormControlLabel-root:hover{background-color:var(--bg-tertiary);border-color:var(--primary-color)}.theme-switcher .MuiFormControlLabel-root.Mui-checked{background-color:var(--primary-light);border-color:var(--primary-color)}.theme-switcher .MuiFormControlLabel-label{color:var(--text-primary)!important;font-weight:500;display:flex;align-items:center;gap:var(--spacing-sm)}.theme-switcher .MuiRadio-root{color:var(--text-secondary)}.theme-switcher .MuiRadio-root.Mui-checked{color:var(--primary-color)}.theme-switcher .MuiSvgIcon-root{color:var(--text-secondary)}.theme-switcher .MuiFormControlLabel-root.Mui-checked .MuiSvgIcon-root{color:var(--primary-color)}.stat-card{background-color:var(--bg-card, #ffffff)}[data-theme=dark] .stat-card,[data-theme=dark] .stat-card .MuiCard-root,[data-theme=dark] .stat-card .MuiCardContent-root{background-color:var(--bg-card, #1e1e1e)!important;color:var(--text-primary, #ffffff)!important}.stat-content{display:flex;align-items:center;padding:var(--spacing-lg)}.stat-icon{font-size:32px;margin-right:var(--spacing-lg);opacity:.8}.stat-info{flex:1}.stat-value{color:var(--text-primary);font-weight:700;margin-bottom:var(--spacing-xs)}.page-content .MuiTypography-h5,.page-content h5,.section-title.MuiTypography-h5,.MuiTypography-h5.section-title,.stat-value.MuiTypography-h5,.MuiTypography-h5.stat-value{color:var(--text-primary)!important}.stat-title{color:var(--text-secondary);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.5px}.reading-stats-card{background-color:var(--bg-card, #ffffff)}[data-theme=dark] .reading-stats-card,[data-theme=dark] .reading-stats-card .MuiCard-root,[data-theme=dark] .reading-stats-card .MuiCardContent-root{background-color:var(--bg-card, #1e1e1e)!important;color:var(--text-primary, #ffffff)!important}.reading-stat{text-align:center;padding:var(--spacing-sm)}.stat-label{color:var(--text-secondary);margin-bottom:var(--spacing-sm);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.5px}.genre-chip{background-color:var(--primary-light);color:var(--primary-dark);font-weight:500}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.achievement-card{background-color:var(--bg-card, #ffffff)}[data-theme=dark] .achievement-card,[data-theme=dark] .achievement-card .MuiCard-root,[data-theme=dark] .achievement-card .MuiCardContent-root{background-color:var(--bg-card, #1e1e1e)!important;color:var(--text-primary, #ffffff)!important}.achievement-card.unlocked{border-left:4px solid #4caf50}.achievement-card.locked{opacity:.6;border-left:4px solid var(--border-dark)}.achievement-content{display:flex;align-items:flex-start;padding:var(--spacing-lg)}.achievement-icon{font-size:32px;margin-right:var(--spacing-lg);color:var(--primary-color)}.achievement-card.locked .achievement-icon{color:var(--border-dark)}.achievement-info{flex:1}.achievement-title{color:var(--text-primary);font-weight:600;margin-bottom:var(--spacing-xs)}.achievement-description{color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.achievement-date{color:#4caf50;font-weight:500}.achievement-progress{margin-top:var(--spacing-sm)}.progress-text{color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.progress-bar{width:100%;height:4px;background-color:var(--border-color);border-radius:var(--radius-small);overflow:hidden}.progress-fill{height:100%;background-color:var(--primary-color);border-radius:var(--radius-small);transition:width .3s ease}.page-content .MuiGrid-container.MuiGrid-direction-xs-row,.page-content .MuiGrid-container[class*=MuiGrid-direction-xs-row],.page-content .MuiGrid-root.MuiGrid-container.MuiGrid-direction-xs-row,.page-content .MuiGrid-item{background-color:transparent!important}body{margin:0;background-color:var(--bg-secondary, #f5f5f5);color:var(--text-primary, #1a1a1a);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none}.cloud-settings span{color:var(--text-primary, #1a1a1a)!important;font-weight:400}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;width:100%;min-height:200px;color:var(--text-secondary, #4a4a4a);background-color:var(--bg-card, #ffffff);border-radius:var(--radius-medium, 8px)}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.7;color:var(--text-tertiary, #666666)}.empty-state h3{margin:0 0 .5rem;font-size:1.2rem;color:var(--text-primary, #1a1a1a)}.empty-state p{margin:0;font-size:.9rem;color:var(--text-secondary, #4a4a4a);max-width:300px;line-height:1.4}strong{color:var(--text-primary, #1a1a1a)!important;font-weight:700}.app{height:100vh;background:var(--bg-secondary, #f5f5f5);color:var(--text-primary, #1a1a1a);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;overflow:hidden}.app.mobile{font-size:16px}@supports (padding: max(0px)){.app{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right));padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom))}}.home-page{display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative}.home-page h1{font-size:2rem;font-weight:700;margin:0;padding:1rem 0 .5rem;color:var(--text-primary, #2c3e50);text-align:center;line-height:1.2;letter-spacing:-.02em;flex-shrink:0}@media(max-width:480px){.home-page h1{font-size:1.75rem;padding:.75rem 0 .5rem}}@media(max-width:360px){.home-page h1{font-size:1.5rem;padding:.5rem 0 .25rem}}@media(min-width:769px){.home-page h1{font-size:2.25rem;padding:1.25rem 0 .75rem}}.courses-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:.5rem;margin:.5rem 0;margin-bottom:0;scrollbar-width:none;-ms-overflow-style:none}.courses-list::-webkit-scrollbar{display:none}.pagination-container{flex-shrink:0;margin:.5rem 0 0}.back-to-home{position:sticky;bottom:0;background:var(--bg-secondary, #f5f5f5);padding:.25rem;border-top:1px solid var(--border-color, #e0e0e0);text-align:center;flex-shrink:0;z-index:10;min-height:44px;display:flex;align-items:center;justify-content:center}@media(max-width:480px){.back-to-home{padding:.125rem;min-height:40px}}@media(max-width:360px){.back-to-home{padding:.0625rem;min-height:20px}}.back-button{padding:.5rem 1rem;background:var(--primary-color, #2196f3);color:#fff;text-decoration:none;border-radius:var(--radius-medium, 8px);font-size:.9rem;font-weight:500;transition:all .3s ease;display:inline-block;min-height:44px;min-width:44px;line-height:1;border:none;cursor:pointer}.back-button:hover{background:var(--primary-dark, #1976d2);transform:translateY(-1px);box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 136, 204, .3))}.back-button:active{transform:translateY(0)}button,.button{min-height:44px;min-width:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:8px;font-size:16px;font-weight:500;transition:all .2s ease}button:active,.button:active{transform:scale(.98)}input,textarea,select{font-size:16px;border-radius:var(--radius-medium, 8px);border:1px solid var(--border-color, #e1e5e9);padding:12px 16px;background:var(--bg-primary, #ffffff);color:var(--text-primary, #333333);transition:border-color .2s ease;min-height:44px}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary-color, #0088cc);box-shadow:0 0 0 3px #0088cc1a}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:var(--bg-primary, #121212);color:var(--text-primary, #ffffff);border-color:var(--border-color, #404040)}[data-theme=dark] input:focus,[data-theme=dark] textarea:focus,[data-theme=dark] select:focus{box-shadow:0 0 0 3px #0088cc4d}.card{background:var(--bg-card, #ffffff);border-radius:var(--radius-large, 12px);box-shadow:var(--shadow-light, 0 2px 8px rgba(0, 0, 0, .1));padding:16px;margin-bottom:12px;transition:box-shadow .2s ease;color:var(--text-primary, #333333)}.card:hover{box-shadow:var(--shadow-medium, 0 4px 16px rgba(0, 0, 0, .15))}.nav-item{padding:12px 16px;border-radius:var(--radius-medium, 8px);margin:4px 0;transition:background-color .2s ease;min-height:44px;display:flex;align-items:center}.nav-item:hover{background-color:#2196f31a}.nav-item.active{background-color:var(--primary-color, #0088cc);color:#fff}.modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}[data-theme=dark] .modal{background:#000000b3}.modal-content{background:var(--bg-card, #ffffff);border-radius:var(--radius-xl, 16px);padding:24px;max-width:90vw;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-heavy, 0 20px 40px rgba(0, 0, 0, .2));color:var(--text-primary, #333333)}[data-theme=dark] .modal-content{background:var(--bg-card, #1e1e1e);color:var(--text-primary, #ffffff)}.list-item{padding:16px;border-bottom:1px solid var(--border-color, #e0e0e0);display:flex;align-items:center;min-height:60px;color:var(--text-primary, #333333)}.list-item:last-child{border-bottom:none}.icon{width:24px;height:24px;flex-shrink:0}.icon-small{width:16px;height:16px}.icon-large{width:32px;height:32px}.avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.avatar-large{width:60px;height:60px}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:var(--radius-large, 12px);font-size:12px;font-weight:500;background:var(--primary-light, #e3f2fd);color:var(--primary-dark, #1976d2)}.badge.success{background:#4caf501a;color:#2e7d32}[data-theme=dark] .badge.success{background:#4caf5033;color:#81c784}.badge.warning{background:#ff98001a;color:#f57c00}[data-theme=dark] .badge.warning{background:#ff980033;color:#ffa726}.badge.error{background:#f443361a;color:#d32f2f}[data-theme=dark] .badge.error{background:#f4433633;color:#ef5350}[data-theme=dark] .badge{background:#2196f333;color:var(--primary-color, #64b5f6)}.loading{display:flex;align-items:center;justify-content:center;padding:20px;flex:1}.spinner{width:24px;height:24px;border:2px solid var(--bg-tertiary, #f3f3f3);border-top:2px solid var(--primary-color, #0088cc);border-radius:50%;animation:spin 1s linear infinite}[data-theme=dark] .spinner{border-color:var(--bg-tertiary, #2a2a2a);border-top-color:var(--primary-color, #2196f3)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:480px){.card{padding:12px;margin-bottom:8px}.modal-content{padding:16px}.list-item{padding:12px;min-height:50px}.courses-list{padding:.25rem;margin:.25rem 0;margin-bottom:0}.empty-state{padding:1rem;min-height:150px}.empty-icon{font-size:2.5rem}.empty-state h3{font-size:1.1rem}.empty-state p{font-size:.85rem}}@media(min-width:481px)and (max-width:768px){.card{padding:14px}.courses-list{padding:.375rem;margin:.375rem 0;margin-bottom:0}}@media(min-width:769px){.card{padding:20px}.modal-content{padding:32px}.courses-list{padding:.75rem;margin:.75rem 0;margin-bottom:0}}[data-theme=dark] .app{background:var(--bg-primary, #121212);color:var(--text-primary, #ffffff)}[data-theme=dark] .card{background:var(--bg-card, #1e1e1e);box-shadow:var(--shadow-medium, 0 2px 8px rgba(0, 0, 0, .5))}[data-theme=dark] .list-item{border-bottom-color:var(--border-color, #404040)}[data-theme=dark] .home-page h1{color:var(--text-primary, #ffffff)}[data-theme=dark] .back-to-home{background:var(--bg-primary, #121212);border-top-color:var(--border-color, #404040)}[data-theme=dark] .courses-list{background:var(--bg-primary, #121212)}[data-theme=dark] .empty-state{color:var(--text-secondary, #b3b3b3)}[data-theme=dark] .empty-state h3{color:var(--text-primary, #ffffff)}[data-theme=dark] .empty-state p{color:var(--text-secondary, #b3b3b3)}@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.icon{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media(hover:hover){.card:hover{transform:translateY(-2px)}button:hover,.button:hover{transform:translateY(-1px)}}@media(hover:none){.card:active{transform:scale(.98)}button:active,.button:active{transform:scale(.95)}}
