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;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}/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-amber-700:oklch(55.5% .163 48.998);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-cyan-400:oklch(78.9% .154 211.53);--color-blue-600:oklch(54.6% .245 262.881);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-xl:36rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-4{margin-right:calc(var(--spacing) * 4)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.h-40{height:calc(var(--spacing) * 40)}.min-h-screen{min-height:100vh}.w-12{width:calc(var(--spacing) * 12)}.w-40{width:calc(var(--spacing) * 40)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[120px\]{max-width:120px}.max-w-\[200px\]{max-width:200px}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-slate-200{border-color:var(--color-slate-200)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-white{background-color:var(--color-white)}.object-contain{object-fit:contain}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.text-center{text-align:center}.text-right{text-align:right}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-all{word-break:break-all}.text-amber-700{color:var(--color-amber-700)}.text-blue-600{color:var(--color-blue-600)}.text-cyan-400\/70{color:#00d2efb3}@supports (color:color-mix(in lab,red,red)){.text-cyan-400\/70{color:color-mix(in oklab,var(--color-cyan-400) 70%,transparent)}}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.opacity-50{opacity:.5}.opacity-90{opacity:.9}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}@media(hover:hover){.hover\:text-blue-600:hover{color:var(--color-blue-600)}.hover\:text-cyan-400:hover{color:var(--color-cyan-400)}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--tech-bg: #070b14;--tech-bg2: #0f172a;--tech-surface: rgba(15, 23, 42, .72);--tech-border: rgba(34, 211, 238, .18);--tech-cyan: #22d3ee;--tech-violet: #a78bfa;--tech-glow: 0 0 40px rgba(34, 211, 238, .15);--tech-font: "Noto Sans SC", system-ui, sans-serif;--tech-display: "Orbitron", "Noto Sans SC", sans-serif;--admin-sidebar-w: 16.5rem}*{box-sizing:border-box}body{margin:0;font-family:var(--tech-font);background:var(--tech-bg);color:#e2e8f0}.tech-bg{min-height:100vh;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(34,211,238,.12),transparent),radial-gradient(ellipse 60% 40% at 100% 50%,rgba(139,92,246,.08),transparent),linear-gradient(180deg,#070b14,#0f172a)}.tech-grid-bg:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(34,211,238,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(34,211,238,.03) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0}.tech-card{background:var(--tech-surface);border:1px solid var(--tech-border);border-radius:1rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--tech-glow)}.tech-title{font-family:var(--tech-display);letter-spacing:.06em;background:linear-gradient(90deg,var(--tech-cyan),var(--tech-violet));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tech-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.25rem;border-radius:.5rem;font-weight:600;border:1px solid rgba(34,211,238,.4);background:linear-gradient(135deg,#22d3ee33,#8b5cf626);color:#e0f2fe;cursor:pointer;transition:all .2s}.tech-btn:hover{border-color:var(--tech-cyan);box-shadow:0 0 20px #22d3ee40}.tech-btn--ghost{background:transparent;border-color:#94a3b859;color:#94a3b8}.portal-nav{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--tech-border);background:#070b14d9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portal-nav__inner{max-width:1200px;margin:0 auto;padding:.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.portal-nav__brand{font-family:var(--tech-display);font-size:1.1rem;font-weight:700;color:var(--tech-cyan);text-decoration:none}.portal-nav__links{display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:center}.portal-nav__link{color:#94a3b8;text-decoration:none;font-size:.9rem;padding:.35rem .5rem;border-radius:.35rem}.portal-nav__link:hover,.portal-nav__link.router-link-active{color:var(--tech-cyan);background:#22d3ee14}.portal-main{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.vip-badge{display:inline-block;padding:.15rem .5rem;font-size:.7rem;font-weight:700;border-radius:999px;background:linear-gradient(90deg,#f59e0b,#ef4444);color:#fff}.admin-layout{display:flex;min-height:100vh;background:#f1f5f9;color:#334155}.admin-layout .tech-card{background:#fff;border:1px solid #e2e8f0;box-shadow:0 4px 16px #0f172a0a;color:#334155;-webkit-backdrop-filter:none;backdrop-filter:none}.admin-sidebar{width:var(--admin-sidebar-w);flex-shrink:0;background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column}.admin-sidebar__brand{padding:1rem;display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#0f172a;font-weight:600;border-bottom:1px solid #e2e8f0}.admin-sidebar__logo{width:2rem;height:2rem;border-radius:9999px;object-fit:cover}.admin-sidebar__nav{padding:.75rem .5rem;flex:1;display:flex;flex-direction:column;gap:.25rem}.admin-sidebar__link{display:flex;align-items:center;gap:.5rem;padding:.6rem .85rem;border-radius:.5rem;color:#334155;text-decoration:none;font-size:.875rem;border:1px solid transparent;cursor:pointer}.admin-sidebar__link:hover,.admin-sidebar__link.router-link-active{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.admin-main{flex:1;display:flex;flex-direction:column;min-width:0}.admin-topbar{height:3.5rem;padding:0 1.25rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2e8f0;background:#fff}.admin-topbar__title{margin:0;font-size:1.125rem;font-weight:600;color:#0f172a}.admin-topbar__user{font-size:.875rem;color:#64748b}.admin-content{flex:1;padding:1.25rem;overflow:auto;color:#334155}.admin-content p,.admin-content label,.admin-content span{color:inherit}.admin-tab-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.admin-tab-btn{padding:.4rem .9rem;border-radius:.5rem;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:.875rem;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.admin-tab-btn:hover{color:#2563eb;border-color:#93c5fd;background:#eff6ff}.admin-tab-btn--active{background:#2563eb;border-color:#2563eb;color:#fff}.admin-tab-btn--active:hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.admin-form-label{display:block;font-size:.875rem;color:#475569;margin-bottom:.35rem}.admin-form-hint{font-size:.875rem;color:#64748b;margin-bottom:.75rem;line-height:1.6}.admin-upload-btn{display:inline-block;padding:.5rem 1rem;border-radius:.5rem;background:#f1f5f9;border:1px solid #cbd5e1;color:#334155;font-size:.875rem;cursor:pointer}.admin-upload-btn:hover{background:#e2e8f0}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.stat-card{padding:1.25rem;border-radius:.75rem;background:#fff;border:1px solid #e2e8f0;box-shadow:0 4px 16px #0f172a0a}.stat-card__value{font-size:1.75rem;font-weight:700;color:#2563eb}.stat-card__label{font-size:.8rem;color:#64748b;margin-top:.25rem}.stat-card--warn .stat-card__value{color:#dc2626}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.course-card{overflow:hidden;transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #22d3ee1f}.course-card__cover{aspect-ratio:16/9;background:linear-gradient(135deg,#1e293b,#0f172a);display:flex;align-items:center;justify-content:center;color:#475569;font-size:.85rem}.course-card__body{padding:1rem}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.login-card{width:100%;max-width:420px;padding:2rem}@media(max-width:768px){.admin-sidebar{display:none}.portal-nav__links{font-size:.8rem}.portal-nav-light__links{flex-wrap:wrap;gap:.5rem}}.portal-light{--portal-content-max: 1200px;--portal-gutter: clamp(1.5rem, 5vw, 4.5rem);background:linear-gradient(180deg,#f0f7ff,#fff 40%,#f8fafc);color:#1e293b}.portal-grid-bg:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 10%,rgba(59,130,246,.08),transparent 40%),radial-gradient(circle at 80% 0%,rgba(14,165,233,.06),transparent 35%);pointer-events:none;z-index:0}.portal-nav-light{position:sticky;top:0;z-index:50;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(59,130,246,.12);box-shadow:0 4px 24px #0f172a0a}.portal-nav-light__inner{max-width:var(--portal-content-max);margin:0 auto;padding:1rem var(--portal-gutter);display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.portal-nav-light__brand{display:flex;align-items:center;gap:.65rem;font-weight:800;font-size:1.35rem;color:#0f172a;text-decoration:none;letter-spacing:.02em;flex-shrink:0}.portal-nav-light__logo-img{width:2.75rem;height:2.75rem;object-fit:contain;border-radius:9999px}.portal-nav-light__links{display:flex;align-items:center;gap:1.35rem;flex-wrap:wrap}.portal-nav-light__link{color:#0f172a;text-decoration:none;font-size:1.02rem;padding-bottom:.3rem;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;font-weight:600}.portal-nav-light__link.router-link-active,.portal-nav-light__link:hover{color:#dc2626;border-bottom-color:#dc2626}.portal-main-light{position:relative;z-index:1;width:100%;max-width:var(--portal-content-max);margin:0 auto;padding:2rem var(--portal-gutter) 3rem;min-height:calc(100vh - 140px)}.portal-page{width:100%}.portal-footer-light{position:relative;z-index:1;text-align:center;padding:2rem 1rem;color:#94a3b8;font-size:.75rem}.portal-footer-light a{color:#2563eb;text-decoration:none}.portal-btn-primary{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:9999px;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;font-weight:600;cursor:pointer;box-shadow:0 8px 24px #2563eb40;transition:transform .15s,box-shadow .15s}.portal-btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 28px #2563eb52}.portal-link-btn{background:none;border:none;color:#64748b;font-size:.875rem;cursor:pointer}.portal-link-btn:hover{color:#2563eb}.vip-badge-light{display:inline-block;padding:.15rem .55rem;border-radius:9999px;background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#78350f;font-size:.75rem;font-weight:700}.section-head{text-align:center;margin-bottom:2rem}.section-head__title{font-size:1.75rem;font-weight:800;color:#0f172a;margin:0 0 .5rem}.section-head__sub{color:#64748b;margin:0}.member-profile-card{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.15rem;margin-bottom:1rem;background:#fff;border-radius:.85rem;border:1px solid rgba(59,130,246,.12);box-shadow:0 4px 20px #0f172a0d}.member-profile-card__info{min-width:0;flex:1}.member-profile-card__id{margin:0;font-size:1rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-profile-card__meta{margin:.2rem 0 0;font-size:.8rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-profile-card__btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:.45rem .75rem;border-radius:9999px;border:1px solid #2563eb;background:#eff6ff;color:#2563eb;font-size:.75rem;font-weight:600;text-decoration:none;white-space:nowrap}.member-page__head{margin-bottom:1rem}.member-page__err{margin:0 0 .75rem;padding:.55rem .75rem;border-radius:.5rem;background:#fef2f2;color:#dc2626;font-size:.85rem}.pay-channel-bar{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;flex-wrap:nowrap}.pay-channel-bar__label{flex-shrink:0;color:#64748b;font-size:.85rem;white-space:nowrap}.pay-channel-bar__options{display:flex;align-items:center;gap:.35rem;flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.pay-channel-btn{flex-shrink:0;padding:.35rem .65rem;border-radius:9999px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:.75rem;cursor:pointer;white-space:nowrap}.pay-channel-btn--active{border-color:#2563eb;background:#eff6ff;color:#2563eb;font-weight:600}.vip-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media(max-width:900px){.vip-plan-grid{grid-template-columns:1fr}}.vip-plan-card{background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 12px 40px #0f172a14;border:1px solid rgba(148,163,184,.2);display:flex;flex-direction:column}.vip-plan-card__head{padding:1.25rem 1.5rem;color:#fff}.vip-plan-card--blue .vip-plan-card__head{background:linear-gradient(135deg,#2563eb,#3b82f6)}.vip-plan-card--gold .vip-plan-card__head{background:linear-gradient(135deg,#d97706,#fbbf24)}.vip-plan-card--dark .vip-plan-card__head{background:linear-gradient(135deg,#1e293b,#334155)}.vip-plan-card__head h3{margin:0 0 .25rem;font-size:1.25rem}.vip-plan-card__head p{margin:0;font-size:.8rem;opacity:.9}.vip-plan-card__price{padding:1.5rem;text-align:center}.vip-plan-card__price .currency{font-size:1.25rem;color:#0f172a}.vip-plan-card__price .amount{font-size:2.5rem;font-weight:800;color:#0f172a}.vip-plan-card__price .daily{color:#ef4444;font-size:.875rem;margin:.25rem 0}.vip-plan-card__price .original{color:#94a3b8;font-size:.875rem;text-decoration:line-through;margin:0}.vip-plan-card__buy{margin:0 1.5rem 1.5rem;padding:.75rem;border:none;border-radius:9999px;font-weight:600;cursor:pointer;color:#fff}.vip-plan-card--blue .vip-plan-card__buy{background:#2563eb}.vip-plan-card--gold .vip-plan-card__buy{background:#d97706}.vip-plan-card--dark .vip-plan-card__buy{background:#1e293b}.activate-card{max-width:480px;margin:0 auto;padding:1.5rem;background:#fff;border-radius:1rem;border:1px solid rgba(148,163,184,.25);box-shadow:0 8px 24px #0f172a0d}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media(max-width:900px){.path-grid{grid-template-columns:1fr}}.path-card{background:#fff;border-radius:1rem;padding:1.5rem;border:1px solid rgba(59,130,246,.12);box-shadow:0 8px 32px #0f172a0f}.path-card--link{display:flex;flex-direction:column;text-decoration:none;color:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s}.path-card--link:hover{transform:translateY(-4px);box-shadow:0 16px 40px #2563eb1f;border-color:#2563eb59}.path-card__icon{width:3rem;height:3rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;margin-bottom:1rem}.path-card__icon--blue{background:#2563eb}.path-card__icon--cyan{background:#0891b2}.path-card__icon--purple{background:#7c3aed}.group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.group-card{background:#fff;border-radius:1rem;padding:1.25rem;border:1px solid rgba(148,163,184,.2);box-shadow:0 8px 24px #0f172a0d}.about-hero{background:linear-gradient(135deg,#0f172a,#1e3a5f);color:#fff;border-radius:1rem;padding:3rem 2rem;text-align:center;margin-bottom:2rem}.about-hero h1{margin:0 0 1rem;font-size:2rem}.about-hero p{margin:0;opacity:.9;max-width:640px;margin-inline:auto}.home-hero{position:relative}.home-carousel-wrap{display:flex;align-items:center;gap:.75rem}.home-carousel{position:relative;flex:1;min-width:0;min-height:280px;border-radius:1.25rem;overflow:hidden;background:#fff;border:1px solid rgba(59,130,246,.15);box-shadow:0 20px 60px #2563eb1a}.home-carousel__track{display:flex;width:100%;transition:transform .65s cubic-bezier(.4,0,.2,1);will-change:transform}.home-carousel__slide{flex:0 0 100%;width:100%;min-width:100%;display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:2.5rem 3rem;min-height:280px;align-items:center;box-sizing:border-box}.home-carousel__slide--active{display:grid}.home-carousel__slide--esp{background:linear-gradient(135deg,#1e3a8a,#2563eb 50%,#eff6ff 50%)}.home-carousel__slide--esp .home-carousel__left{color:#fff}.home-carousel__slide--path{background:linear-gradient(135deg,#f0f9ff,#fff)}.home-carousel__slide--vip{background:linear-gradient(135deg,#fef3c7,#fff)}.home-carousel__tag{display:inline-block;padding:.25rem .75rem;border-radius:9999px;background:#fff3;font-size:.75rem;margin-bottom:.75rem}.home-carousel__slide--path .home-carousel__tag,.home-carousel__slide--vip .home-carousel__tag{background:#dbeafe;color:#2563eb}.home-carousel__title{font-size:1.75rem;font-weight:800;margin:0 0 .5rem}.home-carousel__sub{margin:0;opacity:.85;font-size:.95rem}.home-carousel__desc{font-size:1.5rem;font-weight:700;color:#0f172a;margin:0}.home-carousel__arrow{flex-shrink:0;width:2.75rem;height:2.75rem;border-radius:9999px;border:1px solid rgba(148,163,184,.45);background:#fff;cursor:pointer;font-size:1.65rem;line-height:1;color:#475569;box-shadow:0 4px 14px #0f172a14;transition:border-color .2s,color .2s}.home-carousel__arrow:hover{border-color:#2563eb;color:#2563eb}.home-carousel__dots{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem}.home-carousel__dot{width:8px;height:8px;border-radius:9999px;border:none;background:#cbd5e1;cursor:pointer;padding:0}.home-carousel__dot--active{width:24px}@media(max-width:768px){.home-carousel__slide{grid-template-columns:1fr;padding:1.5rem}.home-carousel__desc{font-size:1.125rem}}.course-grid-light{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media(max-width:1100px){.course-grid-light{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.course-grid-light{grid-template-columns:1fr}}.course-card-light{background:#fff;border-radius:1rem;overflow:hidden;text-decoration:none;color:inherit;border:1px solid rgba(148,163,184,.2);box-shadow:0 8px 28px #0f172a0f;transition:transform .2s,box-shadow .2s}.course-card-light:hover{transform:translateY(-4px);box-shadow:0 16px 40px #2563eb1f}.course-card-light__cover{position:relative;aspect-ratio:16 / 10;min-height:160px;background:linear-gradient(135deg,#1e3a8a,#3b82f6);display:flex;align-items:center;justify-content:center;color:#fff9;font-weight:700;overflow:hidden}.course-card-light__cover img,.course-cover-img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;background:#e2e8f0}.course-card-light__vip{position:absolute;top:.75rem;left:.75rem;background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#78350f;font-size:.7rem;font-weight:700;padding:.15rem .5rem;border-radius:9999px}.course-card-light__body{padding:1rem 1.25rem 1.25rem}.course-card-light__body h3{margin:0 0 .35rem;font-size:1rem;font-weight:600;color:#0f172a}.course-card-light__body p{margin:0;font-size:.8rem;color:#64748b}.course-card-light__cta{display:inline-block;margin-top:.75rem;color:#2563eb;font-size:.875rem;font-weight:600}.course-filter-bar{display:flex;flex-wrap:wrap;gap:.5rem}.course-filter-btn{padding:.35rem 1rem;border-radius:9999px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:.875rem;cursor:pointer}.course-filter-btn--active{background:#2563eb;border-color:#2563eb;color:#fff}.sort-link{background:none;border:none;color:#64748b;cursor:pointer;padding:0}.sort-link--active{color:#2563eb;font-weight:600}.auth-shell{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 140px);gap:0;margin:-1rem -1.25rem 0;background:#fff;border-radius:1rem;overflow:hidden;border:1px solid rgba(148,163,184,.2);box-shadow:0 16px 48px #0f172a14}.auth-shell__visual{background:linear-gradient(145deg,#eff6ff,#dbeafe,#f0f9ff);display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.auth-shell__orb{position:absolute;border-radius:9999px;filter:blur(40px);opacity:.5}.auth-shell__orb--1{width:200px;height:200px;background:#3b82f6;top:10%;left:10%}.auth-shell__orb--2{width:160px;height:160px;background:#06b6d4;bottom:15%;right:15%}.auth-shell__device{position:relative;z-index:1;text-align:center}.auth-shell__screen{width:220px;height:140px;margin:0 auto;border-radius:12px;background:linear-gradient(135deg,#1e3a8a,#2563eb);box-shadow:0 20px 40px #2563eb59}.auth-shell__keyboard{width:260px;height:24px;margin:12px auto 0;border-radius:6px;background:#fffc;border:1px solid rgba(148,163,184,.3)}.auth-shell__visual-tip{margin-top:1.5rem;color:#475569;font-size:.875rem}.auth-shell__panel{padding:2.5rem 2rem;display:flex;flex-direction:column;justify-content:center}.auth-shell__brand{display:flex;gap:1rem;align-items:flex-start;margin-bottom:2rem}.auth-shell__logo{width:56px;height:56px;object-fit:contain}.auth-shell__title{margin:0;font-size:1.5rem;font-weight:800;color:#0f172a}.auth-shell__slogan{margin:.25rem 0;color:#64748b;font-size:.875rem}.auth-shell__desc{margin:0;color:#94a3b8;font-size:.8rem;line-height:1.5}.auth-shell__form-title{margin:0 0 .25rem;font-size:1.125rem;font-weight:700;color:#0f172a}.auth-shell__form-sub{margin:0 0 1rem;color:#64748b;font-size:.875rem}.auth-tabs{display:flex;gap:1.5rem;margin-bottom:1.25rem;border-bottom:1px solid #e2e8f0}.auth-tabs button{background:none;border:none;padding:.5rem 0;color:#64748b;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.auth-tabs button.active{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.auth-label{display:block;font-size:.875rem;color:#334155;margin-bottom:.35rem}.auth-code-row{display:flex;gap:.5rem}.auth-code-row .ant-input{flex:1}.auth-err{color:#dc2626;font-size:.875rem;margin-bottom:.75rem}.auth-demo-code{color:#d97706;font-size:.75rem}.auth-hint{color:#64748b;font-size:.75rem}.auth-agree{display:flex;align-items:flex-start;gap:.5rem;font-size:.8rem;color:#64748b;margin:1rem 0}.auth-submit{width:100%;padding:.65rem;border-radius:.5rem}.auth-switch{text-align:center;margin-top:1rem;color:#64748b;font-size:.875rem}.auth-switch a{color:#2563eb}@media(max-width:900px){.auth-shell{grid-template-columns:1fr}}@media(max-width:768px){.portal-light--auth-page .portal-main-light{padding-top:.65rem}.auth-shell{margin:0;min-height:auto;border:none;box-shadow:none;border-radius:0;background:transparent}.auth-shell__visual{display:none!important}.auth-shell__panel{padding:.25rem 0 1rem;justify-content:flex-start}.auth-shell__brand{margin-bottom:1.25rem}.auth-shell__desc{display:none}.auth-shell__form-title{font-size:1.15rem}}.portal-user-menu{position:relative}.portal-user-menu__trigger{display:flex;align-items:center;gap:.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9999px;padding:.25rem .75rem .25rem .25rem;cursor:pointer}.portal-user-menu__avatar{width:2rem;height:2rem;border-radius:9999px;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600}.portal-user-menu__name{color:#2563eb;font-size:.875rem;font-weight:600;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-user-menu__caret{color:#94a3b8;font-size:.75rem}.portal-user-menu__dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:#fff;border-radius:.75rem;box-shadow:0 12px 40px #0f172a1f;border:1px solid #e2e8f0;padding:.5rem 0;z-index:100}.portal-user-menu__item{display:block;width:100%;text-align:left;padding:.65rem 1rem;color:#334155;text-decoration:none;font-size:.875rem;background:none;border:none;cursor:pointer}.portal-user-menu__item:hover{background:#f1f5f9;color:#2563eb}.portal-user-menu__item--btn{border-top:1px solid #f1f5f9;margin-top:.25rem;padding-top:.75rem}.user-center-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.user-center-tabs button{padding:.5rem 1rem;border-radius:9999px;border:1px solid #cbd5e1;background:#fff;cursor:pointer;font-size:.875rem}.user-center-tabs button.active{background:#2563eb;border-color:#2563eb;color:#fff}.user-center-card,.user-center-guest{background:#fff;border-radius:1rem;padding:1.5rem;border:1px solid rgba(148,163,184,.25);box-shadow:0 8px 24px #0f172a0d}.uc-layout{display:grid;grid-template-columns:240px 1fr;gap:1.5rem;align-items:start}.uc-sidebar{background:#fff;border-radius:.75rem;border:1px solid #e2e8f0;padding:1rem 0;box-shadow:0 4px 16px #0f172a0a}.uc-sidebar__title{text-align:center;font-size:.85rem;color:#94a3b8;margin-bottom:.75rem;padding:0 1rem}.uc-sidebar__item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.65rem 1.25rem;border:none;background:transparent;text-align:left;font-size:.92rem;color:#334155;cursor:pointer;border-left:3px solid transparent}.uc-sidebar__item:hover{background:#f8fafc;color:#2563eb}.uc-sidebar__item--active{color:#2563eb;background:#eff6ff;border-left-color:#2563eb;font-weight:600}.uc-main{background:#fff;border-radius:.75rem;border:1px solid #e2e8f0;padding:1.5rem;box-shadow:0 4px 16px #0f172a0a;min-height:420px}.uc-profile-head{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px dashed #e2e8f0}.uc-profile-head__avatar{width:4rem;height:4rem;border-radius:.5rem;object-fit:cover}.uc-profile-head__name{font-size:1.15rem;font-weight:700;color:#0f172a}.uc-vip-badge{display:inline-flex;align-items:center;gap:.25rem;margin-left:.5rem;padding:.15rem .5rem;border-radius:9999px;background:linear-gradient(135deg,#1e293b,#334155);color:#fbbf24;font-size:.72rem;font-weight:600}.uc-vip-card{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;border-radius:.75rem;padding:1.25rem 1.5rem;margin-bottom:1.25rem;position:relative;overflow:hidden}.uc-vip-card__watermark{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:4rem;font-weight:800;opacity:.08;letter-spacing:.1em}.uc-vip-card__title{font-size:1.25rem;font-weight:700;margin-bottom:.35rem}.uc-vip-card__meta{font-size:.85rem;opacity:.85;line-height:1.6}.uc-privileges{background:#fffbeb;border-radius:.75rem;padding:1rem;border:1px solid #fde68a}.uc-privileges h3{font-size:.95rem;font-weight:600;margin-bottom:.75rem;color:#92400e}.uc-privileges__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.65rem}.uc-privileges__item{background:#fff;border-radius:.5rem;padding:.65rem;font-size:.78rem;color:#78350f;border:1px solid #fef3c7}.uc-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem 1.5rem;font-size:.9rem;color:#475569}.uc-info-grid strong{color:#0f172a}.uc-form-row{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:.75rem;margin-bottom:.85rem}.uc-form-row label{text-align:right;color:#64748b;font-size:.9rem}.uc-deactivate-tip{background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1rem;color:#991b1b;font-size:.88rem;line-height:1.7;margin-bottom:1rem}.uc-referral-banner{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-radius:.75rem;padding:1rem 1.25rem;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}@media(max-width:768px){.uc-layout,.uc-info-grid{grid-template-columns:1fr}}.download-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media(max-width:1100px){.download-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.download-grid{grid-template-columns:1fr}}.download-card{background:#fff;border-radius:1rem;padding:1.25rem;border:1px solid rgba(148,163,184,.2);box-shadow:0 8px 24px #0f172a0d;display:flex;flex-direction:column}.home-carousel__dot--active{background:#dc2626;width:24px}.portal-user-menu__avatar-img{width:2rem;height:2rem;border-radius:9999px;object-fit:cover;flex-shrink:0}.course-learn{display:grid;grid-template-columns:280px 1fr;gap:1.25rem;align-items:start}.course-learn__sidebar{background:#fff;border-radius:.75rem;border:1px solid #e2e8f0;overflow:hidden;position:sticky;top:1rem}.course-learn__course-title{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:.85rem 1rem;font-weight:600;font-size:.95rem}.course-learn__course-desc{padding:.75rem 1rem;font-size:.82rem;line-height:1.5;color:#64748b;border-bottom:1px solid #e2e8f0;background:#f8fafc}.course-learn__materials{padding:.75rem 1rem;border-bottom:1px solid #e2e8f0}.course-learn__materials h3{font-size:.8rem;color:#64748b;margin-bottom:.5rem}.course-learn__materials ul{list-style:none;padding:0;margin:0}.course-learn__materials li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem 0;font-size:.85rem}.course-learn__material-link{color:#2563eb;text-decoration:none}.course-learn__material-tag{font-size:.7rem;color:#dc2626;border:1px solid #fecaca;padding:0 .35rem;border-radius:.25rem}.course-learn__chapters-head{background:#2563eb;color:#fff;padding:.5rem 1rem;font-size:.85rem;font-weight:600;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%);width:fit-content;min-width:120px}.course-learn__chapter-title{padding:.6rem 1rem .25rem;font-size:.85rem;font-weight:600;color:#0f172a}.course-learn__lesson{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:.45rem 1rem .45rem 1.25rem;font-size:.82rem;color:#475569;background:transparent;border:none;cursor:pointer}.course-learn__lesson:hover,.course-learn__lesson--active{background:#eff6ff;color:#2563eb}.course-learn__vip{font-size:.65rem;background:#f97316;color:#fff;padding:0 .3rem;border-radius:.2rem}.course-learn__main{background:#fff;border-radius:.75rem;border:1px solid #e2e8f0;padding:1rem}.course-learn__player-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-bottom:.5rem;font-size:.85rem}.course-learn__playing{color:#0f172a;font-weight:600}.course-learn__stats{color:#64748b}.portal-main-light--course{max-width:min(1560px,calc(100vw - 2 * var(--portal-gutter)))}.portal-main-light--course .course-learn{grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:1.5rem}.course-video{background:#000;border-radius:.5rem}.course-video__screen{position:relative;width:100%;background:#000}.course-video__media{vertical-align:top;pointer-events:none}.course-video__tap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;margin:0;padding:0;border:none;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.course-video__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;align-items:center;justify-content:center;background:#00000073;pointer-events:none}.course-video__loading .ant-spin{color:#fff}.course-video__media::-webkit-media-controls,.course-video__media::-webkit-media-controls-enclosure,.course-video__media::-webkit-media-controls-panel{display:none!important;-webkit-appearance:none}.course-video__media::-webkit-media-controls-start-playback-button,.course-video__media::-webkit-media-controls-overlay-play-button{display:none!important}.course-video__err,.course-video__resume{margin:0;padding:.45rem .75rem;text-align:center;font-size:.8rem;color:#94a3b8;background:#0a0a0a}.course-video__retry{margin-left:.5rem;color:#60a5fa;background:none;border:none;cursor:pointer;text-decoration:underline}.course-video__toolbar{background:#0a0a0a;padding:.35rem .75rem .65rem;border-radius:0 0 .5rem .5rem;color:#fff}.course-video__progress{position:relative;max-width:720px;margin:0 auto .45rem;height:16px;cursor:pointer}.course-video__progress:before{content:"";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:4px;border-radius:999px;background:#ffffff40}.course-video__progress-fill{position:absolute;left:0;top:50%;transform:translateY(-50%);height:4px;background:#2563eb;border-radius:999px;pointer-events:none}.course-video__bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.82rem}.course-video__left,.course-video__right{display:flex;align-items:center;gap:.45rem;min-width:0}.course-video__btn{border:none;background:transparent;color:#fff;cursor:pointer;padding:.2rem .35rem;line-height:1;font-size:.95rem}.course-video__btn--text{min-width:2rem;font-size:.82rem}.course-video__volume{width:72px;accent-color:#2563eb;cursor:pointer}.course-video__time{white-space:nowrap;font-variant-numeric:tabular-nums;opacity:.95}.course-video__menu-wrap{position:relative}.course-video__menu{position:absolute;bottom:100%;right:0;margin-bottom:.35rem;background:#0f172af2;border-radius:.35rem;padding:.25rem 0;min-width:4rem;z-index:5}.course-video__menu-item{display:block;width:100%;border:none;background:transparent;color:#e2e8f0;text-align:center;padding:.35rem .75rem;cursor:pointer;font-size:.8rem}.course-video__menu-item:hover,.course-video__menu-item.active{background:#2563eb;color:#fff}.course-learn__player{background:#000;border-radius:.5rem}.course-learn__video{width:100%;max-height:520px;display:block}.course-learn__locked{padding:3rem 1rem;text-align:center;background:#f8fafc;border-radius:.5rem;color:#64748b}.course-learn__locked--vip{border:1px solid #fde68a;background:#fffbeb;color:#92400e}.course-learn__locked-text{margin:0;font-size:.9rem;line-height:1.5}.course-learn__vip-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:1rem;padding:.55rem 1.75rem;border-radius:9999px;border:none;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;font-size:.875rem;font-weight:600;line-height:1.4;text-decoration:none;white-space:nowrap;box-shadow:0 6px 18px #2563eb38}.course-learn__nav{display:flex;justify-content:space-between;gap:.75rem;margin:1rem 0}.course-learn__nav-btn{flex:0 1 auto;max-width:46%;min-width:0;text-align:left;padding:.55rem .75rem;border:1px solid #e2e8f0;border-radius:.5rem;background:#f8fafc;font-size:.8rem;color:#334155;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-learn__nav-btn--next{text-align:right;margin-left:auto}.course-learn__nav-empty{flex:1}.course-learn__nav-btn:hover{border-color:#2563eb;color:#2563eb}.course-learn__ppt{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.course-learn__ppt-frame{width:100%;min-height:480px;border:1px solid #e2e8f0;border-radius:.5rem}.course-learn__like-btn{border:1px solid #e2e8f0;background:#f8fafc;color:#64748b;border-radius:.375rem;padding:.375rem 1rem;font-size:.875rem;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.course-learn__like-btn:hover:not(:disabled){border-color:#cbd5e1;background:#f1f5f9}.course-learn__like-btn--active{color:#ef4444;border-color:#fecaca;background:#fef2f2}.course-learn__like-btn:disabled{cursor:default;opacity:1}.course-learn__desc{color:#64748b;font-size:.9rem;margin:1rem 0}.course-learn__comments h3{font-weight:600;margin-bottom:.75rem}.course-learn__comment{border-bottom:1px solid #f1f5f9;padding-bottom:.75rem;font-size:.9rem}.course-learn__admin-reply{margin-top:.35rem;padding:.5rem;background:#eff6ff;border-radius:.35rem;color:#1d4ed8;font-size:.85rem}.admin-panel{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1rem;margin-bottom:1rem}.admin-panel h3{font-weight:600;color:#0f172a;margin-bottom:.75rem}.admin-hot-bar{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:.85rem}.admin-hot-bar>span:first-child{width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#475569;flex-shrink:0}.admin-hot-bar__track{flex:1;height:8px;background:#e2e8f0;border-radius:9999px;overflow:hidden}.admin-hot-bar__fill{height:100%;background:linear-gradient(90deg,#2563eb,#38bdf8);border-radius:9999px}@media(max-width:960px){.course-learn{grid-template-columns:1fr}.course-learn__sidebar{position:static}}.site-footer{background:#0f172a;color:#cbd5e1;margin-top:auto}.site-footer__inner{max-width:var(--portal-content-max);margin:0 auto;padding:2.5rem var(--portal-gutter) 1.5rem;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2rem}.site-footer__brand span{font-size:1.1rem;font-weight:600;color:#fff}.site-footer__logo-link{display:flex;align-items:center;gap:.5rem;color:#fff;margin-bottom:.75rem}.site-footer__logo{height:36px;width:auto}.site-footer__tagline,.site-footer__slogan{font-size:.85rem;line-height:1.6;color:#94a3b8;margin:.25rem 0}.site-footer__col h4{color:#fff;font-weight:600;margin-bottom:.75rem;font-size:.95rem}.site-footer__col a{display:block;color:#93c5fd;font-size:.85rem;margin-bottom:.4rem}.site-footer__col a:hover{color:#fff}.site-footer__qr-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;font-size:.85rem}.site-footer__qr{width:88px;height:88px;object-fit:cover;border-radius:.35rem;background:#fff}.site-footer__bottom{border-top:1px solid #1e293b;padding:1rem 1.5rem;text-align:center;font-size:.8rem;color:#64748b}.redeem-modal .ant-modal-content{overflow:hidden;padding:0}.redeem-modal .ant-modal-header{background:#2563eb;border-radius:0;margin-bottom:0;padding:.85rem 2.75rem .85rem 1rem}.redeem-modal .ant-modal-close{top:.65rem;inset-inline-end:.65rem;width:1.75rem;height:1.75rem;color:#fff}.redeem-modal .ant-modal-close:hover{color:#fff;background:#ffffff26;border-radius:9999px}.redeem-modal .ant-modal-body{padding:1rem 1.25rem 1.25rem}.redeem-modal .ant-modal-title{color:#fff}.redeem-modal__title{color:#fff;font-weight:600}.redeem-modal__body{padding:0;text-align:center}.redeem-modal__hint{color:#2563eb;font-weight:500;margin-bottom:1rem}.redeem-code-input{display:block;width:100%;max-width:100%;box-sizing:border-box;height:2.75rem;padding:0 .75rem;text-align:center;font-size:.82rem;font-weight:600;letter-spacing:.04em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;border:1px solid #e2e8f0;border-radius:.35rem;background:#f8fafc}.redeem-code-input::placeholder{color:#cbd5e1;font-weight:500;letter-spacing:.02em}.redeem-modal__err{margin:.75rem 0 0;color:#ef4444;font-size:.85rem;text-align:center}.redeem-code-inputs{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:.25rem;margin-bottom:1.25rem;overflow-x:auto}.redeem-code-seg{width:3rem;height:2.75rem;text-align:center;font-size:.9rem;font-weight:600;letter-spacing:.04em;border:1px solid #e2e8f0;border-radius:.35rem;background:#f8fafc;flex-shrink:0}.redeem-code-seg--long{width:5rem}.redeem-code-dash{color:#94a3b8;font-weight:600;flex-shrink:0}.redeem-modal__submit{width:100%;margin-top:1rem;padding:.65rem;background:#2563eb;color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer}.redeem-modal__submit:disabled{opacity:.6;cursor:not-allowed}.uc-mobile-modal .ant-modal-close{top:.65rem;inset-inline-end:.65rem;width:2rem;height:2rem;z-index:2;color:#64748b}.uc-mobile-modal .ant-modal-close:hover{color:#0f172a;background:#f1f5f9;border-radius:9999px}.uc-mobile-modal .ant-modal-header{padding-right:2.75rem}@media(max-width:768px){.uc-mobile-modal .ant-modal{max-width:calc(100vw - 2rem);margin:1rem auto}}.uc-group-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.uc-group-section__title{font-weight:600;font-size:1.05rem;margin-bottom:1rem;color:#0f172a}.uc-group-qr-wrap{margin-bottom:1.5rem}.uc-group-qr{width:180px;height:180px;object-fit:contain;border:1px solid #e2e8f0;border-radius:.5rem;background:#fff}.uc-group-qr--locked{position:relative;width:180px;height:180px;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);border-radius:.5rem;filter:blur(0)}.uc-group-qr__mask{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0f172a8c;color:#fff;border-radius:.5rem;text-align:center;padding:1rem;font-size:.85rem;gap:.5rem}.group-notice{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1.5rem;box-shadow:0 4px 24px #2563eb0f}.group-notice__title{text-align:center;font-size:1.25rem;font-weight:700;color:#0f172a;margin-bottom:.35rem}.group-notice__sub{text-align:center;color:#64748b;font-size:.85rem;margin-bottom:1.25rem}.group-notice__cols{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.group-notice__col h5{font-weight:600;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:3px solid;display:inline-block}.group-notice__col--ok h5{border-color:#2563eb;color:#1e40af}.group-notice__col--no h5{border-color:#ef4444;color:#b91c1c}.group-notice__col ul{list-style:none;padding:0;margin:.75rem 0 0}.group-notice__col li{font-size:.9rem;color:#475569;padding:.35rem 0 .35rem 1rem;position:relative}.group-notice__col--ok li:before{content:"•";color:#2563eb;position:absolute;left:0}.group-notice__col--no li:before{content:"•";color:#ef4444;position:absolute;left:0}.legal-page__content{line-height:1.8;color:#334155}.auth-agree a{color:#2563eb}@media(max-width:768px){.site-footer__inner{grid-template-columns:1fr 1fr}.group-notice__cols{grid-template-columns:1fr}}.portal-nav-light__inner--mobile{display:none}.portal-nav-light__inner--desktop{display:flex}@media(max-width:768px){.portal-light{--portal-gutter: 1rem;--portal-tabbar-h: calc(3.35rem + env(safe-area-inset-bottom, 0px)) }.portal-nav-light__inner--mobile{display:flex;align-items:center;gap:.65rem;padding:.55rem var(--portal-gutter)}.portal-nav-light__inner--desktop{display:none}.portal-nav-light__brand--mobile{font-size:.95rem;gap:.4rem;min-width:0;flex-shrink:0}.portal-nav-light__brand-text{white-space:nowrap}.portal-nav-light__logo-img--mobile{width:2rem;height:2rem}.portal-mobile-search{flex:1;min-width:0;height:2.25rem;line-height:2.25rem;padding:0 .85rem;border-radius:9999px;background:#f1f5f9;color:#94a3b8;font-size:.85rem;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-mobile-login{flex-shrink:0;font-size:.82rem;color:#2563eb;text-decoration:none;font-weight:600}.portal-mobile-user{position:relative;flex-shrink:0}.portal-mobile-user__btn{border:none;background:transparent;padding:0;cursor:pointer}.portal-mobile-user__avatar{width:2rem;height:2rem;border-radius:9999px;object-fit:cover}.portal-user-menu__dropdown--mobile{right:0;left:auto;min-width:9rem}.portal-main-light{padding:1rem var(--portal-gutter) calc(var(--portal-tabbar-h) + .75rem);min-height:calc(100vh - 3rem)}.portal-light--course-page .portal-main-light,.portal-main-light--course{max-width:none;padding:0 0 calc(var(--portal-tabbar-h) + .5rem)}.portal-light--no-tabbar .portal-main-light,.portal-light--no-tabbar .portal-main-light--course{padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px))}.portal-site-footer{display:none}.section-head__title{font-size:1.25rem}.home-hero{margin-bottom:1.5rem}.home-carousel-wrap{gap:.35rem}.home-carousel{min-height:11.5rem;border-radius:.85rem}.home-carousel__arrow,.home-carousel__dots{display:none}.home-carousel__slide{grid-template-columns:1fr;gap:.75rem;padding:1.25rem 1rem;min-height:11.5rem}.home-carousel__title{font-size:1.35rem}.home-carousel__desc{font-size:1rem}.course-filter-bar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.25rem;margin-left:calc(-1 * var(--portal-gutter));margin-right:calc(-1 * var(--portal-gutter));padding-left:var(--portal-gutter);padding-right:var(--portal-gutter)}.course-filter-bar::-webkit-scrollbar{display:none}.course-filter-btn{flex-shrink:0}.course-grid-light{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:100%}.course-card-light{display:flex;flex-direction:row;align-items:stretch;width:100%;max-width:100%;box-sizing:border-box;border-radius:.75rem}.course-card-light:hover{transform:none}.course-card-light__cover{width:7.5rem;min-height:5.5rem;aspect-ratio:auto;flex-shrink:0;border-radius:.75rem 0 0 .75rem}.course-card-light__body{flex:1;min-width:0;padding:.65rem .75rem;display:flex;flex-direction:column;justify-content:center}.course-card-light__body h3{font-size:.92rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-card-light__body p{font-size:.75rem;margin-top:.25rem}.download-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.uc-layout{gap:.75rem}.uc-sidebar{border-radius:.75rem}.uc-profile-head{flex-direction:column;align-items:flex-start;gap:.75rem}}.portal-tabbar{display:none}@media(max-width:768px){.portal-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;align-items:flex-end;justify-content:space-around;height:var(--portal-tabbar-h, 3.35rem);padding:.35rem .25rem env(safe-area-inset-bottom,0px);background:#fffffffa;border-top:1px solid rgba(148,163,184,.25);box-shadow:0 -4px 20px #0f172a0f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateZ(0)}.portal-light--no-tabbar .portal-tabbar{display:none}.portal-main-light{contain:layout style;-webkit-overflow-scrolling:touch}.portal-page{contain:layout style}.portal-page--courses-mobile{padding-top:.25rem}.portal-page--courses-mobile .course-filter-bar{margin-top:0}.uc-mobile__vip-open--below-card{margin-top:.65rem}.portal-tabbar__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-width:0;padding:.15rem .1rem;color:#64748b;text-decoration:none;font-size:.68rem;line-height:1.1;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.portal-tabbar__item--active{color:#2563eb;font-weight:600}.portal-tabbar__icon{font-size:1.15rem;line-height:1}.portal-tabbar__svg{width:1.35rem;height:1.35rem;display:block;flex-shrink:0}.portal-tabbar__item--center{position:relative;top:-.65rem}.portal-tabbar__icon--center{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:9999px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:1.2rem;box-shadow:0 6px 16px #2563eb59}.portal-tabbar__icon-center{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:9999px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 6px 16px #2563eb59}.portal-tabbar__icon-center svg{width:1.35rem;height:1.35rem}.portal-tabbar__item--center.portal-tabbar__item--active .portal-tabbar__icon--center,.portal-tabbar__item--center.portal-tabbar__item--active .portal-tabbar__icon-center{background:linear-gradient(135deg,#1d4ed8,#1e40af)}}@media(max-width:768px){.course-learn--mobile{display:flex;flex-direction:column;gap:0}.course-learn--mobile .course-learn__main{order:1;border:none;border-radius:0;padding:0;background:#f8fafc}.course-learn--mobile .course-learn__sidebar{order:2;position:static;border:none;border-radius:0;background:#fff;margin:0;width:100%;max-width:100%}.course-learn--mobile .course-learn__player-wrap{position:relative;background:#000}.course-learn__topback{display:flex;align-items:center;padding:.2rem 0 .15rem var(--portal-gutter);background:#0a0a0a;line-height:1}.course-learn__player-back{display:inline-block;width:auto;height:auto;padding:0;margin:0;background:transparent;border:none;border-radius:0;box-shadow:none;outline:none;color:#fff;text-decoration:none;font-size:2rem;line-height:1;font-weight:900;-webkit-text-stroke:2px #000;paint-order:stroke fill;-webkit-tap-highlight-color:transparent}.course-learn__mobile-top{display:none}.course-learn__mobile-info{padding:.85rem var(--portal-gutter);background:#fff;border-bottom:1px solid #e2e8f0}.course-learn__mobile-info-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.course-learn__mobile-info-head h1{flex:1;min-width:0;margin:0;font-size:1rem;font-weight:700;line-height:1.4;color:#0f172a}.course-learn__mobile-like{flex-shrink:0;border:1px solid #e2e8f0;background:#f8fafc;color:#64748b;border-radius:9999px;padding:.25rem .65rem;font-size:.78rem;cursor:pointer}.course-learn__mobile-like--active{color:#ef4444;border-color:#fecaca;background:#fef2f2}.course-learn__mobile-like:disabled{cursor:default;opacity:1}.course-learn__mobile-meta{margin:.35rem 0 0;font-size:.75rem;color:#94a3b8}.course-learn__mobile-materials{padding:.85rem var(--portal-gutter);background:#fff;border-bottom:1px solid #e2e8f0}.course-learn__mobile-materials h3{margin:0 0 .65rem;font-size:.88rem;font-weight:600;color:#0f172a}.course-learn__mobile-material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.course-learn__mobile-material-item{display:flex;flex-direction:column;justify-content:center;min-height:3.25rem;padding:.55rem .65rem;border-radius:.65rem;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-size:.78rem;line-height:1.35;text-decoration:none}.course-learn__mobile-material-item--static{pointer-events:none;opacity:.85}.course-learn__mobile-material-item em{margin-top:.2rem;font-style:normal;font-size:.65rem;color:#f97316}.course-learn__mobile-tabs{display:flex;background:#fff;border-bottom:1px solid #e2e8f0}.course-learn__mobile-tab{flex:1;border:none;background:transparent;padding:.75rem .5rem;font-size:.88rem;font-weight:600;color:#64748b;cursor:pointer;border-bottom:2px solid transparent}.course-learn__mobile-tab--active{color:#2563eb;border-bottom-color:#2563eb}.course-learn--mobile .course-learn__chapters-head{width:100%;clip-path:none;border-radius:0;margin:0;box-sizing:border-box}.course-learn--mobile .course-learn__comments{padding:.85rem var(--portal-gutter) 1rem;background:#fff}.course-learn--mobile .course-learn__player{border-radius:0}.course-learn__mobile-lesson-nav{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;padding:.65rem var(--portal-gutter);background:#fff;border-bottom:1px solid #e2e8f0}.course-learn__mobile-nav-btn{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;min-height:3.25rem;padding:.55rem .65rem;border:1px solid #2563eb;border-radius:.5rem;background:#fff;color:#2563eb;text-align:left;cursor:pointer}.course-learn__mobile-nav-label{font-size:.82rem;font-weight:700}.course-learn__mobile-nav-title{font-size:.68rem;line-height:1.35;color:#64748b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-learn__mobile-nav-placeholder{display:block}.course-learn--mobile .course-learn__chapter-title,.course-learn--mobile .course-learn__lesson{padding-left:var(--portal-gutter);padding-right:var(--portal-gutter)}.course-learn--mobile .course-learn__locked{margin:0 var(--portal-gutter);border-radius:.5rem;padding:2.25rem 1rem}.course-learn--mobile .course-learn__vip-btn{padding:.5rem 1.5rem;font-size:.82rem}.member-page .section-head__title{font-size:1.35rem}.member-page .section-head__sub{font-size:.82rem}.member-profile-card{padding:.85rem 1rem}.member-profile-card__btn{padding:.4rem .65rem;font-size:.72rem}.pay-channel-btn{padding:.3rem .55rem;font-size:.7rem}.vip-plan-grid{gap:.85rem}.course-learn--mobile .course-learn__comment-form{flex-direction:column}}@media(min-width:769px){.course-learn__topback,.course-learn__player-back,.course-learn__mobile-info,.course-learn__mobile-materials,.course-learn__mobile-tabs,.course-learn__mobile-lesson-nav{display:none}.course-learn__comment-form{display:flex;flex-direction:row;gap:.5rem;margin-bottom:1rem}}@media(max-width:768px){.portal-page{overflow-x:hidden;max-width:100%}.courses-toolbar{display:flex;flex-direction:column;gap:.5rem;align-items:stretch}.courses-toolbar__search{width:100%;max-width:none!important;min-width:0!important}.courses-toolbar__sort{display:flex;gap:.75rem;font-size:.82rem;flex-wrap:wrap}.course-video,.course-video__toolbar{border-radius:0}}@media(max-width:768px){.user-center.portal-page{padding-top:.5rem}.user-center-guest{text-align:center;padding:2rem 1rem}.uc-mobile{display:flex;flex-direction:column;gap:.65rem}.uc-mobile__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;padding:.35rem 0 .5rem}.uc-mobile__user{display:flex;align-items:center;gap:.65rem;min-width:0;flex:1}.uc-mobile__user--guest{border:none;background:transparent;padding:0;text-align:left;cursor:pointer}.uc-mobile__avatar{width:3.25rem;height:3.25rem;border-radius:.65rem;object-fit:cover;flex-shrink:0}.uc-mobile__avatar--logo-guest{width:3.25rem;height:3.25rem;border-radius:9999px;object-fit:contain;background:#e2e8f0;padding:.35rem;box-sizing:border-box;filter:grayscale(1);opacity:.72}.uc-mobile__user-text{min-width:0}.uc-mobile__name-row{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}.uc-mobile__name{font-size:.95rem;font-weight:700;color:#0f172a}.uc-mobile__vip-tag{display:inline-flex;align-items:center;padding:.1rem .45rem;border-radius:9999px;background:linear-gradient(135deg,#1e293b,#334155);color:#fbbf24;font-size:.62rem;font-weight:600}.uc-mobile__phone{margin:.15rem 0 0;font-size:.78rem;color:#64748b}.uc-mobile__redeem{display:flex;flex-direction:column;gap:.35rem;flex-shrink:0}.uc-mobile__redeem-code,.uc-mobile__redeem-order{border:none;border-radius:9999px;padding:.3rem .65rem;font-size:.68rem;font-weight:600;white-space:nowrap;cursor:pointer}.uc-mobile__redeem-code{background:#fff7ed;color:#ea580c;border:1px solid #fdba74}.uc-mobile__redeem-order{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.uc-mobile__vip-card{margin-bottom:0;padding:.85rem 1rem}.uc-mobile__vip-card .uc-vip-card__title{font-size:1rem}.uc-mobile__vip-card .uc-vip-card__meta{font-size:.75rem}.uc-mobile__vip-card .uc-vip-card__watermark{font-size:2.75rem}.uc-mobile__vip-open{display:flex;align-items:center;justify-content:space-between;gap:.65rem;width:100%;padding:.85rem 1rem;border:none;border-radius:.65rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;text-align:left;cursor:pointer}.uc-mobile__vip-open-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.uc-mobile__vip-open-text strong{font-size:.92rem;font-weight:700}.uc-mobile__vip-open-text span{font-size:.72rem;opacity:.9}.uc-mobile__vip-open-btn{flex-shrink:0;padding:.3rem .65rem;border-radius:9999px;background:#fffffff2;color:#2563eb;font-size:.72rem;font-weight:700}.uc-mobile__no-vip{padding:.65rem .85rem;border-radius:.65rem;background:#f8fafc;border:1px solid #e2e8f0;font-size:.82rem;color:#64748b}.uc-mobile__no-vip a{color:#2563eb;text-decoration:none}.uc-mobile__promo{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.75rem .85rem;border:none;border-radius:.65rem;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;text-align:left;cursor:pointer}.uc-mobile__promo-text{flex:1;min-width:0;font-size:.78rem;line-height:1.35;font-weight:600}.uc-mobile__promo-btn{flex-shrink:0;padding:.25rem .55rem;border-radius:9999px;background:#fffffff2;color:#ea580c;font-size:.72rem;font-weight:700}.uc-mobile__grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.uc-mobile__grid-item{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.7rem .75rem;border-radius:.65rem;background:#fff;border:1px solid #e2e8f0;text-decoration:none;color:inherit;cursor:pointer;text-align:left}.uc-mobile__grid-label{font-size:.82rem;font-weight:600;color:#0f172a}.uc-mobile__grid-sub{font-size:.72rem;color:#64748b}.uc-mobile__menu{display:flex;flex-direction:column;background:#fff;border-radius:.65rem;border:1px solid #e2e8f0;overflow:hidden}.uc-mobile__menu-item{display:block;width:100%;padding:.75rem .85rem;border:none;border-bottom:1px solid #f1f5f9;background:transparent;text-align:left;font-size:.85rem;color:#334155;cursor:pointer}.uc-mobile__menu-item:last-child{border-bottom:none}.uc-mobile__logout{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:.65rem;background:#fff;color:#64748b;font-size:.85rem;cursor:pointer;margin-top:.15rem}.uc-info-grid--mobile{grid-template-columns:1fr;gap:.65rem;font-size:.85rem}.uc-referral-banner--mobile{margin-bottom:0}}@media(min-width:769px){.uc-mobile{display:none}}
