html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}:root{--ios-bg-start: #F5F5F7;--ios-bg-end: #E8E8ED;--ios-card-bg: rgba(255, 255, 255, .72);--ios-text-primary: #1D1D1F;--ios-text-secondary: #86868B;--ios-accent: #007AFF;--ios-accent-light: rgba(0, 122, 255, .1);--ios-border: rgba(0, 0, 0, .06);--ios-input-bg: rgba(255, 255, 255, .8);--ios-shadow: 0 2px 8px rgba(0, 0, 0, .04);--ios-radius-sm: 12px;--ios-radius-md: 16px;--ios-radius-lg: 20px}.ios-login-container{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--ios-bg-start) 0%,var(--ios-bg-end) 100%);padding:24px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ios-login-content{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;animation:iosFadeIn .5s cubic-bezier(.25,.1,.25,1)}.ios-logo-section{display:flex;flex-direction:column;align-items:center;margin-bottom:36px;padding-top:20px}.ios-logo{width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:18px;margin-bottom:16px;box-shadow:0 8px 24px #667eea40}.ios-logo-icon{font-size:36px;line-height:1}.ios-brand-name{font-size:28px;font-weight:600;color:var(--ios-text-primary);margin:0 0 4px;letter-spacing:-.5px}.ios-subtitle{font-size:15px;color:var(--ios-text-secondary);margin:0;font-weight:400}.ios-mode-toggle{display:flex;background:var(--ios-input-bg);border-radius:var(--ios-radius-md);padding:4px;margin-bottom:28px;width:100%;max-width:240px;box-shadow:var(--ios-shadow),inset 0 1px 1px #fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.ios-mode-btn{flex:1;padding:10px 16px;border:none;background:transparent;border-radius:var(--ios-radius-sm);font-size:14px;font-weight:500;color:var(--ios-text-secondary);cursor:pointer;transition:all .25s cubic-bezier(.25,.1,.25,1)}.ios-mode-btn.active{background:#fff;color:var(--ios-text-primary);box-shadow:0 2px 8px #00000014}.ios-mode-btn:not(.active):hover{color:var(--ios-text-primary)}.ios-login-form{width:100%;max-width:320px}.ios-login-form .ant-form-item{margin-bottom:16px}.ios-input{height:52px!important;border-radius:var(--ios-radius-lg)!important;background:var(--ios-input-bg)!important;border:1px solid var(--ios-border)!important;font-size:16px!important;padding:0 16px 0 44px!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:all .2s ease!important;box-shadow:var(--ios-shadow)}.ios-input:hover{border-color:#0000001f!important}.ios-input:focus,.ios-input.ant-input-affix-wrapper-focused{border-color:var(--ios-accent)!important;box-shadow:0 0 0 4px var(--ios-accent-light),var(--ios-shadow)!important;background:#fff!important}.ios-input .ant-input{font-size:16px!important;height:100%!important;background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.ios-input .ant-input-prefix{position:absolute;left:16px;top:50%;transform:translateY(-50%);margin-right:0}.ios-input-icon{color:var(--ios-text-secondary);font-size:18px}.ios-login-button{height:52px!important;border-radius:var(--ios-radius-lg)!important;background:linear-gradient(180deg,#34c759,#30b050)!important;border:none!important;font-size:17px!important;font-weight:600!important;color:#fff!important;letter-spacing:-.2px;transition:all .25s cubic-bezier(.25,.1,.25,1)!important;box-shadow:0 2px 8px #34c75933,0 1px 2px #0000000d!important;margin-top:8px}.ios-login-button:hover:not(:disabled){background:linear-gradient(180deg,#30b050,#28a745)!important;box-shadow:0 4px 12px #34c7594d,0 2px 4px #0000000d!important;transform:translateY(-1px)}.ios-login-button:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 4px #34c75933,0 1px 2px #0000000d!important}.ios-login-button:disabled{background:linear-gradient(180deg,#c8c8cc,#bebec2)!important;box-shadow:none!important;color:#fff!important;cursor:not-allowed}.ios-footer{margin-top:40px;text-align:center}.ios-footer-text{font-size:12px;color:var(--ios-text-secondary);margin:0 0 6px}.ios-footer-links{display:flex;align-items:center;justify-content:center;gap:4px}.ios-footer-links a{font-size:12px;color:var(--ios-accent);text-decoration:none}.ios-footer-links a:hover{text-decoration:underline}.ios-footer-divider{font-size:12px;color:var(--ios-text-secondary)}.ios-login-form .ant-form-item-explain-error{font-size:12px;color:#ff3b30;margin-top:8px;padding-left:4px}@media (max-width: 390px){.ios-login-container{padding:16px}.ios-login-content,.ios-login-form,.ios-mode-toggle{max-width:100%}.ios-logo{width:64px;height:64px;border-radius:16px}.ios-logo-icon{font-size:32px}.ios-brand-name{font-size:24px}.ios-input,.ios-login-button{height:50px!important}}@media (prefers-color-scheme: dark){:root{--ios-bg-start: #1C1C1E;--ios-bg-end: #000000;--ios-card-bg: rgba(44, 44, 46, .72);--ios-text-primary: #F5F5F7;--ios-text-secondary: #8E8E93;--ios-border: rgba(255, 255, 255, .1);--ios-input-bg: rgba(44, 44, 46, .6);--ios-shadow: 0 2px 8px rgba(0, 0, 0, .2)}.ios-mode-toggle{background:#2c2c2e99}.ios-mode-btn.active{background:#3a3a3c}.ios-input{background:#2c2c2e99!important}.ios-input:focus,.ios-input.ant-input-affix-wrapper-focused{background:#3a3a3ccc!important}}:root{--ios-bg-start: #F5F5F7;--ios-bg-end: #E8E8ED;--ios-text-primary: #1D1D1F;--ios-text-secondary: #86868B;--ios-accent: #007AFF;--ios-accent-light: rgba(0, 122, 255, .1);--ios-border: rgba(0, 0, 0, .06);--ios-input-bg: rgba(255, 255, 255, .8);--ios-shadow: 0 2px 8px rgba(0, 0, 0, .04);--ios-radius-lg: 20px;--ios-green: #34C759;--ios-green-light: rgba(52, 199, 89, .1)}.mobile-login-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--ios-bg-start) 0%,var(--ios-bg-end) 100%);padding:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.mobile-login-content{flex:1;display:flex;flex-direction:column;justify-content:center;padding:32px 24px;max-width:100%;box-sizing:border-box;animation:iosFadeIn .5s cubic-bezier(.25,.1,.25,1)}@keyframes iosFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.mobile-logo-section{display:flex;flex-direction:column;align-items:center;margin-bottom:40px;padding-top:20px}.mobile-brand-name{font-size:28px;font-weight:600;color:var(--ios-text-primary);margin:0 0 6px;letter-spacing:-.5px}.mobile-subtitle{font-size:15px;color:var(--ios-text-secondary);margin:0;font-weight:400}.mobile-login-form{width:100%;max-width:320px;margin:0 auto}.mobile-login-form .ant-form-item{margin-bottom:16px}.mobile-input{height:52px!important;border-radius:var(--ios-radius-lg)!important;background:var(--ios-input-bg)!important;border:1px solid var(--ios-border)!important;font-size:16px!important;padding:0 16px!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:all .2s ease!important;box-shadow:var(--ios-shadow)}.mobile-input:hover{border-color:#0000001f!important}.mobile-input:focus,.mobile-input.ant-input-affix-wrapper-focused{border-color:var(--ios-accent)!important;box-shadow:0 0 0 4px var(--ios-accent-light),var(--ios-shadow)!important;background:#fff!important}.mobile-input .ant-input{font-size:16px!important;height:auto!important;background:transparent!important}.mobile-input .ant-input-prefix{margin-right:12px;color:var(--ios-text-secondary);font-size:18px}.mobile-login-button{height:52px!important;border-radius:var(--ios-radius-lg)!important;background:linear-gradient(180deg,var(--ios-green) 0%,#30B050 100%)!important;border:none!important;font-size:17px!important;font-weight:600!important;color:#fff!important;letter-spacing:-.2px;transition:all .25s cubic-bezier(.25,.1,.25,1)!important;box-shadow:0 2px 8px #34c75933,0 1px 2px #0000000d!important}.mobile-login-button:hover:not(:disabled){background:linear-gradient(180deg,#30b050,#28a745)!important;box-shadow:0 4px 12px #34c7594d,0 2px 4px #0000000d!important;transform:translateY(-1px)}.mobile-login-button:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 4px #34c75933,0 1px 2px #0000000d!important}.mobile-login-button:disabled{background:linear-gradient(180deg,#c8c8cc,#bebec2)!important;box-shadow:none!important;color:#fff!important;cursor:not-allowed}.mobile-mode-toggle{display:flex;justify-content:center;gap:16px;margin-top:24px}.mobile-mode-btn{padding:8px 16px;border:none;background:transparent;font-size:14px;font-weight:500;color:var(--ios-text-secondary);cursor:pointer;transition:all .2s ease;border-radius:20px}.mobile-mode-btn.active{color:var(--ios-accent);background:var(--ios-accent-light)}.mobile-mode-btn:not(.active):hover{color:var(--ios-text-primary)}.mobile-footer{text-align:center;margin-top:40px;padding-bottom:20px}.mobile-footer-text{color:var(--ios-text-secondary);font-size:13px;margin:0}.mobile-login-form .ant-form-item-explain-error{font-size:12px;color:#ff3b30;margin-top:8px;padding-left:4px}@media (max-width: 390px){.mobile-login-content{padding:24px 20px}.mobile-login-form{max-width:100%}.mobile-brand-name{font-size:24px}.mobile-input,.mobile-login-button{height:50px!important}}@media (prefers-color-scheme: dark){:root{--ios-bg-start: #1C1C1E;--ios-bg-end: #000000;--ios-text-primary: #F5F5F7;--ios-text-secondary: #8E8E93;--ios-border: rgba(255, 255, 255, .1);--ios-input-bg: rgba(44, 44, 46, .6);--ios-shadow: 0 2px 8px rgba(0, 0, 0, .2)}.mobile-input{background:#2c2c2e99!important}.mobile-input:focus,.mobile-input.ant-input-affix-wrapper-focused{background:#3a3a3ccc!important}}.tablet-login-container{min-height:100vh;display:flex;background:#f5f5f5}.tablet-login-left{flex:1;background:linear-gradient(135deg,#1565c0,#1976d2,#42a5f5);display:flex;align-items:center;justify-content:center;padding:48px}.tablet-decoration{text-align:center;color:#fff}.tablet-welcome-title{font-size:36px;font-weight:700;margin:0 0 16px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.tablet-welcome-text{font-size:18px;opacity:.9;line-height:1.6;margin:0}.tablet-login-right{flex:1;display:flex;align-items:center;justify-content:center;padding:48px;background:#fff}.tablet-login-card{width:100%;max-width:420px}.tablet-logo-section{text-align:center;margin-bottom:40px}.tablet-brand-name{font-size:28px;font-weight:700;color:#1a1a1a;margin:0 0 8px}.tablet-subtitle{font-size:16px;color:#666;margin:0}.tablet-login-form .ant-form-item{margin-bottom:24px}.tablet-login-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#333}.tablet-input{height:52px!important;border-radius:10px!important;font-size:16px!important;border:1px solid #E0E0E0!important}.tablet-input:focus,.tablet-input.ant-input-affix-wrapper-focused{border-color:#1976d2!important;box-shadow:0 0 0 3px #1976d21a!important}.tablet-input .ant-input{font-size:16px!important}.tablet-input .ant-input-prefix{margin-right:12px;color:#9e9e9e;font-size:16px}.tablet-login-button{height:52px!important;border-radius:10px!important;font-size:17px!important;font-weight:600!important;background:#1976d2!important;border:none!important;box-shadow:0 4px 12px #1976d240!important}.tablet-login-button:hover:not(:disabled),.tablet-login-button:focus:not(:disabled){background:#1565c0!important;box-shadow:0 6px 16px #1976d259!important}.tablet-login-button:disabled{background:#bbdefb!important;box-shadow:none!important}.tablet-footer{text-align:center;margin-top:32px}.tablet-footer-text{color:#999;font-size:14px}@media (orientation: portrait){.tablet-login-container{flex-direction:column}.tablet-login-left{flex:0 0 auto;padding:48px 32px}.tablet-welcome-title{font-size:28px}.tablet-welcome-text{font-size:16px}.tablet-login-right{flex:1;padding:32px}}.ios-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--ios-bg)}.ios-layout-content{flex:1;min-width:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--ios-tabbar-height) + var(--ios-safe-area-bottom, 20px) + 16px)}.ios-tabbar{position:fixed;bottom:0;left:0;right:0;z-index:10000;background:#ffffffe0;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:28px 28px 0 0;box-shadow:0 -2px 16px #0000000f,0 -8px 32px #00000005;padding-bottom:env(safe-area-inset-bottom,16px);padding-top:8px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.tabbar-inner{display:flex;align-items:center;justify-content:space-around;padding:0 8px;max-width:500px;margin:0 auto}.tabbar-item{flex:1;display:flex;align-items:center;justify-content:center;padding:8px 4px;border:none;background:transparent;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.tab-item-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:48px;padding:0 14px;border-radius:999px;transition:all .25s cubic-bezier(.34,1.56,.64,1)}.tab-icon{font-size:22px;color:var(--ios-text-secondary);display:flex;align-items:center;justify-content:center;transition:color .2s ease,transform .25s cubic-bezier(.34,1.56,.64,1)}.tab-label{font-size:10px;font-weight:500;color:var(--ios-text-secondary);white-space:nowrap;transition:color .2s ease,font-weight .2s ease}.tabbar-item.active .tab-item-inner{background:linear-gradient(135deg,#34c759,#5edb84);box-shadow:0 4px 12px #34c7592e,0 2px 4px #34c7591f}.tabbar-item.active .tab-icon{color:#fff;transform:scale(1.05)}.tabbar-item.active .tab-label{color:#fff;font-weight:600}.tabbar-item:hover:not(.active){opacity:1}.tabbar-item:hover:not(.active) .tab-icon{color:var(--ios-text-primary)}.tabbar-item:hover:not(.active) .tab-label{color:var(--ios-text-primary)}.tabbar-item:active{transform:scale(.95)}.tabbar-item.active:active .tab-item-inner{transform:scale(.95);box-shadow:0 2px 6px #34c75926}@media (prefers-color-scheme: dark){.ios-tabbar{background:#2c2c2ee0;box-shadow:0 -2px 16px #00000026,0 -8px 32px #00000014}.tabbar-item:hover:not(.active) .tab-icon,.tabbar-item:hover:not(.active) .tab-label{color:#ffffffe6}}body.dark-mode .ios-tabbar,.ios-layout.dark-mode .ios-tabbar{background:#2c2c2ee0;box-shadow:0 -2px 16px #00000026,0 -8px 32px #00000014}@media (orientation: landscape) and (max-height: 500px){.ios-tabbar{border-radius:16px 16px 0 0;padding-top:4px}.tab-item-inner{height:40px;padding:0 12px;gap:2px}.tab-icon{font-size:18px}.tab-label{font-size:9px}.ios-layout-content{padding-bottom:calc(60px + var(--ios-safe-area-bottom, 8px) + 8px)}}@media (max-width: 360px){.tab-item-inner{padding:0 10px}.tab-label{font-size:9px}.tab-icon{font-size:20px}}@media (min-height: 900px) and (min-width: 400px){.ios-tabbar{left:16px;right:16px;max-width:calc(100% - 32px);margin:0 auto}}@media (min-width: 768px){.ios-tabbar{max-width:500px;left:50%;right:auto;transform:translate(-50%);border-radius:32px 32px 0 0}}.mobile-dashboard{padding-bottom:20px}.mobile-dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:300px}.mobile-dashboard .page-title{font-size:20px;font-weight:600;color:#333;margin:0 0 16px}.mobile-dashboard .stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.mobile-dashboard .stat-card{border-radius:12px;cursor:pointer;transition:transform .2s}.mobile-dashboard .stat-card:active{transform:scale(.98)}.mobile-dashboard .stat-card .ant-statistic-title{font-size:12px;color:#666}.mobile-dashboard .stat-card .ant-statistic-content-value{color:#42a5f5!important}.mobile-dashboard .section-card{border-radius:12px;margin-bottom:16px}.mobile-dashboard .section-card .ant-card-head{min-height:auto;padding:12px 16px}.mobile-dashboard .section-card .ant-card-body{padding:12px 16px}.mobile-dashboard .section-title{font-size:14px;font-weight:600;color:#333;display:flex;align-items:center;gap:8px}.mobile-dashboard .approval-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.mobile-dashboard .favorite-stat{text-align:center;padding:16px 0;border-bottom:1px solid #f0f0f0;margin-bottom:12px}.mobile-dashboard .favorite-total .number{font-size:32px;font-weight:600;color:#42a5f5}.mobile-dashboard .favorite-total .label{display:block;font-size:12px;color:#666;margin-top:4px}.mobile-dashboard .top-teachers .sub-title{font-size:12px;color:#999;margin-bottom:8px}.mobile-dashboard .top-item{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px dashed #f0f0f0}.mobile-dashboard .top-item:last-child{border-bottom:none}.mobile-dashboard .top-item .rank{width:20px;height:20px;background:#42a5f5;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.mobile-dashboard .top-item .name{flex:1;font-size:14px;color:#333}.tablet-dashboard{padding-bottom:20px}.tablet-dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.tablet-dashboard .page-header{margin-bottom:20px}.tablet-dashboard .page-title{font-size:22px;font-weight:600;color:#333;margin:0 0 4px;display:flex;align-items:center;gap:8px}.tablet-dashboard .page-subtitle{font-size:14px;color:#666;margin:0}.tablet-dashboard .stats-row{margin-bottom:16px}.tablet-dashboard .stat-card{border-radius:12px;transition:transform .2s,box-shadow .2s}.tablet-dashboard .stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.tablet-dashboard .section-card{border-radius:12px;margin-bottom:16px}.tablet-dashboard .section-title{font-size:15px;font-weight:600;color:#333;display:flex;align-items:center;gap:8px}.tablet-dashboard .approval-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.tablet-dashboard .favorite-stat{text-align:center;padding:16px 0;border-bottom:1px solid #f0f0f0;margin-bottom:16px}.tablet-dashboard .top-teachers .sub-title{font-size:13px;color:#666;margin-bottom:12px;font-weight:500}.tablet-dashboard .top-item{display:flex;align-items:center;gap:12px;width:100%}.tablet-dashboard .top-item .rank{width:24px;height:24px;background:#42a5f5;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.tablet-dashboard .top-item .name{flex:1;font-size:14px;color:#333}.mobile-cs-dashboard{padding-bottom:20px}.mobile-cs-dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:300px}.mobile-cs-dashboard .page-title{font-size:20px;font-weight:600;color:#333;margin:0 0 16px}.mobile-cs-dashboard .stats-list{display:flex;flex-direction:column;gap:12px}.mobile-cs-dashboard .stat-card{border-radius:12px;cursor:pointer;transition:transform .2s}.mobile-cs-dashboard .stat-card:active{transform:scale(.98)}.mobile-cs-dashboard .stat-card .ant-statistic-title{font-size:12px;color:#666}.mobile-cs-dashboard .stat-card .ant-statistic-content-value{color:#42a5f5!important}.tablet-cs-dashboard{padding-bottom:20px}.tablet-cs-dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.tablet-cs-dashboard .page-header{margin-bottom:20px}.tablet-cs-dashboard .page-title{font-size:22px;font-weight:600;color:#333;margin:0 0 4px;display:flex;align-items:center;gap:8px}.tablet-cs-dashboard .page-subtitle{font-size:14px;color:#666;margin:0}.tablet-cs-dashboard .stats-row{margin-bottom:16px}.tablet-cs-dashboard .stat-card{border-radius:12px;transition:transform .2s,box-shadow .2s}.tablet-cs-dashboard .stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.cs-dashboard{padding-bottom:20px}.cs-dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.cs-dashboard .page-header{margin-bottom:20px}.cs-dashboard .page-title{font-size:22px;font-weight:600;color:#333;margin:0 0 4px;display:flex;align-items:center;gap:8px}.cs-dashboard .page-subtitle{font-size:14px;color:#666;margin:0}.cs-dashboard .stats-row{margin-bottom:16px}.cs-dashboard .stat-card{border-radius:12px;transition:transform .2s,box-shadow .2s}.cs-dashboard .stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.fullscreen-video-modal{z-index:99999!important}.fullscreen-video-modal .ant-modal{margin:0!important;padding:0!important;max-width:100vw!important;top:0!important}.fullscreen-video-modal .ant-modal-content{height:100vh!important;border-radius:0!important}.fullscreen-video-modal .ant-modal-wrap{height:100vh!important}.mobile-teachers{--mt-primary: #007AFF;--mt-primary-light: rgba(0, 122, 255, .1);--mt-success: #34C759;--mt-warning: #FF9F0A;--mt-danger: #FF3B30;--mt-text-primary: #1D1D1F;--mt-text-secondary: #6E6E73;--mt-text-tertiary: #8E8E93;--mt-bg: #F2F2F7;--mt-card-bg: #FFFFFF;--mt-border: rgba(0, 0, 0, .06);--mt-radius: 12px;--mt-radius-lg: 16px;--mt-shadow: 0 2px 12px rgba(0, 0, 0, .08);--mt-safe-bottom: env(safe-area-inset-bottom, 20px)}.mobile-teachers{min-height:100vh;background:var(--mt-bg);padding-bottom:calc(80px + var(--mt-safe-bottom))}.mt-header{background:var(--mt-card-bg);padding:20px 16px 16px;border-bottom:1px solid var(--mt-border)}.mt-title{font-size:28px;font-weight:700;color:var(--mt-text-primary);margin:0;letter-spacing:-.5px}.mt-subtitle{font-size:14px;color:var(--mt-text-secondary);margin:4px 0 0}.mt-search{padding:12px 16px;background:var(--mt-card-bg)}.mt-search-input{width:100%;height:40px;background:var(--mt-bg)!important;border:none!important;border-radius:10px!important;padding:0 12px!important;font-size:15px!important}.mt-search-input .ant-input{background:transparent!important}.mt-search-input:focus,.mt-search-input.ant-input-affix-wrapper-focused{border:none!important;box-shadow:none!important;background:var(--mt-bg)!important}.mt-filters{padding:0 16px 12px;background:var(--mt-card-bg)}.mt-filter-scroll{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4px}.mt-filter-scroll::-webkit-scrollbar{display:none}.mt-filter-chip{flex-shrink:0;padding:6px 14px;font-size:13px;font-weight:500;color:var(--mt-text-secondary);background:var(--mt-bg);border:none;border-radius:16px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.mt-filter-chip:active{transform:scale(.96)}.mt-filter-chip.active{color:#fff;background:var(--mt-primary)}.mt-add{padding:12px 16px;background:var(--mt-card-bg)}.mt-add-btn{width:100%;height:44px!important;font-size:15px!important;font-weight:600!important;background:var(--mt-primary)!important;border:none!important;border-radius:10px!important}.mt-add-btn:hover{background:#0066d6!important}.mt-list{padding:12px 16px}.mt-loading{display:flex;justify-content:center;align-items:center;padding:60px 0}.mt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 0;color:var(--mt-text-tertiary)}.mt-empty p{font-size:15px;margin-top:12px}.mt-card{background:var(--mt-card-bg);border-radius:var(--mt-radius-lg);margin-bottom:12px;box-shadow:var(--mt-shadow);overflow:hidden;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.mt-card:active{transform:scale(.98)}.mt-card-header{display:flex;align-items:center;padding:14px 14px 10px;gap:12px}.mt-avatar-wrapper{position:relative;flex-shrink:0;width:52px;height:52px}.mt-avatar{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.mt-avatar-img{width:100%;height:100%;object-fit:cover;flex-shrink:0}.mt-avatar-text{font-size:20px;font-weight:600;color:#fff}.mt-online-dot{position:absolute;bottom:0;right:0;width:14px;height:14px;background:var(--mt-success);border:2.5px solid var(--mt-card-bg);border-radius:50%}.mt-info{flex:1;min-width:0}.mt-name-row{display:flex;align-items:center;gap:6px}.mt-name{font-size:17px;font-weight:600;color:var(--mt-text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mt-admin-badge{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,gold,orange);display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;flex-shrink:0}.mt-subject{font-size:13px;color:var(--mt-primary);margin:2px 0 0;font-weight:500}.mt-more-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:var(--mt-text-tertiary);font-size:18px;cursor:pointer;flex-shrink:0;transition:background .2s ease}.mt-more-btn:active{background:var(--mt-primary-light);color:var(--mt-primary)}.mt-card-stats{display:flex;align-items:center;gap:8px;padding:10px 14px 14px;border-top:1px solid var(--mt-border)}.mt-stat{display:flex;align-items:center;gap:6px}.mt-status-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;padding:4px 10px;border-radius:12px}.mt-status-dot{width:6px;height:6px;border-radius:50%}.mt-bottom-spacer{height:calc(80px + var(--mt-safe-bottom))}.mobile-teachers .ant-modal-root,.mobile-teachers .ant-modal{width:100vw!important;max-width:100vw!important}.mobile-teachers .ant-modal-mask{background:#00000080!important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mobile-teachers .ant-modal-wrap{width:100vw!important;height:100vh!important;max-width:100vw!important;overflow:hidden!important}.mt-modal .ant-modal-content{border-radius:20px!important;padding:20px!important;max-width:calc(100vw - 32px)!important;margin:0 auto!important}.mt-modal .ant-modal-header{border-radius:20px 20px 0 0!important;padding:16px 20px!important;border-bottom:none!important}.mt-modal .ant-modal-title{font-size:18px!important;font-weight:600!important}.mt-modal .ant-modal-body{padding:0!important}.mt-modal .ant-form-item{margin-bottom:16px!important}.mt-modal .ant-form-item-label>label{font-weight:500!important;color:var(--mt-text-primary)!important;font-size:14px!important}.mt-edit-modal{margin:0!important;padding:0!important;width:100vw!important;max-width:100vw!important;height:100vh!important;top:0!important;left:0!important;right:0!important;bottom:0!important;position:fixed!important}.mt-edit-modal .ant-modal-root{width:100vw!important;max-width:100vw!important}.mt-edit-modal .ant-modal-mask{background:#00000080!important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mt-edit-modal .ant-modal-wrap{width:100vw!important;height:100vh!important;max-width:100vw!important;top:0!important;left:0!important;right:0!important;bottom:0!important;transform:none!important;-webkit-transform:none!important;position:fixed!important;overflow:hidden!important}.mt-edit-modal .ant-modal{width:100vw!important;max-width:100vw!important;height:100vh!important;top:0!important;left:0!important;right:0!important;margin:0!important;padding:0!important;transform:none!important;-webkit-transform:none!important;position:relative!important}.mt-edit-modal .ant-modal-content{border-radius:0!important;width:100vw!important;height:100vh!important;max-height:100vh!important;max-width:100vw!important;display:flex!important;flex-direction:column!important;background:#fff!important;margin:0!important;padding:0!important;box-shadow:none!important;overflow:hidden!important}.mt-edit-container{display:flex;flex-direction:column;height:100dvh;height:100vh;width:100vw;overflow:hidden}.mt-edit-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--mt-border);flex-shrink:0;background:#fff}.mt-edit-title{font-size:17px;font-weight:600;color:var(--mt-text-primary)}.mt-edit-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;background:#fff;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}body.mt-edit-modal-open .admin-mobile-nav{display:none}.mt-edit-modal .ant-input-textarea-affix-wrapper{align-items:flex-start}.mt-edit-modal .ant-input-textarea-affix-wrapper textarea.ant-input{padding-top:6px;line-height:1.5715}.mt-edit-profile{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding:20px 16px 0}.mt-edit-avatar-wrapper{position:relative;flex-shrink:0;width:64px;height:64px}.mt-edit-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;overflow:hidden}.mt-edit-avatar-placeholder{display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;font-weight:600}.mt-edit-avatar-btn{position:absolute;bottom:0;right:0;width:24px;height:24px;border-radius:50%;background:var(--mt-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #00000026;border:2px solid white;font-size:12px}.mt-edit-name-section{flex:1}.mt-edit-section{margin-bottom:20px;padding:14px;background:var(--mt-bg);border-radius:var(--mt-radius)}.mt-edit-section-title{font-size:14px;font-weight:600;color:var(--mt-text-primary);margin-bottom:12px}.mt-edit-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--mt-border);font-size:14px;color:var(--mt-text-primary)}.mt-edit-row:last-child{border-bottom:none}@media (max-width: 374px){.mt-header{padding:16px 12px 12px}.mt-title{font-size:24px}.mt-search,.mt-add{padding-left:12px;padding-right:12px}.mt-list{padding:12px}.mt-card-header{padding:12px 12px 8px}.mt-avatar-wrapper,.mt-avatar{width:46px;height:46px}.mt-avatar-text{font-size:18px}.mt-name{font-size:15px}.mt-subject{font-size:12px}.mt-card-stats{padding:8px 12px 12px}}@keyframes mt-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.mt-card{animation:mt-slide-up .3s ease-out}.mt-action-sheet .ant-drawer-wrapper-bg{background:#00000080!important}.mt-action-sheet .ant-drawer-content-wrapper{width:100vw!important;max-width:100vw!important;left:0!important;right:0!important;border-radius:20px 20px 0 0!important}.mt-action-sheet .ant-drawer-content{border-radius:20px 20px 0 0;width:100vw!important;max-width:100vw!important}.mt-action-sheet .ant-drawer-body{padding:0!important}.mt-action-items{background:var(--mt-card-bg);border-radius:16px;margin:0 8px 8px;overflow:hidden}.mt-action-item{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--mt-border)}.mt-action-item:last-child{border-bottom:none}.mt-action-item:active{background:var(--mt-bg)}.mt-action-item.danger{color:var(--mt-danger)}.mt-action-icon{font-size:18px;color:var(--mt-text-secondary)}.mt-action-item.danger .mt-action-icon{color:var(--mt-danger)}.mt-action-label{font-size:16px;color:var(--mt-text-primary)}.mt-action-item.danger .mt-action-label{color:var(--mt-danger)}.mt-action-cancel{background:var(--mt-card-bg);border-radius:16px;margin:0 8px 8px;padding:16px;text-align:center;font-size:16px;font-weight:600;color:var(--mt-primary);cursor:pointer;transition:background .2s ease}.mt-action-cancel:active{background:var(--mt-bg)}.mt-video-preview-wrapper{position:relative;width:100%;margin-bottom:12px;border-radius:12px;overflow:hidden;background:#000}.mt-video-thumbnail{width:100%;max-height:160px;object-fit:contain;display:block}.mt-video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease}.mt-video-overlay:active{background:#00000080}.mt-video-play-icon{width:56px;height:56px;border-radius:50%;background:#fffffff2;display:flex;align-items:center;justify-content:center;color:#1d1d1f;margin-bottom:8px;box-shadow:0 4px 16px #0000004d}.mt-video-view-hint{font-size:12px;color:#ffffffe6;font-weight:500}.mt-video-bottom-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#000000f2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:mt-fade-in .25s ease-out}@keyframes mt-fade-in{0%{opacity:0}to{opacity:1}}.mt-video-bottom-sheet{position:fixed;bottom:0;left:0;right:0;z-index:100000;background:var(--mt-card-bg);border-radius:24px 24px 0 0;max-height:85vh;display:flex;flex-direction:column;animation:mt-slide-up .3s cubic-bezier(.32,.72,0,1);box-shadow:0 -4px 24px #00000026}@keyframes mt-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mt-video-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--mt-border);flex-shrink:0}.mt-video-sheet-title{font-size:17px;font-weight:600;color:var(--mt-text-primary)}.mt-video-sheet-close{width:32px;height:32px;border-radius:50%;background:var(--mt-bg);border:none;display:flex;align-items:center;justify-content:center;color:var(--mt-text-secondary);font-size:16px;cursor:pointer;transition:background .2s ease}.mt-video-sheet-close:active{background:#0000001a}.mt-video-sheet-content{flex:1;padding:16px 20px;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:200px;max-height:55vh}.mt-video-sheet-player{width:100%;max-height:55vh;border-radius:16px;background:#000;object-fit:contain;box-shadow:0 4px 20px #0003}.mt-video-sheet-footer{padding:16px 20px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--mt-border);flex-shrink:0}.mt-video-sheet-footer .ant-btn{height:48px!important;border-radius:12px!important;font-size:16px!important;font-weight:600!important}.mt-hero-video-wrapper{margin:20px 0 0;padding:0 16px 8px;background:#fff}.mt-hero-video-actions{padding-bottom:8px}.mt-hero-video-title{font-size:14px;font-weight:600;color:var(--mt-text-primary);margin-bottom:12px}.mt-hero-video-card{position:relative;width:calc(100vw - 32px);max-height:280px;overflow:hidden;cursor:pointer;background:#000;display:flex;align-items:center;justify-content:center}.mt-hero-video-cover{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;background:#000}.mt-hero-video-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#0000 40%,#000000a6);pointer-events:none}.mt-hero-video-bottom{position:absolute;bottom:12px;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;z-index:1}.mt-hero-video-label{font-size:13px;font-weight:500;color:#fff;opacity:.9}.mt-hero-video-duration{font-size:12px;color:#fff;background:#00000080;padding:2px 8px;border-radius:4px}.mt-hero-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;background:#ffffffe6;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000004d;pointer-events:none;z-index:1}.mt-hero-video-empty{width:100%;height:100%;min-height:180px;background:linear-gradient(135deg,#f5f6f8,#eceef2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.mt-hero-video-empty-icon{width:44px;height:44px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 12px #0000001a}.mt-hero-video-empty-text{font-size:14px;font-weight:500;color:#666}.mt-hero-video-empty-hint{font-size:12px;color:#aaa}.tablet-teachers .page-header{margin-bottom:16px}.tablet-teachers .page-title{font-size:20px;font-weight:600;color:#333;margin:0;display:flex;align-items:center;gap:8px}.tablet-teachers .toolbar{display:flex;gap:16px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.tablet-teachers .toolbar .ant-input-affix-wrapper .ant-input,.tablet-teachers .toolbar .ant-input-affix-wrapper input{border:none!important;box-shadow:none!important;outline:none!important}.tablet-teachers .toolbar .ant-input-affix-wrapper .ant-input:focus,.tablet-teachers .toolbar .ant-input-affix-wrapper-focused .ant-input{border:none!important;box-shadow:none!important}.tablet-teachers .teachers-table{background:#fff;border-radius:12px;overflow-x:auto}.tablet-teachers .teachers-table .ant-table-cell{white-space:nowrap}.tablet-teachers .teachers-table .ant-table-cell:last-child{text-align:right;padding-right:16px}.tablet-teachers .teacher-cell{display:flex;align-items:center;gap:12px}.tablet-teachers .teacher-cell .teacher-info{min-width:0}.tablet-teachers .teacher-cell .name{font-weight:600;color:#333;display:flex;align-items:center}.tablet-teachers .teacher-cell .email{font-size:12px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tablet-teachers .teacher-detail{padding:8px 0}.tablet-teachers .detail-row{display:flex;padding:10px 0;border-bottom:1px solid #f0f0f0}.tablet-teachers .detail-row:last-child{border-bottom:none}.tablet-teachers .detail-row .label{width:120px;color:#666;flex-shrink:0}.tablet-teachers .detail-row .value{flex:1;color:#333;word-break:break-all}:root{--ios-blue: #007AFF;--ios-blue-light: rgba(0, 122, 255, .1);--ios-blue-hover: #0066d6;--ios-green: #34C759;--ios-green-light: rgba(52, 199, 89, .12);--ios-orange: #FF9F0A;--ios-orange-light: rgba(255, 159, 10, .12);--ios-bg: #F5F5F7;--ios-card-bg: rgba(255, 255, 255, .9);--ios-glass-bg: rgba(255, 255, 255, .72);--ios-text-primary: #1D1D1F;--ios-text-secondary: #6E6E73;--ios-text-tertiary: #8E8E93;--ios-border: rgba(0, 0, 0, .06);--ios-radius-sm: 12px;--ios-radius-md: 16px;--ios-radius-lg: 20px;--ios-radius-xl: 24px;--ios-shadow-card: 0 4px 20px rgba(0, 0, 0, .04);--ios-shadow-hover: 0 8px 30px rgba(0, 0, 0, .08);--ios-shadow-float: 0 12px 40px rgba(0, 0, 0, .12);--ios-transition: all .2s ease;--ios-transition-spring: all .3s cubic-bezier(.34, 1.56, .64, 1);--ios-transition-smooth: all .25s cubic-bezier(.4, 0, .2, 1)}.order-create-ios{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;animation:fadeInUp .4s ease-out}.ios-student-hint{display:flex;align-items:center;gap:14px;padding:16px 20px;background:linear-gradient(135deg,#f8faff,#eef4ff);border-radius:var(--ios-radius-lg);margin-bottom:24px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.hint-icon{width:44px;height:44px;background:var(--ios-blue-light);border-radius:var(--ios-radius-md);display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--ios-blue)}.hint-content{display:flex;flex-direction:column;gap:2px}.hint-label{font-size:12px;color:var(--ios-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.hint-value{font-size:16px;font-weight:600;color:var(--ios-text-primary)}.ios-order-layout{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:start}.ios-form-section{min-width:0}.ios-form-group{margin-bottom:28px}.ios-form-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ios-text-primary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.label-icon{font-size:14px;color:var(--ios-blue)}.form-extra{font-size:12px;margin-top:6px;display:block}.ios-select-large{border-radius:var(--ios-radius-md)!important;height:52px!important}.ios-select-large .ant-select-selector{height:52px!important;padding:0 16px!important;border-radius:var(--ios-radius-md)!important;border:1.5px solid var(--ios-border)!important;background:#fff!important;transition:var(--ios-transition-smooth)!important}.ios-select-large .ant-select-selector:hover{border-color:var(--ios-blue)!important}.ios-select-large.ant-select-focused .ant-select-selector{border-color:var(--ios-blue)!important;box-shadow:0 0 0 3px var(--ios-blue-light)!important}.ios-select-large .ant-select-selection-search-input{height:50px!important}.ios-select-large .ant-select-selection-placeholder,.ios-select-large .ant-select-selection-item{line-height:50px!important;font-size:15px}.course-tag{margin-right:8px;font-size:11px;border-radius:4px}.ios-hours-grid,.ios-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ios-input-card{background:#fff;border-radius:var(--ios-radius-md);padding:16px;border:1.5px solid var(--ios-border);transition:var(--ios-transition-smooth);animation:fadeIn .3s ease-out;animation-fill-mode:both}.ios-hours-grid .ios-input-card:nth-child(1){animation-delay:.05s}.ios-hours-grid .ios-input-card:nth-child(2){animation-delay:.1s}.ios-price-grid .ios-input-card:nth-child(1){animation-delay:.15s}.ios-price-grid .ios-input-card:nth-child(2){animation-delay:.2s}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ios-input-card:hover{border-color:#007aff4d;box-shadow:var(--ios-shadow-card)}.ios-input-card .ios-input-number .ant-input-number{border:none!important;box-shadow:none!important;background:transparent!important}.ios-input-card .ios-input-number .ant-input-number:hover,.ios-input-card .ios-input-number .ant-input-number-focused,.ios-input-card .ios-input-number .ant-input-number:focus-within{border:none!important;box-shadow:none!important}.ios-input-card:focus-within{border-color:var(--ios-blue);box-shadow:0 0 0 3px var(--ios-blue-light)}.input-card-label{display:block;font-size:12px;color:var(--ios-text-tertiary);margin-bottom:8px}.ios-input-number{width:100%!important}.ios-input-number .ant-input-number-input-wrap{height:44px}.ios-input-number .ant-input-number-input{height:44px!important;font-size:20px!important;font-weight:600!important;text-align:center;padding:0 12px}.ios-input-number .ant-input-number-prefix{margin-right:4px;font-size:16px;color:var(--ios-text-secondary)}.ios-input-number .ant-input-number-suffix{display:none}.ios-input-number .ant-input-number{border-radius:var(--ios-radius-sm)!important;border:1.5px solid var(--ios-border)!important;background:var(--ios-bg)!important;transition:var(--ios-transition-smooth)!important}.ios-input-number .ant-input-number:hover{border-color:var(--ios-blue)!important}.ios-input-number .ant-input-number-focused{border-color:var(--ios-blue)!important;box-shadow:0 0 0 3px var(--ios-blue-light)!important}.ios-amount-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:var(--ios-radius-xl);padding:28px;margin-bottom:28px;position:relative;overflow:hidden;animation:scaleIn .4s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ios-amount-section:before{content:"";position:absolute;top:-40px;right:-40px;width:120px;height:120px;background:radial-gradient(circle,rgba(0,122,255,.1) 0%,transparent 70%);border-radius:50%}.amount-display{text-align:center}.amount-label{font-size:13px;color:var(--ios-text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.amount-value{font-size:48px;font-weight:700;color:var(--ios-blue);line-height:1;margin-bottom:12px;letter-spacing:-1px}.amount-detail{font-size:14px;color:var(--ios-text-secondary);background:#fff;padding:8px 16px;border-radius:20px;display:inline-block}.hidden-input{position:absolute;opacity:0;pointer-events:none;height:0;margin:0}.hidden-input .ant-form-item-control-input{height:0;min-height:0}.manual-hint{display:block;text-align:center;margin-top:12px;font-size:12px;color:var(--ios-orange)}.ios-source-group{margin-bottom:0}.ios-select-source{border-radius:var(--ios-radius-md)!important;height:48px!important}.ios-select-source .ant-select-selector{height:48px!important;padding:0 16px!important;border-radius:var(--ios-radius-md)!important;border:1.5px solid var(--ios-border)!important;background:#fff!important}.ios-select-source .ant-select-selection-item,.ios-select-source .ant-select-selection-placeholder{line-height:46px!important;font-size:14px}.ios-summary-section{position:sticky;top:20px}.ios-summary-card{background:#fff;border-radius:var(--ios-radius-xl);padding:24px;box-shadow:var(--ios-shadow-card);border:1px solid var(--ios-border);margin-bottom:16px;transition:var(--ios-transition-spring);animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ios-summary-card:hover{box-shadow:var(--ios-shadow-hover);transform:translateY(-2px)}.summary-header{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:var(--ios-text-primary);margin-bottom:20px}.summary-icon{font-size:18px;color:var(--ios-blue)}.summary-divider{height:1px;background:var(--ios-border);margin:16px 0}.summary-content{display:flex;flex-direction:column;gap:14px}.summary-row{display:flex;justify-content:space-between;align-items:center}.summary-row.highlight{background:var(--ios-green-light);margin:0 -16px;padding:14px 16px;border-radius:var(--ios-radius-sm)}.summary-row.final{background:var(--ios-blue-light);margin:8px -16px -8px;padding:18px 16px;border-radius:0 0 var(--ios-radius-xl) var(--ios-radius-xl)}.summary-label{font-size:13px;color:var(--ios-text-secondary)}.summary-value{font-size:14px;font-weight:500;color:var(--ios-text-primary);text-align:right;max-width:160px}.summary-value.course-name{font-size:13px;font-weight:500;color:var(--ios-text-primary)}.summary-value.bonus{color:var(--ios-green)}.summary-value.total-hours{font-size:18px;font-weight:700;color:var(--ios-green)}.summary-value.final-amount{font-size:22px;font-weight:700;color:var(--ios-blue)}.ios-payment-card{background:#fff;border-radius:var(--ios-radius-xl);padding:20px;box-shadow:var(--ios-shadow-card);border:1px solid var(--ios-border);animation:slideUp .4s ease-out .1s;animation-fill-mode:both}.payment-header{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--ios-text-primary);margin-bottom:16px}.payment-icon{font-size:16px;color:var(--ios-orange)}.payment-content{display:flex;flex-direction:column;gap:12px}.payment-row{display:flex;justify-content:space-between;align-items:center}.payment-row-select{gap:12px}.payment-row-select .payment-method-select{width:100%;max-width:160px}.payment-label{font-size:13px;color:var(--ios-text-secondary)}.payment-value{font-size:14px;font-weight:500;color:var(--ios-text-primary)}.payment-status{font-size:13px;font-weight:500;color:var(--ios-orange);background:var(--ios-orange-light);padding:4px 12px;border-radius:20px}.payment-status.paid{color:var(--ios-green, #34c759);background:#34c7591f}.ios-form-actions{display:flex;gap:14px;margin-top:32px;padding-top:24px;border-top:1px solid var(--ios-border);animation:fadeIn .4s ease-out .2s;animation-fill-mode:both}.ios-btn-cancel{flex:1;height:52px;border-radius:var(--ios-radius-md);font-size:16px;font-weight:600;cursor:pointer;background:#fff;color:var(--ios-text-primary);border:1.5px solid var(--ios-border);transition:var(--ios-transition-smooth)}.ios-btn-cancel:hover{background:var(--ios-bg);border-color:var(--ios-text-tertiary)}.ios-btn-cancel:active{transform:scale(.98)}.ios-btn-primary{flex:2;height:52px;border-radius:var(--ios-radius-md);font-size:16px;font-weight:600;cursor:pointer;background:var(--ios-blue);color:#fff;border:none;transition:var(--ios-transition-smooth);box-shadow:0 4px 12px #007aff4d}.ios-btn-primary:hover:not(:disabled){background:var(--ios-blue-hover);transform:translateY(-1px);box-shadow:0 6px 16px #007aff59}.ios-btn-primary:active:not(:disabled){transform:scale(.98);box-shadow:0 2px 8px #007aff4d}.ios-btn-primary:disabled{background:#c8c8cd;cursor:not-allowed;box-shadow:none}@media (max-width: 900px){.ios-order-layout{grid-template-columns:1fr;gap:20px}.ios-summary-section{position:static;order:-1}.ios-hours-grid,.ios-price-grid{grid-template-columns:1fr 1fr;gap:12px}.amount-value{font-size:40px}}@media (max-width: 600px){.order-create-ios{padding:0}.ios-student-hint{padding:14px 16px;margin-bottom:20px}.hint-icon{width:40px;height:40px;font-size:18px}.ios-form-group{margin-bottom:24px}.ios-hours-grid,.ios-price-grid{grid-template-columns:1fr;gap:12px}.ios-input-card{padding:14px}.ios-amount-section{padding:24px 20px}.amount-value{font-size:36px}.amount-detail{font-size:13px;padding:6px 12px}.ios-summary-card{padding:20px}.ios-form-actions{flex-direction:column;gap:12px;margin-top:24px}.ios-btn-cancel,.ios-btn-primary{flex:none;height:50px;font-size:15px}}.order-create-ios .ant-form-item{margin-bottom:0}.order-create-ios .ant-form-item-label{display:none}.order-create-ios .ant-form-item-extra{margin-top:8px;margin-bottom:0}.order-create-ios .ant-select-selection-item .course-tag+span{font-size:13px}.enrollment-wizard-modal .ant-modal-content{border-radius:24px!important;padding:0!important;overflow:hidden;box-shadow:0 25px 60px #00000026!important}.enrollment-wizard-modal .ant-modal-header{padding:24px 28px 20px!important;background:linear-gradient(135deg,#f8faff,#fff);border-bottom:1px solid rgba(0,0,0,.04)!important;margin:0!important}.enrollment-wizard-modal .ant-modal-body{padding:28px!important;background:#f5f5f7}.enrollment-wizard-modal .ant-modal-close{top:24px!important;right:24px!important;width:32px!important;height:32px!important;border-radius:50%!important;background:#0000000a!important;transition:all .2s ease!important}.enrollment-wizard-modal .ant-modal-close:hover{background:#00000014!important}.enrollment-wizard-modal .ant-modal-close-x{font-size:14px!important;color:#6e6e73!important}.enrollment-wizard-title{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;color:#1d1d1f}.wizard-icon{width:36px;height:36px;background:#007aff1a;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#007aff}.enrollment-wizard-modal .ant-steps{padding:0 8px}.enrollment-wizard-modal .ant-steps-item-title{font-size:13px!important;font-weight:500!important}.enrollment-wizard-modal .ant-steps-item-icon{width:28px!important;height:28px!important;border-radius:50%!important;border:2px solid #E5E5E7!important;background:#fff!important}.enrollment-wizard-modal .ant-steps-item-icon .ant-steps-icon{font-size:13px!important;color:#6e6e73!important}.enrollment-wizard-modal .ant-steps-item-active .ant-steps-item-icon{border-color:#007aff!important;background:#007aff!important}.enrollment-wizard-modal .ant-steps-item-active .ant-steps-item-icon .ant-steps-icon{color:#fff!important}.enrollment-wizard-modal .ant-steps-item-finish .ant-steps-item-icon{border-color:#34c759!important;background:#34c759!important}.enrollment-wizard-modal .ant-steps-item-finish .ant-steps-item-icon .ant-steps-icon{color:#fff!important}.enrollment-wizard-modal .ant-steps-item-finish .ant-steps-item-tail:after{border-color:#34c759!important}.enrollment-wizard-modal .step-content{min-height:400px}.enrollment-wizard-modal .confirm-page{animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.error-alert{display:flex;align-items:center;gap:10px;padding:14px 18px;background:#fff1f0;border:1px solid #FFCCC7;border-radius:12px;margin-bottom:20px}.error-icon{font-size:16px}.error-message{font-size:14px;color:#ff4d4f}.enrollment-wizard-modal .confirm-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.enrollment-wizard-modal .confirm-card{background:#fff;border-radius:20px;padding:24px;box-shadow:0 4px 20px #0000000a;border:1px solid rgba(0,0,0,.04)}.enrollment-wizard-modal .confirm-card-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#1d1d1f;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(0,0,0,.04)}.card-icon{font-size:18px}.enrollment-wizard-modal .confirm-info{display:flex;flex-direction:column;gap:4px}.enrollment-wizard-modal .confirm-info-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.enrollment-wizard-modal .confirm-info-row:not(:last-child){border-bottom:1px solid rgba(0,0,0,.03)}.enrollment-wizard-modal .info-label{font-size:13px;color:#6e6e73}.enrollment-wizard-modal .info-value{font-size:14px;font-weight:500;color:#1d1d1f;text-align:right;max-width:180px}.enrollment-wizard-modal .info-value.highlight{color:#007aff;font-size:20px;font-weight:700}.enrollment-wizard-modal .info-value.success{color:#34c759;font-weight:600}.enrollment-wizard-modal .confirm-actions{display:flex;gap:14px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(0,0,0,.06)}.enrollment-wizard-modal .confirm-btn-cancel{flex:1;height:48px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;background:#fff;color:#1d1d1f;border:1.5px solid rgba(0,0,0,.08);transition:all .2s ease}.enrollment-wizard-modal .confirm-btn-cancel:hover{background:#f5f5f7;border-color:#0000001f}.enrollment-wizard-modal .confirm-btn-submit{flex:2;height:48px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;background:#007aff;color:#fff;border:none;transition:all .2s ease;box-shadow:0 4px 12px #007aff4d}.enrollment-wizard-modal .confirm-btn-submit:hover:not(:disabled){background:#0066d6;transform:translateY(-1px);box-shadow:0 6px 16px #007aff59}.enrollment-wizard-modal .confirm-btn-submit:active:not(:disabled){transform:scale(.98)}.enrollment-wizard-modal .confirm-btn-submit:disabled{background:#c8c8cd;cursor:not-allowed;box-shadow:none}.enrollment-wizard-modal .ant-result{padding:40px 20px}.enrollment-wizard-modal .ant-result-title{font-size:22px!important;font-weight:600!important;color:#1d1d1f!important}.enrollment-wizard-modal .ant-result-subtitle{font-size:14px!important;color:#6e6e73!important}.enrollment-wizard-modal .ant-result-extra{margin-top:24px!important;display:flex!important;flex-wrap:wrap!important;gap:12px!important;justify-content:center!important}.enrollment-wizard-modal .ant-btn{border-radius:10px!important;height:40px!important;padding:0 20px!important;font-weight:500!important}.enrollment-wizard-modal .ant-btn-primary{background:#007aff!important;border-color:#007aff!important}@media (max-width: 768px){.enrollment-wizard-modal .enrollment-wizard-title{font-size:16px}.wizard-icon{width:32px;height:32px;font-size:16px}.enrollment-wizard-modal .ant-steps{transform:scale(.9);transform-origin:left center}.enrollment-wizard-modal .confirm-actions{flex-direction:column}.enrollment-wizard-modal .confirm-btn-cancel,.enrollment-wizard-modal .confirm-btn-submit{flex:none;width:100%}}@keyframes iosModalSlideUpFull{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.ios-fullscreen-modal-wrap{padding:0!important;z-index:10100!important;overflow:hidden}.ios-fullscreen-modal-wrap .ant-modal{position:fixed;top:0;right:0;bottom:0;left:0;width:100%!important;max-width:100%!important;height:100%;margin:0!important;padding:0!important;top:0!important}.ios-fullscreen-modal .ant-modal-content{height:100dvh;max-height:100dvh;border-radius:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:none;animation:iosModalSlideUpFull .32s cubic-bezier(.16,1,.3,1)}.ios-fullscreen-modal .ant-modal-header{flex-shrink:0;padding:calc(16px + env(safe-area-inset-top,0px)) 24px 12px;margin-bottom:0}.ios-fullscreen-modal .ant-modal-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 24px calc(16px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column}.ios-fullscreen-modal .ant-modal-footer{flex-shrink:0;padding:12px 24px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(0,0,0,.06);margin-top:0}.ios-fullscreen-modal .ant-modal-close{top:calc(12px + env(safe-area-inset-top,0px))}}.quick-add-panel-body{display:flex;flex-direction:column;min-height:0;flex:1}.quick-add-search{flex-shrink:0;margin-bottom:16px}.quick-add-search-hint{font-size:12px;margin-top:8px;display:block}.quick-add-results{flex:1;min-height:0;max-height:400px;overflow-y:auto}.quick-add-empty-state{text-align:center;padding:40px 16px}.quick-add-student-list{border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}.quick-add-student-item{padding:12px 16px;cursor:pointer;transition:background .2s}.quick-add-student-item:hover{background:#f5f5f5}.quick-add-student-avatar{width:40px;height:40px;border-radius:50%;background:#e6f7ff;display:flex;align-items:center;justify-content:center;color:#1890ff;font-size:18px}.quick-add-tip{flex-shrink:0;margin-top:16px;padding:12px 16px;background:#fafafa;border-radius:6px;font-size:12px}@media (max-width: 768px){.quick-add-results{max-height:none}}.tablet-student-management{padding:24px}.tablet-student-management .page-title{font-size:24px;margin-bottom:24px}.mobile-student-management{padding:16px 16px 100px;background:#f5f5f5;min-height:100vh;box-sizing:border-box}.mobile-student-management .search-bar{margin-bottom:12px}.mobile-student-management .page-title{font-size:20px;margin-bottom:16px}.mobile-student-management .loading-container{display:flex;justify-content:center;padding:50px}.mobile-student-management .item-card{margin-bottom:12px;border-radius:8px}.mobile-student-management .item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.mobile-student-management .item-name{font-weight:600;font-size:16px}.mobile-student-management .item-info{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#666;margin-bottom:4px}.mobile-student-management .progress-info{margin-top:8px}.mobile-student-management .progress-info .remaining{font-size:12px;color:#999}.materials-list-table{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #0000000f}.materials-list-table .ant-table-thead>tr>th{background:#fafafa;font-weight:600}.ios-books-page{min-height:100vh;background:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-bottom:100px}.ios-books-header{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.06);padding:16px 20px 20px;position:sticky;top:0;z-index:100}.ios-books-header-content{display:flex;justify-content:space-between;align-items:center}.ios-books-title{font-size:28px;font-weight:700;color:#1d1d1f;margin:0;line-height:1.1}.ios-books-subtitle{font-size:14px;color:#6e6e73;margin:4px 0 0}.ios-refresh-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#007aff;font-size:18px}.ios-refresh-btn:hover{background:#007aff1a}.ios-books-loading{display:flex;align-items:center;justify-content:center;padding:80px 20px}.ios-books-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.ios-empty-icon{font-size:56px;color:#8e8e93;margin-bottom:16px;opacity:.6}.ios-empty-text{font-size:17px;font-weight:600;color:#1d1d1f;margin:0 0 8px}.ios-empty-hint{font-size:14px;color:#6e6e73;margin:0}.ios-books-list{padding:16px;display:flex;flex-direction:column;gap:12px}.ios-book-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#ffffffd9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;box-shadow:0 2px 12px #0000000a;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(0,0,0,.04);animation:iosSlideUp .4s ease-out forwards;opacity:0}.ios-book-card:hover{background:#fffffff2;box-shadow:0 4px 20px #00000014;transform:translateY(-2px)}.ios-book-card:active{transform:scale(.98)}.ios-book-cover{width:56px;height:72px;border-radius:8px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001f}.ios-book-cover img{width:100%;height:100%;object-fit:cover}.ios-book-cover-text{font-size:24px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.ios-book-info{flex:1;min-width:0}.ios-book-title{font-size:16px;font-weight:600;color:#1d1d1f;line-height:1.3;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ios-book-meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#8e8e93}.ios-book-id{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.ios-book-divider{color:#c7c7cc}.ios-book-pages{color:#6e6e73}.ios-book-audio-icon{color:#007aff;font-size:12px}.ios-book-tags{display:flex;align-items:center;gap:6px;margin-top:6px;flex-wrap:wrap}.ios-book-tag{font-size:11px;padding:2px 8px;border-radius:10px;background:#007aff1a;color:#007aff;border:none;line-height:1.4}.ios-book-tag-more{font-size:11px;color:#8e8e93}.ios-book-more-btn{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#8e8e93;flex-shrink:0;transition:all .2s}.ios-book-more-btn:hover{background:#0000000d;color:#1d1d1f}.ios-drawer-root,.ios-drawer-root .ant-drawer-content-wrapper{z-index:1100!important}.ios-drawer .ant-drawer-header{background:#ffffffe6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0}.ios-drawer .ant-drawer-content{display:flex;flex-direction:column;border-radius:20px 20px 0 0;overflow:hidden}.ios-drawer .ant-drawer-body{flex:1;min-height:0;background:#f5f5f7;padding:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.ios-book-detail{display:flex;flex-direction:column;min-height:100%;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}.ios-detail-cover{width:100%;height:200px;display:flex;align-items:center;justify-content:center;position:relative}.ios-detail-cover img{max-width:100%;max-height:100%;object-fit:contain}.ios-detail-cover-text{font-size:72px;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.ios-detail-content{padding:24px 20px}.ios-detail-title{font-size:22px;font-weight:700;color:#1d1d1f;margin:0 0 20px;line-height:1.2}.ios-detail-descriptions{margin-bottom:24px}.ios-detail-descriptions .ant-descriptions-item-label{color:#6e6e73;font-size:14px;width:80px}.ios-detail-descriptions .ant-descriptions-item-content{color:#1d1d1f;font-size:14px}.ios-detail-code{font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;background:#0000000d;padding:2px 8px;border-radius:6px;color:#007aff}.ios-detail-tags{display:flex;flex-wrap:wrap;gap:6px}.ios-detail-tag{font-size:12px;border-radius:10px;border:none}.ios-detail-actions{display:flex;gap:12px;padding:8px 0 16px;margin-top:8px}.ios-detail-actions .ant-btn{flex:1;border-radius:12px;height:44px;font-weight:500}.ios-books-page .ant-dropdown-menu{border-radius:14px;padding:6px;box-shadow:0 4px 24px #0000001f}.ios-books-page .ant-dropdown-menu-item{border-radius:8px;font-size:15px;padding:10px 14px}.ios-books-page .ant-modal-content{border-radius:20px;overflow:hidden}.ios-books-page .ant-modal-header{border-radius:20px 20px 0 0}.ios-books-page .ant-modal-title{font-weight:600;font-size:17px}.ios-books-page .ant-modal-footer{border-radius:0 0 20px 20px}@media (max-width: 380px){.ios-books-title{font-size:24px}.ios-book-cover{width:48px;height:64px}.ios-book-title{font-size:15px}}.ios-tablet-books-page{min-height:100vh;background:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:24px 24px 120px}.ios-tablet-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.ios-tablet-header-left{display:flex;flex-direction:column}.ios-tablet-title{font-size:32px;font-weight:700;color:#1d1d1f;margin:0;display:flex;align-items:center;gap:12px;line-height:1.1}.ios-tablet-icon{color:#007aff;font-size:28px}.ios-tablet-subtitle{font-size:15px;color:#6e6e73;margin:6px 0 0}.ios-tablet-refresh-btn{display:flex;align-items:center;gap:6px;color:#007aff;font-size:15px;font-weight:500;padding:10px 16px;border-radius:12px}.ios-tablet-refresh-btn:hover{background:#007aff1a}.ios-tablet-stats{margin-bottom:28px}.ios-tablet-stats .ant-row{gap:16px}.ios-stat-card{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 20px #0000000a;border:1px solid rgba(0,0,0,.04);transition:all .3s cubic-bezier(.34,1.56,.64,1)}.ios-stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 30px #00000014}.ios-stat-icon-wrapper{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px}.ios-stat-icon-wrapper.books{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.ios-stat-icon-wrapper.audio{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.ios-stat-icon-wrapper.pages{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.ios-stat-content{flex:1}.ios-stat-value{font-size:28px;font-weight:700;color:#1d1d1f;line-height:1;margin-bottom:4px}.ios-stat-label{font-size:13px;color:#6e6e73}.ios-tablet-loading{display:flex;align-items:center;justify-content:center;padding:80px 20px}.ios-tablet-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center;background:#ffffffb3;border-radius:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ios-empty-icon{font-size:64px;color:#8e8e93;margin-bottom:20px;opacity:.6}.ios-empty-text{font-size:20px;font-weight:600;color:#1d1d1f;margin:0 0 10px}.ios-empty-hint{font-size:15px;color:#6e6e73;margin:0}.ios-tablet-section-title{font-size:22px;font-weight:700;color:#1d1d1f;margin:0 0 20px}.ios-tablet-books-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:18px}.ios-tablet-book-card{background:#ffffffd9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;padding:14px;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 12px #0000000a;border:1px solid rgba(0,0,0,.04);position:relative;animation:iosSlideUp .4s ease-out forwards;opacity:0}@keyframes iosSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.ios-tablet-book-card:hover{background:#fffffff2;box-shadow:0 8px 30px #0000001a;transform:translateY(-4px) scale(1.02)}.ios-tablet-book-card:active{transform:scale(.98)}.ios-tablet-book-cover{width:100%;aspect-ratio:3 / 4;border-radius:10px;overflow:hidden;margin-bottom:12px;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 16px #00000026}.ios-tablet-book-cover img{width:100%;height:100%;object-fit:cover}.ios-tablet-book-cover-text{font-size:48px;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.ios-tablet-book-audio-badge{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px}.ios-tablet-book-title{font-size:14px;font-weight:600;color:#1d1d1f;line-height:1.3;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:36px}.ios-tablet-book-meta{font-size:12px;color:#8e8e93;margin-bottom:8px}.ios-tablet-book-tags{display:flex;flex-wrap:wrap;gap:4px}.ios-tablet-book-tag{font-size:10px;padding:2px 6px;border-radius:6px;background:#007aff1a;color:#007aff;border:none}.ios-tablet-book-more-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#8e8e93;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:all .2s}.ios-tablet-book-card:hover .ios-tablet-book-more-btn{opacity:1}.ios-tablet-book-more-btn:hover{background:#fff;color:#1d1d1f;transform:scale(1.1)}.ios-tablet-tip{text-align:center;margin-top:28px;padding:16px}.ios-tablet-tip p{color:#8e8e93;font-size:14px;margin:0}.ios-tablet-drawer .ant-drawer-header{background:#ffffffe6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.06)}.ios-drawer-title{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600;color:#1d1d1f}.ios-drawer-title .anticon{color:#007aff}.ios-tablet-drawer .ant-drawer-body{background:#f5f5f7;padding:0}.ios-tablet-book-detail{display:flex;flex-direction:column}.ios-tablet-detail-cover{width:100%;height:280px;display:flex;align-items:center;justify-content:center;position:relative}.ios-tablet-detail-cover img{max-width:100%;max-height:100%;object-fit:contain}.ios-tablet-detail-cover-text{font-size:96px;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.ios-tablet-detail-content{padding:24px 20px}.ios-tablet-detail-title{font-size:24px;font-weight:700;color:#1d1d1f;margin:0 0 4px;line-height:1.2}.ios-tablet-detail-id{font-size:14px;color:#8e8e93;margin:0 0 20px;font-family:SF Mono,Monaco,Consolas,monospace}.ios-tablet-detail-descriptions{margin-bottom:24px}.ios-tablet-detail-descriptions .ant-descriptions-item-label{color:#6e6e73;font-size:14px;width:70px}.ios-tablet-detail-descriptions .ant-descriptions-item-content{color:#1d1d1f;font-size:14px}.ios-tablet-detail-tags{display:flex;flex-wrap:wrap;gap:6px}.ios-tablet-detail-tag{font-size:12px;border-radius:10px;border:none}.ios-tablet-detail-actions{display:flex;gap:12px;padding-top:8px}.ios-tablet-detail-actions .ant-btn{flex:1;border-radius:12px;height:44px;font-weight:500}.ios-tablet-books-page .ant-dropdown-menu{border-radius:14px;padding:6px;box-shadow:0 4px 24px #0000001f}.ios-tablet-books-page .ant-dropdown-menu-item{border-radius:8px;font-size:15px;padding:10px 14px}.ios-tablet-books-page .ant-modal-content{border-radius:20px;overflow:hidden}.ios-tablet-books-page .ant-modal-header{border-radius:20px 20px 0 0}.ios-tablet-books-page .ant-modal-title{font-weight:600;font-size:17px}.ios-tablet-books-page .ant-modal-footer{border-radius:0 0 20px 20px}@media (orientation: landscape) and (max-width: 1024px){.ios-tablet-books-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.ios-tablet-books-page{padding:16px}.ios-tablet-title{font-size:26px}.ios-stat-card{padding:16px}.ios-stat-value{font-size:24px}.ios-tablet-books-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px}}.mobile-materials{padding:16px 16px 80px}.mobile-materials-loading{display:flex;justify-content:center;align-items:center;min-height:300px}.mobile-materials .page-title{font-size:20px;font-weight:600;color:#333;margin-bottom:16px;display:flex;align-items:center;gap:8px}.mobile-materials .page-title .anticon{color:#42a5f5}.mobile-materials .materials-tabs{margin-bottom:16px}.mobile-materials .materials-tabs .ant-tabs-nav{margin-bottom:12px}.mobile-materials .add-btn{width:100%;margin-bottom:16px;background:#42a5f5;border-color:#42a5f5}.mobile-materials .add-btn:hover{background:#1e88e5;border-color:#1e88e5}.mobile-materials .materials-list{display:flex;flex-direction:column;gap:12px}.mobile-materials .material-card{border-radius:12px;box-shadow:0 2px 8px #0000000f}.mobile-materials .material-card .ant-card-body{padding:16px}.mobile-materials .material-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.mobile-materials .material-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mobile-materials .material-name{font-size:16px;font-weight:600;color:#333;margin:0}.mobile-materials .level-badge .ant-badge-count{background:#42a5f5;font-size:11px}.mobile-materials .material-desc{font-size:13px;color:#666;margin:8px 0;line-height:1.5}.mobile-materials .material-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}.mobile-materials .material-tags .ant-tag{font-size:11px;margin:0}.mobile-materials .material-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid #f0f0f0}.mobile-materials .material-actions .ant-btn{flex:1}.mobile-materials .course-materials-tip,.mobile-materials .reports-tip{padding:40px 20px;text-align:center}.mobile-modal .ant-modal-content{border-radius:12px}.mobile-modal .ant-modal-header{border-radius:12px 12px 0 0}.mobile-modal .ant-form-item-label>label{font-weight:500}.tablet-materials{padding:24px}.tablet-materials-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.tablet-materials .page-header{margin-bottom:24px}.tablet-materials .page-title{font-size:24px;font-weight:600;color:#333;margin:0 0 8px;display:flex;align-items:center;gap:10px}.tablet-materials .page-title .anticon{color:#42a5f5}.tablet-materials .page-subtitle{font-size:14px;color:#666;margin:0}.tablet-materials .content-card{border-radius:12px;box-shadow:0 2px 12px #00000014}.tablet-materials .table-toolbar{margin-bottom:16px}.tablet-materials .table-toolbar .ant-btn-primary{background:#42a5f5;border-color:#42a5f5}.tablet-materials .table-toolbar .ant-btn-primary:hover{background:#1e88e5;border-color:#1e88e5}.tablet-materials .feature-tip{padding:40px;text-align:center}.tablet-materials .feature-tip p{color:#666;margin:0}.tablet-materials .reports-intro{padding:12px 16px;background:#f5f5f5;border-radius:8px;margin-bottom:16px}.tablet-materials .reports-intro p{margin:0;color:#666;font-size:14px}.tablet-materials .report-content{max-height:60vh;overflow-y:auto}.tablet-materials .ant-table{border-radius:8px}.tablet-materials .ant-table-thead>tr>th{background:#fafafa;font-weight:600}.tablet-materials .ant-tabs-nav{margin-bottom:16px}.tablet-materials .ant-tabs-tab-active .ant-tabs-tab-btn{color:#42a5f5}.tablet-materials .ant-tabs-ink-bar{background:#42a5f5}.school-schedule-page{padding:16px 24px;background:#f5f7fa;min-height:100vh;width:100%;max-width:100%;min-width:0;overflow-x:hidden;box-sizing:border-box}.school-schedule-page .ant-card{max-width:100%;min-width:0}.school-schedule-page .ant-card .ant-card-body{max-width:100%;min-width:0;overflow-x:hidden}@media (max-width: 1200px){.school-schedule-page{padding:12px 8px}}.schedule-filters{background:#fff;padding:12px 16px;border-radius:8px;margin-bottom:12px;box-shadow:0 1px 2px #0000000d}.filter-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.filter-item{display:flex;align-items:center;gap:8px}.filter-label{color:#666;font-size:14px;white-space:nowrap}.schedule-toolbar{background:#fff;padding:12px 16px;border-radius:8px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 1px 2px #0000000d;flex-wrap:wrap}.toolbar-left{display:flex;align-items:center;gap:12px}.toolbar-center{display:flex;align-items:center;gap:16px}.toolbar-right{display:flex;align-items:center;gap:8px}.view-switcher{display:flex;border:1px solid #d9d9d9;border-radius:6px;overflow:hidden}.view-switcher .ant-btn{border:none;border-radius:0;padding:4px 16px}.view-switcher .ant-btn:not(:last-child){border-right:1px solid #d9d9d9}.date-navigator{display:flex;align-items:center;gap:8px}.date-range-text{font-size:16px;font-weight:500;color:#333;min-width:200px;text-align:center}.schedule-stats{background:#fff;padding:10px 16px;border-radius:8px;margin-bottom:12px;display:flex;align-items:center;gap:16px;font-size:14px;color:#666;box-shadow:0 1px 2px #0000000d}.stats-legend{margin-left:auto;display:flex;gap:16px}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:12px;height:12px;border-radius:2px}.legend-dot.unmarked{background:#42a5f5}.legend-dot.marked{background:#66bb6a}.schedule-content{background:#fff;border-radius:8px;padding:16px;min-height:700px;box-shadow:0 1px 2px #0000000d}.schedule-loading{display:flex;align-items:center;justify-content:center;height:400px;color:#999;font-size:16px}.schedule-week-view-container{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 2px #0000000d;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}.week-navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;background:#f5f5f5;border-radius:8px}.nav-btn{background:#fff;border:1px solid #d9d9d9;border-radius:6px;padding:6px 16px;color:#666;font-size:14px;transition:all .2s}.nav-btn:hover{background:#f0f0f0;border-color:#40a9ff;color:#40a9ff}.date-display{display:flex;align-items:center;gap:12px}.date-main{font-size:16px;font-weight:500;color:#333}.today-btn{background:#fff;border:1px solid #d9d9d9;border-radius:6px;padding:4px 12px;font-size:13px;color:#666}.today-btn:hover{background:#f0f0f0;border-color:#40a9ff;color:#40a9ff}.schedule-week-view{display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;min-height:700px;width:100%;max-width:100%;min-width:0}.schedule-week-view .week-time-column{flex:0 0 52px;width:52px;min-width:52px;background:#fafafa}.schedule-day-column{background:#fafafa;border-radius:0;overflow:hidden;display:flex;flex-direction:column;flex:1 1 0;min-width:0;width:0;border-right:1px solid #e8e8e8}.schedule-week-view .day-classes{overflow:hidden}.schedule-week-view .day-classes-track{width:100%}.schedule-event-fold{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;background:linear-gradient(180deg,#f5f5f7,#ebebed);border-left:4px solid #8e8e93;border-radius:4px;cursor:pointer;box-shadow:0 1px 2px #00000014;box-sizing:border-box;padding:2px;overflow:hidden}.schedule-event-fold-count{font-size:13px;font-weight:700;color:#1c1c1e;line-height:1.1}.schedule-event-fold-label{font-size:9px;color:#636366;line-height:1.1}.schedule-fold-list{max-height:280px;overflow-y:auto}.schedule-fold-list-item{padding:8px 4px;border-bottom:1px solid #f0f0f0;cursor:pointer}.schedule-fold-list-item:last-child{border-bottom:none}.schedule-fold-list-item:hover{background:#f5f5f5}.schedule-day-column:last-child{border-right:none}.schedule-day-column.today{background:#f0f9f0}.schedule-day-column.weekend .day-header{background:#fff5f5}.day-header{padding:12px 8px;text-align:center;background:#e8f5e9;border-bottom:1px solid #c8e6c9}.day-header.today{background:#4caf50}.day-name{font-size:20px;font-weight:600;color:#111;margin-bottom:4px}.day-header.today .day-name{color:#1a5c1a}.today-label{font-size:12px;color:#2d7a2d;margin-bottom:4px;font-weight:500}.day-header.today .today-label{color:#fff}.day-count{font-size:15px;color:#333;margin-top:3px;font-weight:500}.day-header.today .day-count{color:#2d7a2d}.day-classes{position:relative;padding:0;overflow:visible}.no-class{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#999}.no-class-icon{color:#d9d9d9;margin-bottom:12px}.no-class-text{font-size:13px;color:#999}.schedule-class-card,.week-class-card,.day-class-item{height:72px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.schedule-class-card{background:#fff;border-radius:6px;padding:6px 8px;margin-bottom:6px;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #00000014;min-width:110px;max-width:100%;display:flex;flex-direction:column;gap:2px;height:72px;overflow:hidden;box-sizing:border-box}.schedule-class-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f;z-index:100}.class-card-row{display:flex;align-items:center;gap:6px;min-width:0;width:100%;height:18px;line-height:18px}.class-time{font-size:12px;font-weight:600;color:#666;line-height:16px;height:16px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60px}.class-student{font-size:12px;font-weight:500;color:#333;height:16px;line-height:16px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.class-course{font-size:11px;color:#666;display:flex;align-items:center;height:28px;line-height:14px;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.class-tag{margin-top:2px;flex-shrink:0;height:auto}.week-class-card{position:absolute;left:3px;right:3px;border-radius:4px;padding:3px 5px;cursor:pointer;z-index:10;transition:box-shadow .2s,transform .15s;min-width:100px;display:flex;flex-direction:column;gap:1px;box-shadow:0 1px 2px #0000001a;overflow:visible}.week-class-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px);z-index:15}.week-class-card .class-time{font-size:10px;font-weight:600;white-space:nowrap;line-height:12px}.week-class-card .class-text{font-size:10px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:12px;max-width:100%}.week-class-card .class-secondary{font-size:9px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:11px}.day-class-item{position:absolute;border-radius:6px;padding:4px 6px;cursor:pointer;z-index:10;transition:box-shadow .2s,transform .15s;min-width:110px;min-height:48px;max-height:80px;overflow:hidden;box-sizing:border-box;display:flex;flex-direction:column;gap:2px}.day-class-item:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px);z-index:15}.day-class-item>div{max-width:100%;overflow:hidden}.day-class-item .class-time{font-size:11px;font-weight:600;height:14px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.day-class-item .class-info,.day-class-item .class-text{font-size:11px;color:#333;height:14px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;max-width:100%;box-sizing:border-box}.day-class-item .class-course{font-size:10px;color:#666;height:28px;line-height:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-width:100%;box-sizing:border-box}.schedule-day-view{display:flex;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 2px #0000000d}.schedule-day-column.single{min-height:400px}.schedule-month-view{border:1px solid #e8e8e8;border-radius:8px;overflow:hidden}.month-header{display:grid;grid-template-columns:repeat(7,1fr);background:#fafafa;border-bottom:1px solid #e8e8e8}.month-header-cell{padding:12px;text-align:center;font-weight:500;color:#666;font-size:14px}.month-body{background:#fff}.month-week{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid #e8e8e8}.month-week:last-child{border-bottom:none}.month-day{min-height:120px;padding:8px;border-right:1px solid #e8e8e8;background:#fff}.month-day:last-child{border-right:none}.month-day.other-month{background:#fafafa}.month-day.today{background:#f0f7ff}.month-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.month-day-number{font-size:14px;color:#333}.month-day-number.today{background:#42a5f5;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}.month-day-count{font-size:11px;color:#999}.month-day-classes{display:flex;flex-direction:column;gap:4px}.month-class-item{font-size:11px;padding:3px 6px;border-radius:3px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-class-item:hover{opacity:.8}.month-more{font-size:11px;color:#1890ff;cursor:pointer;padding:2px 0}.month-more:hover{text-decoration:underline}.ant-picker-calendar-mode-switch{display:none!important}.ant-picker-calendar-header{padding-right:0!important}.ant-picker-calendar .ant-picker-calendar-mode-switch{display:none!important}.ant-picker-calendar .ant-picker-calendar-header{padding-right:0!important}@media (max-width: 768px){.schedule-week-view .week-time-column{flex:0 0 40px;width:40px;min-width:40px}.schedule-week-view .day-header{padding:8px 4px}.schedule-week-view .day-name{font-size:11px}}@media (max-width: 1200px){.schedule-toolbar{flex-direction:column;align-items:flex-start}.toolbar-center{width:100%;justify-content:center}}.overview-stat-card{border-radius:8px;transition:box-shadow .2s}.overview-stat-card:hover{box-shadow:0 2px 8px #0000001a}.overview-stat-card .ant-statistic-title{font-size:13px;color:#8c8c8c}.overview-stat-card .ant-statistic-content-value{font-size:24px;font-weight:600}.status-legend-bar{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:12px;padding:8px 12px;background:#fafafa;border-radius:6px;font-size:12px;color:#666}.day-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 16px;background:#fff;border-radius:8px}.day-empty-state p{font-size:16px;color:#8c8c8c;margin-bottom:16px}.schedule-day-view-container{width:100%}.day-navigation{margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f5f5;border-radius:8px}.day-time-column{width:80px;border-right:1px solid #e8e8e8;background:#fafafa;flex-shrink:0}.day-time-slot{height:60px;padding:4px 8px;font-size:12px;color:#999;border-bottom:1px solid #f0f0f0;display:flex;align-items:flex-start}.day-classes-column{flex:1;position:relative;min-height:1440px}.day-hour-slot{height:60px;border-bottom:1px solid #f0f0f0}.day-time-indicator{position:absolute;left:0;right:0;height:2px;background:#ff4d4f;z-index:20;pointer-events:none}.day-time-indicator:before{content:"";position:absolute;left:0;top:-4px;width:10px;height:10px;background:#ff4d4f;border-radius:50%}.day-time-indicator-label{position:absolute;left:14px;top:-10px;font-size:11px;color:#ff4d4f;font-weight:600;line-height:1;white-space:nowrap;background:#ffffffe6;padding:1px 4px;border-radius:2px}.teacher-column-view{display:flex;flex-wrap:nowrap;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;border:1px solid #e8e8e8;box-shadow:0 1px 2px #0000000d}.teacher-column-time-scale{width:80px;min-width:80px;border-right:1px solid #e8e8e8;background:#fafafa;flex-shrink:0;position:sticky;left:0;z-index:3}.teacher-column{flex:1 0 150px;width:150px;min-width:150px;max-width:220px;flex-shrink:0;border-right:1px solid #f0f0f0;position:relative;overflow:hidden;transition:background .2s}.teacher-column:hover{background:#1890ff05}.teacher-column:last-child{border-right:none!important}.teacher-column-header{height:48px;padding:8px;border-bottom:1px solid #e8e8e8;display:flex;align-items:center;gap:8px;background:#fafafa;position:sticky;top:0;z-index:5}.teacher-column-header span{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-view-mode-switch{display:flex;align-items:center;gap:8px}.mobile-school-schedule{padding:16px 16px 160px}.mobile-school-schedule .page-title{font-size:20px;font-weight:600;color:#333;margin-bottom:16px;display:flex;align-items:center;gap:8px}.mobile-school-schedule .page-title .anticon{color:#42a5f5}.mobile-school-schedule .date-nav{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:12px 16px;border-radius:12px;margin-bottom:12px;box-shadow:0 2px 8px #0000000f}.mobile-school-schedule .nav-btn{width:40px;height:40px;border:none;background:#f5f5f5;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#666;cursor:pointer}.mobile-school-schedule .nav-btn:active{background:#e8e8e8}.mobile-school-schedule .date-display{text-align:center;cursor:pointer}.mobile-school-schedule .date-main{font-size:18px;font-weight:600;color:#333}.mobile-school-schedule .date-sub{font-size:12px;color:#666}.mobile-school-schedule .mobile-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.mobile-school-schedule .overview-item{background:#f5f5f5;border-radius:8px;padding:12px;text-align:center}.mobile-school-schedule .overview-item.highlight{background:#fff3e0}.mobile-school-schedule .overview-value{font-size:24px;font-weight:600;color:#333}.mobile-school-schedule .overview-label{font-size:12px;color:#8c8c8c;margin-top:2px}.mobile-school-schedule .mobile-filter-section{margin-bottom:16px}.mobile-school-schedule .mobile-filter-toggle{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fafafa;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.mobile-school-schedule .filter-toggle-text{display:flex;align-items:center;gap:4px;font-size:14px;color:#333}.mobile-school-schedule .mobile-filter-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.mobile-school-schedule .mobile-filter-panel{display:flex;flex-direction:column;gap:8px;padding:12px;margin-top:8px;background:#fafafa;border-radius:8px}.mobile-school-schedule .loading{display:flex;justify-content:center;padding:40px}.mobile-school-schedule .classes-list{display:flex;flex-direction:column;gap:8px}.mobile-school-schedule .class-card{border-radius:12px}.mobile-school-schedule .class-card .ant-card-body{padding:12px}.mobile-school-schedule .class-time{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#42a5f5;margin-bottom:8px}.mobile-school-schedule .class-time .duration{font-size:12px;font-weight:400;color:#999;margin-left:auto}.mobile-school-schedule .class-info{margin-bottom:12px}.mobile-school-schedule .info-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#333;margin-bottom:6px}.mobile-school-schedule .info-row .anticon{color:#42a5f5}.mobile-school-schedule .info-row .teacher{font-weight:500}.mobile-school-schedule .info-row .student{color:#666}.mobile-school-schedule .class-card-tags{display:flex;gap:4px;flex-wrap:wrap}.mobile-school-schedule .section-divider{margin:12px 0 8px;font-size:12px;color:#999}.mobile-school-schedule .mobile-empty-state{text-align:center;padding:48px 16px;color:#8c8c8c}.mobile-school-schedule .mobile-empty-state p{margin:16px 0;font-size:14px}.mobile-school-schedule .tip{margin-top:24px;text-align:center}.mobile-school-schedule .tip p{color:#999;font-size:12px;margin:0}.mobile-fab-actions{position:fixed;bottom:80px;right:16px;display:flex;flex-direction:column;gap:12px;z-index:100}.tablet-school-schedule{padding:20px 20px 80px}.tablet-school-schedule .page-header{margin-bottom:20px}.tablet-school-schedule .page-title{font-size:22px;font-weight:600;color:#333;margin:0 0 8px;display:flex;align-items:center;gap:10px}.tablet-school-schedule .page-title .anticon{color:#42a5f5}.tablet-school-schedule .page-subtitle{color:#666;margin:0;font-size:14px}.tablet-school-schedule .schedule-week-view-container{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 2px #0000000d}.tablet-school-schedule .week-navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;background:#f5f5f5;border-radius:8px}.tablet-school-schedule .nav-btn{background:#fff;border:1px solid #d9d9d9;border-radius:6px;padding:6px 16px;color:#666;font-size:14px;transition:all .2s}.tablet-school-schedule .nav-btn:hover{background:#f0f0f0;border-color:#40a9ff;color:#40a9ff}.tablet-school-schedule .date-display{display:flex;align-items:center;gap:12px}.tablet-school-schedule .date-main{font-size:16px;font-weight:500;color:#333}.tablet-school-schedule .today-btn{background:#fff;border:1px solid #d9d9d9;border-radius:6px;padding:4px 12px;font-size:13px;color:#666}.tablet-school-schedule .today-btn:hover{background:#f0f0f0;border-color:#40a9ff;color:#40a9ff}.tablet-school-schedule .filter-card{margin-bottom:16px;border-radius:12px}.tablet-school-schedule .stats-bar{display:flex;gap:24px;padding:12px 16px;background:#fff;border-radius:12px;margin-bottom:16px;box-shadow:0 2px 8px #0000000f}.tablet-school-schedule .loading{display:flex;justify-content:center;padding:60px}.tablet-school-schedule .schedule-week-view{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));gap:8px;min-height:700px;width:max-content;min-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.tablet-school-schedule .schedule-day-column{background:#fafafa;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;min-width:100px}.tablet-school-schedule .schedule-day-column.today{background:#f0f9f0}.tablet-school-schedule .schedule-day-column.weekend .day-header{background:#fff5f5}.tablet-school-schedule .day-header{padding:12px 8px;text-align:center;background:#e8f5e9;border-bottom:1px solid #c8e6c9}.tablet-school-schedule .day-header.today{background:#4caf50}.tablet-school-schedule .day-name{font-size:20px;font-weight:600;color:#111;margin-bottom:4px}.tablet-school-schedule .day-header.today .day-name{color:#1a5c1a}.tablet-school-schedule .today-label{font-size:12px;color:#2d7a2d;margin-bottom:4px;font-weight:500}.tablet-school-schedule .day-header.today .today-label{color:#fff}.tablet-school-schedule .day-count{font-size:15px;color:#333;margin-top:3px;font-weight:500}.tablet-school-schedule .day-header.today .day-count{color:#2d7a2d}.tablet-school-schedule .day-classes{flex:1;padding:8px;overflow-y:auto;max-height:calc(100vh - 250px);min-height:600px}.tablet-school-schedule .no-class{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#999}.tablet-school-schedule .no-class-icon{color:#d9d9d9;margin-bottom:12px}.tablet-school-schedule .no-class-text{font-size:13px;color:#999}.tablet-school-schedule .schedule-class-card{background:#fff;border-radius:6px;padding:6px 8px;margin-bottom:6px;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #00000014;overflow:hidden;min-width:0}.tablet-school-schedule .schedule-class-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.tablet-school-schedule .class-card-row{display:flex;align-items:center;gap:4px;min-width:0}.tablet-school-schedule .class-time{font-size:12px;font-weight:600;white-space:nowrap;flex-shrink:0}.tablet-school-schedule .class-student{font-size:12px;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.tablet-school-schedule .class-course{font-size:11px;color:#666;display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tablet-school-schedule .class-tag{margin-top:6px}.tablet-school-schedule .tip{text-align:center;margin-top:20px}.tablet-school-schedule .tip p{color:#999;font-size:13px;margin:0}.tablet-school-schedule .class-detail{padding:16px 0}.tablet-school-schedule .schedule-week-view-container{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}@media (max-width: 1400px){.tablet-school-schedule{padding:12px}.tablet-school-schedule .schedule-week-view-container{padding:8px}.tablet-school-schedule .schedule-week-view{gap:4px}.tablet-school-schedule .day-name{font-size:14px}.tablet-school-schedule .day-count{font-size:12px}.tablet-school-schedule .day-header{padding:8px 4px}.tablet-school-schedule .day-classes{padding:4px}.tablet-school-schedule .schedule-class-card{padding:6px;margin-bottom:4px}.tablet-school-schedule .class-time{font-size:11px}.tablet-school-schedule .class-student{font-size:12px}.tablet-school-schedule .class-course{font-size:10px}.tablet-school-schedule .no-class-icon svg{width:32px;height:32px}.tablet-school-schedule .filter-card{margin-bottom:8px}.tablet-school-schedule .stats-bar{margin-bottom:8px;padding:8px 12px}.tablet-school-schedule .week-navigation{padding:8px 12px;margin-bottom:8px}.tablet-school-schedule .date-main{font-size:14px}}.tablet-school-schedule .view-mode-bar{display:flex;justify-content:center;margin-bottom:12px}.tablet-school-schedule .tablet-day-view-container{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 2px #0000000d;min-height:400px}.tablet-school-schedule .tablet-day-view-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.tablet-school-schedule .tablet-stat-card{border-radius:8px;text-align:center}.tablet-school-schedule .tablet-stat-card .ant-statistic-title{font-size:12px;color:#8c8c8c}.tablet-school-schedule .tablet-stat-highlight{background:#fff3e0;border-color:#ffb74d}.tablet-school-schedule .tablet-day-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.tablet-school-schedule .tablet-day-timeline{background:#fff;border-radius:8px;padding:8px 0}.tablet-school-schedule .tablet-timeline-card:hover{box-shadow:0 4px 12px #0000001f!important;transform:translateY(-1px);transition:all .2s}.tablet-school-schedule .tablet-time-indicator{pointer-events:none}.tablet-school-schedule .tablet-teacher-columns{background:#fff;border-radius:8px;padding:0}.tablet-school-schedule .tablet-teacher-column{transition:background .2s}.mobile-reviews-requests{padding:16px 16px 80px}.mobile-reviews-requests .page-title{font-size:20px;font-weight:600;color:#333;margin-bottom:16px;display:flex;align-items:center;gap:8px}.mobile-reviews-requests .page-title .anticon{color:#42a5f5}.mobile-reviews-requests .tabs-container{margin-bottom:16px}.mobile-reviews-requests .stats-row{display:flex;gap:12px;margin-bottom:16px;overflow-x:auto;padding-bottom:8px}.mobile-reviews-requests .stat-card{flex:0 0 auto;min-width:100px;border-radius:12px;text-align:center}.mobile-reviews-requests .stat-card .ant-statistic-title{font-size:12px}.mobile-reviews-requests .stat-card .ant-statistic-content{font-size:20px}.mobile-reviews-requests .filter-bar{margin-bottom:16px}.mobile-reviews-requests .loading{display:flex;justify-content:center;padding:40px}.mobile-reviews-requests .reviews-list{display:flex;flex-direction:column;gap:12px}.mobile-reviews-requests .review-card{border-radius:12px}.mobile-reviews-requests .review-card .ant-card-body{padding:16px}.mobile-reviews-requests .review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.mobile-reviews-requests .review-people{font-size:14px}.mobile-reviews-requests .review-people .student{font-weight:600;color:#333}.mobile-reviews-requests .review-people .teacher{color:#666;font-size:12px}.mobile-reviews-requests .review-rating{display:flex;align-items:center;gap:8px;margin-bottom:8px}.mobile-reviews-requests .review-rating .score{font-weight:600;font-size:14px}.mobile-reviews-requests .review-comment{font-size:14px;color:#333;margin-bottom:8px;line-height:1.5}.mobile-reviews-requests .review-footer{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#999}.mobile-reviews-requests .requests-list{display:flex;flex-direction:column;gap:12px}.mobile-reviews-requests .request-card{border-radius:12px;border-left:4px solid #faad14}.mobile-reviews-requests .request-card .ant-card-body{padding:16px}.mobile-reviews-requests .request-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.mobile-reviews-requests .request-time{display:flex;align-items:center;gap:6px;font-size:16px;font-weight:600;color:#42a5f5}.mobile-reviews-requests .request-info{margin-bottom:12px}.mobile-reviews-requests .info-row{display:flex;align-items:center;gap:8px;font-size:14px;color:#333;margin-bottom:6px}.mobile-reviews-requests .info-row .anticon{color:#42a5f5}.mobile-reviews-requests .request-reason{background:#fff7e6;border:1px solid #ffd591;border-radius:8px;padding:12px;margin-bottom:12px}.mobile-reviews-requests .request-reason .label{font-size:12px;color:#999;margin-bottom:4px}.mobile-reviews-requests .request-reason .content{font-size:14px;color:#333}.mobile-reviews-requests .request-actions{display:flex;gap:12px}.mobile-reviews-requests .request-actions .ant-btn{flex:1}.mobile-reviews-requests .tip{margin-top:24px;text-align:center}.mobile-reviews-requests .tip p{color:#999;font-size:12px;margin:0}.tablet-reviews-requests{padding:20px 20px 80px}.tablet-reviews-requests .page-header{margin-bottom:20px}.tablet-reviews-requests .page-title{font-size:22px;font-weight:600;color:#333;margin:0 0 8px;display:flex;align-items:center;gap:10px}.tablet-reviews-requests .page-title .anticon{color:#42a5f5}.tablet-reviews-requests .page-subtitle{color:#666;margin:0;font-size:14px}.tablet-reviews-requests .stats-row{margin-bottom:16px}.tablet-reviews-requests .stat-card{border-radius:12px;height:100%}.tablet-reviews-requests .rating-distribution{display:flex;justify-content:space-around;padding:8px 0}.tablet-reviews-requests .rating-item{text-align:center}.tablet-reviews-requests .rating-item .count{font-size:20px;font-weight:600}.tablet-reviews-requests .rating-item .label{font-size:12px;color:#999}.tablet-reviews-requests .filter-card{margin-bottom:16px;border-radius:12px}.tablet-reviews-requests .content-card{border-radius:12px}.tablet-reviews-requests .loading{display:flex;justify-content:center;padding:60px}.tablet-reviews-requests .reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.tablet-reviews-requests .review-card{border-radius:10px}.tablet-reviews-requests .review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.tablet-reviews-requests .review-people{display:flex;align-items:center;gap:6px;font-size:13px}.tablet-reviews-requests .review-people .student{font-weight:600;color:#333}.tablet-reviews-requests .review-people .arrow{color:#999}.tablet-reviews-requests .review-people .teacher{color:#666}.tablet-reviews-requests .review-rating{display:flex;align-items:center;gap:6px}.tablet-reviews-requests .review-rating .score{font-weight:600;font-size:14px}.tablet-reviews-requests .review-comment{font-size:13px;color:#333;margin-bottom:10px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tablet-reviews-requests .review-footer{display:flex;justify-content:space-between;align-items:center}.tablet-reviews-requests .review-footer .meta{display:flex;align-items:center;gap:8px}.tablet-reviews-requests .review-footer .time{font-size:12px;color:#999}.tablet-reviews-requests .requests-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.tablet-reviews-requests .request-card{border-radius:10px;border-left:4px solid #faad14}.tablet-reviews-requests .request-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.tablet-reviews-requests .request-time{display:flex;align-items:center;gap:6px;font-size:15px;font-weight:600;color:#42a5f5}.tablet-reviews-requests .request-info{margin-bottom:10px}.tablet-reviews-requests .info-row{display:flex;align-items:center;gap:6px;font-size:13px;color:#333;margin-bottom:4px}.tablet-reviews-requests .info-row .anticon{color:#42a5f5}.tablet-reviews-requests .info-row .teacher{font-weight:500}.tablet-reviews-requests .info-row .arrow{color:#999}.tablet-reviews-requests .info-row .student{color:#666}.tablet-reviews-requests .request-reason{background:#fff7e6;border:1px solid #ffd591;border-radius:6px;padding:10px;margin-bottom:10px}.tablet-reviews-requests .request-reason .label{font-size:11px;color:#999;margin-bottom:4px}.tablet-reviews-requests .request-reason .content{font-size:13px;color:#333}.tablet-reviews-requests .request-actions{display:flex;justify-content:flex-end}.tablet-reviews-requests .tip{text-align:center;margin-top:20px}.tablet-reviews-requests .tip p{color:#999;font-size:13px;margin:0}@media (orientation: landscape) and (max-width: 1024px){.tablet-reviews-requests .reviews-grid,.tablet-reviews-requests .requests-grid{grid-template-columns:repeat(3,1fr)}}.mobile-system-settings{padding:16px 16px 80px}.mobile-system-settings .page-title{font-size:20px;font-weight:600;color:#333;margin-bottom:16px;display:flex;align-items:center;gap:8px}.mobile-system-settings .page-title .anticon{color:#42a5f5}.mobile-system-settings .loading{display:flex;justify-content:center;padding:40px}.mobile-system-settings .setting-card{border-radius:12px;margin-bottom:12px}.mobile-system-settings .setting-card .ant-card-body{padding:16px}.mobile-system-settings .card-header{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#333;margin-bottom:12px}.mobile-system-settings .card-header .anticon{color:#42a5f5}.mobile-system-settings .logo-preview{display:flex;justify-content:center;padding:16px 0}.mobile-system-settings .no-logo{width:100px;height:100px;border-radius:50%;border:2px dashed #d9d9d9;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#999;gap:4px}.mobile-system-settings .no-logo .anticon{font-size:24px}.mobile-system-settings .config-status{text-align:center;padding:12px;background:#f5f5f5;border-radius:8px}.mobile-system-settings .status-text{color:#999;font-size:14px}.mobile-system-settings .faq-stats{text-align:center;padding:12px}.mobile-system-settings .faq-stats .stat-value{font-size:32px;font-weight:600;color:#42a5f5}.mobile-system-settings .faq-stats .stat-label{font-size:14px;color:#666}.mobile-system-settings .tip{margin-top:24px;text-align:center}.mobile-system-settings .tip p{color:#999;font-size:12px;margin:0}.tablet-system-settings{padding:20px 20px 80px}.tablet-system-settings .page-header{margin-bottom:20px}.tablet-system-settings .page-title{font-size:22px;font-weight:600;color:#333;margin:0 0 8px;display:flex;align-items:center;gap:10px}.tablet-system-settings .page-title .anticon{color:#42a5f5}.tablet-system-settings .page-subtitle{color:#666;margin:0;font-size:14px}.tablet-system-settings .loading{display:flex;justify-content:center;padding:60px}.tablet-system-settings .setting-card{border-radius:12px;height:100%}.tablet-system-settings .card-header{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#333;margin-bottom:16px}.tablet-system-settings .card-header .anticon{color:#42a5f5}.tablet-system-settings .logo-preview{display:flex;justify-content:center;padding:16px 0}.tablet-system-settings .no-logo{width:120px;height:120px;border-radius:50%;border:2px dashed #d9d9d9;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#999;gap:4px}.tablet-system-settings .no-logo .anticon{font-size:32px}.tablet-system-settings .config-info{text-align:center;padding:16px}.tablet-system-settings .config-info p{margin:0 0 8px;color:#333}.tablet-system-settings .config-info .hint{color:#999;font-size:13px}.tablet-system-settings .about-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:8px}.tablet-system-settings .about-preview span{color:#666}.tablet-system-settings .about-preview .not-set{color:#999}.tablet-system-settings .tip{text-align:center;margin-top:20px}.tablet-system-settings .tip p{color:#999;font-size:13px;margin:0}.mobile-recurring-bookings{padding:16px 16px 80px}.mobile-recurring-bookings .page-title{font-size:20px;font-weight:600;color:#333;margin-bottom:16px;display:flex;align-items:center;gap:8px}.mobile-recurring-bookings .page-title .anticon{color:#42a5f5}.mobile-recurring-bookings .student-select{margin-bottom:16px}.mobile-recurring-bookings .loading{display:flex;justify-content:center;padding:40px}.mobile-recurring-bookings .bookings-list{display:flex;flex-direction:column;gap:12px}.mobile-recurring-bookings .booking-card{border-radius:12px}.mobile-recurring-bookings .booking-card .ant-card-body{padding:16px}.mobile-recurring-bookings .booking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.mobile-recurring-bookings .booking-teacher{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#333}.mobile-recurring-bookings .booking-teacher .anticon{color:#42a5f5}.mobile-recurring-bookings .booking-info{margin-bottom:12px}.mobile-recurring-bookings .info-row{display:flex;align-items:center;gap:8px;font-size:14px;color:#333;margin-bottom:6px}.mobile-recurring-bookings .info-row .anticon{color:#42a5f5}.mobile-recurring-bookings .info-row .time-range{color:#42a5f5;font-weight:500}.mobile-recurring-bookings .booking-stats{display:flex;gap:24px;padding:12px;background:#f5f5f5;border-radius:8px;margin-bottom:12px}.mobile-recurring-bookings .booking-stats .stat{display:flex;flex-direction:column;align-items:center}.mobile-recurring-bookings .booking-stats .stat .label{font-size:12px;color:#999}.mobile-recurring-bookings .booking-stats .stat .value{font-size:18px;font-weight:600;color:#42a5f5}.mobile-recurring-bookings .booking-actions{display:flex;gap:8px}.mobile-recurring-bookings .tip{margin-top:24px;text-align:center}.mobile-recurring-bookings .tip p{color:#999;font-size:12px;margin:0}.tablet-recurring-bookings{padding:20px 20px 80px}.tablet-recurring-bookings .page-header{margin-bottom:20px}.tablet-recurring-bookings .page-title{font-size:22px;font-weight:600;color:#333;margin:0 0 8px;display:flex;align-items:center;gap:10px}.tablet-recurring-bookings .page-title .anticon{color:#42a5f5}.tablet-recurring-bookings .page-subtitle{color:#666;margin:0;font-size:14px}.tablet-recurring-bookings .top-row{margin-bottom:16px}.tablet-recurring-bookings .select-card,.tablet-recurring-bookings .stats-card{border-radius:12px;height:100%}.tablet-recurring-bookings .content-card{border-radius:12px}.tablet-recurring-bookings .loading{display:flex;justify-content:center;padding:60px}.tablet-recurring-bookings .bookings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.tablet-recurring-bookings .booking-card{border-radius:10px}.tablet-recurring-bookings .booking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.tablet-recurring-bookings .booking-teacher{display:flex;align-items:center;gap:6px;font-size:15px;font-weight:600;color:#333}.tablet-recurring-bookings .booking-teacher .anticon{color:#42a5f5}.tablet-recurring-bookings .booking-info{margin-bottom:10px}.tablet-recurring-bookings .info-row{display:flex;align-items:center;gap:6px;font-size:13px;color:#333;margin-bottom:4px}.tablet-recurring-bookings .info-row .anticon{color:#42a5f5}.tablet-recurring-bookings .info-row.time{color:#42a5f5;font-weight:500;padding-left:20px}.tablet-recurring-bookings .booking-stats{display:flex;gap:16px;padding:10px;background:#f5f5f5;border-radius:6px;margin-bottom:10px}.tablet-recurring-bookings .booking-stats .stat{display:flex;flex-direction:column;align-items:center}.tablet-recurring-bookings .booking-stats .stat .value{font-size:16px;font-weight:600;color:#42a5f5}.tablet-recurring-bookings .booking-stats .stat .label{font-size:11px;color:#999}.tablet-recurring-bookings .booking-actions{display:flex;flex-wrap:wrap;gap:6px}.tablet-recurring-bookings .tip{text-align:center;margin-top:20px}.tablet-recurring-bookings .tip p{color:#999;font-size:13px;margin:0}@media (orientation: landscape) and (max-width: 1024px){.tablet-recurring-bookings .bookings-grid{grid-template-columns:repeat(3,1fr)}}.admin-booking-page{padding:0}.step-content{min-height:300px;padding:16px 0}.lookup-section{margin-bottom:16px}.student-info-card{border-left:3px solid #1890ff}.time-slots-container{max-height:500px;overflow-y:auto}.date-group{margin-bottom:8px}.slots-grid{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 8px}.slot-btn{min-width:72px}.slot-btn.selected{font-weight:600}.duration-selector{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.booking-result{text-align:center}@media (max-width: 768px){.duration-selector{flex-direction:column;align-items:flex-start}.duration-selector .ant-select{width:100%!important}.slots-grid{gap:6px}.slot-btn{min-width:64px;font-size:13px}}:root{--ios-blue: #007AFF;--ios-purple: #AF52DE;--ios-pink: #FF2D55;--ios-red: #FF453A;--ios-orange: #FF9F0A;--ios-yellow: #FFD60A;--ios-green: #34C759;--ios-teal: #5AC8FA;--ios-indigo: #5856D6;--ios-bg: #F5F5F7;--ios-card-bg: rgba(255, 255, 255, .8);--ios-glass-bg: rgba(255, 255, 255, .72);--ios-glass-border: rgba(0, 0, 0, .06);--ios-text-primary: #1D1D1F;--ios-text-secondary: #6E6E73;--ios-text-tertiary: #8E8E93;--ios-radius-xs: 8px;--ios-radius-sm: 12px;--ios-radius-md: 16px;--ios-radius-lg: 20px;--ios-radius-xl: 24px;--ios-radius-2xl: 28px;--ios-shadow-card: 0 4px 18px rgba(0, 0, 0, .04);--ios-shadow-card-hover: 0 8px 28px rgba(0, 0, 0, .06);--ios-shadow-float: 0 12px 40px rgba(0, 0, 0, .08);--ios-shadow-modal: 0 25px 80px rgba(0, 0, 0, .15);--ios-space-xs: 8px;--ios-space-sm: 12px;--ios-space-md: 16px;--ios-space-lg: 20px;--ios-space-xl: 24px;--ios-space-2xl: 28px;--ios-transition: all .2s ease;--ios-transition-spring: all .3s cubic-bezier(.34, 1.56, .64, 1);--ios-transition-smooth: all .25s cubic-bezier(.4, 0, .2, 1);--ios-tabbar-height: 84px;--ios-safe-area-bottom: env(safe-area-inset-bottom, 20px)}.ios-font{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ios-page{min-height:100vh;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden;background:var(--ios-bg);padding:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}.ios-header{background:var(--ios-glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--ios-glass-border);padding:16px 20px 20px;position:sticky;top:0;z-index:100}.ios-header-content{display:flex;justify-content:space-between;align-items:flex-start}.ios-greeting{font-size:14px;color:var(--ios-text-secondary);margin-bottom:4px}.ios-main-title{font-size:34px;font-weight:700;color:var(--ios-text-primary);line-height:1.1;margin:0}.ios-main-title .wave{display:inline-block;animation:wave 1.5s ease-in-out infinite}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(20deg)}75%{transform:rotate(-20deg)}}.ios-subtitle{font-size:15px;color:var(--ios-text-tertiary);margin-top:6px}.ios-avatar-wrapper{position:relative}.ios-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--ios-blue),var(--ios-purple));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:18px;box-shadow:var(--ios-shadow-card)}.ios-avatar-status{position:absolute;bottom:2px;right:2px;width:12px;height:12px;background:var(--ios-green);border-radius:50%;border:2px solid white}.ios-content{width:100%;max-width:100%;box-sizing:border-box;padding:20px;padding-bottom:calc(var(--ios-tabbar-height) + var(--ios-safe-area-bottom) + 20px)}.ios-hero-card{background:linear-gradient(135deg,#f8faff,#eef4ff);border-radius:var(--ios-radius-2xl);padding:var(--ios-space-xl);box-shadow:var(--ios-shadow-card);margin-bottom:var(--ios-space-xl);position:relative;overflow:hidden}.ios-hero-card:before{content:"";position:absolute;top:-50px;right:-50px;width:150px;height:150px;background:radial-gradient(circle,rgba(90,200,250,.15) 0%,transparent 70%);border-radius:50%}.ios-hero-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.ios-hero-title{font-size:13px;color:var(--ios-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.ios-hero-icon{width:44px;height:44px;background:#5ac8fa26;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px}.ios-hero-main-stat{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}.ios-hero-number{font-size:56px;font-weight:700;color:var(--ios-text-primary);line-height:1}.ios-hero-unit{font-size:18px;color:var(--ios-text-secondary);font-weight:500}.ios-hero-change{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:var(--ios-green);background:#34c7591f;padding:4px 10px;border-radius:20px}.ios-hero-change.down{color:var(--ios-red);background:#ff453a1f}.ios-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ios-space-md);width:100%;margin-bottom:var(--ios-space-xl)}.ios-stat-card{min-width:0;box-sizing:border-box;background:var(--ios-card-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--ios-radius-xl);padding:var(--ios-space-lg);box-shadow:var(--ios-shadow-card);transition:var(--ios-transition-spring);cursor:pointer;border:1px solid rgba(0,0,0,.04);overflow:hidden}.ios-stat-card:hover{transform:translateY(-3px);box-shadow:var(--ios-shadow-card-hover)}.ios-stat-card:active{transform:scale(.98)}.ios-stat-icon-wrapper{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-size:20px}.ios-stat-icon-wrapper.teachers{background:#5ac8fa26}.ios-stat-icon-wrapper.students{background:#34c75926}.ios-stat-icon-wrapper.materials{background:#ff9f0a26}.ios-stat-icon-wrapper.pending{background:#ff453a26}.ios-stat-label{font-size:13px;color:var(--ios-text-tertiary);margin-bottom:6px}.ios-stat-value{font-size:28px;font-weight:700;color:var(--ios-text-primary);line-height:1;margin-bottom:6px}.ios-stat-change{font-size:12px;color:var(--ios-text-secondary);display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px;min-width:0;line-height:1.3}.ios-stat-change .up{color:var(--ios-green);font-weight:600}.ios-stat-change .down{color:var(--ios-red);font-weight:600}.ios-chart-card{background:var(--ios-card-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--ios-radius-2xl);padding:var(--ios-space-xl);box-shadow:var(--ios-shadow-card);margin-bottom:var(--ios-space-xl);border:1px solid rgba(0,0,0,.04)}.ios-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ios-space-lg)}.ios-chart-title{font-size:18px;font-weight:600;color:var(--ios-text-primary)}.ios-chart-period{font-size:13px;color:var(--ios-text-tertiary);background:#0000000a;padding:6px 12px;border-radius:999px}.ios-chart-container{height:200px;position:relative}.ios-chart-gradient{position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to top,rgba(90,200,250,.15),transparent);border-radius:0 0 var(--ios-radius-xl) var(--ios-radius-xl)}.ios-upcoming-card{background:var(--ios-card-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--ios-radius-2xl);padding:var(--ios-space-xl);box-shadow:var(--ios-shadow-card);margin-bottom:var(--ios-space-xl);border:1px solid rgba(0,0,0,.04)}.ios-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ios-space-lg)}.ios-section-title{font-size:18px;font-weight:600;color:var(--ios-text-primary);display:flex;align-items:center;gap:6px}.ios-section-emoji{font-size:16px;line-height:1}.ios-section-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:#34c75924;color:var(--ios-green);font-size:12px;font-weight:700}.ios-recent-student-list{display:flex;flex-direction:column;gap:10px}.ios-recent-student-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#00000005;border-radius:var(--ios-radius-lg);cursor:pointer;transition:var(--ios-transition)}.ios-recent-student-item:active{background:#0000000d}.ios-recent-student-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.ios-recent-student-label{font-size:15px;font-weight:600;color:var(--ios-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ios-recent-student-source{flex-shrink:0;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.2}.ios-recent-student-source--phone{background:#007aff1f;color:var(--ios-blue)}.ios-recent-student-source--wechat{background:#34c75924;color:var(--ios-green)}.ios-recent-student-source--other{background:#8e8e9324;color:var(--ios-text-secondary)}.ios-recent-student-time{flex-shrink:0;font-size:12px;color:var(--ios-text-tertiary);white-space:nowrap}.ios-empty-state--compact{padding:20px 0 8px}.ios-pending-app-card{padding-top:18px;padding-bottom:18px}.ios-pending-app-header{margin-bottom:0;gap:12px}.ios-pending-app-title{margin:0;min-width:0;flex:1}.ios-pending-app-icon{flex-shrink:0;font-size:18px;color:var(--ios-purple)}.ios-pending-app-meta{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.ios-pending-app-count{font-size:28px;font-weight:700;line-height:1;color:var(--ios-text-primary)}.ios-pending-app-label{font-size:15px;line-height:1;color:var(--ios-text-secondary);white-space:nowrap}.ios-pending-app-arrow{font-size:12px;color:var(--ios-text-tertiary)}.ios-section-link{font-size:14px;color:var(--ios-blue);font-weight:500;cursor:pointer;transition:var(--ios-transition)}.ios-section-link:hover{opacity:.7}.ios-course-list{display:flex;flex-direction:column;gap:var(--ios-space-md)}.ios-course-item{display:flex;align-items:center;gap:var(--ios-space-md);padding:var(--ios-space-md);background:#00000005;border-radius:var(--ios-radius-lg);transition:var(--ios-transition);cursor:pointer}.ios-course-item:hover{background:#0000000a}.ios-course-time{min-width:60px;text-align:center}.ios-course-time .time{font-size:16px;font-weight:600;color:var(--ios-text-primary)}.ios-course-time .period{font-size:11px;color:var(--ios-text-tertiary);text-transform:uppercase}.ios-course-divider{width:1px;height:40px;background:#00000014}.ios-course-info{flex:1}.ios-course-name{font-size:15px;font-weight:600;color:var(--ios-text-primary);margin-bottom:4px}.ios-course-meta{font-size:13px;color:var(--ios-text-secondary);display:flex;align-items:center;gap:8px}.ios-course-badge{font-size:12px;padding:4px 10px;border-radius:999px;background:var(--ios-blue);color:#fff;font-weight:500}.ios-animate-in{animation:iosSlideUp .4s ease-out forwards;opacity:0}.ios-animate-in:nth-child(1){animation-delay:.05s}.ios-animate-in:nth-child(2){animation-delay:.1s}.ios-animate-in:nth-child(3){animation-delay:.15s}.ios-animate-in:nth-child(4){animation-delay:.2s}.ios-animate-in:nth-child(5){animation-delay:.25s}.ios-animate-in:nth-child(6){animation-delay:.3s}.ios-bounce{animation:iosBounce .5s ease-out}@keyframes iosBounce{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.ios-pulse{animation:iosPulse 2s ease-in-out infinite}@keyframes iosPulse{0%,to{opacity:1}50%{opacity:.6}}.ios-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;background:var(--ios-red);border-radius:9px;font-size:11px;font-weight:600;color:#fff;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 2px 8px #ff453a66}.ios-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.ios-empty-icon{font-size:48px;color:var(--ios-text-tertiary);margin-bottom:16px;opacity:.5}.ios-empty-text{font-size:15px;color:var(--ios-text-secondary)}.ios-loading{display:flex;align-items:center;justify-content:center;padding:60px 20px}.ios-spinner{width:32px;height:32px;border:3px solid rgba(0,122,255,.2);border-top-color:var(--ios-blue);border-radius:50%;animation:iosSpin .8s linear infinite}@keyframes iosSpin{to{transform:rotate(360deg)}}.ios-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 20px;border-radius:var(--ios-radius-md);font-size:15px;font-weight:600;border:none;cursor:pointer;transition:var(--ios-transition)}.ios-button-primary{background:var(--ios-blue);color:#fff}.ios-button-primary:hover{background:#0066d6;transform:translateY(-1px)}.ios-button-primary:active{transform:scale(.98)}.ios-button-secondary{background:#007aff1a;color:var(--ios-blue)}.ios-button-ghost{background:transparent;color:var(--ios-blue)}.ios-divider{height:1px;background:#00000014;margin:16px 0}.ios-list-item{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.06);cursor:pointer;transition:var(--ios-transition)}.ios-list-item:last-child{border-bottom:none}.ios-list-item:hover{background:#00000005;margin:0 -10px;padding:14px 10px;border-radius:var(--ios-radius-sm)}@media (max-width: 480px){.ios-stat-grid{gap:10px}.ios-stat-card{padding:12px}.ios-stat-change{font-size:11px}.ios-stat-value{font-size:24px}.ios-hero-number{font-size:48px}.ios-content{padding:16px;padding-bottom:calc(var(--ios-tabbar-height) + var(--ios-safe-area-bottom) + 16px)}}.more-page{padding-top:0!important}.more-page .ios-content{padding:16px 16px 96px}.more-sheet{padding:0 4px 20px}.more-profile-card{display:flex;align-items:center;padding:24px;margin:0 -4px 24px;background:#ffffffe6;border-radius:28px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 20px #0000000a}.more-profile-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #00000014}.more-profile-card:active{transform:scale(.98)}.more-avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#007aff,#5856d6);display:flex;align-items:center;justify-content:center;margin-right:16px;box-shadow:0 4px 12px #007aff4d}.more-avatar-initials{font-size:24px;font-weight:700;color:#fff;letter-spacing:1px}.more-profile-info{flex:1}.more-profile-name{font-size:20px;font-weight:700;color:var(--ios-text-primary, #1D1D1F);margin:0 0 4px;line-height:1.2}.more-profile-role{font-size:14px;color:var(--ios-blue, #007AFF);font-weight:500;margin:0 0 2px}.more-profile-org{font-size:13px;color:var(--ios-text-tertiary, #8E8E93);margin:0}.more-profile-arrow{font-size:14px;color:var(--ios-text-tertiary, #8E8E93);transition:transform .2s ease}.more-profile-card:hover .more-profile-arrow{transform:translate(4px);color:var(--ios-blue, #007AFF)}.more-menu-section{margin-bottom:24px;opacity:0;animation:iosSlideUp .4s ease-out forwards}.more-menu-section-title{font-size:16px;font-weight:600;color:var(--ios-text-primary, #1D1D1F);margin:0 0 12px 8px;letter-spacing:-.3px}.more-menu-card{background:#fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;overflow:hidden;box-shadow:0 4px 20px #0000000a;border:1px solid rgba(0,0,0,.04)}.more-menu-item{display:flex;align-items:center;padding:18px;cursor:pointer;transition:all .2s ease;border-bottom:.5px solid rgba(0,0,0,.06)}.more-menu-item:last-child{border-bottom:none}.more-menu-item:hover{background:#00000005;transform:translateY(-1px)}.more-menu-item:active{background:#0000000a;transform:scale(.99)}.more-menu-icon{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-right:14px;flex-shrink:0;font-size:20px}.more-menu-content{flex:1;display:flex;flex-direction:column;gap:2px}.more-menu-label{font-size:16px;font-weight:600;color:var(--ios-text-primary, #1D1D1F);line-height:1.3}.more-menu-subtitle{font-size:13px;color:var(--ios-text-tertiary, #8E8E93);line-height:1.3}.more-menu-arrow{font-size:12px;color:var(--ios-text-tertiary, #8E8E93);transition:all .2s ease;margin-left:8px}.more-menu-item:hover .more-menu-arrow{transform:translate(4px);color:var(--ios-blue, #007AFF)}.more-version{text-align:center;padding:20px 0 10px}.more-version p{font-size:12px;color:var(--ios-text-tertiary, #8E8E93);margin:0}.more-logout-section{margin-top:8px;padding-top:8px}.more-logout-btn{width:100%;padding:18px;background:#fffc;border:none;border-radius:20px;font-size:16px;font-weight:600;color:#ff3b30;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 20px #0000000a}.more-logout-btn:hover{background:#ff3b301a;transform:translateY(-1px)}.more-logout-btn:active{transform:scale(.99)}@keyframes iosSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.more-menu-section:nth-child(1){animation-delay:.05s}.more-menu-section:nth-child(2){animation-delay:.1s}.more-menu-section:nth-child(3){animation-delay:.15s}.more-menu-section:nth-child(4){animation-delay:.2s}.more-menu-section:nth-child(5){animation-delay:.25s}@media (prefers-color-scheme: dark){.more-profile-card{background:#282828e6}.more-profile-name{color:#fffffff2}.more-menu-card{background:#282828cc}.more-menu-label{color:#fffffff2}.more-menu-item{border-bottom-color:#ffffff14}.more-logout-btn{background:#282828cc}}@media (max-width: 380px){.more-profile-card{padding:20px}.more-avatar{width:56px;height:56px;margin-right:12px}.more-avatar-initials{font-size:20px}.more-profile-name{font-size:18px}.more-menu-item{padding:14px}.more-menu-icon{width:40px;height:40px;margin-right:12px;font-size:18px}.more-menu-label{font-size:15px}.more-menu-subtitle{font-size:12px}}.mobile-classin-config{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-classin-config .page-title{font-size:20px;margin-bottom:16px}.mobile-classin-config .config-card{margin-bottom:16px;border-radius:8px}.mobile-classin-config .info-card{border-radius:8px}.mobile-classin-config .info-card h3{margin-bottom:12px}.mobile-classin-config .info-card ul{padding-left:20px;margin:0}.mobile-classin-config .info-card li{margin-bottom:8px;color:#666}.tablet-classin-config{padding:24px}.tablet-classin-config .page-title{font-size:24px;margin-bottom:24px}.tablet-classin-config ul{padding-left:20px}.tablet-classin-config li{margin-bottom:8px;color:#666}.mobile-logo-upload{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-logo-upload .page-title{font-size:20px;margin-bottom:16px}.mobile-logo-upload .logo-card,.mobile-logo-upload .upload-card,.mobile-logo-upload .info-card{margin-bottom:16px;border-radius:8px}.mobile-logo-upload .logo-card h3,.mobile-logo-upload .upload-card h3,.mobile-logo-upload .info-card h3{margin-bottom:12px}.mobile-logo-upload .logo-preview{display:flex;justify-content:center;padding:16px}.mobile-logo-upload .logo-container{width:150px;height:150px;border-radius:50%;overflow:hidden;border:2px solid #f0f0f0;display:flex;align-items:center;justify-content:center;background:#fafafa}.mobile-logo-upload .logo-placeholder{width:150px;height:150px;border-radius:50%;border:2px dashed #d9d9d9;display:flex;align-items:center;justify-content:center;background:#fafafa}.mobile-logo-upload .upload-tip{color:#666;font-size:13px;margin-bottom:12px}.mobile-logo-upload ul{padding-left:20px;margin:0}.mobile-logo-upload li{margin-bottom:8px;color:#666;font-size:14px}.tablet-logo-upload{padding:24px}.tablet-logo-upload .page-title{font-size:24px;margin-bottom:24px}.tablet-logo-upload .logo-preview{display:flex;justify-content:center;padding:24px}.tablet-logo-upload .logo-container{width:200px;height:200px;border-radius:50%;overflow:hidden;border:2px solid #f0f0f0;display:flex;align-items:center;justify-content:center;background:#fafafa}.tablet-logo-upload .logo-placeholder{width:200px;height:200px;border-radius:50%;border:2px dashed #d9d9d9;display:flex;align-items:center;justify-content:center;background:#fafafa}.tablet-logo-upload ul{padding-left:20px}.tablet-logo-upload li{margin-bottom:8px;color:#666}.mobile-about-config{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-about-config .page-title{font-size:20px;margin-bottom:16px}.mobile-about-config .config-card{border-radius:8px}.tablet-about-config{padding:24px}.tablet-about-config .page-title{font-size:24px;margin-bottom:24px}.tablet-about-config ul{padding-left:20px}.tablet-about-config li{margin-bottom:8px;color:#666}.mobile-faq-config{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-faq-config .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.mobile-faq-config .page-header h1{margin:0;font-size:20px}.mobile-faq-config .desktop-tip{margin-bottom:16px}.mobile-faq-config .questions-list{padding:8px 0}.mobile-faq-config .question-card{margin-bottom:8px}.mobile-faq-config .question-title{font-weight:500;margin-bottom:8px;color:#333}.mobile-faq-config .question-answer{color:#666;font-size:14px;white-space:pre-wrap}.mobile-faq-config .no-questions{text-align:center;color:#999;padding:16px}.tablet-faq-config{padding:24px}.tablet-faq-config .category-header{display:flex;justify-content:space-between;align-items:center;width:100%}.tablet-faq-config .question-item{margin-bottom:12px}.tablet-faq-config .question-label{font-weight:500;margin-bottom:4px;color:#666}.tablet-faq-config .question-content{padding:8px 12px;background:#f5f5f5;border-radius:4px;cursor:pointer;min-height:40px;border:1px dashed #d9d9d9}.mobile-cancel-requests{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-cancel-loading{display:flex;justify-content:center;align-items:center;min-height:100vh}.mobile-cancel-requests .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.mobile-cancel-requests .page-header h1{margin:0;font-size:20px}.request-card{margin-bottom:12px;border-radius:8px}.request-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.teacher-name{font-weight:600;font-size:16px}.request-info{font-size:14px;color:#666;line-height:1.8}.request-info .reason{color:#ff9800;margin-top:4px}.request-actions{margin-top:12px;text-align:right}.mobile-modal .detail-content{padding:8px 0}.detail-item{margin-bottom:16px}.detail-item label{display:block;font-size:12px;color:#999;margin-bottom:4px}.detail-item span{font-size:14px;color:#333}.reason-box{padding:12px;background:#fff7e6;border-radius:4px;border:1px solid #ffd591;font-size:14px}.action-buttons{width:100%;display:flex;justify-content:flex-end;margin-top:24px;gap:12px}.tablet-cancel-requests{padding:24px}.tablet-cancel-requests .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tablet-cancel-requests .page-header h1{margin:0;font-size:24px}.reason-box{padding:12px;background:#fff7e6;border-radius:4px;border:1px solid #ffd591}.mobile-favorite-statistics{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-loading{display:flex;justify-content:center;align-items:center;min-height:100vh}.mobile-favorite-statistics .page-title{font-size:20px;margin-bottom:16px}.mobile-favorite-statistics .stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.mobile-favorite-statistics .stat-card{border-radius:8px}.mobile-favorite-statistics .section-card{margin-bottom:16px;border-radius:8px}.mobile-favorite-statistics .teacher-item{display:flex;align-items:center;gap:8px;width:100%}.mobile-favorite-statistics .teacher-item .rank{width:24px;text-align:center}.mobile-favorite-statistics .teacher-item .name{flex:1}.mobile-favorite-statistics .recent-item{display:flex;align-items:center;gap:8px;width:100%;font-size:13px}.mobile-favorite-statistics .recent-item .time{color:#999;font-size:12px}.mobile-favorite-statistics .recent-item .student,.mobile-favorite-statistics .recent-item .teacher{flex:1}.tablet-favorite-statistics{padding:24px}.tablet-favorite-statistics .page-title{font-size:24px;margin-bottom:24px}.mobile-student-profiles{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-student-profiles .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.mobile-student-profiles .page-header h1{margin:0;font-size:20px}.mobile-student-profiles .search-box{margin-bottom:16px}.profile-card{margin-bottom:12px;border-radius:8px}.profile-card .profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.profile-card .student-info{display:flex;align-items:center;gap:8px}.profile-card .student-name{font-weight:600;font-size:16px}.profile-card .english-name{font-size:12px;color:#999}.profile-card .profile-meta{font-size:13px;color:#666;line-height:1.8}.profile-card .profile-tags{margin-top:8px}.detail-section .section-title{font-weight:500;margin-bottom:8px;color:#333}.detail-section .section-content{color:#666}.tablet-student-profiles{padding:24px}.mobile-teacher-approval{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-teacher-approval .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.mobile-teacher-approval .page-header h1{margin:0;font-size:20px}.teacher-card{margin-bottom:12px;border-radius:8px}.teacher-card .teacher-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.teacher-card .teacher-name{font-weight:600;font-size:16px}.teacher-card .teacher-email{font-size:13px;color:#666;margin-bottom:8px}.teacher-card .pending-changes{font-size:13px;color:#ff9800}.teacher-card .card-actions{margin-top:12px;display:flex;justify-content:flex-end;gap:8px}.detail-section .section-title{font-weight:500;margin-bottom:8px;color:#333;font-size:14px}.detail-section .section-content{color:#666;font-size:14px}.tablet-teacher-approval{padding:24px}.tablet-teacher-approval h1{font-size:24px;margin-bottom:24px}.mobile-reviews{padding:16px;background:#f5f5f5;min-height:100vh}.mobile-reviews .page-title{font-size:20px;margin-bottom:16px}.mobile-reviews .stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.mobile-reviews .stat-card{border-radius:8px}.review-card{margin-bottom:12px;border-radius:8px}.review-card .review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.review-card .student-name{font-weight:600;font-size:15px}.review-card .review-time{font-size:12px;color:#999}.review-card .teacher-name{font-size:13px;color:#666;margin-bottom:8px}.review-card .review-rating{margin-bottom:8px}.review-card .review-comment{font-size:14px;color:#333;margin-bottom:8px;padding:8px;background:#f5f5f5;border-radius:4px}.review-card .review-actions{display:flex;justify-content:flex-end;gap:8px}.detail-section{margin-bottom:16px}.detail-section .section-title{font-weight:500;margin-bottom:4px;color:#999;font-size:12px}.detail-section .section-content{color:#333;font-size:14px}.tablet-reviews{padding:24px}.tablet-reviews .page-title{font-size:24px;margin-bottom:24px}.apple-header{background:#ffffffbf;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(0,0,0,.06);padding:20px 24px;position:sticky;top:0;z-index:100}.header-content{display:flex;align-items:center;justify-content:space-between;max-width:1400px;margin:0 auto}.header-left{display:flex;flex-direction:column;gap:4px}.header-title{font-size:34px;font-weight:700;color:#1d1d1f;margin:0;letter-spacing:-.5px;line-height:1.1}.header-subtitle{font-size:15px;color:#86868b;margin:0;font-weight:400}.header-right{display:flex;align-items:center;gap:16px}.header-icon-button{width:40px;height:40px;border-radius:50%;background:#7878801f;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;color:#1d1d1f;font-size:18px;position:relative}.header-icon-button:hover{background:#78788033}.header-icon-button:active{transform:scale(.95)}.notification-badge{position:absolute;top:-2px;right:-2px;width:18px;height:18px;background:#ff3b30;color:#fff;font-size:11px;font-weight:600;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid white}.user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;box-shadow:0 2px 8px #0000001a;border:2px solid rgba(255,255,255,.8)}.avatar-image{width:100%;height:100%;object-fit:cover}@media (max-width: 1024px) and (min-width: 769px){.apple-header{padding:18px 24px}.header-title{font-size:30px}.header-subtitle{font-size:14px}.header-right{gap:12px}.header-icon-button,.user-avatar{width:38px;height:38px}}@media (max-width: 768px){.apple-header{padding:14px 16px}.header-title{font-size:26px}.header-subtitle{font-size:13px}.header-right{gap:10px}.header-icon-button{width:34px;height:34px;font-size:16px}.user-avatar{width:34px;height:34px}.notification-badge{width:16px;height:16px;font-size:10px}}.ios-segmented-control{width:100%;max-width:640px;margin:0 auto;display:flex;align-items:center;gap:12px}.ios-segmented-control.small{max-width:320px}.ios-segmented-control.large{max-width:800px}.segmented-extra{display:flex;align-items:center;gap:6px;flex-shrink:0}.segmented-extra-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:10px;background:#007aff;color:#fff;cursor:pointer;font-size:14px;transition:all .2s ease;box-shadow:0 2px 8px #007aff4d;touch-action:manipulation;-webkit-tap-highlight-color:transparent;position:relative;z-index:1;flex-shrink:0}.segmented-extra-btn:hover{background:#0066d6;transform:scale(1.05)}.segmented-extra-btn:active{transform:scale(.95)}.segmented-track{display:flex;background:#f2f2f7;border-radius:16px;padding:4px;position:relative;box-shadow:inset 0 1px 3px #0000000f,0 1px 2px #fffc}.segment-button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border:none;background:transparent;border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative;z-index:1;font-size:14px;font-weight:500;color:#86868b;white-space:nowrap}.segment-button:hover:not(.active){color:#1d1d1f}.segment-button.active{color:#1d1d1f;font-weight:600}.segment-indicator{position:absolute;top:4px;left:4px;height:calc(100% - 8px);background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f,0 1px 2px #0000000a;transition:transform .25s cubic-bezier(.4,0,.2,1);z-index:0}.segment-icon{font-size:16px;display:flex;align-items:center}.segment-label{font-size:14px}.segment-count{font-size:12px;font-weight:600;padding:2px 6px;border-radius:10px;background:#0000000f;color:#86868b;transition:all .2s ease}.segment-count.active{background:#007aff;color:#fff}.segment-button.active .segment-count{background:#00000014}.ios-segmented-control.small .segment-button{padding:8px 12px;font-size:13px}.ios-segmented-control.large .segment-button{padding:12px 20px;font-size:15px}@media (max-width: 768px){.segment-button{padding:8px 12px;font-size:13px}.segment-label{font-size:13px}.segment-icon{font-size:14px}.segmented-track{border-radius:14px;padding:3px}.segment-button,.segment-indicator{border-radius:10px}}@media (max-width: 480px){.segment-button{padding:8px;gap:4px}.segment-icon{display:none}}@media (max-width: 768px){.ios-segmented-control{flex-direction:column;align-items:stretch;overflow:visible;gap:10px;padding-bottom:0}.segmented-track{width:100%}.segmented-extra{width:100%;display:flex;align-items:center;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding:2px 0}.segmented-extra::-webkit-scrollbar{display:none}.segmented-extra-btn{width:44px;height:44px;min-width:44px;min-height:44px;font-size:18px;border-radius:12px}.segmented-extra-btn .anticon{font-size:18px}}.student-card{background:#fff;border-radius:28px;padding:24px;box-shadow:0 4px 18px #0000000a;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.04)}.student-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#fff6,#fff0 50%);pointer-events:none}.student-card.hovered{transform:translateY(-2px);box-shadow:0 8px 28px #0000000f;background:#fff}.card-header{display:flex;align-items:center;gap:18px;margin-bottom:20px;position:relative;z-index:1}.avatar-wrapper{position:relative;flex-shrink:0}.avatar{width:68px;height:68px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026}.avatar-initials{font-size:24px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.online-indicator{position:absolute;bottom:4px;right:4px;width:14px;height:14px;background:#34c759;border:3px solid white;border-radius:50%;box-shadow:0 2px 6px #34c75966}.student-info{flex:1;min-width:0}.student-name{font-size:20px;font-weight:600;color:#1d1d1f;margin:0 0 6px;line-height:1.2}.student-wechat-nickname{font-size:12px;color:#8e8e93;margin-bottom:4px}.student-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.level-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:500}.more-button{width:36px;height:36px;border-radius:50%;background:#7878801f;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;color:#8e8e93;font-size:16px;flex-shrink:0}.more-button:hover{background:#78788033;color:#636366}.more-button:active{transform:scale(.95)}.card-stats-single{display:flex;align-items:center;justify-content:center;margin:0 -22px;padding:24px 22px;background:#00000005;position:relative;z-index:1}.remaining-hours-display{display:flex;flex-direction:column;align-items:center;gap:8px}.card-stats-single:hover .remaining-hours-display{transform:scale(1.02);transition:transform .2s ease}.card-stats-single:active .remaining-hours-display{transform:scale(.98);transition:transform .1s ease}.remaining-value{font-size:56px;font-weight:700;line-height:1}.remaining-label{font-size:14px;color:#86868b;letter-spacing:2px}.card-stats{display:flex;align-items:center;justify-content:space-around;margin:0 -22px;padding:16px 22px;background:#00000005;position:relative;z-index:1}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-value{font-size:28px;font-weight:700;color:#1d1d1f;line-height:1}.stat-value.remaining{font-size:28px;font-weight:700}.stat-label{font-size:12px;color:#86868b;text-transform:uppercase;letter-spacing:.5px}.stat-divider{width:1px;height:40px;background:#00000014}.card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:16px;position:relative;z-index:1}.last-lesson{display:flex;align-items:center;gap:8px;font-size:13px;color:#86868b}.last-lesson .anticon{font-size:14px;color:#a1a1a6}.status-badge{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600}.status-dot{width:8px;height:8px;border-radius:50%}.student-card-dropdown .ant-dropdown-menu{background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:14px;padding:6px;box-shadow:0 12px 40px #0000001f,0 4px 12px #00000014;border:1px solid rgba(0,0,0,.06)}.student-card-dropdown .ant-dropdown-menu-item{border-radius:8px;padding:10px 14px;font-size:15px;color:#1d1d1f;transition:background .15s ease}.student-card-dropdown .ant-dropdown-menu-item:hover{background:#0000000a}.student-card-dropdown .ant-dropdown-menu-item .anticon{color:#007aff;margin-right:10px}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.student-card{animation:cardFadeIn .3s ease forwards}@media (max-width: 1024px) and (min-width: 769px){.student-card{padding:20px;border-radius:26px}.avatar{width:60px;height:60px}.avatar-initials{font-size:22px}.student-name{font-size:19px}.remaining-value{font-size:48px}.card-stats-single{padding:20px 0}.card-stats{padding:14px 0}}@media (max-width: 768px){.student-card{padding:16px;border-radius:22px}.avatar{width:52px;height:52px}.avatar-initials{font-size:18px}.student-name{font-size:17px}.remaining-value{font-size:40px}.remaining-label{font-size:12px}.card-stats-single{margin:0 -16px;padding:20px 16px}.stat-value{font-size:22px}.card-stats{margin:0 -16px;padding:12px 16px}.stat-divider{height:32px}.card-footer{flex-direction:column;gap:8px;align-items:flex-start}.status-badge{align-self:flex-end}}.floating-action-container{position:fixed;bottom:100px;right:32px;z-index:1001;display:flex;flex-direction:column;align-items:flex-end;gap:12px}@media (min-width: 768px){.floating-action-container{bottom:120px}}.fab-main{display:flex;flex-direction:column;gap:12px;align-items:center}.fab-primary{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#007aff,#0056cc);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #007aff66,0 4px 12px #007aff4d,inset 0 1px #fff3;transition:all .2s ease;color:#fff;font-size:24px}.fab-primary:hover{transform:scale(1.05);box-shadow:0 12px 32px #007aff80,0 6px 16px #007aff66,inset 0 1px #fff3}.fab-primary:active{transform:scale(.95)}.fab-secondary{width:48px;height:48px;border-radius:50%;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,.08);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #00000014,0 2px 8px #0000000a;transition:all .25s cubic-bezier(.4,0,.2,1);color:#8e8e93;font-size:18px}.fab-secondary:hover{background:#fff;color:#636366}.fab-secondary.rotated{transform:rotate(90deg);background:#f2f2f7;color:#007aff}.fab-secondary:active{transform:scale(.95)}.fab-secondary.rotated:active{transform:scale(.95) rotate(90deg)}.fab-menu{display:flex;flex-direction:column;gap:8px;align-items:flex-end;pointer-events:none;opacity:0;transform:translateY(20px);transition:all .25s cubic-bezier(.4,0,.2,1)}.fab-menu.expanded{pointer-events:all;opacity:1;transform:translateY(0)}.fab-menu-item{display:flex;align-items:center;gap:12px;opacity:0;transform:translate(20px);animation:none}.fab-menu.expanded .fab-menu-item{animation:fabMenuItemIn .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes fabMenuItemIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.fab-menu-label{background:#1e1e1ee6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;padding:8px 14px;border-radius:10px;font-size:14px;font-weight:500;white-space:nowrap;box-shadow:0 4px 12px #00000026}.fab-menu-label:after{content:"";position:absolute;right:-6px;top:50%;transform:translateY(-50%);border:6px solid transparent;border-left-color:#1e1e1ee6;border-right:none}.fab-menu-button{width:44px;height:44px;border-radius:50%;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,.06);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000001a,0 2px 6px #0000000f;transition:all .15s ease;color:#007aff;font-size:16px}.fab-menu-button:hover{background:#007aff;color:#fff;transform:scale(1.05)}.fab-menu-button:active{transform:scale(.95)}@media (max-width: 768px){.floating-action-container{bottom:90px;right:20px}.fab-primary{width:56px;height:56px;font-size:22px}.fab-secondary{width:44px;height:44px;font-size:16px}.fab-menu-label{font-size:13px;padding:6px 12px}.fab-menu-button{width:40px;height:40px}}@media (max-width: 480px){.floating-action-container{bottom:80px;right:16px}.fab-menu-label{display:none}}.students-apple-page{min-height:100vh;background:#f2f2f7;padding-bottom:100px}.students-apple-page.mobile{padding-bottom:140px;overflow-x:hidden;max-width:100vw}.students-apple-page.tablet{padding-bottom:120px}.main-content.mobile-content{padding:0 16px;overflow-x:hidden;max-width:100%;box-sizing:border-box}.students-apple-page.mobile .search-section,.students-apple-page.tablet .search-section{padding:16px 0}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid rgba(0,0,0,.08);background:#ffffffe6;color:#3c3c43;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-chip:hover{border-color:#ff9500;color:#ff9500}.filter-chip.active{background:#fff3e0;border-color:#ff9500;color:#ff9500}.filter-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ff9500;color:#fff;font-size:12px;font-weight:600;line-height:1}.filter-chip.active .filter-chip-count{background:#ff9500;color:#fff}.filter-active-hint{align-self:center;font-size:13px;color:#ff9500;font-weight:500}.students-apple-page.mobile .search-bar{padding:14px 18px;border-radius:14px}.students-apple-page.mobile .search-icon{font-size:20px}.students-apple-page.mobile .search-input{font-size:17px}.segmented-section{padding:0 0 24px;max-width:100%;box-sizing:border-box}.students-apple-page.mobile .segmented-section{overflow:visible}.content-area{min-height:auto;display:flex;flex-direction:column}.orders-import-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px;padding:12px 16px;background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:14px;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 12px #0000000a}.students-apple-page.mobile .orders-import-toolbar{justify-content:stretch}.students-apple-page.mobile .orders-import-toolbar .ant-space{width:100%}.students-apple-page.mobile .orders-import-toolbar .ant-btn,.list-view{flex:1}.students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;padding-bottom:20px}.students-apple-page.tablet .students-grid{grid-template-columns:repeat(2,1fr);gap:12px}.students-apple-page.mobile .students-grid{grid-template-columns:1fr;gap:12px}.students-apple-page.mobile .list-view{border-radius:16px;padding:16px}.students-apple-page.tablet .list-view{border-radius:18px;padding:18px}.apple-table{width:100%}.students-apple-page.mobile .apple-table .ant-table-thead>tr>th{font-size:11px;padding:10px 8px}.students-apple-page.mobile .apple-table .ant-table-tbody>tr>td{font-size:14px;padding:12px 8px}.students-apple-page.tablet .apple-table .ant-table-thead>tr>th{font-size:12px}.students-apple-page.mobile .ant-table-wrapper{margin:0 -8px}.students-apple-page.mobile .apple-table .ant-table-pagination{text-align:center}.students-apple-page.mobile .list-view{overflow-x:auto;-webkit-overflow-scrolling:touch}.students-apple-page.mobile .list-view .ant-table{min-width:600px}.student-detail-drawer{z-index:10100}.student-detail-drawer .ant-drawer-content-wrapper{width:min(780px,90vw)!important;max-width:90vw}.student-detail-drawer .ant-drawer-header{background:#f2f2f7;border-bottom:none}.student-detail-drawer .ant-drawer-content{z-index:10100}.student-detail-drawer .ant-drawer-title{font-size:18px;font-weight:600;color:#1d1d1f}@media (max-width: 768px){.student-detail-drawer-root{z-index:10100!important}.student-detail-drawer .ant-drawer-content-wrapper{width:100%!important;max-width:100%!important}.student-detail-drawer .ant-drawer-content{border-radius:0}.student-detail-drawer .ant-drawer-header{padding:calc(16px + env(safe-area-inset-top,0px)) 20px 12px}.student-detail-drawer .ant-drawer-body{padding:16px 20px calc(20px + env(safe-area-inset-bottom,0px))}.student-detail-drawer .hours-grid{grid-template-columns:repeat(2,1fr)}}.drawer-loading{display:flex;align-items:center;justify-content:center;padding:60px}.detail-content{display:flex;flex-direction:column;gap:24px}.hours-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.hours-card{background:#f2f2f7;border-radius:16px;padding:16px;text-align:center;display:flex;flex-direction:column;gap:4px}.hours-card.remaining{background:linear-gradient(135deg,#e8f8ed,#d4edda)}.hours-card.bonus{background:linear-gradient(135deg,#fff8e6,#ffe4b5)}.hours-value{font-size:28px;font-weight:700;color:#1d1d1f;line-height:1}.hours-value.used{color:#007aff}.hours-value.bonus{color:#fa8c16}.hours-card.remaining .hours-value{color:#34c759}.hours-label{font-size:12px;color:#8e8e93;text-transform:uppercase;letter-spacing:.5px}.info-section{display:flex;flex-direction:column;gap:12px}.info-section h4{font-size:15px;font-weight:600;color:#1d1d1f;margin:0;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.06)}.students-apple-page .main-content{animation:pageFadeIn .4s ease forwards}.students-grid>div{animation:cardSlideIn .3s ease forwards;opacity:0}@media (max-width: 1024px) and (min-width: 769px){.students-apple-page.tablet .students-grid{grid-template-columns:repeat(2,1fr);gap:14px}}@media (max-width: 768px){.students-apple-page{padding-bottom:160px}.students-grid{grid-template-columns:1fr;gap:12px}.hours-grid{grid-template-columns:repeat(2,1fr);gap:8px}.hours-card{padding:12px}.hours-value{font-size:22px}.search-bar{padding:14px 16px}.list-view{padding:16px;border-radius:16px}}@media (max-width: 480px){.main-content{padding:0 12px}.search-section{padding:12px 0}.segmented-section{padding:0 0 16px}.hours-grid{grid-template-columns:1fr;gap:8px}.hours-card{flex-direction:row;justify-content:space-between;align-items:center;padding:12px 16px}.hours-value{font-size:20px}.hours-label{font-size:11px}.apple-students-tabbar{height:80px}.apple-students-tabbar .tabbar-icon{font-size:24px}.apple-students-tabbar .tabbar-label{font-size:9px}.floating-action-container{bottom:100px!important;right:16px!important}.floating-action-container .fab-primary{width:52px;height:52px;font-size:20px}.floating-action-container .fab-secondary{width:44px;height:44px;font-size:16px}}.apple-students-tabbar{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#ffffffbf;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-top:1px solid rgba(0,0,0,.06);padding-bottom:env(safe-area-inset-bottom)}.apple-students-tabbar .tabbar-content{display:flex;align-items:center;justify-content:space-around;max-width:600px;margin:0 auto;padding:8px 16px}.apple-students-tabbar .tabbar-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 16px;border:none;background:transparent;cursor:pointer;border-radius:12px;transition:all .2s ease;min-width:60px}.apple-students-tabbar .tabbar-icon{font-size:22px;color:#8e8e93;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.apple-students-tabbar .tabbar-label{font-size:10px;font-weight:500;color:#8e8e93;transition:all .2s ease;white-space:nowrap}.apple-students-tabbar .tabbar-item.active{background:transparent}.apple-students-tabbar .tabbar-item.active .tabbar-icon{color:#007aff}.apple-students-tabbar .tabbar-item.active .tabbar-icon .anticon{transform:scale(1.1)}.apple-students-tabbar .tabbar-item.active .tabbar-label{color:#007aff;font-weight:600}.apple-students-tabbar .tabbar-item:hover:not(.active) .tabbar-icon{color:#636366}.apple-students-tabbar .tabbar-item:hover:not(.active) .tabbar-label{color:#636366}.apple-students-tabbar .tabbar-item:active{transform:scale(.95)}.purchase-modal-apple-wrap{z-index:10100!important}.purchase-modal-apple .ant-modal-content{border-radius:24px;padding:0;overflow:hidden;box-shadow:0 25px 100px #0003,0 10px 40px #0000001a;animation:modalSlideUp .35s cubic-bezier(.16,1,.3,1)}.purchase-modal-apple .ant-modal-close{top:16px;right:16px;width:32px;height:32px;border-radius:50%;background:#0000000a;transition:all .2s ease}.purchase-modal-apple .ant-modal-close:hover{background:#00000014}.purchase-modal-apple .ant-modal-close-x{font-size:16px;color:#8e8e93;line-height:32px}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.purchase-modal-container{display:flex;flex-direction:column}.purchase-modal-header{padding:28px 32px 20px;text-align:center;border-bottom:1px solid rgba(0,0,0,.04)}.purchase-modal-title{font-size:24px;font-weight:700;color:#1d1d1f;margin:0 0 4px;letter-spacing:-.3px}.purchase-student-name{font-size:15px;color:#8e8e93;font-weight:500}.purchase-modal-body-v2{display:flex;gap:0;min-height:480px}.purchase-form-column{flex:1;padding:24px 32px;overflow-y:auto;max-height:70vh}.remaining-hours-banner{display:flex;align-items:center;gap:14px;padding:16px 18px;margin-bottom:28px;background:linear-gradient(135deg,#e8f8ed,#d4edda);border-radius:16px;animation:fadeInUp .3s ease}.banner-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#fffc;border-radius:14px;font-size:22px;color:#34c759;flex-shrink:0}.banner-text{display:flex;flex-direction:column;gap:2px}.banner-label{font-size:13px;color:#34c759;font-weight:500}.banner-value{font-size:22px;font-weight:700;color:#1d1d1f;letter-spacing:-.3px}.form-group{margin-bottom:24px}.form-label{display:block;font-size:14px;font-weight:600;color:#1d1d1f;margin-bottom:10px;letter-spacing:-.1px}.form-label.small{font-size:13px;font-weight:500;color:#636366}.apple-input,.apple-input .ant-input-number-input-wrap{width:100%}.apple-input .ant-input-number-input{width:100%;height:52px;padding:0 18px;font-size:18px;font-weight:500;color:#1d1d1f;background:#fff;border:1.5px solid rgba(0,0,0,.08);border-radius:14px;transition:all .2s ease}.apple-input .ant-input-number-input::placeholder{color:#c7c7cc}.apple-input .ant-input-number-input:hover{border-color:#007aff4d}.apple-input .ant-input-number-input:focus{outline:none;border-color:#007aff;box-shadow:0 0 0 4px #007aff1a;background:#fff}.hours-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hours-input-cell{display:flex;flex-direction:column;gap:8px}.hours-input-title{font-size:13px;font-weight:500;color:#636366}.apple-select{width:100%}.apple-select .ant-select-selector{height:52px!important;padding:0 18px!important;background:#fff!important;border:1.5px solid rgba(0,0,0,.08)!important;border-radius:14px!important;transition:all .2s ease!important}.apple-select .ant-select-selector:hover{border-color:#007aff4d!important}.apple-select:not(.ant-select-disabled).ant-select-focused .ant-select-selector{border-color:#007aff!important;box-shadow:0 0 0 4px #007aff1a!important}.apple-select .ant-select-selection-search-input{height:50px!important}.apple-select .ant-select-selection-placeholder,.apple-select .ant-select-selection-item{line-height:50px!important;font-size:16px;font-weight:500;color:#1d1d1f}.apple-select .ant-select-selection-placeholder{color:#c7c7cc!important}.apple-select .ant-select-arrow{right:16px;font-size:12px;color:#8e8e93}.material-option{display:flex;justify-content:space-between;align-items:center;width:100%}.material-name{font-weight:500;color:#1d1d1f}.material-price{font-size:13px;color:#8e8e93}.apple-select-dropdown{border-radius:16px!important;box-shadow:0 20px 60px #00000026,0 4px 12px #00000014!important;overflow:hidden;padding:8px;margin-top:4px}.apple-select-dropdown .ant-select-item{border-radius:12px!important;padding:14px 16px!important;font-size:15px!important;margin:2px 0;transition:background .15s ease}.apple-select-dropdown .ant-select-item-option-active:not(.ant-select-item-option-disabled){background:#007aff0f!important}.apple-select-dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:#007aff1a!important;font-weight:600}.payment-group{margin-top:32px;padding-top:24px;border-top:1px solid rgba(0,0,0,.04)}.payment-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.payment-field-cell{display:flex;flex-direction:column;gap:8px}.payment-field-cell .apple-select .ant-select-selector{height:48px!important}.payment-field-cell .apple-select .ant-select-selection-search-input{height:46px!important}.payment-field-cell .apple-select .ant-select-selection-placeholder,.payment-field-cell .apple-select .ant-select-selection-item{line-height:46px!important;font-size:15px}.purchase-summary-column{width:300px;flex-shrink:0;background:linear-gradient(180deg,#fafafa,#f5f5f7);border-left:1px solid rgba(0,0,0,.04);padding:24px}.summary-card-sticky{position:sticky;top:24px}.summary-section{margin-bottom:20px}.summary-section-title{font-size:15px;font-weight:600;color:#1d1d1f;letter-spacing:-.1px}.summary-detail-list{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.summary-item{display:flex;justify-content:space-between;align-items:center}.summary-item-label{font-size:14px;color:#636366}.summary-item-value{font-size:14px;font-weight:500;color:#1d1d1f;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-item-value.price{color:#007aff;font-weight:600}.summary-item-value.bonus{color:#ff9500;font-weight:600}.summary-calculation{padding:12px 14px;background:#007aff0f;border-radius:10px;font-size:13px;color:#007aff;font-weight:500;text-align:center}.summary-divider-line{height:1px;background:#0000000f;margin:8px 0 16px}.summary-total-section{margin-bottom:20px}.summary-total-row{display:flex;justify-content:space-between;align-items:center}.total-label{font-size:15px;font-weight:600;color:#1d1d1f}.total-value.hours-total{font-size:20px;font-weight:700;color:#007aff;letter-spacing:-.3px}.summary-amount-section{padding:20px;background:#fff;border-radius:18px;box-shadow:0 2px 12px #0000000a;text-align:center;margin-bottom:20px}.amount-label{display:block;font-size:12px;font-weight:500;color:#8e8e93;text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.amount-value{font-size:36px;font-weight:700;color:#1d1d1f;letter-spacing:-1px;line-height:1}.summary-action{display:flex;flex-direction:column;gap:10px}.btn-confirm-purchase{width:100%;height:54px;border:none;background:#007aff;border-radius:14px;font-size:17px;font-weight:600;color:#fff;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 16px #007aff59}.btn-confirm-purchase:hover:not(:disabled){background:#0071e3;transform:translateY(-2px);box-shadow:0 8px 24px #007aff66}.btn-confirm-purchase:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #007aff4d}.btn-confirm-purchase:disabled{background:#c7c7cc;box-shadow:none;cursor:not-allowed}.btn-loading{display:flex;align-items:center;justify-content:center;gap:8px}.btn-cancel-purchase{width:100%;height:48px;border:1.5px solid rgba(0,0,0,.1);background:transparent;border-radius:14px;font-size:16px;font-weight:500;color:#636366;cursor:pointer;transition:all .2s ease}.btn-cancel-purchase:hover{background:#00000005;border-color:#00000026;color:#1d1d1f}.btn-cancel-purchase:active{transform:scale(.98)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.purchase-modal-apple-wrap{overflow:hidden;padding:0!important}.purchase-modal-apple-wrap .ant-modal{position:fixed;top:0;right:0;bottom:0;left:0;width:100%!important;max-width:100%!important;height:100%;margin:0!important;padding:0!important;top:0!important}.purchase-modal-apple .ant-modal-content{width:100%;height:100dvh;max-height:100dvh;border-radius:0;overflow:hidden;display:flex;flex-direction:column;box-shadow:none;animation:iosModalSlideUpFull .32s cubic-bezier(.16,1,.3,1)}.purchase-modal-container{flex:1;display:flex;flex-direction:column;min-height:0;max-height:100dvh;overflow:hidden}.purchase-modal-header{flex-shrink:0;padding:calc(20px + env(safe-area-inset-top,0px)) 24px 18px}.purchase-modal-title{font-size:22px}.purchase-modal-body-v2{flex:1;flex-direction:column;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.purchase-form-column{padding:20px 24px;max-height:none;overflow-y:visible}.purchase-summary-column{width:100%;border-left:none;border-top:1px solid rgba(0,0,0,.04);background:#fff;padding:20px 24px calc(24px + env(safe-area-inset-bottom,0px))}.purchase-modal-apple .ant-modal-close{top:calc(12px + env(safe-area-inset-top,0px));right:16px}.summary-card-sticky{position:relative;top:0}.summary-detail-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.summary-calculation{grid-column:1 / -1}.summary-amount-section{padding:16px}.amount-value{font-size:32px}.summary-action{flex-direction:row;position:sticky;bottom:0;background:#fff;padding-top:12px}.btn-confirm-purchase,.btn-cancel-purchase{flex:1}.btn-confirm-purchase{height:50px;font-size:16px}.btn-cancel-purchase{height:50px}.hours-input-grid,.payment-fields{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.purchase-form-column{padding:16px 20px}.remaining-hours-banner{margin-bottom:20px}.banner-value{font-size:20px}.hours-input-grid,.payment-fields{grid-template-columns:1fr;gap:12px}.purchase-summary-column{padding:16px 20px calc(20px + env(safe-area-inset-bottom,0px))}.summary-detail-list{grid-template-columns:1fr}.summary-action{flex-direction:column}}.mobile-edit-teacher{min-height:100vh;background:#f5f5f5;padding-bottom:100px}.mobile-edit-teacher-loading{display:flex;justify-content:center;align-items:center;min-height:100vh}.edit-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #e8e8e8}.edit-title{font-size:18px;font-weight:600;margin:0;flex:1;text-align:center}.edit-content{padding:16px;background:#fff;margin:12px;border-radius:12px}.edit-footer{position:fixed;bottom:0;left:0;right:0;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e8e8e8;display:flex;gap:12px;box-shadow:0 -2px 8px #0000001a;z-index:101}.edit-footer .cancel-button,.edit-footer .save-button{flex:1;height:48px;border-radius:24px;font-size:16px;font-weight:500}.edit-footer .cancel-button{background:#f5f5f5;border-color:#d9d9d9;color:#333}.edit-footer .save-button{background:linear-gradient(135deg,#42a5f5,#1976d2);border:none;box-shadow:0 2px 8px #1976d24d}.edit-footer .save-button:hover:not(:disabled){background:linear-gradient(135deg,#1e88e5,#1565c0)}.mobile-edit-teacher .ant-upload,.mobile-edit-teacher .ant-upload-select,.mobile-edit-teacher .ant-upload-select-button{width:100%;display:block}.mobile-edit-teacher .ant-upload .ant-btn{width:100%;height:44px;font-size:16px;border-radius:8px;-webkit-tap-highlight-color:rgba(0,0,0,.1);touch-action:manipulation}.mobile-edit-teacher .ant-upload-select-button{pointer-events:auto!important;cursor:pointer;-webkit-user-select:none;user-select:none}.mobile-edit-teacher .ant-upload input[type=file]{position:absolute;width:100%;height:100%;opacity:0;cursor:pointer;z-index:1}.mobile-edit-teacher .ant-input-affix-wrapper textarea.ant-input,.mobile-edit-teacher .ant-form-item-control-input-content .ant-input-affix-wrapper textarea{border:none!important}.mobile-edit-teacher .video-preview-container{margin-left:-8px;margin-right:-8px}.mobile-edit-teacher .video-preview-container video{border-radius:0!important;max-width:100%;width:100%;height:auto;max-height:220px;display:block;background:#000}.mobile-edit-teacher .video-preview-overlay,.mobile-edit-teacher .video-preview-container .ant-upload-list-item-container{border-radius:0!important}.mobile-teacher-detail{min-height:100vh;background:#f5f5f5;padding-bottom:100px}.mobile-teacher-detail-loading{display:flex;justify-content:center;align-items:center;min-height:100vh}.detail-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #e8e8e8;position:relative;z-index:1}.back-button{display:flex;align-items:center;padding:4px 8px}.detail-title{font-size:18px;font-weight:600;margin:0;flex:1;text-align:center}.detail-content{padding:16px}.detail-card{margin-bottom:16px;border-radius:12px}.teacher-header-section{display:flex;align-items:flex-start;gap:16px}.teacher-avatar{flex-shrink:0}.teacher-basic-info{flex:1;min-width:0}.teacher-name-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.teacher-name{font-size:20px;font-weight:600;margin:0;color:#333}.teacher-email{font-size:14px;color:#666;margin-bottom:12px}.teacher-tags-row{display:flex;gap:8px;flex-wrap:wrap}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.detail-row:last-child{border-bottom:none}.detail-label{font-size:14px;color:#666;font-weight:500}.detail-value{font-size:14px;color:#333;text-align:right;flex:1;margin-left:16px}.detail-text{font-size:14px;color:#333;line-height:1.6;margin:0;white-space:pre-wrap;word-break:break-word}.detail-footer{position:fixed;bottom:0;left:0;right:0;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e8e8e8;display:flex;gap:12px;box-shadow:0 -2px 8px #0000001a;z-index:101}.detail-footer .cancel-button,.detail-footer .edit-button,.detail-footer .toggle-button{flex:1;height:48px;border-radius:24px;font-size:16px;font-weight:500}.detail-footer .cancel-button{background:#f5f5f5;border-color:#d9d9d9;color:#333}.detail-footer .edit-button{background:linear-gradient(135deg,#42a5f5,#1976d2);border:none;box-shadow:0 2px 8px #1976d24d}.detail-footer .edit-button:hover:not(:disabled){background:linear-gradient(135deg,#1e88e5,#1565c0)}.detail-footer .toggle-button{background:#fff;border-color:#d9d9d9}.detail-footer .toggle-button.danger{background:#ff4d4f;border-color:#ff4d4f;color:#fff}.audio-player-container{display:flex;flex-direction:column;gap:12px;padding:16px;background:#f8f9fa;border-radius:8px}.audio-player-container audio{width:100%;height:48px;outline:none}.audio-player-container audio::-webkit-media-controls-panel{background-color:#fff;border-radius:8px}.audio-player-container audio::-webkit-media-controls-play-button{background-color:#1890ff!important;border-radius:50%!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;max-width:40px!important;max-height:40px!important;border:none!important;padding:0!important;margin:0!important}.audio-player-container audio::-webkit-media-controls-current-time-display,.audio-player-container audio::-webkit-media-controls-time-remaining-display{color:#333;font-size:14px}.audio-tip{text-align:center;font-size:12px;color:#999;margin-top:4px}.detail-card video{width:100%;border-radius:8px;background:#000}.chapters-ios-page{min-height:100vh;background:#f2f2f7;padding-bottom:120px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}.chapters-navbar{position:sticky;top:0;z-index:100;background:#f2f2f7cc;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid rgba(0,0,0,.1)}.chapters-navbar-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;max-width:1200px;margin:0 auto}.chapters-navbar-left{display:flex;align-items:center;gap:8px}.chapters-back-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:#007aff;font-size:17px;font-weight:400;cursor:pointer;padding:4px 0;transition:opacity .2s}.chapters-back-btn:hover{opacity:.7}.chapters-back-btn .back-icon{font-size:20px}.chapters-navbar-title{font-size:17px;font-weight:600;color:#1d1d1f;margin:0}.chapters-navbar-right{display:flex;align-items:center}.chapters-add-fab{width:36px;height:36px;border-radius:18px;background:#007aff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 16px #007aff59;transition:all .2s cubic-bezier(.34,1.56,.64,1);color:#fff;font-size:22px;line-height:1}.chapters-add-fab:hover{transform:scale(1.08);box-shadow:0 6px 20px #007aff73}.chapters-add-fab:active{transform:scale(.95)}.chapters-content{max-width:800px;margin:0 auto;padding:20px 16px}.chapters-hero{padding:16px 20px 20px;max-width:800px;margin:0 auto}.chapters-hero-title{font-size:34px;font-weight:700;color:#1d1d1f;line-height:1.1;margin:0 0 6px;letter-spacing:-.5px}.chapters-hero-subtitle{font-size:15px;color:#6e6e73;margin:0}.chapters-stats-bar{display:flex;align-items:center;gap:20px;padding:14px 20px;max-width:800px;margin:0 auto 16px}.chapters-stat-item{display:flex;align-items:center;gap:8px}.chapters-stat-dot{width:8px;height:8px;border-radius:50%}.chapters-stat-dot.blue{background:#007aff}.chapters-stat-dot.green{background:#34c759}.chapters-stat-dot.orange{background:#ff9500}.chapters-stat-text{font-size:13px;color:#6e6e73;font-weight:500}.chapters-stat-count{font-size:13px;color:#1d1d1f;font-weight:600}.chapters-grouped-list{background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #0000000a;border:.5px solid rgba(0,0,0,.06);margin-bottom:16px}.chapters-grouped-list.single-item{border-radius:14px}.chapter-card{display:flex;align-items:center;padding:16px 20px;cursor:pointer;transition:background .15s ease;position:relative;border-bottom:.5px solid rgba(0,0,0,.06);text-decoration:none;background:transparent}.chapter-card:last-child{border-bottom:none}.chapter-card:hover{background:#00000005}.chapter-card:active{background:#0000000a}.chapters-grouped-list.single-item .chapter-card{border-radius:14px;border-bottom:none}.chapter-order-badge{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#007aff1a,#5ac8fa1a);display:flex;align-items:center;justify-content:center;margin-right:14px;flex-shrink:0}.chapter-order-badge-inner{font-size:15px;font-weight:700;color:#007aff}.chapter-info{flex:1;min-width:0}.chapter-title{font-size:17px;font-weight:500;color:#1d1d1f;margin:0 0 4px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-meta{display:flex;align-items:center;gap:12px}.chapter-meta-item{font-size:13px;color:#8e8e93;display:flex;align-items:center;gap:4px}.chapter-arrow{color:#c7c7cc;font-size:18px;margin-left:10px;flex-shrink:0;transition:transform .2s,color .2s}.chapter-card:hover .chapter-arrow{color:#007aff;transform:translate(2px)}.chapter-status-tag{font-size:12px;font-weight:600;padding:3px 8px;border-radius:6px;margin-left:8px;flex-shrink:0}.chapter-status-tag.active{background:#34c7591f;color:#34c759}.chapter-status-tag.inactive{background:#8e8e931f;color:#8e8e93}.chapter-more-btn{width:32px;height:32px;border-radius:8px;background:transparent;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#8e8e93;font-size:18px;margin-left:6px;transition:all .15s ease;flex-shrink:0;padding:0}.chapter-more-btn:hover{background:#0000000d;color:#007aff}.chapter-more-btn:active{background:#00000014;transform:scale(.9)}.chapters-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px 60px;text-align:center;max-width:800px;margin:0 auto}.chapters-empty-illustration{width:100px;height:100px;border-radius:28px;background:linear-gradient(135deg,#007aff14,#5ac8fa14);display:flex;align-items:center;justify-content:center;margin-bottom:24px;font-size:48px}.chapters-empty-title{font-size:22px;font-weight:600;color:#1d1d1f;margin:0 0 8px}.chapters-empty-description{font-size:15px;color:#6e6e73;margin:0 0 28px;line-height:1.5;max-width:300px}.chapters-empty-cta{display:inline-flex;align-items:center;gap:6px;padding:12px 24px;background:#007aff;color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 16px #007aff4d}.chapters-empty-cta:hover{transform:scale(1.04);box-shadow:0 6px 20px #007aff66}.chapters-empty-cta:active{transform:scale(.97)}.chapters-batch-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 4px 16px;max-width:800px;margin:0 auto}.chapters-batch-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;background:#007aff14;color:#007aff;border:none;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.chapters-batch-btn:hover{background:#007aff26}.chapters-batch-btn:active{background:#007aff33;transform:scale(.97)}.chapters-loading{display:flex;align-items:center;justify-content:center;padding:80px 20px;flex-direction:column;gap:16px}.chapters-loading-spinner{width:32px;height:32px;border:3px solid rgba(0,122,255,.15);border-top-color:#007aff;border-radius:50%;animation:chaptersSpin .8s linear infinite}@keyframes chaptersSpin{to{transform:rotate(360deg)}}.chapters-loading-text{font-size:15px;color:#8e8e93}.chapter-card-enter{animation:chapterSlideIn .35s cubic-bezier(.25,.46,.45,.94) forwards;opacity:0;transform:translateY(12px)}@keyframes chapterSlideIn{to{opacity:1;transform:translateY(0)}}.chapter-card-enter:nth-child(1){animation-delay:.03s}.chapter-card-enter:nth-child(2){animation-delay:.06s}.chapter-card-enter:nth-child(3){animation-delay:.09s}.chapter-card-enter:nth-child(4){animation-delay:.12s}.chapter-card-enter:nth-child(5){animation-delay:.15s}.chapter-card-enter:nth-child(6){animation-delay:.18s}.chapter-card-enter:nth-child(7){animation-delay:.21s}.chapter-card-enter:nth-child(8){animation-delay:.24s}.chapter-card-enter:nth-child(9){animation-delay:.27s}.chapter-card-enter:nth-child(10){animation-delay:.3s}.chapters-selection-bar{display:flex;align-items:center;gap:12px;padding:12px 20px;max-width:800px;margin:0 auto 12px;background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:12px;box-shadow:0 1px 3px #0000000a;border:.5px solid rgba(0,0,0,.06)}.chapter-checkbox{margin-right:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer}@media (max-width: 768px){.chapters-content{padding:16px 12px}.chapters-hero{padding:16px}.chapters-hero-title{font-size:28px}.chapter-card{padding:14px 16px}.chapters-grouped-list{border-radius:12px}.chapter-title{font-size:16px}.chapter-order-badge{width:32px;height:32px;border-radius:8px;margin-right:12px}.chapters-stats-bar{padding:12px 16px}.chapters-selection-bar{padding:10px 16px;margin-bottom:10px}}@media (max-width: 480px){.chapters-navbar-inner{padding:10px 16px}.chapters-navbar-title{font-size:16px}.chapters-hero-title{font-size:24px}.chapter-card{padding:12px 14px}.chapter-meta{gap:8px}}.candidate-hub{min-height:100vh;background:linear-gradient(180deg,#f5f5f7,#fff);padding:0}.hub-header{background:#ffffffb8;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.06);padding:0 24px;position:sticky;top:0;z-index:100}.hub-header-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:64px}.hub-header-left{display:flex;align-items:center;gap:12px}.hub-header-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px}.hub-header-title{font-size:21px;font-weight:600;color:#1d1d1f;margin:0;letter-spacing:-.3px}.hub-header-subtitle{font-size:13px;color:#86868b;margin:0}.hub-header-right{display:flex;align-items:center;gap:16px}.hub-content{max-width:1200px;margin:0 auto;padding:24px}.segmented-filter{display:flex;gap:6px;padding:4px;background:#78788014;border-radius:999px;margin-bottom:24px;width:fit-content}.segment-pill{padding:8px 16px;border-radius:999px;border:none;background:transparent;font-size:14px;font-weight:500;color:#1d1d1f;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.segment-pill .pill-count{font-size:11px;font-weight:600;padding:2px 6px;border-radius:999px;background:#0000000f}.candidate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.candidate-card{background:#ffffffe0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;padding:20px;box-shadow:0 4px 20px #0000000a,0 1px 3px #00000005;border:1px solid rgba(255,255,255,.6);position:relative;overflow:hidden;transition:all .25s ease;cursor:pointer;animation:cardFadeIn .35s ease forwards;opacity:0}.candidate-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #00000014,0 4px 12px #0000000a;background:#fffffff2}.candidate-card:active{transform:translateY(0)}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.candidate-card .more-actions-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;background:#78788014;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;color:#86868b;font-size:16px;z-index:2}.candidate-card-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.candidate-action-btn{flex:1;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border:none;border-radius:12px;background:#7878801a;color:#1d1d1f;font-size:14px;font-weight:600;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .15s ease,transform .1s ease}.candidate-action-btn:active:not(:disabled){transform:scale(.98)}.candidate-action-btn:disabled{opacity:.5;cursor:not-allowed}.candidate-action-btn.review,.candidate-action-btn.primary{background:#007aff;color:#fff}.candidate-action-btn.danger{background:#ff3b301f;color:#ff3b30}.candidate-profile{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px;padding-right:32px}.candidate-avatar-img{width:64px;height:64px;border-radius:50%;object-fit:cover;box-shadow:0 4px 12px #0000001f;border:3px solid white}.candidate-avatar-initials{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000001f;border:3px solid white;font-size:22px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.15)}.candidate-name{font-size:18px;font-weight:600;color:#1d1d1f;margin:0 0 4px;line-height:1.2;letter-spacing:-.3px}.candidate-position{font-size:14px;color:#86868b;margin:0 0 10px;font-weight:500}.candidate-credentials{display:flex;flex-wrap:wrap;gap:6px}.credential-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;background:#0000000a;color:#636366;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.credential-badge .credential-icon{font-size:11px;color:#a1a1a6;flex-shrink:0}.candidate-footer{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid rgba(0,0,0,.06)}.candidate-apply-time{font-size:13px;color:#86868b;font-weight:500}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.2px}.status-pill .status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.candidate-dropdown .ant-dropdown-menu{background:#fffffffa;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-radius:14px;padding:6px;box-shadow:0 12px 40px #0000001f,0 4px 12px #00000014;border:1px solid rgba(0,0,0,.06);min-width:180px}.candidate-dropdown .ant-dropdown-menu-item{border-radius:8px;padding:10px 14px;font-size:15px;color:#1d1d1f;transition:background .15s ease;display:flex;align-items:center;gap:10px}.candidate-dropdown .ant-dropdown-menu-item .anticon{color:#007aff;font-size:16px;width:20px;text-align:center}.candidate-empty{text-align:center;padding:80px 24px}.candidate-empty-icon{width:80px;height:80px;border-radius:20px;background:linear-gradient(135deg,#f0f0f5,#e8e8ed);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:36px;color:#86868b}.candidate-empty-title{font-size:20px;font-weight:600;color:#1d1d1f;margin:0 0 8px}.candidate-empty-text{font-size:15px;color:#86868b;margin:0}.skeleton-card{background:#ffffffe0;border-radius:24px;padding:20px;height:160px}.skeleton-card .ant-skeleton-content .ant-skeleton-title{width:60%!important;height:20px!important}.skeleton-card .ant-skeleton-content .ant-skeleton-paragraph>li{width:80%!important}@keyframes candidateDetailSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1023px){.candidate-detail-fullscreen-wrap{padding:0!important;z-index:10100!important;overflow:hidden}.candidate-detail-fullscreen-wrap .ant-modal{position:fixed;top:0;right:0;bottom:0;left:0;width:100%!important;max-width:100%!important;height:100%;margin:0!important;padding:0!important;top:0!important}.candidate-detail-fullscreen .ant-modal-content{height:100dvh;max-height:100dvh;border-radius:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:none;animation:candidateDetailSlideUp .32s cubic-bezier(.16,1,.3,1)}.candidate-detail-fullscreen .ant-modal-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 20px}.candidate-detail-fullscreen .ant-modal-footer{flex-shrink:0;padding:12px 20px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(0,0,0,.06);margin-top:0;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.candidate-detail-fullscreen .ant-modal-footer .ant-btn{min-height:44px;padding:0 16px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.candidate-detail-fullscreen .ant-modal-footer .ant-btn:not(:first-child){flex:1;min-width:0}.candidate-detail-fullscreen .ant-modal-close{top:calc(12px + env(safe-area-inset-top,0px));right:16px}.candidate-detail-fullscreen .detail-video-preview{max-height:min(50vh,360px)!important;width:100%}}@media (min-width: 1024px){.candidate-detail-fullscreen .ant-modal-content{border-radius:20px;overflow:hidden}.candidate-detail-fullscreen .ant-modal-body{padding:24px}}@media (max-width: 1024px) and (min-width: 769px){.candidate-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.candidate-card{padding:18px;border-radius:22px}.candidate-avatar-img,.candidate-avatar-initials{width:56px;height:56px;font-size:20px}.candidate-name{font-size:17px}}@media (max-width: 768px){.hub-header-content{padding:0 16px}.hub-header-title{font-size:18px}.hub-header-subtitle{display:none}.hub-content{padding:16px}.segmented-filter{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:4px}.segmented-filter::-webkit-scrollbar{display:none}.segment-pill{padding:8px 14px;font-size:13px;white-space:nowrap}.segment-pill .pill-count{display:none}.candidate-grid{grid-template-columns:1fr;gap:12px}.candidate-card{padding:16px;border-radius:18px}.candidate-avatar-img,.candidate-avatar-initials{width:52px;height:52px;font-size:18px}.candidate-name{font-size:16px}.candidate-position{font-size:13px;margin-bottom:8px}.candidate-footer{flex-direction:column;gap:10px;align-items:flex-start}.status-pill{align-self:flex-end}}.hub-header{background:#ffffffe0;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.06);padding:0 16px;position:sticky;top:0;z-index:100}.hub-header-content{display:flex;align-items:center;justify-content:space-between;height:56px}.hub-header-left{display:flex;align-items:center;gap:10px}.hub-header-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px}.hub-header-title{font-size:17px;font-weight:600;color:#1d1d1f;margin:0;letter-spacing:-.3px}.hub-header-subtitle{font-size:12px;color:#86868b;margin:0}.hub-header-right{display:flex;align-items:center;gap:12px}.notification-badge{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:#78788014;color:#1d1d1f;font-size:16px;cursor:pointer;transition:all .15s ease;border:none}.notification-badge:hover{background:#78788029}.notification-badge .anticon{font-size:18px;color:#86868b}.notification-badge-count{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#ff3b30;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #ff3b3059}.hub-content{padding:16px}.segmented-filter{display:flex;gap:4px;padding:4px;background:#78788014;border-radius:999px;margin-bottom:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory}.segmented-filter::-webkit-scrollbar{display:none}.segment-pill{padding:6px 12px;border-radius:999px;border:none;background:transparent;font-size:13px;font-weight:500;color:#1d1d1f;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px;white-space:nowrap;scroll-snap-align:start;flex-shrink:0}.segment-pill:hover:not(.active){background:#ffffff80}.segment-pill.active{background:#fff;color:#1d1d1f;box-shadow:0 1px 3px #00000014,0 3px 8px #0000000f}.segment-pill .pill-count{font-size:10px;font-weight:600;padding:2px 5px;border-radius:999px;background:#0000000f}.segment-pill.active .pill-count{background:#0000001a}.candidate-grid{display:flex;flex-direction:column;gap:12px}.candidate-card{background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:18px;padding:16px;box-shadow:0 2px 12px #0000000a,0 1px 2px #00000005;border:1px solid rgba(255,255,255,.6);position:relative;overflow:hidden;transition:all .2s ease;cursor:pointer;animation:cardFadeIn .3s ease forwards;opacity:0}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.candidate-card:active{transform:scale(.98)}.candidate-card .more-actions-btn{position:absolute;top:10px;right:10px;width:36px;height:36px;min-width:36px;min-height:36px;border-radius:50%;background:#78788014;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;color:#86868b;font-size:14px;z-index:2}.candidate-card .more-actions-btn:hover{background:#78788029;color:#636366}.candidate-card .more-actions-btn:active{transform:scale(.92)}.candidate-profile{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;padding-right:28px}.candidate-avatar{flex-shrink:0}.candidate-avatar-img{width:52px;height:52px;border-radius:50%;object-fit:cover;box-shadow:0 3px 10px #0000001a;border:2px solid white}.candidate-avatar-initials{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px #0000001a;border:2px solid white;font-size:18px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.15)}.candidate-main-info{flex:1;min-width:0}.candidate-name{font-size:16px;font-weight:600;color:#1d1d1f;margin:0 0 2px;line-height:1.2;letter-spacing:-.2px}.candidate-position{font-size:13px;color:#86868b;margin:0 0 8px;font-weight:500}.candidate-credentials{display:flex;flex-wrap:wrap;gap:4px}.credential-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:500;background:#0000000a;color:#636366;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.credential-badge .credential-icon{font-size:10px;color:#a1a1a6;flex-shrink:0}.credential-cv{background:#1976d214;color:#1976d2}.credential-cv .credential-icon{color:#1976d2}.credential-video{background:#9c27b014;color:#9c27b0}.credential-video .credential-icon{color:#9c27b0}.candidate-footer{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid rgba(0,0,0,.06)}.candidate-apply-time{font-size:12px;color:#86868b;font-weight:500;display:flex;align-items:center}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.2px}.status-pill .status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-pill.submitted{background:#e3f2fd;color:#1976d2}.status-pill.submitted .status-dot{background:#2196f3}.status-pill.under_review{background:#fff3e0;color:#e65100}.status-pill.under_review .status-dot{background:#ff9800;animation:statusPulse 1.5s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.status-pill.approved{background:#eaf8ec;color:#34c759}.status-pill.approved .status-dot{background:#34c759}.status-pill.rejected{background:#ffebee;color:#ff3b30}.status-pill.rejected .status-dot{background:#ff3b30}.candidate-dropdown .ant-dropdown-menu{background:#fffffffa;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-radius:14px;padding:6px;box-shadow:0 12px 40px #0000001f,0 4px 12px #00000014;border:1px solid rgba(0,0,0,.06);min-width:160px}.candidate-dropdown .ant-dropdown-menu-item{border-radius:8px;padding:10px 14px;font-size:14px;color:#1d1d1f;transition:background .15s ease;display:flex;align-items:center;gap:10px}.candidate-dropdown .ant-dropdown-menu-item:hover{background:#0000000a}.candidate-dropdown .ant-dropdown-menu-item .anticon{color:#007aff;font-size:15px;width:18px;text-align:center}.candidate-dropdown .ant-dropdown-menu-item.danger,.candidate-dropdown .ant-dropdown-menu-item.danger .anticon{color:#ff3b30}.candidate-empty{text-align:center;padding:60px 24px}.candidate-empty-icon{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#f0f0f5,#e8e8ed);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:28px;color:#86868b}.candidate-empty-title{font-size:18px;font-weight:600;color:#1d1d1f;margin:0 0 8px}.candidate-empty-text{font-size:14px;color:#86868b;margin:0}.skeleton-card{background:#ffffffe0;border-radius:18px;padding:16px}.skeleton-card .ant-skeleton-content .ant-skeleton-title{width:50%!important;height:18px!important}.skeleton-card .ant-skeleton-content .ant-skeleton-paragraph>li{width:75%!important}.candidate-detail-modal .ant-modal-content{border-radius:20px;overflow:hidden;max-height:85vh}.candidate-detail-modal .ant-modal-body{padding:20px;max-height:calc(85vh - 120px);overflow-y:auto}.candidate-detail-modal .ant-modal-footer{padding:12px 20px}.candidate-detail-modal .ant-modal-footer button{margin-left:8px}@media (max-width: 480px){.candidate-detail-modal .ant-modal-footer{display:flex;flex-wrap:wrap;gap:8px}.candidate-detail-modal .ant-modal-footer button{flex:1;min-width:80px;margin-left:0}}.onboarding-card-list{display:flex;flex-direction:column;gap:16px;padding:0 0 24px}.ob-teacher-card{background:#ffffffb8;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;padding:24px;border:1px solid rgba(0,0,0,.05);box-shadow:0 1px 2px #0000000a,0 8px 24px #0000000f;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.ob-teacher-card:hover{transform:translateY(-2px);box-shadow:0 2px 4px #0000000f,0 16px 40px #0000001a;border-color:#007aff26}.ob-teacher-card:active{transform:translateY(0);box-shadow:0 1px 2px #0000000a,0 4px 12px #0000000f}.ob-card-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.ob-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:600;color:#fff;flex-shrink:0;box-shadow:0 4px 12px #00000026}.ob-header-info{flex:1;min-width:0}.ob-teacher-name{font-size:20px;font-weight:600;color:#1d1d1f;margin:0 0 6px;letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ob-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;letter-spacing:.2px}.ob-status-badge .ob-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.ob-status-active{background:#34c7591f;color:#248a3d}.ob-status-active .ob-status-dot{background:#34c759}.ob-status-onboarding{background:#ff9f0a1f;color:#c96a00}.ob-status-onboarding .ob-status-dot{background:#ff9f0a}.ob-status-registered{background:#007aff1f;color:#0070e0}.ob-status-registered .ob-status-dot{background:#007aff}.ob-status-invited{background:#8e8e931f;color:#636366}.ob-status-invited .ob-status-dot{background:#8e8e93}.ob-status-inactive{background:#ff3b301f;color:#d92b20}.ob-status-inactive .ob-status-dot{background:#ff3b30}.ob-card-meta{text-align:right;flex-shrink:0}.ob-last-activity{font-size:12px;color:#86868b;margin-bottom:4px;font-weight:400}.ob-priority{font-size:13px;color:#1d1d1f;font-weight:500}.ob-progress-section{margin-bottom:20px}.ob-progress-label{font-size:13px;font-weight:500;color:#1d1d1f;margin-bottom:10px;letter-spacing:-.1px}.ob-progress-track{height:8px;background:#0000000f;border-radius:4px;overflow:hidden;margin-bottom:8px}.ob-progress-fill{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.4,0,.2,1)}.ob-progress-fill-green{background:linear-gradient(90deg,#34c759,#30d158)}.ob-progress-fill-orange{background:linear-gradient(90deg,#ff9f0a,#ffb340)}.ob-progress-fill-blue{background:linear-gradient(90deg,#007aff,#5ac8fa)}.ob-progress-fill-gray{background:linear-gradient(90deg,#8e8e93,#aeaeb2)}.ob-progress-count{font-size:12px;color:#86868b;font-weight:400}.ob-task-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.ob-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:16px;font-size:12px;font-weight:500;transition:all .2s ease;border:1px solid transparent}.ob-chip-done{background:#34c7591a;color:#248a3d;border-color:#34c75933}.ob-chip-pending{background:#8e8e931a;color:#636366;border-color:#8e8e9333}.ob-chip-icon{font-size:11px;flex-shrink:0}.ob-card-divider{height:1px;background:#0000000f;margin:16px 0}.ob-card-footer{display:flex;align-items:center;justify-content:space-between}.ob-empty-state{text-align:center;padding:60px 20px;color:#86868b}.ob-empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.ob-empty-title{font-size:18px;font-weight:600;color:#1d1d1f;margin-bottom:8px}.ob-empty-desc{font-size:14px;color:#86868b}.ob-search-wrapper{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.ob-search-input{flex:1;min-width:200px;max-width:320px}.ob-filter-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.ob-filter-tab{padding:6px 16px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid rgba(0,0,0,.08);background:#fffc;color:#1d1d1f;-webkit-user-select:none;user-select:none}.ob-filter-tab:hover{background:#fff;border-color:#0000001f}.ob-filter-tab.active{background:#007aff;color:#fff;border-color:#007aff;box-shadow:0 2px 8px #007aff4d}.ob-card-skeleton{background:#ffffffb8;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;padding:24px;border:1px solid rgba(0,0,0,.05)}@media (max-width: 1024px){.onboarding-card-list{gap:14px;padding:0 0 20px}.ob-teacher-card{padding:20px;border-radius:20px}.ob-avatar{width:56px;height:56px;font-size:20px}.ob-teacher-name{font-size:18px}}@media (max-width: 640px){.onboarding-card-list{gap:12px;padding:0 0 16px}.ob-teacher-card{padding:16px;border-radius:18px}.ob-avatar{width:48px;height:48px;font-size:18px}.ob-teacher-name{font-size:16px;margin-bottom:4px}.ob-status-badge{padding:3px 10px;font-size:11px}.ob-card-meta{display:none}.ob-task-chips{gap:6px;margin-bottom:16px}.ob-chip{padding:4px 10px;font-size:11px}.ob-progress-section{margin-bottom:16px}.ob-card-divider{margin:12px 0}.ob-search-wrapper{flex-direction:column;align-items:stretch;gap:10px}.ob-search-input{max-width:none;min-width:0}}.onboarding-card-list::-webkit-scrollbar{width:6px;height:6px}.onboarding-card-list::-webkit-scrollbar-track{background:transparent}.onboarding-card-list::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.onboarding-card-list::-webkit-scrollbar-thumb:hover{background:#00000040}.mob-ob-container{padding:0 16px 24px;min-height:100vh;background:#f2f2f7}.mob-ob-search{display:flex;gap:10px;padding:12px 0}.mob-ob-search .ant-input-affix-wrapper{flex:1;border-radius:12px!important;border:none!important;background:#fffc!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.mob-ob-filter-scroll{display:flex;gap:6px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:none;-ms-overflow-style:none}.mob-ob-filter-scroll::-webkit-scrollbar{display:none}.mob-ob-filter-btn{padding:6px 14px;border-radius:16px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid rgba(0,0,0,.08);background:#fffc;color:#1d1d1f;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:all .2s ease;flex-shrink:0}.mob-ob-filter-btn.active{background:#007aff;color:#fff;border-color:#007aff;box-shadow:0 2px 8px #007aff4d}.mob-ob-filter-btn:active{opacity:.8}.mob-ob-list{display:flex;flex-direction:column;gap:10px}.mob-ob-card{background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:18px;padding:16px;box-shadow:0 1px 2px #0000000a,0 4px 16px #0000000f;border:1px solid rgba(0,0,0,.04);cursor:pointer;transition:all .2s ease}.mob-ob-card:active{transform:scale(.98);background:#fff}.mob-ob-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.mob-ob-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #00000026}.mob-ob-info{flex:1;min-width:0}.mob-ob-name{font-size:16px;font-weight:600;color:#1d1d1f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mob-ob-status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500}.mob-ob-time{font-size:11px;color:#86868b}.mob-ob-arrow{flex-shrink:0}.mob-ob-progress-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.mob-ob-progress-track{flex:1;height:6px;background:#0000000f;border-radius:3px;overflow:hidden}.mob-ob-progress-fill{height:100%;border-radius:3px;transition:width .4s ease}.mob-ob-progress-label{font-size:12px;color:#86868b;font-weight:500;flex-shrink:0}.mob-ob-chips{display:flex;flex-wrap:wrap;gap:6px}.mob-ob-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:12px;font-size:11px;font-weight:500}.mob-ob-chip-done{background:#34c7591a;color:#248a3d}.mob-ob-chip-pending{background:#8e8e931a;color:#636366}.mob-ob-check-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#00000005;border-radius:12px;font-size:14px;color:#1d1d1f}.mob-ob-skeleton{height:120px;background:#fffc;border-radius:18px;animation:mob-pulse 1.5s ease-in-out infinite}@keyframes mob-pulse{0%,to{opacity:1}50%{opacity:.5}}.mob-detail-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#00000005;border-radius:12px;margin-bottom:16px}.mob-ob-container,.mob-ob-card,.mob-ob-filter-btn,.mob-ob-name,.mob-ob-status,.mob-ob-chip{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}.interview-page{min-height:100vh;background:#fff;font-family:Nunito,PingFang SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1a1a1a}.interview-topbar{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #efefef;height:64px;padding:0 48px;display:flex;align-items:center;justify-content:space-between}.interview-topbar-brand{font-weight:800;font-size:20px;color:#1a1a1a;text-decoration:none;letter-spacing:-.5px;display:flex;align-items:center;gap:8px}.interview-topbar-brand:hover{color:#1a1a1a}.interview-topbar-nav{display:flex;gap:24px;align-items:center}.interview-topbar-link{color:#444;font-size:14px;text-decoration:none;font-weight:500}.interview-topbar-link:hover{color:#1a1a1a}.interview-topbar-link-btn{background:#1a1a1a;color:#fff;padding:8px 20px;border-radius:6px;font-size:14px;font-weight:600;text-decoration:none}.interview-topbar-link-btn:hover{background:#333;color:#fff}.interview-hero{background:#fff;padding:72px 48px 80px}.interview-hero-inner{max-width:960px;margin:0 auto;display:flex;align-items:center;gap:80px}.interview-hero-left{flex-shrink:0}.interview-hero-img{width:420px;height:420px;object-fit:contain}.interview-hero-right{flex:1}.interview-hero-title{font-size:36px;font-weight:800;color:#1a1a1a;margin:0 0 12px;line-height:1.2}.interview-hero-desc{font-size:16px;color:#555;line-height:1.7;margin:0}.interview-content{background:#f7f7f5;padding:48px;min-height:50vh}.interview-content-inner{max-width:680px;margin:0 auto}.interview-card{background:#fff;border-radius:12px;padding:36px;box-shadow:0 1px 6px #0000000f}.interview-header{margin-bottom:28px}.interview-header h2{font-size:28px;font-weight:800;color:#1a1a1a;margin:0 0 8px}.interview-header p{font-size:15px;color:#666;margin:0;line-height:1.6}.interview-form{display:flex;flex-direction:column;gap:18px}.interview-field label{display:block;font-size:14px;font-weight:600;color:#333;margin-bottom:6px}.interview-field label .required{color:#ef5350;margin-left:2px}.interview-field label .optional{color:#999;font-weight:400;font-size:12px;margin-left:4px}.interview-field input{width:100%;height:48px;padding:0 16px;border-radius:8px;border:1.5px solid #E0E0E0;font-size:15px;font-family:inherit;box-sizing:border-box;outline:none;transition:border-color .2s,box-shadow .2s;background:#fff;color:#1a1a1a}.interview-field input::placeholder{color:#bdbdbd}.interview-field input:focus{border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a0f;background:#fff}.interview-error{color:#ef5350;font-size:13px;margin-top:-4px;display:flex;align-items:center;gap:4px}.interview-btn-primary{width:100%;height:48px;border-radius:8px;border:none;background:#1a1a1a;color:#fff;font-size:16px;font-weight:700;font-family:inherit;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px}.interview-btn-primary:hover:not(:disabled){background:#333}.interview-btn-primary:active:not(:disabled){background:#111}.interview-btn-primary:disabled{background:#ccc;cursor:not-allowed;color:#ffffffb3}.interview-spinner{width:20px;height:20px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:interview-spin .7s linear infinite}@keyframes interview-spin{to{transform:rotate(360deg)}}.interview-tz-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#f0f7e8;border:1px solid #dde9d1;border-radius:20px;font-size:12px;color:#555}.interview-info-banner{padding:12px 16px;border-radius:10px;font-size:13px;line-height:1.6;margin-bottom:12px}.interview-info-banner.green{background:#f0f7e8;border:1px solid #dde9d1;color:#444}.interview-info-banner.blue{background:#f0f5ff;border:1px solid #d6e4ff;color:#444}.interview-info-banner.orange{background:#fff8e1;border:1px solid #ffe082;color:#6d4c00}.interview-info-banner strong{font-weight:700;color:#1a1a1a}.interview-info-banner a{color:#1a1a1a;font-weight:600;text-decoration:underline}.interview-date-label{font-size:13px;color:#555;margin-bottom:10px;display:flex;align-items:center;gap:6px;font-weight:600}.interview-dates{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:20px}.interview-date-chip{flex-shrink:0;width:64px;text-align:center;padding:10px 4px;border-radius:10px;cursor:pointer;border:1.5px solid #E0E0E0;background:#fff;transition:all .2s;-webkit-user-select:none;user-select:none}.interview-date-chip:hover{border-color:#aaa;background:#fafafa}.interview-date-chip.selected{border-color:#1a1a1a;background:#f7f7f5}.interview-date-chip .day-name{font-size:11px;color:#999;font-weight:500}.interview-date-chip.selected .day-name{color:#1a1a1a}.interview-date-chip .day-num{font-size:18px;font-weight:700;color:#222;line-height:1.4}.interview-date-chip.selected .day-num{color:#1a1a1a}.interview-date-chip .day-month{font-size:10px;color:#aaa}.interview-date-chip.selected .day-month{color:#555}.interview-date-chip .day-dot{width:6px;height:6px;border-radius:50%;background:#ddd;margin:4px auto 0}.interview-date-chip.selected .day-dot{background:#8bc34a}.interview-date-chip .day-count{font-size:10px;color:#bbb}.interview-date-chip.selected .day-count{color:#8bc34a}.interview-period-label{font-size:12px;color:#888;margin-bottom:8px;font-weight:600}.interview-time-slots{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.interview-time-chip{padding:8px 16px;border-radius:8px;cursor:pointer;border:1.5px solid #E0E0E0;background:#fff;color:#333;font-weight:400;font-size:14px;transition:all .15s;-webkit-user-select:none;user-select:none}.interview-time-chip:hover{border-color:#aaa;background:#fafafa}.interview-time-chip.selected{border-color:#1a1a1a;background:#f7f7f5;color:#1a1a1a;font-weight:700}.interview-booked-card{background:#f7f7f5;border-radius:12px;padding:20px;margin-bottom:16px;border:1px solid #efefef}.interview-booked-card .booked-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;font-size:14px;color:#333}.interview-booked-card .booked-row:last-child{margin-bottom:0}.interview-booked-card .booked-icon{color:#8bc34a;flex-shrink:0;margin-top:2px}.interview-success{text-align:center;padding:24px 0}.interview-success .success-icon-wrap{width:72px;height:72px;border-radius:50%;background:#f0f7e8;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.interview-success h3{font-size:24px;font-weight:800;color:#1a1a1a;margin:0 0 10px}.interview-success p{font-size:14px;color:#666;margin:0;line-height:1.6}.interview-footer{text-align:center;margin-top:28px;padding-top:16px;border-top:1px solid #f0f0f0}.interview-footer span{color:#bbb;font-size:12px}.interview-loading{text-align:center;padding:48px 0}.interview-loading .loading-spinner{width:40px;height:40px;border:3px solid #f0f0f0;border-top-color:#1a1a1a;border-radius:50%;animation:interview-spin .8s linear infinite;margin:0 auto 16px}.interview-loading p{color:#666;font-size:14px}@media (max-width: 900px){.interview-topbar{padding:0 20px}.interview-hero{padding:40px 20px 48px}.interview-hero-inner{flex-direction:column;gap:32px;align-items:center}.interview-hero-img{width:280px;height:280px}.interview-hero-title{font-size:26px}.interview-content{padding:24px 20px}.interview-card{padding:28px 20px}}@media (max-width: 640px){.interview-hero{padding:32px 20px 40px}.interview-hero-img{width:200px;height:200px}.interview-hero-title{font-size:22px;text-align:center}.interview-hero-desc{text-align:center;font-size:14px}.interview-hero-right{text-align:center}.interview-topbar-nav{display:none}}.interview-reschedule-section{margin-top:16px;padding:16px;background:#fffbe6;border:1px solid #ffe58f;border-radius:10px;text-align:center}.interview-reschedule-note{font-size:13px;color:#666;margin:0 0 10px;line-height:1.5}.interview-reschedule-note .anticon{color:#faad14;margin-right:4px}.interview-btn-secondary{width:100%;height:44px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;background:#fff;color:#1a1a1a;border:1.5px solid #d9d9d9}.interview-btn-secondary:hover{border-color:#1a1a1a;background:#fafafa}.interview-btn-secondary:active{background:#f0f0f0}.staff-apple-page{min-height:100vh;background:#f2f2f7;padding-bottom:100px}.staff-apple-page.mobile{padding-bottom:140px}.staff-apple-page.tablet{padding-bottom:120px}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(180deg,#ffffffe6,#fff0)}.mobile-header-title{font-size:28px;font-weight:700;color:#1d1d1f;margin:0}.mobile-header-count{font-size:15px;color:#8e8e93;background:#0000000a;padding:6px 12px;border-radius:16px}.main-content{max-width:1200px;margin:0 auto;padding:0 20px}.main-content.mobile-content{padding:0 16px}.main-content.tablet-content{padding:0 24px}.search-section{padding:20px 0}.staff-apple-page.mobile .search-section,.staff-apple-page.tablet .search-section{padding:16px 0}.search-bar{display:flex;align-items:center;background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;padding:12px 16px;box-shadow:0 2px 12px #0000000a;border:1px solid rgba(0,0,0,.04)}.staff-apple-page.mobile .search-bar{padding:14px 18px;border-radius:14px}.search-icon{color:#8e8e93;font-size:18px;margin-right:12px}.staff-apple-page.mobile .search-icon{font-size:20px}.search-input{flex:1;border:none;background:transparent;font-size:16px;padding:0}.staff-apple-page.mobile .search-input{font-size:17px}.search-input:focus{box-shadow:none}.search-input::placeholder{color:#8e8e93}.segmented-section{padding:0 0 24px}.content-area{min-height:400px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;gap:16px}.loading-container p{color:#8e8e93;font-size:15px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.empty-icon{font-size:64px;margin-bottom:16px}.empty-state h3{font-size:20px;font-weight:600;color:#1d1d1f;margin:0 0 8px}.empty-state p{font-size:15px;color:#8e8e93;margin:0}.staff-grid{display:grid;grid-template-columns:1fr;gap:12px;padding-bottom:20px}.staff-card{background:#ffffffe6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;padding:16px;box-shadow:0 2px 12px #0000000a;border:1px solid rgba(0,0,0,.04);animation:cardSlideIn .3s ease forwards;opacity:0}.staff-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.staff-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600;flex-shrink:0}.staff-info{flex:1;min-width:0}.staff-name{font-size:17px;font-weight:600;color:#1d1d1f;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-email{font-size:13px;color:#8e8e93;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid rgba(0,0,0,.04)}.staff-date{font-size:12px;color:#8e8e93}.staff-actions{display:flex;gap:8px}.action-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.action-btn.edit{background:#007aff1a;color:#007aff}.action-btn.edit:hover{background:#007aff26}.action-btn.delete{background:#ff3b301a;color:#ff3b30}.action-btn.delete:hover{background:#ff3b3026}.action-btn-small{width:32px;height:32px;border:none;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.action-btn-small.edit{background:#007aff1a;color:#007aff}.action-btn-small.edit:hover{background:#007aff26;transform:scale(1.05)}.action-btn-small.delete{background:#ff3b301a;color:#ff3b30}.action-btn-small.delete:hover{background:#ff3b3026;transform:scale(1.05)}.list-view{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;padding:20px;box-shadow:0 4px 20px #0000000a}.staff-apple-page.mobile .list-view{border-radius:16px;padding:16px}.staff-apple-page.tablet .list-view{border-radius:18px;padding:18px}.apple-table .ant-table{background:transparent}.apple-table .ant-table-thead>tr>th{background:#f2f2f7;border-bottom:none;font-weight:600;color:#1d1d1f;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.staff-apple-page.mobile .apple-table .ant-table-thead>tr>th{font-size:11px;padding:10px 8px}.staff-apple-page.mobile .apple-table .ant-table-tbody>tr>td{font-size:14px;padding:12px 8px}.staff-apple-page.tablet .apple-table .ant-table-thead>tr>th{font-size:12px}.staff-apple-page.mobile .ant-table-wrapper{margin:0 -8px}.apple-table .ant-table-tbody>tr>td{border-bottom:1px solid rgba(0,0,0,.04);font-size:15px;color:#1d1d1f}.apple-table .ant-table-tbody>tr:hover>td{background:#007aff0a}.apple-table .ant-table-pagination{margin:16px 0 0}.staff-apple-page.mobile .apple-table .ant-table-pagination{text-align:center}.apple-modal .ant-modal-content{border-radius:16px;overflow:hidden}.apple-modal .ant-modal-header{background:#f2f2f7;border-bottom:none;padding:16px 24px}.apple-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1d1d1f}.apple-modal .ant-modal-body{padding:24px}.apple-modal .ant-modal-footer{border-top:1px solid rgba(0,0,0,.06);padding:12px 24px}.apple-modal .ant-btn-primary{background:#007aff;border-color:#007aff;border-radius:8px;font-weight:500}.apple-modal .ant-btn-default{border-radius:8px}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.staff-apple-page .main-content{animation:pageFadeIn .4s ease forwards}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.staff-grid>div{animation:cardSlideIn .3s ease forwards;opacity:0}@media (min-width: 1025px){.staff-grid{grid-template-columns:repeat(3,1fr);gap:16px}.staff-card{padding:20px}.staff-avatar{width:52px;height:52px;font-size:22px}.staff-name{font-size:18px}.staff-email{font-size:14px}.staff-card-footer{padding-top:14px}.staff-date{font-size:13px}}@media (max-width: 1024px) and (min-width: 769px){.staff-apple-page.tablet .staff-grid{grid-template-columns:repeat(2,1fr);gap:14px}}@media (max-width: 768px){.staff-apple-page{padding-bottom:160px}.search-bar{padding:14px 16px}.list-view{padding:16px;border-radius:16px}.staff-avatar{width:44px;height:44px;font-size:18px}.staff-name{font-size:16px}}@media (max-width: 480px){.main-content{padding:0 12px}.search-section{padding:12px 0}.segmented-section{padding:0 0 16px}.apple-staff-tabbar{height:80px}.apple-staff-tabbar .tabbar-icon{font-size:24px}.apple-staff-tabbar .tabbar-label{font-size:9px}.floating-action-container{bottom:100px!important;right:16px!important}.floating-action-container .fab-primary{width:52px;height:52px;font-size:20px}.floating-action-container .fab-secondary{width:44px;height:44px;font-size:16px}.staff-card{padding:14px}.staff-card-header{gap:10px}.staff-avatar{width:40px;height:40px;font-size:16px}.staff-name{font-size:15px}.staff-email{font-size:12px}}.ios-page-content{padding-bottom:120px!important}.apple-staff-tabbar{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#ffffffbf;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-top:1px solid rgba(0,0,0,.06);padding-bottom:env(safe-area-inset-bottom)}.apple-staff-tabbar .tabbar-content{display:flex;align-items:center;justify-content:space-around;max-width:600px;margin:0 auto;padding:8px 16px}.apple-staff-tabbar .tabbar-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 16px;border:none;background:transparent;cursor:pointer;border-radius:12px;transition:all .2s ease;min-width:60px}.apple-staff-tabbar .tabbar-icon{font-size:22px;color:#8e8e93;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.apple-staff-tabbar .tabbar-label{font-size:10px;font-weight:500;color:#8e8e93;transition:all .2s ease;white-space:nowrap}.apple-staff-tabbar .tabbar-item.active{background:transparent}.apple-staff-tabbar .tabbar-item.active .tabbar-icon{color:#007aff}.apple-staff-tabbar .tabbar-item.active .tabbar-icon .anticon{transform:scale(1.1)}.apple-staff-tabbar .tabbar-item.active .tabbar-label{color:#007aff;font-weight:600}.apple-staff-tabbar .tabbar-item:hover:not(.active) .tabbar-icon{color:#636366}.apple-staff-tabbar .tabbar-item:hover:not(.active) .tabbar-label{color:#636366}.apple-staff-tabbar .tabbar-item:active{transform:scale(.95)}:root{--primary-green: #4CAF50;--primary-green-light: #E8F5E9;--primary-green-dark: #2E7D32;--primary-green-hover: #45a049;--bg-cream: #FAFAFA;--bg-light-gray: #F5F5F5;--bg-white: #FFFFFF;--text-primary: #333333;--text-secondary: #666666;--text-light: #999999;--radius-card: 16px;--radius-button: 24px;--radius-input: 12px;--radius-small: 8px;--shadow-card: 0 4px 12px rgba(0, 0, 0, .05);--shadow-hover: 0 6px 16px rgba(0, 0, 0, .08);--shadow-button: 0 2px 8px rgba(76, 175, 80, .2);--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .3s cubic-bezier(.68, -.55, .265, 1.55)}body{background-color:var(--bg-light-gray);font-family:Poppins,Source Han Rounded CN,Source Han Sans CN,Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.cute-card{background:var(--bg-white);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:24px;transition:var(--transition-smooth);border:none}.cute-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.cute-button{border-radius:var(--radius-button);padding:10px 24px;font-weight:500;transition:var(--transition-bounce);border:none;box-shadow:var(--shadow-button)}.cute-button:hover{transform:scale(1.03);box-shadow:0 4px 12px #4caf504d}.admin-layout .cute-button:hover{box-shadow:0 4px 12px #1976d24d!important}.cute-button-primary{background:linear-gradient(135deg,var(--primary-green) 0%,var(--primary-green-dark) 100%);color:#fff}.cute-button-secondary{background:var(--primary-green-light);color:var(--primary-green-dark)}.admin-layout .cute-button-primary{background:linear-gradient(135deg,#42a5f5,#1976d2)!important;color:#fff!important;box-shadow:0 2px 8px #1976d24d!important}.admin-layout .cute-button-primary:hover{background:linear-gradient(135deg,#1e88e5,#1565c0)!important;box-shadow:0 4px 12px #1976d266!important}.admin-layout .cute-button-secondary{background:#e3f2fd!important;color:#1976d2!important}.cute-input{border-radius:var(--radius-input);border:2px solid var(--primary-green-light);padding:10px 16px;transition:var(--transition-smooth)}.cute-input:focus{border-color:var(--primary-green);box-shadow:0 0 0 3px #4caf501a;outline:none}.cute-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-button);font-size:12px;font-weight:500;background:var(--primary-green-light);color:var(--primary-green-dark)}.cute-badge-success{background:var(--primary-green-light);color:var(--primary-green-dark)}.admin-layout .cute-badge,.admin-layout .cute-badge-success{background:#e3f2fd!important;color:#1976d2!important}.cute-hint{font-size:12px;color:var(--text-light);line-height:1.6;margin-top:4px}.cute-title{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:8px;display:flex;align-items:center;gap:8px}.cute-subtitle{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:24px}.cute-section-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:16px;display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:2px solid var(--primary-green-light)}.admin-layout .cute-section-title{border-bottom:2px solid #E3F2FD!important}.cute-icon-wrapper{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--primary-green-light);color:var(--primary-green-dark);font-size:16px}.admin-layout .cute-icon-wrapper{background:#e3f2fd!important;color:#1976d2!important}.ant-card{border-radius:var(--radius-card)!important;box-shadow:var(--shadow-card)!important;border:none!important;transition:var(--transition-smooth)!important}.ant-card:hover{box-shadow:var(--shadow-hover)!important}.ant-btn-primary{background:linear-gradient(135deg,var(--primary-green) 0%,var(--primary-green-dark) 100%)!important;border:none!important;border-radius:var(--radius-button)!important;box-shadow:var(--shadow-button)!important;transition:var(--transition-bounce)!important}.ant-btn-primary:hover:not(:disabled){transform:scale(1.03)!important;box-shadow:0 4px 12px #4caf504d!important}.admin-mobile-layout .ant-btn-primary,.admin-mobile-layout .ant-btn-primary:hover:not(:disabled),.admin-mobile-layout .ant-btn-primary:focus:not(:disabled),.admin-mobile-layout .ant-btn-primary:active:not(:disabled){background:linear-gradient(135deg,#42a5f5,#1976d2)!important;border-color:#1976d2!important;box-shadow:0 2px 8px #1976d24d!important}.admin-mobile-layout .ant-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1e88e5,#1565c0)!important;border-color:#1565c0!important}.admin-mobile-layout .ant-btn-primary:disabled{background:#bbdefb!important;border-color:#bbdefb!important;box-shadow:none!important}.admin-layout .ant-btn-primary,.admin-layout .ant-btn-primary:hover:not(:disabled),.admin-layout .ant-btn-primary:focus:not(:disabled),.admin-layout .ant-btn-primary:active:not(:disabled){background:linear-gradient(135deg,#42a5f5,#1976d2)!important;border-color:#1976d2!important;box-shadow:0 2px 8px #1976d24d!important}.admin-layout .ant-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1e88e5,#1565c0)!important;border-color:#1565c0!important;box-shadow:0 4px 12px #1976d266!important}.admin-layout .ant-btn-primary:disabled{background:#bbdefb!important;border-color:#bbdefb!important;box-shadow:none!important}.ant-btn-default{border-radius:var(--radius-button)!important;transition:var(--transition-bounce)!important}.ant-btn-default:hover:not(:disabled){transform:scale(1.03)!important}.ant-input,.ant-input-affix-wrapper{border-radius:var(--radius-input)!important;border:2px solid var(--primary-green-light)!important;transition:var(--transition-smooth)!important}.ant-input:focus,.ant-input-focused,.ant-input-affix-wrapper-focused{border-color:var(--primary-green)!important;box-shadow:0 0 0 3px #4caf501a!important}.ant-input-affix-wrapper .ant-input,.ant-input-affix-wrapper input.ant-input,.ant-input-affix-wrapper textarea.ant-input{border:none!important;box-shadow:none!important;outline:none!important}.ant-input-affix-wrapper .ant-input:focus,.ant-input-affix-wrapper .ant-input-focused,.ant-input-affix-wrapper-focused .ant-input{border:none!important;box-shadow:none!important}.admin-layout .ant-input,.admin-layout .ant-input-affix-wrapper{border:2px solid #E3F2FD!important}.admin-layout .ant-input:focus,.admin-layout .ant-input-focused,.admin-layout .ant-input-affix-wrapper-focused{border-color:#42a5f5!important;box-shadow:0 0 0 3px #1976d21a!important}.ant-tag{border-radius:var(--radius-input)!important}.ant-menu-item{border-radius:var(--radius-input)!important;transition:var(--transition-smooth)!important}.ant-menu-item:hover{background:var(--primary-green-light)!important}.ant-menu-item-selected{background:var(--primary-green-light)!important;color:var(--primary-green-dark)!important;font-weight:600!important}.admin-layout .ant-menu-item:hover{background:#e3f2fd!important;color:#1976d2!important}.admin-layout .ant-menu-item-selected{background:#e3f2fd!important;color:#1976d2!important;font-weight:600!important}.cute-stat-card{background:linear-gradient(135deg,var(--bg-white) 0%,var(--primary-green-light) 100%);border:2px solid var(--primary-green-light);transition:var(--transition-bounce)}.cute-stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--primary-green)}.admin-layout .cute-stat-card{background:linear-gradient(135deg,var(--bg-white) 0%,#E3F2FD 100%)!important;border:2px solid #E3F2FD!important}.admin-layout .cute-stat-card:hover{border-color:#42a5f5!important}.stat-title{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);font-weight:500}.admin-layout .ant-layout-sider{background:var(--bg-white)!important;box-shadow:var(--shadow-card);border-right:2px solid #E3F2FD}.admin-layout .ant-menu{background:transparent!important;border:none;padding:16px 8px}.admin-layout .ant-menu-item{border-radius:var(--radius-input)!important;margin:4px 0!important;height:48px!important;line-height:48px!important;transition:var(--transition-bounce)!important}.admin-layout .ant-menu-item:hover{background:#e3f2fd!important;transform:translate(4px);color:#1976d2!important}.admin-layout .ant-menu-item-selected{background:linear-gradient(135deg,#e3f2fd,#1976d21a)!important;color:#1976d2!important;font-weight:600}.admin-layout .ant-menu-item-selected:after{display:none!important}.admin-layout .sidebar-logo{height:80px;display:flex;align-items:center;justify-content:center;background:var(--bg-white);border-bottom:2px solid #E3F2FD;padding:16px;box-sizing:border-box}.sidebar-logo .logo-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%}.admin-layout .sidebar-logo .logo-icon-placeholder{width:40px;height:40px;border-radius:var(--radius-small);background:#e3f2fd;display:flex;align-items:center;justify-content:center;font-size:24px;color:#1976d2;box-shadow:var(--shadow-card)}.sidebar-logo .logo-text{font-size:16px;font-weight:600;color:var(--text-primary);letter-spacing:.3px;text-align:center;line-height:1.2}.admin-layout .user-info:hover{background:#1976d2!important;color:#fff;transform:scale(1.05)}.admin-layout .user-info:hover span{color:#fff!important}.admin-layout .admin-layout-icon,.admin-layout .cute-title .anticon,.admin-layout .cute-title [style*=primary-green-dark],.admin-layout h1 .anticon[style*=primary-green-dark],.admin-layout .ant-tabs-tab-active .ant-tabs-tab-btn{color:#1976d2!important}.admin-layout .ant-tabs-ink-bar{background:#1976d2!important}.admin-layout .ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active{background:#e3f2fd!important;border-color:#42a5f5!important}.admin-layout .ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active .ant-tabs-tab-btn{color:#1976d2!important}.admin-layout .ant-tag[style*=green],.admin-layout .ant-tag[color=green]{background:#e3f2fd!important;border-color:#42a5f5!important;color:#1976d2!important}.admin-layout [style*=primary-green-dark],.admin-layout .ant-statistic-content-value[style*=primary-green-dark],.admin-layout .ant-statistic-content-value[style*="#4CAF50"],.admin-layout [style*="var(--primary-green-dark)"]{color:#1976d2!important}.admin-layout [style*=primary-green-light]{background:#e3f2fd!important;border-color:#e3f2fd!important}.admin-layout .ant-tabs-card .ant-tabs-tab{border-color:#e3f2fd!important}.admin-layout .ant-tabs-card .ant-tabs-tab:hover{color:#1976d2!important}.admin-layout .ant-btn-group .ant-btn-primary,.admin-layout .ant-space .ant-btn-primary{background:linear-gradient(135deg,#42a5f5,#1976d2)!important;border-color:#1976d2!important}
