body{color:#333;background-color:#f5f5f5;min-height:100vh;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;line-height:1.6}.categories-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex:1;min-height:calc(100vh - 56px);position:relative;overflow:hidden auto}.categories-container{z-index:1;gap:0;max-width:1400px;min-height:calc(100vh - 56px);margin:0 auto;padding:1.5rem;display:flex;position:relative}.course-sidebar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);align-self:media;background:#fffffff2;border-radius:16px;flex-direction:column;flex-shrink:0;width:280px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden;box-shadow:0 8px 32px #0000001a}body[data-theme=dark] .course-sidebar{background:#2d3748f2;box-shadow:0 8px 32px #0000004d}.sidebar-header{background:#ffffff80;border-bottom:1px solid #00000014;justify-content:space-between;align-items:center;padding:1.25rem;display:flex}body[data-theme=dark] .sidebar-header{background:#2d374880;border-bottom-color:#ffffff1a}.sidebar-title{color:#2d3748;margin:0;font-size:1.1rem;font-weight:600}body[data-theme=dark] .sidebar-title{color:#e2e8f0}.course-list{flex:1;padding:.75rem;overflow-y:auto}.course-item{cursor:pointer;border:2px solid #0000;border-radius:12px;align-items:flex-start;gap:.75rem;margin-bottom:.5rem;padding:1rem;transition:all .2s;display:flex}.course-item:hover{background:#667eea14;transform:translate(4px)}.course-item.active{background:linear-gradient(135deg,#667eea26,#764ba226);border-color:#667eea}.course-icon{flex-shrink:0;font-size:1.5rem}.course-info{flex:1;min-width:0}.course-name{color:#2d3748;margin-bottom:.25rem;font-size:.95rem;font-weight:600;line-height:1.4}body[data-theme=dark] .course-name{color:#e2e8f0}.course-desc{color:#718096;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}body[data-theme=dark] .course-desc{color:#a0aec0}.categories-page:before{content:"";pointer-events:none;background:radial-gradient(circle at 20%,#ffffff1a 0%,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff14 0%,#0000 50%),radial-gradient(circle at 40% 20%,#ffffff0f 0%,#0000 40%);animation:20s ease-in-out infinite backgroundShift;position:absolute;inset:0}@keyframes backgroundShift{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}body[data-theme=light] .categories-page{background:linear-gradient(135deg,#f5f7fa 0%,#e8eef5 100%)}body[data-theme=light] .categories-page:before{background:radial-gradient(circle at 20%,#6c5ce714 0%,#0000 50%),radial-gradient(circle at 80% 80%,#fd79a80f 0%,#0000 50%),radial-gradient(circle at 40% 20%,#6c5ce70d 0%,#0000 40%)}.categories-main{flex:1;min-width:0;margin-left:1.5rem}.categories-container{z-index:1;align-items:flex-start;gap:0;max-width:1400px;min-height:calc(100vh - 56px);margin:0 auto;padding:1.5rem;display:flex;position:relative}.categories-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #ffffff26;border-radius:20px;align-items:center;gap:1.25rem;margin-bottom:2.5rem;padding:1.5rem 2rem;display:flex;box-shadow:0 8px 32px #0000001a}body[data-theme=light] .categories-header{background:#ffffffb3;border-color:#fffc;box-shadow:0 8px 32px #6c5ce71a}.categories-header .header-back-btn{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;transition:all .3s;display:flex;width:52px!important;height:52px!important}body[data-theme=light] .header-back-btn{color:#6c5ce7;background:#6c5ce71a}.header-back-btn:hover{background:#ffffff40;transform:scale(1.08)translate(-4px)}body[data-theme=light] .header-back-btn:hover{background:#6c5ce733;transform:scale(1.08)translate(-4px)}.categories-title-area{flex-direction:column;flex:1;justify-content:center;gap:.25rem;min-height:52px;display:flex}.categories-title{color:#fff;letter-spacing:-.5px;align-items:center;gap:.75rem;margin:0;font-size:1.75rem;font-weight:800;line-height:1;display:flex}body[data-theme=light] .categories-title{color:#2d3748}.title-icon{font-size:1.9rem;animation:3s ease-in-out infinite iconFloat}@keyframes iconFloat{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-4px)rotate(-5deg)}}.categories-subtitle{color:#ffffffa6;letter-spacing:.3px;margin:0;font-size:.9rem;font-weight:400;line-height:1.5}body[data-theme=light] .categories-subtitle{color:#2d37488c}.categories-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.category-card-empty{opacity:.7}.category-card-empty:hover{opacity:1}.category-card-inner{z-index:1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#2d3748b3;border:1.5px solid #ffffff1a;border-radius:20px;flex-direction:column;gap:.875rem;padding:1.5rem;transition:all .4s;display:flex;position:relative;box-shadow:0 4px 20px #00000026}.category-card:hover .category-card-inner{border-color:var(--cat-color);background:#2d3748cc;box-shadow:0 16px 48px #00000040}body[data-theme=light] .category-card:hover .category-card-inner{background:#fffffff2;box-shadow:0 16px 48px #6c5ce726}.category-icon-wrap{background:linear-gradient(135deg, var(--cat-color), var(--cat-glow));border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .4s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 4px 20px #0003}.category-card:hover .category-icon-wrap{transform:scale(1.12)rotate(-6deg);box-shadow:0 8px 28px #0000004d}body[data-theme=light] .category-card:hover .category-icon-wrap{box-shadow:0 8px 28px #0000001f}.category-icon{filter:drop-shadow(0 2px 4px #0003);font-size:1.75rem}.category-title{color:#fff;letter-spacing:-.3px;margin:0;font-size:1.15rem;font-weight:700;line-height:1.3}.category-description{color:#ffffff8c;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;margin:0;font-size:.8rem;line-height:1.5;display:-webkit-box;overflow:hidden}.category-meta{border-top:1px solid #ffffff1a;align-items:center;gap:.75rem;padding-top:.75rem;display:flex}body[data-theme=light] .category-meta{border-top-color:#00000014}.meta-item{flex-direction:column;gap:.15rem;display:flex}.meta-value{color:var(--cat-color);font-size:1.1rem;font-weight:700}.meta-label{color:#ffffff73;text-transform:uppercase;letter-spacing:.5px;font-size:.7rem}body[data-theme=light] .meta-label{color:#2d374873}.meta-divider{background:#ffffff26;align-self:center;width:1px;height:24px}body[data-theme=light] .meta-divider{background:#0000001a}.category-card.skeleton{pointer-events:none}.category-card.skeleton .category-card-inner{background:#ffffff0d;border-color:#ffffff0d}body[data-theme=light] .category-card.skeleton .category-card-inner{background:#00000008;border-color:#0000000d}.skeleton-icon{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a 50%,#ffffff0d 75%);border-radius:16px;width:56px;height:56px;animation:1.5s ease-in-out infinite skeleton-loading}body[data-theme=light] .skeleton-icon{background:linear-gradient(90deg,#0000000a 25%,#00000014 50%,#0000000a 75%)}.skeleton-title{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a 50%,#ffffff0d 75%);border-radius:8px;width:70%;height:20px;animation:1.5s ease-in-out .1s infinite skeleton-loading}body[data-theme=light] .skeleton-title{background:linear-gradient(90deg,#0000000a 25%,#00000014 50%,#0000000a 75%)}.skeleton-description{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a 50%,#ffffff0d 75%);border-radius:6px;height:14px;animation:1.5s ease-in-out .2s infinite skeleton-loading}body[data-theme=light] .skeleton-description{background:linear-gradient(90deg,#0000000a 25%,#00000014 50%,#0000000a 75%)}.skeleton-meta{gap:1rem;margin-top:auto;padding-top:.75rem;display:flex}.skeleton-meta-item{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a 50%,#ffffff0d 75%);border-radius:6px;width:50px;height:28px;animation:1.5s ease-in-out .3s infinite skeleton-loading}body[data-theme=light] .skeleton-meta-item{background:linear-gradient(90deg,#0000000a 25%,#00000014 50%,#0000000a 75%)}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}@media (width>=1440px){.categories-grid{grid-template-columns:repeat(4,1fr);gap:1.75rem}.categories-container{max-width:1400px;padding:2.5rem 2rem}.categories-header{margin-bottom:3rem;padding:1.75rem 2.5rem}.categories-title-area{min-height:52px}.categories-title{font-size:2rem}}@media (width<=1439px) and (width>=1024px){.categories-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}.categories-title-area{min-height:52px}}@media (width<=1023px) and (width>=768px){.categories-container{padding:1.5rem 1.25rem}.course-sidebar,.course-sidebar.collapsed{width:60px}.categories-main{margin-left:1rem}.categories-header{margin-bottom:1.75rem;padding:1.25rem 1.5rem}.categories-title-area{min-height:52px}.categories-title{font-size:1.5rem}.categories-subtitle{font-size:.875rem}.categories-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}.category-card-inner{padding:1.25rem}.category-icon-wrap{border-radius:14px;width:50px;height:50px}.category-icon{font-size:1.5rem}.category-title{font-size:1.05rem}.category-description{font-size:.75rem}}@media (width<=767px) and (width>=481px){.categories-page{-webkit-overflow-scrolling:touch;overflow-y:auto}.categories-container{flex-direction:column;min-height:auto;padding:1rem}.course-sidebar{-webkit-overflow-scrolling:touch;width:100%;max-height:200px;margin-bottom:1rem;overflow-y:auto}.course-sidebar.collapsed{width:100%;max-height:60px}.course-list{-webkit-overflow-scrolling:touch;max-height:140px;overflow-y:auto}.categories-main{width:100%;margin-left:0}.categories-header{gap:.75rem;margin-bottom:1.25rem;padding:.875rem 1rem}.categories-header .header-back-btn{flex-shrink:0;width:48px!important;height:48px!important}.categories-title-area{flex-direction:column;flex:1;justify-content:center;min-width:0;min-height:48px;display:flex}.categories-title{font-size:1.2rem}.categories-title-icon{font-size:1.4rem}.categories-subtitle{font-size:.75rem;display:none}.categories-grid{grid-template-columns:repeat(2,1fr);gap:.875rem}.category-card-inner{gap:.75rem;padding:1rem}.category-icon-wrap{border-radius:10px;width:44px;height:44px}.category-icon{font-size:1.3rem}.category-title{font-size:.9rem}.category-description{display:none}.category-meta{padding-top:.5rem}}@media (width<=480px){.categories-page{-webkit-overflow-scrolling:touch;overflow-y:auto}.categories-container{flex-direction:column;min-height:auto;padding:.75rem}.course-sidebar{-webkit-overflow-scrolling:touch;width:100%;max-height:200px;margin-bottom:.75rem;overflow-y:auto}.course-sidebar.collapsed{width:100%;max-height:60px}.course-list{-webkit-overflow-scrolling:touch;max-height:140px;overflow-y:auto}.categories-main{width:100%;margin-left:0}.categories-header{flex-direction:row;gap:.5rem;margin-bottom:1rem;padding:.75rem}.categories-header .header-back-btn{flex-shrink:0;width:44px!important;height:44px!important}.categories-title-area{flex-direction:column;flex:1;justify-content:center;min-width:0;min-height:44px;display:flex}.categories-title{font-size:1.1rem}.title-icon{font-size:1.3rem}.categories-subtitle{font-size:.75rem;display:none}.categories-grid{grid-template-columns:1fr;gap:.75rem}.category-card-inner{flex-direction:row;align-items:center;gap:.75rem;padding:.875rem}.category-icon-wrap{border-radius:10px;flex-shrink:0;width:44px;height:44px}.category-icon{font-size:1.3rem}.category-title-area-content{flex:1;min-width:0}.category-title{margin-bottom:.15rem;font-size:.95rem}.category-description{display:none}.category-meta{border-top:none;flex-direction:column;align-items:flex-start;gap:.15rem;padding-top:0}.meta-item{flex-direction:row;align-items:center;gap:.25rem}.meta-divider,.meta-label{display:none}.meta-value{font-size:.95rem}}.review-banner{z-index:10;background:linear-gradient(135deg,#ffecd2 0%,#fcb69f 100%);border-radius:14px;align-items:center;gap:.75rem;max-width:1200px;margin:.75rem auto 0;padding:.75rem 1.25rem;transition:all .3s;animation:.4s cubic-bezier(.34,1.56,.64,1) reviewBannerSlideIn;display:flex;position:relative;box-shadow:0 4px 20px #fcb69f4d}body[data-theme=dark] .review-banner{background:linear-gradient(135deg,#2d1f0a 0%,#3d2a12 100%);box-shadow:0 4px 20px #0000004d}@keyframes reviewBannerSlideIn{0%{opacity:0;transform:translateY(-12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.review-banner-label{color:#8b5e3c;white-space:nowrap;flex-shrink:0;font-size:.9rem;font-weight:600}body[data-theme=dark] .review-banner-label{color:#e8c39e}.review-banner-items{flex-wrap:wrap;flex:1;align-items:center;gap:.5rem;display:flex}.review-banner-tag{color:#8b5e3c;cursor:pointer;white-space:nowrap;background:#fff9;border:1.5px solid #8b5e3c40;border-radius:20px;padding:.25rem .75rem;font-size:.8rem;font-weight:600;transition:all .25s}body[data-theme=dark] .review-banner-tag{color:#e8c39e;background:#ffffff14;border-color:#e8c39e40}.review-banner-tag:hover{background:#fff;border-color:#e8965a;transform:translateY(-1px);box-shadow:0 4px 12px #fcb69f66}body[data-theme=dark] .review-banner-tag:hover{background:#ffffff26;border-color:#e8c39e;box-shadow:0 4px 12px #0000004d}.review-banner-more-btn{color:#8b5e3c;cursor:pointer;letter-spacing:2px;white-space:nowrap;background:0 0;border:1.5px dashed #8b5e3c4d;border-radius:20px;padding:.25rem .75rem;font-size:.8rem;font-weight:700;transition:all .2s}body[data-theme=dark] .review-banner-more-btn{color:#e8c39e;border-color:#e8c39e4d}.review-banner-more-btn:hover{background:#ffffff80;border-style:solid;border-color:#e8965a;transform:translateY(-1px)}body[data-theme=dark] .review-banner-more-btn:hover{background:#ffffff1a;border-color:#e8c39e}.review-banner.expanded{background:linear-gradient(135deg,#ffe8d6 0%,#fbd5c0 100%)}body[data-theme=dark] .review-banner.expanded{background:linear-gradient(135deg,#3a2810 0%,#4a3420 100%)}.review-banner-close{color:#8b5e3c;cursor:pointer;background:#8b5e3c26;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;transition:all .2s;display:flex}body[data-theme=dark] .review-banner-close{color:#e8c39e;background:#e8c39e26}.review-banner-close:hover{background:#8b5e3c4d;transform:scale(1.1)}body[data-theme=dark] .review-banner-close:hover{background:#e8c39e4d}@media (width<=767px){.review-banner{flex-wrap:wrap;gap:.5rem;margin:.5rem .75rem 0;padding:.625rem .875rem}.review-banner-label{width:100%;font-size:.75rem}.review-banner-items{order:2;width:100%}.review-banner-tag{padding:.2rem .5rem;font-size:.7rem}.review-banner-more-btn{order:3;margin-left:auto;padding:.2rem .6rem;font-size:.75rem}}@media (width<=900px) and (orientation:landscape) and (height<=500px){.categories-page{min-height:calc(100vh - 56px)}.categories-container{padding:1rem}.categories-header{margin-bottom:1rem;padding:.75rem 1rem}.categories-title-area{flex-direction:column;flex:1;justify-content:center;min-width:0;min-height:52px;display:flex}.categories-title{font-size:1.25rem}.categories-subtitle{display:none}.categories-grid{grid-template-columns:repeat(4,1fr);gap:.75rem}.category-card-inner{gap:.5rem;padding:.875rem}.category-icon-wrap{border-radius:10px;width:36px;height:36px}.category-icon{font-size:1.2rem}.category-title{font-size:.85rem}.category-description{display:none}.category-meta{padding-top:.5rem}}.avatar-selector-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:9999;background:#000000b3;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.avatar-selector-modal{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);border:2px solid #6c5ce74d;border-radius:24px;flex-direction:column;width:95%;max-width:900px;max-height:90vh;animation:.3s slideUp;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000080}body[data-theme=light] .avatar-selector-modal{background:linear-gradient(135deg,#fff 0%,#f8f9fa 100%);border-color:#6c5ce733;box-shadow:0 20px 60px #00000026}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.avatar-selector-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;display:flex}body[data-theme=light] .avatar-selector-header{border-bottom-color:#0000001a}.avatar-selector-header h3{color:#fff;margin:0;font-size:1.3rem;font-weight:700}body[data-theme=light] .avatar-selector-header h3{color:var(--foreground)}.close-btn{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:2rem;line-height:1;transition:all .2s;display:flex}body[data-theme=light] .close-btn{color:#00000080}.close-btn:hover{color:#fff;background:#ffffff1a}body[data-theme=light] .close-btn:hover{color:#000c;background:#0000000d}.avatar-selector-content{flex:1;padding:1.5rem;overflow-y:auto}.current-preview{background:#ffffff0d;border:2px solid #6c5ce74d;border-radius:16px;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:1rem;display:flex}body[data-theme=light] .current-preview{background:#6c5ce70d;border-color:#6c5ce733}.avatar-emoji-large{font-size:3.5rem;line-height:1;animation:.5s bounceIn}@keyframes bounceIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.current-preview span{color:#fff9;font-size:.9rem}body[data-theme=light] .current-preview span{color:#00000080}.avatar-grid{grid-template-columns:repeat(8,1fr);gap:.75rem;display:grid}.avatar-item{aspect-ratio:1;cursor:pointer;background:#ffffff0d;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative;overflow:hidden}body[data-theme=light] .avatar-item{background:#00000008}.avatar-item:hover{border-color:#6c5ce780;transform:scale(1.08);box-shadow:0 4px 15px #6c5ce74d}.avatar-item.selected{background:#6c5ce71a;border-color:#6c5ce7;box-shadow:0 4px 15px #6c5ce780}.avatar-emoji{font-size:1.85rem;line-height:1}.selected-badge{color:#fff;background:linear-gradient(135deg,#6c5ce7,#a29bfe);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.8rem;font-weight:700;animation:.3s badgePop;display:flex;position:absolute;top:4px;right:4px;box-shadow:0 2px 6px #6c5ce780}@keyframes badgePop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.avatar-selector-footer{border-top:1px solid #ffffff1a;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.75rem;display:flex}body[data-theme=light] .avatar-selector-footer{border-top-color:#0000001a}.cancel-btn,.confirm-btn{cursor:pointer;border:none;border-radius:12px;padding:.6rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.cancel-btn{color:#fffc;background:#ffffff1a}body[data-theme=light] .cancel-btn{color:#000000b3;background:#0000000d}.cancel-btn:hover{color:#fff;background:#ffffff26}body[data-theme=light] .cancel-btn:hover{color:#000000e6;background:#0000001a}.confirm-btn{color:#fff;background:linear-gradient(135deg,#6c5ce7,#a29bfe);box-shadow:0 4px 15px #6c5ce74d}.confirm-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #6c5ce766}.confirm-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=1024px){.avatar-grid{grid-template-columns:repeat(7,1fr)}}@media (width<=768px){.avatar-selector-modal{width:95%;max-height:85vh}.avatar-selector-header,.avatar-selector-footer{padding:1rem 1.25rem}.avatar-selector-content{padding:1.25rem}.avatar-grid{grid-template-columns:repeat(6,1fr);gap:.6rem}.avatar-emoji{font-size:1.75rem}.avatar-emoji-large{font-size:3rem}}@media (width<=480px){.avatar-grid{grid-template-columns:repeat(5,1fr);gap:.5rem}.avatar-emoji{font-size:1.5rem}.avatar-emoji-large{font-size:2.5rem}}.profile-page{scroll-behavior:smooth;background:#0a0a0f;flex:1;min-height:calc(100vh - 56px);padding:2rem;position:relative;overflow:hidden auto}body[data-theme=light] .profile-page{background:linear-gradient(#f0f4ff 0%,#e8ecf4 50%,#f5f7fa 100%)}.profile-bg-effects{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.profile-glow{filter:blur(80px);opacity:.3;border-radius:50%;position:absolute}.profile-glow-1{background:radial-gradient(circle,#6c5ce766 0%,#0000 70%);width:400px;height:400px;top:-100px;right:-100px}.profile-glow-2{background:radial-gradient(circle,#fd79a84d 0%,#0000 70%);width:300px;height:300px;bottom:-50px;left:-50px}.profile-container{z-index:1;flex-direction:column;gap:2rem;max-width:1200px;margin:0 auto;display:flex;position:relative}.profile-header-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:24px;align-items:center;min-height:120px;margin-bottom:1rem;padding:2rem;transition:all .3s;display:flex;position:relative}body[data-theme=light] .profile-header-section{background:#ffffffe6;border-color:#00000014;box-shadow:0 4px 20px #00000014}.profile-header-section:hover{transform:translateY(-2px);box-shadow:0 8px 40px #6c5ce733}.profile-user-info{flex:1;align-items:center;gap:1.5rem;display:flex}.profile-back-button-inline{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;transition:all .3s;display:flex;box-shadow:0 4px 15px #6c5ce766}.profile-back-button-inline svg{width:24px;height:24px}.profile-back-button-inline:hover{transform:scale(1.1);box-shadow:0 6px 20px #6c5ce799}.profile-back-button-inline:active{transform:scale(1.05)}.profile-loading,.profile-empty{color:#fff9;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-height:60vh;font-size:1.2rem;display:flex}body[data-theme=light] .profile-loading,body[data-theme=light] .profile-empty{color:#00000080}.profile-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:24px;padding:2rem;transition:all .3s}body[data-theme=light] .profile-card{background:#ffffffe6;border-color:#00000014;box-shadow:0 4px 20px #00000014}.profile-card:hover{transform:translateY(-2px);box-shadow:0 8px 40px #6c5ce733}.profile-info-card{flex-direction:column;gap:2rem;display:flex}.profile-avatar-section{align-items:center;gap:1.5rem;display:flex}.profile-avatar{border:3px solid #6c5ce74d;border-radius:50%;flex-shrink:0;width:80px;height:80px;transition:all .3s;overflow:hidden;box-shadow:0 4px 15px #6c5ce733}.profile-avatar.clickable{cursor:pointer}.profile-avatar.clickable:hover{border-color:#6c5ce799;transform:scale(1.05);box-shadow:0 6px 30px #6c5ce780}.profile-avatar img{object-fit:cover;width:100%;height:100%}.avatar-emoji-display{justify-content:center;align-items:center;width:100%;height:100%;font-size:2.5rem;line-height:1;display:flex}.avatar-placeholder{color:#fff;background:linear-gradient(135deg,#6c5ce799,#fd79a899);justify-content:center;align-items:center;width:100%;height:100%;font-size:2rem;font-weight:700;display:flex}.profile-basic-info{flex-direction:column;flex:1;gap:.5rem;display:flex}.profile-nickname{color:#fff;margin:0;font-size:1.5rem;font-weight:800}body[data-theme=light] .profile-nickname{color:var(--foreground)}.profile-username{color:#ffffff80;margin:0;font-size:.9rem}body[data-theme=light] .profile-username{color:#00000073}.profile-gender-badge{color:#fffc;background:#6c5ce733;border:1px solid #6c5ce74d;border-radius:12px;width:fit-content;padding:.25rem .75rem;font-size:.85rem;display:inline-block}body[data-theme=light] .profile-gender-badge{color:var(--primary);background:#6c5ce71a}.profile-details-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.profile-detail-item{background:#ffffff08;border:1px solid #ffffff0d;border-radius:12px;flex-direction:column;gap:.25rem;padding:1rem;display:flex}body[data-theme=light] .profile-detail-item{background:#00000005;border-color:#0000000d}.detail-label{color:#ffffff80;font-size:.85rem}body[data-theme=light] .detail-label{color:#00000073}.detail-value{color:#fff;font-size:1.1rem;font-weight:600}body[data-theme=light] .detail-value{color:var(--foreground)}.profile-stats-card{flex-direction:column;gap:1.5rem;display:flex}.stats-title{color:#fff;margin:0;font-size:1.5rem;font-weight:700}body[data-theme=light] .stats-title{color:var(--foreground)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;display:grid}.stat-box{background:#ffffff08;border:1px solid #ffffff0d;border-radius:16px;align-items:center;gap:1rem;padding:1.25rem;transition:all .3s;display:flex}body[data-theme=light] .stat-box{background:#00000005;border-color:#0000000d}.stat-box:hover{border-color:#6c5ce74d;transform:translateY(-4px);box-shadow:0 4px 20px #6c5ce726}.stat-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;font-size:2rem;display:flex}.stat-level{background:#6c5ce726}.stat-exp{background:#ffd70026}.stat-points{background:#00b89426}.stat-words{background:#fd79a826}.stat-time{background:#74b9ff26}.stat-checkin{background:#ff767526}.stat-content{flex-direction:column;flex:1;gap:.25rem;display:flex}.stat-value{color:#fff;font-size:1.75rem;font-weight:800;line-height:1}body[data-theme=light] .stat-value{color:var(--foreground)}.stat-label{color:#ffffff80;font-size:.85rem}.last-checkin-info{text-align:center;color:#fff9;border-top:1px solid #ffffff1a;padding-top:1rem;font-size:.9rem}body[data-theme=light] .last-checkin-info{color:#00000080;border-color:#00000014}.profile-actions-card{flex-direction:column;gap:1.5rem;display:flex}.actions-title{color:#fff;margin:0;font-size:1.5rem;font-weight:700}body[data-theme=light] .actions-title{color:var(--foreground)}.actions-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.action-btn{cursor:pointer;color:#fff;background:#6c5ce71a;border:2px solid #6c5ce74d;border-radius:16px;justify-content:center;align-items:center;gap:.75rem;padding:1.25rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex}body[data-theme=light] .action-btn{color:var(--foreground);background:#6c5ce70d}.action-btn:hover{border-color:var(--primary);background:#6c5ce733;transform:translateY(-2px);box-shadow:0 4px 20px #6c5ce74d}.action-icon{font-size:1.5rem}.action-text{font-family:inherit}@media (width<=768px){.profile-page{padding:1rem}.profile-container{gap:1.5rem}.profile-card{padding:1.5rem}.profile-avatar-section{text-align:center;flex-direction:column}.profile-avatar{width:100px;height:100px}.profile-nickname{font-size:1.5rem}.profile-details-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:1.5rem}.actions-grid{grid-template-columns:1fr}}@media (width<=480px){.stats-grid{grid-template-columns:1fr}.profile-avatar{width:80px;height:80px}.avatar-placeholder{font-size:2rem}}*{box-sizing:border-box;margin:0;padding:0}:root{--background:linear-gradient(135deg, #f5f7fa 0%, #e8eef5 100%);--foreground:#2d3748;--card:#fffffff2;--card-foreground:var(--foreground);--primary:#6c5ce7;--primary-light:#a29bfe;--secondary:#00b894;--accent:#fd79a8;--border:#0000000f;--shadow:0 4px 20px #00000014;--shadow-hover:0 8px 40px #0000001f;--radius:16px;--radius-lg:24px;--font-sans:"Segoe UI", system-ui, -apple-system, sans-serif}body[data-theme=dark]{--background:linear-gradient(135deg, #1a1d2e 0%, #16213e 100%);--foreground:#e8eaf6;--card:#2d3748e6;--card-foreground:#e8eaf6;--border:#ffffff14;--shadow:0 4px 20px #0000004d;--shadow-hover:0 8px 40px #0006}body{font-family:var(--font-sans);background:var(--background);color:var(--foreground);-ms-overflow-style:none;scrollbar-width:none;min-height:100vh;font-weight:500;line-height:1.6;transition:background .3s,color .3s;overflow-x:hidden}::-webkit-scrollbar{display:none}.admin-sidebar-menu::-webkit-scrollbar{display:none}.admin-sidebar-menu{-ms-overflow-style:none;scrollbar-width:none}#root{width:100%;min-height:100vh}.app{flex-direction:column;min-height:100vh;display:flex}.header{background:var(--card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow);z-index:100;justify-content:space-between;align-items:center;height:56px;padding:0 2rem;transition:all .3s;display:flex;position:sticky;top:0}.header-left,.header-right{align-items:center;gap:1rem;display:flex}.product-logo{cursor:pointer;align-items:center;gap:.75rem;transition:transform .3s;display:flex}.product-logo:hover{transform:scale(1.02)}.logo-icon{filter:drop-shadow(0 2px 8px #6c5ce74d);width:36px;height:36px}.logo-icon svg{width:100%;height:100%}.logo-text{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;background-clip:text;font-size:1.35rem;font-weight:800}.back-button{cursor:pointer;color:var(--foreground);background:0 0;border:none;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;padding:.5rem;transition:all .2s;display:flex}.back-button:hover{background:var(--primary-light);color:#fff;transform:scale(1.1)}.back-button svg{width:24px;height:24px}.theme-toggle-btn{background:var(--card);border:2px solid var(--border);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;padding:.45rem;font-size:1.15rem;transition:all .3s;display:flex}.theme-toggle-btn:hover{box-shadow:var(--shadow);border-color:var(--primary-light);transform:scale(1.05)}.language-switcher{position:relative}.lang-btn{background:var(--card);border:2px solid var(--border);cursor:pointer;color:var(--foreground);border-radius:12px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;transition:all .3s}.lang-btn:hover{box-shadow:var(--shadow);border-color:var(--primary-light);transform:scale(1.05)}.lang-menu{background:var(--card);border:2px solid var(--border);box-shadow:var(--shadow-hover);z-index:1000;border-radius:12px;min-width:120px;animation:.2s slideDown;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.lang-menu button{cursor:pointer;text-align:left;width:100%;color:var(--foreground);background:0 0;border:none;padding:.75rem 1rem;font-weight:500;transition:all .2s}.lang-menu button:hover{background:var(--primary-light);color:#fff}.user-menu-container{position:relative}.user-avatar{cursor:pointer;background:0 0;border:none;align-items:center;padding:0;transition:transform .2s;display:flex}.avatar-circle{width:34px;height:34px;box-shadow:var(--shadow);color:#fff;background:linear-gradient(135deg,#6c5ce799,#fd79a899);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:600;transition:all .3s;display:flex;overflow:hidden}.avatar-img{object-fit:cover;width:100%;height:100%}.avatar-emoji-text{justify-content:center;align-items:center;font-size:1.4rem;line-height:1;display:flex}.user-avatar:hover .avatar-circle{transform:scale(1.08);box-shadow:0 4px 18px #6c5ce759}.header-login-btn{border:2px solid var(--border);cursor:pointer;color:var(--foreground);background:0 0;border-radius:50px;align-items:center;gap:.5rem;padding:4px 14px 4px 4px;font-family:inherit;transition:all .25s;display:flex}.header-login-btn:hover{border-color:var(--primary);box-shadow:var(--shadow);background:#6c5ce70d;transform:translateY(-1px)}.header-login-btn .avatar-circle{background:linear-gradient(135deg,#6c5ce799,#fd79a899);width:28px;height:28px;font-size:.75rem}.login-text{color:var(--foreground);white-space:nowrap;font-size:.9rem;font-weight:600}.user-dropdown{background:var(--card);border:2px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-hover);z-index:1000;min-width:180px;animation:.2s slideDown;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.user-info{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;flex-direction:column;gap:.25rem;padding:1rem;display:flex}.user-name{font-size:1rem;font-weight:700}.user-phone{opacity:.9;font-size:.8rem}.user-achievements{flex-direction:column;gap:.4rem;margin-top:.5rem;display:flex}.user-achievement-item{color:#fff;cursor:default;background:#ffffff26;border-radius:6px;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.8rem;transition:all .2s;display:flex}.user-achievement-item:hover{background:#ffffff40;transform:translate(2px)}.achievement-icon{font-size:1rem;line-height:1}.achievement-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.user-menu-divider{background:var(--border);height:1px;margin:.5rem 0}.user-menu-item{cursor:pointer;width:100%;color:var(--foreground);background:0 0;border:none;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.9rem;transition:all .2s;display:flex}.user-menu-item:hover{background:var(--primary-light);color:#fff}.user-menu-item.logout:hover{background:#ff7675}.user-menu-review{flex-direction:column;display:flex}.user-menu-item.review-summary-btn{align-items:center;gap:.75rem;display:flex}.review-arrow{opacity:.5;margin-left:auto;font-size:.65rem;transition:transform .25s}.review-arrow.expanded{transform:rotate(90deg)}.review-detail-list{flex-direction:column;gap:.25rem;padding:0 .5rem .5rem 2.75rem;display:flex}.review-detail-item{color:var(--foreground);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.85rem;transition:all .2s;display:flex}.review-detail-item:hover{background:var(--primary-light);color:#fff}.review-detail-count{background:var(--primary);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.75rem;font-weight:700;display:inline-flex}.home-main{flex:1;min-height:calc(100vh - 76px);padding:2rem}.home-main.hexagon-layout{scroll-behavior:smooth;background:var(--hexagon-bg,#0a0a0f);height:calc(100vh - 56px);min-height:unset;padding:.5rem 1rem;position:relative;overflow:hidden auto}body[data-theme=light] .home-main.hexagon-layout{--hexagon-bg:#f8f9fc}.home-container{max-width:1200px;margin:0 auto}.home-container.hexagon-container{z-index:1;flex-direction:column;justify-content:flex-start;align-items:center;height:100%;display:flex;position:relative;overflow:hidden}.bg-decoration{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.bg-dark{background:radial-gradient(at 50% 0,#1a1a2e 0%,#0a0a0f 50%,#000 100%);position:absolute;inset:0}body[data-theme=light] .bg-dark{background:radial-gradient(at 50% 0,#e8eaf6 0%,#f0f4f8 50%,#fff 100%)}body[data-theme=light] .bg-hex-pattern{opacity:.3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='49' viewBox='0 0 28 49'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%236c5ce7' fill-opacity='0.08'%3E%3Cpath d='M13.99 9.25l13 7.5v15l-13 7.5L1 31.75v-15l12.99-7.5zM3 17.9v12.7l10.99 6.34 11-6.35V17.9l-11-6.34L3 17.9zM0 15l12.98-7.5V0h-2v6.35L0 12.69v2.3zm0 18.5L12.98 41v8h-2v-6.85L0 35.81v-2.3zM15 0v7.5L27.99 15H28v-2.31h-.01L17 6.35V0h-2zm0 49v-7.5L27.99 34H28v2.31h-.01L17 42.65V49h-2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.bg-hex-pattern{opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='49' viewBox='0 0 28 49'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%236c5ce7' fill-opacity='0.05'%3E%3Cpath d='M13.99 9.25l13 7.5v15l-13 7.5L1 31.75v-15l12.99-7.5zM3 17.9v12.7l10.99 6.34 11-6.35V17.9l-11-6.34L3 17.9zM0 15l12.98-7.5V0h-2v6.35L0 12.69v2.3zm0 18.5L12.98 41v8h-2v-6.85L0 35.81v-2.3zM15 0v7.5L27.99 15H28v-2.31h-.01L17 6.35V0h-2zm0 49v-7.5L27.99 34H28v2.31h-.01L17 42.65V49h-2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.bg-glow{filter:blur(80px);opacity:.3;border-radius:50%;animation:10s ease-in-out infinite glowFloat;position:absolute}.glow-1{background:#6c5ce7;width:400px;height:400px;top:-100px;left:-100px}.glow-2{background:#fd79a8;width:300px;height:300px;animation-delay:-3s;bottom:-50px;right:-50px}.glow-3{opacity:.15;background:#00b894;width:250px;height:250px;animation-delay:-6s;top:50%;left:50%;transform:translate(-50%,-50%)}body[data-theme=light] .bg-glow{opacity:.15;filter:blur(100px)}body[data-theme=light] .glow-1{background:#a29bfe}body[data-theme=light] .glow-2{background:#fdcb6e}body[data-theme=light] .glow-3{background:#55efc4}@keyframes glowFloat{0%,to{opacity:.3;transform:translate(0)scale(1)}33%{opacity:.25;transform:translate(30px,-30px)scale(1.1)}66%{opacity:.35;transform:translate(-20px,20px)scale(.95)}}.home-hero{text-align:center;margin-bottom:2rem;padding:3rem 1rem}.home-hero.compact{margin-bottom:.5rem;padding:.75rem}.hero-title{letter-spacing:-1px;margin-bottom:1rem;font-size:3.5rem;font-weight:800}.home-hero.compact .hero-title{margin-bottom:.25rem;font-size:2.5rem}.gradient-text{background:linear-gradient(135deg,#a29bfe 0%,#fd79a8 50%,#00cec9 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 20px #a29bfe80);-webkit-background-clip:text;background-clip:text}.hero-subtitle{color:#888;margin-bottom:2rem;font-size:1.25rem;font-weight:400}.home-hero.compact .hero-subtitle{color:var(--foreground);opacity:.7;margin-bottom:0;font-size:1rem}body[data-theme=light] .home-hero.compact .hero-subtitle{opacity:.6}.hexagon-scene{flex:1;justify-content:center;align-items:center;padding:.5rem;display:flex;position:relative}.hexagon-grid{flex-direction:column;align-items:center;gap:-10px;display:flex}.hex-row{gap:6px;margin-bottom:-14px;display:flex}.hex-row.offset{margin-left:42px}.hexagon-cell{cursor:pointer;width:80px;height:92px;animation:3s ease-in-out infinite hexWave;animation-delay:var(--wave-delay);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}@keyframes hexWave{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-8px)scale(1.02)}}.hexagon-shape{filter:drop-shadow(0 4px 6px #0000004d);width:100%;height:100%;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.hexagon-cell:hover .hexagon-shape,.hexagon-cell.hovered .hexagon-shape{filter:drop-shadow(0 0 20px var(--cell-glow));z-index:100;transform:scale(1.15)rotate(5deg)}.hexagon-cell.neighbor{opacity:.7;transform:scale(.9)}.hexagon-inner{clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);z-index:2;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);border:1px solid #ffffff1a;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;width:100%;height:100%;padding:1rem;transition:all .3s;display:flex;position:relative}.hexagon-cell:hover .hexagon-inner,.hexagon-cell.hovered .hexagon-inner{background:linear-gradient(135deg,#1e1e3f 0%,#1a1a4e 100%)}.hexagon-border{background:var(--cell-color);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);z-index:1;opacity:.3;transition:all .3s;position:absolute;inset:0}.hexagon-cell:hover .hexagon-border,.hexagon-cell.hovered .hexagon-border{opacity:1;filter:blur(2px)}.hexagon-glow{background:var(--cell-glow);filter:blur(20px);opacity:0;z-index:0;width:80%;height:80%;transition:opacity .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hexagon-cell:hover .hexagon-glow,.hexagon-cell.hovered .hexagon-glow{opacity:.5}.hexagon-icon{filter:drop-shadow(0 2px 4px #0000004d);z-index:3;font-size:1.75rem;line-height:1}.hexagon-title{text-align:center;color:#fff;z-index:3;text-shadow:0 1px 2px #00000080;font-size:.7rem;font-weight:700;line-height:1.2}.hexagon-count{color:#fff;z-index:3;background:#ffffff26;border:1px solid #fff3;border-radius:10px;padding:.15rem .5rem;font-size:.6rem;font-weight:600}.hexagon-stats{background:var(--stats-bg,#1a1a2ecc);border:1px solid var(--stats-border,#6c5ce74d);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;justify-content:center;align-items:center;gap:1.5rem;margin-top:.5rem;padding:.5rem 1rem;display:flex;box-shadow:0 0 20px #6c5ce726}.stat-hex-item{flex-direction:column;align-items:center;gap:.25rem;display:flex}.stat-hex-item .stat-number{background:linear-gradient(135deg,#a29bfe,#fd79a8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:800}.stat-hex-item .stat-label{color:var(--stats-label,#888);font-size:.75rem;font-weight:500}body[data-theme=light] .hexagon-stats{--stats-bg:#fffc;--stats-border:#6c5ce733;box-shadow:0 0 20px #6c5ce71a}body[data-theme=light] .stat-hex-item .stat-label{--stats-label:var(--foreground);opacity:.6}.hexagon-hint{background:var(--hint-bg,#6c5ce726);color:var(--hint-text,#a29bfe);border:1px solid var(--hint-border,#6c5ce74d);border-radius:16px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.35rem .75rem;font-size:.75rem;font-weight:500;display:flex}body[data-theme=light] .hexagon-hint{--hint-bg:#6c5ce714;--hint-text:var(--primary);--hint-border:#6c5ce733}.preview-modal{background:#1a1a2e;border:1px solid #6c5ce74d}.preview-body{background:#1a1a2e}.preview-section-title{color:#888}.preview-word{color:#fff;background:#6c5ce71a;border-color:#6c5ce74d}.preview-word.more{background:linear-gradient(135deg,#6c5ce7,#fd79a8)}.feature-item{background:#ffffff0d}.feature-text{color:#888}.series-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;padding:1rem 0;display:grid}.series-card{background:var(--card);border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow);border:2px solid var(--border);transition:all .4s cubic-bezier(.4,0,.2,1);animation:.6s backwards fadeInUp;position:relative;overflow:hidden}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.series-card:hover{box-shadow:var(--shadow-hover);border-color:var(--card-color);transform:translateY(-8px)}.series-card-bg{background:var(--card-gradient);opacity:.15;height:120px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.series-card:hover .series-card-bg{opacity:.25}.series-card-content{z-index:1;padding:2rem;position:relative}.series-icon{background:var(--card-gradient);border-radius:var(--radius);justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:1.5rem;font-size:2rem;transition:transform .3s;display:flex;box-shadow:0 4px 15px #0000001a}.series-card:hover .series-icon{transform:scale(1.1)rotate(-5deg)}.series-title{color:var(--foreground);margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.series-desc{opacity:.7;margin-bottom:1.5rem;font-size:.95rem;line-height:1.5}.series-stats{justify-content:space-between;align-items:center;display:flex}.word-count{background:var(--card-gradient);color:#fff;opacity:.9;border-radius:20px;padding:.4rem .8rem;font-size:.85rem;font-weight:600}.enter-hint{opacity:.5;font-size:.85rem;font-weight:500;transition:all .3s}.series-card:hover .enter-hint{opacity:1;color:var(--card-color);transform:translate(4px)}.series-card-glow{background:var(--card-gradient);filter:blur(60px);opacity:0;pointer-events:none;border-radius:50%;width:100px;height:100px;transition:opacity .4s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.series-card-glow.active{opacity:.3}@media (width<=768px){.circular-center-image{background:linear-gradient(135deg,#6c5ce71a,#fd79a81a);border:2.5px solid #6c5ce740;border-radius:45%;gap:.5rem;min-width:130px;min-height:160px;padding:1rem;box-shadow:0 0 30px #6c5ce733,inset 0 0 20px #6c5ce714}.circular-center-image:hover{border-color:#6c5ce766;transform:translate(-50%,-50%)scale(1.03);box-shadow:0 0 40px #6c5ce74d,inset 0 0 25px #6c5ce71f}body[data-theme=light] .circular-center-image{background:linear-gradient(135deg,#6c5ce714,#fd79a814);border-color:#6c5ce733;box-shadow:0 0 25px #6c5ce726,inset 0 0 18px #6c5ce70d}.circular-center-image .center-icon{filter:drop-shadow(0 3px 6px #6c5ce74d);order:2;font-size:2.8rem;line-height:1;animation:2.5s ease-in-out infinite centerIconFloatMobile}@keyframes centerIconFloatMobile{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.circular-center-image .center-label{color:var(--foreground);text-align:center;text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;letter-spacing:.3px;-webkit-background-clip:text;background-clip:text;order:1;max-width:150px;font-size:1.25rem;font-weight:700;overflow:hidden}.word-card{border-radius:12px;gap:.2rem;min-width:120px;max-width:85vw;padding:.65rem .85rem}.word{letter-spacing:.2px;font-size:.95em}.phonetic{font-size:.75em}.meaning{font-size:.8em}.orbit-system{width:400px;height:400px}.orbit-track{width:320px;height:320px}.orbit-track-inner{width:240px;height:240px}.center-planet{width:80px;height:80px}.planet-core{width:70px;height:70px}.planet-icon{font-size:2rem}.orbit-card{width:80px;height:100px;margin-top:-50px;margin-left:-40px}.orbit-card-inner{padding:.5rem}.orbit-card-icon{font-size:1.5rem}.orbit-card-title{font-size:.65rem}.orbit-card-count{font-size:.55rem}.orbit-stats{gap:1rem;padding:.75rem 1rem}.stat-orbit-item .stat-number{font-size:1.25rem}.stat-orbit-item .stat-label{font-size:.7rem}}@media (width<=480px){.circular-container{padding:60px 40px}.circular-center-image{gap:.4rem;min-width:110px;min-height:140px;padding:.8rem}.circular-center-image .center-icon{font-size:2.3rem}.circular-center-image .center-label{max-width:120px;font-size:1.1rem}.word-card{border-radius:10px;gap:.15rem;min-width:105px;max-width:80vw;padding:.55rem .7rem}.word{font-size:.88em}.phonetic{font-size:.7em}.meaning{font-size:.75em}}.preview-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.preview-modal{background:var(--card);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:420px;animation:.4s cubic-bezier(.4,0,.2,1) modalSlideIn;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-close{color:#fff;cursor:pointer;z-index:10;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;transition:all .2s;display:flex;position:absolute;top:.75rem;right:.75rem}.modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.preview-header{text-align:center;color:#fff;padding:1.5rem 1.5rem 1rem;position:relative}.preview-icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius);background:#fff3;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto .75rem;font-size:1.75rem;display:flex;box-shadow:0 8px 32px #0000001a}.preview-title{margin-bottom:.25rem;font-size:1.4rem;font-weight:700}.preview-desc{opacity:.9;font-size:.85rem}.preview-body{flex:1;min-height:0;padding:1rem 1.5rem;overflow-y:visible}.preview-section-title{text-transform:uppercase;letter-spacing:1px;opacity:.5;margin-bottom:.75rem;font-size:.75rem;font-weight:600}.preview-words{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.preview-word{background:var(--card);border:2px solid var(--border);border-radius:16px;padding:.4rem .75rem;font-size:.8rem;font-weight:600;transition:all .2s;animation:.4s backwards popIn}@keyframes popIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.preview-word:hover{border-color:var(--primary-light);box-shadow:var(--shadow);transform:translateY(-2px)}.preview-word.more{background:var(--primary);color:#fff;border-color:var(--primary)}.preview-features{background:var(--background);border-radius:var(--radius);grid-template-columns:repeat(3,1fr);gap:.75rem;padding:1rem;display:grid}.feature-item{text-align:center;flex-direction:column;align-items:center;gap:.35rem;display:flex}.feature-icon{font-size:1.25rem}.feature-text{opacity:.7;font-size:.75rem;font-weight:500}.preview-footer{padding:1rem 1.5rem 1.25rem}.enter-btn{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;border-radius:var(--radius);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 15px #6c5ce74d}.enter-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #6c5ce766}.enter-btn:active{transform:translateY(0)}.enter-arrow{width:18px;height:18px;transition:transform .3s}.enter-btn:hover .enter-arrow{transform:translate(4px)}.card-page-main{flex-direction:column;flex:1;min-height:calc(100vh - 56px);padding:1rem 2rem 1.5rem;display:flex}.card-page-main.compact{padding:.75rem 1.5rem 1rem}.card-page-main .loading-container{height:100%;color:var(--foreground);opacity:.7;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.card-page-main .loading-container .loading-spinner{border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}.card-page-main .empty-container{height:100%;color:var(--foreground);opacity:.6;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.card-page-main .empty-container .empty-icon{opacity:.5;font-size:4rem}.card-page-main .empty-container p{margin:0;font-size:1rem}.card-display-area{background:var(--card);border-radius:var(--radius-lg);border:2px solid var(--border);flex:1;min-height:0;position:relative;overflow:hidden}.card-page-header-bar{background:var(--card);border-radius:var(--radius-lg);border:2px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;padding:.75rem 1rem;display:flex}.header-bar-left{align-items:center;gap:.75rem;display:flex}.header-back-btn{border:1px solid var(--border);background:var(--background);width:36px;height:36px;color:var(--foreground);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;font-weight:600;transition:all .2s;display:flex}.header-back-btn:hover{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-color:#0000;transform:scale(1.05)}.header-series-icon{font-size:1.5rem}.header-series-name{color:var(--foreground);font-size:1rem;font-weight:600}.review-mode-badge{color:#8b5e3c;white-space:nowrap;background:linear-gradient(135deg,#ffecd2,#fcb69f);border-radius:20px;align-items:center;gap:.25rem;margin-left:.5rem;padding:.15rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}body[data-theme=dark] .review-mode-badge{color:#e8c39e;background:linear-gradient(135deg,#2d1f0a,#3d2a12)}.header-bar-right{align-items:center;gap:.5rem;display:flex}.header-assess-btn,.header-play-btn{border-radius:var(--radius);border:1px solid var(--btn-border,#6c5ce766);background:var(--btn-bg,#1a1a2ecc);color:var(--btn-text,#a29bfe);cursor:pointer;align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.header-assess-btn .btn-icon,.header-play-btn .btn-icon{font-size:.9rem}.header-assess-btn:hover,.header-play-btn:hover{border-color:var(--primary);color:var(--btn-hover-text,white);background:var(--btn-hover-bg,#6c5ce733)}.header-assess-btn.active{color:#fff;background:linear-gradient(135deg,#e74c3c,#c0392b);border-color:#0000}.header-assess-btn.active:hover{background:linear-gradient(135deg,#c0392b,#a93226)}.header-practice-btn{border-radius:var(--radius);color:#ffa726;cursor:pointer;background:#1a1a2ecc;border:1px solid #ff980066;align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.header-practice-btn .btn-icon{font-size:.9rem}.header-practice-btn:hover:not(:disabled){color:#fff;background:#ff980033;border-color:#ff9800}.header-practice-btn.active{color:#fff;background:linear-gradient(135deg,#ff9800,#f57c00);border-color:#0000}.header-practice-btn.active:hover{background:linear-gradient(135deg,#f57c00,#ef6c00)}.header-practice-btn:disabled{opacity:.4;cursor:not-allowed}.header-practice-btn.silent{border-radius:var(--radius);color:#673ab7;cursor:pointer;background:#1a1a2ecc;border:1px solid #673ab766;align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.header-practice-btn.silent .btn-icon{font-size:.9rem}.header-practice-btn.silent:hover:not(:disabled){color:#fff;background:#673ab733;border-color:#673ab7}.header-practice-btn.silent.active{color:#fff;background:linear-gradient(135deg,#673ab7,#5e2783);border-color:#0000}.header-practice-btn.silent.active:hover{background:linear-gradient(135deg,#5e2783,#512576)}.header-practice-btn.silent:disabled{opacity:.4;cursor:not-allowed}.header-play-btn.playing{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-color:#0000;animation:1.5s ease-in-out infinite pulse-play}@keyframes pulse-play{0%,to{box-shadow:0 0 #6c5ce766}50%{box-shadow:0 0 0 8px #6c5ce700}}.header-divider{background:var(--border);width:1px;height:24px;margin:0 .25rem}.header-zoom-group{background:var(--background);border-radius:var(--radius);border:1px solid var(--border);align-items:center;gap:.3rem;padding:.2rem;display:flex}.header-zoom-btn{width:28px;height:28px;color:var(--foreground);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.header-zoom-btn:hover{background:var(--primary);color:#fff}.header-zoom-value{color:var(--foreground);text-align:center;min-width:36px;font-size:.8rem;font-weight:500}body[data-theme=light] .card-page-header-bar{background:#fffffff2;border-color:#6c5ce733}body[data-theme=light] .header-back-btn{background:#ffffffe6;border-color:#6c5ce74d}body[data-theme=light] .header-assess-btn,body[data-theme=light] .header-play-btn{--btn-bg:#fffc;--btn-text:var(--primary);--btn-border:#6c5ce74d}body[data-theme=light] .header-assess-btn:hover,body[data-theme=light] .header-play-btn:hover{--btn-hover-bg:#6c5ce71a;--btn-hover-text:var(--primary)}body[data-theme=light] .header-practice-btn{color:#ff9800;background:#fffc;border-color:#ff98004d}body[data-theme=light] .header-practice-btn:hover:not(:disabled){color:#f57c00;background:#ff98001a}body[data-theme=light] .header-zoom-group{background:#fffc;border-color:#6c5ce733}.corner-control{z-index:10;background:var(--corner-bg,#1a1a2ef2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius);border:1px solid var(--corner-border,#6c5ce766);align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex;position:absolute;box-shadow:0 2px 12px #0000004d}.series-info-corner{top:12px;left:12px}.series-icon-lg{font-size:1.5rem}.series-name-lg{color:var(--foreground);font-size:.9rem;font-weight:500}.corner-back-btn{border:1px solid var(--corner-border,#6c5ce766);background:var(--corner-bg,#1a1a2ef2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:32px;height:32px;color:var(--corner-text,#a29bfe);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.corner-back-btn:hover{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-color:#0000;transform:scale(1.05)}.corner-assess-btn{border:1px solid var(--btn-border,#6c5ce766);background:var(--btn-bg,#1a1a2ecc);width:32px;height:32px;color:var(--btn-text,#a29bfe);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;transition:all .2s;display:flex}.corner-assess-btn:hover{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-color:#0000;transform:scale(1.05)}.corner-play-btn{border:1px solid var(--btn-border,#6c5ce766);background:var(--btn-bg,#1a1a2ecc);width:32px;height:32px;color:var(--btn-text,#a29bfe);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;transition:all .2s;display:flex}.corner-play-btn:hover{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-color:#0000;transform:scale(1.05)}.zoom-control-group{background:#0003;border-radius:16px;align-items:center;gap:.3rem;padding:.15rem .4rem;display:flex}body[data-theme=light] .zoom-control-group{background:#0000000d}.zoom-corner-btn{width:24px;height:24px;color:var(--corner-text,#a29bfe);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.zoom-corner-btn:hover{background:#6c5ce733}body[data-theme=light] .corner-control{--corner-bg:#fffffff2;--corner-border:#6c5ce74d;box-shadow:0 2px 12px #0000001a}.series-info-corner{align-items:center;gap:.75rem;max-width:300px;padding:.6rem 1rem;display:flex;top:12px;left:12px}.series-back-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6c5ce7e6,#fd79a8e6);border:1px solid #ffffff4d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;font-weight:600;transition:all .2s;display:flex}.series-back-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px #6c5ce766}body[data-theme=light] .series-back-btn{border-color:#6c5ce74d}.series-info-content{flex-direction:column;gap:.15rem;min-width:0;display:flex}.series-icon-lg{font-size:1.75rem;line-height:1}.series-name-lg{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:1.25rem;font-weight:700;overflow:hidden}body[data-theme=light] .series-name-lg{--corner-text:var(--primary)}.top-right-controls{top:12px;right:12px}.top-right-controls-integrated{align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex;top:12px;right:12px}.top-right-divider{background:#ffffff40;width:1px;height:28px;margin:0 .3rem}body[data-theme=light] .top-right-divider{background:#00000026}.corner-play-btn:hover{border-color:var(--primary);color:var(--btn-hover-text,white);background:var(--btn-hover-bg,#6c5ce733)}.corner-play-btn.playing{color:#fff;background:linear-gradient(135deg,#e74c3c,#c0392b);border-color:#0000;animation:1.5s ease-in-out infinite pulse}body[data-theme=light] .corner-play-btn{--btn-bg:#fffc;--btn-text:var(--primary);--btn-border:#6c5ce74d}body[data-theme=light] .corner-play-btn:hover{--btn-hover-bg:#6c5ce71a;--btn-hover-text:var(--primary)}.zoom-control-group{border:1px solid var(--zoom-border,#6c5ce766);border-radius:var(--radius);background:var(--zoom-bg,#1a1a2ecc);align-items:center;gap:.25rem;padding:.15rem;display:flex}.zoom-corner-btn{width:26px;height:26px;color:var(--zoom-btn-text,#a29bfe);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;line-height:1;transition:all .2s;display:flex}.zoom-corner-btn:hover{background:var(--zoom-btn-hover-bg,#6c5ce733);color:var(--zoom-btn-hover-text,white)}.zoom-corner-value{color:var(--zoom-value,#fd79b8);text-align:center;min-width:38px;font-size:.8rem;font-weight:600}body[data-theme=light] .zoom-control-group{--zoom-bg:#fffc;--zoom-border:#6c5ce74d}body[data-theme=light] .zoom-corner-btn{--zoom-btn-text:var(--primary)}body[data-theme=light] .zoom-corner-btn:hover{--zoom-btn-hover-bg:#6c5ce71a;--zoom-btn-hover-text:var(--primary)}body[data-theme=light] .zoom-corner-value{--zoom-value:var(--accent)}.live2d-mascot-container{z-index:999;pointer-events:none;width:200px;height:250px;position:fixed;bottom:20px;right:20px}.live2d-mascot-container canvas{cursor:default;filter:drop-shadow(0 2px 6px #0000001a);transition:opacity .3s}.card-content-inner{position:absolute;inset:0}.card-page-header{border-bottom:2px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.series-info{align-items:center;gap:1rem;display:flex}.series-info .series-title{color:var(--foreground);font-size:1.5rem;font-weight:700}.view-controls{align-items:center;gap:1rem;display:flex}.play-control-btn{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s;display:flex;box-shadow:0 4px 15px #6c5ce74d}.play-control-btn:hover{transform:scale(1.1);box-shadow:0 6px 20px #6c5ce766}.play-control-btn.playing{background:linear-gradient(135deg,#e74c3c,#c0392b);animation:1.5s ease-in-out infinite pulse}.play-control-btn svg{width:20px;height:20px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.settings-panel-container{position:relative}.settings-toggle-btn{border:2px solid var(--border);background:var(--card);width:40px;height:40px;color:var(--foreground);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .3s;display:flex}.settings-toggle-btn:hover{border-color:var(--primary);color:var(--primary)}.settings-toggle-btn svg{width:20px;height:20px}.settings-dropdown{background:var(--card);border:2px solid var(--border);border-radius:var(--radius);min-width:180px;box-shadow:var(--shadow-lg);z-index:100;margin-top:.5rem;padding:1rem;position:absolute;top:100%;right:0}.settings-slider{align-items:center;gap:.75rem;display:flex}.settings-slider button{border:2px solid var(--border);background:var(--card);width:28px;height:28px;color:var(--foreground);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-weight:600;transition:all .2s;display:flex}.settings-slider button:hover{border-color:var(--primary);color:var(--primary)}.settings-slider span{color:var(--primary);text-align:center;min-width:50px;font-size:.9rem;font-weight:600}.view-switcher{background:var(--card);border-radius:var(--radius);border:2px solid var(--border);gap:.5rem;padding:.25rem;display:flex}.view-btn{cursor:pointer;color:var(--foreground);opacity:.6;background:0 0;border:none;border-radius:12px;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .3s}.view-btn:hover{opacity:1}.view-btn.active{background:var(--primary);color:#fff;opacity:1;box-shadow:0 2px 8px #6c5ce74d}.card-page-content{background:var(--card);border-radius:var(--radius-lg);border:2px solid var(--border);flex:1;min-height:500px;position:relative;overflow:hidden}.word-cloud-container{width:100%;height:100%;min-height:500px;padding:2rem;position:relative}@media (width>=769px){.circular-center-image{background:linear-gradient(135deg,#6c5ce714,#fd79a814);border:3px solid #6c5ce733;border-radius:50%;gap:.75rem;min-width:180px;min-height:180px;padding:1.5rem;box-shadow:0 0 40px #6c5ce726,inset 0 0 30px #6c5ce70d}.circular-center-image:hover{border-color:#6c5ce759;transform:translate(-50%,-50%)scale(1.05);box-shadow:0 0 50px #6c5ce740,inset 0 0 35px #6c5ce714}body[data-theme=light] .circular-center-image{background:linear-gradient(135deg,#6c5ce70f,#fd79a80f);border-color:#6c5ce726;box-shadow:0 0 35px #6c5ce71a,inset 0 0 25px #6c5ce708}.word-cloud-item{cursor:pointer;color:var(--foreground);white-space:nowrap;background:var(--card);border:2px solid var(--border);box-shadow:var(--shadow);border-radius:12px;padding:.5rem 1rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute}.word-cloud-item:hover{color:#fff;background:var(--primary);border-color:var(--primary);box-shadow:var(--shadow-hover);z-index:100;transform:scale(1.15)translateY(-4px)}.circular-container{box-sizing:border-box;width:100%;height:100%;min-height:500px;padding:80px 60px;position:relative}@media (width>=769px){.circular-container{padding:75px 80px}}.circular-center-image{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;justify-content:center;align-items:center;transition:all .3s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.circular-center-image .center-icon{filter:drop-shadow(0 4px 8px #6c5ce74d);order:2;font-size:3.5rem;line-height:1;animation:3s ease-in-out infinite centerIconFloat}@keyframes centerIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.circular-center-image .center-label{color:var(--foreground);text-align:center;text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;letter-spacing:.5px;-webkit-background-clip:text;background-clip:text;order:1;max-width:220px;font-size:1.6rem;font-weight:800;overflow:hidden}}.word-card{background:var(--card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--border);text-align:center;cursor:pointer;box-shadow:var(--shadow), 0 4px 12px #00000014;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;width:fit-content;min-width:145px;max-width:90vw;height:fit-content;padding:.85rem 1.1rem;transition:all .35s cubic-bezier(.4,0,.2,1);display:flex;position:absolute}.word-card:hover{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;z-index:25;border-color:#0000;transform:scale(1.08)translateY(-8px);box-shadow:0 15px 40px #6c5ce766,0 8px 20px #00000026}.word-card:hover .phonetic,.word-card:hover .meaning{color:#ffffffe6}.word-card.selected{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;z-index:25;border-color:#0000;transform:scale(1.1)translateY(-8px);box-shadow:0 16px 45px #6c5ce773,0 10px 25px #0000002e}.word-card.playing{z-index:30;border:3px solid #00cec9;animation:1s ease-in-out infinite playingPulse;box-shadow:0 0 25px #00cec999,0 0 50px #00cec94d}@keyframes playingPulse{0%,to{transform:scale(1.07);box-shadow:0 0 25px #00cec999,0 0 50px #00cec94d}50%{transform:scale(1.12);box-shadow:0 0 40px #00cec9e6,0 0 70px #00cec980}}.word-card.selected .phonetic,.word-card.selected .meaning{color:#ffffffe6}.word{white-space:nowrap;text-overflow:ellipsis;letter-spacing:.2px;max-width:100%;font-size:1em;font-weight:700;line-height:1.2;overflow:hidden}.phonetic{opacity:.75;font-size:.8em;font-style:italic;line-height:1.2}.meaning{opacity:.95;font-size:.85em;font-weight:500;line-height:1.3}.solar-assessment-container{flex-direction:column;justify-content:space-between;align-items:center;gap:.5rem;width:100%;height:100%;padding:.5rem;display:flex;position:relative}.assessment-zoom-control{background:var(--card);border:2px solid var(--border);box-shadow:var(--shadow);z-index:70;border-radius:20px;align-items:center;gap:.4rem;padding:.3rem .6rem;display:flex}.assessment-zoom-control .zoom-btn{width:32px;height:32px;color:var(--foreground);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;font-weight:600;line-height:1;transition:all .2s;display:flex}.assessment-zoom-control .zoom-btn:hover{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;transform:scale(1.1)}.assessment-zoom-control .zoom-value{color:var(--foreground);text-align:center;min-width:45px;font-size:.85rem;font-weight:600}.solar-assessment-scene{width:100%;position:center;flex:1;justify-content:center;align-items:center;min-height:150px;margin-top:-180px;display:flex;overflow:hidden}.scene-3d{perspective:1200px;perspective-origin:50%;justify-content:center;align-items:center;display:flex}.cards-carousel{width:80%;height:80%;transform-style:preserve-3d;--font-scale:var(--parent-font-scale,100);justify-content:center;align-items:center;display:flex;position:relative}.carousel-card{cursor:pointer;transform-style:preserve-3d;transform-origin:50%;--font-scale:var(--parent-font-scale,100);margin-top:0;margin-left:0;position:absolute;top:50%;left:50%}.carousel-card.current{cursor:default}.carousel-card:not(.current){filter:blur(2px);transition:filter .6s cubic-bezier(.4,0,.2,1)}.carousel-card-inner{width:100%;height:100%;transform-style:preserve-3d;--font-scale:var(--parent-font-scale,100);transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.carousel-card.assessed .carousel-card-inner{transform:rotateY(180deg)}.carousel-card-front,.carousel-card-back{backface-visibility:hidden;border-radius:var(--radius-lg);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem;display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:0 8px 32px #00000026}.carousel-card-front{background:linear-gradient(135deg, var(--card) 0%, #6c5ce70d 100%);border:2.5px solid var(--primary)}.carousel-card.current .carousel-card-front{box-shadow:0 0 40px #6c5ce766,0 8px 32px #00000026}.carousel-card-back{background:linear-gradient(135deg, var(--card) 0%, #6c5ce714 100%);border:2.5px solid var(--primary-light);transform:rotateY(180deg)}.carousel-card.assessed.know .carousel-card-back{background:linear-gradient(135deg, #00b89426, var(--card));border-color:#00b894;box-shadow:0 0 30px #00b8944d}.carousel-card.assessed.vague .carousel-card-back{background:linear-gradient(135deg, #fdcb6e26, var(--card));border-color:#fdcb6e;box-shadow:0 0 30px #fdcb6e4d}.carousel-card.assessed.forget .carousel-card-back{background:linear-gradient(135deg, #ff767526, var(--card));border-color:#ff7675;box-shadow:0 0 30px #ff76754d}.card-word{font-weight:700;font-size:calc(1rem * var(--font-scale,100) / 50);color:var(--foreground);text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;padding:0 .5rem;line-height:1.2;transition:font-size .3s;overflow:hidden}.card-meaning{opacity:.9;color:var(--foreground);text-align:center;font-size:.95rem;font-weight:500;line-height:1.4}.card-status{margin-top:.3rem;font-size:.85rem;font-weight:600}.card-status.know{color:#00b894}.card-status.vague{color:#fdcb6e}.card-status.forget{color:#ff7675}.card-hint{opacity:.6;color:var(--primary);margin-top:.3rem;font-size:.75rem;animation:2s ease-in-out infinite hintPulse}@keyframes hintPulse{0%,to{opacity:.6}50%{opacity:1}}.solar-orbit-ring{pointer-events:none;border:1.5px dashed #6c5ce740;border-radius:50%;animation:60s linear infinite orbitSpin;position:absolute}body[data-theme=light] .solar-orbit-ring{border-color:#6c5ce726}@keyframes orbitSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.solar-center-icon{background:linear-gradient(135deg, var(--card), var(--background));border:2.5px solid var(--primary);z-index:5;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.5rem;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 20px #6c5ce740}.solar-current-card{z-index:20;cursor:default;perspective:800px;position:absolute}.solar-card-inner{width:100%;height:100%;transform-style:preserve-3d;border-radius:var(--radius);transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.solar-current-card.assessed .solar-card-inner{transform:rotateY(180deg)}.solar-card-front,.solar-card-back{backface-visibility:hidden;border-radius:var(--radius);flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:.75rem;display:flex;position:absolute;inset:0;overflow:hidden}.solar-card-front{background:var(--card);border:2.5px solid var(--primary);box-shadow:0 0 24px #6c5ce74d, var(--shadow)}.solar-card-back{background:var(--card);border:2.5px solid var(--primary-light);box-shadow:var(--shadow);transform:rotateY(180deg)}.solar-current-card.assessed.know .solar-card-back{background:linear-gradient(135deg, #00b8941a, var(--card));border-color:#00b894}.solar-current-card.assessed.vague .solar-card-back{background:linear-gradient(135deg, #fdcb6e1a, var(--card));border-color:#fdcb6e}.solar-current-card.assessed.forget .solar-card-back{background:linear-gradient(135deg, #ff76751a, var(--card));border-color:#ff7675}.solar-card-word{color:var(--foreground);text-align:center;font-size:1.1rem;font-weight:700;line-height:1.2}.solar-card-phonetic{opacity:.6;color:var(--foreground);font-size:.75rem;font-style:italic}.solar-card-meaning{opacity:.9;color:var(--foreground);text-align:center;font-size:.8rem;font-weight:500}.solar-card-status{margin-top:.15rem;font-size:.7rem;font-weight:600}.solar-card-status.know{color:#00b894}.solar-card-status.vague{color:#fdcb6e}.solar-card-status.forget{color:#ff7675}.solar-card-hint{opacity:.5;color:var(--primary);margin-top:.15rem;font-size:.65rem}.solar-orbit-card{background:var(--card);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;box-shadow:var(--shadow);z-index:10;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.4rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;overflow:hidden}.solar-orbit-card:hover{border-color:var(--primary);z-index:30;transform:scale(1.12);box-shadow:0 8px 24px #6c5ce74d}.solar-orbit-card.unassessed{opacity:.65}.solar-orbit-card.unassessed:hover{opacity:1}.solar-orbit-card.assessed.know{background:linear-gradient(135deg, #00b8940f, var(--card));opacity:.8;border-color:#00b894}.solar-orbit-card.assessed.vague{background:linear-gradient(135deg, #fdcb6e0f, var(--card));opacity:.8;border-color:#fdcb6e}.solar-orbit-card.assessed.forget{background:linear-gradient(135deg, #ff76750f, var(--card));opacity:.8;border-color:#ff7675}.solar-orbit-card.assessed:hover{opacity:1}.solar-orbit-word{color:var(--foreground);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.75rem;font-weight:600;line-height:1.2;overflow:hidden}.solar-orbit-status{font-size:.6rem;font-weight:600}.solar-orbit-status.know{color:#00b894}.solar-orbit-status.vague{color:#fdcb6e}.solar-orbit-status.forget{color:#ff7675}.assessment-panel{background:var(--card);border:2px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hover);z-index:60;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;align-items:center;gap:.5rem;min-width:280px;padding:1.25rem 2rem;animation:.3s panelSlideUp;display:flex;position:absolute;bottom:150px;left:50%;transform:translate(-50%)}@keyframes panelSlideUp{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.assessment-panel.result{border-color:var(--primary-light)}.assessment-panel-status{margin-top:.25rem;font-size:.85rem;font-weight:600}.assessment-panel-status.know{color:#00b894}.assessment-panel-status.vague{color:#fdcb6e}.assessment-panel-status.forget{color:#ff7675}.assessment-buttons{gap:1rem;margin-top:.5rem;display:flex}.assessment-btn{border:2px solid var(--border);border-radius:var(--radius);background:var(--card);cursor:pointer;flex-direction:column;align-items:center;gap:.3rem;padding:.75rem 1.25rem;font-family:inherit;transition:all .2s;display:flex}.assessment-btn:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}.assessment-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.assessment-btn.know{border-color:#00b8944d}.assessment-btn.know:hover{background:#00b8941a;border-color:#00b894}.assessment-btn.vague{border-color:#fdcb6e4d}.assessment-btn.vague:hover{background:#fdcb6e1a;border-color:#fdcb6e}.assessment-btn.forget{border-color:#ff76754d}.assessment-btn.forget:hover{background:#ff76751a;border-color:#ff7675}.assessment-emoji{font-size:1.75rem;line-height:1}.assessment-label{color:var(--foreground);font-size:.8rem;font-weight:600}.assessment-nav-buttons{gap:.75rem;margin-top:.5rem;display:flex}.nav-arrow-btn{border:2px solid var(--border);background:var(--card);width:40px;height:40px;color:var(--foreground);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;transition:all .2s;display:flex}.nav-arrow-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:#6c5ce70d}.nav-arrow-btn:disabled{opacity:.3;cursor:not-allowed}.ring-assessment-progress{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);z-index:60;width:100%;max-width:500px;padding:.75rem 1rem;position:relative;top:-50px}.progress-text{color:var(--foreground);opacity:.7;font-size:.8rem;font-weight:600}.progress-complete{color:#00b894;font-size:.8rem;font-weight:700}.progress-bar{background:var(--border);border-radius:3px;width:100%;height:6px;margin-bottom:.5rem;overflow:hidden}.progress-dots{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.progress-dot{border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;width:10px;height:10px;padding:0;transition:all .2s}.progress-dot:hover{border-color:var(--primary);transform:scale(1.2)}.progress-dot.active{border-color:var(--primary);background:var(--primary);transform:scale(1.3);box-shadow:0 0 6px #6c5ce780}.progress-dot.know{background:#00b894;border-color:#00b894}.progress-dot.vague{background:#fdcb6e;border-color:#fdcb6e}.progress-dot.forget{background:#ff7675;border-color:#ff7675}.corner-assess-btn{border-radius:var(--radius);border:1px solid var(--btn-border,#6c5ce766);background:var(--btn-bg,#1a1a2ecc);color:var(--btn-text,#a29bfe);cursor:pointer;white-space:nowrap;padding:.4rem .85rem;font-family:inherit;font-size:.8rem;font-weight:600;transition:all .2s}.corner-assess-btn:hover{border-color:var(--primary);color:var(--btn-hover-text,white);background:var(--btn-hover-bg,#6c5ce733)}.corner-assess-btn.active{color:#fff;background:linear-gradient(135deg,#e74c3c,#c0392b);border-color:#0000}.corner-assess-btn.active:hover{background:linear-gradient(135deg,#c0392b,#a93226)}body[data-theme=light] .corner-assess-btn{--btn-bg:#fffc;--btn-text:var(--primary);--btn-border:#6c5ce74d}body[data-theme=light] .corner-assess-btn:hover{--btn-hover-bg:#6c5ce71a;--btn-hover-text:var(--primary)}@media (width>=1920px){.header{height:64px;padding:0 2.5rem}.hero-content{max-width:1600px}}@media (width>=1440px) and (width<=1919px){.header{height:56px;padding:0 2rem}.hero-content{max-width:1200px}}@media (width>=768px) and (width<=1439px){.header{height:52px;padding:0 1.5rem}.hero-content{max-width:1000px}}@media (width<=768px){.header{padding:.75rem 1rem}.home-main{padding:1rem}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1rem}.hero-stats{gap:1.5rem}.stat-number{font-size:2rem}.series-grid{grid-template-columns:1fr;gap:1rem}.preview-modal{max-width:100%;margin:0}.preview-header{padding:2rem 1.5rem}.preview-icon{width:64px;height:64px;font-size:2rem}.preview-body{padding:1.5rem}.preview-features{grid-template-columns:1fr;gap:.75rem}.feature-item{flex-direction:row;justify-content:center;gap:.75rem}.card-page-main{padding:.75rem}.card-page-main.compact{padding:.5rem}.card-page-header{flex-direction:column;align-items:flex-start;gap:1rem}.view-switcher{justify-content:stretch;width:100%}.view-btn{text-align:center;flex:1}.corner-control{gap:.35rem;padding:.35rem .5rem}.series-info-corner{top:8px;left:8px}.top-right-controls{top:8px;right:8px}.card-page-header-bar{margin-bottom:.5rem;padding:.5rem .75rem}.header-bar-left{gap:.5rem}.header-back-btn{width:32px;height:32px;font-size:1rem}.header-series-icon{font-size:1.25rem}.header-series-name{text-overflow:ellipsis;white-space:nowrap;max-width:100px;font-size:.85rem;overflow:hidden}.header-bar-right{gap:.35rem}.header-assess-btn,.header-play-btn{padding:.4rem .6rem;font-size:.75rem}.header-assess-btn .btn-text,.header-play-btn .btn-text{display:none}.header-divider{height:20px;margin:0 .15rem}.header-zoom-group{gap:.15rem;padding:.1rem}.header-zoom-btn{width:24px;height:24px;font-size:.9rem}.header-zoom-value{min-width:32px;font-size:.7rem}.series-icon-lg{font-size:1.25rem}.series-name-lg{font-size:.85rem}.view-toggle-btn{padding:.3rem .5rem;font-size:.75rem}.corner-play-btn{width:28px;height:28px;font-size:.8rem}.zoom-control-group{gap:.15rem;padding:.1rem}.zoom-corner-btn{width:22px;height:22px;font-size:.9rem}.zoom-corner-value{min-width:32px;font-size:.7rem}.card-meaning{font-size:.75rem}.card-status{font-size:.7rem}.card-hint{font-size:.6rem}.solar-assessment-scene{min-height:200px;margin-top:-80px}.solar-assessment-container{gap:.5rem;padding:.75rem .5rem .5rem}.assessment-zoom-control{border-radius:18px;padding:.25rem .5rem}.assessment-zoom-control .zoom-btn{width:28px;height:28px;font-size:1.1rem}.assessment-zoom-control .zoom-value{min-width:40px;font-size:.8rem}.scene-3d{perspective:800px}.carousel-card{width:160px!important;height:208px!important}.circular-center-image .center-icon{font-size:2rem}.circular-center-image .center-label{max-width:160px;font-size:1.1rem}.corner-assess-btn{padding:.3rem .6rem;font-size:.72rem}.assessment-panel{min-width:240px;padding:.9rem 1.25rem;bottom:120px}.assessment-buttons{gap:.6rem}.assessment-btn{padding:.5rem .9rem}.assessment-emoji{font-size:1.4rem}.ring-assessment-center{width:60px;height:60px}.ring-assessment-center .center-icon{font-size:1.5rem}.ring-assessment-progress{max-width:90%;padding:.6rem .8rem;top:-35px}.progress-text,.progress-complete{font-size:.75rem}.progress-dot{width:8px;height:8px}}.login-page{background:var(--background);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.login-container{flex-direction:column;align-items:center;gap:2rem;width:100%;max-width:420px;display:flex}.login-logo{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.login-logo-icon{filter:drop-shadow(0 4px 12px #6c5ce74d);width:64px;height:64px}.login-logo-text{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.75rem;font-weight:800}.login-logo-subtitle{opacity:.6;margin:0;font-size:1rem}.login-card{background:var(--card);border-radius:var(--radius-lg);border:2px solid var(--border);width:100%;box-shadow:var(--shadow-hover);flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;display:flex}.login-title{color:var(--foreground);margin:0;font-size:1.25rem;font-weight:700}.login-method-tabs{background:var(--card);border:2px solid var(--border);border-radius:var(--radius);gap:4px;width:100%;padding:4px;display:flex;overflow:hidden}.login-tab{cursor:pointer;color:var(--foreground);opacity:.55;background:0 0;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .25s;display:flex}.login-tab:hover{opacity:.8;background:#6c5ce70f}.login-tab.active{color:#fff;opacity:1;background:linear-gradient(135deg,#6c5ce7,#a29bfe);box-shadow:0 2px 10px #6c5ce74d}.qrcode-container{flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;min-height:220px;display:flex}.qrcode-wrapper{border-radius:var(--radius);width:200px;height:200px;box-shadow:var(--shadow);position:relative;overflow:hidden}.qrcode-wrapper.qrcode-failed{border:2px dashed var(--border);box-shadow:none;background:#2d374880;justify-content:center;align-items:center;display:flex}body[data-theme=light] .qrcode-wrapper.qrcode-failed{background:#f0f4ffcc}.qrcode-failed-content{color:var(--foreground);opacity:.5;flex-direction:column;align-items:center;gap:.75rem;font-size:.9rem;font-weight:500;display:flex}.qrcode-image{object-fit:cover;width:100%;height:100%}.qrcode-logo{background:#fff;border-radius:50%;width:48px;height:48px;padding:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0000001a}.qrcode-logo svg{width:100%;height:100%}.qrcode-tip{color:var(--foreground);opacity:.8;margin:0;font-size:.95rem}.qrcode-countdown{color:var(--primary);margin:0;font-size:.85rem;font-weight:600}.account-login-form{flex-direction:column;gap:1rem;width:100%;display:flex}.login-input-group{border:2px solid var(--border);background:0 0;border-radius:14px;align-items:center;gap:.75rem;padding:.85rem 1.1rem;transition:all .3s;display:flex}body[data-theme=dark] .login-input-group{background:0 0}.login-input-group:focus-within{border-color:var(--primary);transform:translateY(-1px);box-shadow:0 0 0 4px #6c5ce71f,0 4px 12px #6c5ce726}.login-input-group svg{opacity:.5;color:var(--primary);flex-shrink:0;transition:all .3s}.login-input-group:focus-within svg{opacity:.8;transform:scale(1.05)}.login-input-group input{color:var(--foreground);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.95rem}.login-input-group input::placeholder{opacity:.4}.login-submit-btn{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;border-radius:var(--radius);cursor:pointer;border:none;width:100%;margin-top:.5rem;padding:.75rem;font-family:inherit;font-size:1rem;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #6c5ce74d}.login-submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6c5ce766}.login-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-status{border-radius:var(--radius);align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;font-size:.9rem;font-weight:500;display:flex}.login-status.success{color:#00b894;background:#00b8941a;border:1px solid #00b89433}.login-status.error{color:#ff7675;background:#ff76751a;border:1px solid #ff767533}.login-status .status-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.8rem;font-weight:700;display:flex}.login-status.success .status-icon{color:#fff;background:#00b894}.login-status.error .status-icon{color:#fff;background:#ff7675}.qrcode-loading,.qrcode-success,.qrcode-expired{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.loading-spinner{border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.success-icon,.expired-icon{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:2rem;font-weight:700;display:flex}.success-icon{color:#fff;background:linear-gradient(135deg,#55efc4,#00b894)}.expired-icon{color:#fff;background:linear-gradient(135deg,#ff7675,#d63031)}.refresh-btn{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s}.refresh-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #6c5ce74d}.login-bottom-area{justify-content:center;width:100%;margin-top:1.5rem;display:flex}.back-home-btn-prominent{background:var(--card);border:2px solid var(--border);color:var(--foreground);cursor:pointer;box-shadow:var(--shadow);border-radius:50px;align-items:center;gap:.6rem;padding:.7rem 1.5rem;font-family:inherit;font-size:.95rem;font-weight:600;transition:all .3s;display:flex}.back-home-btn-prominent svg{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;border-radius:50%;flex-shrink:0;width:20px;height:20px;padding:4px}.back-home-btn-prominent:hover{border-color:var(--primary);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.back-home-btn{color:var(--foreground);opacity:.6;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;font-size:.9rem;transition:all .2s;display:flex}.back-home-btn:hover{opacity:1;color:var(--primary)}.login-tips{background:var(--card);border-radius:var(--radius);border:2px solid var(--border);box-shadow:var(--shadow);white-space:nowrap;flex-wrap:nowrap;justify-content:center;align-items:center;gap:.75rem;padding:.75rem 1.25rem;display:flex}.tip-item{opacity:.8;white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;font-size:.8rem;display:flex}.tip-icon{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;font-weight:700;display:flex}.tip-divider{background:var(--border);flex-shrink:0;width:1px;height:16px}@media (width<=480px){.header{padding:.5rem .75rem}.product-logo{gap:.5rem}.logo-icon{width:32px;height:32px}.logo-text{font-size:1.1rem}.back-button{width:34px;height:34px;padding:.4rem}.avatar-circle{width:30px;height:30px;font-size:.85rem}.header-login-btn{gap:.35rem;padding:3px 10px 3px 3px}.header-login-btn .avatar-circle{width:24px;height:24px;font-size:.7rem}.login-text{font-size:.8rem}.theme-toggle-btn,.lang-btn{padding:.5rem;font-size:.85rem}.lang-btn{padding:.5rem .75rem}.hero-title{font-size:2rem}.series-card-content{padding:1.5rem}.series-icon{width:56px;height:56px;font-size:1.75rem}.series-title{font-size:1.25rem}.login-page{padding:1rem}.login-card{padding:1.5rem}.login-tips{-webkit-overflow-scrolling:touch;gap:.5rem;padding:.6rem 1rem;overflow-x:auto}.tip-item{gap:.3rem;font-size:.75rem}.tip-icon{width:18px;height:18px;font-size:.65rem}}.home-new{color:#e8eaf6;scroll-behavior:smooth;scroll-snap-type:y mandatory;background:#0a0a0f;width:100%;height:calc(100vh - 56px);overflow:hidden auto}body[data-theme=light] .home-new{color:var(--foreground);background:linear-gradient(#f0f4ff 0%,#e8ecf4 50%,#f5f7fa 100%)}.snap-section{scroll-snap-align:start;scroll-snap-stop:always;flex-direction:column;min-height:calc(100vh - 56px);transition:transform .7s cubic-bezier(.34,1.56,.64,1),opacity .5s,filter .5s;display:flex}.snap-section.section-active{opacity:1;filter:blur();transform:translateY(0)scale(1)}.snap-section.section-exit-top{opacity:0;filter:blur(8px);pointer-events:none;transform:translateY(-25%)scale(.92)}.snap-section.section-exit-bottom{opacity:0;filter:blur(8px);pointer-events:none;transform:translateY(25%)scale(.92)}.snap-section.section-inactive{opacity:1;filter:blur();transform:translateY(0)scale(1)}.snap-nav-dots{z-index:50;flex-direction:column;gap:.75rem;display:flex;position:fixed;top:50%;right:1.5rem;transform:translateY(-50%)}.snap-dot{cursor:pointer;background:0 0;border:2px solid #ffffff4d;border-radius:50%;width:10px;height:10px;padding:0;transition:all .3s}body[data-theme=light] .snap-dot{border-color:#0003}.snap-dot:hover{border-color:var(--primary);transform:scale(1.2)}.snap-dot.active{background:var(--primary);border-color:var(--primary);transform:scale(1.3);box-shadow:0 0 10px #6c5ce780}.home-footer{z-index:10;text-align:center;width:100%;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.home-footer a{color:#fff6;font-size:1rem;text-decoration:none;transition:color .3s}body[data-theme=light] .home-footer a{color:#0006}.home-footer a:hover{color:var(--primary)}.hero-section{flex:1;justify-content:center;align-items:center;height:100%;padding:4rem 2rem;display:flex;position:relative;overflow:hidden}.section-active .hero-content>*{animation-play-state:running}.section-inactive .hero-content>*{animation:none}.hero-bg-effects{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-glow{filter:blur(100px);opacity:.25;border-radius:50%;animation:12s ease-in-out infinite heroGlowFloat;position:absolute}.hero-glow-1{background:#6c5ce7;width:500px;height:500px;top:-10%;left:-10%}.hero-glow-2{background:#fd79a8;width:400px;height:400px;animation-delay:-4s;bottom:-10%;right:-5%}.hero-glow-3{opacity:.12;background:#00cec9;width:300px;height:300px;animation-delay:-8s;top:40%;left:50%;transform:translate(-50%,-50%)}body[data-theme=light] .hero-glow{opacity:.12;filter:blur(120px)}body[data-theme=light] .hero-glow-1{background:#a29bfe}body[data-theme=light] .hero-glow-2{background:#fdcb6e}body[data-theme=light] .hero-glow-3{background:#55efc4}@keyframes heroGlowFloat{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-20px)scale(1.08)}66%{transform:translate(-20px,20px)scale(.95)}}.floating-words{position:absolute;inset:0;overflow:hidden}.floating-word{color:var(--float-color,#a29bfe);white-space:nowrap;pointer-events:none;letter-spacing:2px;text-transform:lowercase;font-family:Courier New,monospace;font-weight:700;animation:linear infinite floatUp;position:absolute;bottom:-10%}body[data-theme=light] .floating-word{--float-color:#6c5ce72e}@keyframes floatUp{0%{opacity:0;transform:translateY(0)rotate(0)}10%{opacity:.1}90%{opacity:.1}to{opacity:0;transform:translateY(-105vh)rotate(15deg)}}.hero-content{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:1.25rem;max-width:720px;display:flex;position:relative}.hero-badge{color:#a29bfe;background:#6c5ce726;border:1px solid #6c5ce740;border-radius:50px;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.85rem;font-weight:600;animation:.8s backwards fadeInDown;display:inline-flex}body[data-theme=light] .hero-badge{color:var(--primary);background:#6c5ce714;border-color:#6c5ce72e}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.hero-main-title{flex-direction:column;align-items:center;gap:0;line-height:1;animation:.8s .2s backwards scaleIn;display:flex}.title-line{letter-spacing:-3px;color:#e8eaf6;font-size:clamp(3.5rem,10vw,6.5rem);font-weight:900}.title-accent{background:linear-gradient(135deg,#a29bfe 0%,#fd79a8 50%,#00cec9 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 30px #a29bfe66);-webkit-background-clip:text;background-clip:text}body[data-theme=light] .title-line{color:#1a1a2e}body[data-theme=light] .title-accent{filter:drop-shadow(0 0 20px #a29bfe40)}.hero-slogan{color:#fff;margin:.5rem 0 0;font-size:clamp(1.2rem,3vw,1.75rem);font-weight:700;animation:.8s .4s backwards fadeInUp}.hero-desc{color:#ffffff8c;max-width:520px;font-size:1.05rem;font-weight:400;line-height:1.6;animation:.8s .55s backwards fadeInUp}body[data-theme=light] .hero-slogan{color:var(--foreground)}body[data-theme=light] .hero-desc{color:#00000073}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem;animation:.8s .7s backwards fadeInUp;display:flex}.hero-btn{cursor:pointer;border:none;border-radius:14px;align-items:center;gap:.5rem;padding:.85rem 2rem;font-family:inherit;font-size:1.05rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.hero-btn svg{width:20px;height:20px;transition:transform .3s}.hero-btn.primary{color:#fff;background:linear-gradient(135deg,#6c5ce7,#a29bfe);box-shadow:0 4px 24px #6c5ce766}.hero-btn.primary:hover{transform:translateY(-3px);box-shadow:0 8px 32px #6c5ce780}.hero-btn.primary:hover svg{transform:translate(4px)}.hero-btn.secondary{color:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1.5px solid #ffffff1f}body[data-theme=light] .hero-btn.secondary{color:#0009;background:#0000000a;border-color:#0000001a}.hero-btn.secondary:hover{border-color:var(--primary);color:var(--primary);background:#6c5ce71a}.features-section{background:#0a0a0f99;flex-direction:column;flex:1;justify-content:center;align-items:center;height:100%;padding:4rem 2rem;display:flex;position:relative}.section-active .section-header{animation:.7s forwards sectionSlideUp}.section-active .section-label{animation-delay:.1s}.section-active .section-title{animation-delay:.2s}.section-active .section-subtitle{animation-delay:.3s}@keyframes sectionSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}body[data-theme=light] .features-section{background:#f0f4ff99}.section-header{text-align:center;margin-bottom:4rem}.section-label{color:#a29bfe;letter-spacing:.5px;background:#6c5ce726;border:1px solid #6c5ce740;border-radius:50px;margin-bottom:1.5rem;padding:.4rem 1rem;font-size:.8rem;font-weight:600;display:inline-block}body[data-theme=light] .section-label{color:var(--primary);background:#6c5ce714;border-color:#6c5ce72e}.section-title{color:#fff;margin-bottom:.75rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.3}body[data-theme=light] .section-title{color:var(--foreground)}.section-subtitle{color:#ffffff80;font-size:1.1rem;font-weight:400}body[data-theme=light] .section-subtitle{color:#00000073}.features-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;width:100%;max-width:1100px;display:grid}@media (width<=900px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=580px){.features-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.feature-card{padding:1rem}.feature-icon-wrap{width:52px;height:52px;margin-bottom:.6rem;font-size:1.6rem}.feature-title{margin-bottom:.3rem;font-size:.95rem}.feature-desc,.feature-tags{display:none}}.feature-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;background:#2d374899;border:1.5px solid #ffffff14;border-radius:20px;padding:2rem;transition:all .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;transform:translateY(30px)}body[data-theme=light] .feature-card{background:#fffc;border-color:#0000000f;box-shadow:0 4px 20px #0000000f}.feature-card.visible{opacity:1;transform:translateY(0)}.feature-card:hover{border-color:var(--fc);transform:translateY(-4px);box-shadow:0 12px 40px #00000026}body[data-theme=light] .feature-card:hover{box-shadow:0 12px 40px #00000014}.feature-card:before{content:"";background:var(--fg);opacity:0;height:3px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.feature-card:hover:before{opacity:1}.feature-icon-wrap{background:var(--fg);border-radius:18px;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:1.25rem;font-size:2rem;display:flex;box-shadow:0 4px 15px #0003}body[data-theme=light] .feature-icon-wrap{box-shadow:0 4px 12px #0000001a}.feature-title{color:#fff;margin-bottom:.5rem;font-size:1.25rem;font-weight:700}body[data-theme=light] .feature-title{color:var(--foreground)}.feature-desc{color:#ffffff8c;margin-bottom:1rem;font-size:.9rem;line-height:1.6}body[data-theme=light] .feature-desc{color:#00000080}.feature-tags{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.feature-tag{color:#fff9;background:#ffffff0f;border:1px solid #ffffff14;border-radius:8px;padding:.25rem .65rem;font-size:.75rem;font-weight:600}body[data-theme=light] .feature-tag{color:var(--primary);background:#6c5ce70f;border-color:#6c5ce726}.cta-section{flex-direction:column;flex:1;justify-content:center;align-items:center;height:100%;padding:4rem 2rem;display:flex;position:relative;overflow:hidden}.section-active .cta-content,.section-active .stats-grid{animation:.7s forwards sectionSlideUp}.section-active .stats-grid{animation-delay:.1s}.section-active .cta-content{animation-delay:.2s}.cta-bg-effects{pointer-events:none;position:absolute;inset:0;overflow:hidden}.cta-glow{filter:blur(100px);opacity:.2;border-radius:50%;position:absolute}.cta-glow-1{background:#6c5ce7;width:400px;height:400px;animation:10s ease-in-out infinite heroGlowFloat;top:10%;right:-5%}.cta-glow-2{background:#00cec9;width:300px;height:300px;animation:10s ease-in-out infinite reverse heroGlowFloat;bottom:10%;left:-5%}body[data-theme=light] .cta-glow{opacity:.1}.stats-grid{z-index:1;grid-template-columns:repeat(4,1fr);gap:1.5rem;width:100%;max-width:800px;margin-bottom:4rem;display:grid;position:relative}@media (width<=640px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.stat-icon{font-size:3.8rem}.stat-value{font-size:2rem}.stat-label{font-size:.8rem}}.stat-card{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2d374899;border:1.5px solid #ffffff14;border-radius:20px;padding:1.75rem 1.25rem;transition:all .3s}body[data-theme=light] .stat-card{background:#fffc;border-color:#0000000f;box-shadow:0 4px 20px #0000000f}.stat-card:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:0 8px 30px #6c5ce733}.stat-icon{margin-bottom:.75rem;font-size:3.5rem;display:block}.stat-value{background:linear-gradient(135deg,#a29bfe,#fd79a8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.25rem;font-size:2.25rem;font-weight:800}body[data-theme=light] .stat-value{background:linear-gradient(135deg,#6c5ce7,#fd79a8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.stat-label{color:#ffffff80;font-size:.85rem;font-weight:500}body[data-theme=light] .stat-label{color:#00000073}.cta-content{text-align:center;z-index:1;position:relative}.cta-title{color:#fff;margin-bottom:.75rem;font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:800}body[data-theme=light] .cta-title{color:var(--foreground)}.cta-desc{color:#ffffff80;margin-bottom:2rem;font-size:1.05rem}body[data-theme=light] .cta-desc{color:#00000073}.cta-btn{cursor:pointer;color:#fff;background:linear-gradient(135deg,#6c5ce7,#a29bfe);border:none;border-radius:16px;align-items:center;gap:.5rem;padding:1rem 2.5rem;font-family:inherit;font-size:1.15rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 6px 30px #6c5ce766}.cta-btn svg{transition:transform .3s}.cta-btn:hover{transform:translateY(-3px);box-shadow:0 10px 40px #6c5ce780}.cta-btn:hover svg{transform:translate(4px)}.categories-page{color:#e8eaf6;background:#0a0a0f;flex:1;min-height:calc(100vh - 56px);padding:2rem 1.5rem;position:relative}body[data-theme=light] .categories-page{color:var(--foreground);background:#f5f7fa}.categories-loading{text-align:center;color:#ffffff80;padding:3rem;font-size:1rem}body[data-theme=light] .categories-loading{color:#00000073}.categories-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;max-width:1200px;margin:0 auto;display:grid}@media (width<=1024px){.categories-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}}@media (width<=640px){.categories-page{padding:1.5rem 1rem}.categories-title{font-size:1.5rem}.categories-subtitle{font-size:.85rem}.categories-grid{grid-template-columns:repeat(2,1fr);gap:.875rem}}@media (width<=480px){.categories-grid{grid-template-columns:1fr;gap:1rem}}@media (width<=1024px){.category-card-inner{min-height:160px;padding:1.25rem 1rem}.category-icon-wrap{width:44px;height:44px}.category-icon{font-size:1.4rem}.category-title{font-size:1rem}}@media (width<=640px){.category-card-inner{min-height:150px;padding:1.25rem 1rem}.category-icon-wrap{border-radius:12px;width:42px;height:42px;margin-bottom:.875rem}.category-icon{font-size:1.35rem}.category-title{font-size:.95rem}.category-meta{font-size:.75rem}.category-arrow{font-size:1rem;top:1rem;right:1rem}}.category-card{cursor:pointer;border-radius:16px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.category-card:hover{transform:translateY(-8px)}.category-card-glow{background:linear-gradient(135deg, var(--cat-glow), transparent);opacity:0;border-radius:16px;transition:opacity .3s;position:absolute;inset:0}.category-card:hover .category-card-glow{opacity:.08}body[data-theme=light] .category-card:hover .category-card-glow{opacity:.12}.category-card-inner{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2d374899;border:1.5px solid #ffffff14;border-radius:16px;flex-direction:column;justify-content:space-between;min-height:170px;padding:1.5rem 1.25rem;transition:all .3s;display:flex;position:relative}body[data-theme=light] .category-card-inner{background:#ffffffd9;border-color:#0000000f;box-shadow:0 4px 20px #0000000f}.category-card:hover .category-card-inner{border-color:var(--cat-color);box-shadow:0 12px 40px #0003}body[data-theme=light] .category-card:hover .category-card-inner{box-shadow:0 12px 40px #0000001a}.category-icon-wrap{background:linear-gradient(135deg, var(--cat-color), var(--cat-glow));border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1rem;transition:transform .3s;display:flex;box-shadow:0 4px 15px #0003}body[data-theme=light] .category-icon-wrap{box-shadow:0 4px 12px #0000001a}.category-card:hover .category-icon-wrap{transform:scale(1.1)rotate(-3deg)}.category-icon{font-size:1.5rem}.category-title{color:#fff;margin-bottom:.4rem;font-size:1.05rem;font-weight:700;line-height:1.4}body[data-theme=light] .category-title{color:var(--foreground)}.category-meta{color:#ffffff80;align-items:center;gap:.4rem;margin-top:auto;font-size:.8rem;display:flex}body[data-theme=light] .category-meta{color:#00000073}.meta-dot{font-weight:700}.category-arrow{color:#fff3;font-size:1.1rem;transition:all .3s;position:absolute;top:1.25rem;right:1.25rem}body[data-theme=light] .category-arrow{color:#00000026}.category-card:hover .category-arrow{color:var(--cat-color);transform:translate(4px)}@media (width>=1920px){.hero-section{padding:5rem 4rem}.snap-nav-dots{right:2rem}.hero-content{gap:2.5rem;max-width:1600px}.hero-main-title{gap:1rem;font-size:5rem}.section-title{font-size:3.5rem}.features-section,.cta-section{padding:6rem 4rem}.features-grid{grid-template-columns:repeat(4,1fr)}}@media (width>=1440px) and (width<=1919px){.hero-section{padding:5rem 3rem}.snap-nav-dots{right:1.5rem}.hero-content{gap:2rem;max-width:1400px}.hero-main-title{gap:.75rem;font-size:4.5rem}.section-title{font-size:3rem}.features-section,.cta-section{padding:5rem 3rem}.features-grid{grid-template-columns:repeat(4,1fr)}}@media (width>=768px) and (width<=1439px){.hero-section{padding:4rem 2rem}.snap-nav-dots{right:1.25rem}.hero-content{gap:1.5rem;max-width:1200px}.hero-main-title{gap:.75rem;font-size:4rem}.section-title{font-size:2.75rem}.features-section,.cta-section{padding:5rem 2rem}.features-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.hero-section{padding:3rem 1.5rem 2rem}.snap-nav-dots{right:.75rem}.hero-content{gap:1rem}.hero-actions{flex-direction:column;width:100%;max-width:300px}.hero-btn{justify-content:center;width:100%}.features-section{padding:4rem 1.5rem}.section-header{margin-bottom:2.5rem}.feature-card{padding:1.5rem}.cta-section{padding:4rem 1.5rem}.stat-card{padding:1.25rem 1rem}.stat-value{font-size:1.75rem}.categories-page{padding:1.5rem 1rem}.category-card-inner{padding:1.5rem}.login-method-tabs{gap:3px;padding:3px}.login-tab{padding:.5rem .75rem;font-size:.85rem}.qrcode-wrapper{width:180px;height:180px}.back-home-btn-prominent{padding:.6rem 1.2rem;font-size:.9rem}}:root{--admin-bg-primary:#fff;--admin-bg-secondary:#f7f8fa;--admin-bg-sidebar:#1e293b;--admin-bg-sidebar-hover:#334155;--admin-bg-sidebar-active:#3b82f6;--admin-bg-card:#fff;--admin-bg-input:#fff;--admin-bg-table-header:#f8fafc;--admin-bg-table-row-hover:#f1f5f9;--admin-bg-modal-overlay:#00000073;--admin-text-primary:#1e293b;--admin-text-secondary:#475569;--admin-text-tertiary:#94a3b8;--admin-text-sidebar:#cbd5e1;--admin-text-sidebar-active:#fff;--admin-text-placeholder:#94a3b8;--admin-border:#e2e8f0;--admin-border-light:#f1f5f9;--admin-border-input:#cbd5e1;--admin-border-input-focus:#3b82f6;--admin-shadow-sm:0 1px 2px #0000000d;--admin-shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--admin-shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000a;--admin-accent:#3b82f6;--admin-accent-hover:#2563eb;--admin-success:#22c55e;--admin-success-bg:#f0fdf4;--admin-warning:#f59e0b;--admin-warning-bg:#fffbeb;--admin-danger:#ef4444;--admin-danger-bg:#fef2f2;--admin-info:#6366f1;--admin-info-bg:#eef2ff;--admin-radius-sm:6px;--admin-radius-md:8px;--admin-radius-lg:12px;--admin-transition:.2s ease}[data-theme=dark]{--admin-bg-primary:#0f172a;--admin-bg-secondary:#1e293b;--admin-bg-sidebar:#0f172a;--admin-bg-sidebar-hover:#1e293b;--admin-bg-sidebar-active:#3b82f6;--admin-bg-card:#1e293b;--admin-bg-input:#1e293b;--admin-bg-table-header:#1e293b;--admin-bg-table-row-hover:#334155;--admin-bg-modal-overlay:#0009;--admin-text-primary:#f1f5f9;--admin-text-secondary:#cbd5e1;--admin-text-tertiary:#94a3b8;--admin-text-sidebar:#94a3b8;--admin-text-sidebar-active:#fff;--admin-text-placeholder:#64748b;--admin-border:#334155;--admin-border-light:#1e293b;--admin-border-input:#475569;--admin-border-input-focus:#3b82f6;--admin-shadow-sm:0 1px 2px #0003;--admin-shadow-md:0 4px 6px -1px #0000004d;--admin-shadow-lg:0 10px 15px -3px #0006;--admin-success-bg:#052e16;--admin-warning-bg:#422006;--admin-danger-bg:#450a0a;--admin-info-bg:#1e1b4b}.admin-layout{background:var(--admin-bg-secondary);min-height:100vh;color:var(--admin-text-primary);transition:background var(--admin-transition), color var(--admin-transition);display:flex}.admin-sidebar{background:var(--admin-bg-sidebar);width:240px;transition:width var(--admin-transition);z-index:100;border-right:1px solid #ffffff0f;flex-direction:column;display:flex;position:relative}.admin-sidebar.collapsed{width:72px}.admin-sidebar-logo{border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:center;align-items:center;gap:10px;height:64px;padding:0 16px;display:flex}.admin-sidebar-logo .logo-icon{color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;font-weight:700;display:flex}.admin-sidebar-logo .logo-text{color:#fff;white-space:nowrap;transition:opacity var(--admin-transition), width var(--admin-transition);font-size:16px;font-weight:700;overflow:hidden}.admin-sidebar.collapsed .logo-text{opacity:0;width:0}.admin-sidebar-menu{flex:1;margin:0;padding:8px;list-style:none}.admin-sidebar-menu::-webkit-scrollbar{width:4px}.admin-sidebar-menu::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.admin-menu-item{margin-bottom:2px}.admin-menu-item a,.admin-menu-item .menu-link{color:var(--admin-text-sidebar);border-radius:var(--admin-radius-sm);transition:all var(--admin-transition);cursor:pointer;align-items:center;gap:12px;padding:10px 14px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.admin-menu-item a:hover,.admin-menu-item .menu-link:hover{background:var(--admin-bg-sidebar-hover);color:var(--admin-text-sidebar-active)}.admin-menu-item.active a,.admin-menu-item.active .menu-link{background:var(--admin-bg-sidebar-active);color:var(--admin-text-sidebar-active);font-weight:600}.admin-menu-item .menu-icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:16px;display:flex}.admin-menu-item .menu-label{white-space:nowrap;transition:opacity var(--admin-transition), width var(--admin-transition);overflow:hidden}.admin-sidebar.collapsed .menu-label{opacity:0;width:0}.admin-sidebar-toggle{background:var(--admin-bg-card);border:1px solid var(--admin-border);cursor:pointer;width:28px;height:28px;color:var(--admin-text-secondary);z-index:101;box-shadow:var(--admin-shadow-md);transition:all var(--admin-transition);border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:flex;position:absolute;top:72px;right:-14px}.admin-sidebar-toggle:hover{background:var(--admin-accent);color:#fff;border-color:var(--admin-accent)}.admin-main{flex-direction:column;flex:1;min-width:0;display:flex}.admin-header{background:var(--admin-bg-primary);border-bottom:1px solid var(--admin-border);height:64px;box-shadow:var(--admin-shadow-sm);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.admin-header-left{align-items:center;gap:16px;display:flex}.admin-header-breadcrumb{color:var(--admin-text-secondary);font-size:14px}.admin-header-right{align-items:center;gap:16px;display:flex}.admin-theme-toggle{background:var(--admin-bg-secondary);border:1px solid var(--admin-border);cursor:pointer;width:36px;height:36px;transition:all var(--admin-transition);color:var(--admin-text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.admin-theme-toggle:hover{background:var(--admin-accent);color:#fff;border-color:var(--admin-accent)}.admin-user-info{border-radius:var(--admin-radius-sm);background:var(--admin-bg-secondary);align-items:center;gap:8px;padding:4px 12px;display:flex}.admin-user-info .avatar{color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:flex}.admin-user-info .name{color:var(--admin-text-primary);font-size:13px;font-weight:600}.admin-logout-btn{border:1px solid var(--admin-danger);color:var(--admin-danger);border-radius:var(--admin-radius-sm);cursor:pointer;transition:all var(--admin-transition);background:0 0;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;display:flex}.admin-logout-btn:hover{background:var(--admin-danger);color:#fff}.admin-content{background:var(--admin-bg-secondary);flex:1;padding:24px;overflow:auto}.admin-content-card{background:var(--admin-bg-primary);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);box-shadow:var(--admin-shadow-sm);min-height:500px;padding:24px}.admin-page-title{color:var(--admin-text-primary);margin:0 0 24px;font-size:22px;font-weight:700}.admin-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:28px;display:grid}.admin-stat-card{background:var(--admin-bg-primary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);transition:all var(--admin-transition);box-shadow:var(--admin-shadow-sm);align-items:center;gap:16px;padding:20px;display:flex}.admin-stat-card:hover{box-shadow:var(--admin-shadow-md);transform:translateY(-2px)}.admin-stat-icon{border-radius:var(--admin-radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;display:flex}.admin-stat-icon.green{background:var(--admin-success-bg)}.admin-stat-icon.blue{background:var(--admin-info-bg)}.admin-stat-icon.purple{background:#faf5ff}.admin-stat-icon.orange{background:var(--admin-warning-bg)}[data-theme=dark] .admin-stat-icon.purple{background:#2e1065}.admin-stat-info{flex:1}.admin-stat-value{color:var(--admin-text-primary);font-size:28px;font-weight:700;line-height:1.2}.admin-stat-label{color:var(--admin-text-secondary);margin-top:2px;font-size:13px}.admin-quick-nav{background:var(--admin-bg-primary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-lg);padding:20px 24px}.admin-quick-nav h3{color:var(--admin-text-primary);margin:0 0 16px;font-size:16px;font-weight:600}.admin-quick-nav-links{flex-wrap:wrap;gap:12px;display:flex}.admin-quick-nav-links a{background:var(--admin-bg-secondary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-sm);color:var(--admin-text-secondary);transition:all var(--admin-transition);align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.admin-quick-nav-links a:hover{background:var(--admin-accent);color:#fff;border-color:var(--admin-accent)}.admin-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.admin-page-header h2{color:var(--admin-text-primary);margin:0;font-size:20px;font-weight:700}.admin-filter-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.admin-filter-bar input[type=text],.admin-filter-bar input[type=search]{border:1px solid var(--admin-border-input);border-radius:var(--admin-radius-sm);background:var(--admin-bg-input);color:var(--admin-text-primary);min-width:200px;transition:border-color var(--admin-transition), box-shadow var(--admin-transition);outline:none;padding:8px 14px;font-size:13px}.admin-filter-bar input::placeholder{color:var(--admin-text-placeholder)}.admin-filter-bar input:focus,.admin-filter-bar select:focus{border-color:var(--admin-border-input-focus);box-shadow:0 0 0 3px #3b82f626}.admin-filter-bar select{border:1px solid var(--admin-border-input);border-radius:var(--admin-radius-sm);background:var(--admin-bg-input);color:var(--admin-text-primary);cursor:pointer;transition:border-color var(--admin-transition);appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;outline:none;padding:8px 30px 8px 12px;font-size:13px}.admin-filter-bar select option{background:var(--admin-bg-primary);color:var(--admin-text-primary)}.admin-btn{border-radius:var(--admin-radius-sm);cursor:pointer;transition:all var(--admin-transition);white-space:nowrap;border:none;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.admin-btn-primary{background:var(--admin-accent);color:#fff}.admin-btn-primary:hover{background:var(--admin-accent-hover)}.admin-btn-success{background:var(--admin-success);color:#fff}.admin-btn-success:hover{opacity:.9}.admin-btn-danger{background:var(--admin-danger);color:#fff}.admin-btn-danger:hover{opacity:.9}.admin-btn-warning{background:var(--admin-warning);color:#fff}.admin-btn-warning:hover{opacity:.9}.admin-btn-ghost{border:1px solid var(--admin-border);color:var(--admin-text-secondary);background:0 0}.admin-btn-ghost:hover{background:var(--admin-bg-secondary);border-color:var(--admin-border-input)}.admin-btn-sm{padding:5px 10px;font-size:12px}.admin-table-wrapper{border:1px solid var(--admin-border);border-radius:var(--admin-radius-md);overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table thead{background:var(--admin-bg-table-header)}.admin-table th{text-align:left;color:var(--admin-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--admin-border);white-space:nowrap;padding:12px 16px;font-size:12px;font-weight:600}.admin-table td{color:var(--admin-text-primary);border-bottom:1px solid var(--admin-border-light);padding:12px 16px;font-size:13px}.admin-table tbody tr{transition:background var(--admin-transition)}.admin-table tbody tr:hover{background:var(--admin-bg-table-row-hover)}.admin-table tbody tr:last-child td{border-bottom:none}[data-theme=dark] .admin-table tbody tr:nth-child(2n){background:#1e293b80}[data-theme=dark] .admin-table tbody tr:nth-child(2n):hover{background:var(--admin-bg-table-row-hover)}[data-theme=dark] .admin-table td{border-bottom-color:#334155}[data-theme=dark] .admin-table thead{background:#1e293b}.admin-table tbody tr:nth-child(2n){background:#fafbfc}.admin-table tbody tr:nth-child(2n):hover{background:var(--admin-bg-table-row-hover)}.admin-tag{letter-spacing:.02em;border-radius:9999px;align-items:center;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.admin-tag-success{background:var(--admin-success-bg);color:var(--admin-success)}.admin-tag-danger{background:var(--admin-danger-bg);color:var(--admin-danger)}.admin-tag-warning{background:var(--admin-warning-bg);color:var(--admin-warning)}.admin-tag-info{background:var(--admin-info-bg);color:var(--admin-info)}.admin-tag-blue{color:#2563eb;background:#dbeafe}[data-theme=dark] .admin-tag-blue{color:#60a5fa;background:#1e3a5f}[data-theme=dark] .admin-tag-success{color:#4ade80;background:#052e16}[data-theme=dark] .admin-tag-danger{color:#f87171;background:#450a0a}[data-theme=dark] .admin-tag-warning{color:#fbbf24;background:#422006}[data-theme=dark] .admin-tag-info{color:#a5b4fc;background:#1e1b4b}.admin-pagination{justify-content:space-between;align-items:center;margin-top:20px;padding:0 4px;display:flex}.admin-pagination-info{color:var(--admin-text-secondary);font-size:13px}.admin-pagination-controls{align-items:center;gap:8px;display:flex}.admin-pagination-btn{background:var(--admin-bg-primary);border:1px solid var(--admin-border);border-radius:var(--admin-radius-sm);cursor:pointer;color:var(--admin-text-secondary);transition:all var(--admin-transition);padding:6px 14px;font-size:13px}.admin-pagination-btn:hover:not(:disabled){border-color:var(--admin-accent);color:var(--admin-accent)}.admin-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.admin-pagination-current{color:var(--admin-text-primary);text-align:center;min-width:60px;font-size:13px;font-weight:600}.admin-modal-overlay{background:var(--admin-bg-modal-overlay);z-index:1000;justify-content:center;align-items:center;animation:.2s admin-fade-in;display:flex;position:fixed;inset:0}@keyframes admin-fade-in{0%{opacity:0}to{opacity:1}}.admin-modal{background:var(--admin-bg-primary);border-radius:var(--admin-radius-lg);border:1px solid var(--admin-border);width:90%;max-width:560px;max-height:85vh;box-shadow:var(--admin-shadow-lg);animation:.25s admin-slide-up}@keyframes admin-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.admin-modal-header{border-bottom:1px solid var(--admin-border);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.admin-modal-header h3{color:var(--admin-text-primary);margin:0;font-size:17px;font-weight:700}.admin-modal-close{background:var(--admin-bg-secondary);border-radius:var(--admin-radius-sm);cursor:pointer;width:32px;height:32px;color:var(--admin-text-tertiary);transition:all var(--admin-transition);border:none;justify-content:center;align-items:center;font-size:16px;display:flex}.admin-modal-close:hover{background:var(--admin-danger-bg);color:var(--admin-danger)}.admin-modal-body{padding:20px 24px}.admin-modal-footer{border-top:1px solid var(--admin-border);justify-content:flex-end;gap:10px;padding:16px 24px 20px;display:flex}.admin-form-group{margin-bottom:16px}.admin-form-group label{color:var(--admin-text-secondary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.admin-form-group label .required{color:var(--admin-danger);margin-left:2px}.admin-form-group input,.admin-form-group textarea,.admin-form-group select{border:1px solid var(--admin-border-input);border-radius:var(--admin-radius-sm);background:var(--admin-bg-input);width:100%;color:var(--admin-text-primary);transition:border-color var(--admin-transition), box-shadow var(--admin-transition);outline:none;padding:9px 14px;font-size:13px}.admin-form-group input:focus,.admin-form-group textarea:focus,.admin-form-group select:focus{border-color:var(--admin-border-input-focus);box-shadow:0 0 0 3px #3b82f626}.admin-form-group input::placeholder,.admin-form-group textarea::placeholder{color:var(--admin-text-placeholder)}.admin-form-group textarea{resize:vertical;min-height:80px}.admin-form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;padding-right:36px}.admin-form-group select option{background:var(--admin-bg-primary);color:var(--admin-text-primary)}@media (width<=768px){.admin-sidebar{z-index:200;height:100vh;transition:left var(--admin-transition);position:fixed;top:0;left:-240px}.admin-sidebar.mobile-open{left:0}.admin-sidebar.collapsed{left:-72px}.admin-stats-grid{grid-template-columns:1fr 1fr}.admin-filter-bar{flex-direction:column;align-items:stretch}.admin-filter-bar input[type=text],.admin-filter-bar input[type=search]{min-width:auto}}.admin-login-page{background:#f0f2f5;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}body[data-theme=dark] .admin-login-page{background:#1a1a2e}.admin-login-container{border-radius:16px;width:100%;max-width:900px;min-height:520px;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000001f}body[data-theme=dark] .admin-login-container{box-shadow:0 20px 60px #0006}.admin-login-banner{color:#fff;background:linear-gradient(135deg,#4338ca,#6c5ce7,#a29bfe);flex-direction:column;flex:1;justify-content:center;align-items:center;min-width:300px;padding:3rem 2.5rem;display:flex;position:relative;overflow:hidden}.admin-login-banner-content{z-index:1;text-align:center;position:relative}.admin-login-banner-icon{width:64px;height:64px;margin:0 auto 1.5rem}.admin-login-banner-icon svg{filter:drop-shadow(0 4px 12px #0003);width:100%;height:100%}.admin-login-banner h1{letter-spacing:-.5px;margin:0 0 .5rem;font-size:2rem;font-weight:800}.admin-login-banner p{opacity:.85;margin:0 0 2rem;font-size:1rem;font-weight:500}.admin-login-banner-features{flex-direction:column;align-items:flex-start;gap:.75rem;width:fit-content;margin:0 auto;display:flex}.feature-item{opacity:.9;align-items:center;gap:.75rem;font-size:.95rem;font-weight:500;display:flex}.feature-dot{background:#ffffffb3;border-radius:50%;flex-shrink:0;width:8px;height:8px}.admin-login-banner-decoration{pointer-events:none;position:absolute;inset:0}.deco-circle{border:1px solid #ffffff1a;border-radius:50%;position:absolute}.deco-circle-1{width:300px;height:300px;top:-100px;right:-80px}.deco-circle-2{width:200px;height:200px;bottom:-60px;left:-60px}.deco-circle-3{border-color:#ffffff0f;width:120px;height:120px;top:40%;left:60%}.admin-login-form-panel{background:#fff;flex:1;justify-content:center;align-items:center;min-width:360px;padding:3rem;display:flex}body[data-theme=dark] .admin-login-form-panel{background:#16213e}.admin-login-form-wrapper{width:100%;max-width:340px}.admin-login-header{margin-bottom:2rem}.admin-login-header h2{color:#1a1a2e;margin:0 0 .5rem;font-size:1.5rem;font-weight:700}body[data-theme=dark] .admin-login-header h2{color:#e8eaf6}.admin-login-header p{color:#8b8fa3;margin:0;font-size:.9rem}.admin-login-form{flex-direction:column;gap:1.25rem;display:flex}.admin-form-field label{color:#4a4d5e;margin-bottom:.4rem;font-size:.85rem;font-weight:600;display:block}body[data-theme=dark] .admin-form-field label{color:#a8b2d1}.admin-input-wrapper{background:#f8f9fc;border:2px solid #e2e5ef;border-radius:10px;align-items:center;gap:.6rem;padding:.7rem .85rem;transition:all .2s;display:flex}body[data-theme=dark] .admin-input-wrapper{background:#0f1b35;border-color:#2d3a5c}.admin-input-wrapper:focus-within{background:#fff;border-color:#6c5ce7;box-shadow:0 0 0 3px #6c5ce71f}body[data-theme=dark] .admin-input-wrapper:focus-within{background:#16213e;box-shadow:0 0 0 3px #6c5ce733}.admin-input-wrapper svg{color:#8b8fa3;flex-shrink:0}.admin-input-wrapper input{color:#1a1a2e;background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.95rem}body[data-theme=dark] .admin-input-wrapper input{color:#e8eaf6}.admin-input-wrapper input::placeholder{color:#b0b4c8}.admin-password-toggle{cursor:pointer;color:#8b8fa3;background:0 0;border:none;align-items:center;padding:2px;transition:color .2s;display:flex}.admin-password-toggle:hover{color:#6c5ce7}.admin-login-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4338ca,#6c5ce7);border:none;border-radius:10px;width:100%;margin-top:.5rem;padding:.75rem;font-family:inherit;font-size:1rem;font-weight:700;transition:all .3s}.admin-login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #4338ca66}.admin-login-btn:disabled{opacity:.65;cursor:not-allowed;transform:none}.admin-login-loading{justify-content:center;align-items:center;gap:.5rem;display:flex}.admin-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.admin-login-alert{border-radius:8px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.7rem .85rem;font-size:.85rem;font-weight:500;display:flex}.admin-login-alert-success{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}body[data-theme=dark] .admin-login-alert-success{background:#0596691a;border-color:#0596694d}.admin-login-alert-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}body[data-theme=dark] .admin-login-alert-error{background:#dc26261a;border-color:#dc26264d}.admin-login-footer{text-align:center;margin-top:2rem}.admin-back-home{color:#8b8fa3;cursor:pointer;background:0 0;border:none;align-items:center;gap:.35rem;font-family:inherit;font-size:.85rem;transition:color .2s;display:inline-flex}.admin-back-home:hover{color:#6c5ce7}@media (width<=768px){.admin-login-container{flex-direction:column;max-width:440px;min-height:auto}.admin-login-banner{min-width:unset;padding:2rem 1.5rem}.admin-login-banner h1{font-size:1.5rem}.admin-login-banner-features{flex-flow:wrap;justify-content:center}.admin-login-form-panel{min-width:unset;padding:2rem 1.5rem}}@media (width<=480px){.admin-login-page{padding:0}.admin-login-container{border-radius:0;min-height:100vh}.admin-login-banner{padding:1.5rem 1rem}.admin-login-banner-icon{width:48px;height:48px}.admin-login-banner h1{font-size:1.25rem}.admin-login-banner p{margin-bottom:1rem;font-size:.85rem}.admin-login-form-panel{padding:1.5rem 1.25rem}}.series-list-page{background:var(--background);min-height:calc(100vh - 70px);padding:2rem}.series-list-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #ffffff26;border-radius:16px;flex-wrap:wrap;align-items:center;gap:1.25rem;max-width:1400px;margin:0 auto 1.5rem;padding:1rem 1.5rem;display:flex;box-shadow:0 8px 32px #0000001a}body[data-theme=light] .series-list-header{background:#ffffffb3;border-color:#fffc;box-shadow:0 8px 32px #6c5ce71a}.series-title-area{flex:1}.series-header-filters{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.series-count{color:#fffc;white-space:nowrap;font-size:.9rem;font-weight:500}body[data-theme=light] .series-count{color:#2d3748b3}.difficulty-filter-mini select{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;min-width:80px;padding:.5rem .75rem;font-size:.85rem}body[data-theme=light] .difficulty-filter-mini select{color:#2d3748;background:#0000000d;border-color:#0000001a}.search-box-mini{align-items:center;display:flex;position:relative}.search-icon-mini{opacity:.7;font-size:.9rem;position:absolute;left:.75rem}.search-input-mini{color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;width:140px;padding:.5rem .75rem .5rem 2rem;font-size:.85rem;transition:width .3s}.search-input-mini:focus{border-color:#fff6;outline:none;width:180px}body[data-theme=light] .search-input-mini{color:#2d3748;background:#0000000d;border-color:#0000001a}body[data-theme=light] .search-input-mini:focus{border-color:#0003}.search-clear-mini{color:#fff9;cursor:pointer;background:0 0;border:none;padding:.2rem;font-size:.8rem;position:absolute;right:.5rem}body[data-theme=light] .search-clear-mini{color:#0006}.series-list-title{color:#fff;letter-spacing:-.5px;align-items:center;gap:.75rem;margin:0 0 .4rem;font-size:1.75rem;font-weight:800;display:flex}body[data-theme=light] .series-list-title{color:#2d3748}.series-list-subtitle{color:#ffffffb3;margin:0;font-size:.95rem;font-weight:500}body[data-theme=light] .series-list-subtitle{color:#2d374899}.circle-back-button{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;cursor:pointer;z-index:1000;border:none;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:1.2rem;transition:all .3s;display:flex;position:fixed;top:20px;left:20px;box-shadow:0 4px 15px #6c5ce766}.circle-back-button:hover{transform:scale(1.1)translate(-3px);box-shadow:0 6px 20px #6c5ce799}.circle-back-button:active{transform:scale(.95)translate(-3px)}.profile-back-button{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;cursor:pointer;z-index:100;border:none;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:all .3s;display:flex;position:absolute;top:50%;left:30px;transform:translateY(-50%);box-shadow:0 4px 15px #6c5ce766}.profile-back-button svg{width:24px;height:24px}.profile-back-button:hover{transform:translateY(-50%)scale(1.1);box-shadow:0 6px 20px #6c5ce799}.profile-back-button:active{transform:translateY(-50%)scale(1.05)}.profile-header-section{justify-content:space-between;align-items:center;gap:2rem;margin-bottom:2rem;display:flex}.category-info{display:none}.category-title{align-items:center;gap:1rem;margin-bottom:.5rem;font-size:2.5rem;font-weight:700;display:flex}.category-title .category-icon{font-size:2.5rem}.category-description{color:#fff9;font-size:1.1rem;line-height:1.6}body[data-theme=light] .category-description{color:#00000080}.filter-left{flex-shrink:0}.result-count{color:#ffffffb3;font-size:.95rem}.result-count strong{color:var(--primary);font-size:1.1rem}body[data-theme=light] .result-count{color:#0009}.filter-right{align-items:center;gap:1rem;display:flex}.search-box{align-items:center;display:flex;position:relative}.search-icon{opacity:.5;pointer-events:none;font-size:1rem;position:absolute;left:1rem}.search-input{width:280px;color:var(--foreground);background:#ffffff0d;border:1px solid #ffffff26;border-radius:12px;padding:.7rem 2.5rem .7rem 2.8rem;font-size:.95rem;transition:all .3s}.search-input:focus{border-color:var(--primary);background:#ffffff14;outline:none;box-shadow:0 0 0 3px #6c5ce71a}.search-input::placeholder{color:#fff6}body[data-theme=light] .search-input{background:#00000008;border-color:#0000001f}body[data-theme=light] .search-input:focus{background:#0000000d}body[data-theme=light] .search-input::placeholder{color:#00000059}.search-clear{color:#ffffff80;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1rem;transition:all .2s;position:absolute;right:.8rem}.search-clear:hover{color:var(--foreground);background:#ffffff1a}body[data-theme=light] .search-clear{color:#0006}body[data-theme=light] .search-clear:hover{background:#00000014}.difficulty-filter{flex-shrink:0}.difficulty-select{color:var(--foreground);cursor:pointer;appearance:none;background:#ffffff0d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 8L1 3h10z'/%3E%3C/svg%3E") right 1rem center no-repeat;border:1px solid #ffffff26;border-radius:12px;padding:.7rem 2.5rem .7rem 1rem;font-size:.95rem;transition:all .3s}.difficulty-select:focus{border-color:var(--primary);background-color:#ffffff14;outline:none}body[data-theme=light] .difficulty-select{background-color:#00000008;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23000000' d='M6 8L1 3h10z'/%3E%3C/svg%3E");border-color:#0000001f}body[data-theme=light] .difficulty-select:focus{background-color:#0000000d}.series-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;max-width:1400px;margin:0 auto;display:grid}.series-grid-loading{color:#fff9;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.loading-spinner{border:3px solid #ffffff1a;border-top-color:var(--primary);border-radius:50%;width:50px;height:50px;margin-bottom:1rem;animation:.8s linear infinite spin}body[data-theme=light] .loading-spinner{border-color:#0000001a;border-top-color:var(--primary)}.series-empty{text-align:center;color:#fff9;padding:4rem 2rem}.empty-icon{opacity:.5;margin-bottom:1rem;font-size:4rem}.series-empty h3{color:var(--foreground);margin-bottom:.5rem;font-size:1.5rem}.series-empty p{opacity:.7;font-size:1rem}body[data-theme=light] .series-empty{color:#00000080}.series-card{cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.series-card:hover{border-color:#ffffff26;transform:translateY(-8px);box-shadow:0 20px 40px #0000004d}body[data-theme=light] .series-card{background:#fffc;border-color:#00000014}body[data-theme=light] .series-card:hover{border-color:#00000026;box-shadow:0 20px 40px #0000001a}.series-card-glow{filter:blur(40px);opacity:0;pointer-events:none;background:radial-gradient(circle,#6c5ce726 0%,#0000 70%);border-radius:50%;width:200px;height:200px;transition:opacity .4s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.series-card:hover .series-card-glow{opacity:1}.series-card-inner{z-index:1;position:relative}.series-cover{height:180px;position:relative;overflow:hidden}.series-card:hover .cover-image{transform:scale(1.05)}.cover-placeholder{background:linear-gradient(135deg,#6c5ce733 0%,#a29bfe33 100%);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.cover-icon{opacity:.6;font-size:4rem}.series-content{padding:1.5rem}.series-title{color:var(--foreground);margin-bottom:.6rem;font-size:1.3rem;font-weight:700;line-height:1.3}.series-description{color:#fff9;min-height:2.7em;margin-bottom:1rem;font-size:.9rem;line-height:1.5}body[data-theme=light] .series-description{color:#00000080}.series-stats{border-bottom:1px solid #ffffff14;gap:1.2rem;margin-bottom:1rem;padding-bottom:1rem;display:flex}body[data-theme=light] .series-stats{border-bottom-color:#00000014}.stat-item{color:#fff9;align-items:center;gap:.4rem;font-size:.85rem;display:flex}body[data-theme=light] .stat-item{color:#00000080}.progress-section{margin-top:.5rem}.progress-info{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.progress-text{color:#fff9;font-size:.85rem}.progress-percent{color:var(--primary);font-size:.9rem;font-weight:600}body[data-theme=light] .progress-text{color:#00000080}.progress-bar{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden}body[data-theme=light] .progress-bar{background:#00000014}.series-hover-hint{opacity:0;background:linear-gradient(#0000 0%,#000c 100%);justify-content:center;padding:1rem;transition:all .3s;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(10px)}.series-card:hover .series-hover-hint{opacity:1;transform:translateY(0)}.series-hover-hint span{color:#fff;font-size:.95rem;font-weight:600}@media (width<=1024px){.series-list-page{padding:1.5rem}.series-list-header{margin-bottom:1.75rem;padding:1.25rem 1.5rem}.series-list-title{font-size:1.5rem}.series-list-subtitle{font-size:.875rem}.category-title{font-size:2rem}.series-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}}@media (width<=640px){.series-list-page{padding:1.25rem}.series-list-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 1.25rem}.series-header-filters{justify-content:flex-start;width:100%}.search-input-mini{width:120px}.search-input-mini:focus{width:150px}.series-list-title{font-size:1.35rem}.series-list-subtitle{font-size:.825rem}.category-title{flex-direction:column;align-items:flex-start;gap:.5rem;font-size:1.75rem}.category-title .category-icon{font-size:2rem}.series-grid{grid-template-columns:1fr;gap:1.25rem}.series-cover{height:160px}}@media (width<=480px){.series-list-header{gap:.75rem;margin-bottom:1.25rem;padding:.875rem 1rem}.series-list-title{font-size:1.2rem}.series-list-title .category-icon{font-size:1.5rem}.series-list-subtitle{font-size:.775rem}.series-header-filters{gap:.5rem;width:100%}.series-count{font-size:.8rem}.difficulty-filter-mini select{min-width:70px;padding:.35rem .5rem;font-size:.75rem}.search-input-mini{width:90px;padding:.35rem .5rem .35rem 1.5rem;font-size:.75rem}.search-input-mini:focus{width:110px}.search-icon-mini{font-size:.8rem;left:.4rem}}.flip-card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem;max-width:1400px;margin:0 auto;padding:1rem 2rem;display:grid}.flip-grid-loading{color:var(--foreground);opacity:.7;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.flip-card{perspective:1000px;cursor:pointer;height:340px;transition:transform .3s}.flip-card:hover{transform:translateY(-8px)}.flip-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-card-front,.flip-card-back{backface-visibility:hidden;border-radius:var(--radius-lg);width:100%;height:100%;box-shadow:var(--shadow);background:var(--card);position:absolute;overflow:hidden}.flip-card-front{z-index:2}.flip-card-back{transform:rotateY(180deg)}.card-glow{opacity:0;pointer-events:none;background:radial-gradient(circle,#6c5ce71a 0%,#0000 70%);width:200%;height:200%;transition:opacity .3s;position:absolute;top:-50%;left:-50%}.flip-card:hover .card-glow{opacity:1}.card-content{z-index:1;flex-direction:column;height:100%;display:flex;position:relative}.card-cover{background:linear-gradient(135deg, var(--primary-light) 0%, var(--primary) 100%);height:160px;position:relative;overflow:hidden}.cover-image{object-fit:cover;width:100%;height:100%;transition:transform .3s}.flip-card:hover .cover-image{transform:scale(1.05)}.cover-placeholder{justify-content:center;align-items:center;width:100%;height:100%;font-size:4rem;display:flex}.difficulty-badge{color:#fff;border-radius:20px;padding:.4rem .9rem;font-size:.8rem;font-weight:700;position:absolute;top:12px;right:12px;box-shadow:0 2px 8px #0003}.card-info{flex-direction:column;flex:1;gap:.75rem;padding:1.25rem;display:flex}.card-title{color:var(--card-foreground);margin:0;font-size:1.25rem;font-weight:700;line-height:1.4}.card-stats{flex-wrap:wrap;gap:1rem;display:flex}.stat-item{color:var(--foreground);opacity:.8;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.stat-icon{font-size:2rem}.progress-section{align-items:center;gap:.75rem;margin-top:auto;display:flex}.progress-bar{background:#0000001a;border-radius:10px;flex:1;height:6px;overflow:hidden}body[data-theme=dark] .progress-bar{background:#ffffff1a}.progress-fill{background:linear-gradient(90deg, var(--primary) 0%, var(--accent) 100%);border-radius:10px;height:100%;transition:width .6s}.flip-hint{text-align:center;color:var(--primary);opacity:0;padding:.75rem;font-size:.85rem;font-weight:600;transition:all .3s;transform:translateY(10px)}.flip-card:hover .flip-hint{opacity:1;transform:translateY(0)}.back-content{background:linear-gradient(135deg, var(--card) 0%, #6c5ce70d 100%);flex-direction:column;gap:.6rem;height:100%;padding:1.2rem;display:flex}.back-header{align-items:center;gap:.75rem;display:flex}.back-icon{font-size:1.5rem}.back-title{color:var(--card-foreground);flex:1;margin:0;font-size:1.15rem;font-weight:700}.back-stats-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.back-stat-chip{color:var(--foreground);background:0 0;border:1.5px solid;border-radius:20px;align-items:center;gap:.35rem;padding:.3rem .7rem;font-size:.78rem;font-weight:600;display:inline-flex}.stat-chip-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.back-stat-chip-solid{color:var(--foreground);background:#6c5ce714;border:none}body[data-theme=dark] .back-stat-chip-solid{background:#6c5ce72e}.word-preview{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.word-preview-title{color:var(--foreground);opacity:.5;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.4rem;font-size:.75rem;font-weight:600}.word-preview-list{flex-wrap:wrap;gap:.3rem;display:flex;overflow:hidden}.word-preview-tag{color:var(--foreground);white-space:nowrap;background:#6c5ce70f;border-radius:6px;padding:.2rem .55rem;font-size:.75rem;font-weight:500;line-height:1.5;display:inline-block}body[data-theme=dark] .word-preview-tag{background:#6c5ce724}.word-preview-more{color:var(--foreground);opacity:.5;align-items:center;padding:.2rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.back-progress-mini{margin-bottom:.5rem}.progress-mini-text{color:var(--foreground);opacity:.65;margin-bottom:.35rem;font-size:.75rem;display:block}.back-details{background:#6c5ce70d;border-radius:12px;flex-direction:column;gap:.6rem;padding:.75rem;display:flex}body[data-theme=dark] .back-details{background:#6c5ce71a}.detail-row{justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.detail-label{color:var(--foreground);opacity:.7}.detail-value{color:var(--card-foreground);font-weight:600}.back-progress{background:#00b8940d;border-radius:12px;padding:.75rem}body[data-theme=dark] .back-progress{background:#00b8941a}.progress-header{color:var(--foreground);justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:flex}.progress-count{color:var(--secondary)}.progress-bar-large{background:#0000001a;border-radius:10px;height:8px;margin-bottom:.4rem;overflow:hidden}body[data-theme=dark] .progress-bar-large{background:#ffffff1a}.progress-percent-large{text-align:right;color:var(--secondary);font-size:.9rem;font-weight:700}.back-actions{padding-top:.2rem}.action-btn{cursor:pointer;border:none;border-radius:12px;width:100%;padding:.65rem;font-size:.9rem;font-weight:700;transition:all .3s}.action-btn.primary{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);color:#fff;box-shadow:0 4px 15px #6c5ce74d}.action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6c5ce766}.expand-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.expand-card{background:var(--card);border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:80vh;animation:.4s cubic-bezier(.4,0,.2,1) slideUp;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.expand-close{cursor:pointer;z-index:10;width:40px;height:40px;color:var(--foreground);background:#0000001a;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;transition:all .3s;display:flex;position:absolute;top:1rem;right:1rem}.expand-close:hover{background:#0003;transform:rotate(90deg)}.expand-content{padding:2rem}.expand-header{text-align:center;margin-bottom:1.5rem}.expand-icon{margin-bottom:1rem;font-size:4rem;display:block}.expand-title{color:var(--card-foreground);margin:0 0 .75rem;font-size:1.75rem;font-weight:800}.expand-difficulty{color:#fff;border-radius:20px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:700;display:inline-block}.expand-description{color:var(--foreground);text-align:center;margin-bottom:1.5rem;font-size:1rem;line-height:1.8}.expand-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.expand-stat-item{background:#6c5ce70d;border-radius:12px;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;display:flex}body[data-theme=dark] .expand-stat-item{background:#6c5ce71a}.expand-stat-icon{font-size:1.75rem}.expand-stat-value{color:var(--primary);font-size:1.5rem;font-weight:800}.expand-stat-label{color:var(--foreground);opacity:.7;font-size:.85rem}.expand-progress{background:#00b8940d;border-radius:12px;margin-bottom:1.5rem;padding:1rem}body[data-theme=dark] .expand-progress{background:#00b8941a}.progress-bar-xl{background:#0000001a;border-radius:10px;height:12px;margin-top:.75rem;overflow:hidden}body[data-theme=dark] .progress-bar-xl{background:#ffffff1a}.expand-start-btn{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;padding:1.1rem;font-size:1.1rem;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #6c5ce74d}.expand-start-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6c5ce766}@media (width<=1024px){.flip-card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem;padding:1.5rem}}@media (width<=768px){.flip-card-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;padding:1rem}.flip-card{height:300px}.card-cover{height:140px}.expand-card{width:95%;max-height:90vh}.expand-content{padding:1.5rem}.expand-title{font-size:1.5rem}.expand-icon{font-size:3rem}}@media (width<=640px){.flip-card-grid{grid-template-columns:1fr;gap:1.25rem;padding:1rem}.flip-card{height:400px}}.practice-mode-wrapper{background:var(--card);flex-direction:column;justify-content:space-between;align-items:center;width:100%;height:100%;padding:2rem 1.5rem;display:flex;position:relative;overflow:hidden}.practice-bg-decoration{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.bg-circle{opacity:.08;border-radius:50%;animation:20s ease-in-out infinite floatCircle;position:absolute}.circle-1{background:linear-gradient(135deg, var(--primary), var(--primary-light));width:400px;height:400px;animation-delay:0s;top:-100px;left:-100px}.circle-2{background:linear-gradient(135deg, var(--accent), #ff9a9e);width:300px;height:300px;animation-delay:-7s;bottom:-50px;right:-80px}.circle-3{background:linear-gradient(135deg, var(--secondary), #74b9ff);width:250px;height:250px;animation-delay:-14s;top:40%;right:10%}@keyframes floatCircle{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-30px)scale(1.1)}66%{transform:translate(-20px,20px)scale(.95)}}.practice-top-bar{width:100%;max-width:800px;margin-bottom:2rem}.practice-progress-info{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.progress-label{color:var(--foreground);opacity:.7;white-space:nowrap;font-size:.9rem;font-weight:600}.practice-progress-info .progress-track{background:#00000014;border-radius:4px;flex:1;height:8px;overflow:hidden}.practice-progress-info .progress-fill{background:linear-gradient(90deg, var(--primary) 0%, var(--primary-light) 100%);border-radius:4px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.progress-text{color:var(--primary);text-align:right;min-width:60px;font-size:1rem;font-weight:700}.practice-main-content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2.5rem;width:100%;max-width:900px;display:flex}.practice-meaning-display{text-align:center;background:var(--card);border-radius:var(--radius-lg);width:80%;height:320px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-content:center;align-items:center;min-height:180px;max-height:400px;padding:3rem 2.5rem;display:flex}.meaning-content{flex-direction:column;align-items:center;gap:1.5rem;width:100%;display:flex;position:relative}.speak-again-btn{border:2px solid var(--primary);width:48px;height:48px;color:var(--primary);cursor:pointer;background:#6c5ce71a;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .3s;display:flex}.speak-again-btn:hover{background:var(--primary);color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #6c5ce74d}.speak-again-btn:active{transform:scale(.95)}.speak-again-btn svg{width:24px;height:24px}@media (width<=768px){.practice-meaning-display{width:90%;height:auto;min-height:120px;max-height:200px;padding:1.5rem 1.2rem}.meaning-content{gap:1rem}.speak-again-btn{width:40px;height:40px}.speak-again-btn svg{width:20px;height:20px}.circle-1{width:250px;height:250px}.circle-2{width:200px;height:200px}.circle-3{width:150px;height:150px}}@media (width<=480px){.practice-meaning-display{width:95%;min-height:100px;max-height:160px;padding:1.2rem 1rem}.meaning-content{gap:.8rem}.speak-again-btn{width:36px;height:36px}.speak-again-btn svg{width:18px;height:18px}}.meaning-text{color:var(--foreground);letter-spacing:-.5px;margin:0;font-size:2.5rem;font-weight:700;line-height:1.5}@media (width<=768px){.meaning-text{font-size:1.8rem;line-height:1.4}}@media (width<=480px){.meaning-text{font-size:1.5rem;line-height:1.35}}.practice-input-area{justify-content:center;width:100%;padding:2rem 0;display:flex}.blanks-display{background:var(--card);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;min-height:100px;padding:1.5rem 2rem;display:flex}.blank-char{border-bottom:4px solid var(--border);width:48px;height:60px;color:var(--foreground);text-transform:lowercase;background:#ffffff80;border-radius:8px 8px 0 0;justify-content:center;align-items:center;font-family:Courier New,Consolas,monospace;font-size:2rem;font-weight:700;transition:all .2s;display:inline-flex}.blank-char.current-position{border-bottom-color:var(--primary);animation:1s ease-in-out infinite cursorBlink;position:relative}.blank-char.current-position:after{content:"";background:var(--primary);border-radius:2px;width:32px;height:4px;animation:1s ease-in-out infinite cursorPulse;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.blank-char.correct.current-position,.blank-char.wrong.current-position{animation:none}.blank-char.correct.current-position:after,.blank-char.wrong.current-position:after{display:none}@keyframes cursorBlink{0%,to{border-bottom-color:var(--primary);background:#6c5ce714}50%{background:#6c5ce708;border-bottom-color:#0000}}@keyframes cursorPulse{0%,to{opacity:1;transform:translate(-50%)scaleX(1)}50%{opacity:.3;transform:translate(-50%)scaleX(.8)}}.blank-char.correct{border-bottom-color:var(--secondary);color:var(--secondary);background:#00b8941a;animation:.5s correctBounce}.blank-char.wrong{color:#e74c3c;background:#e74c3c26;border-bottom-color:#e74c3c;animation:.6s shakeError,.6s flashRed}.blank-char.revealed{color:#e67e22;background:#e67e221f;border-bottom-color:#e67e22;animation:.35s fadeInUp}@keyframes flashRed{0%,to{background:#e74c3c26}50%{background:#e74c3c4d}}.blank-space{width:24px;color:var(--foreground);opacity:.4;justify-content:center;align-items:center;font-size:2rem;font-weight:700;display:inline-flex}@keyframes correctBounce{0%,to{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}@keyframes shakeError{0%,to{transform:translate(0)}10%{transform:translate(-12px)rotate(-2deg)}20%{transform:translate(12px)rotate(2deg)}30%{transform:translate(-10px)rotate(-1deg)}40%{transform:translate(10px)rotate(1deg)}50%{transform:translate(-8px)}60%{transform:translate(8px)}70%{transform:translate(-4px)}80%{transform:translate(4px)}90%{transform:translate(-2px)}}.practice-hidden-input{opacity:.01;border:none;outline:none;width:1px;height:1px;margin:0;padding:0;position:fixed;top:0;left:0}.practice-action-area{justify-content:center;align-items:center;width:100%;min-height:80px;display:flex}.practice-hint{color:var(--foreground);opacity:.6;font-size:1.1rem;font-style:italic}.practice-success{border:2px solid var(--secondary);border-radius:var(--radius);background:#00b8941a;align-items:center;gap:1rem;padding:1rem 2rem;animation:.3s fadeInUp;display:flex}.success-icon{color:var(--secondary);font-size:2rem;font-weight:700}.success-text{color:var(--secondary);font-size:1.2rem;font-weight:600}.next-word-btn{color:#fff;background:var(--secondary);cursor:pointer;border:none;border-radius:8px;margin-left:1rem;padding:.6rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s}.next-word-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00b8944d}.next-word-btn:active{transform:translateY(0)}.practice-error{border-radius:var(--radius);background:#e74c3c1a;border:2px solid #e74c3c;align-items:center;gap:.8rem;padding:1rem 2rem;animation:.3s fadeInUp;display:flex}.error-icon{color:#e74c3c;font-size:2rem;font-weight:700}.error-text{color:#e74c3c;font-size:1.2rem;font-weight:600}.practice-show-answer{animation:.35s fadeInUp}.show-answer-btn{color:#e67e22;cursor:pointer;background:#e67e221f;border:2px solid #e67e2266;border-radius:12px;align-items:center;gap:.5rem;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:all .25s;display:flex}.show-answer-btn:hover{background:#e67e2233;border-color:#e67e22;transform:translateY(-2px);box-shadow:0 4px 16px #e67e2240}.show-answer-btn:active{transform:translateY(0)}.show-answer-btn .esc-hint{opacity:.6;background:#0000001a;border-radius:4px;padding:.1rem .4rem;font-size:.75rem;font-weight:500}.practice-revealed{border-radius:var(--radius);background:#e67e221a;border:2px solid #e67e2266;align-items:center;gap:.8rem;padding:1rem 2rem;animation:.35s fadeInUp;display:flex}.revealed-icon{font-size:1.5rem}.revealed-word{color:#e67e22;letter-spacing:2px;font-size:1.3rem;font-weight:700}.revealed-text{color:#e67e22;opacity:.7;margin-left:.5rem;font-size:.95rem}.practice-hidden-input.input-hidden{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.practice-bottom-bar{background:var(--card);border-radius:var(--radius);width:100%;max-width:800px;box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:2rem;padding:1.2rem 1.8rem;display:flex}.bottom-left-info{flex-shrink:0}.word-counter{align-items:baseline;gap:.3rem;font-size:1.3rem;font-weight:700;display:flex}.current-num{color:var(--primary);font-size:2rem}.separator{opacity:.4;margin:0 .2rem}.total-num{opacity:.6}.bottom-progress-section{flex:1;align-items:center;gap:1.5rem;display:flex}.progress-track-small{background:#00000014;border-radius:3px;flex:1;max-width:300px;height:6px;overflow:hidden}.progress-fill-small{background:linear-gradient(90deg, var(--primary) 0%, var(--primary-light) 100%);border-radius:3px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.keyboard-hint{color:var(--foreground);opacity:.7;white-space:nowrap;align-items:center;gap:.5rem;font-size:.95rem;display:flex}.keyboard-hint kbd{background:var(--background);border:2px solid var(--border);box-shadow:0 2px 0 var(--border);border-radius:6px;padding:.3rem .8rem;font-family:Courier New,monospace;font-size:.9rem;font-weight:600;display:inline-block}.practice-complete{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2rem;padding:4rem 2rem;animation:.5s fadeInUp;display:flex}.complete-icon{font-size:6rem;animation:1s infinite celebrate}@keyframes celebrate{0%,to{transform:scale(1)rotate(0)}25%{transform:scale(1.1)rotate(-5deg)}50%{transform:scale(1.2)rotate(5deg)}75%{transform:scale(1.1)rotate(-3deg)}}.practice-complete h2{color:var(--primary);margin:0;font-size:3rem;font-weight:800}.practice-complete p{color:var(--foreground);opacity:.7;margin:0;font-size:1.3rem}.restart-btn{color:#fff;background:linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);cursor:pointer;border:none;border-radius:12px;padding:1rem 3rem;font-size:1.2rem;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #6c5ce74d}.restart-btn:hover{transform:translateY(-3px);box-shadow:0 6px 20px #6c5ce766}.restart-btn:active{transform:translateY(-1px)}@media (width<=768px){.practice-mode-wrapper{padding:1.5rem 1rem}.meaning-text{font-size:1.8rem}.practice-meaning-display{min-height:140px;padding:2rem 1.5rem}.blank-char{border-bottom-width:3px;width:36px;height:48px;font-size:1.5rem}.blank-space{width:18px;font-size:1.5rem}.blanks-display{gap:.4rem;padding:1rem}.success-text,.error-text{font-size:1rem}.next-word-btn{padding:.5rem 1.2rem;font-size:.9rem}.current-num{font-size:1.6rem}.word-counter{font-size:1.1rem}.practice-bottom-bar{gap:1rem;padding:1rem 1.2rem}.bottom-progress-section{gap:1rem}.progress-track-small{max-width:150px}.keyboard-hint{font-size:.85rem}.practice-complete h2{font-size:2.2rem}.complete-icon{font-size:4.5rem}}.speak-hint-btn{color:var(--primary);cursor:pointer;background:#ffffff1a;border:2px solid #6c5ce766;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;min-width:120px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.speak-hint-btn:hover{border-color:var(--primary);background:#6c5ce71a;transform:translateY(-2px);box-shadow:0 4px 12px #6c5ce733}.speak-hint-btn svg{width:20px;height:20px}.speak-prompt{color:var(--primary);opacity:.8;margin-top:.8rem;font-size:.9rem;font-weight:600}.word-spelling-display{letter-spacing:2px;color:var(--foreground);text-align:center;border:2px dashed var(--border);background:#6c5ce70d;border-radius:8px;padding:1.5rem;font-size:2rem;font-weight:700}
