@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,400&display=swap";@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap";@import"https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@300;400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@300;400;500;600;700;800;900&display=swap";:root{--primary-color: #c96442;--primary-dark: #b45435;--secondary-color: #d97757;--success-color: #16a34a;--warning-color: #d97706;--error-color: #b53333;--info-color: #3898ec;--accent-pink: #d97757;--accent-orange: #c96442;--accent-teal: #6f8a66;--white: #ffffff;--black: #141413;--gray-50: #faf9f5;--gray-100: #f5f4ed;--gray-200: #f0eee6;--gray-300: #e8e6dc;--gray-400: #b0aea5;--gray-500: #87867f;--gray-600: #5e5d59;--gray-700: #4d4c48;--gray-800: #30302e;--gray-900: #141413;--bg-primary: #f5f4ed;--bg-dark: #141413;--font-family: "Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--font-heading: "Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 0 0 1px #f0eee6;--shadow-md: 0 0 0 1px #e8e6dc;--shadow-lg: rgba(0, 0, 0, .05) 0 4px 24px;--shadow-xl: rgba(0, 0, 0, .08) 0 10px 36px;--transition-fast: .15s ease-in-out;--transition-base: .25s ease-in-out;--transition-slow: .35s ease-in-out;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--bg-body: #f5f4ed;--bg-card: #faf9f5;--text-primary: #141413;--text-secondary: #5e5d59;--border-color: #f0eee6;--danger-color: #b53333;--primary-rgb: 201, 100, 66;--secondary-rgb: 217, 119, 87;--success-rgb: 16, 185, 129;--warning-rgb: 217, 119, 6;--danger-rgb: 181, 51, 51;--text-secondary-rgb: 94, 93, 89;--c-primary: #c96442;--c-primary-soft: rgba(201, 100, 66, .12);--c-primary-glow: rgba(201, 100, 66, .2);--c-bg: #f5f4ed;--c-surface: #faf9f5;--c-text-1: #141413;--c-text-2: #4d4c48;--c-text-3: #87867f;--c-border: #f0eee6;--c-border-soft: #e8e6dc;--f-body: "Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--f-heading: "Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Be Vietnam Pro,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:Source Code Pro,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-left-20{left:-5rem}.-left-24{left:-6rem}.-left-28{left:-7rem}.-right-16{right:-4rem}.-right-20{right:-5rem}.-right-24{right:-6rem}.-right-6{right:-1.5rem}.-top-24{top:-6rem}.-top-6{top:-1.5rem}.bottom-0{bottom:0}.bottom-3{bottom:.75rem}.left-0{left:0}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-10{right:2.5rem}.right-2\.5{right:.625rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-2\.5{top:.625rem}.top-3{top:.75rem}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-6{top:1.5rem}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[110\]{z-index:110}.z-\[1200\]{z-index:1200}.z-\[1400\]{z-index:1400}.z-\[1\]{z-index:1}.z-\[200\]{z-index:200}.z-\[3\]{z-index:3}.order-1{order:1}.order-2{order:2}.col-span-full{grid-column:1 / -1}.m-0{margin:0}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.-mt-1{margin-top:-.25rem}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-auto{margin-bottom:auto}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.box-border{box-sizing:border-box}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-52{height:13rem}.h-56{height:14rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-\[100px\]{height:100px}.h-\[112px\]{height:112px}.h-\[120px\]{height:120px}.h-\[124px\]{height:124px}.h-\[130px\]{height:130px}.h-\[132px\]{height:132px}.h-\[140px\]{height:140px}.h-\[148px\]{height:148px}.h-\[18px\]{height:18px}.h-\[22px\]{height:22px}.h-\[280px\]{height:280px}.h-\[320px\]{height:320px}.h-\[380px\]{height:380px}.h-\[38px\]{height:38px}.h-\[420px\]{height:420px}.h-\[80px\]{height:80px}.h-\[86vh\]{height:86vh}.h-\[88px\]{height:88px}.h-\[92px\]{height:92px}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.h-px{height:1px}.max-h-\[60vh\]{max-height:60vh}.max-h-\[88vh\]{max-height:88vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[92vh\]{max-height:92vh}.max-h-\[calc\(100vh-200px\)\]{max-height:calc(100vh - 200px)}.max-h-\[min\(92vh\,920px\)\]{max-height:min(92vh,920px)}.min-h-0{min-height:0px}.min-h-5{min-height:1.25rem}.min-h-9{min-height:2.25rem}.min-h-\[120px\]{min-height:120px}.min-h-\[140px\]{min-height:140px}.min-h-\[14rem\]{min-height:14rem}.min-h-\[150px\]{min-height:150px}.min-h-\[160px\]{min-height:160px}.min-h-\[16rem\]{min-height:16rem}.min-h-\[180px\]{min-height:180px}.min-h-\[2\.5rem\]{min-height:2.5rem}.min-h-\[2\.6rem\]{min-height:2.6rem}.min-h-\[200px\]{min-height:200px}.min-h-\[40px\]{min-height:40px}.min-h-\[40vh\]{min-height:40vh}.min-h-\[42px\]{min-height:42px}.min-h-\[500px\]{min-height:500px}.min-h-\[50vh\]{min-height:50vh}.min-h-\[5rem\]{min-height:5rem}.min-h-\[88px\]{min-height:88px}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/5{width:40%}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-52{width:13rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[140px\]{width:140px}.w-\[18px\]{width:18px}.w-\[22px\]{width:22px}.w-\[296px\]{width:296px}.w-\[380px\]{width:380px}.w-\[420px\]{width:420px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-9{min-width:2.25rem}.min-w-\[1\.25rem\]{min-width:1.25rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[110px\]{min-width:110px}.min-w-\[12px\]{min-width:12px}.min-w-\[132px\]{min-width:132px}.min-w-\[140px\]{min-width:140px}.min-w-\[156px\]{min-width:156px}.min-w-\[180px\]{min-width:180px}.min-w-\[220px\]{min-width:220px}.min-w-\[640px\]{min-width:640px}.min-w-\[6rem\]{min-width:6rem}.min-w-\[720px\]{min-width:720px}.min-w-\[800px\]{min-width:800px}.min-w-\[8rem\]{min-width:8rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-\[1100px\]{max-width:1100px}.max-w-\[1280px\]{max-width:1280px}.max-w-\[130px\]{max-width:130px}.max-w-\[140px\]{max-width:140px}.max-w-\[160px\]{max-width:160px}.max-w-\[260px\]{max-width:260px}.max-w-\[400px\]{max-width:400px}.max-w-\[55\%\]{max-width:55%}.max-w-\[60\%\]{max-width:60%}.max-w-\[62ch\]{max-width:62ch}.max-w-\[65ch\]{max-width:65ch}.max-w-\[90\%\]{max-width:90%}.max-w-\[min\(100\%\,420px\)\]{max-width:min(100%,420px)}.max-w-\[min\(1240px\,calc\(100vw-24px\)\)\]{max-width:min(1240px,calc(100vw - 24px))}.max-w-\[min\(320px\,42vw\)\]{max-width:min(320px,42vw)}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-\[2\]{flex:2}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.origin-left{transform-origin:left}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/4{--tw-translate-x: 25%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[fadeInUp_0\.4s_ease_both\]{animation:fadeInUp .4s ease both}.animate-\[fadeIn_0\.2s_ease_out\]{animation:fadeIn .2s ease out}.animate-\[indeterminate_1\.5s_ease_infinite\]{animation:indeterminate 1.5s ease infinite}.animate-\[slideUp_0\.3s_ease_out\]{animation:slideUp .3s ease out}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[1fr_80px_80px_80px\]{grid-template-columns:1fr 80px 80px 80px}.grid-cols-\[repeat\(auto-fit\,minmax\(200px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-7>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.75rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-\[\#E8E6DC\]>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(232 230 220 / var(--tw-divide-opacity, 1))}.divide-\[\#F0EEE6\]>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(240 238 230 / var(--tw-divide-opacity, 1))}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.\!rounded-none{border-radius:0!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-r-full{border-top-right-radius:9999px;border-bottom-right-radius:9999px}.\!border-0{border-width:0px!important}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-l-2{border-left-width:2px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[\#141413\]{--tw-border-opacity: 1;border-color:rgb(20 20 19 / var(--tw-border-opacity, 1))}.border-\[\#30302E\]{--tw-border-opacity: 1;border-color:rgb(48 48 46 / var(--tw-border-opacity, 1))}.border-\[\#7C6FAB\]{--tw-border-opacity: 1;border-color:rgb(124 111 171 / var(--tw-border-opacity, 1))}.border-\[\#A5B4FC\]{--tw-border-opacity: 1;border-color:rgb(165 180 252 / var(--tw-border-opacity, 1))}.border-\[\#B53333\]{--tw-border-opacity: 1;border-color:rgb(181 51 51 / var(--tw-border-opacity, 1))}.border-\[\#BFDBFE\]{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-\[\#C7D2FE\]{--tw-border-opacity: 1;border-color:rgb(199 210 254 / var(--tw-border-opacity, 1))}.border-\[\#C96442\]{--tw-border-opacity: 1;border-color:rgb(201 100 66 / var(--tw-border-opacity, 1))}.border-\[\#C96442\]\/30{border-color:#c964424d}.border-\[\#C96442\]\/40{border-color:#c9644266}.border-\[\#D1CFC5\]{--tw-border-opacity: 1;border-color:rgb(209 207 197 / var(--tw-border-opacity, 1))}.border-\[\#DDD6C8\]{--tw-border-opacity: 1;border-color:rgb(221 214 200 / var(--tw-border-opacity, 1))}.border-\[\#E8E6DC\]{--tw-border-opacity: 1;border-color:rgb(232 230 220 / var(--tw-border-opacity, 1))}.border-\[\#E8E6DC\]\/80{border-color:#e8e6dccc}.border-\[\#E8E6DC\]\/90{border-color:#e8e6dce6}.border-\[\#F0EEE6\]{--tw-border-opacity: 1;border-color:rgb(240 238 230 / var(--tw-border-opacity, 1))}.border-\[\#FDBA74\]{--tw-border-opacity: 1;border-color:rgb(253 186 116 / var(--tw-border-opacity, 1))}.border-\[\#FDE68A\]{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-100{--tw-border-opacity: 1;border-color:rgb(254 243 199 / var(--tw-border-opacity, 1))}.border-amber-100\/80{border-color:#fef3c7cc}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-200\/80{border-color:#fde68acc}.border-amber-200\/90{border-color:#fde68ae6}.border-amber-300{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-200\/80{border-color:#bfdbfecc}.border-emerald-100{--tw-border-opacity: 1;border-color:rgb(209 250 229 / var(--tw-border-opacity, 1))}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity, 1))}.border-emerald-200\/70{border-color:#a7f3d0b3}.border-emerald-200\/80{border-color:#a7f3d0cc}.border-emerald-200\/90{border-color:#a7f3d0e6}.border-emerald-300{--tw-border-opacity: 1;border-color:rgb(110 231 183 / var(--tw-border-opacity, 1))}.border-emerald-600{--tw-border-opacity: 1;border-color:rgb(5 150 105 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-green-100{--tw-border-opacity: 1;border-color:rgb(220 252 231 / var(--tw-border-opacity, 1))}.border-indigo-200\/70{border-color:#c7d2feb3}.border-neutral-200{--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity, 1))}.border-red-100{--tw-border-opacity: 1;border-color:rgb(254 226 226 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-red-600{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.border-rose-100{--tw-border-opacity: 1;border-color:rgb(255 228 230 / var(--tw-border-opacity, 1))}.border-rose-200{--tw-border-opacity: 1;border-color:rgb(254 205 211 / var(--tw-border-opacity, 1))}.border-rose-200\/70{border-color:#fecdd3b3}.border-sky-200{--tw-border-opacity: 1;border-color:rgb(186 230 253 / var(--tw-border-opacity, 1))}.border-sky-200\/70{border-color:#bae6fdb3}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-violet-100{--tw-border-opacity: 1;border-color:rgb(237 233 254 / var(--tw-border-opacity, 1))}.border-violet-200{--tw-border-opacity: 1;border-color:rgb(221 214 254 / var(--tw-border-opacity, 1))}.border-white\/30{border-color:#ffffff4d}.border-white\/35{border-color:#ffffff59}.border-white\/40{border-color:#fff6}.border-white\/50{border-color:#ffffff80}.border-white\/60{border-color:#fff9}.border-white\/70{border-color:#ffffffb3}.border-t-\[\#5E5D59\]{--tw-border-opacity: 1;border-top-color:rgb(94 93 89 / var(--tw-border-opacity, 1))}.border-t-\[\#7C6FAB\]{--tw-border-opacity: 1;border-top-color:rgb(124 111 171 / var(--tw-border-opacity, 1))}.border-t-\[\#A3B6D4\]{--tw-border-opacity: 1;border-top-color:rgb(163 182 212 / var(--tw-border-opacity, 1))}.border-t-\[\#C96442\]{--tw-border-opacity: 1;border-top-color:rgb(201 100 66 / var(--tw-border-opacity, 1))}.border-t-white{--tw-border-opacity: 1;border-top-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.\!bg-transparent{background-color:transparent!important}.bg-\[\#141413\]{--tw-bg-opacity: 1;background-color:rgb(20 20 19 / var(--tw-bg-opacity, 1))}.bg-\[\#141413\]\/40{background-color:#14141366}.bg-\[\#141413\]\/50{background-color:#14141380}.bg-\[\#141413\]\/60{background-color:#14141399}.bg-\[\#141413\]\/70{background-color:#141413b3}.bg-\[\#2EAD7A\]{--tw-bg-opacity: 1;background-color:rgb(46 173 122 / var(--tw-bg-opacity, 1))}.bg-\[\#4F7EF7\]{--tw-bg-opacity: 1;background-color:rgb(79 126 247 / var(--tw-bg-opacity, 1))}.bg-\[\#5E5D59\]{--tw-bg-opacity: 1;background-color:rgb(94 93 89 / var(--tw-bg-opacity, 1))}.bg-\[\#6B8E9E\]{--tw-bg-opacity: 1;background-color:rgb(107 142 158 / var(--tw-bg-opacity, 1))}.bg-\[\#7C6FAB\]{--tw-bg-opacity: 1;background-color:rgb(124 111 171 / var(--tw-bg-opacity, 1))}.bg-\[\#7C6FAB\]\/10{background-color:#7c6fab1a}.bg-\[\#7c3aed\]{--tw-bg-opacity: 1;background-color:rgb(124 58 237 / var(--tw-bg-opacity, 1))}.bg-\[\#87867F\]\/20{background-color:#87867f33}.bg-\[\#87867F\]\/25{background-color:#87867f40}.bg-\[\#A3B6D4\]{--tw-bg-opacity: 1;background-color:rgb(163 182 212 / var(--tw-bg-opacity, 1))}.bg-\[\#C4C3BB\]{--tw-bg-opacity: 1;background-color:rgb(196 195 187 / var(--tw-bg-opacity, 1))}.bg-\[\#C96442\]{--tw-bg-opacity: 1;background-color:rgb(201 100 66 / var(--tw-bg-opacity, 1))}.bg-\[\#C96442\]\/10{background-color:#c964421a}.bg-\[\#C96442\]\/25{background-color:#c9644240}.bg-\[\#C96442\]\/35{background-color:#c9644259}.bg-\[\#C96442\]\/\[0\.04\]{background-color:#c964420a}.bg-\[\#D4795A\]{--tw-bg-opacity: 1;background-color:rgb(212 121 90 / var(--tw-bg-opacity, 1))}.bg-\[\#E8E6DC\]{--tw-bg-opacity: 1;background-color:rgb(232 230 220 / var(--tw-bg-opacity, 1))}.bg-\[\#E8E6DC\]\/60{background-color:#e8e6dc99}.bg-\[\#E8E6DC\]\/70{background-color:#e8e6dcb3}.bg-\[\#E8E6DC\]\/75{background-color:#e8e6dcbf}.bg-\[\#E8E6DC\]\/80{background-color:#e8e6dccc}.bg-\[\#E8E6DC\]\/90{background-color:#e8e6dce6}.bg-\[\#ECFDF5\]{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-\[\#EDE9E0\]{--tw-bg-opacity: 1;background-color:rgb(237 233 224 / var(--tw-bg-opacity, 1))}.bg-\[\#EEF2FF\]{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-\[\#EFF6FF\]{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-\[\#F0EEE6\]{--tw-bg-opacity: 1;background-color:rgb(240 238 230 / var(--tw-bg-opacity, 1))}.bg-\[\#F1F6F9\]{--tw-bg-opacity: 1;background-color:rgb(241 246 249 / var(--tw-bg-opacity, 1))}.bg-\[\#F5F3FF\]{--tw-bg-opacity: 1;background-color:rgb(245 243 255 / var(--tw-bg-opacity, 1))}.bg-\[\#F5F4ED\]{--tw-bg-opacity: 1;background-color:rgb(245 244 237 / var(--tw-bg-opacity, 1))}.bg-\[\#F5F4ED\]\/90{background-color:#f5f4ede6}.bg-\[\#F9F8F6\]{--tw-bg-opacity: 1;background-color:rgb(249 248 246 / var(--tw-bg-opacity, 1))}.bg-\[\#FAF9F5\]{--tw-bg-opacity: 1;background-color:rgb(250 249 245 / var(--tw-bg-opacity, 1))}.bg-\[\#FAF9F5\]\/50{background-color:#faf9f580}.bg-\[\#FAF9F5\]\/80{background-color:#faf9f5cc}.bg-\[\#FAF9F5\]\/90{background-color:#faf9f5e6}.bg-\[\#FDFCF8\]{--tw-bg-opacity: 1;background-color:rgb(253 252 248 / var(--tw-bg-opacity, 1))}.bg-\[\#FEF2F2\]{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-\[\#FFF7ED\]{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-\[\#FFFEFB\]{--tw-bg-opacity: 1;background-color:rgb(255 254 251 / var(--tw-bg-opacity, 1))}.bg-\[\#ecfdf5\]{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-\[\#eff6ff\]{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-\[\#f5f3ff\]{--tw-bg-opacity: 1;background-color:rgb(245 243 255 / var(--tw-bg-opacity, 1))}.bg-\[rgba\(20\,20\,19\,0\.48\)\]{background-color:#1414137a}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity, 1))}.bg-amber-400\/25{background-color:#fbbf2440}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-50\/60{background-color:#fffbeb99}.bg-amber-50\/95{background-color:#fffbebf2}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-blue-400\/25{background-color:#60a5fa40}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-current{background-color:currentColor}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-400{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.bg-emerald-400\/20{background-color:#34d39933}.bg-emerald-400\/25{background-color:#34d39940}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-emerald-50\/80{background-color:#ecfdf5cc}.bg-emerald-50\/90{background-color:#ecfdf5e6}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-emerald-500\/25{background-color:#10b98140}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-indigo-50\/90{background-color:#eef2ffe6}.bg-indigo-500\/30{background-color:#6366f14d}.bg-neutral-100{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity, 1))}.bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-200\/10{background-color:#fecaca1a}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-rose-50{--tw-bg-opacity: 1;background-color:rgb(255 241 242 / var(--tw-bg-opacity, 1))}.bg-rose-50\/80{background-color:#fff1f2cc}.bg-rose-50\/90{background-color:#fff1f2e6}.bg-rose-500\/25{background-color:#f43f5e40}.bg-rose-600{--tw-bg-opacity: 1;background-color:rgb(225 29 72 / var(--tw-bg-opacity, 1))}.bg-sky-50{--tw-bg-opacity: 1;background-color:rgb(240 249 255 / var(--tw-bg-opacity, 1))}.bg-sky-50\/90{background-color:#f0f9ffe6}.bg-sky-500\/30{background-color:#0ea5e94d}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-300\/20{background-color:#cbd5e133}.bg-teal-300\/15{background-color:#5eead426}.bg-transparent{background-color:transparent}.bg-violet-400{--tw-bg-opacity: 1;background-color:rgb(167 139 250 / var(--tw-bg-opacity, 1))}.bg-violet-50{--tw-bg-opacity: 1;background-color:rgb(245 243 255 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/5{background-color:#ffffff0d}.bg-white\/50{background-color:#ffffff80}.bg-white\/55{background-color:#ffffff8c}.bg-white\/60{background-color:#fff9}.bg-white\/70{background-color:#ffffffb3}.bg-white\/80{background-color:#fffc}.bg-white\/90{background-color:#ffffffe6}.bg-white\/\[0\.15\]{background-color:#ffffff26}.bg-white\/\[0\.2\]{background-color:#fff3}.bg-zinc-200\/15{background-color:#e4e4e726}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-\[\#C96442\]{--tw-gradient-from: #C96442 var(--tw-gradient-from-position);--tw-gradient-to: rgb(201 100 66 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#E8E6DC\]{--tw-gradient-from: #E8E6DC var(--tw-gradient-from-position);--tw-gradient-to: rgb(232 230 220 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#FAF9F5\]{--tw-gradient-from: #FAF9F5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(250 249 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#FFF7ED\]{--tw-gradient-from: #FFF7ED var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 247 237 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#ecfdf5\]{--tw-gradient-from: #ecfdf5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 253 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#eef2ff\]{--tw-gradient-from: #eef2ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#eff6ff\]{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#f5f4ed\]{--tw-gradient-from: #f5f4ed var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 244 237 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#fff1f2\]{--tw-gradient-from: #fff1f2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 241 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#fffdfb\]{--tw-gradient-from: #fffdfb var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 253 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[rgba\(20\,20\,19\,0\.55\)\]{--tw-gradient-from: rgba(20,20,19,.55) var(--tw-gradient-from-position);--tw-gradient-to: rgba(20, 20, 19, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-100{--tw-gradient-from: #fef3c7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 243 199 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-50{--tw-gradient-from: #fffbeb var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 251 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-50{--tw-gradient-from: #ecfdf5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 253 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-neutral-100{--tw-gradient-from: #f5f5f5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 245 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-50\/90{--tw-gradient-from: rgb(254 242 242 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 242 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-50{--tw-gradient-from: #f8fafc var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-teal-100{--tw-gradient-from: #ccfbf1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(204 251 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-\[\#E07B39\]{--tw-gradient-to: rgb(224 123 57 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #E07B39 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-\[\#faf9f5\]{--tw-gradient-to: rgb(250 249 245 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #faf9f5 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #fff var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-\[\#141413\]{--tw-gradient-to: #141413 var(--tw-gradient-to-position)}.to-\[\#6366F1\]{--tw-gradient-to: #6366F1 var(--tw-gradient-to-position)}.to-\[\#D1CFC5\]{--tw-gradient-to: #D1CFC5 var(--tw-gradient-to-position)}.to-\[\#E07B39\]{--tw-gradient-to: #E07B39 var(--tw-gradient-to-position)}.to-\[\#F5F4ED\]{--tw-gradient-to: #F5F4ED var(--tw-gradient-to-position)}.to-\[\#FAF9F5\]{--tw-gradient-to: #FAF9F5 var(--tw-gradient-to-position)}.to-\[\#FFE8D6\]{--tw-gradient-to: #FFE8D6 var(--tw-gradient-to-position)}.to-\[\#d1fae5\]{--tw-gradient-to: #d1fae5 var(--tw-gradient-to-position)}.to-\[\#e0f2fe\]{--tw-gradient-to: #e0f2fe var(--tw-gradient-to-position)}.to-\[\#ebe8e0\]{--tw-gradient-to: #ebe8e0 var(--tw-gradient-to-position)}.to-\[\#ecfdf5\]{--tw-gradient-to: #ecfdf5 var(--tw-gradient-to-position)}.to-\[\#ede9fe\]{--tw-gradient-to: #ede9fe var(--tw-gradient-to-position)}.to-\[\#ffedd5\]{--tw-gradient-to: #ffedd5 var(--tw-gradient-to-position)}.to-\[\#fffbeb\]{--tw-gradient-to: #fffbeb var(--tw-gradient-to-position)}.to-emerald-50{--tw-gradient-to: #ecfdf5 var(--tw-gradient-to-position)}.to-neutral-50{--tw-gradient-to: #fafafa var(--tw-gradient-to-position)}.to-orange-50{--tw-gradient-to: #fff7ed var(--tw-gradient-to-position)}.to-rose-50{--tw-gradient-to: #fff1f2 var(--tw-gradient-to-position)}.to-teal-50\/90{--tw-gradient-to: rgb(240 253 250 / .9) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-zinc-50{--tw-gradient-to: #fafafa var(--tw-gradient-to-position)}.fill-\[\#C96442\]{fill:#c96442}.fill-\[\#E8E6DC\]{fill:#e8e6dc}.fill-current{fill:currentColor}.stroke-\[\#E8E6DC\]{stroke:#e8e6dc}.stroke-emerald-500{stroke:#10b981}.stroke-rose-500{stroke:#f43f5e}.stroke-slate-500{stroke:#64748b}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-32{padding-top:8rem;padding-bottom:8rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pl-4{padding-left:1rem}.pl-7{padding-left:1.75rem}.pl-9{padding-left:2.25rem}.pl-\[26px\]{padding-left:26px}.pr-1{padding-right:.25rem}.pr-4{padding-right:1rem}.pr-9{padding-right:2.25rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-text-bottom{vertical-align:text-bottom}.font-\[\'Be_Vietnam_Pro\'\]{font-family:Be Vietnam Pro}.font-\[\'Playfair_Display\'\]{font-family:Playfair Display}.font-mono{font-family:Source Code Pro,ui-monospace,monospace}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[19px\]{font-size:19px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.text-\[25px\]{font-size:25px}.text-\[26px\]{font-size:26px}.text-\[28px\]{font-size:28px}.text-\[30px\]{font-size:30px}.text-\[32px\]{font-size:32px}.text-\[34px\]{font-size:34px}.text-\[36px\]{font-size:36px}.text-\[clamp\(1\.125rem\,2\.5vw\,1\.5rem\)\]{font-size:clamp(1.125rem,2.5vw,1.5rem)}.text-\[clamp\(1\.35rem\,3vw\,1\.85rem\)\]{font-size:clamp(1.35rem,3vw,1.85rem)}.text-\[clamp\(1\.375rem\,3vw\,1\.75rem\)\]{font-size:clamp(1.375rem,3vw,1.75rem)}.text-\[clamp\(1\.5rem\,4vw\,2\.125rem\)\]{font-size:clamp(1.5rem,4vw,2.125rem)}.text-\[clamp\(1\.75rem\,4vw\,2\.375rem\)\]{font-size:clamp(1.75rem,4vw,2.375rem)}.text-\[clamp\(2rem\,5vw\,2\.75rem\)\]{font-size:clamp(2rem,5vw,2.75rem)}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-\[Be_Vietnam_Pro\]{font-weight:Be Vietnam Pro}.font-\[Playfair_Display\]{font-weight:Playfair Display}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[1\.15\]{line-height:1.15}.leading-\[1\.1\]{line-height:1.1}.leading-\[1\.2\]{line-height:1.2}.leading-\[1\.3\]{line-height:1.3}.leading-\[1\.4\]{line-height:1.4}.leading-\[1\.5\]{line-height:1.5}.leading-\[1\.65\]{line-height:1.65}.leading-\[1\.6\]{line-height:1.6}.leading-\[1\.7\]{line-height:1.7}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-\[0\.12em\]{letter-spacing:.12em}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.4px\]{letter-spacing:.4px}.tracking-\[0\.5px\]{letter-spacing:.5px}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#047857\]{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-\[\#141413\]{--tw-text-opacity: 1;color:rgb(20 20 19 / var(--tw-text-opacity, 1))}.text-\[\#141413\]\/90{color:#141413e6}.text-\[\#14532d\]{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.text-\[\#172554\]{--tw-text-opacity: 1;color:rgb(23 37 84 / var(--tw-text-opacity, 1))}.text-\[\#1d4ed8\]{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-\[\#1e3a8a\]{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-\[\#1e40af\]{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-\[\#2563EB\]{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-\[\#2EAD7A\]{--tw-text-opacity: 1;color:rgb(46 173 122 / var(--tw-text-opacity, 1))}.text-\[\#2d2c27\]{--tw-text-opacity: 1;color:rgb(45 44 39 / var(--tw-text-opacity, 1))}.text-\[\#3730A3\]{--tw-text-opacity: 1;color:rgb(55 48 163 / var(--tw-text-opacity, 1))}.text-\[\#374151\]{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-\[\#3898EC\]{--tw-text-opacity: 1;color:rgb(56 152 236 / var(--tw-text-opacity, 1))}.text-\[\#3D3D3A\]{--tw-text-opacity: 1;color:rgb(61 61 58 / var(--tw-text-opacity, 1))}.text-\[\#3b82f6\]{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-\[\#3f3e3a\]{--tw-text-opacity: 1;color:rgb(63 62 58 / var(--tw-text-opacity, 1))}.text-\[\#4338CA\]{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-\[\#4D4C48\]{--tw-text-opacity: 1;color:rgb(77 76 72 / var(--tw-text-opacity, 1))}.text-\[\#4F7EF7\]{--tw-text-opacity: 1;color:rgb(79 126 247 / var(--tw-text-opacity, 1))}.text-\[\#547E91\]{--tw-text-opacity: 1;color:rgb(84 126 145 / var(--tw-text-opacity, 1))}.text-\[\#5E5D59\]{--tw-text-opacity: 1;color:rgb(94 93 89 / var(--tw-text-opacity, 1))}.text-\[\#64748b\]{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-\[\#6d28d9\]{--tw-text-opacity: 1;color:rgb(109 40 217 / var(--tw-text-opacity, 1))}.text-\[\#7C6FAB\]{--tw-text-opacity: 1;color:rgb(124 111 171 / var(--tw-text-opacity, 1))}.text-\[\#87867F\]{--tw-text-opacity: 1;color:rgb(135 134 127 / var(--tw-text-opacity, 1))}.text-\[\#8B7355\]{--tw-text-opacity: 1;color:rgb(139 115 85 / var(--tw-text-opacity, 1))}.text-\[\#92400E\],.text-\[\#92400e\]{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-\[\#9B6FE0\]{--tw-text-opacity: 1;color:rgb(155 111 224 / var(--tw-text-opacity, 1))}.text-\[\#9a3412\]{--tw-text-opacity: 1;color:rgb(154 52 18 / var(--tw-text-opacity, 1))}.text-\[\#9c9a94\]{--tw-text-opacity: 1;color:rgb(156 154 148 / var(--tw-text-opacity, 1))}.text-\[\#A8A7A0\]{--tw-text-opacity: 1;color:rgb(168 167 160 / var(--tw-text-opacity, 1))}.text-\[\#B0AEA5\]{--tw-text-opacity: 1;color:rgb(176 174 165 / var(--tw-text-opacity, 1))}.text-\[\#B53333\]{--tw-text-opacity: 1;color:rgb(181 51 51 / var(--tw-text-opacity, 1))}.text-\[\#B91C1C\]{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-\[\#C4C3BB\]{--tw-text-opacity: 1;color:rgb(196 195 187 / var(--tw-text-opacity, 1))}.text-\[\#C96442\]{--tw-text-opacity: 1;color:rgb(201 100 66 / var(--tw-text-opacity, 1))}.text-\[\#D4D2CC\]{--tw-text-opacity: 1;color:rgb(212 210 204 / var(--tw-text-opacity, 1))}.text-\[\#D5D3C9\]{--tw-text-opacity: 1;color:rgb(213 211 201 / var(--tw-text-opacity, 1))}.text-\[\#D97757\]{--tw-text-opacity: 1;color:rgb(217 119 87 / var(--tw-text-opacity, 1))}.text-\[\#DC2626\]{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-\[\#E07B39\]{--tw-text-opacity: 1;color:rgb(224 123 57 / var(--tw-text-opacity, 1))}.text-\[\#E8E6DC\]{--tw-text-opacity: 1;color:rgb(232 230 220 / var(--tw-text-opacity, 1))}.text-\[\#FAF9F5\]{--tw-text-opacity: 1;color:rgb(250 249 245 / var(--tw-text-opacity, 1))}.text-\[\#FAF9F5\]\/50{color:#faf9f580}.text-\[\#FAF9F5\]\/60{color:#faf9f599}.text-\[\#FAF9F5\]\/70{color:#faf9f5b3}.text-\[\#FAF9F5\]\/85{color:#faf9f5d9}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-amber-800\/90{color:#92400ee6}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.text-amber-900\/85{color:#78350fd9}.text-amber-950{--tw-text-opacity: 1;color:rgb(69 26 3 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-emerald-800{--tw-text-opacity: 1;color:rgb(6 95 70 / var(--tw-text-opacity, 1))}.text-emerald-800\/90{color:#065f46e6}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity, 1))}.text-emerald-950{--tw-text-opacity: 1;color:rgb(2 44 34 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-indigo-800{--tw-text-opacity: 1;color:rgb(55 48 163 / var(--tw-text-opacity, 1))}.text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity, 1))}.text-neutral-700{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity, 1))}.text-neutral-800{--tw-text-opacity: 1;color:rgb(38 38 38 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.text-rose-400{--tw-text-opacity: 1;color:rgb(251 113 133 / var(--tw-text-opacity, 1))}.text-rose-500{--tw-text-opacity: 1;color:rgb(244 63 94 / var(--tw-text-opacity, 1))}.text-rose-700{--tw-text-opacity: 1;color:rgb(190 18 60 / var(--tw-text-opacity, 1))}.text-rose-800\/85{color:#9f1239d9}.text-rose-900{--tw-text-opacity: 1;color:rgb(136 19 55 / var(--tw-text-opacity, 1))}.text-rose-950{--tw-text-opacity: 1;color:rgb(76 5 25 / var(--tw-text-opacity, 1))}.text-sky-900{--tw-text-opacity: 1;color:rgb(12 74 110 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-teal-800{--tw-text-opacity: 1;color:rgb(17 94 89 / var(--tw-text-opacity, 1))}.text-violet-600{--tw-text-opacity: 1;color:rgb(124 58 237 / var(--tw-text-opacity, 1))}.text-violet-900{--tw-text-opacity: 1;color:rgb(76 29 149 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-2{text-underline-offset:2px}.accent-\[\#C96442\]{accent-color:#C96442}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-85{opacity:.85}.opacity-90{opacity:.9}.opacity-95{opacity:.95}.mix-blend-multiply{mix-blend-mode:multiply}.\!shadow-none{--tw-shadow: 0 0 #0000 !important;--tw-shadow-colored: 0 0 #0000 !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[\#C96442_0px_0px_0px_0px\,\#C96442_0px_0px_0px_1px\]{--tw-shadow: #C96442 0px 0px 0px 0px,#C96442 0px 0px 0px 1px;--tw-shadow-colored: 0px 0px 0px 0px var(--tw-shadow-color), 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[\#E8E6DC_0px_0px_0px_0px\,\#D1CFC5_0px_0px_0px_1px\]{--tw-shadow: #E8E6DC 0px 0px 0px 0px,#D1CFC5 0px 0px 0px 1px;--tw-shadow-colored: 0px 0px 0px 0px var(--tw-shadow-color), 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_10px_28px_-6px_rgba\(201\,100\,66\,0\.5\)\]{--tw-shadow: 0 10px 28px -6px rgba(201,100,66,.5);--tw-shadow-colored: 0 10px 28px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_10px_30px_-6px_rgba\(201\,100\,66\,0\.45\)\]{--tw-shadow: 0 10px 30px -6px rgba(201,100,66,.45);--tw-shadow-colored: 0 10px 30px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_12px_36px_-8px_rgba\(201\,100\,66\,0\.55\)\]{--tw-shadow: 0 12px 36px -8px rgba(201,100,66,.55);--tw-shadow-colored: 0 12px 36px -8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_12px_40px_-12px_rgba\(20\,20\,19\,0\.08\)\]{--tw-shadow: 0 12px 40px -12px rgba(20,20,19,.08);--tw-shadow-colored: 0 12px 40px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_12px_40px_-8px_rgba\(180\,83\,9\,0\.15\)\]{--tw-shadow: 0 12px 40px -8px rgba(180,83,9,.15);--tw-shadow-colored: 0 12px 40px -8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_12px_40px_rgba\(0\,0\,0\,0\.12\)\]{--tw-shadow: 0 12px 40px rgba(0,0,0,.12);--tw-shadow-colored: 0 12px 40px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_16px_48px_-12px_rgba\(20\,20\,19\,0\.08\)\]{--tw-shadow: 0 16px 48px -12px rgba(20,20,19,.08);--tw-shadow-colored: 0 16px 48px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_1px_0_rgba\(0\,0\,0\,0\.04\)\]{--tw-shadow: 0 1px 0 rgba(0,0,0,.04);--tw-shadow-colored: 0 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_1px_2px_rgba\(0\,0\,0\,0\.03\)\]{--tw-shadow: 0 1px 2px rgba(0,0,0,.03);--tw-shadow-colored: 0 1px 2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_1px_2px_rgba\(0\,0\,0\,0\.04\)\]{--tw-shadow: 0 1px 2px rgba(0,0,0,.04);--tw-shadow-colored: 0 1px 2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_1px_3px_rgba\(20\,20\,19\,0\.06\)\]{--tw-shadow: 0 1px 3px rgba(20,20,19,.06);--tw-shadow-colored: 0 1px 3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_20px_60px_rgba\(20\,20\,19\,0\.12\)\]{--tw-shadow: 0 20px 60px rgba(20,20,19,.12);--tw-shadow-colored: 0 20px 60px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_24px_80px_-16px_rgba\(20\,20\,19\,0\.14\)\]{--tw-shadow: 0 24px 80px -16px rgba(20,20,19,.14);--tw-shadow-colored: 0 24px 80px -16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_24px_80px_-20px_rgba\(20\,20\,19\,0\.45\)\]{--tw-shadow: 0 24px 80px -20px rgba(20,20,19,.45);--tw-shadow-colored: 0 24px 80px -20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_24px_80px_rgba\(0\,0\,0\,0\.18\)\]{--tw-shadow: 0 24px 80px rgba(0,0,0,.18);--tw-shadow-colored: 0 24px 80px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_2px_20px_rgba\(20\,20\,19\,0\.04\)\]{--tw-shadow: 0 2px 20px rgba(20,20,19,.04);--tw-shadow-colored: 0 2px 20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_2px_24px_rgba\(20\,20\,19\,0\.06\)\]{--tw-shadow: 0 2px 24px rgba(20,20,19,.06);--tw-shadow-colored: 0 2px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_6px_22px_rgba\(201\,100\,66\,0\.38\)\]{--tw-shadow: 0 6px 22px rgba(201,100,66,.38);--tw-shadow-colored: 0 6px 22px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_8px_24px_rgba\(124\,58\,237\,0\.28\)\]{--tw-shadow: 0 8px 24px rgba(124,58,237,.28);--tw-shadow-colored: 0 8px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_8px_30px_-10px_rgba\(20\,20\,19\,0\.06\)\]{--tw-shadow: 0 8px 30px -10px rgba(20,20,19,.06);--tw-shadow-colored: 0 8px 30px -10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_8px_30px_rgba\(0\,0\,0\,0\.06\)\]{--tw-shadow: 0 8px 30px rgba(0,0,0,.06);--tw-shadow-colored: 0 8px 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_8px_30px_rgba\(181\,51\,51\,0\.12\)\]{--tw-shadow: 0 8px 30px rgba(181,51,51,.12);--tw-shadow-colored: 0 8px 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_8px_30px_rgba\(20\,20\,19\,0\.08\)\]{--tw-shadow: 0 8px 30px rgba(20,20,19,.08);--tw-shadow-colored: 0 8px 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0px_0px_0px_1px_\#7C6FAB\]{--tw-shadow: 0px 0px 0px 1px #7C6FAB;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0px_0px_0px_1px_\#D1CFC5\]{--tw-shadow: 0px 0px 0px 1px #D1CFC5;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0px_0px_0px_1px_\#E8E6DC\]{--tw-shadow: 0px 0px 0px 1px #E8E6DC;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0px_0px_0px_1px_\#F0EEE6\]{--tw-shadow: 0px 0px 0px 1px #F0EEE6;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[inset_0_1px_0_rgba\(255\,255\,255\,0\.85\)\]{--tw-shadow: inset 0 1px 0 rgba(255,255,255,.85);--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[inset_0_1px_0_rgba\(255\,255\,255\,0\.9\)\]{--tw-shadow: inset 0 1px 0 rgba(255,255,255,.9);--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.03\)_0px_2px_10px\]{--tw-shadow: rgba(0,0,0,.03) 0px 2px 10px;--tw-shadow-colored: 0px 2px 10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.03\)_0px_2px_12px\]{--tw-shadow: rgba(0,0,0,.03) 0px 2px 12px;--tw-shadow-colored: 0px 2px 12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.03\)_0px_2px_8px\]{--tw-shadow: rgba(0,0,0,.03) 0px 2px 8px;--tw-shadow-colored: 0px 2px 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.04\)_0px_2px_12px\]{--tw-shadow: rgba(0,0,0,.04) 0px 2px 12px;--tw-shadow-colored: 0px 2px 12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.04\)_0px_4px_24px\]{--tw-shadow: rgba(0,0,0,.04) 0px 4px 24px;--tw-shadow-colored: 0px 4px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.05\)_0px_4px_24px\,0px_0px_0px_1px_\#E8E6DC\]{--tw-shadow: rgba(0,0,0,.05) 0px 4px 24px,0px 0px 0px 1px #E8E6DC;--tw-shadow-colored: 0px 4px 24px var(--tw-shadow-color), 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.05\)_0px_4px_24px\]{--tw-shadow: rgba(0,0,0,.05) 0px 4px 24px;--tw-shadow-colored: 0px 4px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.06\)_0px_2px_8px\]{--tw-shadow: rgba(0,0,0,.06) 0px 2px 8px;--tw-shadow-colored: 0px 2px 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.12\)_0px_8px_32px\,0px_0px_0px_1px_\#D1CFC5\]{--tw-shadow: rgba(0,0,0,.12) 0px 8px 32px,0px 0px 0px 1px #D1CFC5;--tw-shadow-colored: 0px 8px 32px var(--tw-shadow-color), 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.18\)_0px_20px_48px\]{--tw-shadow: rgba(0,0,0,.18) 0px 20px 48px;--tw-shadow-colored: 0px 20px 48px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.18\)_0px_20px_60px\]{--tw-shadow: rgba(0,0,0,.18) 0px 20px 60px;--tw-shadow-colored: 0px 20px 60px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.20\)_0px_20px_60px\,0px_0px_0px_1px_\#D1CFC5\]{--tw-shadow: rgba(0,0,0,.2) 0px 20px 60px,0px 0px 0px 1px #D1CFC5;--tw-shadow-colored: 0px 20px 60px var(--tw-shadow-color), 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.20\)_0px_20px_60px\]{--tw-shadow: rgba(0,0,0,.2) 0px 20px 60px;--tw-shadow-colored: 0px 20px 60px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.22\)_0px_24px_70px\]{--tw-shadow: rgba(0,0,0,.22) 0px 24px 70px;--tw-shadow-colored: 0px 24px 70px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.25\)_0px_24px_64px\]{--tw-shadow: rgba(0,0,0,.25) 0px 24px 64px;--tw-shadow-colored: 0px 24px 64px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(0\,0\,0\,0\.25\)_0px_24px_80px\]{--tw-shadow: rgba(0,0,0,.25) 0px 24px 80px;--tw-shadow-colored: 0px 24px 80px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(110\,130\,165\,0\.22\)_0px_8px_22px\]{--tw-shadow: rgba(110,130,165,.22) 0px 8px 22px;--tw-shadow-colored: 0px 8px 22px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(20\,20\,19\,0\.12\)_0_22px_50px\]{--tw-shadow: rgba(20,20,19,.12) 0 22px 50px;--tw-shadow-colored: 0 22px 50px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[rgba\(201\,100\,66\,0\.22\)_0px_8px_36px\]{--tw-shadow: rgba(201,100,66,.22) 0px 8px 36px;--tw-shadow-colored: 0px 8px 36px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/15{--tw-shadow-color: rgb(0 0 0 / .15);--tw-shadow: var(--tw-shadow-colored)}.shadow-emerald-600\/20{--tw-shadow-color: rgb(5 150 105 / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-emerald-600\/25{--tw-shadow-color: rgb(5 150 105 / .25);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-600\/20{--tw-shadow-color: rgb(220 38 38 / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-600\/25{--tw-shadow-color: rgb(220 38 38 / .25);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-\[\#C96442\]\/15{--tw-ring-color: rgb(201 100 66 / .15)}.ring-\[\#D1CFC5\]\/70{--tw-ring-color: rgb(209 207 197 / .7)}.ring-\[\#E8E6DC\]{--tw-ring-opacity: 1;--tw-ring-color: rgb(232 230 220 / var(--tw-ring-opacity, 1))}.ring-amber-200\/70{--tw-ring-color: rgb(253 230 138 / .7)}.ring-black\/\[0\.03\]{--tw-ring-color: rgb(0 0 0 / .03)}.ring-black\/\[0\.04\]{--tw-ring-color: rgb(0 0 0 / .04)}.ring-red-100{--tw-ring-opacity: 1;--tw-ring-color: rgb(254 226 226 / var(--tw-ring-opacity, 1))}.ring-teal-200\/70{--tw-ring-color: rgb(153 246 228 / .7)}.ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1))}.blur{--tw-blur: blur(8px);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)}.blur-2xl{--tw-blur: blur(40px);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)}.blur-3xl{--tw-blur: blur(64px);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)}.blur-\[100px\]{--tw-blur: blur(100px);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)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.drop-shadow-sm{--tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / .05));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)}.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)}.backdrop-blur-\[2px\]{--tw-backdrop-blur: blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-\[3px\]{--tw-backdrop-blur: blur(3px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[box-shadow\,border-color\]{transition-property:box-shadow,border-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[stroke-dashoffset\]{transition-property:stroke-dashoffset;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.ease-\[cubic-bezier\(0\.22\,1\,0\.36\,1\)\]{transition-timing-function:cubic-bezier(.22,1,.36,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}*{margin:0;padding:0;box-sizing:border-box}:root{font-family:var(--font-family);line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:var(--bg-primary);color:var(--gray-600);font-family:var(--font-family);overflow-x:hidden;letter-spacing:0}#root{width:100%;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--gray-900);font-weight:500;letter-spacing:0;font-synthesis:none;text-rendering:optimizeLegibility}h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.1}h2{font-size:clamp(1.9rem,4vw,3.25rem);line-height:1.2}h3{font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.2}h4,h5,h6{line-height:1.3}p,li,span,label,input,textarea,select,button{font-family:var(--font-family)}:where([class*=title],[class*=heading]){font-family:var(--font-heading);font-synthesis:none;text-rendering:optimizeLegibility}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}button{border-radius:var(--radius-md);border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:var(--font-family);cursor:pointer;transition:all var(--transition-base)}button:focus,button:focus-visible{outline:2px solid #3898ec;outline-offset:2px}::-moz-selection{background-color:#c9644233;color:var(--gray-900)}::selection{background-color:#c9644233;color:var(--gray-900)}.input-readonly{padding:10px 12px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-size:14px;min-height:42px;display:flex;align-items:center;cursor:not-allowed;font-weight:500}.input-readonly:before{content:"🔒 ";margin-right:6px;opacity:.6;font-size:12px}.placeholder\:text-\[\#87867F\]::-moz-placeholder{--tw-text-opacity: 1;color:rgb(135 134 127 / var(--tw-text-opacity, 1))}.placeholder\:text-\[\#87867F\]::placeholder{--tw-text-opacity: 1;color:rgb(135 134 127 / var(--tw-text-opacity, 1))}.placeholder\:text-\[\#B0AEA5\]::-moz-placeholder{--tw-text-opacity: 1;color:rgb(176 174 165 / var(--tw-text-opacity, 1))}.placeholder\:text-\[\#B0AEA5\]::placeholder{--tw-text-opacity: 1;color:rgb(176 174 165 / var(--tw-text-opacity, 1))}.placeholder\:text-\[\#C4C3BB\]::-moz-placeholder{--tw-text-opacity: 1;color:rgb(196 195 187 / var(--tw-text-opacity, 1))}.placeholder\:text-\[\#C4C3BB\]::placeholder{--tw-text-opacity: 1;color:rgb(196 195 187 / var(--tw-text-opacity, 1))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-0\.5:after{content:var(--tw-content);left:.125rem}.after\:top-0\.5:after{content:var(--tw-content);top:.125rem}.after\:h-5:after{content:var(--tw-content);height:1.25rem}.after\:w-5:after{content:var(--tw-content);width:1.25rem}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.after\:shadow-sm:after{content:var(--tw-content);--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.after\:transition-transform:after{content:var(--tw-content);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:duration-200:after{content:var(--tw-content);transition-duration:.2s}.after\:content-\[\'\'\]:after{--tw-content: "";content:var(--tw-content)}.first\:pt-0:first-child{padding-top:0}.focus-within\:border-\[\#3898EC\]:focus-within{--tw-border-opacity: 1;border-color:rgb(56 152 236 / var(--tw-border-opacity, 1))}.focus-within\:border-\[\#A3B6D4\]:focus-within{--tw-border-opacity: 1;border-color:rgb(163 182 212 / var(--tw-border-opacity, 1))}.focus-within\:border-\[\#C96442\]:focus-within{--tw-border-opacity: 1;border-color:rgb(201 100 66 / var(--tw-border-opacity, 1))}.focus-within\:shadow-\[0_0_0_3px_rgba\(201\,100\,66\,0\.12\)\]:focus-within{--tw-shadow: 0 0 0 3px rgba(201,100,66,.12);--tw-shadow-colored: 0 0 0 3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus-within\:shadow-\[0_0_0_3px_rgba\(56\,152\,236\,0\.12\)\]:focus-within{--tw-shadow: 0 0 0 3px rgba(56,152,236,.12);--tw-shadow-colored: 0 0 0 3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus-within\:ring-1:focus-within{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-within\:ring-\[rgba\(163\,182\,212\,0\.38\)\]:focus-within{--tw-ring-color: rgba(163,182,212,.38)}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[\#7C6FAB\]\/50:hover{border-color:#7c6fab80}.hover\:border-\[\#D1CFC5\]:hover{--tw-border-opacity: 1;border-color:rgb(209 207 197 / var(--tw-border-opacity, 1))}.hover\:border-\[\#D5D3C9\]:hover{--tw-border-opacity: 1;border-color:rgb(213 211 201 / var(--tw-border-opacity, 1))}.hover\:border-\[\#E0DDD4\]:hover{--tw-border-opacity: 1;border-color:rgb(224 221 212 / var(--tw-border-opacity, 1))}.hover\:border-\[\#d1cfc5\]:hover{--tw-border-opacity: 1;border-color:rgb(209 207 197 / var(--tw-border-opacity, 1))}.hover\:bg-\[\#30302E\]:hover{--tw-bg-opacity: 1;background-color:rgb(48 48 46 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#547E91\]:hover{--tw-bg-opacity: 1;background-color:rgb(84 126 145 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#6d28d9\]:hover{--tw-bg-opacity: 1;background-color:rgb(109 40 217 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#96AAC8\]:hover{--tw-bg-opacity: 1;background-color:rgb(150 170 200 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#D1CFC5\]:hover{--tw-bg-opacity: 1;background-color:rgb(209 207 197 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#DDD9CC\]:hover{--tw-bg-opacity: 1;background-color:rgb(221 217 204 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#E8E6DC\]:hover{--tw-bg-opacity: 1;background-color:rgb(232 230 220 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#EEF2FF\]:hover{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#F0EEE6\]:hover{--tw-bg-opacity: 1;background-color:rgb(240 238 230 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#F5F4ED\]:hover{--tw-bg-opacity: 1;background-color:rgb(245 244 237 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#FAF9F5\]:hover{--tw-bg-opacity: 1;background-color:rgb(250 249 245 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#FAF9F5\]\/60:hover{background-color:#faf9f599}.hover\:bg-\[\#FAF9F5\]\/80:hover{background-color:#faf9f5cc}.hover\:bg-amber-100\/50:hover{background-color:#fef3c780}.hover\:bg-amber-200:hover{--tw-bg-opacity: 1;background-color:rgb(253 230 138 / var(--tw-bg-opacity, 1))}.hover\:bg-amber-600:hover{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-100:hover{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity: 1;background-color:rgb(4 120 87 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-neutral-50:hover{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-50:hover{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-rose-100:hover{--tw-bg-opacity: 1;background-color:rgb(255 228 230 / var(--tw-bg-opacity, 1))}.hover\:bg-rose-700:hover{--tw-bg-opacity: 1;background-color:rgb(190 18 60 / var(--tw-bg-opacity, 1))}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/60:hover{background-color:#fff9}.hover\:text-\[\#141413\]:hover{--tw-text-opacity: 1;color:rgb(20 20 19 / var(--tw-text-opacity, 1))}.hover\:text-\[\#3730A3\]:hover{--tw-text-opacity: 1;color:rgb(55 48 163 / var(--tw-text-opacity, 1))}.hover\:text-\[\#5E5D59\]:hover{--tw-text-opacity: 1;color:rgb(94 93 89 / var(--tw-text-opacity, 1))}.hover\:text-\[\#A8532E\]:hover{--tw-text-opacity: 1;color:rgb(168 83 46 / var(--tw-text-opacity, 1))}.hover\:text-\[\#A95536\]:hover{--tw-text-opacity: 1;color:rgb(169 85 54 / var(--tw-text-opacity, 1))}.hover\:text-\[\#B53333\]:hover{--tw-text-opacity: 1;color:rgb(181 51 51 / var(--tw-text-opacity, 1))}.hover\:text-\[\#C96442\]:hover{--tw-text-opacity: 1;color:rgb(201 100 66 / var(--tw-text-opacity, 1))}.hover\:text-emerald-600:hover{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[\#C96442_0px_0px_0px_0px\,\#A8532E_0px_0px_0px_1px\]:hover{--tw-shadow: #C96442 0px 0px 0px 0px,#A8532E 0px 0px 0px 1px;--tw-shadow-colored: 0px 0px 0px 0px var(--tw-shadow-color), 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[\#E8E6DC_0px_0px_0px_0px\,\#C2C0B6_0px_0px_0px_1px\]:hover{--tw-shadow: #E8E6DC 0px 0px 0px 0px,#C2C0B6 0px 0px 0px 1px;--tw-shadow-colored: 0px 0px 0px 0px var(--tw-shadow-color), 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_12px_36px_rgba\(20\,20\,19\,0\.07\)\]:hover{--tw-shadow: 0 12px 36px rgba(20,20,19,.07);--tw-shadow-colored: 0 12px 36px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_12px_40px_rgba\(20\,20\,19\,0\.08\)\]:hover{--tw-shadow: 0 12px 40px rgba(20,20,19,.08);--tw-shadow-colored: 0 12px 40px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_16px_48px_-12px_rgba\(20\,20\,19\,0\.1\)\]:hover{--tw-shadow: 0 16px 48px -12px rgba(20,20,19,.1);--tw-shadow-colored: 0 16px 48px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0px_0px_0px_1px_\#C2C0B6\]:hover{--tw-shadow: 0px 0px 0px 1px #C2C0B6;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0px_0px_0px_1px_\#D1CFC5\,rgba\(0\,0\,0\,0\.05\)_0px_4px_24px\]:hover{--tw-shadow: 0px 0px 0px 1px #D1CFC5,rgba(0,0,0,.05) 0px 4px 24px;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color), 0px 4px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0px_0px_0px_1px_\#D1CFC5\,rgba\(0\,0\,0\,0\.06\)_0px_8px_28px\]:hover{--tw-shadow: 0px 0px 0px 1px #D1CFC5,rgba(0,0,0,.06) 0px 8px 28px;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color), 0px 8px 28px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0px_0px_0px_1px_\#D1CFC5\,rgba\(0\,0\,0\,0\.08\)_0px_8px_30px\]:hover{--tw-shadow: 0px 0px 0px 1px #D1CFC5,rgba(0,0,0,.08) 0px 8px 30px;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color), 0px 8px 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0px_0px_0px_1px_\#D1CFC5\]:hover{--tw-shadow: 0px 0px 0px 1px #D1CFC5;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0px_0px_0px_1px_\#E8E6DC\]:hover{--tw-shadow: 0px 0px 0px 1px #E8E6DC;--tw-shadow-colored: 0px 0px 0px 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0px_8px_28px_rgba\(0\,0\,0\,0\.07\)\]:hover{--tw-shadow: 0px 8px 28px rgba(0,0,0,.07);--tw-shadow-colored: 0px 8px 28px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[rgba\(0\,0\,0\,0\.05\)_0px_4px_16px\]:hover{--tw-shadow: rgba(0,0,0,.05) 0px 4px 16px;--tw-shadow-colored: 0px 4px 16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[rgba\(0\,0\,0\,0\.06\)_0px_4px_16px\]:hover{--tw-shadow: rgba(0,0,0,.06) 0px 4px 16px;--tw-shadow-colored: 0px 4px 16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[rgba\(201\,100\,66\,0\.34\)_0px_16px_56px\]:hover{--tw-shadow: rgba(201,100,66,.34) 0px 16px 56px;--tw-shadow-colored: 0px 16px 56px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:brightness-105:hover{--tw-brightness: brightness(1.05);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)}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);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)}.hover\:brightness-95:hover{--tw-brightness: brightness(.95);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)}.hover\:brightness-\[1\.02\]:hover{--tw-brightness: brightness(1.02);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)}.hover\:brightness-\[1\.03\]:hover{--tw-brightness: brightness(1.03);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)}.focus\:border-\[\#3898EC\]:focus{--tw-border-opacity: 1;border-color:rgb(56 152 236 / var(--tw-border-opacity, 1))}.focus\:border-\[\#6B8E9E\]:focus{--tw-border-opacity: 1;border-color:rgb(107 142 158 / var(--tw-border-opacity, 1))}.focus\:border-\[\#A3B6D4\]:focus{--tw-border-opacity: 1;border-color:rgb(163 182 212 / var(--tw-border-opacity, 1))}.focus\:border-\[\#C96442\]:focus{--tw-border-opacity: 1;border-color:rgb(201 100 66 / var(--tw-border-opacity, 1))}.focus\:opacity-100:focus{opacity:1}.focus\:shadow-\[0_0_0_3px_rgba\(56\,152\,236\,0\.12\)\]:focus{--tw-shadow: 0 0 0 3px rgba(56,152,236,.12);--tw-shadow-colored: 0 0 0 3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:shadow-\[0_0_0_3px_rgba\(91\,130\,145\,0\.14\)\]:focus{--tw-shadow: 0 0 0 3px rgba(91,130,145,.14);--tw-shadow-colored: 0 0 0 3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[\#3898EC\]\/20:focus{--tw-ring-color: rgb(56 152 236 / .2)}.focus\:ring-\[\#C96442\]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(201 100 66 / var(--tw-ring-opacity, 1))}.focus\:ring-\[\#C96442\]\/20:focus{--tw-ring-color: rgb(201 100 66 / .2)}.focus\:ring-\[0_0_0_3px_rgba\(56\,152\,236\,0\.12\)\]:focus{--tw-ring-color: 0 0 0 3px rgba(56,152,236,.12)}.focus\:ring-\[rgba\(163\,182\,212\,0\.42\)\]:focus{--tw-ring-color: rgba(163,182,212,.42)}.focus-visible\:rounded-sm:focus-visible{border-radius:.125rem}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-\[\#3898EC\]:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(56 152 236 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-\[\#C96442\]:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(201 100 66 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-\[\#C96442\]\/35:focus-visible{--tw-ring-color: rgb(201 100 66 / .35)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:scale-\[0\.98\]:active{--tw-scale-x: .98;--tw-scale-y: .98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.99\]:active{--tw-scale-x: .99;--tw-scale-y: .99;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-\[\#3f3f3c\]:disabled{--tw-bg-opacity: 1;background-color:rgb(63 63 60 / var(--tw-bg-opacity, 1))}.disabled\:bg-\[\#F5F4ED\]:disabled{--tw-bg-opacity: 1;background-color:rgb(245 244 237 / var(--tw-bg-opacity, 1))}.disabled\:bg-\[\#ccc\]:disabled{--tw-bg-opacity: 1;background-color:rgb(204 204 204 / var(--tw-bg-opacity, 1))}.disabled\:text-\[\#87867F\]:disabled{--tw-text-opacity: 1;color:rgb(135 134 127 / var(--tw-text-opacity, 1))}.disabled\:text-\[\#9c9a94\]:disabled{--tw-text-opacity: 1;color:rgb(156 154 148 / var(--tw-text-opacity, 1))}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-35:disabled{opacity:.35}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-45:disabled{opacity:.45}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.disabled\:shadow-none:disabled{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-\[1\.04\]{--tw-scale-x: 1.04;--tw-scale-y: 1.04;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:gap-2{gap:.5rem}.group:hover .group-hover\:text-\[\#5E5D59\]{--tw-text-opacity: 1;color:rgb(94 93 89 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-\[\#C96442\]{--tw-text-opacity: 1;color:rgb(201 100 66 / var(--tw-text-opacity, 1))}.group\/title:hover .group-hover\/title\:underline{text-decoration-line:underline}.group:hover .group-hover\:opacity-100{opacity:1}.peer:checked~.peer-checked\:bg-\[\#C96442\]{--tw-bg-opacity: 1;background-color:rgb(201 100 66 / var(--tw-bg-opacity, 1))}.peer:checked~.peer-checked\:after\:translate-x-5:after{content:var(--tw-content);--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-50{opacity:.5}.has-\[\:checked\]\:border-\[\#C96442\]:has(:checked){--tw-border-opacity: 1;border-color:rgb(201 100 66 / var(--tw-border-opacity, 1))}.has-\[\:checked\]\:border-emerald-200:has(:checked){--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity, 1))}.has-\[\:checked\]\:bg-\[\#E8E6DC\]:has(:checked){--tw-bg-opacity: 1;background-color:rgb(232 230 220 / var(--tw-bg-opacity, 1))}.has-\[\:checked\]\:bg-emerald-50:has(:checked){--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.has-\[\:checked\]\:ring-1:has(:checked){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.has-\[\:checked\]\:ring-\[\#C96442\]:has(:checked){--tw-ring-opacity: 1;--tw-ring-color: rgb(201 100 66 / var(--tw-ring-opacity, 1))}@media(min-width:640px){.sm\:order-1{order:1}.sm\:order-2{order:2}.sm\:order-3{order:3}.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:ml-auto{margin-left:auto}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:w-40{width:10rem}.sm\:w-\[220px\]{width:220px}.sm\:w-\[min\(100\%\,11\.25rem\)\]{width:min(100%,11.25rem)}.sm\:w-auto{width:auto}.sm\:min-w-\[220px\]{min-width:220px}.sm\:flex-1{flex:1 1 0%}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:items-baseline{align-items:baseline}.sm\:items-stretch{align-items:stretch}.sm\:justify-start{justify-content:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:gap-3{gap:.75rem}.sm\:gap-4{gap:1rem}.sm\:self-auto{align-self:auto}.sm\:p-10{padding:2.5rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:px-10{padding-left:2.5rem;padding-right:2.5rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.sm\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.sm\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm\:py-8{padding-top:2rem;padding-bottom:2rem}.sm\:py-9{padding-top:2.25rem;padding-bottom:2.25rem}.sm\:pb-10{padding-bottom:2.5rem}.sm\:pl-11{padding-left:2.75rem}.sm\:pt-8{padding-top:2rem}.sm\:text-left{text-align:left}.sm\:text-\[21px\]{font-size:21px}.sm\:text-\[22px\]{font-size:22px}.sm\:opacity-100{opacity:1}}@media(min-width:768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:block{display:block}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:p-10{padding:2.5rem}.md\:p-5{padding:1.25rem}.md\:p-6{padding:1.5rem}.md\:p-7{padding:1.75rem}.md\:p-8{padding:2rem}}@media(min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-24{top:6rem}.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:col-span-6{grid-column:span 6 / span 6}.lg\:mx-0{margin-left:0;margin-right:0}.lg\:ml-auto{margin-left:auto}.lg\:block{display:block}.lg\:grid{display:grid}.lg\:h-12{height:3rem}.lg\:h-6{height:1.5rem}.lg\:w-12{width:3rem}.lg\:w-44{width:11rem}.lg\:w-6{width:1.5rem}.lg\:w-\[260px\]{width:260px}.lg\:w-\[280px\]{width:280px}.lg\:w-auto{width:auto}.lg\:min-w-0{min-width:0px}.lg\:min-w-\[168px\]{min-width:168px}.lg\:min-w-\[200px\]{min-width:200px}.lg\:min-w-\[220px\]{min-width:220px}.lg\:max-w-3xl{max-width:48rem}.lg\:max-w-\[17\.5rem\]{max-width:17.5rem}.lg\:max-w-full{max-width:100%}.lg\:max-w-xl{max-width:36rem}.lg\:flex-1{flex:1 1 0%}.lg\:flex-initial{flex:0 1 auto}.lg\:flex-shrink-0{flex-shrink:0}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-\[1fr_280px\]{grid-template-columns:1fr 280px}.lg\:grid-cols-\[minmax\(0\,1fr\)_280px\]{grid-template-columns:minmax(0,1fr) 280px}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:justify-end{justify-content:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-4{gap:1rem}.lg\:gap-8{gap:2rem}.lg\:p-5{padding:1.25rem}.lg\:p-6{padding:1.5rem}.lg\:p-8{padding:2rem}.lg\:px-6{padding-left:1.5rem;padding-right:1.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.lg\:py-8{padding-top:2rem;padding-bottom:2rem}}@media(min-width:1280px){.xl\:order-1{order:1}.xl\:order-2{order:2}.xl\:col-span-1{grid-column:span 1 / span 1}.xl\:col-span-2{grid-column:span 2 / span 2}.xl\:max-w-md{max-width:28rem}.xl\:flex-shrink-0{flex-shrink:0}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:flex-row{flex-direction:row}.xl\:items-start{align-items:flex-start}.xl\:items-center{align-items:center}.xl\:justify-end{justify-content:flex-end}.xl\:justify-between{justify-content:space-between}.xl\:px-8{padding-left:2rem;padding-right:2rem}}.\[\&_\.katex\]\:text-\[13px\] .katex{font-size:13px}.toast-container{position:fixed;bottom:2rem;right:2rem;display:flex;flex-direction:column;gap:.75rem;z-index:9999;pointer-events:none;max-width:420px;width:calc(100% - 4rem)}.ud-toast{pointer-events:auto;background:#1c1d1ff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;padding:1rem 1.25rem;border-radius:4px;box-shadow:0 4px 12px #00000026,0 0 1px #ffffff1a;display:flex;align-items:flex-start;gap:1rem;border-left:4px solid #ffffff;position:relative;overflow:hidden}.ud-toast--success{border-left-color:#2ecc71}.ud-toast--error{border-left-color:#ff4d4f}.ud-toast--warning{border-left-color:#f1c40f}.ud-toast--info{border-left-color:#3498db}.ud-toast__icon{flex-shrink:0;margin-top:.125rem}.ud-toast--success .ud-toast__icon{color:#2ecc71}.ud-toast--error .ud-toast__icon{color:#ff4d4f}.ud-toast--warning .ud-toast__icon{color:#f1c40f}.ud-toast--info .ud-toast__icon{color:#3498db}.ud-toast__content{flex-grow:1}.ud-toast__message{font-size:.925rem;line-height:1.5;font-weight:500;margin:0}.ud-toast__action{margin-top:.75rem;display:flex}.ud-toast__action-btn{background:#fff;color:#1c1d1f;border:none;padding:.5rem 1rem;font-size:.85rem;font-weight:700;border-radius:4px;cursor:pointer;transition:background .2s ease}.ud-toast__action-btn:hover{background:#f1f1f1}.ud-toast__close{background:transparent;border:none;color:#ffffff80;cursor:pointer;padding:.25rem;margin:-.25rem;transition:color .2s ease;flex-shrink:0}.ud-toast__close:hover{color:#fff}.ud-toast__progress{position:absolute;bottom:0;left:0;height:3px;background:#fff3;width:100%;transform-origin:left}@media(max-width:640px){.toast-container{bottom:1rem;right:1rem;left:1rem;width:auto;max-width:none}}:root{--c-primary: #c96442;--c-primary-soft: rgba(201, 100, 66, .12);--c-primary-glow: rgba(201, 100, 66, .2);--c-dark: #0e0c15;--c-dark-alt: #1a1725;--c-bg: #fafaff;--c-surface: #ffffff;--c-text-1: #0e0c15;--c-text-2: #3f3a52;--c-text-3: #756b85;--c-border: #e8e5f0;--c-border-soft: #f0edf8;--c-accent-pink: #ff98e2;--c-accent-gold: #ffc876;--f-heading: "Be Vietnam Pro", -apple-system, sans-serif;--f-body: "Be Vietnam Pro", -apple-system, sans-serif;--r-sm: 12px;--r-md: 16px;--r-lg: 20px;--r-xl: 24px;--r-pill: 100px;--max-w: 1120px;--shadow-xs: 0 1px 2px rgba(14, 12, 21, .04);--shadow-sm: 0 2px 4px rgba(14, 12, 21, .03), 0 4px 12px rgba(14, 12, 21, .04);--shadow-md: 0 4px 8px rgba(14, 12, 21, .03), 0 8px 24px rgba(14, 12, 21, .06);--shadow-lg: 0 8px 16px rgba(14, 12, 21, .04), 0 16px 48px rgba(14, 12, 21, .08);--shadow-glow: 0 4px 32px rgba(94, 92, 230, .12)}.homepage{font-family:var(--f-body);color:var(--c-text-2);background:var(--c-bg);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem;width:100%}.homepage-header{position:sticky;top:0;z-index:100;background:#fafaffd9;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid var(--c-border-soft);padding:.625rem 0}.navbar{display:flex;align-items:center;justify-content:space-between;height:48px}.navbar-brand .logo{display:flex;align-items:center;gap:.5rem;text-decoration:none}.logo-icon{font-size:1.4rem;font-weight:800;color:var(--c-primary);font-family:var(--f-heading)}.logo-text{font-size:1.05rem;font-weight:600;color:var(--c-text-1);font-family:var(--f-heading);letter-spacing:-.3px}.navbar-menu{display:flex;gap:.25rem;align-items:center}.nav-link{color:var(--c-text-3);text-decoration:none;font-weight:500;font-size:.82rem;padding:.4rem .75rem;border-radius:var(--r-sm);transition:all .2s ease;letter-spacing:-.1px}.nav-link:hover{color:var(--c-text-1);background:var(--c-primary-soft)}.navbar-actions{display:flex;gap:.5rem;align-items:center}.btn-outline-white{background:transparent;border:1px solid var(--c-border);color:var(--c-text-2);padding:.4rem 1.1rem;border-radius:var(--r-pill);text-decoration:none;font-weight:500;font-size:.8rem;transition:all .2s ease}.btn-outline-white:hover{border-color:var(--c-primary);color:var(--c-primary);background:var(--c-primary-soft)}.btn-primary-gradient{background:var(--c-primary);color:#fff;padding:.4rem 1.1rem;border-radius:var(--r-pill);text-decoration:none;font-weight:600;font-size:.8rem;border:1px solid var(--c-primary);transition:all .2s ease;box-shadow:var(--shadow-xs)}.btn-primary-gradient:hover{background:#4e4cc6;color:#fff;box-shadow:var(--shadow-glow);transform:translateY(-1px)}.unique-approach-section{background:#fff;padding-bottom:2.5rem;overflow:hidden}.unique-approach__title{display:inline-block;font-family:Be Vietnam Pro,Sora,sans-serif;font-size:3rem;font-weight:600;line-height:60px;color:#0e0c15;margin-bottom:2.5rem;text-align:left;width:100%}@media(min-width:768px){.unique-approach__title{margin-bottom:5rem;text-align:center}}@media(min-width:976px){.unique-approach__title{font-size:3.75rem;font-weight:700;line-height:1.25;margin-bottom:120px}}.unique-approach__title .text-accent{color:#c96442;position:relative}.unique-approach__content{display:flex;flex-direction:column}@media(min-width:768px){.unique-approach__content{flex-direction:row}}.unique-approach__steps{display:grid;gap:1.5rem}@media(min-width:768px){.unique-approach__steps{gap:3rem}}.unique-approach__step{display:grid;gap:.5rem;width:335px}@media(min-width:768px){.unique-approach__step{gap:1rem;width:357px}}.step-badge{display:flex;justify-content:center;align-items:center;border-radius:100px;width:-moz-fit-content;width:fit-content;padding:4px 12px;font-family:Source Code Pro,monospace;font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#0e0c15;margin-bottom:.5rem}@media(min-width:768px){.step-badge{margin-bottom:0;line-height:0}}.step-badge--1{background-color:#c96442;color:#141413}.step-badge--2{background-color:#ff9fd3}.step-badge--3{background-color:#ffc87d}.step-title{font-family:Be Vietnam Pro,Sora,sans-serif;font-size:32px;line-height:40px;color:#0e0c15;margin:0}@media(min-width:768px){.step-title{font-size:40px;line-height:52px;font-weight:600}}.step-desc{font-family:Source Code Pro,monospace;font-size:15px;line-height:20px;color:#4d4d4d;margin:0}@media(min-width:768px){.step-desc{font-size:18px;line-height:1.5}}.unique-approach__phones{width:100%;position:relative;height:455px;margin-top:5rem}@media(min-width:768px){.unique-approach__phones{height:726px;margin-top:0}}.unique-approach__phones img{position:absolute;top:0;right:-90px;height:455px;max-width:432px;-o-object-fit:contain;object-fit:contain}@media(min-width:768px){.unique-approach__phones img{top:100px;right:-150px;height:550px;max-width:500px}}@media(min-width:1024px){.unique-approach__phones img{top:0;right:-150px;height:100%;max-width:685px}}.intro-section{padding:5rem 0;background:#fff}@media(min-width:768px){.intro-section{padding:120px 0}}.intro-content{display:flex;flex-direction:column;gap:2.5rem}@media(min-width:768px){.intro-content{flex-direction:row;justify-content:space-between;align-items:flex-start;width:100%}}.intro-icon-card{flex-shrink:0;width:120px;height:120px;margin-bottom:2.5rem}@media(min-width:768px){.intro-icon-card{width:140px;height:140px;margin-bottom:0}}@media(min-width:1024px){.intro-icon-card{width:200px;height:200px}}.intro-icon-card img,.intro-icon-card svg{width:100%;height:100%}.intro-math-icon{width:100%;height:100%;background:#fff;border-radius:24px;box-shadow:0 4px 24px #00000014;padding:16px}.intro-text{color:#1a1a2e;max-width:552px}.intro-title{font-family:Be Vietnam Pro,sans-serif;font-size:52px;line-height:65px;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}@media(min-width:1024px){.intro-title{font-size:88px;line-height:1}}.intro-title-accent{color:#c96442}.intro-description{font-size:1.125rem;color:#1a1a2e;margin:0;line-height:1.6}@media(min-width:1024px){.intro-description{font-size:28px;line-height:36px}}.intro-features{list-style:disc;padding-left:1rem;margin-top:2.5rem;color:#1a1a2e}@media(min-width:1024px){.intro-features{margin-top:3rem}}.intro-features li{font-family:Source Code Pro,monospace;font-size:.875rem;font-weight:400;line-height:1.6;margin-bottom:.25rem}@media(min-width:768px){.intro-features li{font-size:1rem}}.hero-section{position:relative;padding:6rem 0 4rem;min-height:88vh;display:flex;align-items:center;overflow:hidden;background-color:#f8f8ff;background-image:linear-gradient(rgba(94,92,230,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(94,92,230,.06) 1px,transparent 1px);background-size:80px 80px}.hero-bg{display:none}.hero-decorations{position:absolute;inset:0;pointer-events:none;z-index:0}.math-symbol{position:absolute;font-family:Be Vietnam Pro,system-ui,sans-serif;font-weight:700;color:#c96442;pointer-events:none;will-change:transform;z-index:1}.symbol-1{top:8%;left:10%;font-size:2.5rem;opacity:.3;animation:mathFloat 8s ease-in-out infinite}.symbol-2{top:15%;right:12%;font-size:3rem;opacity:.25;animation:mathFloat 10s ease-in-out infinite 1s}.symbol-3{top:40%;left:4%;font-size:4rem;opacity:.2;animation:mathFloat 9s ease-in-out infinite 2s}.symbol-4{bottom:30%;right:8%;font-size:2rem;opacity:.35;animation:mathFloat 7s ease-in-out infinite .5s}.symbol-5{bottom:15%;left:15%;font-size:2.2rem;opacity:.28;animation:mathFloat 11s ease-in-out infinite 3s}.symbol-6{top:25%;right:25%;font-size:1.8rem;opacity:.22;animation:mathFloat 14s ease-in-out infinite 4s}.symbol-7{bottom:40%;left:25%;font-size:1.6rem;opacity:.3;animation:mathFloat 6s ease-in-out infinite 1.5s}.symbol-8{top:55%;right:5%;font-size:2.8rem;opacity:.18;animation:mathFloat 12s ease-in-out infinite 2.5s}.symbol-9{top:5%;left:35%;font-size:1.5rem;opacity:.22;animation:mathFloat 9s ease-in-out infinite 3.5s}.symbol-10{bottom:8%;right:20%;font-size:2rem;opacity:.2;animation:mathFloat 11s ease-in-out infinite 1s}.symbol-11{top:65%;left:8%;font-size:2.4rem;opacity:.18;animation:mathFloat 13s ease-in-out infinite 2s}.symbol-12{bottom:25%;right:35%;font-size:1.8rem;opacity:.25;animation:mathFloat 8s ease-in-out infinite 4.5s}.geo-shape{position:absolute;pointer-events:none;will-change:transform;z-index:1}.geo-sphere{top:4%;left:28%;width:100px;height:100px;color:#c96442;opacity:.55;animation:mathFloat 14s ease-in-out infinite}.geo-cylinder{top:55%;left:5%;width:160px;height:160px;color:#ffb347;opacity:.6;animation:mathFloat 12s ease-in-out infinite 1s}.geo-pyramid{top:30%;right:2%;width:160px;height:160px;color:#ff6b9c;opacity:.55;animation:mathFloat 14s ease-in-out infinite 2s}.geo-cube{bottom:2%;right:8%;width:130px;height:130px;color:#c96442;opacity:.5;animation:mathFloat 10s ease-in-out infinite 4s}@keyframes mathFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(3deg)}}.hero-content{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;z-index:1}.hero-text{max-width:720px}.hero-badge{display:inline-flex;align-items:center;gap:.4rem;background:var(--c-surface);border:1px solid var(--c-border);padding:.35rem 1rem;border-radius:var(--r-pill);font-size:.72rem;font-weight:500;color:var(--c-text-3);margin-bottom:1.75rem;box-shadow:var(--shadow-xs)}.badge-icon{font-size:.85rem}.hero-title{font-size:clamp(2.5rem,5.5vw,4.25rem);font-weight:700;line-height:1.12;letter-spacing:-1.5px;margin:0 0 1.5rem;font-family:var(--f-heading);color:var(--c-text-1)}.gradient-text{color:var(--c-primary);position:relative;display:inline}.gradient-text:after{content:"";position:absolute;bottom:-6px;left:0;width:100%;height:8px;background:url(https://gcdn.fx2.io/math-master.org/_nuxt/line1.2e3dcbd2.svg) no-repeat center / contain;opacity:.5;pointer-events:none}.hero-description{font-size:1.05rem;line-height:1.7;color:var(--c-text-3);margin:0 auto 2rem;max-width:540px}.hero-actions{display:flex;gap:.75rem;margin-bottom:3.5rem;justify-content:center;flex-wrap:wrap}.btn-primary-large{background:var(--c-primary);color:#fff;padding:.75rem 1.75rem;border-radius:var(--r-md);font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);border:none;box-shadow:0 1px 2px #5e5ce633,0 4px 16px #5e5ce633}.btn-primary-large:hover{background:#4e4cc6;color:#fff;box-shadow:0 4px 12px #5e5ce640,0 8px 32px #5e5ce633;transform:translateY(-2px)}.btn-icon{font-size:1rem;transition:transform .2s ease}.btn-primary-large:hover .btn-icon{transform:translate(3px)}.btn-video{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-2);padding:.75rem 1.75rem;border-radius:var(--r-md);font-size:.85rem;font-weight:500;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-xs)}.btn-video:hover{border-color:var(--c-primary);color:var(--c-primary);background:var(--c-primary-soft);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.play-icon{font-size:.7rem}.hero-stats{display:flex;gap:0;justify-content:center}.stat-item{text-align:center;padding:1.25rem 2.25rem;border:1px solid var(--c-border);background:#ffffffb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;gap:1rem}.stat-item:first-child{border-radius:var(--r-lg) 0 0 var(--r-lg)}.stat-item:last-child{border-radius:0 var(--r-lg) var(--r-lg) 0}.stat-item:not(:last-child){border-right:none}.stat-number{font-size:1.75rem;font-weight:700;color:var(--c-text-1);font-family:var(--f-heading);line-height:1;letter-spacing:-.5px}.stat-label{font-size:.72rem;color:var(--c-text-3);text-align:left;line-height:1.4}.hero-image,.dashboard-preview,.preview-card,.floating-math-symbols,.math-float,.card-chart,.card-icon,.card-title,.card-content,.card-graph,.math-equation,.hero-shape{display:none}.help-section{padding:5rem 0 2rem;background:var(--c-bg)}.help-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;text-align:center;margin-bottom:4rem;font-family:var(--f-heading);color:var(--c-text-1);letter-spacing:-.8px;line-height:1.2}.help-row{display:flex;flex-direction:row;justify-content:flex-end;align-items:flex-start;gap:3.5rem;padding-bottom:4rem}.help-row--reverse{flex-direction:row-reverse}.help-image{flex-shrink:0;width:160px}.help-image img{width:100%;height:auto;display:block}.help-text{max-width:453px}.help-subtitle{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;color:var(--c-text-1);margin-bottom:.5rem;font-family:var(--f-heading);line-height:1.3;letter-spacing:-.5px}.dot-accent{color:#155e75;font-weight:700}.help-desc{font-size:1rem;color:var(--c-text-3);line-height:1.7;font-family:var(--f-body)}.features-section{padding:7rem 0;background:var(--c-surface);position:relative;overflow:hidden}.features-bg-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(94,92,230,.06) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;z-index:0}.features-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(90%,800px);height:1px;background:linear-gradient(90deg,transparent,var(--c-border),transparent);z-index:1}.features-section .container{position:relative;z-index:1}.homepage .section-header{text-align:center;margin-bottom:4rem}.homepage .section-title{font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:700;color:var(--c-text-1);margin:0 0 .75rem;font-family:var(--f-heading);line-height:1.2;letter-spacing:-.8px}.homepage .section-description{font-size:1rem;color:var(--c-text-3);margin:0;max-width:450px;margin-inline:auto;line-height:1.6}.features-bento{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.ft-card{background:#ffffffd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--c-border-soft);border-radius:var(--r-xl);padding:2rem 1.75rem;position:relative;overflow:hidden;box-shadow:var(--shadow-xs);transition:all .4s cubic-bezier(.4,0,.2,1);cursor:default;display:flex;flex-direction:column}.ft-card__glow{position:absolute;width:160px;height:160px;border-radius:50%;top:-40px;right:-40px;background:radial-gradient(circle,rgba(94,92,230,.12),transparent 70%);filter:blur(30px);opacity:0;transition:opacity .5s ease;pointer-events:none;z-index:0}.ft-card:hover .ft-card__glow{opacity:1}.ft-card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:conic-gradient(from var(--angle, 0deg),transparent 40%,rgba(94,92,230,.4) 50%,rgba(133,141,255,.4) 55%,transparent 65%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease;pointer-events:none}.ft-card:hover:before{opacity:1;animation:rotateBorder 3s linear infinite}@property --angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes rotateBorder{to{--angle: 360deg}}.ft-card:hover{transform:translateY(-8px);box-shadow:0 4px 16px #c964421f,0 12px 40px #5e5ce61a;border-color:#5e5ce61f}.ft-card--hero{grid-column:span 2}.ft-card--hero .ft-card__glow{width:240px;height:240px;top:-60px;right:-40px;background:radial-gradient(circle,rgba(94,92,230,.15),transparent 70%)}.ft-card--wide{grid-column:span 2}.ft-card--wide .ft-card__glow{width:200px;height:200px;top:-50px;right:-30px;background:radial-gradient(circle,rgba(20,184,166,.15),transparent 70%)}.ft-badge{display:inline-flex;align-items:center;font-size:.65rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;padding:.25rem .7rem;border-radius:var(--r-pill);margin-bottom:1.25rem;width:-moz-fit-content;width:fit-content;position:relative;z-index:1}.ft-badge--purple{background:#141413;color:#faf9f5}.ft-badge--blue{background:#3b82f61a;color:#141413}.ft-badge--green{background:#10b9811a;color:#141413}.ft-badge--orange{background:#f59e0b1a;color:#141413}.ft-badge--pink{background:#ec48991a;color:#141413}.ft-badge--teal{background:#14b8a61a;color:#141413}.ft-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;position:relative;z-index:1;transition:transform .35s cubic-bezier(.4,0,.2,1)}.ft-card:hover .ft-icon{transform:scale(1.1) rotate(-3deg)}.ft-icon svg{width:26px;height:26px}.ft-icon--purple{background:linear-gradient(135deg,#5e5ce61f,#858dff2e);color:#141413}.ft-icon--blue{background:linear-gradient(135deg,#3b82f61f,#60a5fa2e);color:#141413}.ft-icon--green{background:linear-gradient(135deg,#10b9811f,#34d3992e);color:#141413}.ft-icon--orange{background:linear-gradient(135deg,#f59e0b1f,#fbbf242e);color:#141413}.ft-icon--pink{background:linear-gradient(135deg,#ec48991f,#f472b62e);color:#141413}.ft-icon--teal{background:linear-gradient(135deg,#14b8a61f,#2dd4bf2e);color:#141413}.ft-title{font-size:1.15rem;font-weight:600;color:var(--c-text-1);margin:0 0 .5rem;font-family:var(--f-heading);letter-spacing:-.2px;position:relative;z-index:1}.ft-desc{font-size:.85rem;color:var(--c-text-3);line-height:1.7;margin:0 0 1.25rem;position:relative;z-index:1;flex:1}.ft-link{font-size:.8rem;font-weight:500;color:var(--c-primary);display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;position:relative;z-index:1;transition:color .25s ease;margin-top:auto}.ft-link:hover{color:#4e4cc6}.ft-arrow{display:inline-block;transition:transform .3s cubic-bezier(.4,0,.2,1)}.ft-card:hover .ft-arrow{transform:translate(5px)}.how-it-works-section{padding:7rem 0;background:var(--c-bg);position:relative}.how-steps-container{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:960px;margin:0 auto}.how-step-item{text-align:left;padding:1.75rem;background:var(--c-surface);border:1px solid var(--c-border-soft);border-radius:var(--r-xl);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-xs);position:relative}.how-step-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.how-step-number{display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;margin:0 0 1.25rem;padding:.3rem .85rem;border-radius:var(--r-pill);color:#fff;font-family:var(--f-heading)}.how-step-item:nth-child(1) .how-step-number{background:var(--c-primary)}.how-step-item:nth-child(2) .how-step-number{background:var(--c-accent-pink);color:var(--c-dark)}.how-step-item:nth-child(3) .how-step-number{background:var(--c-accent-gold);color:var(--c-dark)}.step-connector{display:none}.how-step-title{font-size:1.25rem;font-weight:600;color:var(--c-text-1);margin:0 0 .6rem;font-family:var(--f-heading);letter-spacing:-.3px;line-height:1.3}.how-step-description{font-size:.85rem;color:var(--c-text-3);line-height:1.65;margin:0}.testimonials-section{padding:5rem 0 7rem;background:var(--c-bg);position:relative}.testimonials-grid{display:flex;flex-wrap:wrap;gap:2.5rem 4rem;justify-content:center;max-width:960px;margin:0 auto}.testimonial-card{background:var(--c-surface);border:1px solid var(--c-primary);border-radius:36px;padding:2rem 2.25rem;position:relative;width:calc(50% - 2rem);min-width:280px;margin-bottom:1rem}.testimonial-card--center{width:calc(60% - 2rem);max-width:520px}.bubble-tail{position:absolute;bottom:-28px;left:36px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.bubble-tail:before,.bubble-tail:after{content:"";border-radius:50%;border:1px solid var(--c-primary);background:transparent}.bubble-tail:before{width:14px;height:14px}.bubble-tail:after{width:9px;height:9px;margin-left:1px}.testimonial-text{font-size:1rem;color:var(--c-text-1);line-height:1.5;margin:0 0 1rem;font-family:var(--f-body)}.testimonial-author{display:flex;align-items:center;gap:.5rem}.author-name-inline{font-weight:400;color:var(--c-primary);font-size:.875rem;font-family:var(--f-heading)}.author-dot{color:var(--c-primary);font-size:.875rem}.author-role-inline{color:var(--c-primary);font-size:.875rem;font-weight:400;font-family:var(--f-heading)}.testimonial-rating,.author-avatar{display:none}.unique-section{padding:5rem 0;background:var(--c-bg);text-align:center}.unique-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:4rem;font-family:var(--f-heading);color:var(--c-text-1);letter-spacing:-.8px;line-height:1.25}.unique-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:4rem}.unique-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);padding:2.5rem 1.5rem;text-align:center;transition:all .3s ease}.unique-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--c-primary)}.unique-icon{width:64px;height:64px;margin:0 auto 1.5rem}.unique-icon img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.unique-card-title{font-size:1.35rem;font-weight:600;color:var(--c-text-1);margin-bottom:.75rem;font-family:var(--f-heading)}.unique-card-desc{font-size:.95rem;color:var(--c-text-3);line-height:1.6;font-family:var(--f-body)}.unique-mockups{text-align:center;max-width:800px;margin:0 auto}.mockup-center{width:100%;height:auto;display:block}.subjects-section{padding:5rem 0;background:var(--c-surface);text-align:center}.subjects-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:3rem;font-family:var(--f-heading);color:var(--c-text-1);letter-spacing:-.8px;line-height:1.25}.subjects-grid{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;max-width:700px;margin:0 auto}.subject-pill{display:inline-block;padding:.5rem 1.5rem;border:1px solid var(--c-border);border-radius:var(--r-pill);font-size:1rem;font-family:Source Code Pro,monospace;color:var(--c-text-1);background:var(--c-surface);cursor:default;transition:all .3s ease}.subject-pill:hover{background:var(--c-primary);color:#fff;border-color:var(--c-primary);box-shadow:0 4px 40px #5e5ce666}.trusted-section{padding:5rem 0;background:var(--c-bg)}.trusted-header{text-align:center;max-width:548px;margin:0 auto 4rem}.trusted-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;font-family:var(--f-heading);color:var(--c-text-1);letter-spacing:-.8px;margin-bottom:1rem;line-height:1.25}.trusted-desc{font-size:1.05rem;color:var(--c-text-3);line-height:1.7;font-family:var(--f-body)}.trusted-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:900px;margin:0 auto}.trusted-stat-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:2rem 1rem;text-align:center;display:flex;flex-direction:column;gap:.5rem;transition:all .3s ease}.trusted-stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--c-primary)}.trusted-stat-number{font-size:2.5rem;font-weight:700;color:var(--c-primary);font-family:var(--f-heading);line-height:1}.trusted-stat-label{font-size:.85rem;color:var(--c-text-3);font-family:var(--f-body)}.cta-section{padding:7.5rem 0;background:linear-gradient(180deg,#fff,#f5f3ff 40%,#eeedf8);text-align:center;position:relative;z-index:1;overflow:hidden}.cta-deco{position:absolute;color:var(--c-primary);opacity:.08;pointer-events:none}.cta-deco-1{width:80px;height:110px;top:15%;left:8%;animation:float 8s ease-in-out infinite}.cta-deco-2{width:70px;height:70px;bottom:12%;right:10%;animation:float 10s ease-in-out infinite reverse}.cta-content{max-width:580px;margin:0 auto;position:relative}.cta-title{font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:700;margin:0 0 1.25rem;font-family:var(--f-heading);letter-spacing:-.8px;line-height:1.2;color:var(--c-text-1)}.cta-description{font-size:1rem;color:var(--c-text-3);margin:0 0 2.5rem;line-height:1.7;font-family:var(--f-body)}.btn-cta-primary{background:var(--c-primary);color:#fff;padding:.9rem 2.5rem;border-radius:36px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;box-shadow:0 4px 20px #5e5ce633;font-family:var(--f-heading);cursor:pointer}.btn-cta-primary:hover{background:#4e4cc6;color:#fff;transform:translateY(-3px);box-shadow:0 8px 32px #5e5ce64d}.btn-cta-primary .btn-icon{transition:transform .2s ease}.btn-cta-primary:hover .btn-icon{transform:translate(3px)}.cta-note{margin-top:1.5rem;font-size:.82rem;color:var(--c-text-3);font-family:var(--f-body)}.btn-white-large{display:none}.homepage-footer{background:#f7f7fe;color:var(--c-text-2);padding:4rem 0 2rem;border-top:1px solid var(--c-border)}.footer-content{display:grid;grid-template-columns:auto 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}.footer-logo-img{width:56px;height:64px}.footer-brand-name{font-size:1.75rem;font-weight:600;color:var(--c-text-1);margin-top:1rem;font-family:var(--f-body);line-height:1.3}.footer-title{font-size:.78rem;font-weight:700;margin:0 0 1.25rem;color:var(--c-text-1);text-transform:uppercase;letter-spacing:.5px;font-family:var(--f-body)}.footer-social{display:flex;gap:.75rem;align-items:center}.social-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--c-border-soft);color:var(--c-text-1);transition:all .2s ease}.social-icon:hover{background:var(--c-border);color:var(--c-primary)}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.footer-links a{color:var(--c-text-3);text-decoration:none;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.42px;transition:color .2s ease;font-family:var(--f-body)}.footer-links a:hover{color:var(--c-primary)}.footer-app-buttons{display:flex;flex-direction:column;gap:.75rem}.footer-app-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--r-md);font-size:.78rem;font-weight:600;text-decoration:none;text-transform:uppercase;letter-spacing:.42px;font-family:var(--f-body);transition:all .25s cubic-bezier(.4,0,.2,1);border:1px solid var(--c-border)}.footer-app-btn--primary{background:var(--c-surface);color:var(--c-text-1);box-shadow:0 3px 0 0 var(--c-border)}.footer-app-btn--primary:hover{background:var(--c-primary);color:#fff;border-color:var(--c-primary);box-shadow:0 4px 24px #5e5ce640;transform:translateY(-2px)}.footer-app-btn--dark{background:var(--c-text-1);color:#fff;border-color:var(--c-text-1);box-shadow:0 3px #0e0c154d}.footer-app-btn--dark:hover{background:var(--c-primary);border-color:var(--c-primary);box-shadow:0 4px 24px #5e5ce640;transform:translateY(-2px)}.footer-bottom{padding-top:2rem;border-top:1px solid var(--c-border-soft)}.footer-copyright{font-size:.8rem;color:var(--c-text-3);margin:0;font-family:var(--f-body)}@media(max-width:1024px){.features-bento{grid-template-columns:repeat(2,1fr)}.ft-card--hero,.ft-card--wide{grid-column:span 2}.testimonials-grid{grid-template-columns:repeat(2,1fr)}.how-steps-container{grid-template-columns:1fr;gap:1rem}.navbar-menu{display:none}.footer-content{grid-template-columns:1fr 1fr}.deco-math-1{width:100px;height:100px;top:5%;left:3%}.deco-math-2{width:90px;height:90px}}@media(max-width:768px){.hero-section{padding:4rem 0 2.5rem;min-height:auto}.hero-title{font-size:2.25rem;letter-spacing:-1px}.hero-actions{flex-direction:column;align-items:center}.hero-stats{flex-direction:column;gap:0}.stat-item{border-radius:0!important;box-shadow:inset -1px 0 0 var(--c-border)!important}.stat-item:first-child{border-radius:var(--r-lg) var(--r-lg) 0 0!important}.stat-item:last-child{border-radius:0 0 var(--r-lg) var(--r-lg)!important}.stat-item:not(:last-child){border-bottom:none}.features-bento,.testimonials-grid{grid-template-columns:1fr}.ft-card--hero,.ft-card--wide{grid-column:span 1}.footer-content{grid-template-columns:1fr;gap:1.5rem}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}.cta-content{padding:3rem 1.5rem}.deco-math-1{width:80px;height:80px;opacity:.5}.deco-math-2{width:70px;height:70px;opacity:.5}}@media(max-width:480px){.hero-title{font-size:1.85rem}.hero-description{font-size:.9rem}.ft-card{padding:1.5rem}.deco-math{display:none}}.page-hero{padding:120px 0 80px;background:linear-gradient(135deg,#30302e,#141413);color:#faf9f5;text-align:center;position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.1}.page-title{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;position:relative;z-index:1}.page-subtitle{font-size:1.25rem;opacity:.95;max-width:700px;margin:0 auto;line-height:1.8;position:relative;z-index:1}.section-title{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:3rem;color:#1a202c}.section-text{font-size:1.1rem;line-height:1.8;color:#4a5568;margin-bottom:1.5rem}.features-page-hero{padding:8rem 0 4rem;background:var(--c-bg, #fafaff);text-align:center;position:relative;overflow:hidden}.features-hero-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(94,92,230,.06) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}.features-hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.features-hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;line-height:1.15;letter-spacing:-1.5px;margin:0 0 1.25rem;font-family:Be Vietnam Pro,sans-serif;color:var(--c-text-1, #0e0c15)}.features-hero-desc{font-size:1.05rem;line-height:1.7;color:var(--c-text-3, #6e6a80);max-width:560px;margin:0 auto}.features-page-grid{padding:2rem 0 5rem;background:var(--c-surface, #ffffff);position:relative;overflow:hidden}.fp-bento{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.fp-card{padding:2rem 1.75rem 1.75rem}.fp-details{list-style:none;padding:0;margin:.5rem 0 0;position:relative;z-index:1}.fp-details li{display:flex;align-items:center;gap:.75rem;padding:.6rem 0;font-size:.85rem;color:var(--c-text-2, #3f3a52);border-bottom:1px solid var(--c-border-soft, rgba(0, 0, 0, .04));line-height:1.5}.fp-details li:last-child{border-bottom:none}.fp-check{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;min-width:22px;border-radius:6px;background:linear-gradient(135deg,#5e5ce61f,#858dff33);color:#141413}.fp-check svg{width:13px;height:13px}.fp-check--green{background:linear-gradient(135deg,#10b9811f,#34d39933);color:#141413}.fp-check--blue{background:linear-gradient(135deg,#3b82f61f,#60a5fa33);color:#141413}.fp-check--orange{background:linear-gradient(135deg,#f59e0b1f,#fbbf2433);color:#141413}.fp-check--pink{background:linear-gradient(135deg,#ec48991f,#f472b633);color:#141413}.fp-check--teal{background:linear-gradient(135deg,#14b8a61f,#2dd4bf33);color:#141413}.about-hero{padding:8rem 0 5rem;background:var(--c-bg, #fafaff);text-align:center;position:relative;overflow:hidden}.about-hero-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(94,92,230,.06) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}.about-hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.about-hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;line-height:1.15;letter-spacing:-1.5px;margin:0 0 1.25rem;font-family:Be Vietnam Pro,sans-serif;color:var(--c-text-1, #0e0c15)}.about-hero-desc{font-size:1.1rem;line-height:1.7;color:var(--c-text-3, #6e6a80);max-width:580px;margin:0 auto}.about-story-section{padding:5rem 0;background:var(--c-surface, #ffffff);position:relative}.about-story-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(90%,800px);height:1px;background:linear-gradient(90deg,transparent,var(--c-border, rgba(0, 0, 0, .06)),transparent)}.about-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center}.about-story-text{max-width:520px}.about-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;letter-spacing:.3px;text-transform:uppercase;color:var(--c-primary, #c96442);margin-bottom:1.25rem}.about-label svg{opacity:.7}.about-label--blue{color:#3b82f6}.about-heading{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:var(--c-text-1, #0e0c15);margin:0 0 1.25rem;font-family:Be Vietnam Pro,sans-serif;line-height:1.2;letter-spacing:-.8px}.about-body{font-size:.95rem;color:var(--c-text-3, #6e6a80);line-height:1.8;margin:0 0 1rem}.about-story-visual{display:flex;justify-content:center}.about-visual-card{background:#ffffffd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--c-border-soft, rgba(0, 0, 0, .04));border-radius:var(--r-xl, 20px);padding:2.5rem 2rem;position:relative;overflow:hidden;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .04));transition:all .4s cubic-bezier(.4,0,.2,1);max-width:380px;width:100%}.about-visual-card:before{content:"";position:absolute;width:200px;height:200px;border-radius:50%;top:-60px;right:-60px;background:radial-gradient(circle,rgba(94,92,230,.1),transparent 70%);filter:blur(30px);pointer-events:none}.about-visual-card:hover{transform:translateY(-6px);box-shadow:0 4px 16px #c964421f,0 12px 40px #5e5ce61a;border-color:#5e5ce61f}.about-visual-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#5e5ce61f,#858dff2e);color:var(--c-primary, #c96442);margin-bottom:1.25rem}.about-visual-icon svg{width:28px;height:28px}.about-visual-title{font-size:1.25rem;font-weight:700;color:var(--c-text-1, #0e0c15);margin:0 0 .5rem;font-family:Be Vietnam Pro,sans-serif;letter-spacing:-.3px}.about-visual-desc{font-size:.85rem;color:var(--c-text-3, #6e6a80);line-height:1.6;margin:0 0 1.5rem}.about-visual-stats{display:flex;gap:0;border-top:1px solid var(--c-border-soft, rgba(0, 0, 0, .06));padding-top:1.25rem}.about-stat{flex:1;text-align:center;position:relative}.about-stat:not(:last-child):after{content:"";position:absolute;right:0;top:10%;height:80%;width:1px;background:var(--c-border-soft, rgba(0, 0, 0, .06))}.about-stat-num{display:block;font-size:1.5rem;font-weight:700;color:var(--c-primary, #c96442);font-family:Be Vietnam Pro,sans-serif;letter-spacing:-.5px;line-height:1;margin-bottom:.25rem}.about-stat-label{font-size:.7rem;color:var(--c-text-3, #6e6a80);text-transform:uppercase;letter-spacing:.3px;font-weight:500}.about-vision-section{padding:5rem 0;background:var(--c-bg, #fafaff);position:relative;overflow:hidden}.about-vision-card{display:flex;align-items:center;gap:2.5rem;background:#ffffffe6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--c-border-soft, rgba(0, 0, 0, .04));border-radius:var(--r-xl, 20px);padding:3rem;position:relative;z-index:1;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .04));transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden}.about-vision-card:before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;top:-100px;left:-80px;background:radial-gradient(circle,rgba(59,130,246,.08),transparent 70%);filter:blur(40px);pointer-events:none}.about-vision-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #3b82f60f,0 12px 40px #3b82f614;border-color:#3b82f61f}.about-vision-icon{flex-shrink:0;width:72px;height:72px;border-radius:20px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#3b82f61a,#60a5fa29);color:#141413}.about-vision-icon svg{width:34px;height:34px}.about-vision-content{flex:1;min-width:0}.about-values-section{padding:5rem 0 6rem;background:var(--c-surface, #ffffff);position:relative}.about-values-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(90%,800px);height:1px;background:linear-gradient(90deg,transparent,var(--c-border, rgba(0, 0, 0, .06)),transparent)}.about-section-header{text-align:center;margin-bottom:3rem;display:flex;flex-direction:column;align-items:center}.about-values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;max-width:800px;margin:0 auto}.about-value-card{min-height:180px}.about-benefits-section{padding:5rem 0;background:var(--c-bg, #fafaff);position:relative;overflow:hidden}.about-benefits-desc{font-size:1rem;color:var(--c-text-3, #6e6a80);max-width:480px;margin:0 auto;line-height:1.6;text-align:center}.about-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;position:relative;z-index:1}.about-benefit-card{padding:2rem 1.75rem 1.75rem}.about-benefit-highlight{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--c-primary-soft, rgba(201, 100, 66, .12));border-radius:var(--r-md, 12px);margin-top:auto;position:relative;z-index:1}.about-benefit-stat{font-size:1.1rem;font-weight:700;color:var(--c-primary, #c96442);font-family:Be Vietnam Pro,sans-serif;letter-spacing:-.3px;white-space:nowrap}.about-benefit-stat-text{font-size:.78rem;color:var(--c-text-2, #3f3a52);line-height:1.4}.about-cta-section{padding:5rem 0 6rem;background:var(--c-surface, #ffffff);position:relative}.about-cta-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(90%,800px);height:1px;background:linear-gradient(90deg,transparent,var(--c-border, rgba(0, 0, 0, .06)),transparent)}.about-cta-card{text-align:center;padding:4rem 2rem;border-radius:var(--r-xl, 20px);background:var(--c-bg, #fafaff);border:1px solid var(--c-border-soft, rgba(0, 0, 0, .04));position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center}.about-cta-glow{position:absolute;width:400px;height:400px;border-radius:50%;top:-150px;left:50%;transform:translate(-50%);background:radial-gradient(circle,rgba(94,92,230,.06),transparent 70%);filter:blur(50px);pointer-events:none}.about-cta-title{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:var(--c-text-1, #0e0c15);margin:0 0 1rem;font-family:Be Vietnam Pro,sans-serif;line-height:1.2;letter-spacing:-.8px}.about-cta-desc{font-size:1rem;color:var(--c-text-3, #6e6a80);max-width:500px;margin:0 auto 2rem;line-height:1.7}.about-cta-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}@media(max-width:968px){.about-story-grid{grid-template-columns:1fr;gap:2.5rem}.about-story-text{max-width:100%}.about-story-visual{order:-1}.about-visual-card{max-width:100%}.about-vision-card{flex-direction:column;text-align:center;padding:2.5rem 2rem;gap:1.5rem}.about-vision-content .about-label{justify-content:center}.about-values-grid{grid-template-columns:1fr}.about-benefits-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}@media(max-width:640px){.about-hero{padding:5rem 0 3rem}.about-hero-title{font-size:2rem;letter-spacing:-.8px}.about-hero-desc{font-size:.95rem}.about-story-section,.about-vision-section,.about-values-section,.about-benefits-section,.about-cta-section{padding:3rem 0}.about-heading{font-size:1.5rem}.about-vision-card{padding:2rem 1.5rem}.about-visual-stats{flex-direction:column;gap:1rem}.about-stat:not(:last-child):after{display:none}.about-stat{padding-bottom:1rem;border-bottom:1px solid var(--c-border-soft, rgba(0, 0, 0, .06))}.about-stat:last-child{padding-bottom:0;border-bottom:none}.about-cta-card{padding:3rem 1.5rem}.about-cta-title{font-size:1.5rem}}.pricing-section{padding:100px 0;background:#f8f9fa}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem;max-width:1200px;margin:0 auto 5rem}.pricing-card{background:#fff;border-radius:20px;padding:3rem 2.5rem;box-shadow:0 10px 40px #00000014;transition:all .3s ease;position:relative;border:2px solid transparent}.pricing-card.highlighted{border-color:#667eea;transform:scale(1.05);box-shadow:0 20px 60px #667eea40}.pricing-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 20px 60px #00000026}.pricing-card.highlighted:hover{transform:translateY(-10px) scale(1.07)}.popular-badge{position:absolute;top:-15px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#141413;padding:.5rem 1.5rem;border-radius:50px;font-size:.85rem;font-weight:700;box-shadow:0 4px 15px #667eea66}.plan-name{font-size:1.5rem;font-weight:700;color:#1a202c;margin-bottom:1rem;text-align:center}.plan-price{text-align:center;margin-bottom:1rem}.price{font-size:3rem;font-weight:800;color:#667eea;display:block}.period{font-size:1rem;color:#718096}.plan-description{text-align:center;color:#4a5568;margin-bottom:2rem;font-size:.95rem}.plan-features{list-style:none;padding:0;margin:2rem 0}.plan-features li{padding:.75rem 0;color:#2d3748;display:flex;align-items:center;font-size:.95rem}.pricing-faq{max-width:1000px;margin:5rem auto 0}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.faq-item{background:#fff;padding:2rem;border-radius:15px;box-shadow:0 5px 20px #0000000d;transition:all .3s ease}.faq-item:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000001a}.faq-item h4{font-size:1.1rem;font-weight:600;color:#1a202c;margin-bottom:1rem}.faq-item p{color:#4a5568;line-height:1.6;font-size:.95rem}.contact-section{padding:100px 0;background:#fff}.contact-content{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;max-width:1200px;margin:0 auto}.contact-info{display:flex;flex-direction:column;gap:2rem}.info-card{background:linear-gradient(135deg,#f8f9fa,#fff);padding:2rem;border-radius:15px;box-shadow:inset 3px 0 #667eea;transition:all .3s ease}.info-card:hover{transform:translate(10px);box-shadow:0 10px 30px #0000001a}.info-icon{font-size:2.5rem;margin-bottom:1rem;display:block}.info-card h3{font-size:1.2rem;font-weight:700;color:#1a202c;margin-bottom:.75rem}.info-card p{color:#4a5568;margin:.5rem 0;font-size:.95rem}.contact-form-wrapper{background:linear-gradient(135deg,#f8f9fa,#fff);padding:3rem;border-radius:20px;box-shadow:0 10px 40px #00000014}.contact-form-wrapper h2{font-size:2rem;font-weight:700;color:#1a202c;margin-bottom:2rem}.contact-form .form-group{margin-bottom:1.5rem}.contact-form label{display:block;font-weight:600;color:#2d3748;margin-bottom:.5rem;font-size:.95rem}.contact-form .form-control{width:100%;padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;transition:all .3s ease;background:#fff}.contact-form .form-control:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.contact-form textarea.form-control{resize:vertical;min-height:120px}@media(max-width:968px){.page-title{font-size:2.5rem}.page-subtitle{font-size:1.1rem}.fp-bento{grid-template-columns:repeat(2,1fr)}.fp-bento .ft-card--hero,.fp-bento .ft-card--wide{grid-column:span 2}.contact-content{grid-template-columns:1fr;gap:3rem}.pricing-grid{grid-template-columns:1fr}.pricing-card.highlighted{transform:scale(1)}.values-grid,.faq-grid{grid-template-columns:1fr}}@media(max-width:640px){.page-hero,.features-page-hero{padding:5rem 0 2.5rem}.page-title{font-size:2rem}.section-title{font-size:1.8rem}.fp-bento{grid-template-columns:1fr}.fp-bento .ft-card--hero,.fp-bento .ft-card--wide{grid-column:span 1}.fp-card{padding:1.5rem}.contact-form-wrapper{padding:2rem 1.5rem}.cta-content h2{font-size:2rem}}@keyframes contactFadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.contact-animate-in{animation:contactFadeUp .7s cubic-bezier(.22,1,.36,1) both}.contact-hero{padding:8rem 0 4rem;background:var(--c-bg, #fafaff);text-align:center;position:relative;overflow:hidden}.contact-hero-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(94,92,230,.06) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}.contact-hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.contact-hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;line-height:1.15;letter-spacing:-1.5px;margin:0 0 1.25rem;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);color:var(--c-text-1, #0e0c15)}.contact-hero-desc{font-size:1.1rem;line-height:1.7;color:var(--c-text-3, #756b85);max-width:560px;margin:0 auto}.contact-main-section{padding:1rem 0 5rem;background:var(--c-bg, #fafaff);position:relative}.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:2rem;max-width:1060px;margin:0 auto;align-items:start}.contact-info-panel{display:flex;flex-direction:column;gap:1.25rem}.contact-info-card{background:#ffffffe0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-xl, 24px);padding:1.75rem 1.5rem;position:relative;overflow:hidden;box-shadow:var(--shadow-sm, 0 2px 4px rgba(14, 12, 21, .03), 0 4px 12px rgba(14, 12, 21, .04));transition:all .3s ease;display:flex;align-items:flex-start;gap:1rem}.contact-info-card:before{content:"";position:absolute;width:140px;height:140px;border-radius:50%;top:-50px;right:-50px;background:radial-gradient(circle,rgba(94,92,230,.1),transparent 70%);filter:blur(25px);opacity:0;transition:opacity .5s ease;pointer-events:none;z-index:0}.contact-info-card:hover:before{opacity:1}.contact-info-card:hover{transform:translateY(-6px);box-shadow:0 4px 16px #c964421f,0 12px 36px #5e5ce61a;border-color:#5e5ce61f}.contact-info-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;border-radius:14px;background:linear-gradient(135deg,#5e5ce61a,#858dff26);color:var(--c-primary, #c96442);font-size:1.25rem;position:relative;z-index:1;transition:transform .25s ease}.contact-info-card:hover .contact-info-icon{transform:scale(1.08)}.contact-info-text{position:relative;z-index:1}.contact-info-title{font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);font-size:1.05rem;font-weight:700;color:var(--c-text-1, #0e0c15);margin:0 0 .35rem;letter-spacing:-.2px}.contact-info-value{font-size:.88rem;color:var(--c-text-3, #756b85);line-height:1.6;margin:0}.contact-trust-notes{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.contact-trust-note{display:flex;align-items:center;gap:.65rem;padding:.85rem 1.25rem;background:#ffffffb3;border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-md, 16px);font-size:.82rem;color:var(--c-text-2, #3f3a52);line-height:1.45}.contact-trust-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;border-radius:8px;background:linear-gradient(135deg,#10b9811f,#34d39933);color:#141413;font-size:.78rem}.contact-form-card{background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-xl, 24px);padding:2.5rem 2rem;box-shadow:0 2px 4px #0e0c1508,0 8px 24px #0e0c150f;position:relative;overflow:hidden}.contact-form-card:before{content:"";position:absolute;width:200px;height:200px;border-radius:50%;top:-80px;right:-60px;background:radial-gradient(circle,rgba(201,100,66,.12),transparent 70%);filter:blur(35px);pointer-events:none;z-index:0}.contact-form-title{font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);font-size:1.35rem;font-weight:700;color:var(--c-text-1, #0e0c15);letter-spacing:-.3px;margin:0 0 .4rem;position:relative;z-index:1}.contact-form-subtitle{font-size:.88rem;color:var(--c-text-3, #756b85);margin:0 0 2rem;line-height:1.5;position:relative;z-index:1}.contact-form{display:flex;flex-direction:column;gap:1.25rem;position:relative;z-index:1}.contact-form-group{display:flex;flex-direction:column;gap:.4rem}.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.contact-form-label{font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);font-size:.82rem;font-weight:600;color:var(--c-text-2, #3f3a52);letter-spacing:.1px}.contact-form-label span{color:var(--c-primary, #c96442);margin-left:2px}.contact-form-input,.contact-form-select,.contact-form-textarea{width:100%;padding:.85rem 1rem;font-size:.88rem;font-family:inherit;color:var(--c-text-1, #0e0c15);background:#fffc;border:1.5px solid var(--c-border, #e8e5f0);border-radius:var(--r-md, 16px);outline:none;transition:all .25s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.contact-form-input::-moz-placeholder,.contact-form-textarea::-moz-placeholder{color:var(--c-text-3, #756b85);opacity:.6}.contact-form-input::placeholder,.contact-form-textarea::placeholder{color:var(--c-text-3, #756b85);opacity:.6}.contact-form-input:focus,.contact-form-select:focus,.contact-form-textarea:focus{border-color:var(--c-primary, #c96442);box-shadow:0 0 0 4px #5e5ce61a;background:#fff}.contact-form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23756B85' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}.contact-form-textarea{resize:vertical;min-height:120px;line-height:1.6}.contact-submit-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.95rem 1.5rem;background:var(--c-primary, #c96442);color:#141413;border:none;border-radius:var(--r-md, 16px);font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);font-size:.92rem;font-weight:600;letter-spacing:-.1px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #5e5ce633,0 4px 16px #5e5ce626;margin-top:.5rem}.contact-submit-btn:hover{background:#4e4cc6;transform:translateY(-3px);box-shadow:0 4px 12px #5e5ce640,0 8px 32px #5e5ce633}.contact-submit-btn:active{transform:translateY(-1px)}.contact-submit-btn svg{opacity:.9;transition:transform .2s ease}.contact-submit-btn:hover svg{transform:translate(3px)}@media(max-width:968px){.contact-grid{grid-template-columns:1fr;max-width:560px;margin:0 auto}.contact-info-panel{order:2}.contact-form-card{order:1}}@media(max-width:640px){.contact-hero{padding:5rem 0 2.5rem}.contact-hero-title{font-size:2rem;letter-spacing:-.8px}.contact-hero-desc{font-size:.95rem}.contact-main-section{padding:.5rem 0 3rem}.contact-form-card{padding:1.75rem 1.5rem}.contact-form-row{grid-template-columns:1fr}.contact-info-card{padding:1.5rem 1.25rem}.contact-info-card:hover{transform:none}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.45"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}@keyframes fc-slide-up{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fc-pop-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes fc-dot{0%,to{transform:translateY(0);opacity:.4}50%{transform:translateY(-4px);opacity:1}}.fc-root{position:fixed;bottom:1.5rem;right:1.5rem;z-index:9000;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;font-family:Be Vietnam Pro,sans-serif}.fc-trigger{display:flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;border:none;border-radius:50px;padding:.7rem 1.1rem .7rem .9rem;font-size:.8rem;font-weight:700;font-family:inherit;cursor:pointer;box-shadow:0 4px 16px #6366f166,0 1px 4px #6366f133;transition:transform .15s cubic-bezier(.22,1,.36,1),box-shadow .15s;animation:fc-pop-in .25s cubic-bezier(.22,1,.36,1) both;letter-spacing:.02em}.fc-trigger:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 24px #6366f173}.fc-trigger:active{transform:scale(.97)}.fc-trigger-label{font-weight:700}.fc-panel{width:340px;max-width:calc(100vw - 2rem);background:#fff;border-radius:18px;border:1px solid #e5e7eb;box-shadow:0 4px 6px #0000000a,0 20px 40px -8px #6366f124;display:flex;flex-direction:column;overflow:hidden;animation:fc-slide-up .26s cubic-bezier(.22,1,.36,1) both;height:min(580px,calc(100vh - 5rem));max-height:none}.fc-header{display:flex;align-items:center;justify-content:space-between;padding:.8rem .95rem;background:linear-gradient(135deg,#6366f1,#818cf8)}.fc-header-info{display:flex;align-items:center;gap:.55rem;min-width:0}.fc-header-avatar{width:30px;height:30px;border-radius:9px;background:#fff3;border:1.5px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.fc-header-title{font-size:.85rem;font-weight:700;color:#fff;line-height:1.2}.fc-header-sub{font-size:.7rem;color:#ffffffb8;margin-top:.05rem}.fc-header-actions{display:flex;gap:.2rem}.fc-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:0;width:26px;height:26px;border:none;border-radius:7px;background:#ffffff26;color:#fff;cursor:pointer;transition:background .15s}.fc-icon-btn:hover{background:#ffffff47}.fc-icon-btn--active{background:#ffffff4d}.fc-messages{flex:1;min-height:0;overflow-y:auto;padding:.8rem .85rem;display:flex;flex-direction:column;gap:.6rem;scroll-behavior:smooth}.fc-messages::-webkit-scrollbar{width:4px}.fc-messages::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:999px}.fc-empty{margin:auto;text-align:center;padding:1.5rem 1rem;color:#9ca3af}.fc-empty-icon{width:46px;height:46px;margin:0 auto .7rem;border-radius:12px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);display:flex;align-items:center;justify-content:center;color:#6366f1}.fc-empty p{font-size:.82rem;line-height:1.55}.fc-msg{display:flex;gap:.4rem;align-items:flex-end}.fc-msg-user{flex-direction:row-reverse}.fc-msg-avatar{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 4px #6366f140}.fc-msg-bubble{max-width:82%;padding:.55rem .72rem;border-radius:12px;font-size:.82rem;line-height:1.55;word-break:break-word;white-space:pre-wrap}.fc-msg-ai .fc-msg-bubble{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px 12px 12px;color:#111827}.fc-msg-user .fc-msg-bubble{background:#eef2ff;border:1px solid #c7d2fe;border-radius:12px 4px 12px 12px;color:#3730a3}.fc-typing{display:flex!important;gap:4px;align-items:center;padding:.6rem .8rem!important;width:54px}.fc-typing span{display:block;width:6px;height:6px;border-radius:999px;background:#6366f1;opacity:.5;animation:fc-dot 1s infinite ease-in-out}.fc-typing span:nth-child(2){animation-delay:.12s}.fc-typing span:nth-child(3){animation-delay:.24s}.fc-error{font-size:.77rem;color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.4rem .6rem}.fc-input-wrap{display:flex;align-items:flex-end;gap:.4rem;padding:.65rem .8rem;border-top:1px solid #f3f4f6;background:#fafafa}.fc-textarea{flex:1;resize:none;border:1px solid #e5e7eb;border-radius:10px;padding:.45rem .65rem;font-size:.82rem;font-family:inherit;color:#111827;background:#fff;outline:none;line-height:1.5;min-height:34px;max-height:100px;transition:border-color .15s,box-shadow .15s}.fc-textarea:focus{border-color:#a5b4fc;box-shadow:0 0 0 3px #6366f11a}.fc-textarea::-moz-placeholder{color:#d1d5db}.fc-textarea::placeholder{color:#d1d5db}.fc-textarea:disabled{opacity:.6;cursor:not-allowed}.fc-send-btn{display:flex;align-items:center;justify-content:center;padding:0;width:32px;height:32px;border-radius:999px;border:none;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;cursor:pointer;flex-shrink:0;box-shadow:0 2px 8px #6366f166;transition:background .15s,transform .12s,box-shadow .15s,opacity .15s}.fc-send-btn:hover:not(:disabled){background:linear-gradient(135deg,#4f46e5,#6366f1);transform:translateY(-1px) scale(1.05);box-shadow:0 4px 14px #6366f180}.fc-send-btn:active:not(:disabled){transform:scale(.93)}.fc-send-btn:disabled{background:#e5e7eb;color:#a8a8b3;box-shadow:none;cursor:not-allowed;opacity:.6}.fc-sessions{flex:1;min-height:0;display:flex;flex-direction:column;padding:.65rem .7rem;gap:.5rem;overflow:hidden}.fc-new-chat-btn{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:0 .75rem;width:100%;height:36px;border:1.5px dashed #c7d2fe;border-radius:10px;background:#eef2ff;color:#6366f1;font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s}.fc-new-chat-btn:hover:not(:disabled){background:#e0e7ff;border-color:#a5b4fc}.fc-new-chat-btn:disabled{opacity:.5;cursor:not-allowed}.fc-session-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.2rem}.fc-session-list::-webkit-scrollbar{width:4px}.fc-session-list::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:999px}.fc-session-empty{text-align:center;padding:2rem 1rem;color:#9ca3af;font-size:.78rem}.fc-session-item{display:flex;flex-direction:column;gap:.15rem;padding:.5rem .65rem;border:none;border-radius:8px;background:transparent;cursor:pointer;text-align:left;transition:background .12s;width:100%;font-family:inherit}.fc-session-item:hover{background:#f3f4f6}.fc-session-item--active{background:#eef2ff}.fc-session-item--active:hover{background:#e0e7ff}.fc-session-title{font-size:.8rem;font-weight:500;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.fc-session-item--active .fc-session-title{color:#4f46e5}.fc-session-time{font-size:.7rem;color:#9ca3af;display:block}@media(max-width:480px){.fc-root{bottom:1rem;right:1rem}.fc-panel{width:calc(100vw - 2rem)}}.navbar-top{height:68px;background:#f5f4edf2;border-bottom:1px solid #e8e6dc;backdrop-filter:blur(12px) saturate(130%);-webkit-backdrop-filter:blur(12px) saturate(130%);position:fixed;top:0;left:var(--sidebar-w, 248px);right:0;z-index:100;display:flex;align-items:center;padding:0 1.5rem;transition:left .22s ease}.navbar-content{width:100%;display:flex;align-items:center;justify-content:flex-end;gap:1rem}.navbar-actions{display:flex;align-items:center;gap:.5rem;min-width:0;flex-shrink:0}.navbar-action-btn{position:relative;width:38px;height:38px;padding:0;line-height:1;border:1px solid #e8e6dc;background:#faf9f5;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#4d4c48;transition:all var(--transition-fast);box-shadow:0 0 0 1px #e8e6dc73}.navbar-action-btn .action-icon{width:18px;height:18px;display:inline-block;color:currentColor;stroke:currentColor;flex-shrink:0}.navbar-action-btn:hover{border-color:#d1cfc5;color:#8f3f26;background:#fff;box-shadow:0 0 0 1px #d1cfc5,0 4px 20px #14141312}.navbar-action-btn:focus-visible,.token-chip:focus-visible,.mark-all-read:focus-visible,.view-all-notifications:focus-visible{outline:2px solid #3898ec;outline-offset:2px}.notification-badge{position:absolute;top:-4px;right:-5px;background:#b53333;color:#faf9f5;font-size:.62rem;font-weight:600;min-width:17px;padding:0 .22rem;height:17px;border-radius:999px;display:flex;align-items:center;justify-content:center;border:2px solid #f5f4ed}.navbar-user-badge{display:flex;align-items:center;gap:.55rem;max-width:min(100%,230px);padding:.35rem .5rem;border:1px solid #e8e6dc;background:#faf9f5;border-radius:14px;min-width:0;box-shadow:0 0 0 1px #e8e6dc80}.token-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .6rem;border-radius:999px;border:1px solid #e8e6dc;background:#faf9f5;color:#4d4c48;text-decoration:none;font-size:.78rem;line-height:1;box-shadow:0 0 0 1px #e8e6dc73}.token-chip:hover{border-color:#d1cfc5;background:#fff;color:#141413;box-shadow:0 0 0 1px #d1cfc5,0 4px 14px #1414130f}.token-chip-label{opacity:.78;font-weight:600}.navbar-user-avatar{width:34px;height:34px;border-radius:50%;background:#b55738;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0;overflow:hidden}.navbar-user-avatar-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.navbar-user-meta{min-width:0;max-width:150px}.navbar-user-name{font-size:.83rem;font-weight:600;color:#141413;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.navbar-user-role{font-size:.74rem;color:#5e5d59;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notifications-dropdown{position:absolute;top:calc(100% + .6rem);right:1.25rem;width:356px;max-height:500px;background:#faf9f5;border:1px solid #e8e6dc;border-radius:14px;box-shadow:0 0 0 1px #e8e6dca6,0 20px 44px #14141324;overflow:hidden}.notifications-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0eee6}.notifications-header h3{margin:0;font-size:1rem;font-weight:500;color:#141413;font-family:var(--f-heading)}.mark-all-read{padding:.375rem .75rem;border:1px solid #e8e6dc;background:#f5f4ed;color:#8f3f26;font-size:.813rem;font-weight:600;cursor:pointer;border-radius:10px;transition:all var(--transition-fast)}.mark-all-read:hover{background:#fff;border-color:#d1cfc5}.notifications-list{max-height:350px;overflow-y:auto}.notification-item{display:flex;gap:.9rem;padding:1rem 1.25rem;border-bottom:1px solid #f0eee6;transition:background-color var(--transition-fast);cursor:pointer;text-align:left;width:100%;background:transparent;border-left:none;border-right:none;border-top:none;font-family:inherit}.notification-item:hover{background:#f5f4ed}.notification-item.unread{background:#c9644212}.notification-icon{font-size:1.5rem;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-title{font-size:.9rem;font-weight:600;color:#141413;margin-bottom:.25rem}.notification-message{font-size:.82rem;color:#5e5d59;margin-bottom:.25rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-time{font-size:.74rem;color:#87867f}.notification-empty-state{padding:1rem;text-align:center;color:#87867f;font-size:.88rem}.view-all-notifications{display:block;text-align:center;padding:.875rem;color:#c96442;text-decoration:none;font-size:.88rem;font-weight:600;border-top:1px solid #f0eee6;transition:background-color var(--transition-fast)}.view-all-notifications:hover{background:#f5f4ed}@media(max-width:1280px){.navbar-top{padding:0 1rem}.navbar-user-badge{max-width:210px}.navbar-user-meta{max-width:124px}}@media(max-width:1100px){.navbar-user-role{display:none}.navbar-user-badge{max-width:170px}.navbar-user-meta{max-width:90px}}@media(max-width:980px){.help-btn{display:none}.navbar-user-badge{max-width:120px;gap:.4rem}.navbar-user-meta{max-width:72px}}@media(max-width:860px){.navbar-user-meta{display:none}.navbar-user-badge{max-width:44px;padding:.25rem;border-radius:50%}}@media(max-width:768px){.navbar-top{left:76px;height:68px;padding:0 .85rem}.notifications-dropdown{width:300px;right:.5rem}.token-chip{display:none}}@media(max-width:540px){.navbar-top{padding:0 .6rem}.navbar-actions{gap:.35rem}.navbar-action-btn{width:36px;height:36px}.notifications-dropdown{width:calc(100vw - 98px);right:.5rem}}.sidebar{--sb-w: 248px;--sb-w-col: 64px;--sb-primary: #c96442;--sb-primary-soft: rgba(201, 100, 66, .12);--sb-primary-ring: #d1cfc5;--sb-text-1: #141413;--sb-text-2: #4d4c48;--sb-text-3: #87867f;--sb-border: #e8e6dc;--sb-border-soft: #f0eee6;--sb-bg: #f5f4ed;--sb-bg-elevated: #faf9f5;--sb-radius: 8px;--sb-radius-lg: 12px;--sb-f-body: "Be Vietnam Pro", -apple-system, sans-serif;--sb-f-head: Georgia, "Times New Roman", serif;width:var(--sb-w);min-width:var(--sb-w);height:100vh;background:var(--sb-bg);border-right:1px solid var(--sb-border);display:flex;flex-direction:column;position:sticky;left:0;top:0;z-index:110;flex-shrink:0;transition:width .22s ease,min-width .22s ease;overflow:visible}.sidebar--collapsed{width:var(--sb-w-col);min-width:var(--sb-w-col)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:0 .875rem;height:68px;border-bottom:1px solid var(--sb-border-soft);flex-shrink:0;gap:.5rem;overflow:hidden}.sidebar-logo{display:flex;align-items:center;gap:.55rem;text-decoration:none;min-width:0;flex:1;overflow:hidden}.sb-logo-icon{width:28px;height:28px;border-radius:8px;font-size:.8rem;font-weight:800;color:#fff;background:var(--sb-primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--sb-f-head)}.sb-logo-text{font-size:1rem;font-weight:500;color:var(--sb-text-1);font-family:var(--sb-f-head);line-height:1.2;letter-spacing:0;white-space:nowrap}.sidebar-nav .sb-role-label{margin-top:0;margin-bottom:.25rem}.sb-toggle{position:absolute;right:-14px;top:88px;width:14px;height:36px;border:1px solid var(--sb-border);border-left:none;border-radius:0 8px 8px 0;background:var(--sb-bg-elevated);color:var(--sb-text-2);display:flex;flex-direction:row;align-items:center;justify-content:center;gap:0;cursor:pointer;padding:0;z-index:120;box-shadow:0 0 0 1px var(--sb-primary-ring),2px 0 8px #14141314;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.sb-toggle svg{margin:0 -4px;flex-shrink:0}.sb-toggle:hover{background:var(--sb-primary-soft);color:var(--sb-primary);box-shadow:0 0 0 1px #c9644252,2px 0 10px #c9644233}.sidebar--collapsed .sb-toggle{transform:rotate(180deg);right:-14px}.sidebar-nav{flex:1;padding:.75rem .625rem;overflow-y:auto;overflow-x:hidden}.sidebar-nav::-webkit-scrollbar{width:3px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--sb-border);border-radius:3px}.sb-group{margin-bottom:.125rem}.sb-group+.sb-group{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--sb-border)}.sb-group-label{margin:.45rem .5rem .35rem;font-size:.67rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--sb-text-3);font-family:var(--sb-f-body);white-space:nowrap}.sb-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:none;background:transparent;cursor:pointer;padding:.3rem .5rem .25rem;margin-bottom:.2rem;color:var(--sb-text-3)}.sb-group-toggle-label{font-size:.67rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;font-family:var(--sb-f-body);white-space:nowrap}.sb-group-toggle-icon{color:var(--sb-text-3);transition:transform .14s ease}.sb-group-toggle-icon.is-open{transform:rotate(180deg)}.sb-group-items.is-hidden{display:none}.sb-item{position:relative;display:flex;align-items:center;gap:.6rem;width:100%;padding:.5rem .65rem;border-radius:var(--sb-radius);border:none;background:transparent;color:var(--sb-text-2);text-decoration:none;font-family:var(--sb-f-body);font-size:.91rem;font-weight:500;cursor:pointer;transition:background .14s ease,color .14s ease;white-space:nowrap;line-height:1.25}.sb-item:hover{background:var(--sb-primary-soft);color:var(--sb-primary)}.sb-item.active{background:var(--sb-primary-soft);color:var(--sb-primary);font-weight:500;box-shadow:0 0 0 1px #c9644238}.sb-item.active:before{content:"";position:absolute;left:0;top:18%;height:64%;width:2.5px;border-radius:0 2px 2px 0;background:var(--sb-primary)}.sb-icon{width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.sb-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.sb-tooltip{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#30302e;color:#faf9f5;font-size:.775rem;font-weight:500;padding:.28rem .6rem;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .14s ease;z-index:200;font-family:var(--sb-f-body)}.sb-tooltip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:#30302e}.sidebar--collapsed .sb-item:hover .sb-tooltip{opacity:1}.sb-item--logout{color:var(--sb-text-3)}.sb-item--logout:hover{color:#8a1f1f;background:transparent}.sb-role-switcher{margin-top:0;border-bottom:1px solid var(--sb-border);padding:0 .625rem .65rem;margin-bottom:.3rem}.sb-item--switch{color:var(--sb-primary);font-weight:600;background:#c9644214;box-shadow:0 0 0 1px #c9644233}.sb-item--switch:hover{background:#c9644224}.sidebar-footer{padding:.625rem;border-top:1px solid var(--sb-border);flex-shrink:0;background:var(--sb-bg-elevated)}.sidebar--collapsed .sb-item{justify-content:center;padding:.5rem}.sidebar--collapsed .sidebar-header{justify-content:center;padding:0}.sidebar--collapsed .sidebar-logo{flex:0;justify-content:center}.dashboard-layout{display:flex;min-height:100vh;background:#f5f4ed}.dashboard-main{flex:1;display:flex;flex-direction:column;min-width:0}.dashboard-content{flex:1;margin-top:68px;padding:1.5rem 1.75rem 1.75rem;overflow-y:auto}.dashboard-content--flush-bleed{padding:0}@media(max-width:768px){.dashboard-content{margin-top:68px;padding:1rem}.dashboard-content--flush-bleed{padding:0}}.module-layout-container{--mod-slate-25: #f8fbff;--mod-slate-50: #f3f7fd;--mod-slate-100: #e8eef8;--mod-slate-200: #d6e0ee;--mod-slate-300: #b7c8df;--mod-slate-500: #60748f;--mod-slate-700: #24364b;--mod-ink: #142235;--mod-primary: #1f5eff;--mod-primary-700: #184ee0;--mod-danger: #c63f4d;--mod-warn: #a36a12;--mod-success: #0d845d;font-family:Segoe UI,system-ui,sans-serif}.module-layout-container .module-page{padding:1.6rem;width:100%;max-width:1220px;margin:0 auto;display:flex;flex-direction:column;gap:1.1rem}.module-layout-container .page-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:.25rem .1rem;border:none;border-radius:0;background:none;box-shadow:none}.module-layout-container .page-header h2{margin:0;color:var(--mod-ink);font-size:1.65rem;line-height:1.2;letter-spacing:0;font-weight:800}.module-layout-container .toolbar{background:#fff;border:1px solid var(--mod-slate-100);border-radius:16px;padding:.65rem .8rem;display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;box-shadow:0 2px 8px #10233e0f}.module-layout-container .search-box{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #dbe5f2;border-radius:14px;padding:.42rem .5rem;min-width:240px;flex:1 1 360px;max-width:460px;transition:border-color .18s,box-shadow .18s,background-color .18s;box-shadow:inset 0 1px #ffffffd9,0 2px 10px #162a470a}.module-layout-container .search-box:focus-within{border-color:#8cb0ff;box-shadow:0 0 0 4px #1f5eff1a,0 8px 20px #1f5eff14;background:#fcfdff}.module-layout-container .search-box__icon{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--mod-primary);background:linear-gradient(180deg,#edf3ff,#e4eeff);border:1px solid #d7e5ff;flex-shrink:0}.module-layout-container .search-box input{border:none;outline:none;background:transparent;font-size:.9rem;font-weight:500;color:var(--mod-ink);width:100%;font-family:inherit}.module-layout-container .search-box input::-moz-placeholder{color:#9aaece}.module-layout-container .search-box input::placeholder{color:#9aaece}.module-layout-container .search-box__clear{width:30px;height:30px;border:none;background:#eef3fa;color:var(--mod-slate-500);border-radius:9px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background-color .16s ease,color .16s ease,transform .16s ease}.module-layout-container .search-box__clear:hover{background:#e2ebf7;color:var(--mod-ink);transform:scale(1.03)}.module-layout-container .row{display:flex;align-items:center;gap:.5rem}.module-layout-container .input,.module-layout-container .select,.module-layout-container .textarea{width:100%;border:1px solid var(--mod-slate-200);border-radius:10px;padding:.62rem .78rem;font-size:.92rem;color:var(--mod-ink);background:#fff;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.module-layout-container .textarea{resize:vertical}.module-layout-container .input:focus,.module-layout-container .select:focus,.module-layout-container .textarea:focus{outline:none;border-color:#6e92f5;box-shadow:0 0 0 3px #1f5eff1f}.module-layout-container .btn{border:1px solid var(--mod-primary);border-radius:11px;background:var(--mod-primary);color:#fff;padding:.57rem .9rem;font-size:.88rem;font-weight:700;letter-spacing:0;display:inline-flex;align-items:center;gap:.38rem;cursor:pointer;transition:transform .14s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease;box-shadow:0 6px 14px #1f5eff33}.module-layout-container .btn:hover{background:var(--mod-primary-700);border-color:var(--mod-primary-700);color:#fff;transform:translateY(-1px)}.module-layout-container .btn.secondary{background:#fff;color:var(--mod-slate-700);border-color:var(--mod-slate-200);box-shadow:none}.module-layout-container .btn.secondary:hover{background:var(--mod-slate-50);border-color:var(--mod-slate-300)}.module-layout-container .btn.warn{background:#fff7ea;color:var(--mod-warn);border-color:#f2d194;box-shadow:none}.module-layout-container .btn.warn:hover{background:#ffeed0}.module-layout-container .btn.danger{background:#fff4f4;color:var(--mod-danger);border-color:#f2c4c9;box-shadow:none}.module-layout-container .btn.danger:hover{background:#ffe8e9}.module-layout-container .btn:disabled,.module-layout-container .btn.secondary:disabled,.module-layout-container .btn.warn:disabled,.module-layout-container .btn.danger:disabled{opacity:.56;cursor:not-allowed;transform:none;box-shadow:none}@keyframes circle-fill{0%{stroke-dashoffset:57}to{stroke-dashoffset:0}}.module-layout-container .circle-loader{display:inline-flex;align-items:center;gap:6px;line-height:1}.module-layout-container .circle-loader svg{flex-shrink:0;transform:rotate(-90deg);overflow:visible}.module-layout-container .circle-loader .cl-track{fill:none;stroke:#6482c840;stroke-width:2.6}.module-layout-container .circle-loader .cl-fill{fill:none;stroke:var(--mod-primary);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:57;stroke-dashoffset:57;animation:circle-fill 2.3s cubic-bezier(.4,0,.2,1) forwards}.module-layout-container .btn.secondary.btn--navigating{pointer-events:none;opacity:.85;background:#eef3fa;border-color:var(--mod-primary);color:var(--mod-primary)}.module-layout-container .btn.btn--navigating:not(.secondary){pointer-events:none;opacity:.88}.module-layout-container .btn.btn--navigating:not(.secondary) .cl-track{stroke:#ffffff4d}.module-layout-container .btn.btn--navigating:not(.secondary) .cl-fill{stroke:#fff}.module-layout-container .pill-group{display:inline-flex;gap:.45rem;flex-wrap:wrap}.module-layout-container .pill-btn{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:.38rem;white-space:nowrap;border:1.5px solid var(--mod-slate-100);background:var(--mod-slate-50);color:var(--mod-slate-500);border-radius:9px;padding:.42rem .9rem;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .16s ease;font-family:inherit}.module-layout-container .pill-btn svg{flex-shrink:0}.module-layout-container .pill-btn.active{color:var(--mod-primary);background:#eaf1ff;border-color:#b8d0ff;font-weight:700;box-shadow:none}.module-layout-container .pill-btn:hover:not(.active){background:var(--mod-slate-100);color:var(--mod-slate-700)}.module-layout-container .grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.1rem;align-items:stretch}.module-layout-container .data-card,.module-layout-container .hero-card,.module-layout-container .stat-card{background:#fff;border:1px solid var(--mod-slate-100);border-radius:14px;box-shadow:0 4px 14px #152c4a0f}.module-layout-container .data-card{padding:1.15rem 1.2rem;display:flex;flex-direction:column;gap:.72rem;height:100%;min-height:265px;transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease}.module-layout-container .data-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1931521c}.module-layout-container .data-card h3,.module-layout-container .hero-card h2{margin:0;color:var(--mod-ink);letter-spacing:0}.module-layout-container .data-card h3{font-size:1rem;font-weight:700;line-height:1.35;letter-spacing:0}.module-layout-container .hero-card{padding:1.25rem 1.35rem}.module-layout-container .hero-kicker{color:#4f6790;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}.module-layout-container .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}.module-layout-container .stat-card{padding:.95rem 1rem}.module-layout-container .stats-grid--compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem}.module-layout-container .stat-card--compact{padding:.95rem 1rem;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff)}.module-layout-container .stat-card--compact h3{font-size:1.55rem}.module-layout-container .assessment-summary-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.2rem 0}.module-layout-container .summary-item{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;padding:.6rem .9rem;border-radius:12px;background:#fff;border:1px solid var(--mod-slate-100);box-shadow:0 2px 10px #152c4a0a}.module-layout-container .summary-item--primary{background:linear-gradient(180deg,#fff,#f8fbff)}.module-layout-container .summary-label{color:var(--mod-slate-500);font-size:.84rem;font-weight:600}.module-layout-container .summary-value{color:var(--mod-ink);font-size:1.02rem;font-weight:800}.module-layout-container .summary-dot{width:9px;height:9px;border-radius:999px;flex-shrink:0}.module-layout-container .summary-dot--upcoming{background:#94a7bd}.module-layout-container .summary-dot--progress{background:var(--mod-primary)}.module-layout-container .summary-dot--completed{background:var(--mod-success)}@media(max-width:768px){.module-layout-container .assessment-summary-bar{gap:.6rem}.module-layout-container .summary-item{flex:1 1 calc(50% - .6rem);justify-content:space-between}}.module-layout-container .stat-card p{font-size:.8rem;color:var(--mod-slate-500);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.module-layout-container .stat-card h3{margin-top:.34rem;margin-bottom:.25rem;color:var(--mod-ink);font-size:1.4rem}.module-layout-container .stat-card span{color:var(--mod-slate-500);font-size:.83rem}.module-layout-container .badge{display:inline-flex;align-items:center;border-radius:9999px;padding:.24rem .68rem;font-size:.71rem;font-weight:700;letter-spacing:0;border:1px solid #e4ebf5}.module-layout-container .badge.draft{background:#eef3fa;color:#405470}.module-layout-container .badge.approved,.module-layout-container .badge.published{background:#e2f8ef;color:var(--mod-success)}.module-layout-container .badge.locked,.module-layout-container .badge.closed,.module-layout-container .badge.archived{background:#fff1f1;color:#a43744}.module-layout-container .table-wrap{border:1px solid var(--mod-slate-100);border-radius:14px;overflow:auto;background:#fff;box-shadow:0 8px 20px #1329470f}.module-layout-container .table{width:100%;border-collapse:collapse}.module-layout-container .table th,.module-layout-container .table td{border-bottom:1px solid #edf2f9;text-align:left;padding:.74rem .8rem;font-size:.88rem}.module-layout-container .table th{font-size:.73rem;text-transform:uppercase;color:#5f7493;letter-spacing:.05em}.module-layout-container .table tbody tr:last-child td{border-bottom:none}.module-layout-container .matrix-level-header{text-align:center}.module-layout-container .matrix-level-header--nb{background:#f3f8ff}.module-layout-container .matrix-level-header--th{background:#eaf4ff}.module-layout-container .matrix-level-header--vd{background:#dcecff}.module-layout-container .matrix-level-header--vdc{background:#d0e4ff}.module-layout-container .matrix-cell{text-align:center;min-width:86px}.module-layout-container .matrix-cell__count{font-weight:700;color:var(--mod-ink)}.module-layout-container .matrix-cell__point{font-size:.78rem;color:var(--mod-slate-500)}.module-layout-container .matrix-cell--empty{background:#fff6f6;color:#8c3141}.module-layout-container .matrix-chapter-row td{background:#f6f9ff;color:#365079}.module-layout-container .matrix-total-row td{background:#fbfcff}.module-layout-container .matrix-grand-total-row td{background:#edf4ff}.module-layout-container .empty{border:1px dashed #c8d8ee;border-radius:16px;padding:3rem 1rem;text-align:center;color:var(--mod-slate-500);background:linear-gradient(180deg,#fcfdff,#f7faff);display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.93rem}.module-layout-container .empty p{margin:0}.module-layout-container .badge.upcoming{background:#eef3fa;color:#51647d;border-color:#d9e4f1}.module-layout-container .badge.in-progress{background:#e6f0ff;color:var(--mod-primary);border-color:#b3cbff}.module-layout-container .badge.completed{background:#e2f8ef;color:var(--mod-success);border-color:#9fe0c8}.module-layout-container .type-pill{display:inline-flex;align-items:center;border-radius:8px;padding:.18rem .55rem;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#f1f5fb;color:#4f6790;border:1px solid #dce8f5}.module-layout-container .data-card.status-UPCOMING{box-shadow:inset 3px 0 #cfdced}.module-layout-container .data-card.status-IN_PROGRESS{box-shadow:inset 3px 0 0 var(--mod-primary)}.module-layout-container .data-card.status-COMPLETED{box-shadow:inset 3px 0 0 var(--mod-success)}.module-layout-container .card-divider{border:none;border-top:1px solid var(--mod-slate-100);margin:0}.module-layout-container .card-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.85rem;line-height:1.55;color:var(--mod-slate-500);margin-top:3px;min-height:3.1em}.module-layout-container .card-actions{margin-top:auto;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding-top:.1rem}.module-layout-container .meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1rem}.module-layout-container .meta-item{display:inline-flex;align-items:center;gap:.3rem;color:var(--mod-slate-500);font-size:.81rem}.module-layout-container .count-chip{display:inline-flex;align-items:center;justify-content:center;background:#edf3ff;color:var(--mod-primary);border:1px solid #b3cbff;border-radius:9999px;padding:.18rem .75rem;font-size:.8rem;font-weight:700}.module-layout-container .overdue{color:var(--mod-danger);font-size:.82rem;font-weight:600;display:inline-flex;align-items:center;gap:.28rem}.module-layout-container .reason-note{font-size:.82rem;color:var(--mod-slate-500);background:#f5f8fc;border:1px solid var(--mod-slate-100);border-radius:8px;padding:.32rem .6rem}.module-layout-container .muted{color:var(--mod-slate-500)}.module-layout-container .modal-layer{position:fixed;inset:0;z-index:1200;background:#0c1a2e6b;display:flex;align-items:center;justify-content:center;padding:1rem}.module-layout-container .modal-card{width:min(920px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:16px;border:1px solid #dfe8f5;box-shadow:0 22px 42px #0e1d3438}.module-layout-container .modal-header{padding:1rem 1.25rem;border-bottom:1px solid #edf2f9;display:flex;justify-content:space-between;align-items:center;gap:.75rem;background:linear-gradient(180deg,#fbfdff,#f6faff)}.module-layout-container .modal-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.module-layout-container .modal-footer{padding:.9rem 1.25rem;border-top:1px solid #edf2f9;display:flex;justify-content:flex-end;gap:.6rem}.module-layout-container .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem}.module-layout-container .icon-btn{border:1px solid #d5e0ef;background:#fff;color:#3e5471;border-radius:8px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.module-layout-container .icon-btn:hover{background:#f3f8ff}@media(max-width:768px){.module-layout-container .module-page{padding:1rem}.module-layout-container .page-header{padding:.9rem}.module-layout-container .page-header h2{font-size:1.55rem}.module-layout-container .toolbar{padding:.62rem}.module-layout-container .grid-cards{grid-template-columns:1fr}}.module-layout-container .preview-box{margin-top:.5rem;padding:.75rem;border:1px dashed var(--mod-slate-200);border-radius:8px;background:var(--mod-slate-25);font-size:.95rem;color:var(--mod-ink);min-height:1.5rem}.module-layout-container .detail-hero{background:linear-gradient(135deg,#f0f6ff,#e8f0fb);border:1px solid #dce9f8;border-radius:16px;padding:1.1rem 1.4rem 1.3rem;display:flex;flex-direction:column;gap:.75rem}.module-layout-container .detail-hero__topbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.module-layout-container .detail-hero__back{display:inline-flex;align-items:center;gap:.35rem;background:#ffffffd9;border:1px solid #cddcf0;border-radius:9px;padding:.38rem .8rem;font-size:.83rem;font-weight:600;color:var(--mod-slate-500);cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.module-layout-container .detail-hero__back:hover{background:#fff;color:var(--mod-primary);border-color:var(--mod-primary)}.module-layout-container .detail-hero__badges{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.module-layout-container .detail-hero__title{margin:0;font-size:1.75rem;font-weight:800;letter-spacing:0;color:var(--mod-ink);line-height:1.2}.module-layout-container .detail-info-grid .detail-info-item{background:#f8fbff;border:1px solid #e5edf7;border-radius:10px;padding:.7rem .9rem}.module-layout-container .detail-action-bar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:#fff;border:1px solid #e5edf7;border-radius:14px;padding:1.1rem 1.5rem;box-shadow:0 2px 8px #0e1d340a}.module-layout-container .detail-action-bar__text{display:flex;flex-direction:column;gap:.2rem}.module-layout-container .detail-action-bar__hint{margin:0;font-size:.95rem;font-weight:700;color:var(--mod-ink)}.module-layout-container .detail-action-bar__sub{margin:0;font-size:.82rem;color:var(--mod-slate-500)}.module-layout-container .btn.btn--cta{min-width:190px;padding:.7rem 1.4rem;font-size:.95rem;border-radius:12px;justify-content:center}@keyframes mod-spin{to{transform:rotate(360deg)}}@keyframes util-spin{to{transform:rotate(360deg)}}.animate-spin{animation:util-spin 1s linear infinite}.module-layout-container .page-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:340px;gap:1.1rem;color:var(--mod-slate-500);font-size:.9rem}.module-layout-container .spinner-ring{width:52px;height:52px;border-radius:50%;border:4px solid #dce8f8;border-top-color:var(--mod-primary);animation:mod-spin .75s linear infinite}@keyframes mod-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.module-layout-container .skeleton-line,.module-layout-container .skeleton-block{border-radius:7px;background:linear-gradient(90deg,#e8edf5 25%,#f2f6fc,#e8edf5 75%);background-size:800px 100%;animation:mod-shimmer 1.4s ease-in-out infinite}.module-layout-container .skeleton-line{height:14px}.module-layout-container .skeleton-line.sk-xl{width:55%;height:28px;border-radius:8px}.module-layout-container .skeleton-line.sk-lg{width:38%;height:18px}.module-layout-container .skeleton-line.sk-md{width:55%}.module-layout-container .skeleton-line.sk-sm{width:32%}.module-layout-container .skeleton-line.sk-xs{width:20%;height:22px;border-radius:10px}.module-layout-container .skeleton-block{height:80px;border-radius:10px}.module-layout-container .skeleton-detail{display:flex;flex-direction:column;gap:1.5rem}.module-layout-container .skeleton-detail-header{display:flex;flex-direction:column;gap:.7rem;padding-bottom:1rem}.module-layout-container .skeleton-section{background:#fff;border:1px solid #e5edf7;border-radius:14px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.module-layout-container .skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.module-layout-container .skeleton-info-item{display:flex;flex-direction:column;gap:.45rem}.module-layout-container .detail-section{background:#fff;border:1px solid #e5edf7;border-radius:14px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1.1rem;box-shadow:0 2px 8px #0e1d340a}.module-layout-container .detail-section__title{font-size:.78rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--mod-slate-400);margin:0;padding-bottom:.55rem;border-bottom:1px solid #edf2f9}.module-layout-container .detail-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.85rem 1.25rem}.module-layout-container .detail-info-item{display:flex;flex-direction:column;gap:.3rem}.module-layout-container .detail-info-item__label{font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--mod-slate-400)}.module-layout-container .detail-info-item__value{display:inline-flex;align-items:center;gap:.35rem;font-size:.93rem;font-weight:600;color:var(--mod-ink)}.module-layout-container .detail-description{font-size:.9rem;line-height:1.7;color:var(--mod-slate-600, #3e5471);background:#f7fbff;border:1px solid #e2ecf8;border-radius:10px;padding:.85rem 1rem;white-space:pre-wrap;margin:0}.module-layout-container .warning-banner{display:flex;gap:.75rem;align-items:flex-start;background:#fffbeb;border:1px solid #f5d97a;border-radius:12px;padding:.9rem 1rem}.module-layout-container .warning-banner__title{font-size:.85rem;font-weight:700;color:#7a540a;margin:0 0 .2rem}.module-layout-container .warning-banner__body{font-size:.84rem;color:#92660a;margin:0;line-height:1.55}.module-layout-container .add-question-panel{margin-bottom:16px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.module-layout-container .add-question-panel[open]{border-color:#c7d2fe;box-shadow:0 4px 14px #0f172a0d}.module-layout-container .add-question-panel__summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;cursor:pointer;list-style:none;font-size:.9rem;font-weight:600;color:#0f172a;background:#f8fafc;border-bottom:1px solid transparent;transition:background .15s ease,border-color .15s ease}.module-layout-container .add-question-panel__summary::-webkit-details-marker{display:none}.module-layout-container .add-question-panel__summary:hover{background:#f1f5f9}.module-layout-container .add-question-panel[open] .add-question-panel__summary{border-bottom-color:#e5e7eb}.module-layout-container .add-question-panel__title{display:inline-flex;align-items:center;gap:8px}.module-layout-container .add-question-panel__chevron{color:#64748b;transition:transform .2s ease;flex-shrink:0}.module-layout-container .add-question-panel[open] .add-question-panel__chevron{transform:rotate(180deg)}.module-layout-container .add-question-panel__body{padding:12px 14px 14px}.module-layout-container .courses-header-row{align-items:flex-start;padding-bottom:1.25rem;border-bottom:1.5px solid var(--mod-slate-100)}.module-layout-container .header-stack{display:flex;flex-direction:column;gap:.3rem}.module-layout-container .header-kicker{display:inline-flex;align-items:center;gap:.45rem;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--mod-primary)}.module-layout-container .header-kicker:before{content:"";display:inline-block;width:3px;height:14px;border-radius:99px;background:var(--mod-primary);flex-shrink:0}.module-layout-container .courses-header-row h2{font-size:1.85rem;letter-spacing:-.03em}.module-layout-container .header-sub{margin:0;font-size:.875rem;color:var(--mod-slate-500);padding-top:.15rem;display:inline-flex;align-items:center;gap:.5rem}.module-layout-container .header-sub:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#22c55e;flex-shrink:0}.module-layout-container .stat-card.stat-blue,.module-layout-container .stat-card.stat-emerald,.module-layout-container .stat-card.stat-amber,.module-layout-container .stat-card.stat-violet{display:flex;align-items:center;gap:.85rem;transition:transform .18s,box-shadow .18s}.module-layout-container .stat-card.stat-blue:hover,.module-layout-container .stat-card.stat-emerald:hover,.module-layout-container .stat-card.stat-amber:hover,.module-layout-container .stat-card.stat-violet:hover{transform:translateY(-2px);box-shadow:0 10px 22px #0f172a17}.module-layout-container .stat-card.stat-amber{background:#fffbeb;border-color:#fde68a}.module-layout-container .stat-card.stat-violet{background:#f5f3ff;border-color:#ddd6fe}.module-layout-container .stat-card.stat-amber h3{color:#92400e}.module-layout-container .stat-card.stat-violet h3{color:#6d28d9}.module-layout-container .stat-card.stat-blue h3,.module-layout-container .stat-card.stat-emerald h3,.module-layout-container .stat-card.stat-amber h3,.module-layout-container .stat-card.stat-violet h3{font-size:1.65rem;font-weight:800;line-height:1;margin:0}.module-layout-container .stat-card.stat-blue p,.module-layout-container .stat-card.stat-emerald p,.module-layout-container .stat-card.stat-amber p,.module-layout-container .stat-card.stat-violet p{margin:.2rem 0 0;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--mod-slate-500)}.module-layout-container .stat-icon-wrap{flex-shrink:0;width:42px;height:42px;border-radius:12px;background:currentColor;display:flex;align-items:center;justify-content:center}.module-layout-container .search-box{background:#f8faff;border-color:#d0defc;border-radius:12px;padding:.38rem .6rem;box-shadow:inset 0 1px #ffffffe6,0 2px 8px #162a470d}.module-layout-container .search-box:focus-within{background:#fff;border-color:var(--mod-primary);box-shadow:0 0 0 3px #1f5eff1f,0 4px 16px #1f5eff14}.module-layout-container .search-box .search-box__icon{width:32px;height:32px;border-radius:9px;background:linear-gradient(145deg,#dde9ff,#c7d8ff);border:1px solid #b3cbff;color:var(--mod-primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.module-layout-container .grade-filter-select{border:1.5px solid #ddd6c8;background:#f8f6ef;color:#4d4c48;border-radius:12px;min-width:138px;height:40px;padding:0 2rem 0 .8rem;font-size:.84rem;font-weight:600;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238f8b84' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center}.module-layout-container .grade-filter-select:focus{outline:none;border-color:#c96442;box-shadow:0 0 0 3px #c9644224}.module-layout-container .view-toggle{display:flex;gap:.25rem;background:#f1f5fd;border:1.5px solid var(--mod-slate-200);border-radius:12px;padding:.22rem;overflow:visible}.module-layout-container .view-toggle button{width:34px;height:34px;border:1.5px solid transparent;background:transparent;color:var(--mod-slate-400);display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;border-radius:9px;transition:all .15s}.module-layout-container .view-toggle button:hover:not(.active){background:#e2eaff;color:var(--mod-primary)}.module-layout-container .view-toggle button.active{background:#fff;color:var(--mod-primary);border-color:#c5d6ff;box-shadow:0 1px 4px #1f5eff24}.module-layout-container .data-card.course-card{padding:0;min-height:auto;gap:0;overflow:hidden}.module-layout-container .course-cover{position:relative;padding:0;min-height:190px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:#ede8dc}.module-layout-container .cover-thumb{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;opacity:1;transition:transform .4s cubic-bezier(.22,1,.36,1)}.module-layout-container .data-card.course-card:hover .cover-thumb{transform:scale(1.06)}.module-layout-container .cover-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,10,8,.72) 0%,rgba(10,10,8,.28) 45%,transparent 75%);z-index:1}.module-layout-container .cover-index{position:absolute;top:.6rem;right:.7rem;z-index:2;font-size:.72rem;font-weight:800;letter-spacing:.08em;color:#ffffffa6;background:#00000040;padding:2px 7px;border-radius:999px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.module-layout-container .course-badge{position:static;z-index:1;display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;padding:.22rem .6rem;font-size:.69rem;font-weight:700;letter-spacing:.04em;width:-moz-fit-content;width:fit-content;margin-bottom:0}.module-layout-container .badge-live{background:#ffffffb8;color:#166534;border:1px solid rgba(22,101,52,.16)}.module-layout-container .badge-draft{background:#ffffffb8;color:#92400e;border:1px solid rgba(146,64,14,.16)}.module-layout-container .badge-review{background:#fffbebe6;color:#9a6700;border:1px solid rgba(202,138,4,.28)}.module-layout-container .badge-rejected{background:#fff1f2e6;color:#9f1239;border:1px solid rgba(225,29,72,.22)}.module-layout-container .badge-archived{background:#f1f5f9e6;color:#475569;border:1px solid rgba(71,85,105,.22)}.module-layout-container .cover-title{position:relative;z-index:2;margin:0;padding:0 1rem .9rem;font-size:1rem;font-weight:700;font-family:Be Vietnam Pro,sans-serif;letter-spacing:0;color:#fff;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word;min-height:2.7em;text-shadow:0 1px 4px rgba(0,0,0,.5)}.module-layout-container .course-heading{display:flex;flex-direction:column;gap:.55rem}.module-layout-container .course-level-row{display:flex;align-items:center;gap:.4rem;min-height:24px;flex-wrap:wrap}.module-layout-container .course-body{padding:1rem 1.15rem 1.15rem;display:flex;flex-direction:column;gap:.85rem;flex:1}.module-layout-container .course-desc{margin:0;color:var(--mod-slate-500);font-size:.84rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.module-layout-container .course-metrics{display:flex;gap:.42rem;flex-wrap:wrap}.module-layout-container .metric{display:inline-flex;align-items:center;gap:.3rem;font-size:.76rem;color:var(--mod-slate-500);font-weight:600;padding:.36rem .58rem;background:var(--mod-slate-50);border:1px solid var(--mod-slate-100);border-radius:999px}.module-layout-container .metric svg{color:var(--mod-slate-300);flex-shrink:0}.module-layout-container .course-actions{display:flex;flex-wrap:nowrap;gap:.4rem;margin-top:auto;align-items:center;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding-bottom:2px;scrollbar-width:thin}.module-layout-container .course-actions::-webkit-scrollbar{height:4px}.module-layout-container .course-actions::-webkit-scrollbar-thumb{background:#d1cfc5;border-radius:99px}.module-layout-container .action-primary{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem .7rem;background:var(--mod-ink);color:#fff;border:none;border-radius:10px;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap;transition:background .15s,transform .15s}.module-layout-container .action-primary:hover{background:#1e293b;transform:translateY(-1px)}.module-layout-container .action-toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:.32rem;padding:.5rem .6rem;background:var(--mod-slate-50);color:var(--mod-slate-500);border:1.5px solid var(--mod-slate-200);border-radius:10px;font-size:.78rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap}.module-layout-container .action-toggle:hover:not(:disabled){background:var(--mod-slate-100)}.module-layout-container .action-toggle.is-live{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.module-layout-container .action-toggle.is-live:hover:not(:disabled){background:#dbeafe}.module-layout-container .action-toggle:disabled,.module-layout-container .action-danger:disabled{opacity:.5;cursor:not-allowed}.module-layout-container .action-danger{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:.5rem .65rem;background:#fff1f2;color:#be123c;border:1.5px solid #fecdd3;border-radius:10px;cursor:pointer;font-family:inherit;transition:all .15s}.module-layout-container .action-danger:hover:not(:disabled){background:#ffe4e6;border-color:#fda4af}.module-layout-container .grid-cards.list-view{grid-template-columns:1fr}.module-layout-container .grid-cards.list-view .data-card.course-card{display:grid;grid-template-columns:220px 1fr}.module-layout-container .grid-cards.list-view .course-cover{min-height:160px}.module-layout-container .skeleton-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.module-layout-container .skeleton-card{height:300px;border-radius:14px;background:linear-gradient(90deg,#f1f5f9 25%,#e8edf5,#f1f5f9 75%);background-size:400% 100%;animation:tc-shimmer 1.5s infinite}@keyframes tc-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:1100px){.module-layout-container .skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.module-layout-container .course-cover{min-height:168px}.module-layout-container .courses-header-row{flex-direction:column;align-items:stretch}.module-layout-container .courses-header-row .btn{width:100%;justify-content:center}.module-layout-container .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-layout-container .grid-cards.list-view .data-card.course-card,.module-layout-container .skeleton-grid{grid-template-columns:1fr}.module-layout-container .grade-filter-select{width:100%}}.modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-backdrop{position:absolute;inset:0;background:#30302e66;background:color-mix(in srgb,#30302e 38%,transparent);backdrop-filter:none;-webkit-backdrop-filter:none;border:none;cursor:default;width:100%;height:100%}.modal-box{position:relative;z-index:1;background:#fff;border-radius:20px;padding:1.75rem 2rem;width:100%;max-width:540px;box-shadow:0 24px 80px #0f172a47;animation:tc-modalIn .25s cubic-bezier(.22,1,.36,1)}@keyframes tc-modalIn{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.modal-header-left{display:flex;align-items:flex-start;gap:.85rem}.modal-icon{flex-shrink:0;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca;display:flex;align-items:center;justify-content:center}.modal-header h2{margin:0 0 .2rem;font-size:1.15rem;font-weight:800;color:#0f172a;letter-spacing:-.02em}.modal-header p{margin:0;font-size:.83rem;color:#64748b}.modal-close{padding:0;flex-shrink:0;width:36px;height:36px;border:1px solid #e8e6dc;background:#faf9f5;border-radius:10px;color:#4d4c48;display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;transition:all .15s}.modal-close:hover{background:#e8e6dc;color:#141413;border-color:#d1cfc5}.modal-close svg{display:block;width:18px;height:18px;flex-shrink:0;stroke:#4d4c48;color:#4d4c48;fill:none;pointer-events:none}.modal-close:hover svg{stroke:#141413;color:#141413}.modal-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.form-group{display:flex;flex-direction:column;gap:.38rem}.form-label{font-size:.82rem;font-weight:700;color:#374151}.required{color:#f43f5e}.form-select,.form-input{width:100%;border:1.5px solid #e2e8f0;border-radius:11px;padding:.62rem .875rem;font-size:.875rem;color:#1e293b;background:#f8fafc;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s,background .15s;box-sizing:border-box}.form-select:focus,.form-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;background:#fff}.form-input::-moz-placeholder{color:#94a3b8}.form-input::placeholder{color:#94a3b8}.form-textarea{resize:vertical;min-height:90px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.2rem;cursor:pointer}.form-select:disabled{opacity:.55;cursor:not-allowed}.modal-actions{display:flex;gap:.65rem;justify-content:flex-end;padding-top:.5rem;border-top:1px solid #f1f5f9}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:tc-spin .7s linear infinite}@keyframes tc-spin{to{transform:rotate(360deg)}}@media(max-width:600px){.form-row{grid-template-columns:1fr}.modal-box{padding:1.25rem;border-radius:16px}}.wizard-modal-box{max-width:720px!important;overflow:hidden}.wizard-steps-indicator{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem;position:relative;padding:0 1rem}.wizard-steps-indicator:before{content:"";position:absolute;top:18px;left:2rem;right:2rem;height:2px;background:#e2e8f0;z-index:0}.wizard-step-item{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.6rem;flex:1}.wizard-step-circle{width:36px;height:36px;border-radius:50%;background:#fff;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;color:#94a3b8;transition:all .3s cubic-bezier(.22,1,.36,1);box-shadow:0 0 0 4px #fff}.wizard-step-label{font-size:.72rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;transition:color .3s}.wizard-step-item.active .wizard-step-circle{border-color:#4f46e5;background:#4f46e5;color:#fff;box-shadow:0 0 0 4px #fff,0 4px 12px #4f46e540}.wizard-step-item.active .wizard-step-label{color:#4f46e5}.wizard-step-item.completed .wizard-step-circle{border-color:#10b981;background:#10b981;color:#fff}.wizard-step-item.completed .wizard-step-label{color:#10b981}.wizard-content-wrapper{min-height:380px;display:flex;flex-direction:column}.wizard-step-content{flex:1}.wizard-footer{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #f1f5f9}.form-section-header{margin-bottom:1.5rem}.form-section-header h3{margin:0 0 .25rem;font-size:1.1rem;font-weight:700;color:#0f172a}.form-section-header p{margin:0;font-size:.85rem;color:#64748b;line-height:1.5}.module-layout-container .create-course-modal{padding:1.25rem;align-items:center;justify-content:center;box-sizing:border-box}.module-layout-container .create-course-modal .create-course-wizard{max-width:min(960px,96vw)!important;width:100%;max-height:min(86vh,800px);display:flex;flex-direction:column;background:#faf9f5;border:1px solid #e8e6dc;border-radius:16px;box-shadow:#0000000d 0 4px 24px,0 0 0 1px #f0eee6;padding:1.35rem 1.5rem 1.1rem;overflow:hidden;animation:tc-modalIn .25s cubic-bezier(.22,1,.36,1)}.module-layout-container .create-course-modal .modal-form{flex:1;min-height:0;display:flex;flex-direction:column;gap:0}.module-layout-container .create-course-modal .wizard-content-wrapper{min-height:0;flex:1 1 auto;max-height:min(50vh,480px);overflow-x:hidden;overflow-y:auto;padding-right:.35rem;margin-bottom:.25rem;scrollbar-gutter:stable}.module-layout-container .create-course-modal .modal-header{margin-bottom:1.1rem;flex-shrink:0}.module-layout-container .create-course-modal .modal-header h2,.module-layout-container .create-course-modal .form-section-header h3{font-family:var(--font-family);font-weight:600;color:#141413;letter-spacing:0;font-synthesis:none;text-rendering:optimizeLegibility}.module-layout-container .create-course-modal .modal-header h2{font-size:1.2rem}.module-layout-container .create-course-modal .modal-header p,.module-layout-container .create-course-modal .form-section-header p{color:#5e5d59;line-height:1.55;font-family:var(--font-family);letter-spacing:0}.module-layout-container .create-course-modal .modal-icon{background:#ede8dc;color:#7a5a4d;border:1px solid #dfd8ca;border-radius:10px;box-shadow:0 0 0 1px #f0eee6cc}.module-layout-container .create-course-modal .wizard-steps-indicator{margin-bottom:1.35rem;padding:0 .5rem}.module-layout-container .create-course-modal .wizard-steps-indicator:before{background:#e8e6dc;top:17px;left:1.25rem;right:1.25rem}.module-layout-container .create-course-modal .wizard-step-circle{border-color:#d1cfc5;background:#faf9f5;color:#87867f;box-shadow:0 0 0 4px #faf9f5}.module-layout-container .create-course-modal .wizard-step-item.active .wizard-step-circle{border-color:#c96442;background:#c96442;color:#faf9f5;box-shadow:0 0 0 4px #faf9f5,0 0 0 1px #c9644259}.module-layout-container .create-course-modal .wizard-step-item.active .wizard-step-label{color:#7a5a4d}.module-layout-container .create-course-modal .wizard-step-item.completed .wizard-step-circle{border-color:#6d6a5e;background:#6d6a5e;color:#faf9f5}.module-layout-container .create-course-modal .wizard-step-item.completed .wizard-step-label{color:#4d4c48}.module-layout-container .create-course-modal .wizard-step-label{font-family:var(--font-family);letter-spacing:0;text-transform:none;font-weight:600;font-size:.78rem;text-align:center;line-height:1.35;text-rendering:optimizeLegibility;font-synthesis:none}.module-layout-container .create-course-modal .wizard-step-item:not(.active):not(.completed) .wizard-step-label{color:#87867f}.module-layout-container .create-course-modal .wizard-footer{margin-top:.75rem;padding-top:1rem;border-top:1px solid #f0eee6;flex-shrink:0;gap:.6rem}.module-layout-container .create-course-modal .provider-selector{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.1rem}.module-layout-container .create-course-modal .provider-card{display:block;width:100%;text-align:left;border:1px solid #e8e6dc;background:#fff;border-radius:12px;padding:.95rem 1rem;cursor:pointer;font:inherit;color:#141413;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;box-shadow:0 0 0 0 transparent}.module-layout-container .create-course-modal .provider-card:hover{border-color:#d1cfc5;box-shadow:0 0 0 1px #f0eee6}.module-layout-container .create-course-modal .provider-card.is-active{border-color:#c96442;background:#fff;box-shadow:0 0 0 1px #c96442}.module-layout-container .create-course-modal .provider-card__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;margin-bottom:.55rem;background:#f3efe4;color:#5e5d59;border:1px solid #e8e6dc}.module-layout-container .create-course-modal .provider-card.is-active .provider-card__icon{background:#ede8dc;color:#7a5a4d;border-color:#dfd8ca}.module-layout-container .create-course-modal .provider-card h4{margin:0 0 .35rem;font-size:.95rem;font-weight:700;color:#141413;font-family:var(--font-family)}.module-layout-container .create-course-modal .provider-card p{margin:0;font-size:.82rem;color:#5e5d59;line-height:1.5;font-weight:500}.module-layout-container .create-course-modal .form-row--tight-below,.module-layout-container .create-course-modal .form-group--tight-below{margin-bottom:.85rem}.module-layout-container .create-course-modal .form-row{align-items:start}.module-layout-container .create-course-modal .form-row--loose-below{margin-bottom:1.1rem}.module-layout-container .create-course-modal .form-label{color:#4d4c48;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:0;font-family:var(--font-family)}.module-layout-container .create-course-modal .required{color:#b53333}.module-layout-container .create-course-modal .form-hint{font-size:.75rem;color:#87867f;margin:.35rem 0 0;line-height:1.5;font-weight:500;font-family:var(--font-family);letter-spacing:0}.module-layout-container .create-course-modal .form-hint.is-error{color:#b53333}.module-layout-container .create-course-modal .form-select,.module-layout-container .create-course-modal .form-input{background:#fff;border:1px solid #e8e6dc;color:#141413;border-radius:12px;font-family:var(--font-family);font-synthesis:none;letter-spacing:0}.module-layout-container .create-course-modal .form-textarea{min-height:112px;max-height:220px;overflow-y:auto;resize:vertical;line-height:1.55;font-family:var(--font-family);font-synthesis:none;letter-spacing:0}.module-layout-container .create-course-modal .form-textarea::-webkit-scrollbar{width:8px}.module-layout-container .create-course-modal .form-textarea::-webkit-scrollbar-thumb{background:#d1cfc5;border-radius:999px}.module-layout-container .create-course-modal .form-select:focus,.module-layout-container .create-course-modal .form-input:focus,.module-layout-container .create-course-modal .form-textarea:focus{outline:none;border-color:#c96442;box-shadow:0 0 0 3px #c964422e}.module-layout-container .create-course-modal .form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2387867f' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-color:#fff;background-repeat:no-repeat;background-position:right .75rem center;background-size:16px;padding-right:2.2rem}.module-layout-container .create-course-modal .form-select option{font-family:var(--font-family);letter-spacing:0}.module-layout-container .create-course-modal .file-upload-field{display:flex;flex-direction:column;justify-content:center;gap:.14rem;background:#fff;border:1px dashed #d1cfc5;border-radius:12px;min-height:44px;padding:.5rem .82rem;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.module-layout-container .create-course-modal .file-upload-field:hover{border-color:#c96442;background:#fdfaf7}.module-layout-container .create-course-modal .file-upload-title{font-size:.82rem;font-weight:700;color:#4d4c48}.module-layout-container .create-course-modal .file-upload-name{font-size:.76rem;color:#87867f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-layout-container .create-course-modal .file-upload-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.module-layout-container .create-course-modal .file-upload-clear{margin-top:.42rem;border:none;background:transparent;color:#7a5a4d;font-size:.76rem;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer;padding:0;align-self:flex-start}.module-layout-container .create-course-modal .pricing-mode-toggle{display:inline-flex;align-items:center;gap:.45rem;background:#f5f4ed;border:1px solid #e8e6dc;border-radius:999px;padding:.25rem;width:-moz-fit-content;width:fit-content}.module-layout-container .create-course-modal .pricing-mode-btn{border:none;background:transparent;color:#5e5d59;border-radius:999px;padding:.4rem .75rem;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit}.module-layout-container .create-course-modal .pricing-mode-btn.is-active{background:#fff;color:#4d4c48;box-shadow:0 0 0 1px #d1cfc5}.module-layout-container .create-course-modal .pricing-free-note{margin-top:.15rem;margin-bottom:.35rem;max-width:36rem;line-height:1.45;color:#6a645c}.module-layout-container .create-course-modal .pricing-summary-card{background:#f5f4ed;border:1px solid #e8e6dc;border-radius:12px;padding:1rem 1.1rem;margin-bottom:1.1rem}.module-layout-container .create-course-modal .pricing-summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;font-size:.88rem}.module-layout-container .create-course-modal .pricing-summary-row:first-child{margin-bottom:.4rem}.module-layout-container .create-course-modal .pricing-summary-row span{color:#5e5d59;font-weight:500}.module-layout-container .create-course-modal .pricing-summary-row strong{color:#141413;font-size:1.05rem;font-weight:700}.module-layout-container .create-course-modal .pricing-summary-savings{color:#7a5a4d;font-weight:700}.module-layout-container .create-course-modal .btn.btn-sand{background:#e8e6dc;border:1px solid #d1cfc5;color:#4d4c48;box-shadow:0 0 0 1px #f0eee6e6}.module-layout-container .create-course-modal .btn.btn-sand:hover{background:#ddd9cd;border-color:#c2beb3;color:#141413;transform:translateY(-.5px)}.module-layout-container .create-course-modal .btn.btn-terracotta{background:#c96442;border:1px solid #c96442;color:#fff;box-shadow:0 0 0 1px #c9644240}.module-layout-container .create-course-modal .btn.btn-terracotta:hover{background:#b85839;border-color:#b85839;color:#fff;transform:translateY(-.5px)}.module-layout-container .create-course-modal .btn.btn-terracotta:disabled,.module-layout-container .create-course-modal .btn.btn-sand:disabled{opacity:.5;transform:none;box-shadow:none}.module-layout-container .create-course-modal .btn.btn-terracotta .btn-spinner{border-color:#fff6;border-top-color:#fff}@media(max-width:600px){.wizard-step-label{display:none}.module-layout-container .create-course-modal .provider-selector{grid-template-columns:1fr}.module-layout-container .create-course-modal .create-course-wizard{max-height:92vh;padding:1.1rem 1.1rem .9rem}.module-layout-container .create-course-modal .wizard-content-wrapper{max-height:min(48vh,360px)}.form-row{grid-template-columns:1fr}.modal-box{padding:1.25rem;border-radius:16px}}.module-layout-container .teacher-courses-page{max-width:none;width:100%;margin:0;min-height:calc(100vh - 68px);box-sizing:border-box;background:#f5f4ed;border:none;border-bottom:1px solid #e8e6dc;border-radius:0;padding:1.25rem 1.35rem 1.5rem}.module-layout-container .teacher-courses-page .courses-header-row{border-bottom-color:#e8e6dc}.module-layout-container .teacher-courses-page .header-kicker{color:#7a5a4d}.module-layout-container .teacher-courses-page .header-kicker:before{width:7px;height:7px;border-radius:50%;background:#c96442}.module-layout-container .teacher-courses-page h2{color:#141413}.module-layout-container .teacher-courses-page .count-chip{background:#ede8dc;color:#4d4c48;border-color:#d9d3c8}.module-layout-container .teacher-courses-page .header-sub{color:#5e5d59}.module-layout-container .teacher-courses-page .header-sub:before{background:#c96442}.module-layout-container .teacher-courses-page.teacher-courses-index-page .btn{background:#c96442;border-color:#c96442;color:#141413;box-shadow:0 0 0 1px #c9644229}.module-layout-container .teacher-courses-page.teacher-courses-index-page .btn:hover{background:#b85839;border-color:#b85839}.module-layout-container .teacher-courses-page .btn.btn--feat-blue{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 6px 16px #2563eb47}.module-layout-container .teacher-courses-page .btn.btn--feat-blue:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8;color:#fff}.module-layout-container .teacher-courses-page .btn.btn--feat-violet{background:#7c3aed;border-color:#7c3aed;color:#fff;box-shadow:0 6px 16px #7c3aed4d}.module-layout-container .teacher-courses-page .btn.btn--feat-violet:hover:not(:disabled){background:#6d28d9;border-color:#6d28d9;color:#fff}.module-layout-container .teacher-courses-page .btn.btn--feat-indigo{background:#4f46e5;border-color:#4f46e5;color:#fff;box-shadow:0 6px 16px #4f46e547}.module-layout-container .teacher-courses-page .btn.btn--feat-indigo:hover:not(:disabled){background:#4338ca;border-color:#4338ca;color:#fff}.module-layout-container .teacher-courses-page .btn.btn--feat-emerald{background:#059669;border-color:#059669;color:#fff;box-shadow:0 6px 16px #05966947}.module-layout-container .teacher-courses-page .btn.btn--feat-emerald:hover:not(:disabled){background:#047857;border-color:#047857;color:#fff}.module-layout-container .teacher-courses-page .btn.btn--feat-amber{background:#d97706;border-color:#d97706;color:#fff;box-shadow:0 6px 16px #d9770647}.module-layout-container .teacher-courses-page .btn.btn--feat-amber:hover:not(:disabled){background:#b45309;border-color:#b45309;color:#fff}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-blue{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe;box-shadow:none}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-blue:hover:not(:disabled){background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-violet{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe;box-shadow:none}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-violet:hover:not(:disabled){background:#ede9fe;border-color:#c4b5fd;color:#5b21b6}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-indigo{color:#4338ca;background:#eef2ff;border-color:#c7d2fe;box-shadow:none}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-indigo:hover:not(:disabled){background:#e0e7ff;border-color:#a5b4fc;color:#3730a3}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-emerald{color:#047857;background:#ecfdf5;border-color:#a7f3d0;box-shadow:none}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-emerald:hover:not(:disabled){background:#d1fae5;border-color:#6ee7b7;color:#065f46}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-amber{color:#b45309;background:#fffbeb;border-color:#fde68a;box-shadow:none}.module-layout-container .teacher-courses-page .btn.secondary.btn--tint-amber:hover:not(:disabled){background:#fef3c7;border-color:#fcd34d;color:#92400e}.module-layout-container .teacher-courses-page .stats-grid{gap:.8rem}.module-layout-container .teacher-courses-page .stat-card{border-radius:16px}.module-layout-container .teacher-courses-page .stat-card.stat-blue,.module-layout-container .teacher-courses-page .stat-card.stat-emerald,.module-layout-container .teacher-courses-page .stat-card.stat-amber,.module-layout-container .teacher-courses-page .stat-card.stat-violet{background:#faf9f5;border:1px solid #e8e6dc;box-shadow:0 0 0 1px #f0eee673}.module-layout-container .teacher-courses-page .stat-card.stat-blue h3,.module-layout-container .teacher-courses-page .stat-card.stat-emerald h3,.module-layout-container .teacher-courses-page .stat-card.stat-amber h3,.module-layout-container .teacher-courses-page .stat-card.stat-violet h3{color:#30302e}.module-layout-container .teacher-courses-page .stat-icon-wrap{background:#ede8dc}.module-layout-container .teacher-courses-page .stat-card.stat-blue .stat-icon-wrap svg{color:#81644c}.module-layout-container .teacher-courses-page .stat-card.stat-emerald .stat-icon-wrap svg{color:#4a6a5a}.module-layout-container .teacher-courses-page .stat-card.stat-amber .stat-icon-wrap svg{color:#8a6642}.module-layout-container .teacher-courses-page .stat-card.stat-violet .stat-icon-wrap svg{color:#6e5b7e}.module-layout-container .teacher-courses-page .toolbar{background:#faf9f5;border-color:#e8e6dc;box-shadow:0 0 0 1px #f0eee699}.module-layout-container .teacher-courses-page .search-box{background:#f8f6ef;border-color:#dfd8ca;box-shadow:none}.module-layout-container .teacher-courses-page .search-box:focus-within{border-color:#c96442;box-shadow:0 0 0 3px #c9644224}.module-layout-container .teacher-courses-page .search-box .search-box__icon{background:#ede8dc;border-color:#dfd8ca;color:#7a5a4d}.module-layout-container .teacher-courses-page .search-box input::-moz-placeholder{color:#8f8b84}.module-layout-container .teacher-courses-page .search-box input::placeholder{color:#8f8b84}.module-layout-container .teacher-courses-page .pill-btn{background:#f1ede2;border-color:#ddd6c8;color:#5e5d59}.module-layout-container .teacher-courses-page .pill-btn.active{background:#fff;color:#2f2f2d;border-color:#d0c7b8}.module-layout-container .teacher-courses-page .view-toggle{background:#f1ede2;border-color:#ddd6c8}.module-layout-container .teacher-courses-page .view-toggle button.active{color:#7a5a4d;border-color:#d8cfbf;box-shadow:none}.module-layout-container .teacher-courses-page .assessment-summary-bar{background:#faf9f5;border-color:#e8e6dc}.module-layout-container .teacher-courses-page .summary-value{color:#30302e}.module-layout-container .teacher-courses-page .data-card.course-card{background:#faf9f5;border-color:#e8e6dc;border-radius:16px}.module-layout-container .teacher-courses-page .grid-cards:not(.list-view){grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;justify-items:stretch}.module-layout-container .teacher-courses-page .grid-cards:not(.list-view)>.data-card.course-card{width:100%;min-width:0}.module-layout-container .teacher-courses-page .data-card.course-card:hover{border-color:#d6cdbf}.module-layout-container .teacher-courses-page .cover-title{color:#2e2d2a}.module-layout-container .teacher-courses-page .cover-thumb{opacity:1}.module-layout-container .teacher-courses-page .cover-overlay{background:linear-gradient(to top,rgba(250,249,245,.62) 0%,rgba(250,249,245,.2) 42%,transparent 78%),radial-gradient(circle at top right,rgba(255,255,255,.35),transparent 48%)}.module-layout-container .teacher-courses-page .course-desc,.module-layout-container .teacher-courses-page .metric{color:#5e5d59}.module-layout-container .teacher-courses-page .metric{background:#f3efe4;border-color:#e3dbcd}.module-layout-container .teacher-courses-page .metric svg{color:#8f8b84}.module-layout-container .teacher-courses-page .action-primary{background:#30302e}.module-layout-container .teacher-courses-page .action-primary:hover{background:#212120}.module-layout-container .teacher-courses-page .action-toggle{background:#f1ede2;border-color:#ddd6c8;color:#4d4c48}.module-layout-container .teacher-courses-page .action-toggle:hover:not(:disabled){background:#e9e3d7}.module-layout-container .teacher-courses-page .action-toggle.is-live{background:#ece8dc;border-color:#d9d3c8;color:#7a5a4d}.module-layout-container .teacher-courses-page .action-danger{background:#fff1f2;border-color:#fbc8ce}.module-layout-container .teacher-courses-page .empty{background:#faf9f5;border-color:#e8e6dc}.module-layout-container .teacher-courses-page .courses-pagination{margin-top:.3rem;display:flex;align-items:center;justify-content:flex-end;gap:.6rem}.module-layout-container .teacher-courses-page .pagination-btn{border:1px solid #ddd6c8;background:#f8f6ef;color:#4d4c48;border-radius:10px;padding:.45rem .72rem;font-size:.8rem;font-weight:700;display:inline-flex;align-items:center;gap:.32rem;cursor:pointer;font-family:inherit}.module-layout-container .teacher-courses-page .pagination-btn:disabled{opacity:.45;cursor:not-allowed}.module-layout-container .teacher-courses-page .pagination-info{font-size:.82rem;color:#5e5d59}.module-layout-container .teacher-courses-page .pagination-info strong{color:#2f2f2d}@media(max-width:768px){.module-layout-container .teacher-courses-page{padding:1rem 1rem 1.25rem;min-height:calc(100vh - 68px)}.module-layout-container .teacher-courses-page .grid-cards:not(.list-view){grid-template-columns:repeat(2,minmax(0,1fr))}.module-layout-container .teacher-courses-page .courses-pagination{justify-content:space-between}}@media(max-width:560px){.module-layout-container .teacher-courses-page .grid-cards:not(.list-view){grid-template-columns:1fr}}.module-layout-container .teacher-courses-page section.hero-card,.module-layout-container .teacher-courses-page .hero-card{background:linear-gradient(165deg,#fffefb,#f6f0e6 45%,#faf7f0);border:1px solid #e8e6dc;border-radius:16px;box-shadow:0 8px 28px #2d231912;color:#141413}.module-layout-container .teacher-courses-page .hero-card h2,.module-layout-container .teacher-courses-page section.hero-card h2{color:#141413;font-weight:700;letter-spacing:0}.module-layout-container .teacher-courses-page .hero-kicker{color:#7a5a4d;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.module-layout-container .teacher-courses-page .qb-quicknav,.module-layout-container .teacher-courses-page .abf-quicknav,.module-layout-container .teacher-courses-page .tqm-quicknav{border-radius:14px;border:1px solid #e8e6dc;background:#faf9f5;box-shadow:0 2px 12px #0000000a}.module-layout-container .teacher-courses-page .exam-matrix-workflow-hero>div:first-of-type>div{background:#faf7f3!important;border:1px solid #e8e6dc!important;border-radius:12px!important}@keyframes pricingFadeUp{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmerBorder{0%,to{opacity:.5}50%{opacity:1}}@keyframes shimmerSkeleton{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes spinnerRing{to{transform:rotate(360deg)}}@keyframes trustPillIn{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.pricing-animate-in{animation:pricingFadeUp .7s cubic-bezier(.22,1,.36,1) both}.pricing-animate-in:nth-child(1){animation-delay:0s}.pricing-animate-in:nth-child(2){animation-delay:.1s}.pricing-animate-in:nth-child(3){animation-delay:.2s}.pricing-animate-in:nth-child(4){animation-delay:.3s}.pricing-hero{padding:8rem 0 4rem;background:var(--c-bg, #fafaff);text-align:center;position:relative;overflow:hidden}.pricing-hero--dashboard{padding:3.5rem 0 2.5rem}.pricing-hero-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(94,92,230,.06) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}.pricing-hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.pricing-hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;line-height:1.15;letter-spacing:-1.5px;margin:0 0 1.25rem;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);color:var(--c-text-1, #0e0c15)}.pricing-hero-desc{font-size:1.1rem;line-height:1.7;color:var(--c-text-3, #756b85);max-width:560px;margin:0 auto}.pricing-subnav{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;margin-top:1.75rem;padding:.35rem;background:#ffffffa6;border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-pill, 100px);box-shadow:0 2px 12px #0e0c150a}.pricing-subnav__link{font-size:.8rem;font-weight:600;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);color:var(--c-text-2, #3f3a52);text-decoration:none;padding:.5rem 1rem;border-radius:var(--r-pill, 100px);transition:color .2s ease,background .2s ease}.pricing-subnav__link:hover{color:var(--c-text-1, #0e0c15);background:#5e5ce614}.pricing-subnav__link:focus-visible{outline:2px solid var(--c-primary, #c96442);outline-offset:2px}.pricing-section-anchor{scroll-margin-top:5.5rem}.pricing-cards-section--module{padding:2.5rem 0 4.5rem;background:radial-gradient(ellipse 90% 50% at 8% 0%,rgba(201,100,66,.06),transparent 55%),radial-gradient(ellipse 60% 40% at 92% 12%,rgba(30,64,175,.04),transparent 50%),linear-gradient(180deg,#f9f8f3,#f5f2eb,#f7f5f0)}.pricing-trust-bar{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:2rem;flex-wrap:wrap}.pricing-trust-pill{display:inline-flex;align-items:center;gap:.45rem;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-pill, 100px);padding:.5rem 1.1rem;box-shadow:0 2px 10px #0e0c150d;font-size:.85rem;color:var(--c-text-2, #3f3a52);opacity:0;animation:trustPillIn .55s cubic-bezier(.22,1,.36,1) forwards}.pricing-trust-pill__icon{font-size:1rem;line-height:1}.pricing-trust-pill__value{font-weight:700;color:var(--c-text-1, #0e0c15);font-family:var(--f-heading, "Be Vietnam Pro", sans-serif)}.pricing-trust-pill__label{color:var(--c-text-3, #756b85)}.pricing-cards-section{padding:1rem 0 5rem;background:var(--c-bg, #fafaff);position:relative}.pricing-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:end;max-width:980px;margin:0 auto}.pricing-empty-state{grid-column:1 / -1;max-width:440px;margin:0 auto;text-align:center;padding:2.5rem 1.75rem;background:var(--c-surface, #ffffff);border:1px dashed var(--c-border, #e8e5f0);border-radius:var(--r-xl, 24px);display:flex;flex-direction:column;align-items:center;gap:.5rem}.pricing-empty-state__icon{color:var(--c-text-3, #756b85);margin-bottom:.5rem;opacity:.9}.pricing-empty-state__title{font-size:1.15rem;font-weight:700;color:var(--c-text-1, #0e0c15);margin:0;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);letter-spacing:-.3px}.pricing-empty-state__desc{font-size:.9rem;line-height:1.6;color:var(--c-text-3, #756b85);margin:0 0 .75rem}.pricing-empty-state__btn{margin-top:.5rem;display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.5rem;font-size:.88rem;font-weight:600;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);color:#141413;background:var(--c-primary, #c96442);border:none;border-radius:var(--r-md, 16px);cursor:pointer;box-shadow:0 2px 10px #c9644238;transition:background .2s ease,transform .2s ease}.pricing-empty-state__btn:hover{background:#4e4cc6;transform:translateY(-1px)}.pricing-plan-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 4px 16px #0000001a,0 12px 40px #0000000f;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease}.pricing-plan-card:hover{transform:translateY(-5px);box-shadow:0 8px 28px #00000024,0 20px 56px #0000001a}.pricing-plan-card__head{background:#151c2c;padding:2.25rem 1.75rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden}.pricing-plan-card--featured .pricing-plan-card__head{background:#1b1035;padding-top:3.5rem}.pricing-plan-card--featured{z-index:2;box-shadow:0 8px 32px #0000002e,0 24px 64px #5b21b633}.pricing-plan-card--featured:hover{transform:translateY(-7px)}.pricing-plan-card--active .pricing-plan-card__head{background:#0d2a1c}.pricing-popular-ribbon,.pricing-current-ribbon{position:absolute;top:20px;right:-24px;font-size:.58rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:5px 32px;transform:rotate(45deg);pointer-events:none;z-index:3}.pricing-popular-ribbon{background:#7c3bed;color:#fff}.pricing-current-ribbon{background:#059669;color:#141413}.pricing-plan-icon{width:88px;height:88px;display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem}.pricing-plan-icon svg{width:56px;height:56px;stroke:#ffffffe6;color:#ffffffe6}.pricing-plan-name{font-size:.82rem;font-weight:800;color:#ffffffe6;text-transform:uppercase;letter-spacing:2.5px;margin:0;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif)}.pricing-plan-card__body{padding:1.75rem;flex:1;display:flex;flex-direction:column}.pricing-plan-desc{font-size:.83rem;color:var(--c-text-3, #756b85);line-height:1.55;margin:0 0 1.25rem}.pricing-plan-price-block{display:flex;align-items:baseline;gap:.15rem;margin-bottom:1.1rem}.pricing-plan-price{font-size:clamp(2.2rem,3.5vw,2.8rem);font-weight:800;color:#0e0c15;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);letter-spacing:-1.5px;line-height:1}.pricing-plan-period{font-size:.88rem;font-weight:500;color:var(--c-text-3, #756b85)}.pricing-token-pill{display:inline-flex;align-items:center;gap:.35rem;background:#f5f3ff;color:#6d28d9;border:1px solid #ddd6fe;font-size:.76rem;font-weight:600;padding:.28rem .75rem;border-radius:100px;margin-bottom:1.1rem;width:-moz-fit-content;width:fit-content}.pricing-plan-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.85rem 1.25rem;border-radius:10px;font-size:.875rem;font-weight:700;text-decoration:none;transition:all .2s ease;cursor:pointer;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);letter-spacing:.5px;text-transform:uppercase}.pricing-plan-btn--primary{background:#151c2c;color:#fff;border:2px solid #151c2c}.pricing-plan-btn--primary:hover:not(:disabled){background:#1e2a42;border-color:#1e2a42;color:#fff;transform:translateY(-1px)}.pricing-plan-btn--outline{background:transparent;color:#151c2c;border:2px solid #d1d5db}.pricing-plan-btn--outline:hover:not(:disabled){border-color:#151c2c;background:#f9fafb;color:#151c2c;transform:translateY(-1px)}.pricing-plan-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.pricing-btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spinnerRing .6s linear infinite;flex-shrink:0}.pricing-plan-divider{width:100%;height:1px;background:#f0f0f0;margin:1.25rem 0}.pricing-plan-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem;flex:1}.pricing-check{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;min-width:22px;border-radius:6px;background:linear-gradient(135deg,#10b9811f,#34d39933);color:#141413;transition:transform .2s ease}.pricing-check--primary{background:linear-gradient(135deg,#5e5ce61f,#858dff33);color:#141413}.pricing-plan-features li:hover .pricing-check{transform:scale(1.15)}.pricing-skeleton-card{pointer-events:none;gap:.9rem}.pricing-skeleton{border-radius:10px;background:linear-gradient(90deg,#0e0c150d 25%,#0e0c1517,#0e0c150d 75%);background-size:800px 100%;animation:shimmerSkeleton 1.4s ease-in-out infinite;position:relative;z-index:1}.pricing-skeleton--icon{width:44px;height:44px;border-radius:12px}.pricing-skeleton--title{height:22px;width:55%}.pricing-skeleton--subtitle{height:14px;width:75%}.pricing-skeleton--price{height:48px;width:50%;margin:.25rem 0}.pricing-skeleton--btn{height:46px;width:100%;border-radius:16px}.pricing-wallet-banner{display:flex;align-items:flex-start;background:#ffffffe6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-xl, 24px);padding:1.5rem 2rem;margin-bottom:2rem;box-shadow:0 4px 16px #0e0c150a,0 12px 40px #5e5ce60f;position:relative;overflow:hidden;flex-wrap:wrap;gap:1.25rem}.pricing-wallet-banner__glow{position:absolute;width:300px;height:300px;border-radius:50%;top:-150px;right:-80px;background:radial-gradient(circle,rgba(94,92,230,.07),transparent 70%);filter:blur(40px);pointer-events:none}.pricing-wallet-banner__col{display:flex;flex-direction:column;gap:.3rem;position:relative;z-index:1;min-width:140px}.pricing-wallet-banner__col--token{min-width:200px}.pricing-wallet-banner__label{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--c-text-3, #756b85)}.pricing-wallet-banner__value{font-size:1.25rem;font-weight:700;color:var(--c-text-1, #0e0c15);font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);letter-spacing:-.4px;display:flex;align-items:center;gap:.3rem}.pricing-wallet-banner__quota{font-size:.85rem;font-weight:500;color:var(--c-text-3, #756b85)}.pricing-wallet-banner__divider{width:1px;align-self:stretch;background:var(--c-border-soft, #f0edf8);flex-shrink:0;position:relative;z-index:1}.pricing-wallet-banner__action{margin-left:auto;display:flex;align-items:center;position:relative;z-index:1}.pricing-active-plan-badge{display:inline-flex;align-items:center;background:linear-gradient(135deg,var(--c-primary, #c96442),#858dff);color:#141413;font-size:.78rem;font-weight:700;padding:.25rem .75rem;border-radius:var(--r-pill, 100px);letter-spacing:.2px}.pricing-token-bar{height:6px;border-radius:99px;background:#0e0c1512;overflow:hidden;margin-top:.2rem}.pricing-token-bar__fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--c-primary, #c96442),#858dff);width:100%;transform-origin:left;transition:transform .6s cubic-bezier(.22,1,.36,1)}.pricing-token-percent{font-size:.72rem;color:var(--c-text-3, #756b85);font-weight:500}.pricing-wallet-topup-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--c-primary, #c96442);color:#141413;border:none;border-radius:var(--r-md, 16px);padding:.65rem 1.25rem;font-size:.83rem;font-weight:600;cursor:pointer;transition:all .25s ease;white-space:nowrap;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);box-shadow:0 2px 10px #c964423d}.pricing-wallet-topup-btn:hover{background:#4e4cc6;transform:translateY(-2px);box-shadow:0 4px 16px #5e5ce64d}.pricing-alert{display:flex;align-items:flex-start;gap:.6rem;padding:.85rem 1.25rem;border-radius:var(--r-md, 16px);font-size:.88rem;font-weight:500;margin-bottom:1.25rem}.pricing-alert__text{flex:1;min-width:0;text-align:left;line-height:1.5}.pricing-alert-dismiss{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:-.2rem -.35rem 0 0;padding:0;border:none;border-radius:var(--r-sm, 8px);background:transparent;color:inherit;opacity:.7;cursor:pointer;transition:opacity .2s ease,background .2s ease}.pricing-alert-dismiss:hover{opacity:1;background:#0e0c150f}.pricing-alert-dismiss:focus-visible{outline:2px solid var(--c-primary, #c96442);outline-offset:2px;opacity:1}.pricing-alert--error{background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#141413}.pricing-alert--success{background:#10b98114;border:1px solid rgba(16,185,129,.2);color:#141413}.pricing-comparison-section{padding:5rem 0;background:var(--c-bg, #fafaff);position:relative;overflow:hidden}.pricing-comparison-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(90%,800px);height:1px;background:linear-gradient(90deg,transparent,var(--c-border, #e8e5f0),transparent);z-index:1}.pricing-comparison-header{text-align:center;margin-bottom:3rem;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.pricing-comparison-title{font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:700;color:var(--c-text-1, #0e0c15);margin:0;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);line-height:1.2;letter-spacing:-.8px}.pricing-comparison-table-wrap{max-width:900px;margin:0 auto;background:var(--c-surface, #ffffff);border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-xl, 24px);overflow:hidden;box-shadow:var(--shadow-sm, 0 2px 4px rgba(14, 12, 21, .03), 0 4px 12px rgba(14, 12, 21, .04));position:relative;z-index:1}.pricing-comparison-table{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;width:100%}.pricing-ct-header{display:contents}.pricing-ct-header-cell{padding:1.5rem 1.25rem;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);font-weight:700;font-size:.95rem;color:var(--c-text-1, #0e0c15);text-align:center;border-bottom:1px solid var(--c-border-soft, #f0edf8);background:var(--c-surface, #ffffff);letter-spacing:-.2px}.pricing-ct-header-cell:first-child{text-align:left;font-size:.82rem;font-weight:600;color:var(--c-text-3, #756b85);text-transform:uppercase;letter-spacing:.5px}.pricing-ct-header-cell--featured{background:#5e5ce60a;color:var(--c-primary, #c96442)}.pricing-ct-row{display:contents}.pricing-ct-cell{padding:1rem 1.25rem;font-size:.88rem;color:var(--c-text-2, #3f3a52);border-bottom:1px solid var(--c-border-soft, #f0edf8);display:flex;align-items:center;justify-content:center;transition:background .2s ease}.pricing-ct-cell:first-child{justify-content:flex-start;font-weight:500;color:var(--c-text-1, #0e0c15)}.pricing-ct-cell--featured,.pricing-ct-row:hover .pricing-ct-cell{background:#5e5ce608}.pricing-ct-row:hover .pricing-ct-cell--featured{background:#5e5ce612}.pricing-ct-row:last-child .pricing-ct-cell{border-bottom:none}.pricing-ct-check{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#10b9811f,#34d39933);color:#141413}.pricing-ct-check--primary{background:linear-gradient(135deg,#5e5ce61f,#858dff33);color:#141413}.pricing-ct-cross{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#0e0c150a;color:var(--c-text-3, #756b85);font-size:.85rem;font-weight:500}.pricing-ct-text{font-size:.82rem;font-weight:600;color:var(--c-text-2, #3f3a52)}.pricing-ct-text--featured{color:var(--c-primary, #c96442)}.pricing-faq-section{padding:5rem 0;background:var(--c-surface, #ffffff);position:relative;overflow:hidden}.pricing-faq-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(90%,800px);height:1px;background:linear-gradient(90deg,transparent,var(--c-border, #e8e5f0),transparent);z-index:1}.pricing-faq-header{text-align:center;margin-bottom:3rem;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.pricing-faq-title{font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:700;color:var(--c-text-1, #0e0c15);margin:0;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);line-height:1.2;letter-spacing:-.8px}.pricing-faq-accordion{max-width:740px;margin:0 auto;display:flex;flex-direction:column;gap:.75rem;position:relative;z-index:1}.pricing-faq-item{background:#ffffffe6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-xl, 24px);overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease;opacity:0;animation:pricingFadeUp .55s cubic-bezier(.22,1,.36,1) forwards}.pricing-faq-item--open{border-color:#5e5ce633;box-shadow:0 4px 20px #5e5ce612}.pricing-faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;background:transparent;border:none;cursor:pointer;font-size:.97rem;font-weight:600;color:var(--c-text-1, #0e0c15);font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);letter-spacing:-.2px;text-align:left;transition:color .2s ease}.pricing-faq-question:hover,.pricing-faq-item--open .pricing-faq-question{color:var(--c-primary, #c96442)}.pricing-faq-chevron{flex-shrink:0;color:var(--c-text-3, #756b85);transition:transform .3s cubic-bezier(.22,1,.36,1),color .2s ease}.pricing-faq-item--open .pricing-faq-chevron{transform:rotate(180deg);color:var(--c-primary, #c96442)}.pricing-faq-answer{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows .38s cubic-bezier(.22,1,.36,1)}.pricing-faq-answer>*{min-height:0}.pricing-faq-item--open .pricing-faq-answer{grid-template-rows:1fr}.pricing-faq-answer p{padding:0 1.5rem 1.4rem;margin:0;font-size:.9rem;color:var(--c-text-3, #756b85);line-height:1.75}.pricing-cta-section{padding:5rem 0 6rem;background:var(--c-bg, #fafaff);position:relative}.pricing-cta-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(90%,800px);height:1px;background:linear-gradient(90deg,transparent,var(--c-border, #e8e5f0),transparent)}.pricing-cta-card{text-align:center;padding:4rem 2rem;border-radius:var(--r-xl, 24px);background:linear-gradient(180deg,#fff,#f5f3ff,#eeedf8);border:1px solid var(--c-border-soft, #f0edf8);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;box-shadow:var(--shadow-sm, 0 2px 4px rgba(14, 12, 21, .03), 0 4px 12px rgba(14, 12, 21, .04))}.pricing-cta-glow{position:absolute;width:400px;height:400px;border-radius:50%;top:-150px;left:50%;transform:translate(-50%);background:radial-gradient(circle,rgba(94,92,230,.1),transparent 70%);filter:blur(50px);pointer-events:none}.pricing-cta-title{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:var(--c-text-1, #0e0c15);margin:0 0 1rem;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);line-height:1.2;letter-spacing:-.8px;position:relative;z-index:1}.pricing-cta-desc{font-size:1rem;color:var(--c-text-3, #756b85);max-width:500px;margin:0 auto 1.5rem;line-height:1.7;position:relative;z-index:1}.pricing-cta-avatars{display:flex;align-items:center;gap:0;margin-bottom:2rem;position:relative;z-index:1}.pricing-cta-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#f0edf8,#e4e1f5);border:2px solid #fff;font-size:1.1rem;margin-left:-8px;box-shadow:0 2px 8px #0e0c1514;transition:transform .2s ease}.pricing-cta-avatar:first-child{margin-left:0}.pricing-cta-avatar:hover{transform:translateY(-3px) scale(1.12)}.pricing-cta-avatar-label{margin-left:.75rem;font-size:.82rem;color:var(--c-text-3, #756b85);font-weight:600}.pricing-cta-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}@keyframes pricingModalOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes pricingModalSlideUp{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.pricing-modal-root{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.5rem;pointer-events:auto;animation:pricingModalOverlayIn .22s ease both}.pricing-modal-backdrop{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;cursor:default;background:#0e0c158c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:0}.pricing-modal{position:relative;z-index:1;background:var(--c-surface, #ffffff);border:1px solid var(--c-border-soft, #f0edf8);border-radius:var(--r-xl, 24px);padding:2.5rem 2.25rem 2rem;width:100%;max-width:420px;box-shadow:0 8px 32px #0e0c151f,0 24px 64px #5e5ce626;display:flex;flex-direction:column;align-items:center;text-align:center;animation:pricingModalSlideUp .28s cubic-bezier(.22,1,.36,1) both;margin:0;outline:none;color:inherit;pointer-events:auto}.pricing-modal:before{content:"";position:absolute;width:200px;height:200px;top:-60px;left:50%;transform:translate(-50%);border-radius:50%;background:radial-gradient(circle,rgba(239,68,68,.1),transparent 70%);filter:blur(30px);pointer-events:none}.pricing-modal-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#ef44441a,#fca5a52e);color:#141413;margin-bottom:1.25rem;position:relative;z-index:1;box-shadow:0 4px 16px #ef444426}.pricing-modal-title{font-size:1.35rem;font-weight:700;color:var(--c-text-1, #0e0c15);margin:0 0 .6rem;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);letter-spacing:-.3px;position:relative;z-index:1}.pricing-modal-desc{font-size:.9rem;color:var(--c-text-3, #756b85);line-height:1.7;margin:0 0 1.75rem;max-width:320px;position:relative;z-index:1}.pricing-modal-actions{display:flex;gap:.75rem;width:100%;position:relative;z-index:1}.pricing-modal-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.25rem;border-radius:var(--r-md, 16px);font-size:.88rem;font-weight:600;font-family:var(--f-heading, "Be Vietnam Pro", sans-serif);letter-spacing:-.1px;cursor:pointer;transition:all .25s ease;border:none}.pricing-modal-btn--outline{background:transparent;color:var(--c-text-2, #3f3a52);border:1px solid var(--c-border, #e8e5f0)}.pricing-modal-btn--outline:hover{border-color:var(--c-text-2, #3f3a52);background:#0e0c1514;color:var(--c-text-1, #0e0c15)}.pricing-modal-btn--primary{background:linear-gradient(135deg,#c96442,#7b79f7);color:#141413;box-shadow:0 2px 8px #5e5ce640,0 4px 16px #c9644233}.pricing-modal-btn--primary:hover{background:linear-gradient(135deg,#4e4cc6,#6c6aea);transform:translateY(-2px);box-shadow:0 4px 14px #5e5ce652,0 8px 28px #c964423d}@media(max-width:968px){.pricing-cards-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto;gap:1.25rem}.pricing-plan-card--featured{transform:scale(1);order:-1}.pricing-plan-card--featured:hover{transform:translateY(-8px)}.pricing-comparison-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.pricing-comparison-table{min-width:640px}.pricing-wallet-banner{flex-direction:column;gap:1rem}.pricing-wallet-banner__divider{width:100%;height:1px;align-self:auto}.pricing-wallet-banner__action{margin-left:0;align-self:flex-start}.pricing-wallet-topup-btn{align-self:flex-start}}@media(max-width:640px){.pricing-hero{padding:5rem 0 2.5rem}.pricing-hero-title{font-size:2rem;letter-spacing:-.8px}.pricing-hero-desc{font-size:.95rem}.pricing-trust-bar{gap:.5rem}.pricing-trust-pill{font-size:.8rem;padding:.4rem .85rem}.pricing-cards-section{padding:.5rem 0 3rem}.pricing-plan-card{padding:2rem 1.5rem}.pricing-plan-card:hover,.pricing-plan-card--featured:hover{transform:none}.pricing-faq-section,.pricing-cta-section,.pricing-comparison-section{padding:3rem 0}.pricing-cta-card{padding:3rem 1.5rem}.pricing-cta-title,.pricing-faq-title,.pricing-comparison-title{font-size:1.5rem}.pricing-comparison-table-wrap{border-radius:var(--r-lg, 20px)}.pricing-comparison-table{min-width:580px}.pricing-ct-header-cell,.pricing-ct-cell{padding:.85rem 1rem;font-size:.82rem}.pricing-cta-avatars{flex-wrap:wrap;justify-content:center;gap:.5rem}.pricing-cta-avatar{margin-left:0}}@media(max-width:480px){.pricing-modal{padding:2rem 1.5rem 1.75rem}.pricing-modal-actions{flex-direction:column}}@media(max-width:640px){.pricing-subnav{margin-top:1.25rem;width:100%;max-width:100%}.pricing-subnav__link{flex:1 1 auto;text-align:center;min-width:min(100%,8rem)}}@media(prefers-reduced-motion:reduce){.pricing-animate-in,.pricing-faq-item,.pricing-trust-pill,.pricing-modal-root,.pricing-modal,.pricing-faq-answer{animation:none!important;transition:none!important}.pricing-faq-answer{display:block}.pricing-faq-item--open .pricing-faq-answer p{padding-top:.5rem}.pricing-faq-item:not(.pricing-faq-item--open) .pricing-faq-answer{display:none}}.module-layout-container.pricing-module-page-wrap{--pricing-m-accent: #c96442;--pricing-m-mesh-1: rgba(201, 100, 66, .07);--pricing-m-mesh-2: rgba(30, 64, 175, .05)}.module-layout-container .stat-card.stat-emerald{background:#ecfdf5;border-color:#a7f3d0}.module-layout-container .stat-card.stat-emerald h3{color:#065f46}.module-layout-container .stat-card.stat-blue{background:#eff6ff;border-color:#bfdbfe}.module-layout-container .stat-card.stat-blue h3{color:#1e40af}.module-layout-container .stat-card.stat-emerald,.module-layout-container .stat-card.stat-blue{display:flex;align-items:center;gap:.85rem;transition:transform .18s,box-shadow .18s}.module-layout-container .stat-card.stat-emerald:hover,.module-layout-container .stat-card.stat-blue:hover{transform:translateY(-2px);box-shadow:0 10px 22px #0f172a17}.module-layout-container .stats-grid--pricing-two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px}.module-layout-container .stat-icon-wrap{flex-shrink:0;width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center}.module-layout-container .stat-card.stat-emerald .stat-icon-wrap{background:#047857;color:#047857}.module-layout-container .stat-card.stat-blue .stat-icon-wrap{background:#1d4ed8;color:#1d4ed8}.module-layout-container .stat-icon-wrap svg{color:#fff}.module-layout-container .pricing-subscription-page{position:relative;z-index:0;padding-top:.5rem}.module-layout-container .pricing-subscription-page:before{content:"";position:absolute;left:50%;top:0;transform:translate(-50%);width:100vw;min-height:100%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 90% 50% at 8% 0%,var(--pricing-m-mesh-1),transparent 55%),radial-gradient(ellipse 60% 40% at 92% 12%,var(--pricing-m-mesh-2),transparent 50%),linear-gradient(180deg,#f9f8f3,#f5f2eb 40%,#f7f5f0)}.module-layout-container.pricing-public-plans{max-width:1220px;margin:0 auto;padding:0 1.5rem .5rem}.module-layout-container .grid-cards.pricing-m-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:stretch}@media(max-width:1100px){.module-layout-container .grid-cards.pricing-m-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.module-layout-container .grid-cards.pricing-m-plan-grid{grid-template-columns:1fr}}.module-layout-container .data-card.pricing-m-plan-card{padding:0;min-height:0;gap:0;overflow:hidden;border:1px solid rgba(20,34,53,.08);border-radius:18px;background:#fff;box-shadow:0 4px 20px #14223512}.module-layout-container .data-card.pricing-m-plan-card--rest:hover{border-color:#d4cfc4;box-shadow:0 8px 28px #1422351a;transform:translateY(-4px)}.module-layout-container .pricing-m-plan-card .course-desc{-webkit-line-clamp:3}.module-layout-container .data-card.pricing-m-plan-card--featured{border-color:#c9644273;box-shadow:0 20px 48px -10px #c9644247,0 0 0 1px #c9644238;z-index:1}@media(min-width:960px){.module-layout-container .data-card.pricing-m-plan-card--featured{transform:translateY(-6px) scale(1.02)}}.module-layout-container .data-card.pricing-m-plan-card--featured:hover{box-shadow:0 24px 56px -12px #c9644259,0 0 0 1px #c9644247;transform:translateY(-8px) scale(1.03)}.module-layout-container .pricing-m-plan-card--current{border-color:#86efac;box-shadow:0 0 0 1px #14532d26}.module-layout-container .pricing-m-plan-card .course-cover.pricing-m-cover--standard{min-height:132px;padding:1.05rem 1.2rem .95rem}.module-layout-container .pricing-m-plan-card .course-cover.pricing-m-cover--spotlight{min-height:156px;padding:1.2rem 1.25rem 1rem;box-shadow:inset 0 1px #ffffffb3;border-bottom:1px solid rgba(122,43,10,.08)}.module-layout-container .course-cover .cover-overlay--spotlight{background:radial-gradient(ellipse 90% 80% at 20% 0%,rgba(255,255,255,.45),transparent 55%),linear-gradient(180deg,rgba(255,255,255,.15) 0%,transparent 55%),linear-gradient(to top,rgba(122,43,10,.07) 0%,transparent 50%)}.module-layout-container .pricing-m-plan-icon{position:relative;z-index:1;width:44px;height:44px;display:flex;align-items:center;justify-content:center;margin-bottom:.45rem}.module-layout-container .pricing-m-plan-icon svg{width:28px;height:28px;stroke:currentColor;opacity:.92}.module-layout-container .course-badge.badge-pricing-popular{background:#fffbebf2;color:#9a3412;border:1px solid rgba(201,100,66,.28);font-size:.66rem}.module-layout-container .course-badge.badge-pricing-current{background:#f0fdf4f2;color:#14532d;border:1px solid rgba(22,101,52,.2);font-size:.66rem}.module-layout-container .pricing-m-price-block{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .45rem;margin:.1rem 0 .35rem}.module-layout-container .pricing-m-price{font-size:1.45rem;font-weight:800;letter-spacing:-.04em;color:var(--mod-ink);font-family:var(--font-family, "Segoe UI", system-ui, sans-serif);line-height:1.1}.module-layout-container .pricing-m-period{font-size:.78rem;font-weight:600;color:var(--mod-slate-500);text-transform:lowercase}.module-layout-container .course-actions.pricing-m-plan-actions{flex-direction:column;flex-wrap:wrap;overflow:visible;margin-top:.35rem}.module-layout-container .pricing-m-plan-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:auto;width:100%}.module-layout-container .pricing-m-plan-actions .action-primary,.module-layout-container .pricing-m-plan-actions .action-toggle{width:100%;justify-content:center;flex:1 1 auto}.module-layout-container .pricing-m-plan-actions a.action-primary,.module-layout-container .pricing-m-plan-actions a.action-toggle{text-decoration:none;text-align:center}.module-layout-container .pricing-m-plan-card .course-body{padding:1.1rem 1.2rem 1.2rem;background:linear-gradient(180deg,#fff,#fbf9f6);border-top:1px solid rgba(20,34,53,.05)}.module-layout-container .pricing-m-plan-card--featured .course-body{background:linear-gradient(180deg,#fff,#fffaf6)}.module-layout-container .pricing-m-plan-card .metric{background:#f3f1ec;border-color:#e5e0d8;font-size:.78rem}.module-layout-container .pricing-m-plan-card--featured .metric{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-color:#c9644238;color:#5c2e18;font-weight:700}.module-layout-container .pricing-m-plan-card .action-primary{background:var(--pricing-m-accent, #c96442)!important;border:1px solid var(--pricing-m-accent, #c96442)!important;color:#141413!important;box-shadow:0 0 0 1px #c964421f}.module-layout-container .pricing-m-plan-card .action-primary:hover:not(:disabled){background:#b85839!important;border-color:#b85839!important;color:#141413!important}.module-layout-container .pricing-m-features{list-style:none;margin:.35rem 0 0;padding:.65rem 0 0;border-top:1px solid var(--mod-slate-100);display:flex;flex-direction:column;gap:.45rem}.module-layout-container .pricing-m-features li{display:flex;align-items:flex-start;gap:.4rem;font-size:.8rem;line-height:1.45;color:var(--mod-slate-500)}.module-layout-container .pricing-m-check{flex-shrink:0;width:20px;height:20px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#065f46;margin-top:.1rem}.module-layout-container .pricing-m-check--primary{background:linear-gradient(135deg,#fff7ed,#ffedd5);color:#9a3412}.module-layout-container .pricing-m-token-block{margin-top:.75rem;padding:.85rem 1rem;background:#fff;border:1px solid var(--mod-slate-100);border-radius:14px;box-shadow:0 2px 8px #0e1d340a}.module-layout-container .pricing-m-token-bar{height:6px;border-radius:99px;background:#0f172a12;overflow:hidden;margin-top:.35rem}.module-layout-container .pricing-m-token-bar__fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#c96442,#e8a077);transition:opacity .4s ease}.module-layout-container .pricing-m-token-meta{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--mod-slate-500);margin-bottom:.25rem}.module-layout-container .pricing-m-token-meta strong{color:var(--mod-ink);font-size:.92rem}.module-layout-container .pricing-m-empty{grid-column:1 / -1;text-align:center;padding:2.5rem 1.5rem;background:#fff;border:1px dashed #d0defc;border-radius:14px}.module-layout-container .pricing-skeleton-mesh .skeleton-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.module-layout-container .pricing-skeleton-mesh .skeleton-card{height:320px;border-radius:14px;background:linear-gradient(90deg,#f1f5f9 25%,#e8edf5,#f1f5f9 75%);background-size:400% 100%;animation:pricing-m-shimmer 1.5s infinite}@keyframes pricing-m-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:1100px){.module-layout-container .pricing-skeleton-mesh .skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.module-layout-container .pricing-skeleton-mesh .skeleton-grid{grid-template-columns:1fr}}@media(max-width:600px){.module-layout-container .stats-grid--pricing-two{grid-template-columns:1fr;max-width:none}}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics,.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page,.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page{padding:0;max-width:1600px;margin:0 auto;background:transparent!important;min-height:0}.module-layout-container.admin-mgmt-shell.admin-finance-studio .overview-header,.module-layout-container.admin-mgmt-shell.admin-finance-studio .analytics-header{background:#faf9f5;border:1px solid #e8e6dc;border-radius:16px;box-shadow:0 0 0 1px #d1cfc559,#0000000a 0 6px 20px;padding:1.1rem 1.25rem;margin-bottom:1.25rem}.module-layout-container.admin-mgmt-shell.admin-finance-studio .header-content h1{font-size:1.65rem;font-weight:800;letter-spacing:-.02em;color:#141413;margin:0 0 .35rem}.module-layout-container.admin-mgmt-shell.admin-finance-studio .header-content .subtitle{color:#5e5d59;font-size:.9rem;line-height:1.55;margin:0}.module-layout-container.admin-mgmt-shell.admin-finance-studio .refresh-button,.module-layout-container.admin-mgmt-shell.admin-finance-studio .export-button{background:#c96442;border:1px solid #c96442;color:#faf9f5;border-radius:11px;font-weight:600;box-shadow:0 0 0 1px #c9644233}.module-layout-container.admin-mgmt-shell.admin-finance-studio .refresh-button:hover,.module-layout-container.admin-mgmt-shell.admin-finance-studio .export-button:hover{background:#b85535;border-color:#b85535;color:#faf9f5}.module-layout-container.admin-mgmt-shell.admin-finance-studio .refresh-button,.module-layout-container.admin-mgmt-shell.admin-finance-studio .export-button{display:inline-flex;align-items:center;gap:.4rem}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-finance-spin{animation:admin-finance-spin .75s linear infinite}@keyframes admin-finance-spin{to{transform:rotate(360deg)}}.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .overview-stats .stat-card,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .section-container{background:#fffefb;border:1px solid #e8e6dc;box-shadow:0 0 0 1px #f0eee68c,#1414130a 0 8px 22px}.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .section-header{border-bottom-color:#e8e6dc}.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .limit-select{border-color:#ddd6c8;border-radius:12px;background:#fffefb;color:#141413}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(1){border-top-color:#c96442!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(2){border-top-color:#047857!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(3){border-top-color:#d97706!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(4){border-top-color:#b91c1c!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(5){border-top-color:#15803d!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(1) .txn-stat-icon{background:#c964421f!important;color:#9a4a32!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(2) .txn-stat-icon{background:#0478571f!important;color:#047857!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(3) .txn-stat-icon{background:#d9770624!important;color:#b45309!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(4) .txn-stat-icon{background:#b91c1c1a!important;color:#b91c1c!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .txn-stats-grid .txn-stat-card:nth-child(5) .txn-stat-icon{background:#15803d1f!important;color:#15803d!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page header.page-header .btn{display:inline-flex;align-items:center;gap:.4rem}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page header.page-header .btn-outline{border-color:#ddd6c8;color:#4d4c48;background:#fffefb}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page header.page-header .btn-outline:hover:not(:disabled){border-color:#c96442;color:#9a4a32;background:#fdf8f3}.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page header.page-header .btn-primary{display:inline-flex;align-items:center;gap:.4rem}.module-layout-container.admin-mgmt-shell.admin-finance-studio .month-input,.module-layout-container.admin-mgmt-shell.admin-finance-studio .period-select{border-color:#ddd6c8;border-radius:12px;background:#fffefb;color:#141413}.module-layout-container.admin-mgmt-shell.admin-finance-studio .month-input:focus,.module-layout-container.admin-mgmt-shell.admin-finance-studio .period-select:focus{outline:none;border-color:#c96442;box-shadow:0 0 0 3px #3898ec38}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-card,.module-layout-container.admin-mgmt-shell.admin-finance-studio .summary-card,.module-layout-container.admin-mgmt-shell.admin-finance-studio .course-card-analytics,.module-layout-container.admin-mgmt-shell.admin-finance-studio .instructor-card-analytics{background:#fffefb;border:1px solid #e8e6dc;box-shadow:0 0 0 1px #f0eee699,#1414130a 0 8px 22px}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-card:before{background:linear-gradient(90deg,#c96442,#d97757)!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-card.revenue:before{background:linear-gradient(90deg,#047857,#059669)!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-card.commission:before{background:linear-gradient(90deg,#b45309,#c96442)!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-card.subscriptions:before{background:linear-gradient(90deg,#6d28d9,#7c3aed)!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-card.instructors:before{background:linear-gradient(90deg,#d97706,#ea580c)!important}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-label,.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-header h4{color:#5e5d59}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-value,.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-value-small{color:#141413}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-trend.positive{color:#065f46}.module-layout-container.admin-mgmt-shell.admin-finance-studio .metric-trend.negative{color:#991b1b}.module-layout-container.admin-mgmt-shell.admin-finance-studio .quick-actions h2,.module-layout-container.admin-mgmt-shell.admin-finance-studio .section-title{color:#141413}.module-layout-container.admin-mgmt-shell.admin-finance-studio .action-card{background:#faf9f5;border:1px solid #e8e6dc;border-radius:14px}.module-layout-container.admin-mgmt-shell.admin-finance-studio .action-card:hover{border-color:#d0c7b8;box-shadow:0 8px 24px #2d231914}.module-layout-container.admin-mgmt-shell.admin-finance-studio .info-banner{background:#fdf8f3;border:1px solid #e8e6dc;border-radius:14px;color:#4d4c48}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview .loading-container,.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview .error-container,.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview .empty-container,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page .loading-container,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page .error-container,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page .empty-container,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .loading-container,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .error-container,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .empty-container{min-height:min(52vh,400px);padding:2.5rem 1.75rem;margin:0 auto;max-width:420px;width:100%;background:#fffefb;border:1px solid #e8e6dc;border-radius:18px;box-shadow:0 0 0 1px #f0eee6bf,0 12px 36px #2d23190f;color:#5e5d59;box-sizing:border-box}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview .spinner,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page .spinner,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .spinner{width:46px;height:46px;border:3px solid #ede8dc;border-top-color:#c96442;border-radius:50%;animation:admin-finance-spin .88s linear infinite;flex-shrink:0}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview .loading-container p,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page .loading-container p,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .loading-container p{margin-top:1.25rem;font-size:.95rem;font-weight:600;letter-spacing:.01em;color:#4d4c48;text-align:center;line-height:1.45}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview .error-container h3,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page .error-container h3,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .error-container h3{color:#141413;font-size:1.1rem;font-weight:700;margin:.5rem 0 .35rem}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview .error-container p,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page .error-container p,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .error-container p{font-size:.9rem;color:#5e5d59;text-align:center;margin:0 0 1rem;line-height:1.5}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-financial-overview .empty-container p,.module-layout-container.admin-mgmt-shell.admin-finance-studio .revenue-breakdown-page .empty-container p,.module-layout-container.admin-mgmt-shell.admin-finance-studio .marketplace-analytics .empty-container p{font-size:.95rem;color:#6b6860;text-align:center;margin:0}.module-layout-container.admin-mgmt-shell.admin-finance-studio .retry-button{background:#c96442;color:#faf9f5;border:1px solid #c96442;border-radius:10px;padding:.5rem 1rem;font-weight:600;cursor:pointer}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .page-header,.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page .page-header{padding-bottom:1.1rem;margin-bottom:1.25rem;border-bottom:1px solid #e8e6dc}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page header.page-header.courses-header-row,.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page header.page-header.courses-header-row{background:#faf9f5;border:1px solid #e8e6dc;border-radius:16px;box-shadow:0 0 0 1px #d1cfc559,#0000000a 0 6px 20px;padding:1.1rem 1.25rem;margin-bottom:1.25rem;border-bottom:none}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .page-title,.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page .page-title{color:#141413;font-size:1.65rem}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .page-subtitle,.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page .page-subtitle{color:#5e5d59}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .btn-primary,.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page .btn-primary{background:#c96442;border-color:#c96442;color:#faf9f5}.module-layout-container.admin-mgmt-shell.admin-finance-studio .admin-transactions-page .btn-primary:hover:not(:disabled),.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page .btn-primary:hover:not(:disabled){background:#b85535;border-color:#b85535;color:#faf9f5}.module-layout-container.admin-mgmt-shell.admin-finance-studio .txn-table-card,.module-layout-container.admin-mgmt-shell.admin-finance-studio .txn-filters{background:#fffefb;border-color:#e8e6dc}.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page .revenue-stats .stat-card{background:#fffefb;border:1px solid #e8e6dc;border-radius:16px;box-shadow:0 0 0 1px #f0eee68c}.module-layout-container.admin-mgmt-shell.admin-finance-studio .subscription-management-page .revenue-stats .stat-icon{background:#ede8dc!important;color:#7a5a4d;border:1px solid #ddd6c8}.module-layout-container.admin-mgmt-shell{position:relative;min-height:calc(100vh - 68px);min-height:100%;overflow-x:hidden;isolation:isolate}.module-layout-container .admin-mgmt-shell__bg{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 82% 52% at 8% 0%,rgba(201,100,66,.09),transparent 46%),radial-gradient(ellipse 68% 42% at 94% 10%,rgba(31,94,255,.06),transparent 44%),linear-gradient(180deg,#f5f4ed,#faf9f5 45%,#f4f7fe)}.module-layout-container .admin-mgmt-shell__content{position:relative;z-index:1}.module-layout-container .admin-mgmt-table-shell{min-height:0;border-radius:14px;background:#fff;border:1px solid #e5edf7;box-shadow:0 4px 16px #14223512;overflow:hidden}.module-layout-container .admin-mgmt-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem}.module-layout-container .admin-mgmt-toolbar .pill-group{flex:1 1 280px}.module-layout-container .admin-mgmt-toolbar .search-box{flex:1 1 220px;max-width:420px}.module-layout-container.admin-mgmt-shell .modal-overlay{z-index:12000}.subscription-management-page{width:100%}.subscription-management-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.75rem;gap:1rem}.subscription-management-page .page-header .header-stack{display:flex;flex-direction:column;gap:.25rem}.subscription-management-page .page-header .page-title{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:1.65rem;font-weight:700;letter-spacing:-.01em;color:#141413;margin:0}.subscription-management-page .page-header .page-subtitle{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9375rem;font-weight:400;line-height:1.55;color:#87867f;margin:0}.subscription-management-page .revenue-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-bottom:2.25rem}.subscription-management-page .stat-card{background:#faf9f5;border:1px solid #f0eee6;border-radius:16px;box-shadow:#0000000a 0 4px 20px;padding:1.25rem;display:flex;align-items:flex-start;gap:1rem;transition:box-shadow .2s,transform .2s;position:relative}.subscription-management-page .stat-card:hover{box-shadow:0 0 0 1px #d1cfc5,#0000000f 0 6px 24px;transform:translateY(-1px)}.subscription-management-page .stat-card.highlight{border-color:#c9644233;box-shadow:#c964420f 0 4px 20px,0 0 0 1px #c964421f}.subscription-management-page .stat-card .stat-icon{width:44px;height:44px;border-radius:12px;background:#e8e6dc;display:flex;align-items:center;justify-content:center;color:#5e5d59;flex-shrink:0}.subscription-management-page .stat-card.highlight .stat-icon{background:#c964421f;color:#c96442}.subscription-management-page .stat-card .stat-content{flex:1;min-width:0}.subscription-management-page .stat-card .stat-value{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:1.75rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1;color:#141413;margin-bottom:.2rem}.subscription-management-page .stat-card .stat-label{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#87867f}.subscription-management-page .stat-trend{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8rem;font-weight:600;margin-top:.375rem;display:flex;align-items:center;gap:.25rem}.subscription-management-page .stat-trend.positive{color:#2d7a4f}.subscription-management-page .stat-trend.negative{color:#b53333}.subscription-management-page .section-title{font-family:Playfair Display,Georgia,serif;font-size:1.375rem;font-weight:500;line-height:1.3;color:#141413;margin:0 0 1.25rem}.subscription-management-page .plans-section{margin-bottom:2.5rem}.subscription-management-page .plans-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.subscription-management-page .plan-card{background:#faf9f5;border:1px solid #f0eee6;border-radius:20px;padding:1.75rem;box-shadow:#0000000a 0 4px 20px;transition:box-shadow .2s ease,transform .2s ease;position:relative;display:flex;flex-direction:column}.subscription-management-page .plan-card:hover{box-shadow:0 0 0 1px #d1cfc5,#00000012 0 8px 28px;transform:translateY(-2px)}.subscription-management-page .plan-card.featured{border-color:#c9644259;box-shadow:#c9644214 0 6px 24px,0 0 0 1px #c9644233}.subscription-management-page .featured-badge{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:#c96442;color:#faf9f5;padding:.3rem 1rem;border-radius:99px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.04em;white-space:nowrap;display:inline-flex;align-items:center;gap:.35rem;box-shadow:0 2px 8px #c964424d}.subscription-management-page .plan-header{text-align:center;padding-bottom:1.25rem;border-bottom:1px solid #f0eee6;margin-bottom:1.25rem}.subscription-management-page .plan-name{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;font-weight:500;color:#141413;margin:0 0 .75rem;line-height:1.2}.subscription-management-page .plan-price{display:flex;align-items:baseline;justify-content:center;gap:.25rem;margin-bottom:.75rem}.subscription-management-page .price-amount{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums;color:#c96442;line-height:1}.subscription-management-page .price-period{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9rem;font-weight:500;color:#87867f}.subscription-management-page .plan-description{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#5e5d59;line-height:1.6;margin:0 0 .25rem}.subscription-management-page .plan-features{flex:1;margin-bottom:1.25rem}.subscription-management-page .features-title{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#87867f;margin:0 0 .75rem}.subscription-management-page .features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.subscription-management-page .features-list li{display:flex;align-items:flex-start;gap:.5rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#4d4c48;line-height:1.5}.subscription-management-page .features-list li .feature-icon{color:#2d7a4f;flex-shrink:0;margin-top:1px}.subscription-management-page .features-list .more-features{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;color:#c96442;font-weight:600;font-style:italic;padding-left:1.5rem}.subscription-management-page .plan-actions{display:flex;gap:.625rem;flex-wrap:wrap}.subscription-management-page .plan-actions .btn{flex:1;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;font-weight:600;padding:.5rem .75rem;border-radius:10px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.subscription-management-page .btn.btn-outline{background:transparent;border:1px solid #e8e6dc;color:#5e5d59;box-shadow:0 0 0 1px #e8e6dc}.subscription-management-page .btn.btn-outline:hover{background:#f0eee6;border-color:#d1cfc5;box-shadow:0 0 0 1px #d1cfc5;color:#141413}.subscription-management-page .btn.btn-outline:active{transform:scale(.98)}.subscription-management-page .btn.btn-outline.btn-danger{color:#b53333;border-color:#b5333340;box-shadow:0 0 0 1px #b5333326}.subscription-management-page .btn.btn-outline.btn-danger:hover{background:#b533330f;border-color:#b5333366;box-shadow:0 0 0 1px #b533334d;color:#b53333}.subscription-management-page .btn.btn-primary{background:#c96442;color:#faf9f5;border:1px solid #c96442;box-shadow:0 0 0 1px #c9644240}.subscription-management-page .btn.btn-primary:hover{background:#b55539;border-color:#b55539}.subscription-management-page .btn.btn-primary:active{transform:scale(.98)}.subscription-management-page .error-banner{display:flex;align-items:center;gap:.625rem;background:#b5333312;border:1px solid rgba(181,51,51,.2);border-radius:12px;padding:.875rem 1rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#b53333;margin-bottom:1.25rem}.subscription-management-page .error-banner button{margin-left:auto;background:transparent;border:1px solid rgba(181,51,51,.3);color:#b53333;border-radius:8px;padding:.25rem .625rem;font-size:.8125rem;font-weight:600;cursor:pointer;font-family:Be Vietnam Pro,system-ui,sans-serif;transition:all .15s}.subscription-management-page .error-banner button:hover{background:#b533331a}.subscription-management-page .loading-placeholder{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9rem;color:#87867f;padding:2rem;text-align:center}.subscription-management-page .empty-state{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9rem;color:#87867f;padding:2.5rem;text-align:center;background:#faf9f5;border:1px dashed #e8e6dc;border-radius:16px}.subscription-management-page .recent-subscriptions{margin-bottom:2rem}.subscription-management-page .subscriptions-table-container{background:#faf9f5;border:1px solid #f0eee6;border-radius:16px;overflow:hidden;box-shadow:#0000000a 0 4px 20px}.subscription-management-page .subscriptions-table{width:100%;border-collapse:collapse}.subscription-management-page .subscriptions-table thead{background:#f5f4ed}.subscription-management-page .subscriptions-table th{padding:.875rem 1rem;text-align:left;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#87867f;border-bottom:1px solid #e8e6dc}.subscription-management-page .subscriptions-table td{padding:.875rem 1rem;border-bottom:1px solid #f0eee6;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#4d4c48;vertical-align:middle}.subscription-management-page .subscriptions-table tbody tr:last-child td{border-bottom:none}.subscription-management-page .subscriptions-table tbody tr:hover td{background:#f5f4edb3}.subscription-management-page .table-loading,.subscription-management-page .table-empty{text-align:center;color:#87867f;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9rem;padding:2rem}.subscription-management-page .user-cell{display:flex;align-items:center;gap:.75rem}.subscription-management-page .user-avatar{width:36px;height:36px;border-radius:50%;background:#e8e6dc;color:#5e5d59;display:flex;align-items:center;justify-content:center;font-family:Be Vietnam Pro,system-ui,sans-serif;font-weight:700;font-size:.875rem;flex-shrink:0;border:1px solid #d1cfc5}.subscription-management-page .user-info{flex:1;min-width:0}.subscription-management-page .user-name{font-weight:600;color:#141413;font-size:.875rem}.subscription-management-page .user-email{font-size:.8rem;color:#87867f;margin-top:.1rem}.subscription-management-page .plan-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:99px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.75rem;font-weight:600;background:#e8e6dc;color:#4d4c48;border:1px solid #d1cfc5}.subscription-management-page .plan-badge.pro,.subscription-management-page .plan-badge.premium{background:#c964421a;color:#9a4a32;border-color:#c9644240}.subscription-management-page .plan-badge.enterprise{background:#141413;color:#b0aea5;border-color:#30302e}.subscription-management-page .amount-cell{font-weight:700;font-variant-numeric:tabular-nums;color:#c96442}.subscription-management-page .status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:99px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.75rem;font-weight:600}.subscription-management-page .status-badge.active{background:#2d7a4f1a;color:#2d7a4f;border:1px solid rgba(45,122,79,.2)}.subscription-management-page .status-badge.expired{background:#f0eee6;color:#87867f;border:1px solid #e8e6dc}.subscription-management-page .status-badge.cancelled{background:#faf9f5;color:#87867f;border:1px solid #e8e6dc}.subscription-management-page .action-buttons{display:flex;gap:.375rem}.subscription-management-page .action-btn{width:30px;height:30px;border:1px solid #e8e6dc;background:#faf9f5;border-radius:8px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;color:#87867f;box-shadow:0 0 0 1px #e8e6dc}.subscription-management-page .action-btn:hover:not(:disabled){background:#f0eee6;border-color:#d1cfc5;box-shadow:0 0 0 1px #d1cfc5;color:#141413;transform:scale(1.05)}.subscription-management-page .action-btn:disabled{opacity:.4;cursor:not-allowed}.subscription-management-page .pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1.5rem}.subscription-management-page .pagination .btn.btn-outline{flex:0;padding:.5rem .875rem;display:inline-flex;align-items:center;gap:.375rem}.subscription-management-page .page-info{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#87867f;min-width:80px;text-align:center}.subscription-management-page .modal-overlay{position:fixed;inset:0;background:#14141373;display:flex;align-items:center;justify-content:center;z-index:1200;padding:1rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.subscription-management-page .modal{background:#faf9f5;border:1px solid #e8e6dc;border-radius:20px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:#1414132e 0 20px 60px,0 0 0 1px #d1cfc5}.subscription-management-page .modal.large{max-width:760px}.subscription-management-page .modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e8e6dc;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#faf9f5;z-index:1}.subscription-management-page .modal-title{font-family:Playfair Display,Georgia,serif;font-size:1.25rem;font-weight:500;color:#141413;margin:0;line-height:1.3}.subscription-management-page .modal-close{width:32px;height:32px;border:1px solid #e8e6dc;background:#f0eee6;border-radius:8px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;color:#5e5d59;flex-shrink:0}.subscription-management-page .modal-close:hover{background:#e8e6dc;border-color:#d1cfc5;color:#141413}.subscription-management-page .modal-body{padding:1.5rem}.subscription-management-page .form-group{margin-bottom:1.125rem}.subscription-management-page .form-group label{display:block;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;font-weight:600;color:#4d4c48;margin-bottom:.425rem}.subscription-management-page .form-group input,.subscription-management-page .form-group select,.subscription-management-page .form-group textarea{width:100%;padding:.65rem .875rem;border:1px solid #e8e6dc;border-radius:10px;font-size:.9rem;font-family:Be Vietnam Pro,system-ui,sans-serif;color:#141413;background:#fff;transition:border-color .15s,box-shadow .15s;box-shadow:0 0 0 1px #e8e6dc;box-sizing:border-box}.subscription-management-page .form-group input:focus,.subscription-management-page .form-group select:focus,.subscription-management-page .form-group textarea:focus{outline:none;border-color:#3898ec;box-shadow:0 0 0 3px #3898ec24}.subscription-management-page .form-group input:disabled{background:#f5f4ed;color:#87867f;cursor:not-allowed}.subscription-management-page .form-group textarea{resize:vertical;min-height:80px}.subscription-management-page .form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.subscription-management-page .checkbox-label{display:flex;align-items:center;gap:.625rem;margin-bottom:.625rem;cursor:pointer;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#4d4c48}.subscription-management-page .checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#c96442}.subscription-management-page .form-error{display:flex;align-items:center;gap:.5rem;background:#b5333312;border:1px solid rgba(181,51,51,.2);border-radius:10px;padding:.75rem 1rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#b53333;margin-bottom:1rem}.subscription-management-page .modal-footer{padding:1.125rem 1.5rem;border-top:1px solid #e8e6dc;display:flex;justify-content:flex-end;align-items:center;gap:.75rem;background:#f5f4ed;border-radius:0 0 20px 20px}.subscription-management-page .modal-footer .btn{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.125rem;border-radius:10px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease}.subscription-management-page .plan-detail-header{background:#f5f4ed;border:1px solid #e8e6dc;border-radius:14px;padding:1.25rem 1.5rem;margin-bottom:1.5rem;text-align:center}.subscription-management-page .plan-detail-header .detail-price{display:flex;align-items:baseline;justify-content:center;gap:.25rem;margin-bottom:.5rem}.subscription-management-page .plan-detail-header p{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9rem;color:#5e5d59;margin:.375rem 0;line-height:1.6}.subscription-management-page .plan-features-full{margin-bottom:1.5rem}.subscription-management-page .plan-features-full h4{font-family:Playfair Display,Georgia,serif;font-size:1rem;font-weight:500;color:#141413;margin:0 0 .875rem}.subscription-management-page .plan-features-full ul{list-style:none;padding:0;margin:0}.subscription-management-page .plan-features-full li{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#4d4c48;line-height:1.5;border-bottom:1px solid #f0eee6}.subscription-management-page .plan-features-full li:last-child{border-bottom:none}.subscription-management-page .plan-features-full li .feature-icon{color:#2d7a4f;flex-shrink:0;margin-top:1px}.subscription-management-page .plan-actions-section h4{font-family:Playfair Display,Georgia,serif;font-size:1rem;font-weight:500;color:#141413;margin:0 0 .875rem}.subscription-management-page .action-buttons-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.subscription-management-page .action-buttons-grid .btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.625rem 1rem;border-radius:10px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease}@media(max-width:1024px){.subscription-management-page .plans-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.subscription-management-page .form-row{grid-template-columns:1fr 1fr}}@media(max-width:768px){.subscription-management-page .page-header{flex-direction:column}.subscription-management-page .revenue-stats{grid-template-columns:1fr 1fr}.subscription-management-page .plans-grid{grid-template-columns:1fr}.subscription-management-page .subscriptions-table-container{overflow-x:auto}.subscription-management-page .subscriptions-table{min-width:860px}.subscription-management-page .form-row,.subscription-management-page .action-buttons-grid{grid-template-columns:1fr}.subscription-management-page .plan-actions{flex-direction:column}}@media(max-width:480px){.subscription-management-page .revenue-stats{grid-template-columns:1fr}}.user-management-page{--bg-page: #f5f4ed;--bg-surface: #faf9f5;--bg-surface-strong: #ffffff;--text-primary: #141413;--text-secondary: #5e5d59;--text-tertiary: #87867f;--brand: #c96442;--brand-hover: #b85535;--border-soft: #f0eee6;--border-strong: #e8e6dc;--ring-soft: #d1cfc5;--focus: #3898ec;max-width:1600px;margin:0 auto;padding:1.25rem;border-radius:20px;background:var(--bg-page);color:var(--text-primary);font-family:Be Vietnam Pro,sans-serif;box-shadow:0 0 0 1px var(--border-soft)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem}.page-title{margin:0;font-size:2rem;font-weight:700;line-height:1.2;letter-spacing:-.02em;color:var(--text-primary)}.page-subtitle{margin-top:.375rem;font-size:.95rem;line-height:1.6;color:var(--text-secondary)}.user-management-page .btn{min-height:40px;padding:.55rem .95rem;border-radius:10px;border:1px solid var(--border-strong);display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font-size:.875rem;font-weight:600;line-height:1;transition:all .15s ease;box-shadow:0 0 0 1px var(--ring-soft)}.user-management-page .btn:hover{transform:translateY(-1px)}.user-management-page .btn-primary{background:var(--brand);border-color:var(--brand);color:#faf9f5;box-shadow:0 0 0 1px var(--brand)}.user-management-page .btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.user-management-page .btn-outline{background:var(--bg-surface-strong);color:#4d4c48}.user-management-page .btn-outline:hover{background:#f2efe6}.user-management-page .btn:focus-visible,.filter-tab:focus-visible,.action-btn:focus-visible,.pagination-btn:focus-visible,.pagination-page:focus-visible,.modal-close:focus-visible,.modal-backdrop:focus-visible{outline:none;box-shadow:0 0 0 2px var(--focus)}.user-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin-bottom:1.75rem}.stat-card{background:var(--bg-surface);border:1px solid var(--border-soft);border-radius:14px;padding:1rem;display:flex;gap:.75rem;align-items:center;transition:box-shadow .2s ease,transform .2s ease;box-shadow:0 0 0 1px var(--ring-soft)}.stat-card:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #c2c0b6,0 8px 24px #14141314}.stat-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.total{background:#efece1;color:#3d3d3a}.stat-icon.admin{background:#f7ecdf;color:#8a482f}.stat-icon.teacher{background:#eceee1;color:#4d5b3d}.stat-icon.student{background:#efece1;color:#5e5d59}.stat-icon.active{background:#eceee1;color:#406d45}.stat-content{min-width:0}.stat-value{font-size:2rem;line-height:1;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.stat-label{margin-top:.2rem;font-size:.69rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-weight:600}.users-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.filter-tabs{display:flex;gap:.45rem;flex-wrap:wrap}.filter-tab{padding:.4rem .8rem;border:1px solid transparent;background:transparent;border-radius:8px;color:var(--text-secondary);font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s ease}.filter-tab:hover{background:#ece9df;color:#3d3d3a}.filter-tab.active{background:#30302e;color:#faf9f5;border-color:#30302e}.toolbar-actions{display:flex;gap:.7rem;align-items:center}.search-field{position:relative;min-width:320px;display:flex;align-items:center;height:44px;padding:0;border-radius:12px;border:1px solid var(--border-strong);background:var(--bg-surface-strong);transition:border-color .15s ease,box-shadow .15s ease}.search-field:focus-within{border-color:var(--focus);box-shadow:0 0 0 2px var(--focus)}.search-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none;width:16px;height:16px;color:var(--text-tertiary);display:block}.search-input{width:100%;height:100%;min-width:0;padding:0 40px 0 12px;line-height:1.4;border-radius:0;border:0;background:transparent;color:var(--text-primary);font-size:.875rem;transition:color .15s ease;box-shadow:none;outline:none}.search-input::-moz-placeholder{color:var(--text-tertiary)}.search-input::placeholder{color:var(--text-tertiary)}.search-input:focus{outline:none}.users-table-container{background:var(--bg-surface-strong);border:1px solid var(--border-soft);border-radius:14px;margin-bottom:1.2rem;overflow:hidden;box-shadow:0 0 0 1px var(--ring-soft)}.table-loading,.table-error{padding:2rem;text-align:center;font-size:.9rem}.table-loading{color:var(--text-secondary)}.table-error{color:#b53333}.users-table{width:100%;border-collapse:collapse}.users-table thead{background:#f7f5ee}.users-table th{padding:.82rem .95rem;text-align:left;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-strong)}.users-table td{padding:.8rem .95rem;border-bottom:1px solid #f2f0e8;color:var(--text-secondary);font-size:.875rem}.users-table tbody tr:hover{background:#faf8f2}.user-cell{display:flex;align-items:center;gap:.7rem}.user-avatar{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;background:#efece1;color:#4d4c48;font-weight:700}.user-name{color:var(--text-primary);font-weight:600}.user-handle{color:var(--text-tertiary);font-size:.75rem}.email-cell{color:var(--text-secondary)}.empty-users-row{text-align:center;padding:2rem;color:var(--text-tertiary)}.role-badge,.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.24rem .64rem;font-size:.72rem;font-weight:600}.role-badge.teacher{background:#eceee1;color:#4d5b3d}.role-badge.student{background:#efece1;color:#4d4c48}.role-badge.admin{background:#f7ecdf;color:#8a482f}.status-badge.active{background:#eceee1;color:#3f5f43}.status-badge.inactive{background:#efede4;color:#4d4c48}.status-badge.banned{background:#fbeaea;color:#8e2e2e}.action-buttons{display:flex;gap:.45rem}.action-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border-strong);background:#fff;color:#4d4c48;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;box-shadow:0 0 0 1px var(--ring-soft)}.action-btn.view:hover{border-color:#c2c0b6;color:#30302e;background:#f5f3ea}.action-btn.delete:hover{border-color:#e0c0c0;color:#8e2e2e;background:#fdf3f3}.pagination{display:flex;align-items:center;justify-content:center;gap:.45rem}.pagination-pages{display:flex;align-items:center;gap:.25rem}.pagination-btn,.pagination-page{min-width:36px;height:36px;border-radius:10px;border:1px solid var(--border-strong);background:var(--bg-surface-strong);color:#4d4c48;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 0 0 1px var(--ring-soft)}.pagination-btn:hover,.pagination-page:hover{background:#f2efe6;color:#30302e}.pagination-page.active{background:#30302e;color:#faf9f5;border-color:#30302e}.pagination-btn:disabled{opacity:.45;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-overlay.modal-overlay--anchored{align-items:flex-start;justify-content:center;padding:clamp(4.25rem,11vh,5.75rem) 1rem 1.5rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.module-layout-container.admin-mgmt-shell .modal-overlay.modal-overlay--anchored{z-index:12000}.modal-backdrop{position:fixed;inset:0;border:0;background:#1414138c;cursor:pointer}.modal{position:relative;width:100%;max-width:620px;max-height:90vh;border-radius:16px;border:1px solid var(--border-soft);background:var(--bg-surface-strong);overflow-y:auto;padding:0;box-shadow:0 0 0 1px var(--ring-soft),0 24px 48px #14141333}.modal.large{max-width:820px}.modal.modal--create-user{width:100%;max-width:900px;max-height:min(560px,calc(100vh - 6rem));margin:0 auto}.modal.modal--create-user .modal-body{padding:1rem 1.35rem 1.1rem}.modal.modal--create-user .modal-header{padding:1rem 1.25rem}.modal.modal--create-user .modal-footer{padding:.85rem 1.25rem 1rem}.modal-inline-error{margin:0 0 .85rem;padding:.55rem .75rem;border-radius:10px;font-size:.84rem;line-height:1.45;color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.modal-form-grid{display:flex;flex-direction:column;gap:.85rem}.modal.modal--create-user .modal-form-grid .form-group{margin-bottom:0}.modal.modal--create-user .modal-form-grid .form-row{align-items:flex-end}@media(max-width:720px){.modal.modal--create-user .modal-form-grid .form-row{grid-template-columns:1fr}.modal.modal--create-user{max-height:calc(100vh - 5.5rem)}}.module-layout-container.admin-user-mgmt-page .user-management-page .modal .modal-footer .btn.btn-primary{background:var(--brand);border-color:var(--brand);color:#faf9f5;box-shadow:0 0 0 1px #c9644238}.module-layout-container.admin-user-mgmt-page .user-management-page .modal .modal-footer .btn.btn-primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover);color:#faf9f5}.module-layout-container.admin-user-mgmt-page .user-management-page .modal .modal-footer .btn.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.modal::backdrop{display:none}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.15rem 1.25rem;border-bottom:1px solid var(--border-strong)}.modal-title{margin:0;color:var(--text-primary);font-size:1.125rem;font-weight:700}.modal-close{width:32px;height:32px;border-radius:8px;border:1px solid var(--border-strong);background:#f2efe6;color:#4d4c48;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.modal-close:hover{background:#ece7db}.modal-body{padding:1.2rem 1.25rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.45rem;color:var(--text-primary);font-size:.82rem;font-weight:600}.form-group input,.form-group select,.form-group textarea,.email-textarea{width:100%;border:1px solid var(--border-strong);border-radius:10px;background:#fff;color:var(--text-primary);font-size:.875rem;padding:.62rem .78rem;transition:all .15s ease;box-shadow:0 0 0 1px var(--ring-soft);resize:vertical}.form-group input::-moz-placeholder,.form-group textarea::-moz-placeholder,.email-textarea::-moz-placeholder{color:var(--text-tertiary)}.form-group input::placeholder,.form-group textarea::placeholder,.email-textarea::placeholder{color:var(--text-tertiary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.email-textarea:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 2px var(--focus)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.modal-footer{display:flex;justify-content:flex-end;gap:.7rem;padding:1.15rem 1.25rem;border-top:1px solid var(--border-strong)}.user-detail-header{background:#f7f5ee;border:1px solid var(--border-soft);border-radius:12px;padding:1rem;margin-bottom:1rem;display:flex;align-items:center;gap:1rem}.detail-avatar{width:72px;height:72px;border-radius:999px;background:#efece1;color:#4d4c48;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;overflow:hidden;flex-shrink:0}.detail-info h3{margin:0 0 .2rem;color:var(--text-primary);font-size:1.1rem;font-weight:700}.detail-handle{color:var(--text-tertiary);font-size:.84rem;margin-bottom:.2rem}.detail-info p{color:var(--text-secondary);margin:.1rem 0 .5rem}.user-detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-bottom:1rem}.detail-stat{background:#f7f5ee;border:1px solid var(--border-soft);border-radius:12px;padding:.75rem;text-align:center}.detail-stat .stat-label{margin-bottom:.25rem}.detail-stat .stat-value{font-size:.83rem;line-height:1.4}.user-actions-section h4{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin:0 0 .7rem}.action-buttons-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}@media(max-width:1024px){.users-table-container{overflow-x:auto}.users-table{min-width:860px}}@media(max-width:768px){.user-management-page{padding:.8rem;border-radius:12px}.page-header,.users-toolbar,.toolbar-actions{flex-direction:column;align-items:stretch}.search-input{min-width:0}.search-field{min-width:100%}.user-stats,.form-row,.user-detail-stats,.action-buttons-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column}}.module-layout-container.admin-user-mgmt-page .user-management-page{max-width:none;margin:0;padding:0;background:transparent;box-shadow:none;border:none;border-radius:0}.module-layout-container.admin-user-mgmt-page .courses-header-row{align-items:flex-start;padding-bottom:1.2rem;border-bottom:1px solid #e8e6dc}.module-layout-container.admin-user-mgmt-page .header-kicker{color:#c96442}.module-layout-container.admin-user-mgmt-page .header-kicker:before{background:#c96442}.module-layout-container.admin-user-mgmt-page .courses-header-row h2{color:#141413}.module-layout-container.admin-user-mgmt-page .header-sub{color:#5e5d59}.module-layout-container.admin-user-mgmt-page .header-sub:before{background:#c96442}.module-layout-container.admin-user-mgmt-page .toolbar{background:#faf9f5;border-color:#e8e6dc}.module-layout-container.admin-user-mgmt-page .pill-btn{background:#f5f4ed;border-color:#e8e6dc;color:#5e5d59}.module-layout-container.admin-user-mgmt-page .pill-btn.active{background:#30302e;border-color:#30302e;color:#faf9f5}.module-layout-container.admin-user-mgmt-page .search-box{background:#fff;border-color:#e8e6dc;box-shadow:none}.module-layout-container.admin-user-mgmt-page .search-box:focus-within{border-color:#c96442;box-shadow:0 0 0 3px #c9644224}.module-layout-container.admin-user-mgmt-page .search-box__icon{background:#f5f4ed;border-color:#e8e6dc;color:#4d4c48}.module-layout-container.admin-user-mgmt-page .admin-mgmt-table-shell{border-radius:14px;border:1px solid #e8e6dc;box-shadow:0 4px 16px #1414130f;background:#fff}.module-layout-container.admin-user-mgmt-page .admin-user-mgmt-search-pending{position:absolute;right:.55rem;top:50%;transform:translateY(-50%);color:var(--text-tertiary, #87867f);display:flex;pointer-events:none}.module-layout-container.admin-user-mgmt-page .search-box:has(.search-box__clear) .admin-user-mgmt-search-pending{right:2.5rem}.module-layout-container.admin-user-mgmt-page .admin-user-mgmt-spin{animation:admin-user-mgmt-spin .8s linear infinite}@keyframes admin-user-mgmt-spin{to{transform:rotate(360deg)}}.module-layout-container.admin-user-mgmt-page .table-loading--studio{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2.5rem 1rem;color:#60748f;font-weight:600}.modal.modal--user-detail{width:500px;max-width:calc(100vw - 2rem);padding:0;overflow:hidden;border-radius:20px;background:#faf9f5;border:1px solid #e8e6dc;box-shadow:0 0 0 1px #d1cfc5,#0000001f 0 20px 60px;position:relative}.modal--user-detail .modal-close--floating{position:absolute;top:.85rem;right:.85rem;z-index:10;width:30px;height:30px;border-radius:8px;border:1px solid rgba(255,255,255,.35);background:#ffffff8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#4d4c48;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease}.modal--user-detail .modal-close--floating:hover{background:#ffffffd9;border-color:#00000026}.ud-hero{position:relative;height:88px;display:flex;align-items:flex-end;justify-content:center}.ud-hero__banner{position:absolute;inset:0;background:linear-gradient(135deg,#ede9dc,#e0dbd0,#d5cfc2)}.ud-hero__avatar{position:relative;z-index:1;width:84px;height:84px;border-radius:50%;background:linear-gradient(135deg,#ede9dc,#c9c3b2);border:3px solid #faf9f5;box-shadow:0 0 0 1px #d1cfc5,0 4px 16px #0000001f;display:flex;align-items:center;justify-content:center;overflow:hidden;transform:translateY(42px);flex-shrink:0}.ud-hero__initial{font-family:Playfair Display,Georgia,serif;font-size:2rem;font-weight:500;color:#5e5d59;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ud-identity{margin-top:50px;padding:0 1.5rem 1.25rem;text-align:center;border-bottom:1px solid #f0eee6}.ud-identity__badges{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:.6rem}.ud-identity__name{font-family:Playfair Display,Georgia,serif;font-size:1.35rem;font-weight:500;color:#141413;margin:0 0 .25rem;line-height:1.25}.ud-identity__handle{font-family:Be Vietnam Pro,sans-serif;font-size:.8rem;color:#87867f;margin-bottom:.45rem;letter-spacing:.01em}.ud-identity__email{display:inline-flex;align-items:center;gap:.3rem;font-family:Be Vietnam Pro,sans-serif;font-size:.82rem;color:#5e5d59}.ud-stats{display:flex;align-items:stretch;padding:0 1.25rem;margin:1rem 0;gap:0}.ud-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;background:#f5f4ed;border:1px solid #f0eee6;border-radius:14px;text-align:center;min-width:0}.ud-stat-divider{width:10px;flex-shrink:0}.ud-stat__icon{width:28px;height:28px;border-radius:8px;background:#ede9dc;display:flex;align-items:center;justify-content:center;color:#5e5d59;flex-shrink:0;margin-bottom:.1rem}.ud-stat__label{font-family:Be Vietnam Pro,sans-serif;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#87867f;line-height:1.3}.ud-stat__value{font-family:Be Vietnam Pro,sans-serif;font-size:.82rem;font-weight:600;color:#141413;line-height:1.3}.ud-actions{padding:0 1.25rem 1rem}.ud-actions__label{font-family:Be Vietnam Pro,sans-serif;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#87867f;margin-bottom:.6rem}.ud-actions__grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.ud-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem .75rem;border-radius:10px;font-family:Be Vietnam Pro,sans-serif;font-size:.8rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease;white-space:nowrap}.ud-action-btn:active{transform:scale(.97)}.ud-action-btn--default{background:#f0eee6;color:#3d3d3a;border-color:#e8e6dc;box-shadow:0 0 0 1px #e8e6dc}.ud-action-btn--default:hover{background:#e8e6dc;box-shadow:0 0 0 1px #d1cfc5}.ud-action-btn--warn{background:#fef3ec;color:#8a4a2a;border-color:#f5d9c8;box-shadow:0 0 0 1px #f5d9c8}.ud-action-btn--warn:hover{background:#fde5d4;box-shadow:0 0 0 1px #f0c4a8}.ud-action-btn--success{background:#edf3eb;color:#3a5f3e;border-color:#cde2ca;box-shadow:0 0 0 1px #cde2ca}.ud-action-btn--success:hover{background:#dceeda;box-shadow:0 0 0 1px #b2d4ae}.ud-action-btn--danger{background:#fdf0f0;color:#8e2e2e;border-color:#f5cece;box-shadow:0 0 0 1px #f5cece}.ud-action-btn--danger:hover{background:#fde4e4;box-shadow:0 0 0 1px #eaabab}.modal.modal--user-detail .modal-footer{padding:.9rem 1.25rem;border-top:1px solid #f0eee6;background:#f5f4ed}@keyframes ai-modal-in{0%{opacity:0;transform:translateY(28px) scale(.93)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ai-float-sym{0%,to{transform:translateY(0) rotate(0);opacity:.22}50%{transform:translateY(-12px) rotate(10deg);opacity:.42}}@keyframes ai-char-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes ai-speech-pop{0%{transform:scale(.7) rotate(-6deg);opacity:0}70%{transform:scale(1.08) rotate(2deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.ai-token-modal-overlay{position:fixed;inset:0;background:#4c1d952e;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:9999}.ai-token-modal{position:relative;background:#fff;border-radius:24px;padding:2rem 1.85rem 1.6rem;width:min(360px,92vw);text-align:center;overflow:hidden;box-shadow:0 2px 4px #6d28d90f,0 20px 52px -6px #6d28d938;animation:ai-modal-in .34s cubic-bezier(.22,1,.36,1) both}.ai-token-sym{position:absolute;font-family:Space Grotesk,monospace;font-weight:700;color:#7c3aed;pointer-events:none;animation:ai-float-sym 3.2s ease-in-out infinite;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ai-token-sym.s1{font-size:1.25rem;top:1.1rem;left:1.1rem;animation-delay:0s}.ai-token-sym.s2{font-size:1.1rem;top:1.1rem;right:1.1rem;animation-delay:.5s}.ai-token-sym.s3{font-size:1.1rem;bottom:2.6rem;left:1.1rem;animation-delay:1s}.ai-token-sym.s4{font-size:1.25rem;bottom:2.6rem;right:1.1rem;animation-delay:1.5s}.ai-token-modal__char-wrap{position:relative;display:inline-flex;flex-direction:column;align-items:center;margin-bottom:1.1rem}.ai-token-modal__char{width:100px;height:100px;border-radius:22px;background:linear-gradient(145deg,#ede9fe,#ddd6fe);display:flex;align-items:center;justify-content:center;font-size:3.2rem;animation:ai-char-bob 2.4s ease-in-out infinite;box-shadow:0 4px 18px #7c3aed2e}.ai-token-modal__speech{position:absolute;top:-.6rem;right:-1rem;background:#f59e0b;color:#141413;font-size:.7rem;font-weight:700;letter-spacing:.03em;padding:.22rem .55rem;border-radius:8px;white-space:nowrap;animation:ai-speech-pop .4s .15s cubic-bezier(.22,1,.36,1) both}.ai-token-modal__speech:after{content:"";position:absolute;bottom:-5px;left:10px;border:5px solid transparent;border-top-color:#f59e0b;border-bottom:0}.ai-token-modal__battery{display:flex;align-items:center;gap:4px;margin-top:.45rem}.ai-token-battery__bar{display:inline-block;width:18px;height:8px;border-radius:3px;background:#7c3aed}.ai-token-battery__bar.empty{background:#e2d9f3;border:1.5px solid #c4b5fd}.ai-token-battery__label{font-size:.68rem;font-weight:700;color:#7c3aed;margin-left:4px;font-family:Space Grotesk,monospace}.ai-token-modal__title{font-family:Space Grotesk,sans-serif;font-size:1.15rem;font-weight:800;color:#4c1d95;margin:0 0 .65rem;line-height:1.35}.ai-token-modal__desc{font-size:.875rem;color:#6b7280;line-height:1.65;margin:0 0 1.35rem}.ai-token-modal__actions{display:flex;flex-direction:column;align-items:center;gap:.55rem}.ai-token-modal__btn{border:none;border-radius:50px;font-size:.9rem;font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;position:relative}.ai-token-modal__btn.primary{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;padding:.78rem 1.2rem;background:#5b21b6;color:#fff;box-shadow:0 4px 16px #5b21b659}.ai-token-modal__btn.primary:hover{background:#4c1d95;transform:translateY(-2px);box-shadow:0 7px 22px #5b21b673}.ai-token-modal__btn.primary:active{transform:translateY(0)}.ai-token-btn__hot{position:absolute;top:-8px;right:14px;background:#f59e0b;color:#141413;font-size:.6rem;font-weight:800;letter-spacing:.05em;padding:.12rem .38rem;border-radius:6px}.ai-token-btn__icon{font-size:1.1rem;line-height:1}.ai-token-modal__btn.ghost{background:transparent;color:#9ca3af;padding:.4rem 1rem;font-weight:600}.ai-token-modal__btn.ghost:hover{color:#6b7280}.ai-token-modal__footer{margin:1.1rem 0 0;font-size:.65rem;font-weight:600;letter-spacing:.12em;color:#c4b5fd;text-transform:uppercase}.ai-page-shell{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem 1.75rem 1.25rem;height:calc(100vh - 68px);box-sizing:border-box}.gemini-chat-page{--bg-soft: #f5f3ff;--bg-panel: #ffffff;--bg-panel-2: #fafafa;--line-soft: #e5e7eb;--text-main: #111827;--text-secondary: #374151;--text-muted: #9ca3af;--brand: #6366f1;--brand-hover: #4f46e5;--brand-light: #eef2ff;--danger: var(--error-color, #ef4444);flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 320px;border-radius:16px;background:var(--bg-panel-2);border:1px solid var(--line-soft);font-family:"Be Vietnam Pro",var(--font-heading),sans-serif;transition:grid-template-columns .26s cubic-bezier(.2,.7,.18,1);overflow:hidden;box-shadow:0 1px 3px #0000000a,0 8px 24px -4px #6366f114}.gemini-chat-page.session-collapsed{grid-template-columns:minmax(0,1fr) 60px}.gemini-sidebar{display:flex;flex-direction:column;border-left:1px solid var(--line-soft);background:linear-gradient(180deg,#f9fafb,#f3f4f6);padding:1rem .85rem;gap:.75rem;overflow:hidden;transition:padding .22s ease,background-color .22s ease}.gemini-sidebar.right{min-width:0;position:sticky;top:0;height:100%;align-self:stretch}.gemini-sidebar.collapsed{padding:.8rem .4rem;align-items:center}.gemini-chat-page .sidebar-icon-btn{-moz-appearance:none;appearance:none;-webkit-appearance:none;font:inherit;line-height:1;padding:0;margin:0;border:1px solid var(--line-soft);background:var(--bg-panel);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--radius-full, 9999px);transition:border-color var(--transition-fast, .15s ease-in-out),background-color var(--transition-fast, .15s ease-in-out),color var(--transition-fast, .15s ease-in-out),box-shadow var(--transition-fast, .15s ease-in-out)}.gemini-chat-page .sidebar-icon-btn:hover:not(:disabled){background:var(--bg-soft);border-color:#d5d0e8;color:var(--text-main);box-shadow:0 2px 8px #5b67f114}.gemini-chat-page .sidebar-icon-btn:focus-visible{outline:2px solid rgba(91,103,241,.4);outline-offset:2px}.sidebar-toggle-btn{align-self:flex-start;width:42px;height:42px;border-radius:var(--radius-full, 9999px);font-weight:700}.gemini-sidebar.collapsed .sidebar-toggle-btn{align-self:center}.collapsed-actions{display:grid;gap:.85rem;justify-items:center;width:100%;margin-top:.2rem;transition:opacity .18s ease,transform .2s ease}.collapsed-actions.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.collapsed-actions.is-hidden{opacity:0;transform:translateY(8px);pointer-events:none;height:0;margin-top:0}.new-session-btn.collapsed{text-align:center;width:42px;height:42px;padding:0;border-radius:var(--radius-lg, 12px)}.sidebar-toggle-btn svg,.new-session-btn.collapsed svg{display:block}.new-session-btn{display:flex;align-items:center;gap:.5rem;border:1px solid var(--line-soft);background:var(--bg-panel);color:var(--text-main);border-radius:var(--radius-lg, 12px);font-size:.875rem;font-weight:600;text-align:left;padding:.72rem .9rem;cursor:pointer;transition:background var(--transition-fast, .15s ease-in-out),border-color var(--transition-fast, .15s ease-in-out),box-shadow var(--transition-fast, .15s ease-in-out)}.new-session-btn:hover:not(:disabled){background:var(--bg-soft);border-color:#d5d0e8;box-shadow:0 2px 8px #5b67f10f}.new-session-btn:disabled{opacity:.55;cursor:not-allowed}.session-list-title{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-top:.3rem;padding:0 .2rem}.session-list{display:flex;flex-direction:column;flex:1;gap:.25rem;overflow-y:auto;min-height:0;padding-right:.15rem}.session-panel-expanded{display:flex;flex-direction:column;gap:.75rem;min-height:0;flex:1;transition:opacity .22s ease,transform .24s ease}.session-panel-expanded.is-visible{opacity:1;transform:translate(0);pointer-events:auto}.session-panel-expanded.is-hidden{opacity:0;transform:translate(14px);pointer-events:none;width:0;min-width:0;height:0;overflow:hidden;gap:0}.session-item{border:0;background:transparent;font:inherit;text-align:left;padding:.62rem .72rem;border-radius:var(--radius-md, 8px);cursor:pointer;display:grid;gap:.15rem;transition:background var(--transition-fast, .15s ease-in-out),box-shadow var(--transition-fast, .15s ease-in-out)}.session-item:hover{background:#fffc}.session-item.active{background:var(--bg-panel);box-shadow:0 1px 4px #6366f11f;border-left:2px solid #6366f1}.session-title{color:var(--text-main);font-size:.875rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-subtitle{color:var(--text-muted);font-size:.75rem}.session-muted{color:var(--text-muted);font-size:.8rem;padding:.55rem .3rem}.session-footer{margin-top:auto;display:grid;gap:.35rem;border-top:1px solid var(--line-soft);padding-top:.75rem}.session-footer-item{display:flex;justify-content:space-between;align-items:center;padding:0 .2rem}.session-footer-label{color:var(--text-muted);font-size:.75rem;font-weight:500}.session-footer-value{color:var(--text-secondary);font-size:.75rem;font-weight:600}.gemini-main{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;padding:.75rem 1.5rem 1rem}.main-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:min(900px,100%);margin:0 auto;padding:.75rem 0 .5rem;border-bottom:1px solid var(--line-soft)}.session-heading{display:flex;align-items:center;gap:.5rem;min-width:0}.session-heading-icon-raw{color:var(--text-muted);flex-shrink:0}.session-heading-title{margin:0;color:var(--text-main);font-family:Be Vietnam Pro,sans-serif;font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.title-edit-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.title-edit-row input{min-width:250px;max-width:420px;width:100%;border:1px solid var(--line-soft);background:var(--bg-panel);border-radius:var(--radius-md, 8px);padding:.55rem .75rem;font-size:.875rem;font-family:inherit;color:var(--text-main);transition:border-color var(--transition-fast, .15s ease-in-out)}.title-edit-row input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #5b67f11f}.header-actions{display:flex;gap:.35rem;align-items:center}.header-btn{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--line-soft);background:var(--bg-panel);color:var(--text-secondary);border-radius:var(--radius-md, 8px);padding:.45rem .65rem;font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background var(--transition-fast, .15s ease-in-out),border-color var(--transition-fast, .15s ease-in-out),color var(--transition-fast, .15s ease-in-out),box-shadow var(--transition-fast, .15s ease-in-out)}.header-btn:hover:not(:disabled){background:var(--bg-soft);border-color:#d5d0e8;color:var(--text-main)}.header-btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.header-btn.primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover)}.header-btn.ghost{background:transparent;border-color:transparent}.header-btn.ghost:hover:not(:disabled){background:var(--bg-soft);border-color:var(--line-soft)}.header-btn.danger{background:transparent;border-color:transparent;color:var(--danger)}.header-btn.danger:hover:not(:disabled){background:#fef2f2;border-color:#fecaca}.header-btn:disabled,.composer-box textarea:disabled{opacity:.5;cursor:not-allowed}.message-stream{flex:1;min-height:0;overflow-y:auto;width:min(900px,100%);margin:0 auto;padding:1rem 0 .5rem;display:flex;flex-direction:column;gap:.75rem}.empty-state-welcome{margin:auto;text-align:center;max-width:400px;padding:2.5rem 1.5rem}.welcome-icon{width:64px;height:64px;margin:0 auto 1.25rem;display:flex;align-items:center;justify-content:center;border-radius:18px;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;box-shadow:0 8px 28px #6366f147}.empty-state-welcome h2{color:var(--text-main);font-family:Playfair Display,Georgia,serif;font-size:1.45rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.5rem}.empty-state-welcome p{color:var(--text-muted);font-size:.85rem;line-height:1.65}.error-banner{border:1px solid #fecaca;background:#fef2f2;color:#991b1b;border-radius:var(--radius-md, 8px);padding:.65rem .85rem;font-size:.85rem;font-weight:500}.chat-row{display:flex;gap:.65rem;align-items:flex-start}.chat-user{flex-direction:row-reverse}.chat-avatar{width:36px;height:36px;border-radius:var(--radius-full, 9999px);font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:0}.ai-avatar{background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;box-shadow:0 2px 10px #6366f147}.user-avatar{background:linear-gradient(135deg,#10b981,#34d399);color:#fff;box-shadow:0 2px 8px #10b98138}.chat-body{background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:14px;padding:.8rem .95rem;box-shadow:0 1px 2px #0000000a;max-width:78%;overflow-x:auto;word-break:break-word}.chat-assistant .chat-body{border-radius:4px 14px 14px}.chat-user .chat-body{border-radius:14px 4px 14px 14px;background:#eef2ff;border-color:#c7d2fe}.chat-body time{margin-top:.45rem;display:block;color:var(--text-muted);font-size:.7rem}.chat-body.typing{width:66px;display:flex;gap:.35rem;align-items:center;padding:.75rem 1rem}.chat-body.typing span{width:7px;height:7px;border-radius:999px;background:#6366f1;opacity:.55;animation:ai-typing 1s infinite ease-in-out}.chat-body.typing span:nth-child(2){animation-delay:.12s}.chat-body.typing span:nth-child(3){animation-delay:.24s}@keyframes ai-typing{0%,to{transform:translateY(0);opacity:.4}50%{transform:translateY(-5px);opacity:1}}.chat-content-rich{color:var(--text-main);line-height:1.65;font-size:.9rem;word-break:break-word}.chat-content-rich .katex{font-size:1.05em}.math-block-wrap{margin:.75rem 0;padding:.85rem 1rem;background:linear-gradient(135deg,#f8fbff,#f5f3ff);border:1px solid #e2e8f0;border-radius:var(--radius-md, 8px);overflow-x:auto}.math-block-wrap .katex-display{margin:0}.math-block-wrap .katex{font-size:1.15em}.math-error{color:var(--danger);background:#fef2f2;padding:.15rem .4rem;border-radius:var(--radius-sm, 4px);font-size:.82rem;font-family:var(--font-family)}.md-text-block{display:contents}.md-para{margin:.3rem 0;line-height:1.65}.md-para:first-child{margin-top:0}.md-para:last-child{margin-bottom:0}.md-heading{font-family:Playfair Display,Georgia,serif;color:var(--text-main);margin:.6rem 0 .3rem;line-height:1.3}.md-h1{font-size:1.2rem;font-weight:700;border-bottom:1px solid var(--line-soft);padding-bottom:.25rem}.md-h2{font-size:1.05rem;font-weight:700}.md-h3{font-size:.95rem;font-weight:600}.md-ul,.md-ol{margin:.35rem 0;padding-left:1.4rem;display:flex;flex-direction:column;gap:.18rem}.md-ul{list-style-type:disc}.md-ol{list-style-type:decimal}.md-ul li,.md-ol li{line-height:1.55;padding-left:.15rem}.md-code-inline{background:#f5f3ff;color:#6366f1;border:1px solid #e0e7ff;border-radius:4px;padding:.1rem .38rem;font-size:.85em;font-family:Menlo,Monaco,Consolas,monospace}.md-code-block{position:relative;background:#1e2030;color:#cdd6f4;border-radius:10px;padding:1rem 1.1rem .85rem;margin:.5rem 0;overflow-x:auto;font-family:Menlo,Monaco,Consolas,monospace;font-size:.82rem;line-height:1.6;box-shadow:inset 0 1px #ffffff0f}.md-code-block code{background:transparent;color:inherit;font-family:inherit;font-size:inherit;white-space:pre}.md-code-lang{display:block;font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#7c8cb4;margin-bottom:.5rem;font-family:Be Vietnam Pro,sans-serif}.composer-wrap{width:min(900px,100%);margin:0 auto;padding:.4rem 0 .75rem;display:grid;gap:.65rem}.quick-chips{display:flex;justify-content:center;gap:.45rem;flex-wrap:wrap}.chip{border:1px solid var(--line-soft);background:var(--bg-panel);color:var(--text-secondary);border-radius:var(--radius-full, 9999px);padding:.4rem .85rem;font-size:.8rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background var(--transition-fast, .15s ease-in-out),border-color var(--transition-fast, .15s ease-in-out),color var(--transition-fast, .15s ease-in-out),box-shadow var(--transition-fast, .15s ease-in-out)}.chip:hover{background:#eef2ff;border-color:#c7d2fe;color:#6366f1;box-shadow:0 2px 8px #6366f11a}.composer-box{border:1px solid var(--line-soft);background:var(--bg-panel);border-radius:28px;padding:.75rem 1rem .65rem;box-shadow:0 4px 16px #0f172a0f;transition:border-color var(--transition-fast, .15s ease-in-out),border-radius .18s ease,padding .18s ease,box-shadow var(--transition-fast, .15s ease-in-out)}.composer-box:focus-within{border-color:#a5b4fc;box-shadow:0 0 0 3px #6366f11a}.composer-box.compact{border-radius:20px;padding:.45rem .8rem .4rem}.composer-box textarea{width:100%;resize:none;border:0;background:transparent;min-height:72px;max-height:160px;outline:none;color:var(--text-main);font-size:.95rem;font-family:inherit;line-height:1.5;transition:min-height .18s ease,font-size .18s ease}.composer-box.compact textarea{min-height:48px;max-height:110px;font-size:.9rem}.composer-box textarea::-moz-placeholder{color:var(--text-muted)}.composer-box textarea::placeholder{color:var(--text-muted)}.composer-actions{margin-top:.25rem;display:flex;justify-content:flex-end;align-items:center;gap:.5rem}.send-btn{display:inline-flex;align-items:center;justify-content:center;padding:0;width:38px;height:38px;flex-shrink:0;border:none;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;border-radius:999px;cursor:pointer;box-shadow:0 2px 8px #6366f166,0 1px 3px #6366f133;transition:background .15s ease,box-shadow .15s ease,transform .15s ease,opacity .15s ease}.send-btn:hover:not(:disabled){background:linear-gradient(135deg,#4f46e5,#6366f1);box-shadow:0 6px 20px #6366f180,0 2px 6px #6366f14d;transform:translateY(-1px) scale(1.04)}.send-btn:active:not(:disabled){transform:scale(.95)}.send-btn:disabled{background:#e5e7eb;color:#a8a8b3;box-shadow:none;cursor:not-allowed;opacity:.6}.message-stream::-webkit-scrollbar,.session-list::-webkit-scrollbar{width:6px}.message-stream::-webkit-scrollbar-track,.session-list::-webkit-scrollbar-track{background:transparent}.message-stream::-webkit-scrollbar-thumb,.session-list::-webkit-scrollbar-thumb{background:#d5d0e8;border-radius:var(--radius-full, 9999px)}@media(max-width:1024px){.ai-page-shell{padding:1rem;height:auto;min-height:calc(100vh - 68px)}.gemini-chat-page{flex:none;grid-template-columns:1fr;min-height:70vh}.gemini-chat-page.session-collapsed{grid-template-columns:1fr}.gemini-sidebar{position:static;height:auto;border-left:0;border-top:1px solid var(--line-soft)}.session-list{max-height:160px}.main-header{flex-direction:column;align-items:flex-start}.header-btn span{display:none}}@media(max-width:768px){.main-header,.message-stream,.composer-wrap{width:100%;padding-left:.65rem;padding-right:.65rem}}.ai-slide-page{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:1.1rem;font-family:var(--font-family)}.ai-slide-page input,.ai-slide-page select,.ai-slide-page textarea,.ai-slide-page button{font-family:inherit}.ai-slide-header{margin-bottom:.25rem}.ai-slide-title{margin:0;font-size:1.8rem;font-weight:800;color:var(--gray-900);font-family:var(--font-heading)}.ai-slide-subtitle{margin:.35rem 0 0;color:var(--gray-600);line-height:1.5}.ai-slide-main-tabs{margin-top:.9rem;display:inline-flex;gap:.5rem;padding:.25rem;border:1px solid #dbe3f1;border-radius:12px;background:#f8fbff}.ai-slide-main-tab{border:1px solid transparent;background:transparent;color:#334155;font-size:.88rem;font-weight:700;padding:.46rem .9rem;border-radius:10px;cursor:pointer;transition:all .18s ease}.ai-slide-main-tab:hover{background:#eff6ff;color:#1d4ed8}.ai-slide-main-tab.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 8px 14px #2563eb3d}.ai-slide-stepper{margin:.8rem 0 0;padding:0;list-style:none;display:flex;align-items:flex-start}.ai-slide-step-item{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:0 .35rem;color:#64748b;transition:color .2s ease}.ai-slide-step-item:after{content:"";position:absolute;left:calc(50% + 14px);width:calc(100% - 28px);top:12px;height:1px;background:#d1d5db}.ai-slide-step-item:last-child:after{display:none}.ai-slide-step-dot{width:24px;height:24px;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#475569;display:inline-flex;align-items:center;justify-content:center;font-size:.76rem;font-weight:700;flex-shrink:0;z-index:1}.ai-slide-step-text{font-size:.8rem;font-weight:600;line-height:1.25;text-align:center;white-space:normal}.ai-slide-step-item.done{color:#1d4ed8}.ai-slide-step-item.done .ai-slide-step-dot{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.ai-slide-step-item.done:after{background:#93c5fd}.ai-slide-step-item.active{color:#0f172a}.ai-slide-step-item.active .ai-slide-step-dot{border-color:#3b82f6;background:#3b82f6;color:#fff;box-shadow:0 0 0 3px #3b82f62e}.ai-slide-step-item.active .ai-slide-step-text{font-weight:700}.ai-slide-step-item.active:after{background:linear-gradient(90deg,#93c5fd,#d1d5db)}.ai-slide-card{background:linear-gradient(180deg,#fff,#f8fafc);border-radius:16px;border:1px solid #e2e8f0;padding:1.1rem;box-shadow:0 8px 24px #0f172a14}.ai-slide-card h2{margin:0 0 .85rem;font-size:1.1rem;color:var(--gray-900);font-family:var(--font-heading)}.ai-slide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.ai-slide-step-list{display:grid;grid-template-columns:1fr;gap:.95rem}.ai-slide-config-grid{grid-template-columns:180px 1fr}.ai-slide-page label{display:flex;flex-direction:column;gap:.35rem}.ai-slide-page label span{font-size:.875rem;color:var(--gray-700);font-weight:600}.ai-slide-page select,.ai-slide-page input,.ai-slide-page textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:.65rem .75rem;font-size:.92rem;background:#fff;color:#0f172a}.ai-slide-page select:focus,.ai-slide-page input:focus,.ai-slide-page textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.ai-slide-full-width{margin-top:.85rem}.ai-slide-format-hint{margin-top:.35rem;color:#64748b;font-size:.8rem;line-height:1.4}.ai-slide-fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.ai-slide-fieldset:disabled{opacity:.65}.ai-slide-actions{margin-top:.9rem;display:flex;flex-wrap:wrap;gap:.65rem}.module-layout-container .ai-slide-page .btn,.ai-slide-page .btn{border-radius:12px;border:1px solid transparent;padding:.62rem 1rem;min-height:40px;font-size:.9rem;font-weight:700;line-height:1;letter-spacing:.01em;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;cursor:pointer;transition:transform .16s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease}.module-layout-container .ai-slide-page .btn:focus-visible,.ai-slide-page .btn:focus-visible{outline:none;box-shadow:0 0 0 3px #2563eb33}.module-layout-container .ai-slide-page .btn-primary,.ai-slide-page .btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#1d4ed8;color:#fff;box-shadow:0 8px 16px #2563eb3d}.module-layout-container .ai-slide-page .btn-primary:hover:not(:disabled),.ai-slide-page .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);border-color:#1e40af;color:#fff;transform:translateY(-1px);box-shadow:0 10px 20px #1e40af47}.module-layout-container .ai-slide-page .btn-outline,.ai-slide-page .btn-outline{background:#fff;border-color:#c7d2fe;color:#1e3a8a;box-shadow:0 2px 10px #1e3a8a14}.module-layout-container .ai-slide-page .btn-outline:hover:not(:disabled),.ai-slide-page .btn-outline:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd;color:#1e40af;transform:translateY(-1px);box-shadow:0 8px 16px #3b82f62e}.module-layout-container .ai-slide-page .btn:disabled,.ai-slide-page .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.ai-slide-template-gallery{margin-top:.9rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}.ai-slide-template-card{border:1px solid #cbd5e1;border-radius:12px;background:#fff;padding:.55rem;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.ai-slide-template-card:hover{transform:translateY(-2px);border-color:#3b82f6;box-shadow:0 8px 18px #2563eb29}.ai-slide-template-card.active{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33;animation:ai-slide-template-pop .22s ease}.ai-slide-template-thumb{width:100%;aspect-ratio:16 / 9;border-radius:10px;overflow:hidden;background:#f8fafc;border:1px solid #e2e8f0}.ai-slide-template-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ai-slide-template-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#64748b;font-size:.82rem;font-weight:700;background:repeating-linear-gradient(45deg,#f1f5f9,#f1f5f9 12px,#e2e8f0 12px 24px)}.ai-slide-template-meta{margin-top:.55rem;display:flex;flex-direction:column;gap:.2rem}.ai-slide-template-meta strong{color:#0f172a;font-size:.92rem}.ai-slide-template-meta span{color:#475569;font-size:.8rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ai-slide-loading-inline{display:inline-flex;align-items:center;gap:.45rem;font-weight:600}.ai-slide-spinner{width:16px;height:16px;border-radius:999px;border:2px solid #bfdbfe;border-top-color:#2563eb;animation:ai-slide-spin .8s linear infinite}@keyframes ai-slide-spin{to{transform:rotate(360deg)}}@keyframes ai-slide-template-pop{0%{transform:scale(.985)}to{transform:scale(1)}}.ai-slide-info{margin:.75rem 0 0;color:var(--gray-600);font-size:.9rem}.ai-slide-error,.ai-slide-success{margin:.7rem 0 0;font-size:.92rem;font-weight:600}.ai-slide-error{color:#dc2626}.ai-slide-success{color:#16a34a}.ai-slide-list{display:flex;flex-direction:column;gap:.75rem}.ai-slide-preview-wrap{border:1px solid #e2e8f0;border-radius:14px;padding:.9rem;background:#fff;margin-top:.8rem;margin-bottom:1rem}.ai-slide-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.ai-slide-preview-toolbar span{font-weight:700;color:#334155}.ai-slide-preview-canvas{min-height:220px;border-radius:14px;padding:1rem;background:radial-gradient(circle at 90% 10%,rgba(56,189,248,.12),transparent 35%),radial-gradient(circle at 15% 90%,rgba(37,99,235,.12),transparent 30%),#f8fafc;border:1px solid #cbd5e1;display:flex;flex-direction:column;gap:.65rem}.ai-slide-preview-heading{margin:0;color:#0f172a;font-size:1.2rem;font-weight:700;line-height:1.35;white-space:pre-wrap}.ai-slide-preview-content{margin:0;line-height:1.55;color:#334155;white-space:pre-wrap}.ai-slide-preview-rendered-image{max-width:100%;width:100%;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:10px;border:1px solid #dbeafe;background:#fff}.ai-slide-preview-loading{display:inline-block;font-size:.9rem;color:#475569}.ai-slide-preview-heading .katex,.ai-slide-preview-content .katex{font-size:1em}.ai-slide-math-block{display:block;margin:.45rem 0;overflow-x:auto}.ai-slide-preview-tag{align-self:flex-start;border-radius:999px;background:#e0e7ff;color:#3730a3;font-size:.78rem;font-weight:700;padding:.2rem .6rem}.ai-slide-edit-heading{margin:0 0 .75rem;font-size:1rem;color:#0f172a}.ai-slide-item{border:1px solid #e5e7eb;border-radius:10px;padding:.85rem;background:#fafafa}.ai-slide-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.55rem;color:#0f172a}.ai-slide-item-header span{font-size:.8rem;color:#475569;background:#e2e8f0;border-radius:999px;padding:.2rem .55rem}.ai-slide-management-card{display:flex;flex-direction:column;gap:1rem}.ai-slide-management-header h3{margin:0 0 .15rem;font-size:1.05rem;font-weight:800;color:#0f172a}.ai-slide-management-header p{margin:0;color:#64748b;font-size:.82rem}.ai-slide-management-toolbar{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.ai-slide-management-search{flex:1;min-width:180px;position:relative}.ai-slide-management-search input{width:100%;padding:.55rem .9rem .55rem 2.4rem;border:1.5px solid #e2e8f0;border-radius:10px;background:#f8fafc;font-size:.88rem;color:#1e293b;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.ai-slide-management-search input:focus{border-color:#93c5fd;background:#fff;box-shadow:0 0 0 3px #3b82f61f}.ai-slide-management-search:before{content:"";position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:16px;height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath stroke-linecap='round' d='M21 21l-4.35-4.35'/%3E%3C/svg%3E") center/contain no-repeat}.ai-slide-management-sort{flex-shrink:0}.ai-slide-management-sort select{padding:.55rem 2rem .55rem .9rem;border:1.5px solid #e2e8f0;border-radius:10px;background:#f8fafc;font-size:.88rem;font-weight:600;color:#1e293b;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:16px;transition:border-color .15s,box-shadow .15s}.ai-slide-management-sort select:focus{border-color:#93c5fd;background-color:#fff;box-shadow:0 0 0 3px #3b82f61f}.ai-slide-management-search span,.ai-slide-management-sort span{display:none}.ai-slide-status-tabs{display:inline-flex;gap:.4rem;background:#f1f5f9;border-radius:12px;padding:.3rem}.ai-slide-status-tab{border-radius:8px;border:none;padding:.38rem 1rem;background:transparent;color:#64748b;font-size:.83rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.ai-slide-status-tab:hover:not(.active){background:#e2e8f0;color:#1e293b}.ai-slide-status-tab.active{background:#2563eb;color:#fff;box-shadow:0 2px 8px #2563eb40}.ai-slide-management-actions{display:flex;flex-wrap:wrap;gap:.55rem}.ai-slide-management-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:.85rem;align-items:start}.ai-slide-management-list-panel,.ai-slide-management-detail-panel{background:transparent;border-radius:0;padding:0}.ai-slide-management-detail-panel{display:flex;flex-direction:column;gap:.75rem;background:radial-gradient(circle at 100% 0%,rgba(37,99,235,.07),transparent 40%),linear-gradient(180deg,#fff,#f8fbff)}.ai-slide-management-detail-panel .ai-slide-management-header{border:1px solid #dbeafe;border-radius:10px;background:#f8fbff;padding:.62rem .7rem}.ai-slide-management-detail-panel .ai-slide-management-header h3{font-size:.93rem}.ai-slide-management-detail-panel .ai-slide-management-header p{margin-top:.2rem;font-size:.79rem;line-height:1.35}.ai-slide-management-detail-panel .ai-slide-management-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.ai-slide-management-detail-panel .ai-slide-management-actions .btn{width:100%}.ai-slide-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.1rem;padding:.25rem .1rem .5rem}.ai-slide-file-card{display:flex;flex-direction:column;border-radius:16px;border:2px solid #e2e8f0;background:#fff;box-shadow:0 2px 10px #1e3a8a12;overflow:hidden;cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .15s}.ai-slide-file-card:hover{border-color:#93c5fd;box-shadow:0 6px 22px #2563eb24;transform:translateY(-2px)}.ai-slide-file-card.active{border-color:#2563eb;box-shadow:0 6px 26px #2563eb33}.ai-slide-file-card-thumb{position:relative;width:100%;aspect-ratio:16 / 9;background:linear-gradient(135deg,#1e3a8a,#0ea5e9);overflow:hidden}.ai-slide-file-card-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ai-slide-file-card-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.4rem;font-weight:900;color:#ffffffb3;background:linear-gradient(135deg,#1e3a8a,#0369a1 60%,#0ea5e9);letter-spacing:-1px}.ai-slide-file-card-badge{position:absolute;top:10px;left:10px;padding:.18rem .55rem;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.ai-slide-file-card-badge.published{background:#4ade80;color:#14532d}.ai-slide-file-card-badge.draft{background:#fbbf24;color:#78350f}.ai-slide-file-card-body{padding:.75rem .9rem .5rem;flex:1}.ai-slide-file-card-title{margin:0 0 .55rem;font-size:.97rem;font-weight:700;color:#0f172a;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.ai-slide-file-card-meta{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.22rem}.ai-slide-file-card-meta li{display:flex;gap:.45rem;font-size:.73rem;line-height:1.4;color:#64748b;overflow:hidden}.ai-slide-file-card-meta li span:first-child{font-weight:700;color:#94a3b8;flex-shrink:0;width:5.5rem}.ai-slide-file-card-meta li span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-slide-file-card-actions{display:flex;gap:.45rem;padding:.6rem .9rem .75rem;border-top:1px solid #f1f5f9;align-items:center}.ai-slide-file-card-btn{display:inline-flex;align-items:center;gap:.35rem;border:none;border-radius:8px;cursor:pointer;font-size:.8rem;font-weight:600;transition:background .15s,transform .1s;padding:.38rem .75rem}.ai-slide-file-card-btn svg{width:15px;height:15px;flex-shrink:0}.ai-slide-file-card-btn.primary{background:#2563eb;color:#fff;flex:1;justify-content:center}.ai-slide-file-card-btn.primary:hover{background:#1d4ed8;transform:scale(1.02)}.ai-slide-file-card-btn.icon{background:#f1f5f9;color:#475569;padding:.38rem .55rem}.ai-slide-file-card-btn.icon:hover{background:#e2e8f0;color:#1e293b}.ai-slide-file-card-btn.icon.danger{background:#fee2e2;color:#b91c1c}.ai-slide-file-card-btn.icon.danger:hover{background:#fecaca;color:#991b1b}.ai-slide-file-card-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.ai-slide-pagination{margin-top:.35rem;display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap}.ai-slide-pagination-btn{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#1e293b;padding:.34rem .74rem;font-size:.82rem;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.ai-slide-pagination-btn:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.ai-slide-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.ai-slide-pagination-meta{font-size:.82rem;font-weight:600;color:#475569}.ai-slide-selected-lesson{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.6rem;border-radius:10px;border:1px solid #c7d2fe;background:#eef2ff}.ai-slide-management-detail-panel .ai-slide-selected-lesson{box-shadow:inset 3px 0 #2563eb;background:#fff}.ai-slide-selected-lesson strong{display:block;font-size:.9rem;color:#1e293b}.ai-slide-selected-lesson span{display:block;margin-top:.14rem;font-size:.78rem;color:#475569}.ai-slide-modal-overlay{position:fixed;inset:0;background:#0f172a80;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem}.ai-slide-generating-overlay{position:fixed;inset:0;z-index:1300;background:#0206179e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:1rem}.ai-slide-generating-popup{width:min(560px,96vw);border-radius:16px;border:1px solid rgba(147,197,253,.55);background:linear-gradient(180deg,#f8fbff,#eef4ff);box-shadow:0 24px 54px #0f172a52;padding:1rem 1rem .85rem}.ai-slide-generating-popup .ai-slide-math-loader{margin:0;width:100%;min-height:180px}.ai-slide-generating-steps{margin-top:.75rem;display:grid;gap:.4rem}.ai-slide-generating-steps span{display:block;width:100%;font-size:.84rem;color:#1e3a8a;font-weight:600;text-align:center;opacity:.25;animation:ai-slide-generating-pulse 2.2s ease-in-out infinite}.ai-slide-generating-steps span:nth-child(2){animation-delay:.35s}.ai-slide-generating-steps span:nth-child(3){animation-delay:.7s}.ai-slide-generating-steps span:nth-child(4){animation-delay:1.05s}@keyframes ai-slide-generating-pulse{0%{opacity:.25;transform:translate(0)}35%{opacity:1;transform:translate(3px)}to{opacity:.25;transform:translate(0)}}.ai-slide-modal{width:min(1220px,96vw);max-height:94vh;display:flex;flex-direction:column;border:1px solid #dbeafe;border-radius:16px;background:#fff;box-shadow:0 20px 46px #0f172a47;overflow:hidden}.ai-slide-modal-header,.ai-slide-modal-footer{flex-shrink:0;padding:.8rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-bottom:1px solid #e2e8f0}.ai-slide-modal-footer{border-top:1px solid #e2e8f0;border-bottom:0;justify-content:flex-end}.ai-slide-modal-header h3{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a}.ai-slide-modal-close{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:1.4rem;font-weight:600;line-height:1;cursor:pointer}.ai-slide-modal-close:hover{background:#eff6ff;border-color:#93c5fd;color:#1e293b}.ai-slide-modal-close:focus-visible{outline:2px solid #60a5fa;outline-offset:2px}.ai-slide-modal-body{padding:.8rem 1rem 1rem;overflow-y:auto;flex:1}.ai-slide-metadata-modal{width:min(520px,94vw);max-height:90vh;display:flex;flex-direction:column}.ai-slide-delete-modal{width:min(520px,94vw)}.ai-slide-delete-modal-body{min-height:190px;display:flex;align-items:center;justify-content:center}.ai-slide-delete-modal-body .ai-slide-math-loader{margin:0;width:100%;min-height:170px}.ai-slide-delete-message{margin:0;text-align:center;line-height:1.6}.ai-slide-metadata-form{flex:1;overflow-y:auto;padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.ai-slide-metadata-preview{display:flex;align-items:center;justify-content:center;margin-bottom:.25rem}.ai-slide-meta-thumb-img{width:100%;max-height:160px;-o-object-fit:cover;object-fit:cover;border-radius:10px;border:1px solid #dbeafe}.ai-slide-meta-thumb-placeholder{width:100%;height:120px;border-radius:10px;background:linear-gradient(135deg,#1e3a8a,#0ea5e9);display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:900;color:#fff9}.ai-slide-field-label{display:block;font-size:.82rem;font-weight:600;color:#334155;margin-bottom:.45rem}.ai-slide-thumb-upload{display:block;border:2px dashed #93c5fd;border-radius:12px;background:#f0f7ff;cursor:pointer;overflow:hidden;transition:border-color .15s,background .15s}.ai-slide-thumb-upload:hover{border-color:#2563eb;background:#e0edff}.ai-slide-thumb-upload-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:1.5rem;color:#3b82f6}.ai-slide-thumb-upload-placeholder svg{width:32px;height:32px;opacity:.7}.ai-slide-thumb-upload-placeholder span{font-size:.85rem;font-weight:600;color:#2563eb}.ai-slide-thumb-upload-placeholder small{font-size:.72rem;color:#64748b}.ai-slide-thumb-upload-preview{width:100%;max-height:160px;-o-object-fit:cover;object-fit:cover;display:block}.ai-slide-thumb-remove{margin-top:.4rem;background:none;border:none;color:#ef4444;font-size:.78rem;font-weight:600;cursor:pointer;padding:.2rem 0}.ai-slide-thumb-remove:hover{text-decoration:underline}.ai-slide-modal-preview-wrap{margin-bottom:0}.ai-slide-office-viewer-wrap{margin:.75rem 0;border:1px solid #dbeafe;border-radius:12px;overflow:hidden;background:#f8fafc;position:relative}.ai-slide-office-viewer-frame{width:100%;min-height:72vh;border:0;background:#fff;opacity:0;transition:opacity .4s ease}.ai-slide-office-viewer-frame--loaded{opacity:1}.ai-slide-iframe-skeleton{position:absolute;inset:0;background:#f0f4ff;display:flex;flex-direction:column;align-items:center;padding:1.5rem 1.25rem;gap:1rem;z-index:2}.ai-slide-iframe-skeleton__bar{border-radius:6px;background:linear-gradient(90deg,#e2e8f0 25%,#c7d2fe,#e2e8f0 75%);background-size:200% 100%;animation:ai-slide-shimmer 1.4s ease-in-out infinite}.ai-slide-iframe-skeleton__bar--title{width:55%;height:22px}.ai-slide-iframe-skeleton__slides{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;width:100%;max-width:680px}.ai-slide-iframe-skeleton__slide{aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;background:#e2e8f0;box-shadow:0 2px 8px #0000000f}.ai-slide-iframe-skeleton__slide-inner{width:100%;height:100%;background:linear-gradient(90deg,#e2e8f0 25%,#c7d2fe,#e2e8f0 75%);background-size:200% 100%;animation:ai-slide-shimmer 1.4s ease-in-out infinite}.ai-slide-iframe-skeleton__slide:nth-child(2) .ai-slide-iframe-skeleton__slide-inner{animation-delay:.1s}.ai-slide-iframe-skeleton__slide:nth-child(3) .ai-slide-iframe-skeleton__slide-inner{animation-delay:.2s}.ai-slide-iframe-skeleton__slide:nth-child(4) .ai-slide-iframe-skeleton__slide-inner{animation-delay:.3s}.ai-slide-iframe-skeleton__slide:nth-child(5) .ai-slide-iframe-skeleton__slide-inner{animation-delay:.4s}.ai-slide-iframe-skeleton__slide:nth-child(6) .ai-slide-iframe-skeleton__slide-inner{animation-delay:.5s}.ai-slide-iframe-skeleton__hint{display:flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:600;color:#3b82f6}.ai-slide-iframe-skeleton__ring{display:inline-block;width:16px;height:16px;border-radius:50%;border:2px solid rgba(59,130,246,.25);border-top-color:#2563eb;animation:ai-slide-math-spin .8s linear infinite;flex-shrink:0}@keyframes ai-slide-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ai-slide-math-loader{position:relative;margin:.8rem auto 1rem;min-height:210px;width:min(520px,95%);border:1px solid #dbeafe;border-radius:14px;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.13),transparent 38%),radial-gradient(circle at 85% 25%,rgba(14,165,233,.14),transparent 34%),linear-gradient(180deg,#f8fbff,#f1f5ff);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;overflow:hidden}.ai-slide-math-loader-ring{width:68px;height:68px;border-radius:999px;border:3px solid rgba(59,130,246,.2);border-top-color:#2563eb;animation:ai-slide-math-spin 1s linear infinite}.ai-slide-math-loader-symbols{position:absolute;inset:0;pointer-events:none}.ai-slide-math-loader-symbols span{position:absolute;font-size:1.15rem;font-weight:800;color:#1d4ed8;opacity:0;animation:ai-slide-math-float 2.8s ease-in-out infinite}.ai-slide-math-loader-symbols span:nth-child(1){top:18%;left:22%;animation-delay:0s}.ai-slide-math-loader-symbols span:nth-child(2){top:24%;right:19%;animation-delay:.35s}.ai-slide-math-loader-symbols span:nth-child(3){bottom:20%;left:28%;animation-delay:.7s}.ai-slide-math-loader-symbols span:nth-child(4){bottom:25%;right:24%;animation-delay:1.05s}.ai-slide-math-loader-symbols span:nth-child(5){top:48%;left:50%;transform:translate(-50%,-50%);animation-delay:1.4s}.ai-slide-math-loader p{margin:0;color:#1e3a8a;font-weight:700}@keyframes ai-slide-math-spin{to{transform:rotate(360deg)}}@keyframes ai-slide-math-float{0%{transform:translateY(10px) scale(.9);opacity:0}35%{opacity:.95}65%{opacity:.95}to{transform:translateY(-10px) scale(1.06);opacity:0}}.ai-slide-managed-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.55rem}.ai-slide-managed-item{text-align:left;border:1px solid #d1d5db;border-radius:10px;background:#fff;padding:.55rem .65rem;cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.ai-slide-managed-item-select{background:transparent;border:0;padding:0;margin:0;text-align:left;display:flex;flex-direction:column;gap:.2rem;cursor:pointer}.ai-slide-managed-item-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.2rem}.ai-slide-managed-item.active{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f629}.ai-slide-managed-item .title{color:#0f172a;font-size:.86rem;font-weight:700}.ai-slide-managed-item .meta{color:#64748b;font-size:.78rem}@media(max-width:900px){.ai-slide-stepper{flex-wrap:wrap;gap:.55rem 0}.ai-slide-step-item{flex:1 1 50%;padding:0 .35rem}.ai-slide-step-item:after{display:none}.ai-slide-grid,.ai-slide-config-grid,.ai-slide-management-toolbar,.ai-slide-management-layout,.ai-slide-management-detail-panel .ai-slide-management-actions{grid-template-columns:1fr}.ai-slide-actions .btn{width:100%}.ai-slide-selected-lesson{flex-direction:column;align-items:stretch}.ai-slide-modal-header,.ai-slide-modal-footer{padding:.7rem .8rem}.ai-slide-modal-footer{flex-direction:column-reverse;align-items:stretch}.ai-slide-modal-footer .btn{width:100%}.ai-slide-preview-toolbar{flex-direction:column;align-items:stretch}}@media(max-width:560px){.ai-slide-step-item{flex-basis:100%}}.teacher-analytics-page{max-width:1600px;margin:0 auto}.header-actions{display:flex;gap:.75rem}.header-actions select{padding:.625rem 1rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.9375rem;background:#fff;cursor:pointer}.key-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:#fff;border-radius:16px;padding:1.5rem;display:flex;gap:1rem;box-shadow:0 2px 8px #0000001a;transition:transform .2s}.metric-card:hover{transform:translateY(-2px)}.metric-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.75rem;flex-shrink:0}.metric-content{flex:1}.metric-value{font-size:2rem;font-weight:800;color:var(--gray-900);line-height:1;margin-bottom:.25rem}.metric-label{font-size:.875rem;color:var(--gray-600);margin-bottom:.5rem}.metric-trend{font-size:.813rem;font-weight:600}.metric-trend.positive{color:var(--success-color)}.metric-trend.negative{color:var(--error-color)}.analytics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}.analytics-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.analytics-card.large{grid-column:span 2}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--gray-200)}.card-title{font-size:1.125rem;font-weight:700;color:var(--gray-900);margin:0}.student-performance-table{overflow-x:auto}.student-performance-table table{width:100%;border-collapse:collapse}.student-performance-table th{background:var(--gray-50);padding:.875rem;text-align:left;font-size:.875rem;font-weight:700;color:var(--gray-700)}.student-performance-table td{padding:.875rem;border-bottom:1px solid var(--gray-200)}.student-name{display:flex;align-items:center;gap:.75rem;font-weight:600}.student-avatar{width:32px;height:32px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem}.score-badge{padding:.375rem .75rem;border-radius:8px;font-weight:700;font-size:.875rem}.score-badge.high{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.score-badge.medium{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.score-badge.low{background:linear-gradient(135deg,#ffd89b,#19547b);color:#fff}.improvement{font-weight:700;font-size:.875rem}.improvement.positive{color:var(--success-color)}.improvement.negative{color:var(--error-color)}.attendance-bar{position:relative;height:24px;background:var(--gray-200);border-radius:12px;overflow:hidden;min-width:100px}.attendance-fill{height:100%;background:var(--gradient-primary);width:100%;transform-origin:left;transition:transform .3s}.attendance-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75rem;font-weight:700;color:var(--gray-700)}.activity-chart{display:flex;gap:1rem;align-items:flex-end;height:200px;padding:1rem 0}.activity-bar-group{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem}.activity-bar{width:100%;background:var(--gradient-primary);border-radius:8px 8px 0 0;position:relative;min-height:20px;display:flex;align-items:flex-start;justify-content:center;padding-top:.5rem;transform-origin:bottom;transition:transform .3s}.bar-value{color:#fff;font-weight:700;font-size:.875rem}.bar-label{font-size:.875rem;font-weight:600;color:var(--gray-700)}.bar-detail{font-size:.75rem;color:var(--gray-500)}.course-progress-list{display:flex;flex-direction:column;gap:1.5rem}.progress-item{padding:1rem;background:var(--gray-50);border-radius:12px}.progress-header{display:flex;justify-content:space-between;margin-bottom:.75rem}.progress-course-name{font-weight:600;color:var(--gray-900)}.progress-students{font-size:.875rem;color:var(--gray-600)}.progress-stats{display:flex;gap:2rem;margin-bottom:.75rem}.stat{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.75rem;color:var(--gray-600)}.stat-value{font-size:1.125rem;font-weight:700;color:var(--primary-color)}.progress-bar-wrapper{margin-top:.75rem}.progress-fill{height:100%;background:var(--gradient-primary);border-radius:4px;width:100%;transform-origin:left;transition:transform .3s}.assignment-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-box{background:var(--gray-50);padding:1.5rem;border-radius:12px;text-align:center}.stat-icon{font-size:2rem;margin-bottom:.5rem}.stat-number{font-size:1.75rem;font-weight:800;color:var(--gray-900);margin-bottom:.25rem}.stat-name{font-size:.875rem;color:var(--gray-600)}.insights-section{margin-top:2rem}.section-title{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0 0 1.5rem}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.insight-card{display:flex;gap:1rem;padding:1.5rem;border-radius:12px;border-left:none}.insight-card.positive{background:#43e97b1a;box-shadow:inset 3px 0 0 var(--success-color)}.insight-card.warning{background:#ffc7001a;box-shadow:inset 3px 0 0 var(--warning-color)}.insight-card.info{background:#667eea1a;box-shadow:inset 3px 0 0 var(--primary-color)}.insight-icon{font-size:2rem;flex-shrink:0}.insight-content{flex:1}.insight-title{font-size:1rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.insight-text{font-size:.875rem;color:var(--gray-700);line-height:1.6;margin:0}@media(max-width:1024px){.analytics-grid{grid-template-columns:1fr}.analytics-card.large{grid-column:span 1}.assignment-stats-grid{grid-template-columns:1fr}}@media(max-width:768px){.page-header{flex-direction:column;gap:1rem}.header-actions{flex-direction:column;width:100%}.header-actions select,.header-actions button{width:100%}.student-performance-table{font-size:.813rem}.activity-chart{height:150px}.insights-grid{grid-template-columns:1fr}}:root{--auth-primary: #c96442;--auth-primary-soft: rgba(201, 100, 66, .12);--auth-primary-glow: rgba(201, 100, 66, .2);--auth-dark: #141413;--auth-dark-alt: #30302e;--auth-bg: #f5f4ed;--auth-surface: #faf9f5;--auth-text: #141413;--auth-text-body: #5e5d59;--auth-text-muted: #87867f;--auth-border: #e8e6dc;--auth-error: #b53333;--auth-success: #5e5d59;--auth-pink: #d97757}.auth-container{display:flex;min-height:100dvh;height:100dvh;background:var(--auth-bg);font-family:inherit;overflow:hidden}.auth-left{flex:0 0 50%;max-width:50%;min-height:100dvh;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:clamp(1.5rem,3vh,2.4rem) clamp(1.25rem,3vw,2.4rem);background:linear-gradient(150deg,#30302e,#2b2a28 55%,#141413);color:#faf9f5;position:relative;overflow:hidden}.auth-left:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.07) 1px,transparent 1px);background-size:28px 28px;z-index:0}.auth-left:after{content:"";position:absolute;width:380px;height:380px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 65%);border-radius:50%;top:-90px;right:-90px;z-index:0}.auth-math-bg{position:absolute;inset:0;z-index:1;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden}.auth-math-sym{position:absolute;font-family:Be Vietnam Pro,system-ui,sans-serif;font-weight:300;color:#ffffff1c;line-height:1}.auth-math-sym.ms1{font-size:5.5rem;top:7%;left:4%}.auth-math-sym.ms2{font-size:7rem;top:2%;right:6%}.auth-math-sym.ms3{font-size:4rem;top:36%;right:4%}.auth-math-sym.ms4{font-size:3.5rem;top:53%;left:7%}.auth-math-sym.ms5{font-size:5.5rem;bottom:25%;right:10%}.auth-math-sym.ms6{font-size:4.5rem;bottom:14%;left:3%}.auth-math-sym.ms7{font-size:3rem;top:23%;left:44%}.auth-math-sym.ms8{font-size:3.5rem;bottom:7%;right:28%}.auth-brand{z-index:2;margin-bottom:0;position:relative;width:100%}.auth-brand-link{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:.75rem}.auth-brand-link:hover{opacity:.9}.auth-logo-text-icon{font-size:1.55rem;font-weight:800;font-family:Be Vietnam Pro,sans-serif;color:#c96442;letter-spacing:-1px;line-height:1;flex-shrink:0}.auth-brand h1{font-family:Playfair Display,Georgia,serif;font-size:1.9rem;font-weight:500;margin:0;letter-spacing:-.03em;color:#fff}.brand-tagline{font-size:.85rem;color:#faf9f5a6;font-weight:400;margin-top:.6rem;letter-spacing:.01em}.auth-features{z-index:2;position:relative;display:flex;flex-direction:column;gap:1.1rem;width:100%;max-width:340px;margin-bottom:2.5rem}.auth-feature-item{display:flex;align-items:flex-start;gap:1rem;font-size:.875rem;color:#ffffffa6;line-height:1.5}.auth-feature-icon{width:30px;height:30px;background:#c9644233;border:1px solid rgba(209,207,197,.65);border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:Be Vietnam Pro,sans-serif;font-size:.6rem;font-weight:800;color:#141413;letter-spacing:.5px;flex-shrink:0;margin-top:1px}.auth-stats{z-index:2;position:relative;display:flex;gap:2rem;width:100%;max-width:100%;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.08)}.auth-stat{display:flex;flex-direction:column;gap:2px}.auth-stat-number{font-family:Be Vietnam Pro,sans-serif;font-size:1.3rem;font-weight:800;color:#fff;letter-spacing:-.03em}.auth-stat-label{font-size:.75rem;color:#fff6;font-weight:400}.auth-right{flex:1;min-height:100dvh;display:flex;flex-direction:column;align-items:stretch;justify-content:stretch;padding:0;background:#f5f4ed;position:relative;background-image:radial-gradient(circle,rgba(209,207,197,.45) 1px,transparent 1px),radial-gradient(ellipse 70% 55% at 50% 0%,rgba(232,230,220,.85) 0%,transparent 60%);background-size:22px 22px,100% 100%;overflow:hidden}.auth-right:before{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(201,100,66,.14) 0%,transparent 68%);top:-120px;right:-90px;pointer-events:none}.auth-right:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(209,207,197,.65) 0%,transparent 72%);bottom:-140px;left:-80px;pointer-events:none}.auth-nav{position:absolute;top:1.5rem;left:1.75rem;z-index:10}.auth-nav-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:500;color:var(--auth-text-muted);text-decoration:none;transition:color .15s}.auth-nav-link:hover{color:var(--auth-primary)}.auth-card{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:100%;padding:clamp(1rem,2.2vh,2.4rem) clamp(1rem,2.2vw,2rem);background:transparent;border:none;border-radius:0;box-shadow:none;position:relative;z-index:1}.auth-card-inner{width:100%;max-width:420px;max-height:calc(100dvh - 3.5rem)}.auth-header{text-align:left;margin-bottom:1rem;padding-bottom:.8rem;border-bottom:1px solid var(--auth-border)}.auth-header h2{font-family:Be Vietnam Pro,sans-serif;font-size:1.35rem;font-weight:700;color:var(--auth-text);margin:0 0 .3rem;letter-spacing:-.02em}.auth-header p{font-size:.8rem;color:var(--auth-text-muted);margin:0;font-weight:400}.auth-form,.form-group{margin-bottom:.8rem}.form-label{display:block;margin-bottom:.4rem;font-size:.78rem;font-weight:500;color:var(--auth-text-muted);letter-spacing:.04em;text-transform:uppercase}.form-label-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.4rem}.form-label-row .form-label{margin-bottom:0}.forgot-pw-row{display:flex;justify-content:flex-end;margin-top:.4rem}.required{color:var(--auth-error)}.form-control{width:100%;padding:.65rem .9rem;font-size:.9rem;font-family:inherit;line-height:1.5;color:var(--auth-text);background:#faf9f5;border:1.5px solid #e8e6dc;border-radius:9px;transition:border-color .18s,box-shadow .18s;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-control:focus{outline:none;border-color:#3898ec;background:#faf9f5;box-shadow:0 0 0 3px #3898ec1f}.form-control.error{border-color:var(--auth-error)}.form-control.error:focus{box-shadow:0 0 0 3px #ef44441f}.form-error{display:block;margin-top:.3rem;font-size:.8rem;color:var(--auth-error)}.form-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.9rem;width:100%}.form-row .checkbox-label{flex:1}.form-row .link-text{flex-shrink:0;text-align:right}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:var(--auth-text-body)}.checkbox-label input[type=checkbox]{margin-top:0;cursor:pointer;width:16px;height:16px;accent-color:var(--auth-primary);flex-shrink:0}.link-text{color:var(--auth-primary);text-decoration:none;font-size:.875rem;font-weight:500;transition:opacity .15s}.link-text:hover{opacity:.75}.link-primary{color:var(--auth-primary);text-decoration:none;font-weight:500;transition:opacity .15s}.link-primary:hover{opacity:.75;text-decoration:underline}.alert{padding:.75rem 1rem;border-radius:12px;font-size:.875rem;margin-bottom:1.25rem}.alert-success{background:#f5f4ed;color:#3d3d3a;border:1px solid #e8e6dc}.alert-error{background:#fef2f2;color:#7f1d1d;border:1px solid #fecaca}.rp-alert-error{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.rp-alert-error__msg{line-height:1.5}.rp-alert-error__link{display:inline-flex;align-items:center;gap:.25rem;font-size:.82rem;font-weight:600;color:#141413;background:#e8e6dc;border:1px solid #d1cfc5;border-radius:99px;padding:.25rem .75rem;text-decoration:none;transition:background .18s,border-color .18s}.rp-alert-error__link:hover{background:#c9644233;border-color:#c9644273;text-decoration:none}.reg-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1rem 1.5rem;gap:0}.reg-success__icon-wrap{margin-bottom:1.25rem}.reg-success__icon{width:64px;height:64px;animation:reg-success-pop .45s cubic-bezier(.22,1,.36,1) both;display:flex;align-items:center;justify-content:center}.reg-success__icon svg{width:64px;height:64px}@keyframes reg-success-pop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}.reg-success__title{font-size:1.35rem;font-weight:700;color:#141413;margin:0 0 .5rem}.reg-success__body{font-size:.9rem;color:#5e5d59;line-height:1.6;margin:0 0 1.25rem;max-width:320px}.reg-success__hint{display:inline-flex;align-items:center;gap:.4rem;background:#f5f4ed;border:1px solid #e8e6dc;color:#5e5d59;font-size:.8rem;padding:.5rem .85rem;border-radius:999px;margin-bottom:1.75rem}.reg-success__btn{width:100%;max-width:320px}.ce-status{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2.5rem 1rem 2rem;gap:0}.ce-status__icon-wrap{margin-bottom:1.5rem}.ce-status__icon{width:72px;height:72px;animation:reg-success-pop .5s cubic-bezier(.22,1,.36,1) both}.ce-status__title{font-size:1.4rem;font-weight:700;color:#111827;margin:0 0 .6rem}.ce-status__body{font-size:.9rem;color:#4b5563;line-height:1.65;margin:0 0 1.5rem;max-width:320px}.ce-status__spinner{width:56px;height:56px;border:3px solid rgba(209,207,197,.55);border-top-color:#c96442;border-radius:50%;animation:ce-spin .9s linear infinite;margin-bottom:1.5rem}@keyframes ce-spin{to{transform:rotate(360deg)}}.ce-status__countdown{display:inline-flex;align-items:center;gap:.3rem;background:#f5f4ed;border:1px solid #e8e6dc;color:#5e5d59;font-size:.82rem;padding:.45rem .9rem;border-radius:999px;margin-bottom:1.5rem}.ce-status__countdown strong{font-variant-numeric:tabular-nums;min-width:1.6ch}.ce-status__btn{width:100%;max-width:320px}.ce-status__actions{display:flex;gap:.75rem;width:100%;max-width:320px}.ce-status__btn--half{flex:1}.auth-container .btn{display:inline-flex;align-items:center;justify-content:center;padding:.62rem 1.2rem;font-size:.86rem;font-family:Be Vietnam Pro,sans-serif;font-weight:600;line-height:1.5;border:none;border-radius:10px;cursor:pointer;transition:all .18s;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;gap:.5rem;letter-spacing:.01em}.auth-container .btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.auth-container .btn-primary{background:#c96442;color:#141413!important;box-shadow:0 0 0 1px #d1cfc5;border:none;position:relative;overflow:hidden}.auth-container .btn-primary:after{display:none}.auth-container .btn-primary:hover:not(:disabled){background:#b65b3c;color:#fff;box-shadow:0 0 0 1px #c2c0b6;transform:translateY(-1px)}.auth-container .btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 0 0 1px #c2c0b6}.auth-container .btn-outline{background:transparent;color:#c96442!important;border:1.5px solid #c96442;box-shadow:none}.auth-container .btn-outline:hover:not(:disabled){background:#c9644214}.auth-container .btn-block{width:100%}.auth-container .btn-google{background:#fff!important;color:var(--auth-text-body)!important;border:1.5px solid var(--auth-border)!important;border-radius:100px;font-weight:500;box-shadow:0 1px 4px #0e0c150a}.auth-container .btn-google:hover{background:#f5f4ed!important;border-color:var(--auth-primary)!important;box-shadow:0 0 0 1px #d1cfc5}.divider{display:flex;align-items:center;margin:.7rem 0;color:var(--auth-text-muted);font-size:.75rem;letter-spacing:.02em}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--auth-border)}.divider span{padding:0 .75rem}.auth-footer{text-align:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--auth-border);display:flex;flex-direction:column;gap:.35rem}.auth-footer p{margin:0;font-size:.82rem;color:var(--auth-text-muted)}.auth-graph{width:min(100%,520px);max-width:min(100%,520px);height:auto;z-index:2;position:relative;margin:0 auto;filter:drop-shadow(0 0 24px rgba(201,100,66,.2));flex-shrink:0;align-self:center;transform:scale(1.06);transform-origin:center}.auth-quote{z-index:2;position:relative;max-width:min(100%,420px);margin:0;padding:.25rem 0 .25rem 1rem;border-left:2px solid rgba(201,100,66,.55);width:100%}.auth-quote p{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;font-style:italic;color:#ffffff94;margin:0 0 .35rem;line-height:1.65}.auth-quote footer{font-size:.77rem;color:#ffffff4d;font-style:normal;font-weight:500;letter-spacing:.025em}.input-icon-wrap{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.9rem;width:16px;height:16px;color:var(--auth-text-muted);pointer-events:none;display:flex;align-items:center;flex-shrink:0;z-index:1;opacity:.7;transition:opacity .2s,color .2s}.input-icon svg{width:16px;height:16px}.input-icon-wrap:focus-within .input-icon{color:var(--auth-primary);opacity:1}.form-control.with-icon{padding-left:2.5rem}.form-control.with-toggle{padding-right:2.75rem}.pwd-toggle{position:absolute;right:.6rem;width:28px;height:28px;background:none;border:none;border-radius:6px;padding:0;cursor:pointer;color:var(--auth-text-muted);display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s;opacity:.55;flex-shrink:0;outline:none}.pwd-toggle:hover{color:var(--auth-primary);background:#c964421f;opacity:1}.pwd-toggle:focus-visible{outline:2px solid var(--auth-primary);outline-offset:1px;opacity:1}.pwd-toggle svg{width:16px;height:16px;pointer-events:none}.btn-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:auth-spin .65s linear infinite;flex-shrink:0}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-right-deco{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.rdeco-chip{position:absolute;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.72rem;font-style:italic;color:#5e5d59eb;background:#faf9f5c7;border:1px solid rgba(232,230,220,1);border-radius:6px;padding:.2rem .55rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);white-space:nowrap;animation:rdeco-float 7s ease-in-out infinite}.rdeco-chip--1{top:10%;left:4%;animation-delay:0s;animation-duration:8s}.rdeco-chip--2{top:18%;right:5%;animation-delay:1.5s;animation-duration:9s}.rdeco-chip--3{bottom:22%;left:6%;animation-delay:3s;animation-duration:7.5s}.rdeco-chip--4{bottom:12%;right:7%;animation-delay:2s;animation-duration:10s}@keyframes rdeco-float{0%,to{transform:translateY(0) rotate(-1deg);opacity:.7}50%{transform:translateY(-10px) rotate(1deg);opacity:1}}.rdeco-orbit{position:absolute;width:200px;height:200px;top:50%;right:-60px;transform:translateY(-50%);animation:rdeco-spin-slow 18s linear infinite;opacity:.7}@keyframes rdeco-spin-slow{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.rdeco-parabola{position:absolute;width:200px;bottom:8%;left:2%;opacity:.6}.rdeco-tracer{offset-path:path("M10,90 Q90,5 170,90");offset-distance:0%;animation:rdeco-trace 4s ease-in-out infinite alternate}@keyframes rdeco-trace{0%{offset-distance:0%}to{offset-distance:100%}}.rdeco-sym{position:absolute;font-family:Be Vietnam Pro,system-ui,sans-serif;font-style:italic;color:#c9644224;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:400;animation:rdeco-drift 12s ease-in-out infinite}.rdeco-sym--1{font-size:5rem;top:5%;left:30%;animation-delay:0s;animation-duration:13s}.rdeco-sym--2{font-size:4rem;top:40%;left:8%;animation-delay:2s;animation-duration:11s}.rdeco-sym--3{font-size:3.5rem;bottom:30%;right:12%;animation-delay:4s;animation-duration:14s}.rdeco-sym--4{font-size:3rem;top:65%;left:40%;animation-delay:1.5s;animation-duration:10s}@keyframes rdeco-drift{0%,to{transform:translate(0) scale(1);opacity:.5}33%{transform:translate(6px,-8px) scale(1.04);opacity:.8}66%{transform:translate(-4px,5px) scale(.97);opacity:.4}}.google-btn-wrapper{display:flex;justify-content:center}.autocomplete-wrapper{position:relative}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--auth-surface);border:1.5px solid var(--auth-border);border-radius:12px;box-shadow:0 8px 24px #0e0c151a;z-index:100;max-height:220px;overflow-y:auto;margin-top:4px}.autocomplete-item{padding:.7rem 1rem;cursor:pointer;font-size:.875rem;color:var(--auth-text-body);border-bottom:1px solid var(--auth-border);transition:background .15s;display:flex;flex-direction:column;gap:2px}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:var(--auth-primary-soft)}.autocomplete-item-main{font-weight:500;color:var(--auth-text)}.autocomplete-item-sub{font-size:.8rem;color:var(--auth-text-muted)}.autocomplete-loading{padding:.75rem 1rem;font-size:.875rem;color:var(--auth-text-muted);text-align:center}@media(max-width:768px){.auth-container{flex-direction:column;height:auto;min-height:100dvh;overflow:auto}.auth-right:before{display:none}.auth-nav{display:none}.auth-left{flex:none;padding:1.75rem 1.5rem;min-height:200px;align-items:center;justify-content:center;gap:1.25rem}.auth-brand{margin-bottom:0}.auth-brand h1{font-size:1.5rem}.auth-features,.auth-stats{display:none}.auth-graph{max-width:280px;margin:.5rem 0 .75rem}.auth-quote{display:none}.auth-right{padding:1.5rem 1rem;background-image:none;background-color:#f5f4ed;overflow:visible}.auth-card{padding:2rem 1.25rem;border-radius:0}.form-row-2{grid-template-columns:1fr}}.rp-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.5rem 0 .75rem;animation:reg-success-pop .45s cubic-bezier(.22,1,.36,1) both}.rp-state__icon{width:88px;height:88px;margin-bottom:1.25rem;background:#e8e6dccc;border-radius:50%;display:flex;align-items:center;justify-content:center}.rp-state--error .rp-state__icon{background:#fef2f2}.rp-state__icon svg{width:64px;height:64px}.rp-state__title{font-size:1.3rem;font-weight:700;color:#141413;margin-bottom:.6rem}.rp-state__body{font-size:.88rem;color:#5e5d59;line-height:1.6;margin-bottom:1.25rem;max-width:320px}.rp-state__hint{display:inline-flex;align-items:center;gap:.4rem;background:#e8e6dc;color:#141413;border-radius:99px;padding:.3rem .85rem;font-size:.78rem;margin-bottom:1.25rem}.rp-state__btn{width:100%;max-width:280px;text-align:center}.rp-strength{display:flex;align-items:center;gap:.5rem;margin-top:.4rem}.rp-strength__bar{display:flex;gap:3px;flex:1}.rp-strength__segment{flex:1;height:4px;border-radius:99px;transition:background .25s ease}.rp-strength__label{font-size:.72rem;font-weight:600;min-width:50px;text-align:right;transition:color .25s ease}.rp-hint{font-size:.75rem;color:#87867f;line-height:1.5;margin-top:-.25rem}:root{--ob-primary: #c96442;--ob-primary-hover: #4f46e5;--ob-primary-glow: rgba(201, 100, 66, .28);--ob-teal: #14b8a6;--ob-teal-hover: #0d9488;--ob-teal-glow: rgba(20, 184, 166, .28);--ob-bg-from: #0e0c15;--ob-bg-to: #1a1725;--ob-card-bg: rgba(255, 255, 255, .97);--ob-border: #e8e5f0;--ob-text: #0e0c15;--ob-text-muted: #756b85;--ob-input-border: #ddd8ee;--ob-input-focus: #c96442;--ob-r: 20px;--ob-font: "Be Vietnam Pro", -apple-system, sans-serif;--ob-font-head: "Be Vietnam Pro", -apple-system, sans-serif}.ob-page{min-height:100dvh;height:100dvh;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse 80% 60% at 20% 10%,rgba(201,100,66,.2) 0%,transparent 60%),radial-gradient(ellipse 60% 50% at 80% 80%,rgba(20,184,166,.13) 0%,transparent 55%),radial-gradient(ellipse 50% 40% at 60% 30%,rgba(167,139,250,.1) 0%,transparent 50%),linear-gradient(145deg,#16133d,#1e1b4b,#1a1832 60%,#111827);font-family:var(--ob-font);position:relative;padding:1.5rem;-webkit-font-smoothing:antialiased}.ob-page:before{content:"";position:fixed;inset:0;background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px);background-size:32px 32px;pointer-events:none;z-index:0}.ob-logo{position:fixed;top:1.25rem;left:1.75rem;display:flex;align-items:center;gap:.5rem;text-decoration:none;z-index:20}.ob-logo-icon{font-size:1.35rem;font-weight:800;color:var(--ob-primary);font-family:var(--ob-font-head);line-height:1}.ob-logo-text{font-size:1rem;font-weight:700;color:#fff;font-family:var(--ob-font-head);letter-spacing:-.3px}.ob-bg-symbols{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}.ob-sym{position:absolute;font-family:Be Vietnam Pro,system-ui,sans-serif;font-weight:300;color:#fff1;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:ob-float linear infinite}.ob-sym-1{font-size:5rem;top:8%;left:5%;animation-duration:18s;animation-delay:0s}.ob-sym-2{font-size:3.5rem;top:15%;left:20%;animation-duration:22s;animation-delay:-4s}.ob-sym-3{font-size:6rem;top:5%;left:75%;animation-duration:20s;animation-delay:-8s}.ob-sym-4{font-size:4rem;top:70%;left:8%;animation-duration:25s;animation-delay:-2s}.ob-sym-5{font-size:3rem;top:80%;left:30%;animation-duration:19s;animation-delay:-6s}.ob-sym-6{font-size:4.5rem;top:10%;left:90%;animation-duration:23s;animation-delay:-12s}.ob-sym-7{font-size:3.5rem;top:55%;left:88%;animation-duration:21s;animation-delay:-3s}.ob-sym-8{font-size:2.5rem;top:90%;left:70%;animation-duration:26s;animation-delay:-9s}.ob-sym-9{font-size:3rem;top:40%;left:3%;animation-duration:17s;animation-delay:-14s}.ob-sym-10{font-size:4rem;top:35%;left:95%;animation-duration:28s;animation-delay:-1s}.ob-sym-11{font-size:2.8rem;top:65%;left:55%;animation-duration:24s;animation-delay:-7s}.ob-sym-12{font-size:3.2rem;top:22%;left:48%;animation-duration:20s;animation-delay:-10s}@keyframes ob-float{0%{transform:translateY(0) rotate(0);opacity:.065}33%{transform:translateY(-20px) rotate(5deg);opacity:.1}66%{transform:translateY(10px) rotate(-4deg);opacity:.065}to{transform:translateY(0) rotate(0);opacity:.065}}.ob-geo{position:fixed;border-radius:50%;pointer-events:none;z-index:0}.ob-geo-1{width:600px;height:600px;top:-150px;right:-150px;background:radial-gradient(circle,rgba(201,100,66,.24) 0%,rgba(94,92,230,.06) 50%,transparent 70%);filter:blur(40px)}.ob-geo-2{width:500px;height:500px;bottom:-120px;left:-100px;background:radial-gradient(circle,rgba(20,184,166,.18) 0%,rgba(20,184,166,.05) 50%,transparent 70%);filter:blur(40px)}.ob-geo-3{width:350px;height:350px;top:40%;left:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(167,139,250,.08) 0%,transparent 65%);filter:blur(30px)}.ob-card{position:relative;z-index:10;width:100%;max-width:860px;background:var(--ob-card-bg);border-radius:28px;box-shadow:0 2px 4px #00000014,0 8px 32px #0000002e,0 0 0 1px #ffffff0f;display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 3rem)}.ob-stepper{display:flex;align-items:center;padding:1.5rem 2.5rem 1rem;background:linear-gradient(to bottom,#f8f7ff,transparent);border-bottom:1px solid rgba(201,100,66,.12);flex-shrink:0}.ob-step-node{display:flex;flex-direction:column;align-items:center;gap:.35rem;flex-shrink:0}.ob-step-circle{width:32px;height:32px;border-radius:50%;border:2px solid var(--ob-border);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#b8b1cc;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1)}.ob-step-label{font-size:.7rem;font-weight:600;color:#b8b1cc;white-space:nowrap;letter-spacing:.3px;transition:color .3s ease}.ob-step-node.active .ob-step-circle{border-color:var(--ob-primary);background:var(--ob-primary);color:#fff;box-shadow:0 0 0 4px var(--ob-primary-glow)}.ob-step-node.active .ob-step-label{color:var(--ob-primary)}.ob-step-node.done .ob-step-circle{border-color:#22c55e;background:#22c55e;color:#fff}.ob-step-node.done .ob-step-label{color:#22c55e}.ob-step-line{flex:1;height:2px;background:var(--ob-border);margin:0 .5rem 1.25rem;border-radius:2px;transition:background .4s ease}.ob-step-line.done{background:#22c55e}.ob-error{margin:.75rem 2.5rem 0;padding:.75rem 1rem;background:#fff1f1;color:#dc2626;border-radius:10px;border:1px solid #fecaca;font-size:.875rem;flex-shrink:0}.ob-card-body{flex:1;overflow-y:auto;padding:1.75rem 2.5rem 2rem;scrollbar-width:none}.ob-card-body::-webkit-scrollbar{display:none}.ob-step-content{display:flex;flex-direction:column;height:100%}.ob-step-title{font-family:var(--ob-font-head);font-size:1.55rem;font-weight:800;color:var(--ob-text);letter-spacing:-.4px;line-height:1.2;margin:0 0 .4rem}.ob-gradient-text{color:var(--ob-primary)}.ob-step-sub{font-size:.92rem;color:var(--ob-text-muted);line-height:1.55;margin:0 0 1.5rem}@keyframes ob-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:ob-fade-in .35s cubic-bezier(.4,0,.2,1) both}.ob-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;flex:1}.ob-role-card{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.75rem 1.75rem 1.5rem;border:2px solid var(--ob-border);border-radius:20px;background:#fff;cursor:pointer;transition:border-color .22s ease,transform .22s cubic-bezier(.4,0,.2,1),box-shadow .22s ease,background .22s ease;text-align:left;position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}.ob-role-card--teacher:hover{border-color:var(--ob-primary);background:#faf9ff;transform:translateY(-4px);box-shadow:0 12px 40px #5e5ce626,0 0 0 0 var(--ob-primary-glow)}.ob-role-card--teacher:active{transform:translateY(-1px) scale(.985);box-shadow:0 4px 16px #c9644233;background:#f3f1ff;border-color:var(--ob-primary)}.ob-role-card--student:hover{border-color:var(--ob-teal);background:#f0fdfb;transform:translateY(-4px);box-shadow:0 12px 40px #14b8a626,0 0 0 0 var(--ob-teal-glow)}.ob-role-card--student:active{transform:translateY(-1px) scale(.985);box-shadow:0 4px 16px #14b8a62e;background:#e6faf7;border-color:var(--ob-teal)}.ob-role-card h3{font-family:var(--ob-font-head);font-size:1.1rem;font-weight:700;color:var(--ob-text);margin:0;transition:color .2s ease}.ob-role-card--teacher:hover h3{color:var(--ob-primary)}.ob-role-card--student:hover h3{color:var(--ob-teal)}.ob-role-card p{font-size:.84rem;color:var(--ob-text-muted);line-height:1.5;margin:0}.ob-role-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;transition:transform .22s cubic-bezier(.4,0,.2,1),box-shadow .22s ease}.ob-role-icon--purple{background:#5e5ce61a;color:var(--ob-primary)}.ob-role-card--teacher:hover .ob-role-icon--purple{background:#5e5ce629;transform:scale(1.08);box-shadow:0 4px 16px #5e5ce633}.ob-role-icon--teal{background:#14b8a61a;color:var(--ob-teal)}.ob-role-card--student:hover .ob-role-icon--teal{background:#14b8a629;transform:scale(1.08);box-shadow:0 4px 16px #14b8a633}.ob-role-arrow{margin-top:.25rem;font-size:.8rem;font-weight:600;display:inline-flex;align-items:center;gap:.35rem;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease}.ob-role-arrow--purple{color:var(--ob-primary)}.ob-role-arrow--teal{color:var(--ob-teal)}.ob-role-card:hover .ob-role-arrow{opacity:1;transform:translateY(0)}.ob-form{display:flex;flex-direction:column;gap:1rem;flex:1}.ob-form--two-col{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.ob-field{display:flex;flex-direction:column;gap:.35rem}.ob-field label{font-size:.82rem;font-weight:600;color:#4a4560;letter-spacing:.2px}.ob-optional{font-weight:400;color:var(--ob-text-muted);font-size:.75rem}.ob-input-wrap{position:relative}.ob-field-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:#a099b8;pointer-events:none}.ob-input{width:100%;padding:.65rem .875rem .65rem 2.375rem;border:1.5px solid var(--ob-input-border);border-radius:10px;font-size:.9rem;font-family:var(--ob-font);color:var(--ob-text);background:#fff;outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ob-input:focus{border-color:var(--ob-input-focus);box-shadow:0 0 0 3px #5e5ce61a}.ob-input::-moz-placeholder{color:#c4bdd6}.ob-input::placeholder{color:#c4bdd6}.ob-input--error{border-color:#ef4444!important}.ob-input--error:focus{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef44441f!important}.ob-field-footer{display:flex;justify-content:space-between;align-items:center;min-height:1.1rem;margin-top:.25rem}.ob-field-error{font-size:.775rem;color:#ef4444;display:flex;align-items:center;gap:.25rem}.ob-field-error:before{content:"⚠";font-size:.7rem}.ob-char-count{font-size:.725rem;color:#c4bdd6;margin-left:auto;flex-shrink:0}.ob-char-count--warn{color:#f59e0b;font-weight:600}.ob-doc-type-row{display:flex;gap:.75rem}.ob-doc-type-btn{flex:1;padding:.65rem 1rem;border:1.5px solid var(--ob-input-border);border-radius:10px;font-size:.875rem;font-weight:600;color:var(--ob-text-muted);background:#fff;cursor:pointer;transition:all .2s ease;font-family:var(--ob-font)}.ob-doc-type-btn:hover{border-color:var(--ob-primary);color:var(--ob-primary)}.ob-doc-type-btn.active{border-color:var(--ob-primary);background:#5e5ce60f;color:var(--ob-primary)}.ob-upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem;border:2px dashed #ddd8ee;border-radius:12px;background:#fafafe;cursor:pointer;transition:all .25s ease;color:var(--ob-text-muted);font-size:.875rem;min-height:90px}.ob-upload-zone:hover{border-color:var(--ob-primary);background:#5e5ce608}.ob-upload-zone.has-file{border-color:#22c55e;background:#22c55e0d;color:#16a34a}.ob-upload-name{font-weight:600;font-size:.8rem}.ob-checkbox-row{display:flex;align-items:flex-start;gap:.6rem;cursor:pointer}.ob-checkbox-row input[type=checkbox]{margin-top:2px;cursor:pointer;accent-color:var(--ob-primary);width:15px;height:15px;flex-shrink:0}.ob-checkbox-row span{font-size:.82rem;color:var(--ob-text-muted);line-height:1.5}.ob-suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1.5px solid var(--ob-border);border-radius:12px;box-shadow:0 8px 32px #0000001a;z-index:100;max-height:200px;overflow-y:auto}.ob-suggest-item{padding:.65rem 1rem;cursor:pointer;display:flex;flex-direction:column;gap:.15rem;transition:background .15s}.ob-suggest-item:hover{background:#f8f7ff}.ob-suggest-main{font-size:.875rem;font-weight:600;color:#1e293b}.ob-suggest-sub{font-size:.775rem;color:var(--ob-text-muted)}.ob-suggest-empty{padding:1rem;text-align:center;color:var(--ob-text-muted);font-size:.875rem;font-style:italic}.ob-actions{display:flex;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--ob-border);flex-shrink:0}.ob-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1.5rem;border-radius:10px;font-size:.9rem;font-weight:600;font-family:var(--ob-font);cursor:pointer;border:none;transition:all .22s cubic-bezier(.4,0,.2,1)}.ob-btn-primary{background:var(--ob-primary);color:#fff;margin-left:auto;min-width:130px}.ob-btn-primary:hover:not(:disabled){background:var(--ob-primary-hover);transform:translateY(-1px);box-shadow:0 6px 20px var(--ob-primary-glow)}.ob-btn-primary:disabled{background:#d1cde8;color:#a099b8;cursor:not-allowed}.ob-btn-teal{background:var(--ob-teal);color:#fff;margin-left:auto;min-width:160px}.ob-btn-teal:hover{background:var(--ob-teal-hover);transform:translateY(-1px);box-shadow:0 6px 20px var(--ob-teal-glow)}.ob-btn-ghost{background:transparent;color:var(--ob-text-muted);border:1.5px solid var(--ob-border)}.ob-btn-ghost:hover{background:#f4f3fb;color:var(--ob-text);border-color:#c8c2df}.ob-btn-lg{padding:.875rem 2.5rem;font-size:1rem;border-radius:12px;margin:1.5rem auto 0}.ob-spinner{display:inline-block;width:16px;height:16px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:ob-spin .7s linear infinite}@keyframes ob-spin{to{transform:rotate(360deg)}}.ob-success{align-items:center;text-align:center;justify-content:center;padding:1.5rem 0;gap:0}.ob-success-icon{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#4ade80,#22c55e);display:flex;align-items:center;justify-content:center;color:#fff;margin:0 auto 1.5rem;box-shadow:0 8px 32px #22c55e4d;animation:ob-pop .5s cubic-bezier(.4,0,.2,1) both}.ob-success-icon--teal{background:linear-gradient(135deg,#2dd4bf,var(--ob-teal));box-shadow:0 8px 32px var(--ob-teal-glow)}@keyframes ob-pop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.ob-success .ob-step-title{font-size:1.65rem;margin-bottom:.75rem}.ob-success-p{color:var(--ob-text-muted);max-width:420px;margin:0 auto;font-size:.93rem;line-height:1.65}.ob-success-p strong{color:var(--ob-text)}.ob-mascot{position:fixed;bottom:2rem;right:2.5rem;z-index:20;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;animation:ob-mascot-in .5s cubic-bezier(.22,1,.36,1) both}@keyframes ob-mascot-in{0%{opacity:0;transform:translateY(30px) scale(.85)}to{opacity:1;transform:translateY(0) scale(1)}}.ob-mascot-bubble{background:#fff;color:#1e1b4b;font-size:.8rem;font-weight:500;line-height:1.5;padding:.65rem 1rem;border-radius:16px 16px 4px;max-width:220px;text-align:left;box-shadow:0 4px 20px #0000002e,0 1px 4px #0000001a;position:relative;animation:ob-bubble-in .35s cubic-bezier(.22,1,.36,1) both;border:1px solid rgba(94,92,230,.15)}.ob-mascot-bubble:after{content:"";position:absolute;bottom:-8px;right:28px;width:0;height:0;border-left:8px solid transparent;border-right:0px solid transparent;border-top:9px solid white;filter:drop-shadow(0 2px 2px rgba(0,0,0,.08))}@keyframes ob-bubble-in{0%{opacity:0;transform:scale(.7) translate(10px)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes ob-text-swap{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ob-mascot-text{display:block;animation:ob-text-swap .22s ease both}.ob-mascot-avatar{width:80px;height:88px;animation:ob-mascot-idle 3s ease-in-out infinite;filter:drop-shadow(0 6px 16px rgba(0,0,0,.3))}@keyframes ob-mascot-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media(max-width:640px){.ob-card{max-width:100%;border-radius:20px}.ob-stepper{padding:1.25rem 1.5rem .75rem}.ob-card-body{padding:1.5rem}.ob-role-grid{grid-template-columns:1fr;gap:.75rem}.ob-form--two-col{grid-template-columns:1fr}.ob-step-label{display:none}.ob-step-line{margin-bottom:0}.ob-mascot{bottom:1rem;right:1rem}.ob-mascot-avatar{width:60px;height:66px}.ob-mascot-bubble{max-width:160px;font-size:.75rem}}.calendar-page{max-width:1600px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.view-mode-buttons{display:flex;gap:.5rem;background:#fff;padding:.25rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.view-btn{padding:.625rem 1.25rem;border:none;background:transparent;border-radius:8px;font-size:.875rem;font-weight:600;color:var(--gray-700);cursor:pointer;transition:all .2s}.view-btn:hover{color:var(--primary-color)}.view-btn.active{background:var(--gradient-primary);color:#fff}.calendar-container{display:grid;grid-template-columns:1fr 350px;gap:2rem;margin-bottom:2rem}.calendar-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 2px 8px #0000001a}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.calendar-title{font-size:1.5rem;font-weight:800;color:var(--gray-900);margin:0}.nav-btn{width:40px;height:40px;border:2px solid var(--gray-300);background:#fff;border-radius:50%;font-size:1.25rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.nav-btn:hover{border-color:var(--primary-color);color:var(--primary-color);transform:scale(1.1)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}.calendar-day-name{text-align:center;font-size:.875rem;font-weight:700;color:var(--gray-700);padding:.75rem;background:var(--gray-100);border-radius:8px}.calendar-day{aspect-ratio:1;border:2px solid var(--gray-200);border-radius:8px;padding:.5rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;position:relative}.calendar-day.empty{border-color:transparent;cursor:default}.calendar-day:not(.empty):hover{border-color:var(--primary-color);transform:scale(1.05);box-shadow:0 4px 12px #0000001a}.calendar-day.today{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:var(--primary-color)}.calendar-day.has-events{font-weight:600}.day-number{font-size:.875rem;font-weight:600;color:var(--gray-900);margin-bottom:.25rem}.day-events{display:flex;gap:2px;flex-wrap:wrap}.event-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.more-events{font-size:.625rem;color:var(--gray-600);font-weight:600}.events-sidebar{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;max-height:800px}.sidebar-header{margin-bottom:1.5rem}.sidebar-header h3{font-size:1.25rem;font-weight:700;color:var(--gray-900);margin:0 0 1rem}.type-filter{width:100%;padding:.75rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.875rem;font-weight:600}.events-list{flex:1;overflow-y:auto;margin-bottom:1rem}.event-item{padding:1rem;box-shadow:inset 3px 0 0 var(--primary-color);background:var(--gray-50);border-radius:8px;margin-bottom:1rem;display:flex;gap:1rem;transition:all .2s}.event-item:hover{background:#fff;box-shadow:0 2px 8px #0000001a;transform:translate(4px)}.event-icon{font-size:1.5rem;flex-shrink:0}.event-content{flex:1;min-width:0}.event-title{font-size:.9375rem;font-weight:700;color:var(--gray-900);margin:0 0 .25rem}.event-course{font-size:.813rem;color:var(--primary-color);font-weight:600;margin:0 0 .5rem}.event-time{font-size:.75rem;color:var(--gray-600);line-height:1.5}.add-event-btn{width:100%;margin-top:auto}.calendar-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.stat-item{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:1rem}.stat-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.stat-value{font-size:1.75rem;font-weight:800;color:var(--gray-900);line-height:1;margin-bottom:.25rem}@media(max-width:1024px){.calendar-container{grid-template-columns:1fr}.events-sidebar{max-height:400px}.calendar-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.view-mode-buttons{width:100%}.view-btn{flex:1}.calendar-section{padding:1rem}.calendar-grid{gap:.25rem}.calendar-day{padding:.25rem}.day-number{font-size:.75rem}.event-dot{width:4px;height:4px}.calendar-stats{grid-template-columns:1fr}}.certificates-page{max-width:1400px;margin:0 auto}.certs-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.certs-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid var(--gray-200)}.tab-btn{padding:1rem 2rem;border:none;background:transparent;font-size:1rem;font-weight:600;color:var(--gray-600);cursor:pointer;position:relative;transition:all .2s}.tab-btn:hover,.tab-btn.active{color:var(--primary-color)}.tab-btn.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:var(--gradient-primary);border-radius:2px 2px 0 0}.certificates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2rem}.certificate-card{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 2px 8px #0000001a;transition:all .3s;cursor:pointer;border:2px solid transparent}.certificate-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026;border-color:var(--primary-color)}.cert-badge{width:80px;height:80px;margin:0 auto 1.5rem;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem}.cert-content{text-align:center}.cert-title{font-size:1.25rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.cert-course{font-size:.9375rem;color:var(--gray-600);margin:0 0 1.5rem}.cert-details{background:var(--gray-50);border-radius:12px;padding:1rem;margin-bottom:1.5rem}.cert-detail-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--gray-200)}.cert-detail-item:last-child{border-bottom:none}.detail-label{font-size:.875rem;color:var(--gray-600)}.detail-value{font-size:.875rem;font-weight:600;color:var(--gray-900)}.detail-value.score{color:var(--success-color);font-size:1rem}.cert-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.action-btn{padding:.75rem 1rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.achievement-filters{display:flex;gap:1rem;margin-bottom:2rem}.filter-btn{padding:.75rem 1.5rem;border:2px solid var(--gray-300);background:#fff;border-radius:50px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.filter-btn:hover{border-color:var(--primary-color)}.filter-btn.active{background:var(--gradient-primary);color:#fff;border-color:transparent}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.achievement-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;text-align:center;transition:all .3s;position:relative;border:2px solid transparent}.achievement-card.earned{border-color:var(--success-color)}.achievement-card.earned:hover{transform:translateY(-4px);box-shadow:0 8px 24px #43e97b33}.achievement-card.locked{opacity:.6}.locked-overlay{position:absolute;top:1rem;right:1rem;width:40px;height:40px;background:var(--gray-300);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.ach-icon{width:80px;height:80px;margin:0 auto 1rem;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem}.ach-title{font-size:1.125rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.ach-description{font-size:.875rem;color:var(--gray-600);margin:0 0 1rem;line-height:1.5}.ach-progress{margin-bottom:1rem}.progress-bar{width:100%;height:8px;background:var(--gray-200);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:var(--gradient-primary);width:100%;transform-origin:left;transition:transform .3s}.progress-text{font-size:.813rem;font-weight:600;color:var(--gray-700)}.earned-date{font-size:.813rem;color:var(--success-color);font-weight:600;padding:.5rem;background:#43e97b1a;border-radius:8px}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:#fff;border-radius:16px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative}.modal-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border:none;background:var(--gray-200);border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .2s;z-index:10}.certificate-preview{padding:2rem}.cert-frame{background:#fff;border:8px solid var(--primary-color);border-radius:8px;padding:3rem;position:relative;box-shadow:0 4px 16px #0000001a;margin-bottom:2rem}.cert-header{text-align:center;margin-bottom:2rem}.cert-logo{font-size:4rem;margin-bottom:.5rem}.cert-header h2{font-size:1.5rem;font-weight:700;color:var(--primary-color);margin:0;text-transform:uppercase;letter-spacing:2px}.cert-body{text-align:center}.cert-label{font-size:.875rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:3px;margin:0 0 1rem}.cert-main-title{font-size:1.75rem;font-weight:800;color:var(--gray-900);margin:0 0 2rem;text-transform:uppercase}.cert-recipient{font-size:1rem;color:var(--gray-700);margin:0 0 .5rem;font-style:italic}.cert-name{font-size:2.5rem;font-weight:800;color:var(--primary-color, #4f46e5);margin:0 0 2rem}.cert-achievement{font-size:1.125rem;color:var(--gray-700);line-height:1.8;margin:0 0 3rem}.cert-footer-info{display:flex;justify-content:space-around;margin-bottom:3rem}.cert-date,.cert-id{text-align:center}.info-label{font-size:.813rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.info-value{font-size:1rem;font-weight:700;color:var(--gray-900)}.cert-signature{text-align:center}.signature-line{width:200px;height:2px;background:var(--gray-400);margin:0 auto .5rem}.signature-name{font-size:.9375rem;font-weight:600;color:var(--gray-700)}.cert-decoration{position:absolute;inset:1rem;pointer-events:none}.decoration-corner{position:absolute;width:40px;height:40px;border:3px solid var(--primary-color)}.decoration-corner.tl{top:0;left:0;border-right:none;border-bottom:none}.decoration-corner.tr{top:0;right:0;border-left:none;border-bottom:none}.decoration-corner.bl{bottom:0;left:0;border-right:none;border-top:none}.decoration-corner.br{bottom:0;right:0;border-left:none;border-top:none}.cert-modal-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}@media(max-width:1024px){.certs-stats{grid-template-columns:repeat(2,1fr)}.certificates-grid{grid-template-columns:1fr}.achievements-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.certs-stats{grid-template-columns:1fr}.certs-tabs{flex-direction:column;border-bottom:none}.tab-btn.active:after{display:none}.achievement-filters{flex-wrap:wrap}.achievements-grid{grid-template-columns:1fr}.cert-frame{padding:1.5rem}.cert-name{font-size:1.75rem}.cert-modal-actions{flex-direction:column}.cert-modal-actions .btn{width:100%}}.chat-page{height:calc(100vh - 70px);overflow:hidden}.chat-container{display:grid;grid-template-columns:380px 1fr;height:100%;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.conversations-sidebar{border-right:2px solid var(--gray-200);display:flex;flex-direction:column;background:var(--gray-50)}.sidebar-header{padding:1.5rem;border-bottom:2px solid var(--gray-200);display:flex;justify-content:space-between;align-items:center;background:#fff}.sidebar-header h2{font-size:1.5rem;font-weight:800;color:var(--gray-900);margin:0}.new-chat-btn{width:40px;height:40px;border:none;background:var(--gradient-primary);color:#fff;border-radius:50%;font-size:1.25rem;cursor:pointer;transition:all .2s}.new-chat-btn:hover{transform:scale(1.1)}.search-box{padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--gray-200)}.search-box input{width:100%;padding:.75rem 1rem;border:2px solid var(--gray-300);border-radius:50px;font-size:.9375rem}.search-box input:focus{outline:none;border-color:var(--primary-color)}.conversations-list{flex:1;overflow-y:auto}.conversation-item{padding:1rem 1.5rem;display:flex;gap:1rem;cursor:pointer;transition:all .2s;border-left:4px solid transparent;background:#fff;border-bottom:1px solid var(--gray-100)}.conversation-item:hover{background:var(--gray-50)}.conversation-item.active{background:linear-gradient(135deg,#667eea14,#764ba214);border-left-color:var(--primary-color)}.conv-avatar-wrapper{position:relative;flex-shrink:0}.conv-avatar{width:50px;height:50px;border-radius:50%;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-size:1.75rem}.online-indicator{position:absolute;bottom:2px;right:2px;width:12px;height:12px;background:var(--success-color);border:2px solid white;border-radius:50%}.conv-content{flex:1;min-width:0}.conv-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.conv-name{font-size:1rem;font-weight:600;color:var(--gray-900)}.conv-time{font-size:.75rem;color:var(--gray-600)}.conv-footer{display:flex;justify-content:space-between;align-items:center}.conv-message{font-size:.875rem;color:var(--gray-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.unread-badge{background:var(--primary-color);color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.chat-window{display:flex;flex-direction:column;height:100%}.chat-header{padding:1rem 1.5rem;border-bottom:2px solid var(--gray-200);display:flex;justify-content:space-between;align-items:center;background:#fff}.chat-header-left{display:flex;align-items:center;gap:1rem}.header-avatar-wrapper{position:relative}.header-avatar{width:50px;height:50px;border-radius:50%;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-size:1.75rem}.header-info{display:flex;flex-direction:column}.header-name{font-size:1.125rem;font-weight:700;color:var(--gray-900);margin:0 0 .25rem}.header-status{font-size:.875rem;color:var(--success-color)}.chat-header-actions{display:flex;gap:.5rem}.header-action-btn{width:40px;height:40px;border:2px solid var(--gray-300);background:#fff;border-radius:50%;font-size:1.25rem;cursor:pointer;transition:all .2s}.header-action-btn:hover{border-color:var(--primary-color)}.chat-messages{flex:1;overflow-y:auto;padding:1.5rem;background:var(--gray-50);display:flex;flex-direction:column;gap:1rem}.message-wrapper{display:flex;gap:.75rem;align-items:flex-end}.message-wrapper.me{flex-direction:row-reverse}.message-wrapper.system{justify-content:center}.message-avatar{width:32px;height:32px;border-radius:50%;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.message-bubble{max-width:70%;min-width:100px}.message-wrapper.me .message-bubble{background:var(--gradient-primary);color:#fff;border-radius:16px 16px 4px;padding:.75rem 1rem}.message-wrapper.other .message-bubble{background:#fff;border-radius:16px 16px 16px 4px;padding:.75rem 1rem;box-shadow:0 2px 4px #0000000d}.message-wrapper.system .message-bubble{max-width:100%}.system-message{text-align:center;font-size:.813rem;color:var(--gray-600);padding:.5rem 1rem;background:#0000000d;border-radius:12px}.message-sender-name{font-size:.75rem;font-weight:600;color:var(--primary-color);margin-bottom:.25rem}.message-content{font-size:.9375rem;line-height:1.5;margin-bottom:.25rem;word-wrap:break-word}.message-meta{display:flex;justify-content:flex-end;align-items:center;gap:.25rem}.message-wrapper.me .message-meta{opacity:.9}.message-time{font-size:.75rem}.message-wrapper.me .message-time{color:#fff}.message-wrapper.other .message-time{color:var(--gray-600)}.message-status{font-size:.75rem}.chat-input-area{padding:1rem 1.5rem;border-top:2px solid var(--gray-200);display:flex;gap:.75rem;align-items:center;background:#fff}.input-action-btn{width:40px;height:40px;border:2px solid var(--gray-300);background:#fff;border-radius:50%;font-size:1.25rem;cursor:pointer;transition:all .2s;flex-shrink:0}.input-action-btn:hover{border-color:var(--primary-color)}.message-input{flex:1;padding:.75rem 1rem;border:2px solid var(--gray-300);border-radius:20px;font-size:.9375rem;font-family:inherit;resize:none;max-height:120px}.message-input:focus{outline:none;border-color:var(--primary-color)}.send-btn{width:50px;height:50px;border:none;background:var(--gradient-primary);color:#fff;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .2s;flex-shrink:0}.send-btn:hover:not(:disabled){transform:scale(1.1)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--gray-600);text-align:center}.empty-icon{font-size:5rem;margin-bottom:1rem;opacity:.3}.chat-empty h3{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.chat-empty p{font-size:1rem;margin:0}@media(max-width:1024px){.chat-container{grid-template-columns:320px 1fr}}@media(max-width:768px){.chat-container{grid-template-columns:1fr}.conversations-sidebar{display:none}.chat-window{display:flex}.message-bubble{max-width:85%}}.course-breadcrumb{margin-bottom:1.25rem;padding:.75rem 0}.breadcrumb-list{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;list-style:none;margin:0;padding:0}.breadcrumb-item{display:flex;align-items:center;gap:.35rem;font-size:.875rem}.breadcrumb-separator{color:#94a3b8;flex-shrink:0}.breadcrumb-link{display:flex;align-items:center;gap:.35rem;color:#64748b;text-decoration:none;transition:color .15s ease;padding:.25rem .5rem;border-radius:6px}.breadcrumb-link:hover{color:#1e40af;background:#f1f5f9}.breadcrumb-current{color:#141413;font-weight:600;padding:.25rem .5rem;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);letter-spacing:0;font-synthesis:none}@media(max-width:640px){.breadcrumb-list{font-size:.8rem}.breadcrumb-link span{display:none}.breadcrumb-link svg{display:block}.breadcrumb-current{font-size:.8rem}}:root{--sc-indigo: #4f46e5;--sc-indigo-light: #6366f1;--sc-blue: #3b82f6;--sc-violet: #7c3aed;--sc-surface: #ffffff;--sc-surface-alt: #f9fafb;--sc-border: #f1f5f9;--sc-border-hover: rgba(79, 70, 229, .25);--sc-text-primary: #0f172a;--sc-text-secondary: #475569;--sc-text-muted: #94a3b8;--sc-radius-card: 20px;--sc-radius-badge: 999px;--sc-shadow-card: 0 1px 3px rgba(15, 23, 42, .06), 0 4px 16px rgba(15, 23, 42, .04);--sc-shadow-hover: 0 8px 32px rgba(79, 70, 229, .12), 0 2px 8px rgba(15, 23, 42, .06);--sc-font: "Be Vietnam Pro", "SF Pro Display", -apple-system, BlinkMacSystemFont, sans-serif;--sc-transition: .25s cubic-bezier(.22, 1, .36, 1)}.sc-page{max-width:1320px;margin:0 auto;padding:0 8px;font-family:var(--sc-font);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased}.sc-hero{position:relative;border-radius:24px;overflow:hidden;margin-bottom:24px;background:radial-gradient(ellipse at 15% 60%,rgba(79,70,229,.13) 0%,transparent 55%),radial-gradient(ellipse at 85% 25%,rgba(59,130,246,.1) 0%,transparent 50%),radial-gradient(ellipse at 55% 90%,rgba(139,92,246,.08) 0%,transparent 45%),#fff;border:1px solid var(--sc-border)}.sc-hero-watermark{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.sc-hero-glass{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:48px 56px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sc-greeting-time{display:block;font-size:14px;font-weight:500;color:var(--sc-indigo);letter-spacing:.06em;margin-bottom:8px;text-transform:uppercase}.sc-greeting-name{font-size:40px;font-weight:800;color:var(--sc-text-primary);letter-spacing:-.03em;line-height:1.1;margin-bottom:8px;display:flex;align-items:center;gap:12px}.sc-greeting-wave{font-size:32px;display:inline-block;animation:sc-wave 2.5s ease-in-out 1s 2;transform-origin:70% 80%}@keyframes sc-wave{0%,to{transform:rotate(0)}15%{transform:rotate(14deg)}30%{transform:rotate(-8deg)}45%{transform:rotate(14deg)}60%{transform:rotate(-4deg)}75%{transform:rotate(10deg)}}.sc-greeting-sub{font-size:16px;color:var(--sc-text-secondary);font-weight:400;margin:0}.sc-highlight{color:var(--sc-indigo);font-weight:600}.sc-hero-right{display:flex;flex-direction:column;align-items:flex-end;gap:16px;flex-shrink:0}.sc-searchbar{display:flex;align-items:center;gap:10px;width:340px;padding:0 16px;height:48px;background:#ffffffd9;border:1.5px solid #e2e8f0;border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px 3px #0f172a0f,0 1px 2px #0f172a0a;transition:border-color var(--sc-transition),box-shadow var(--sc-transition)}.sc-searchbar:focus-within{border-color:var(--sc-indigo);box-shadow:inset 0 1px 3px #0f172a0f,0 0 0 3px #4f46e51f}.sc-search-icon{color:var(--sc-text-muted);flex-shrink:0}.sc-search-input{flex:1;border:none;background:transparent;outline:none;font-size:14px;font-family:var(--sc-font);color:var(--sc-text-primary)}.sc-search-input::-moz-placeholder{color:var(--sc-text-muted)}.sc-search-input::placeholder{color:var(--sc-text-muted)}.sc-kbd{display:inline-flex;align-items:center;padding:2px 7px;border:1px solid #e2e8f0;border-radius:6px;font-size:11px;font-family:var(--sc-font);color:var(--sc-text-muted);background:#f8fafc;line-height:1.6;flex-shrink:0}.sc-explore-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;background:var(--sc-indigo);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;font-family:var(--sc-font);cursor:pointer;transition:background var(--sc-transition),box-shadow var(--sc-transition);box-shadow:0 2px 8px #4f46e540}.sc-explore-btn:hover{background:var(--sc-indigo-light);box-shadow:0 4px 16px #4f46e54d}.sc-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.sc-stat-card{background:var(--sc-surface);border:1.5px solid var(--sc-border);border-radius:var(--sc-radius-card);padding:24px;cursor:default;transition:border-color var(--sc-transition),box-shadow var(--sc-transition),transform var(--sc-transition);box-shadow:var(--sc-shadow-card)}.sc-stat-card:hover{border-color:var(--sc-border-hover)}.sc-stat-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.sc-stat-icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sc-stat-spark{opacity:.85}.sc-stat-value{font-size:28px;font-weight:800;color:var(--sc-text-primary);letter-spacing:-.03em;line-height:1;margin-bottom:6px}.sc-stat-label{font-size:13px;font-weight:500;color:var(--sc-text-secondary);margin-bottom:8px}.sc-stat-delta{font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:3px}.sc-delta-up{color:#10b981}.sc-delta-dn{color:#ef4444}.sc-section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px}.sc-section-title{font-size:22px;font-weight:700;color:var(--sc-text-primary);letter-spacing:-.02em;margin:0 0 4px}.sc-section-sub{font-size:13px;color:var(--sc-text-muted);margin:0}.sc-course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-bottom:48px}.sc-course-card{background:var(--sc-surface);border:1.5px solid var(--sc-border);border-radius:var(--sc-radius-card);overflow:hidden;cursor:pointer;box-shadow:var(--sc-shadow-card);transition:border-color var(--sc-transition),box-shadow var(--sc-transition);outline:none}.sc-course-card:focus-visible{box-shadow:0 0 0 3px #4f46e540}.sc-course-card:hover{border-color:var(--sc-border-hover);box-shadow:var(--sc-shadow-hover)}.sc-card-thumb-wrap{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden}.sc-thumb{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;transition:filter .4s ease}.sc-course-card:hover .sc-thumb{filter:brightness(.82)}.sc-thumb-orb{position:absolute;border-radius:50%;filter:blur(28px)}.sc-thumb-orb-1{width:120px;height:120px;top:-20px;left:-20px}.sc-thumb-orb-2{width:90px;height:90px;bottom:-10px;right:20px}.sc-thumb-grid{position:absolute;inset:0;width:100%;height:100%}.sc-thumb-symbol{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px}.sc-thumb-glyph{font-family:var(--sc-font);font-size:64px;font-weight:400;color:#ffffffd9;line-height:1;text-shadow:0 4px 24px rgba(0,0,0,.25);letter-spacing:-.02em}.sc-thumb-sub{font-family:var(--sc-font);font-size:10px;font-weight:700;color:#fff9;letter-spacing:.18em;text-transform:uppercase}.sc-card-hover-cta{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--sc-transition)}.sc-course-card:hover .sc-card-hover-cta{opacity:1}.sc-cta-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;background:#fffffff2;color:var(--sc-text-primary);border:none;border-radius:999px;font-size:13px;font-weight:700;font-family:var(--sc-font);cursor:pointer;box-shadow:0 4px 20px #0003;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sc-prog-badge{position:absolute;top:12px;right:12px;padding:3px 9px;background:#00000073;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:11px;font-weight:700;font-family:var(--sc-font);border-radius:var(--sc-radius-badge);letter-spacing:.02em}.sc-card-body{padding:20px 20px 16px}.sc-card-title{font-size:15px;font-weight:700;color:var(--sc-text-primary);letter-spacing:-.01em;line-height:1.45;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sc-card-teacher{font-size:13px;color:var(--sc-text-secondary);margin:0 0 12px;display:flex;align-items:center;gap:6px}.sc-teacher-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#10b981;flex-shrink:0}.sc-card-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.sc-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--sc-radius-badge);font-size:11.5px;font-weight:600;font-family:var(--sc-font);letter-spacing:.01em}.sc-badge-lessons{background:#4f46e514;color:var(--sc-indigo)}.sc-badge-rating{background:#f59e0b1a;color:#b45309}.sc-badge-students{background:#10b9811a;color:#065f46}.sc-prog-track{height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden;position:relative}.sc-prog-fill{height:100%;border-radius:4px;transition:transform 1.5s cubic-bezier(.22,1,.36,1);position:relative}.sc-prog-fill:after{content:"";position:absolute;right:0;top:-2px;width:8px;height:12px;border-radius:50%;background:inherit;filter:blur(4px);opacity:.8}.sc-card-prog-section{margin-bottom:12px}.sc-card-prog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.sc-prog-label{font-size:12px;font-weight:500;color:var(--sc-text-muted)}.sc-prog-pct{font-size:12px;font-weight:700;color:var(--sc-indigo)}.sc-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #f1f5f9}.sc-last-accessed{font-size:12px;color:var(--sc-text-muted)}.sc-continue-hint{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:600;color:var(--sc-indigo);opacity:0;transition:opacity var(--sc-transition)}.sc-course-card:hover .sc-continue-hint{opacity:1}.sc-empty{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:12px;padding:80px 0;color:var(--sc-text-muted);font-size:15px}.sc-detail{background:var(--sc-surface);border:1.5px solid var(--sc-border);border-radius:24px;padding:40px;box-shadow:var(--sc-shadow-card)}.sc-back-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border:1.5px solid #e2e8f0;background:var(--sc-surface);border-radius:10px;font-size:14px;font-weight:600;font-family:var(--sc-font);color:var(--sc-text-secondary);cursor:pointer;transition:all var(--sc-transition);margin-bottom:32px}.sc-back-btn:hover{border-color:var(--sc-indigo);color:var(--sc-indigo);background:#4f46e50a}.sc-detail-header{display:grid;grid-template-columns:360px 1fr;gap:40px;margin-bottom:40px;padding-bottom:40px;border-bottom:1px solid var(--sc-border)}.sc-detail-thumb-wrap{border-radius:16px;overflow:hidden;aspect-ratio:16 / 9}.sc-detail-info{display:flex;flex-direction:column;gap:16px}.sc-detail-title{font-size:26px;font-weight:800;color:var(--sc-text-primary);letter-spacing:-.025em;line-height:1.25;margin:0}.sc-detail-teacher{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--sc-text-secondary);margin:0}.sc-detail-desc{font-size:15px;color:var(--sc-text-secondary);line-height:1.65;margin:0}.sc-detail-badges{display:flex;gap:8px;flex-wrap:wrap}.sc-detail-prog-wrap{background:#f8fafc;border:1px solid var(--sc-border);border-radius:14px;padding:20px 24px}.sc-detail-prog-header{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;color:var(--sc-text-secondary);margin-bottom:12px}.sc-detail-prog-header strong{color:var(--sc-indigo);font-size:16px}.sc-tabs{display:flex;gap:4px;margin-bottom:32px;background:#f8fafc;border:1px solid var(--sc-border);border-radius:12px;padding:4px}.sc-tab-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 20px;border:none;background:transparent;border-radius:8px;font-size:13.5px;font-weight:600;font-family:var(--sc-font);color:var(--sc-text-secondary);cursor:pointer;transition:all var(--sc-transition)}.sc-tab-btn:hover{color:var(--sc-text-primary);background:#0f172a0a}.sc-tab-active{background:var(--sc-surface)!important;color:var(--sc-indigo)!important;box-shadow:0 1px 4px #0f172a14}.sc-lessons{display:flex;flex-direction:column;gap:16px}.sc-chapter{background:#f8fafc;border:1px solid var(--sc-border);border-radius:16px;padding:24px}.sc-chapter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--sc-border)}.sc-chapter-title{font-size:15px;font-weight:700;color:var(--sc-text-primary);margin:0}.sc-chapter-badge{font-size:12px;font-weight:600;color:var(--sc-indigo);background:#4f46e514;padding:3px 10px;border-radius:var(--sc-radius-badge)}.sc-lesson-row{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--sc-surface);border:1px solid var(--sc-border);border-radius:12px;margin-bottom:8px;transition:all var(--sc-transition)}.sc-lesson-row:last-child{margin-bottom:0}.sc-lesson-row:not(.sc-lesson-locked):hover{border-color:var(--sc-border-hover);box-shadow:0 2px 12px #4f46e512}.sc-lesson-done .sc-lesson-icon{color:#10b981}.sc-lesson-current .sc-lesson-icon{color:var(--sc-indigo)}.sc-lesson-locked{opacity:.55}.sc-lesson-locked .sc-lesson-icon{color:var(--sc-text-muted)}.sc-lesson-current{border-color:#4f46e540;background:#4f46e505}.sc-lesson-icon{flex-shrink:0;display:flex;align-items:center}.sc-lesson-info{flex:1;min-width:0}.sc-lesson-title{display:block;font-size:14px;font-weight:600;color:var(--sc-text-primary);margin-bottom:3px;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.sc-lesson-dur{font-size:12px;color:var(--sc-text-muted)}.sc-lesson-btn{padding:7px 16px;border:1.5px solid #e2e8f0;background:var(--sc-surface);border-radius:8px;font-size:13px;font-weight:600;font-family:var(--sc-font);color:var(--sc-text-secondary);cursor:pointer;transition:all var(--sc-transition);flex-shrink:0}.sc-lesson-btn:not(:disabled):hover{border-color:var(--sc-indigo);color:var(--sc-indigo)}.sc-lesson-btn-primary{background:var(--sc-indigo);color:#fff;border-color:var(--sc-indigo)}.sc-lesson-btn-primary:hover{background:var(--sc-indigo-light)!important;border-color:var(--sc-indigo-light)!important;color:#fff!important;box-shadow:0 4px 12px #4f46e547}.sc-lesson-btn:disabled{opacity:.45;cursor:not-allowed}.sc-tab-placeholder{display:flex;flex-direction:column;align-items:center;gap:16px;padding:80px 0;color:var(--sc-text-muted);font-size:15px}@media(max-width:1280px){.sc-kpi-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:1024px){.sc-hero-glass{flex-direction:column;align-items:flex-start;padding:40px}.sc-hero-right{align-items:flex-start;width:100%}.sc-searchbar{width:100%;max-width:440px}.sc-detail-header{grid-template-columns:1fr}.sc-detail-thumb-wrap{max-width:480px}}@media(max-width:768px){.sc-hero-glass{padding:32px 24px}.sc-greeting-name{font-size:28px}.sc-kpi-row{grid-template-columns:repeat(2,1fr);gap:12px}.sc-course-grid{grid-template-columns:1fr}.sc-detail{padding:24px 20px}.sc-tabs{overflow-x:auto;flex-wrap:nowrap}}@media(max-width:480px){.sc-kpi-row{grid-template-columns:1fr}}.player-container{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.5rem;margin-top:.5rem;align-items:start}.player-main{display:flex;flex-direction:column;gap:1rem}.player-sidebar{padding:0;overflow:hidden;height:-moz-fit-content;height:fit-content;position:sticky;top:1rem}@media(max-width:1024px){.player-container{grid-template-columns:1fr}.player-sidebar{position:static}}.section-header{padding:1rem 1.25rem;background:#faf9f5;border-bottom:1px solid #f0eee6;display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .2s ease}.section-header:hover{background:#f5f4ed}.section-title-area{display:flex;align-items:center;gap:12px}.section-label{font-size:.72rem;font-weight:800;color:#5e5d59;text-transform:uppercase;letter-spacing:.05em;background:#e8e6dc;padding:2px 8px;border-radius:4px;display:inline-flex;align-items:center}.section-title{font-size:.98rem;font-weight:800;color:var(--mod-ink)}.section-meta{font-size:.75rem;color:#87867f;display:flex;gap:12px;align-items:center}.lessons-group{display:grid;grid-template-rows:1fr;overflow:hidden;transition:grid-template-rows .4s cubic-bezier(0,1,0,1)}.lessons-group>.lessons-inner{min-height:0;overflow:hidden}.lessons-group.collapsed{grid-template-rows:0fr}.sc-page.module-layout-container .cover-thumb{opacity:1!important}.player-sidebar{background:#fff;border-radius:16px;overflow:hidden}.player-sidebar .section-header{background:#f5f4ed;border-bottom-color:#e8e6dc}.player-sidebar .section-header:hover{background:#ede8e0}.player-sidebar .section-title-area{min-width:0;flex:1;overflow:visible}.player-sidebar .section-title-area .section-label{background:#e8e6dc;color:#5e5d59;flex-shrink:0}.player-sidebar .section-title-area .section-title{color:#141413;font-size:.85rem;min-width:0;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.player-sidebar .section-header svg{color:#87867f;flex-shrink:0}.player-sidebar .section-meta{color:#87867f;flex-shrink:0}.player-sidebar .clt-lesson-subtitle{color:#87867f}.player-sidebar .clt-lesson-title{font-size:.88rem;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.course-detail-header{background:#faf9f5;border:1px solid #f0eee6;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:#0000000a 0 2px 16px}.course-header-main{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.25rem}.course-header-info{display:flex;flex-direction:column;gap:.75rem}.course-header-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.course-detail-title{margin:0;font-size:1.75rem;font-weight:700;color:#141413;line-height:1.35;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);letter-spacing:0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga" 1}.course-header-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.9rem;color:#5e5d59;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);letter-spacing:0}.meta-item{display:flex;align-items:center;gap:.35rem}.meta-separator{color:#b0aea5}.course-header-description{margin:0;font-size:.95rem;color:#475569;line-height:1.6}.course-header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.btn-sm{padding:.5rem .85rem;font-size:.875rem}.course-tabs{display:flex;gap:.5rem;border-bottom:2px solid #e8e6dc;margin-bottom:0;overflow-x:auto;-webkit-overflow-scrolling:touch;background:#faf9f5;border-radius:12px 12px 0 0;padding:.25rem .5rem 0;border:1px solid #f0eee6;border-bottom:none}.course-tab{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.25rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#64748b;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;position:relative;margin-bottom:-2px}.course-tab:hover{color:#b45435;background:#fdf4f0}.course-tab.active{color:#c96442;border-bottom-color:#c96442;background:#fff8f5}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .4rem;background:#f0eee6;color:#4d4c48;font-size:.75rem;font-weight:700;border-radius:999px}.course-tab.active .tab-count{background:#c96442;color:#fff}.course-tab-content{animation:fadeIn .3s ease;background:#f5f4ed;border:1px solid #e8e6dc;border-top:none;border-radius:0 0 12px 12px;padding:1.25rem 1.15rem 1.5rem;box-sizing:border-box}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.course-detail-title{font-size:1.4rem}.course-header-actions{width:100%}.course-header-actions .btn{flex:1}.course-tabs{gap:.25rem}.course-tab{padding:.75rem 1rem;font-size:.875rem}.tab-count{min-width:1.25rem;height:1.25rem;font-size:.7rem}}@media(max-width:480px){.course-detail-header{padding:1rem}.course-detail-title{font-size:1.25rem}.course-header-meta{font-size:.8rem}.course-tab span:not(.tab-count){display:none}.course-tab{padding:.75rem}}.module-layout-container .module-page.module-page--bleed{max-width:none;width:100%;margin:0;box-sizing:border-box;padding:1.25rem 1.35rem 1.5rem;min-height:calc(100vh - 68px);background:var(--bg-body, #f5f4ed);border-radius:0}.dashboard-content.dashboard-content--course-detail-parchment{background:var(--bg-body, #f5f4ed)!important}.course-edit-modal-overlay{align-items:center;justify-content:center;padding:1rem;box-sizing:border-box}.course-edit-wizard.wizard-modal-box{max-width:min(720px,96vw)!important;max-height:min(90vh,820px);display:flex;flex-direction:column;background:#faf9f5!important;border:1px solid #e8e6dc!important;border-radius:16px!important;box-shadow:#00000014 0 24px 64px,0 0 0 1px #f0eee6!important;padding:1.35rem 1.5rem 1.15rem!important;overflow:hidden}.course-edit-wizard .modal-header{margin-bottom:1.1rem;flex-shrink:0}.course-edit-wizard .modal-header h2{font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)!important;font-size:1.2rem!important;font-weight:700!important;color:#141413!important;letter-spacing:0!important}.course-edit-wizard .modal-header p{color:#5e5d59!important}.course-edit-wizard .modal-icon{background:#fdf4f0!important;color:#c96442!important;border:1px solid #f0d4c8!important;border-radius:10px!important;box-shadow:0 0 0 1px #f0eee6e6}.course-edit-wizard .wizard-steps-indicator{margin-bottom:1.5rem}.course-edit-wizard .wizard-steps-indicator:before{background:#e8e6dc!important}.course-edit-wizard .wizard-step-circle{box-shadow:0 0 0 4px #faf9f5!important;border-color:#e8e6dc!important}.course-edit-wizard .wizard-step-item.active .wizard-step-circle{border-color:#c96442!important;background:#c96442!important;color:#fff!important;box-shadow:0 0 0 4px #faf9f5,0 4px 12px #c964424d!important}.course-edit-wizard .wizard-step-item.active .wizard-step-label{color:#b45435!important}.course-edit-wizard .wizard-step-item.completed .wizard-step-circle{border-color:#059669!important;background:#059669!important}.course-edit-wizard .wizard-step-item.completed .wizard-step-label{color:#047857!important}.course-edit-wizard .wizard-content-wrapper{min-height:0;flex:1 1 auto;max-height:min(52vh,520px);overflow-x:hidden;overflow-y:auto;padding-right:.35rem;scrollbar-gutter:stable}.course-edit-wizard .modal-form{flex:1;min-height:0;display:flex;flex-direction:column;gap:0}.course-edit-wizard .form-section-header h3{font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)!important;color:#141413!important}.course-edit-wizard .form-section-header p{color:#5e5d59!important}.course-edit-wizard .form-label{color:#4d4c48!important}.course-edit-wizard .form-input,.course-edit-wizard .form-select{background:#fff!important;border:1.5px solid #e8e6dc!important;border-radius:11px!important;color:#141413!important}.course-edit-wizard .form-input:focus,.course-edit-wizard .form-select:focus{border-color:#c96442!important;box-shadow:0 0 0 3px #c9644226!important;outline:none!important}.course-edit-wizard .wizard-footer{border-top-color:#f0eee6!important;margin-top:1.25rem;padding-top:1.25rem;flex-shrink:0}.course-edit-wizard .wizard-footer .btn.primary{background:#c96442!important;color:#faf9f5!important;border:1px solid #c96442!important}.course-edit-wizard .wizard-footer .btn.primary:hover:not(:disabled){background:#b45435!important;border-color:#b45435!important}.course-edit-pricing-summary{background:#f5f4ed;padding:1.15rem 1.2rem;border-radius:12px;border:1px solid #f0eee6;margin-bottom:1.5rem;box-shadow:0 0 0 1px #f0eee699}.course-edit-pricing-summary__row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;font-size:.9rem}.course-edit-pricing-summary__row:first-child{margin-bottom:.5rem}.course-edit-pricing-summary__row span:first-child{color:#5e5d59}.course-edit-pricing-summary__strong{font-size:1.1rem;color:#141413}.course-edit-pricing-summary__save{color:#047857;font-weight:600}.course-detail-loading{background:#faf9f5;border:1px solid #e8e6dc;border-radius:16px;padding:1.25rem}.course-detail-loading__header,.course-detail-loading__meta,.course-detail-loading__tabs span,.course-detail-loading__panel{border-radius:10px;background:linear-gradient(90deg,#f1ece1 25%,#ece6d8,#f1ece1 75%);background-size:220% 100%;animation:course-detail-shimmer 1.2s linear infinite}.course-detail-loading__header{height:46px;margin-bottom:.9rem}.course-detail-loading__meta{height:16px;max-width:460px;margin-bottom:.55rem}.course-detail-loading__meta--short{max-width:280px;margin-bottom:1rem}.course-detail-loading__tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-bottom:1rem}.course-detail-loading__tabs span{display:block;height:40px}.course-detail-loading__panel{height:240px}@keyframes course-detail-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.course-math-loading-overlay{position:fixed;inset:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:1rem;background:#1c181261;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.course-math-loading-popup{width:min(400px,92vw);border-radius:20px;border:1px solid #e5ded3;background:linear-gradient(165deg,#fffcf9,#f5efe6 55%,#efe8dd);box-shadow:0 24px 48px #14120e2e,0 0 0 1px #c9644214,inset 0 1px #ffffffd9;padding:1.5rem 1.5rem 1.4rem;text-align:center;font-family:Segoe UI,system-ui,sans-serif}.course-math-loader-ring{width:64px;height:64px;margin:0 auto 1rem;border-radius:999px;border:3px solid rgba(201,100,66,.18);border-top-color:#c96442;border-right-color:#d4785c;animation:course-math-loading-spin .9s linear infinite}.course-math-loading-kicker{margin:0 0 .55rem;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#c96442}.course-math-loading-text{margin:0;color:#5e5d59;font-size:.94rem;font-weight:600;line-height:1.5;letter-spacing:-.01em}@keyframes course-math-loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sat-container{display:flex;flex-direction:column;gap:1rem;width:100%;min-width:0;animation:sat-fade-in .35s ease-out}@keyframes sat-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sat-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}@media(max-width:640px){.sat-stats-grid{grid-template-columns:1fr}}.sat-stat-card{display:flex;align-items:center;gap:.65rem;padding:.65rem .85rem;border-radius:12px;border:1px solid #e8e6dc;background:#fffefb;box-shadow:0 1px 2px #1414130a}.sat-stat-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sat-stat-ink .sat-stat-icon{background:#f5f4ed;color:#5e5d59}.sat-stat-warm .sat-stat-icon{background:#4338ca1a;color:#4338ca}.sat-stat-soft .sat-stat-icon{background:#0596691a;color:#059669}.sat-stat-content h3{margin:0;font-size:1.25rem;font-weight:800;line-height:1.1;color:#141413;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.sat-stat-content p{margin:.15rem 0 0;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#87867f}.sat-banner{display:flex;align-items:flex-start;gap:.5rem;padding:.65rem .85rem;border-radius:12px;border:1px solid #e8e6dc;background:#faf9f5;color:#5e5d59}.sat-banner-icon{color:#4338ca;margin-top:1px}.sat-banner span{font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);font-size:.8125rem;font-weight:500;line-height:1.45}.sat-list{display:flex;flex-direction:column;gap:.65rem}.sat-card{border-radius:14px;border:1px solid #e8e6dc;background:#fff;padding:.85rem 1rem;box-shadow:0 1px 3px #1414130f;transition:box-shadow .2s ease,border-color .2s ease}.sat-card:hover{box-shadow:0 4px 14px #14141312}.sat-card.sat-disabled{opacity:.88}.sat-card-top{display:flex;gap:1rem;align-items:flex-start;justify-content:space-between}.sat-card-main{min-width:0;flex:1;display:flex;flex-direction:column;gap:.4rem}.sat-card-aside{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:.6rem}@media(max-width:720px){.sat-card-top{flex-direction:column}.sat-card-aside{width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.sat-actions{width:100%;justify-content:stretch}.sat-btn{flex:1;min-width:0}}.sat-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.sat-type-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:#f5f4ed;color:#5e5d59}.sat-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .5rem;border-radius:999px;font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.sat-badge-star{flex-shrink:0}.sat-badge.formative{background:#eef2ff;color:#4338ca;border:1px solid rgba(67,56,202,.15)}.sat-badge.summative{background:#fef2f2;color:#b91c1c;border:1px solid rgba(185,28,28,.12)}.sat-badge.required{background:#f5f3ff;color:#4338ca;border:1px solid rgba(67,56,202,.22)}.sat-order{font-size:.6875rem;font-weight:700;color:#87867f;background:#f5f4ed;padding:.25rem .5rem;border-radius:8px;font-variant-numeric:tabular-nums}.sat-title{margin:.15rem 0 0;font-size:1rem;font-weight:700;line-height:1.35;color:#141413;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.sat-desc{margin:0;font-size:.8125rem;line-height:1.45;color:#87867f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sat-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.15rem}.sat-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .45rem;border-radius:8px;font-size:.75rem;font-weight:600;color:#5e5d59;background:#faf9f5;border:1px solid #ede9df;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.sat-chip svg{flex-shrink:0;color:#87867f}.sat-chip-pass{color:#047857;background:#ecfdf5;border-color:#05966933}.sat-chip-pass svg{color:#059669}.sat-chip-muted{font-weight:500;color:#87867f;background:transparent;border-style:dashed}.sat-status-msg{margin-top:.25rem;padding:.45rem .55rem;border-radius:8px;display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.sat-status-locked{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.sat-status-expired{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.sat-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.sat-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .85rem;border-radius:10px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,opacity .15s ease;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);white-space:nowrap}.sat-btn.primary{border:none;background:linear-gradient(135deg,#3730a3,#4f46e5);color:#fff;box-shadow:0 2px 8px #4338ca38}.sat-btn.primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 4px 12px #4338ca47}.sat-btn.primary:disabled{background:#e8e6dc;color:#87867f;box-shadow:none;cursor:not-allowed}.sat-btn.secondary{border:1px solid #e8e6dc;background:#fffefb;color:#5e5d59}.sat-btn.secondary:hover{border-color:#ddd6c8;background:#faf9f5;color:#141413}.sat-empty{text-align:center;padding:2.25rem 1.25rem;color:#87867f;background:#fffefb;border-radius:14px;border:1px dashed #e8e6dc;display:flex;flex-direction:column;align-items:center;gap:.65rem;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);font-size:.875rem}.sat-empty svg{color:#cbc8bc}.sat-empty p{margin:0;font-weight:500}.course-detail-tab{width:100%;min-width:0;box-sizing:border-box}.course-detail-tab .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;margin-bottom:1.25rem}.course-detail-tab .stat-card{display:flex;align-items:flex-start;gap:.85rem;padding:.95rem 1rem;border-radius:14px;border:1px solid #e8e6dc;box-shadow:0 1px 2px #1414130a;min-width:0;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}.course-detail-tab .stat-card:hover{border-color:#ddd9cc;box-shadow:0 4px 14px #1414130f}.course-detail-tab .stat-card.stat-blue,.course-detail-tab .stat-card.stat-emerald,.course-detail-tab .stat-card.stat-amber,.course-detail-tab .stat-card.stat-violet{background:#fff;border-color:#e8e6dc}.course-detail-tab .stat-card__text{min-width:0;flex:1}.course-detail-tab .stat-card h3{font-family:Playfair Display,Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:600;line-height:1.15;margin:0;letter-spacing:-.02em;color:#141413}.course-detail-tab .stat-card.stat-blue h3,.course-detail-tab .stat-card.stat-emerald h3,.course-detail-tab .stat-card.stat-amber h3,.course-detail-tab .stat-card.stat-violet h3{color:#141413}.course-detail-tab .stat-card p{margin:.28rem 0 0;font-size:.8125rem;font-weight:600;text-transform:none;letter-spacing:0;color:#5e5d59;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.course-detail-tab .stat-card__sub{display:block;margin:.2rem 0 0;font-size:.75rem;font-weight:500;line-height:1.4;color:#87867f;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.course-detail-tab .stat-icon-wrap{flex-shrink:0;width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;box-shadow:none}.course-detail-tab .stat-card.stat-blue .stat-icon-wrap{background:#eef2ff;border-color:#e0e7ff}.course-detail-tab .stat-card.stat-blue .stat-icon-wrap svg{color:#4f46e5}.course-detail-tab .stat-card.stat-emerald .stat-icon-wrap{background:#ecfdf5;border-color:#d1fae5}.course-detail-tab .stat-card.stat-emerald .stat-icon-wrap svg{color:#059669}.course-detail-tab .stat-card.stat-amber .stat-icon-wrap{background:#fff7ed;border-color:#ffedd5}.course-detail-tab .stat-card.stat-amber .stat-icon-wrap svg{color:#c2410c}.course-detail-tab .stat-card.stat-violet .stat-icon-wrap{background:#f5f3ff;border-color:#ede9fe}.course-detail-tab .stat-card.stat-violet .stat-icon-wrap svg{color:#7c3aed}.course-detail-tab .stat-icon-wrap svg{width:20px;height:20px;stroke-width:2}.course-detail-tab .cdt-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.1rem;padding:.75rem 1rem;background:#faf9f5;border:1px solid #f0eee6;border-radius:12px;box-shadow:0 0 0 1px #f0eee6cc}.course-detail-tab .cdt-toolbar--split{justify-content:space-between}.course-detail-tab .cdt-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;flex:1;min-width:0}.assessments-tab .cdt-assessment-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;flex:1 1 12rem;min-width:0}.assessments-tab .cdt-assessment-filters__bar{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .5rem;padding:.5rem .65rem .55rem;background:#f5f4ed;border:1px solid #e8e6dc;border-radius:11px;box-shadow:inset 0 1px #ffffff80;flex:1 1 auto;min-width:0}.assessments-tab .cdt-assessment-filters__icon{display:flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:9px;background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;flex-shrink:0;box-shadow:none}.assessments-tab .cdt-assessment-filters__fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem .75rem;flex:1 1 auto;min-width:0}.assessments-tab .cdt-assessment-filters__field{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:0 1 12rem}.assessments-tab .cdt-assessment-filters__label{font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#7a7770;line-height:1.2;white-space:nowrap}.module-layout-container .assessments-tab .cdt-select-inline,.assessments-tab .cdt-select-inline{width:auto!important;min-width:6.5rem;max-width:12rem;border:1.5px solid #e8e6dc;border-radius:9px;padding:.45rem .5rem;font-size:.86rem;color:#141413;background:#fff;font-weight:600;cursor:pointer;line-height:1.2;transition:border-color .15s ease,box-shadow .15s ease}.module-layout-container .assessments-tab .cdt-select-inline:hover,.assessments-tab .cdt-select-inline:hover{border-color:#d4c9bc}.module-layout-container .assessments-tab .cdt-select-inline:focus,.assessments-tab .cdt-select-inline:focus{outline:none;border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b838}.assessments-tab .cdt-assessment-filters__clear{flex-shrink:0;white-space:nowrap}@media(max-width:640px){.assessments-tab .cdt-assessment-filters__field{flex:1 1 45%}.module-layout-container .assessments-tab .cdt-select-inline,.assessments-tab .cdt-select-inline{max-width:none;width:100%!important}}.course-detail-tab .cdt-btn-primary,.module-layout-container .course-detail-tab .cdt-btn-primary{background:#c96442!important;color:#faf9f5!important;border:1px solid #c96442!important;box-shadow:0 0 0 1px #c9644240}.course-detail-tab .cdt-btn-primary:hover:not(:disabled),.module-layout-container .course-detail-tab .cdt-btn-primary:hover:not(:disabled){background:#b45435!important;border-color:#b45435!important;filter:brightness(1.02)}.module-layout-container .course-detail-tab .table-wrap{border-radius:12px;border:1px solid #f0eee6;overflow:hidden;background:#faf9f5;box-shadow:#0000000a 0 2px 16px}.module-layout-container .course-detail-tab .table thead th{background:#f5f4ed;color:#4d4c48;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;font-weight:700;border-bottom:1px solid #e8e6dc}.module-layout-container .course-detail-tab .table td{background:#fffcf7;border-color:#f0eee6}.module-layout-container .course-detail-tab .table tbody tr:hover td{background:#fff}.course-detail-tab .data-card,.module-layout-container .course-detail-tab .data-card{background:#faf9f5!important;border:1px solid #f0eee6!important;box-shadow:#0000000a 0 2px 16px!important;border-radius:14px!important;min-height:unset!important;height:auto!important}.module-layout-container .course-detail-tab .data-card:hover{border-color:#e8e6dc!important;box-shadow:#0000000f 0 6px 20px!important}.course-detail-tab .cdt-section-card{padding:1.25rem;border:1px solid #e8e6dc;border-radius:14px;background:#faf9f5;box-shadow:0 0 0 1px #f0eee699}.course-detail-tab .cdt-section-title{margin:0;font-size:1.1rem;font-weight:700;color:#141413;font-family:var(--f-heading)}.course-detail-tab .cdt-empty,.module-layout-container .course-detail-tab .cdt-empty{text-align:center;padding:2.5rem 1.5rem;background:#faf9f5;border:1px dashed #e8e6dc;border-radius:14px;color:#5e5d59}.course-detail-tab .cdt-empty svg{opacity:.55;color:#87867f}.course-detail-tab .cdt-loading{padding:2rem;text-align:center;color:#5e5d59;background:#faf9f5;border:1px solid #f0eee6;border-radius:12px}.course-detail-tab .cdt-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.cdt-reviews{display:flex;flex-direction:column;gap:2rem;width:100%;animation:fade-in-up .4s ease-out}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.cdt-reviews__summary{display:grid;grid-template-columns:minmax(0,180px) minmax(0,180px) 1fr;gap:1.25rem}@media(max-width:900px){.cdt-reviews__summary{grid-template-columns:1fr 1fr}.cdt-reviews__dist{grid-column:1 / -1}}.cdt-reviews__stat{background:#fff;padding:1.35rem 1rem;border-radius:14px;border:1px solid #e8e6dc;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 1px 2px #1414130a;transition:border-color .18s ease,box-shadow .18s ease}.cdt-reviews__stat:hover{border-color:#ddd9cc;box-shadow:0 4px 14px #1414130f}.cdt-reviews__stat--hero .cdt-reviews__value{color:#141413}.cdt-reviews__value{font-size:2.25rem;font-weight:600;line-height:1.15;color:#141413;font-family:Playfair Display,Georgia,Times New Roman,serif;letter-spacing:-.02em;margin-bottom:.35rem}.cdt-reviews__label{font-size:.8125rem;color:#5e5d59;font-weight:600;text-transform:none;letter-spacing:0}.cdt-reviews__stars{display:flex;gap:4px;margin-top:.75rem}.cdt-reviews__dist{background:#fff;padding:1.35rem 1.5rem;border-radius:14px;border:1px solid #e8e6dc;display:flex;flex-direction:column;justify-content:center;gap:.6rem;box-shadow:0 1px 2px #1414130a}.cdt-reviews__dist-row{display:flex;align-items:center;gap:1rem}.cdt-reviews__dist-label{width:3.5rem;font-size:.85rem;font-weight:700;color:#4d4c48}.cdt-reviews__dist-bar{flex:1;height:10px;background:#f0eee6;border-radius:99px;overflow:hidden;box-shadow:inset 0 1px 3px #0000000d}.cdt-reviews__dist-fill{height:100%;background:#e07b39;border-radius:99px;width:100%;transform-origin:left center;transition:transform .8s cubic-bezier(.22,1,.36,1)}.cdt-reviews__dist-count{width:2rem;font-size:.85rem;font-weight:600;color:#87867f;text-align:right}.cdt-reviews__toolbar{display:flex;justify-content:flex-end;margin-bottom:1rem}.cdt-reviews__filter{display:flex;align-items:center;gap:.5rem;background:#ffffffe6;padding:.6rem 1rem;border-radius:12px;border:1px solid #e8e6dc;color:#5e5d59;box-shadow:0 2px 8px #00000005;transition:all .2s ease}.cdt-reviews__filter:hover{border-color:#d4c9bc;box-shadow:0 4px 12px #0000000d}.cdt-reviews__filter select{border:none;outline:none;background:transparent;font-weight:700;color:#141413;font-size:.9rem;cursor:pointer;font-family:inherit}.cdt-reviews__list{display:flex;flex-direction:column;gap:1.25rem}.cdt-reviews__card{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid #f0eee6;padding:1.75rem 2rem;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease;box-shadow:0 4px 15px #00000005}.cdt-reviews__card:hover{transform:translateY(-3px);border-color:#e8e6dc;box-shadow:0 12px 30px #0000000f}.cdt-reviews__head{display:flex;gap:1.25rem;align-items:center;margin-bottom:1rem}.cdt-reviews__avatar{width:50px;height:50px;border-radius:16px;-o-object-fit:cover;object-fit:cover;flex-shrink:0;box-shadow:0 4px 10px #0000000d}.cdt-reviews__avatar-ph{background:linear-gradient(135deg,#fdf4f0,#f0eee6);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.2rem;color:#c96442}.cdt-reviews__name{margin:0;font-size:1.1rem;color:#141413;font-weight:800}.cdt-reviews__meta{display:flex;align-items:center;gap:.75rem;font-size:.85rem;color:#87867f;margin-top:.3rem}.cdt-reviews__comment{margin:0 0 1.25rem;color:#4d4c48;line-height:1.7;font-size:1.05rem}.cdt-reviews__reply{background:#fdfaf6;border-radius:0 16px 16px;padding:1.25rem 1.5rem;border:1px solid #f0eee6;border-left:2px solid #d1cfc5;position:relative;margin-left:1rem;margin-top:.5rem;box-shadow:0 4px 12px #c964420d}.cdt-reviews__reply:before{content:"";position:absolute;top:0;left:-1rem;width:1rem;height:1rem;background:radial-gradient(circle at 0% 100%,transparent 1rem,#fdfaf6 1rem)}.cdt-reviews__btn-reply{display:inline-flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #e8e6dc;padding:.6rem 1.25rem;border-radius:12px;font-size:.9rem;font-weight:700;color:#c96442;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #00000005}.cdt-reviews__btn-reply:hover{background:#c96442;color:#fff;border-color:#c96442;transform:translateY(-1px);box-shadow:0 4px 10px #c9644233}.cdt-reviews__editor-wrap{animation:expand-editor .3s cubic-bezier(.22,1,.36,1);transform-origin:top}@keyframes expand-editor{0%{opacity:0;transform:scaleY(.9)}to{opacity:1;transform:scaleY(1)}}.cdt-reviews__ta{width:100%;min-height:120px;background:#fff;border:2px solid #e8e6dc;border-radius:14px;padding:1rem;font-size:.95rem;margin-bottom:.75rem;font-family:inherit;resize:vertical;transition:all .2s ease;color:#141413;box-shadow:inset 0 2px 4px #00000005}.cdt-reviews__ta:focus{outline:none;border-color:#c96442;box-shadow:0 0 0 4px #c9644226,inset 0 2px 4px #00000005}.cdt-reviews__actions{display:flex;justify-content:flex-end;gap:.75rem}.cdt-reviews__btn-ghost{background:none;border:none;color:#87867f;font-weight:700;font-size:.9rem;cursor:pointer;padding:.5rem 1rem;border-radius:10px;transition:background .2s;display:inline-flex;align-items:center;gap:.4rem}.cdt-reviews__btn-ghost:hover{background:#0000000a;color:#4d4c48}.cdt-reviews__btn-save{background:linear-gradient(135deg,#c96442,#b45435);color:#faf9f5;border:none;padding:.6rem 1.5rem;border-radius:10px;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #c964424d}.cdt-reviews__btn-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 15px #c9644266}.cdt-reviews__btn-save:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(100%);box-shadow:none}.cdt-reviews__reply-badge{display:inline-block;background:#fdf4f0;color:#c96442;font-size:.7rem;font-weight:800;padding:.25rem .6rem;border-radius:6px;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 8px #c964421a}.cdt-reviews__reply-text{margin:.5rem 0 1rem;color:#5e5d59;font-size:.95rem;line-height:1.6;font-style:italic}.cdt-reviews__empty{text-align:center;padding:4rem 2rem;color:#87867f;background:#fff9;border-radius:20px;border:2px dashed #e8e6dc;display:flex;flex-direction:column;align-items:center;gap:1rem}.cdt-reviews__empty svg{color:#d4c9bc;filter:drop-shadow(0 4px 6px rgba(0,0,0,.05))}.cdt-reviews__empty p{margin:0;font-size:1.1rem;font-weight:500}@media(max-width:640px){.course-detail-tab .stats-grid{grid-template-columns:1fr}}.slt-container{display:flex;flex-direction:column;gap:1.5rem;animation:fade-in-up .4s ease-out}.slt-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media(max-width:768px){.slt-stats-grid{grid-template-columns:1fr}}.slt-stat-card{background:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:1.25rem 1.5rem;border-radius:18px;border:1px solid rgba(240,238,230,.8);display:flex;align-items:center;gap:1.25rem;box-shadow:0 4px 20px #00000008;transition:transform .2s ease,box-shadow .2s ease}.slt-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000000f}.slt-stat-icon{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 10px #0000000d}.slt-stat-blue .slt-stat-icon{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0284c7}.slt-stat-emerald .slt-stat-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.slt-stat-content{display:flex;flex-direction:column}.slt-stat-content h3{font-size:2rem;font-weight:900;margin:0 0 .1rem;color:#141413;line-height:1.1;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.slt-stat-content p{margin:0;font-size:.85rem;font-weight:700;color:#5e5d59;text-transform:uppercase;letter-spacing:.05em}.slt-empty{text-align:center;padding:4rem 2rem;color:#87867f;background:#fff9;border-radius:20px;border:2px dashed #e8e6dc;display:flex;flex-direction:column;align-items:center;gap:1rem}.slt-player-container{display:grid;grid-template-columns:1fr 360px;gap:1.5rem;align-items:start}@media(max-width:1024px){.slt-player-container{grid-template-columns:1fr}}.slt-player-main{display:flex;flex-direction:column;gap:1.5rem}.slt-player-sidebar{background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #f0eee6;border-radius:20px;overflow:hidden;box-shadow:0 4px 20px #00000008;max-height:calc(100vh - 120px);display:flex;flex-direction:column}.slt-sidebar-header{padding:1.25rem 1.5rem;background:linear-gradient(to right,#fdfaf6,#fff);border-bottom:1px solid #e8e6dc}.slt-sidebar-header h4{margin:0 0 .25rem;font-size:1.1rem;font-weight:800;color:#141413}.slt-sidebar-content{overflow-y:auto;flex:1}.slt-curriculum-card{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid #f0eee6;box-shadow:0 4px 15px #00000005;overflow:hidden}.slt-curriculum-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e8eef8;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(to right,#f8fafc,#fff)}.slt-section-header{padding:1rem 1.25rem;background:#fdfaf6;border-bottom:1px solid #f0eee6;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s ease}.slt-section-header:hover{background:#fdf4f0}.slt-section-title-area{display:flex;align-items:center;gap:.75rem;flex:1}.slt-section-label{font-size:.85rem;font-weight:700;color:#c96442;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.slt-section-title-wrapper{display:flex;flex-direction:column;gap:.15rem;min-width:0}.slt-section-title{font-size:1.05rem;font-weight:800;color:#141413;line-height:1.3}.slt-section-description{font-size:.88rem;color:#87867f;margin:0;font-weight:500;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.slt-section-meta{font-size:.85rem;color:#87867f;font-weight:600}.slt-lessons-group{transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.slt-lessons-group.collapsed{height:0;opacity:0}.slt-lesson-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid #f0eee6;cursor:pointer;transition:all .2s ease;background:#fff;border-left:4px solid transparent}.slt-lesson-item:hover{background:#faf9f5}.slt-lesson-item.completed{background:#ecfdf5;border-left-color:#10b981}.slt-lesson-item.in-progress{background:#fffbeb;border-left-color:#f59e0b}.slt-lesson-item.playing{background:#eff6ff;border-left-color:#3b82f6}.slt-lesson-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.slt-lesson-item.completed .slt-lesson-icon{background:#d1fae5;color:#059669}.slt-lesson-item.in-progress .slt-lesson-icon{background:#fef3c7;color:#d97706}.slt-lesson-item.playing .slt-lesson-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 10px #3b82f64d}.slt-lesson-item.default .slt-lesson-icon{background:#f1f5f9;color:#64748b}.slt-lesson-content{flex:1;min-width:0}.slt-lesson-title-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.slt-lesson-title{font-size:.95rem;font-weight:700;color:#141413;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slt-lesson-item.completed .slt-lesson-title{color:#065f46}.slt-lesson-item.playing .slt-lesson-title{color:#1e40af}.slt-lesson-item.in-progress .slt-lesson-title{color:#92400e}.slt-lesson-badge{font-size:.65rem;padding:.15rem .4rem;border-radius:6px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.slt-lesson-badge.completed{background:#d1fae5;color:#065f46}.slt-lesson-badge.progress{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.slt-lesson-subtitle{font-size:.85rem;color:#64748b;margin-top:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slt-lesson-meta{display:flex;gap:1rem;align-items:center;margin-top:.5rem}.slt-lesson-meta-item{font-size:.8rem;color:#64748b;display:flex;align-items:center;gap:.35rem;font-weight:600}.slt-materials-toggle{color:#3b82f6;font-weight:700;cursor:pointer;transition:color .2s ease}.slt-materials-toggle:hover{color:#2563eb}.slt-materials-drawer{padding:.75rem 1.25rem 1.25rem 4rem;background:#f8fafc;border-bottom:1px solid #f0eee6}.slt-material-btn{display:flex;align-items:center;gap:.75rem;padding:.6rem .85rem;border-radius:10px;border:1px solid #e2e8f0;background:#fff;width:100%;text-align:left;cursor:pointer;transition:all .2s ease;margin-bottom:.5rem}.slt-material-btn:last-child{margin-bottom:0}.slt-material-btn:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 12px #00000008}.slt-material-name{font-size:.85rem;font-weight:700;color:#334155;flex:1}.slt-material-size{font-size:.75rem;color:#94a3b8;font-weight:600}.slt-resources-card{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:1.5rem;border:1px solid #f0eee6;box-shadow:0 4px 15px #00000005}.slt-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:12px;font-size:.95rem;font-weight:700;border:none;cursor:pointer;transition:all .2s ease}.slt-btn.secondary{background:#fff;color:#3b82f6;border:2px solid #bfdbfe}.slt-btn.secondary:hover{background:#eff6ff;border-color:#93c5fd}.slt-btn-small{padding:.4rem .85rem;font-size:.85rem;border-radius:8px;background:#f1f5f9;color:#475569;font-weight:700;border:1px solid #e2e8f0;cursor:pointer;transition:all .2s ease}.slt-btn-small:hover{background:#e2e8f0;color:#1e293b}.slt-sidebar-override .slt-section-header{padding:.75rem 1rem}.slt-sidebar-override .slt-section-label{font-size:.75rem}.slt-sidebar-override .slt-section-title{font-size:.9rem}.slt-sidebar-override .slt-lesson-item{padding:.75rem 1rem}.slt-sidebar-override .slt-lesson-title{font-size:.85rem}.slt-sidebar-override .slt-lesson-subtitle{font-size:.75rem}.spt-root{display:flex;flex-direction:column;gap:.75rem;width:100%;min-width:0;animation:spt-fade-in .35s ease-out}@keyframes spt-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.spt-card{border-radius:14px;border:1px solid #e8e6dc;background:#fff;padding:1rem 1.1rem;box-shadow:0 1px 3px #1414130f}.spt-card-title{margin:0 0 .85rem;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);font-size:.9375rem;font-weight:700;color:#141413;letter-spacing:-.02em}.spt-progress-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.65rem}.spt-pct-wrap{display:flex;align-items:baseline;gap:.35rem}.spt-pct{font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);font-size:2rem;font-weight:800;line-height:1;color:#3730a3;font-variant-numeric:tabular-nums}.spt-pct-label{font-size:.8125rem;font-weight:600;color:#87867f}.spt-fraction{font-size:.8125rem;font-weight:600;color:#5e5d59;font-variant-numeric:tabular-nums}.spt-bar-track{height:10px;border-radius:999px;background:#f5f4ed;overflow:hidden;border:1px solid #ede9df}.spt-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#c96442,#d97757);width:100%;transform-origin:left;transform:scaleX(0);transition:transform .65s cubic-bezier(.22,1,.36,1)}.spt-rows{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #f0eee6;display:flex;flex-direction:column;gap:0}.spt-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem 0;border-bottom:1px solid #f5f4ed;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.spt-row:last-child{border-bottom:none;padding-bottom:0}.spt-row-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.8125rem;font-weight:500;color:#87867f}.spt-row-value{font-size:.8125rem;font-weight:700;color:#141413;text-align:right}@media(max-width:480px){.spt-row{flex-direction:column;align-items:flex-start}.spt-row-value{text-align:left}}.spt-next{border-radius:14px;border:1px solid #e8e6dc;background:linear-gradient(165deg,#faf9ff,#fff 45%);padding:.85rem 1rem;box-shadow:0 1px 3px #1414130d}.spt-next-head{display:flex;align-items:center;gap:.45rem;margin-bottom:.45rem}.spt-next-head svg{color:#4338ca;flex-shrink:0}.spt-next-title{margin:0;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#4338ca;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.spt-next-lesson{margin:0 0 .35rem;font-size:.9375rem;font-weight:700;color:#141413;line-height:1.35;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.spt-next-meta{margin:0;font-size:.75rem;font-weight:500;color:#87867f;display:inline-flex;align-items:center;gap:.35rem}.spt-recent-title{display:flex;align-items:center;gap:.4rem;margin:0 0 .65rem;font-size:.9375rem;font-weight:700;color:#141413;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.spt-recent-title svg{color:#4338ca}.spt-recent-list{display:flex;flex-direction:column;gap:.45rem}.spt-recent-item{display:flex;align-items:flex-start;gap:.55rem;padding:.55rem .65rem;border-radius:10px;border:1px solid #e8e6dc;background:#fffefb}.spt-recent-icon{width:28px;height:28px;border-radius:8px;background:#ecfdf5;color:#059669;display:flex;align-items:center;justify-content:center;flex-shrink:0}.spt-recent-text{min-width:0;flex:1}.spt-recent-name{font-size:.8125rem;font-weight:600;color:#141413;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}@media(max-width:480px){.spt-recent-name{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.spt-recent-date{font-size:.6875rem;font-weight:500;color:#87867f;margin-top:.15rem}.spt-complete{border-radius:14px;border:1px solid rgba(5,150,105,.35);background:linear-gradient(165deg,#f0fdf4,#fff 50%);padding:1.1rem 1.15rem;text-align:center}.spt-complete-icon{width:48px;height:48px;margin:0 auto .6rem;border-radius:14px;background:#d1fae5;color:#047857;display:flex;align-items:center;justify-content:center}.spt-complete h3{margin:0 0 .35rem;font-size:1.0625rem;font-weight:800;color:#065f46;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.spt-complete p{margin:0;font-size:.8125rem;font-weight:500;color:#047857;line-height:1.45;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.spt-empty{text-align:center;padding:2rem 1rem;border-radius:14px;border:1px dashed #e8e6dc;background:#fffefb;color:#87867f;font-size:.875rem;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.srt-container{display:flex;flex-direction:column;gap:.75rem;width:100%;min-width:0;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.srt-card{background:#fff;border:1px solid #e8e6dc;border-radius:14px;padding:1rem 1.1rem;box-shadow:0 1px 3px #1414130f}.srt-loading-container{padding:2.5rem 1rem;text-align:center;color:#87867f;display:flex;flex-direction:column;align-items:center;gap:.75rem;border-radius:14px;border:1px dashed #e8e6dc;background:#fffefb;font-size:.875rem}.srt-loading-spinner{width:32px;height:32px;border:3px solid #f5f4ed;border-radius:50%;border-top-color:#4338ca;animation:srt-spin .85s linear infinite}@keyframes srt-spin{to{transform:rotate(360deg)}}.srt-summary-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:1rem 1.25rem;align-items:start}@media(max-width:768px){.srt-summary-header{grid-template-columns:1fr}}.srt-summary-left{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.35rem 0}.srt-avg-box{width:100%}.srt-avg-num{font-size:2.35rem;font-weight:800;color:#3730a3;line-height:1;font-variant-numeric:tabular-nums}.srt-stars-row{display:flex;gap:3px;justify-content:center;margin:.5rem 0 .35rem}.srt-total-label{font-weight:500;color:#87867f;font-size:.8125rem;line-height:1.4}.srt-stats-histogram{display:flex;flex-direction:column;gap:.45rem}.srt-stat-row{display:flex;align-items:center;gap:.65rem;padding:.35rem .45rem;border-radius:10px;cursor:pointer;border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.srt-stat-row:hover{background:#faf9f5}.srt-stat-row:focus-visible{outline:2px solid #4338ca;outline-offset:2px}.srt-stat-row.active{background:#f5f3ff;border-color:#4338ca47}.srt-progress-bar-wrap{flex:1;height:8px;background:#f5f4ed;border-radius:999px;overflow:hidden;border:1px solid #ede9df}.srt-progress-fill{height:100%;background:linear-gradient(90deg,#3730a3,#6366f1);border-radius:999px;width:100%;transform-origin:left;transition:transform .55s cubic-bezier(.22,1,.36,1)}.srt-stat-meta{display:flex;align-items:center;gap:.65rem;min-width:118px;flex-shrink:0}.srt-stars-mini{display:flex;gap:1px}.srt-percent-label{font-size:.75rem;font-weight:700;color:#5e5d59;width:36px;text-align:right;font-variant-numeric:tabular-nums}.srt-review-input-section{margin:0}.srt-write-card{padding-top:1rem}.srt-card-header{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem}.srt-card-header h3{margin:0;font-size:.9375rem;font-weight:700;color:#141413}.srt-icon-accent{color:#4338ca;flex-shrink:0}.srt-alert-error{margin-bottom:1rem;padding:.55rem .65rem;border-radius:10px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;font-size:.8125rem;font-weight:600;display:flex;align-items:flex-start;gap:.45rem}.srt-alert-error svg{flex-shrink:0;margin-top:2px}.srt-rating-selector{margin-bottom:1rem}.srt-rating-selector>p{font-weight:600;color:#5e5d59;margin:0 0 .5rem;font-size:.8125rem}.srt-star-group{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}.srt-star-btn{background:none;border:none;padding:4px;cursor:pointer;color:#e8e6dc;border-radius:8px;transition:color .15s ease,background .15s ease}.srt-star-btn:focus-visible{outline:2px solid #4338ca;outline-offset:2px}.srt-star-btn:hover{background:#faf9f5}.srt-star-btn.active{color:#f59e0b}.srt-rating-label{margin-left:.5rem;font-weight:700;color:#4338ca;font-size:.75rem;background:#f5f3ff;padding:.25rem .55rem;border-radius:999px;border:1px solid rgba(67,56,202,.18)}.srt-comment-input textarea{width:100%;box-sizing:border-box;border:1px solid #e8e6dc;border-radius:12px;padding:.75rem .85rem;font-size:.875rem;font-family:inherit;min-height:100px;resize:vertical;background:#fffefb;color:#141413;transition:border-color .15s ease,box-shadow .15s ease}.srt-comment-input textarea:focus{outline:none;border-color:#a5b4fc;box-shadow:0 0 0 3px #4338ca1f;background:#fff}.srt-comment-input textarea::-moz-placeholder{color:#a8a5a0}.srt-comment-input textarea::placeholder{color:#a8a5a0}.srt-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;margin-top:1rem;flex-wrap:wrap}.srt-btn-text{background:none;border:none;color:#87867f;font-weight:600;cursor:pointer;padding:.45rem .75rem;border-radius:10px;font-size:.8125rem;font-family:inherit}.srt-btn-text:hover{background:#f5f4ed;color:#141413}.srt-btn-premium{background:linear-gradient(135deg,#3730a3,#4f46e5);color:#fff;border:none;border-radius:10px;padding:.45rem 1.15rem;font-size:.8125rem;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;box-shadow:0 2px 8px #4338ca38;font-family:inherit}.srt-btn-premium:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 4px 12px #4338ca42}.srt-btn-premium:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.2)}.srt-my-review-card .srt-card-header{justify-content:space-between}.srt-user-meta{display:flex;align-items:center;gap:.65rem;min-width:0}.srt-avatar-mini{width:38px;height:38px;border-radius:10px;background:#f5f3ff;color:#4338ca;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid rgba(67,56,202,.15)}.srt-my-review-card .srt-card-header h3{font-size:.9375rem}.srt-date-sub{font-size:.6875rem;color:#87867f;font-weight:500}.srt-actions{display:flex;gap:.35rem}.srt-action-btn{background:#fffefb;border:1px solid #e8e6dc;color:#5e5d59;width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.srt-action-btn:hover{background:#faf9f5;border-color:#ddd9cc;color:#141413}.srt-action-btn.danger:hover{color:#dc2626;border-color:#fecaca;background:#fef2f2}.srt-review-body{margin-top:.65rem}.srt-stars-static{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:.45rem}.srt-comment-text{color:#5e5d59;line-height:1.55;font-size:.875rem;margin:0;white-space:pre-wrap}.srt-other-reviews{display:flex;flex-direction:column;gap:.65rem}.srt-section-header-row{display:flex;justify-content:space-between;align-items:center;gap:.65rem;flex-wrap:wrap}.srt-flex-title{display:flex;align-items:center;gap:.5rem;min-width:0}.srt-title-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.srt-flex-title .title-icon{color:#4338ca;flex-shrink:0}.srt-flex-title h3{margin:0;font-size:.9375rem;font-weight:700;color:#141413}.srt-active-filter-badge{background:#f5f3ff;color:#4338ca;padding:.25rem .45rem;border-radius:999px;font-size:.6875rem;font-weight:700;display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(67,56,202,.22)}.srt-active-filter-badge button{background:#4338ca1f;border:none;cursor:pointer;color:#4338ca;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;padding:0}.srt-active-filter-badge button:hover{background:#4338ca38}.srt-filter-controls{display:flex;align-items:center;gap:.35rem;background:#fffefb;padding:.35rem .55rem;border-radius:10px;border:1px solid #e8e6dc;color:#87867f}.srt-filter-controls select{background:none;border:none;font-weight:600;color:#141413;outline:none;font-size:.8125rem;cursor:pointer;font-family:inherit;max-width:160px}.srt-empty-reviews{text-align:center;padding:2rem 1.25rem;background:#fffefb;border-radius:14px;border:1px dashed #e8e6dc}.srt-empty-icon-wrap{width:52px;height:52px;border-radius:14px;background:#f5f4ed;display:flex;align-items:center;justify-content:center;margin:0 auto .65rem;color:#a8a5a0}.srt-empty-reviews p{margin:0;color:#87867f;font-size:.875rem;font-weight:500}.srt-review-list{display:flex;flex-direction:column;gap:.65rem}.srt-review-item{padding:.85rem 1rem!important}.srt-review-user-info{display:flex;gap:.65rem;margin-bottom:.55rem}.srt-user-avatar-wrap{flex-shrink:0}.srt-user-avatar{width:40px;height:40px;border-radius:10px;-o-object-fit:cover;object-fit:cover;background:#f5f4ed;display:flex;align-items:center;justify-content:center;font-weight:700;color:#4338ca;font-size:.9375rem;border:1px solid #e8e6dc}.srt-user-text-meta{min-width:0;flex:1}.srt-user-text-meta h4{margin:0 0 4px;font-size:.875rem;font-weight:700;color:#141413;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.srt-review-date-mini{font-size:.6875rem;color:#87867f;margin-left:.45rem;font-weight:500}.srt-review-content{padding-left:calc(40px + .65rem)}@media(max-width:480px){.srt-review-content{padding-left:0}}.srt-review-body-text{color:#5e5d59;line-height:1.55;font-size:.8125rem;margin:0;white-space:pre-wrap}.srt-instructor-reply-box{margin-top:.65rem;padding:.65rem .75rem;background:#faf9f5;border-radius:12px;border:1px solid #e8e6dc}.srt-reply-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.4rem}.srt-badge-instructor{background:#4338ca;color:#fff;padding:.15rem .45rem;border-radius:6px;font-size:.625rem;font-weight:800;letter-spacing:.06em}.srt-reply-date{font-size:.6875rem;color:#87867f;font-weight:500}.srt-reply-text{margin:0;color:#5e5d59;line-height:1.5;font-size:.8125rem}@media(max-width:768px){.srt-form-actions{flex-direction:column;align-items:stretch}.srt-btn-premium{justify-content:center}}@keyframes course-overview-fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.course-overview-tab{display:flex;flex-direction:column;gap:1.5rem;width:100%;min-width:0;box-sizing:border-box;animation:course-overview-fade-in-up .4s cubic-bezier(.16,1,.3,1)}.course-overview-tab .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.course-overview-tab .stat-card{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.1rem;border-radius:14px;background:#fff;border:1px solid #e8e6dc;box-shadow:0 1px 2px #1414130a;min-width:0;transition:border-color .18s ease,box-shadow .18s ease}.course-overview-tab .stat-card:hover{border-color:#ddd9cc;box-shadow:0 4px 14px #1414130f}.course-overview-tab .stat-card__text{min-width:0;flex:1}.course-overview-tab .stat-card h3{font-family:Playfair Display,Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:600;line-height:1.15;margin:0;letter-spacing:-.02em;color:#141413}.course-overview-tab .stat-card p{margin:.35rem 0 0;font-size:.8125rem;font-weight:600;letter-spacing:0;text-transform:none;color:#5e5d59;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif)}.course-overview-tab .stat-card__sub{display:block;margin:.2rem 0 0;font-size:.75rem;font-weight:500;line-height:1.4;color:#87867f}.course-overview-tab .stat-icon-wrap{flex-shrink:0;width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;border:1px solid transparent}.course-overview-tab .stat-card.stat-blue .stat-icon-wrap{background:#eef2ff;border-color:#e0e7ff}.course-overview-tab .stat-card.stat-blue .stat-icon-wrap svg{color:#4f46e5}.course-overview-tab .stat-card.stat-emerald .stat-icon-wrap{background:#ecfdf5;border-color:#d1fae5}.course-overview-tab .stat-card.stat-emerald .stat-icon-wrap svg{color:#059669}.course-overview-tab .stat-card.stat-amber .stat-icon-wrap{background:#fff7ed;border-color:#ffedd5}.course-overview-tab .stat-card.stat-amber .stat-icon-wrap svg{color:#c2410c}.course-overview-tab .stat-card.stat-violet .stat-icon-wrap{background:#f5f3ff;border-color:#ede9fe}.course-overview-tab .stat-card.stat-violet .stat-icon-wrap svg{color:#7c3aed}.course-overview-tab .stat-icon-wrap svg{width:20px;height:20px;stroke-width:2}.course-overview-banner{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;border-radius:16px;background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-left:5px solid transparent}.course-overview-banner.ministry{border-left-color:#3b82f6;background:linear-gradient(to right,#eff6ffe6,#ffffffe6);box-shadow:0 4px 12px #3b82f614,0 0 0 1px #e2e8f080}.course-overview-banner.custom{border-left-color:#eab308;background:linear-gradient(to right,#fefce8e6,#ffffffe6);box-shadow:0 4px 12px #eab30814,0 0 0 1px #e2e8f080}.course-overview-banner__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.course-overview-banner.ministry .course-overview-banner__icon{background:#dbeafe;color:#1e40af}.course-overview-banner.custom .course-overview-banner__icon{background:#fef08a;color:#854d0e}.course-overview-banner__content h4{margin:0 0 .25rem;font-size:1.05rem;font-weight:800;color:#0f172a}.course-overview-banner__content p{margin:0;font-size:.9rem;color:#475569;line-height:1.5}.course-overview-tab__config{overflow:hidden;border-radius:20px;background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.6);box-shadow:0 8px 32px -4px #0f172a0f;box-sizing:border-box}.course-overview-tab__config-head{padding:1.5rem 1.75rem;border-bottom:1px solid rgba(226,232,240,.8);background:#f8fafc80}.course-overview-tab__kicker{margin:0 0 .4rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#3b82f6}.course-overview-config-heading{font-size:1.45rem;font-weight:800;color:#0f172a;margin:0}.course-overview-tab__lede{margin:.5rem 0 0;font-size:.95rem;color:#64748b;max-width:42rem}.course-overview-tab__config-body{padding:1.5rem 1.75rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem 2rem}.course-overview-tab__row{display:flex;flex-direction:column;gap:.4rem;padding:1rem 1.25rem;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;transition:all .2s ease}.course-overview-tab__row:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 8px #0f172a0a}.course-overview-tab__row-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:#64748b}.course-overview-tab__row-label svg{width:1.1rem;height:1.1rem;color:#94a3b8}.course-overview-tab__row-value{font-size:1rem;color:#0f172a;font-weight:500;word-break:break-word}.course-overview-tab__row-value strong{font-weight:700;color:#1e293b}.course-overview-tab__panel{overflow:hidden;border-radius:20px;background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.6);box-shadow:0 8px 32px -4px #0f172a0f}.course-overview-tab__panel-head{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(226,232,240,.8);background:#f8fafc80}.course-overview-tab__panel-title{margin:0;font-size:1.25rem;font-weight:800;color:#0f172a}.course-overview-tab__panel-mute{margin:.25rem 0 0;font-size:.85rem;color:#64748b}.course-overview-tab__panel-body{padding:1.5rem}.course-overview-tab__body-serif{margin:0;font-size:1rem;line-height:1.7;color:#334155;white-space:pre-wrap}.cat-container{display:flex;flex-direction:column;gap:1.5rem;width:100%;animation:fade-in-up .4s ease-out}.cat-modal-layer{position:fixed;inset:0;background:#14141380;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.cat-modal-card{background:#fff;border-radius:20px;width:min(800px,100%);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026;overflow:hidden;animation:modal-pop .3s cubic-bezier(.22,1,.36,1)}@keyframes modal-pop{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.cat-modal-header{padding:1.5rem 2rem;border-bottom:1px solid #f0eee6;display:flex;justify-content:space-between;align-items:flex-start;background:#faf9f5}.cat-modal-header h3{margin:0 0 .5rem;font-size:1.4rem;font-weight:800;color:#141413}.cat-modal-body{padding:1.5rem 2rem;overflow-y:auto;flex:1}.cat-modal-footer{padding:1.25rem 2rem;border-top:1px solid #f0eee6;display:flex;justify-content:flex-end;gap:1rem;background:#faf9f5}.cat-search-box{position:relative;display:flex;align-items:center;margin-bottom:1.25rem}.cat-search-box input{width:100%;padding:1rem 1rem 1rem 2.75rem;border:2px solid #e8e6dc;border-radius:12px;font-size:1rem;transition:all .2s ease;background:#faf9f5;color:#141413}.cat-search-box input:focus{outline:none;border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b838;background:#fff}.cat-search-icon{position:absolute;left:1rem;color:#87867f}.cat-select-card{border:2px solid #f0eee6;border-radius:14px;padding:1.25rem;cursor:pointer;background:#fff;transition:all .2s ease}.cat-select-card:hover{border-color:#e8e6dc;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.cat-select-card.selected{border-color:#a5b4fc;background:#f8fafc;box-shadow:0 0 0 1px #a5b4fc59}.cat-list-card{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid #f0eee6;padding:1.75rem;display:flex;gap:1.25rem;transition:all .25s ease;box-shadow:0 4px 15px #00000005}.cat-list-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0000000f;border-color:#e8e6dc}.cat-drag-handle{color:#d4c9bc;cursor:grab;padding-top:.25rem}.cat-drag-handle:active{cursor:grabbing}.cat-actions{opacity:.6;transition:opacity .2s}.cat-list-card:hover .cat-actions{opacity:1}.cat-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.25rem;border-radius:10px;font-size:.9rem;font-weight:700;border:none;cursor:pointer;transition:all .2s ease}.cat-btn.primary{background:#64748b;color:#f8fafc;border:1px solid #64748b;box-shadow:0 1px 2px #0f172a0f}.cat-btn.primary:hover:not(:disabled){transform:translateY(-1px);background:#475569;border-color:#475569;box-shadow:0 4px 14px #47556938}.cat-btn.primary:disabled{background:#e8e6dc;border-color:#e8e6dc;color:#87867f;box-shadow:none;cursor:not-allowed}.cat-btn.secondary{background:#fff;color:#475569;border:1.5px solid #e2e8f0}.cat-btn.secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#334155}.cat-btn.secondary:disabled{opacity:.6;cursor:not-allowed}.cat-btn.danger{background:#fff;color:#dc2626;border:2px solid #fecaca}.cat-btn.danger:hover:not(:disabled){background:#fef2f2;border-color:#dc2626}.cat-btn.danger:disabled{opacity:.6;cursor:not-allowed}.cat-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .75rem;border-radius:99px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 6px #0000000a}.cat-badge.formative{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0284c7}.cat-badge.summative{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#b91c1c}.cat-badge.required{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#b45309}.cat-badge.published{background:#d1fae5;color:#059669}.cat-badge.draft{background:#f1f5f9;color:#64748b}.cat-badge.closed{background:#fee2e2;color:#dc2626}.cat-badge.warning{background:#fee2e2;color:#b91c1c}.clt-modal-layer{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:1.5rem;box-sizing:border-box;background:#0f172a66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:clt-fade-in .3s cubic-bezier(.16,1,.3,1)}.clt-modal-card{width:min(680px,100%);max-height:min(90vh,800px);display:flex;flex-direction:column;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.8);border-radius:24px;box-shadow:0 24px 64px -12px #0f172a33,0 0 0 1px #e2e8f080;overflow:hidden;animation:clt-slide-up .4s cubic-bezier(.16,1,.3,1)}.clt-modal-card--sm{width:min(460px,100%);max-height:min(85vh,560px)}@keyframes clt-fade-in{0%{opacity:0}to{opacity:1}}@keyframes clt-slide-up{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.clt-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.5rem 1.75rem .5rem;flex-shrink:0}.clt-modal-header h3{margin:0 0 .4rem;font-family:var(--f-body, "Be Vietnam Pro", system-ui, sans-serif);font-size:1.35rem;font-weight:800;color:#0f172a;letter-spacing:-.01em}.clt-modal-header p{margin:0;font-size:.9rem;color:#64748b;line-height:1.5}.clt-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;border-radius:12px;background:#f1f5f9;color:#475569;cursor:pointer;flex-shrink:0;transition:all .2s ease}.clt-icon-btn:hover:not(:disabled){background:#e2e8f0;color:#0f172a}.clt-modal-body{padding:1rem 1.75rem 1.5rem;overflow-y:auto;flex:1 1 auto;min-height:0}.clt-form-label{display:block;font-size:.85rem;font-weight:700;color:#334155;margin-bottom:.5rem}.clt-req{color:#ef4444}.clt-input,.clt-select,.clt-textarea{width:100%;box-sizing:border-box;font:inherit;font-size:.95rem;color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:.75rem 1rem;transition:all .2s ease}.clt-textarea{min-height:4rem;resize:vertical}.clt-input:focus,.clt-select:focus,.clt-textarea:focus{outline:none;background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.clt-form-field{display:block;margin-bottom:1.25rem}.clt-form-field:last-child{margin-bottom:0}.clt-dropzone{position:relative;border:2px dashed #cbd5e1;border-radius:16px;padding:2rem 1.5rem;text-align:center;background:#f8fafc;cursor:pointer;transition:all .2s ease}.clt-dropzone:hover{border-color:#94a3b8;background:#f1f5f9}.clt-dropzone__file{color:#1e40af;font-weight:700;margin-bottom:.35rem;font-size:1.05rem}.clt-progress{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:.5rem}.clt-progress__bar{height:100%;width:100%;border-radius:999px;transform-origin:left;background:linear-gradient(90deg,#3b82f6,#60a5fa);transition:transform .25s ease}.clt-err{color:#ef4444;font-size:.9rem;font-weight:600;margin:.75rem 0 0;padding:.75rem;background:#fef2f2;border-radius:8px;border:1px solid #fee2e2}.clt-modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;padding:1.25rem 1.75rem;border-top:1px solid #f1f5f9;background:#f8fafc;flex-shrink:0}.clt-muted{color:#87867f;font-size:.85rem}.clt-provider-banner{margin-bottom:1.5rem;padding:1rem 1.25rem;border-radius:12px;display:flex;align-items:center;gap:1rem}.clt-provider-banner.ministry{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.clt-provider-banner.custom{background:#fefce8;border:1px solid #fde047;color:#854d0e}.clt-curriculum-container{display:flex;flex-direction:column;gap:1rem}.clt-list-card{background:#fff;border:1px solid #e8e6dc;border-radius:12px;padding:.75rem 1rem;display:flex;align-items:center;gap:1rem;transition:all .2s ease;box-shadow:0 1px 3px #00000005}.clt-list-card.is-dragging{box-shadow:0 12px 24px #0000001a;border-color:#c96442;opacity:.9;z-index:10}.clt-list-card:hover{border-color:#d1cfc5;box-shadow:0 0 0 1px #d1cfc5}.curriculum-group .lessons-group .lessons-inner>div{margin-bottom:0!important}.curriculum-group .lessons-group .clt-list-card{border-radius:0;border-left:none;border-right:none;border-top:none;border-bottom:1px solid #f0eee6;background:#faf9f5;box-shadow:none;align-items:flex-start}.curriculum-group .lessons-group .clt-list-card>div:first-child{margin-top:.2rem}.clt-sidebar-lesson-row>div:first-child{margin-top:.2rem;flex-shrink:0}.curriculum-group .lessons-group .lessons-inner>div:last-child .clt-list-card{border-bottom:none}.curriculum-group .lessons-group .clt-list-card:hover{background:#f5f4ed;border-color:#f0eee6;box-shadow:none}.clt-drag-handle{color:#94a3b8;cursor:grab;padding:.25rem;border-radius:6px;display:flex;align-items:center;justify-content:center}.clt-drag-handle:active{cursor:grabbing}.clt-drag-handle:hover{background:#f1f5f9;color:#475569}.clt-lesson-info{flex:1;min-width:0}.clt-lesson-title{font-size:.95rem;font-weight:700;color:#0f172a;margin-bottom:.2rem;display:block;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.clt-lesson-subtitle{font-size:.8rem;color:#87867f;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.clt-actions{display:flex;gap:.5rem;opacity:1;transition:opacity .2s ease}.clt-action-btn{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:6px;border:none;background:transparent;color:#5e5d59;cursor:pointer;transition:all .2s ease}.clt-action-btn:hover{background:#f0eee6;color:#141413}.clt-action-btn.danger:hover{background:#fef2f2;color:#ef4444}.clt-section-title-area.section-title-area{display:flex;align-items:flex-start;gap:.65rem;flex:1;min-width:0}.clt-section-chevron{flex-shrink:0;color:#87867f;margin-top:.28rem}.clt-section-heading-stack{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:1}.clt-section-heading-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;-moz-column-gap:.65rem;column-gap:.65rem;row-gap:.35rem;min-width:0}.clt-section-heading-row--solo{grid-template-columns:minmax(0,1fr)}.clt-chapter-label.section-label{margin-top:.14rem;font-size:.72rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:#eef2ff;border:1px solid #e0e7ff;padding:.28rem .55rem;border-radius:8px;line-height:1.2;align-self:start}.clt-chapter-title-text.section-title{font-size:1.05rem;font-weight:800;color:#141413;line-height:1.4;min-width:0;overflow-wrap:anywhere;word-break:break-word}.clt-section-description.section-description{font-size:.88rem;color:#87867f;margin:0;font-weight:500;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.player-sidebar .clt-section-chevron{margin-top:.15rem}.player-sidebar .clt-chapter-label.section-label{font-size:.62rem;padding:.22rem .45rem;margin-top:0}.player-sidebar .clt-chapter-title-text.section-title{font-size:.85rem;min-width:0;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.player-sidebar .clt-section-heading-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.clt-course-content-shell.data-card,.module-layout-container .data-card.clt-course-content-shell{gap:0;padding:0;min-height:0!important;height:auto!important;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.module-layout-container .clt-course-content-shell.data-card:hover{transform:none;box-shadow:0 4px 14px #152c4a0f}.clt-course-content-head{padding:1rem 1.2rem;border-bottom:1px solid #e8e6dc;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.65rem .85rem}.clt-course-content-title{margin:0;font-size:.95rem;font-weight:800;color:#141413;line-height:1.35;min-width:0;flex:1 1 12rem;overflow-wrap:anywhere;word-break:break-word}.clt-hierarchy-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.38rem .65rem;border-radius:999px;font-size:.72rem;font-weight:600;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.curriculum-group .section-header{flex-wrap:wrap;align-items:flex-start;row-gap:.6rem}.curriculum-group .section-header .section-title-area{flex:1 1 min(100%,18rem)}.curriculum-group .section-header .section-meta{flex-shrink:0;margin-left:auto}.lessons-tab .cdt-toolbar .btn.cdt-btn-primary,.lessons-tab .cdt-empty .btn.cdt-btn-primary{background:#64748b!important;color:#f8fafc!important;border-color:#64748b!important;box-shadow:0 1px 2px #0f172a0f!important}.lessons-tab .cdt-toolbar .btn.cdt-btn-primary:hover:not(:disabled),.lessons-tab .cdt-empty .btn.cdt-btn-primary:hover:not(:disabled){background:#475569!important;border-color:#475569!important;filter:none!important}.clt-btn-primary{background:linear-gradient(to right,#3b82f6,#2563eb);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:10px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #2563eb33}.clt-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #2563eb4d}.clt-btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.teacher-earnings-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.dashboard-title{font-size:2rem;font-weight:700;color:#1a1a1a;margin:0 0 .5rem}.dashboard-subtitle{font-size:1rem;color:#666;margin:0}.view-wallet-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.view-wallet-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f}.stat-card.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.stat-title{font-size:.875rem;font-weight:500;opacity:.9}.stat-card.primary .stat-title{opacity:1}.stat-icon{font-size:1.5rem}.stat-value{font-size:1.75rem;font-weight:700;margin-bottom:.5rem}.stat-delta{font-size:.875rem;font-weight:500}.stat-delta.up{color:#10b981}.stat-delta.down{color:#ef4444}.stat-card.primary .stat-delta{color:#ffffffe6}.stat-meta{font-size:.875rem;opacity:.7}.dashboard-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;margin-bottom:2rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.card-title{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0}.card-subtitle{font-size:.875rem;color:#666}.view-all-link{background:none;border:none;color:#667eea;font-size:.875rem;font-weight:500;cursor:pointer;transition:color .2s}.view-all-link:hover{color:#764ba2}.revenue-chart{display:flex;align-items:flex-end;justify-content:space-between;height:300px;gap:.5rem;padding:1rem 0}.chart-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem}.chart-bar-container{width:100%;height:250px;display:flex;align-items:flex-end;justify-content:center}.chart-bar{width:100%;max-width:60px;background:linear-gradient(180deg,#667eea,#764ba2);border-radius:8px 8px 0 0;position:relative;transition:all .3s ease;cursor:pointer;display:flex;align-items:flex-start;justify-content:center;padding-top:.5rem}.chart-bar:hover{opacity:.8;transform:scaleY(1.02)}.bar-value{font-size:.75rem;font-weight:600;color:#fff;writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap}.chart-label{font-size:.75rem;color:#666;font-weight:500}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-bottom:2rem}.top-courses-list{display:flex;flex-direction:column;gap:1rem}.course-item{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:8px;background:#f9fafb;cursor:pointer;transition:all .2s}.course-item:hover{background:#f3f4f6;transform:translate(4px)}.course-thumbnail{width:60px;height:60px;border-radius:8px;overflow:hidden;flex-shrink:0}.course-thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);font-size:1.5rem}.course-info{flex:1;min-width:0}.course-title{font-size:.9375rem;font-weight:600;color:#1a1a1a;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-meta{display:flex;gap:1rem;font-size:.8125rem;color:#666}.course-revenue{font-size:1rem;font-weight:700;color:#10b981}.transactions-list{display:flex;flex-direction:column;gap:.75rem}.transaction-item{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:8px;background:#f9fafb;transition:background .2s}.transaction-item:hover{background:#f3f4f6}.transaction-icon{font-size:1.5rem;flex-shrink:0}.transaction-info{flex:1;min-width:0}.transaction-desc{font-size:.9375rem;font-weight:500;color:#1a1a1a;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-date{font-size:.8125rem;color:#666}.transaction-amount{font-size:1rem;font-weight:700;flex-shrink:0}.transaction-amount.success{color:#10b981}.transaction-amount.pending{color:#f59e0b}.transaction-amount.failed{color:#ef4444}.quick-actions-panel{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014}.panel-title{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 1rem}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.action-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem;background:#f9fafb;border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s}.action-btn:hover{background:#fff;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea26}.action-icon{font-size:2rem}.action-label{font-size:.9375rem;font-weight:500;color:#1a1a1a}.empty-state{text-align:center;padding:2rem;color:#666}.empty-state p{margin:0;font-size:.9375rem}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.error-message{font-size:1rem;color:#ef4444;margin:0}.retry-button{padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:background .2s}.retry-button:hover{background:#764ba2}@media(max-width:768px){.teacher-earnings-dashboard{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem}.stats-grid,.dashboard-grid{grid-template-columns:1fr}.revenue-chart{height:200px}.chart-bar-container{height:150px}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}.forum-page{max-width:1400px;margin:0 auto}.forum-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.forum-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.search-filter-group{display:flex;gap:1rem;flex:1}.search-input{flex:1;padding:.75rem 1rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.9375rem}.category-filter{padding:.75rem 1rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.9375rem;font-weight:600;min-width:200px}.sort-buttons{display:flex;gap:.5rem}.sort-btn{padding:.75rem 1rem;border:2px solid var(--gray-300);background:#fff;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.sort-btn:hover{border-color:var(--primary-color)}.sort-btn.active{background:var(--gradient-primary);color:#fff;border-color:transparent}.discussions-container{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.discussion-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:start;transition:all .2s;position:relative;border:2px solid transparent}.discussion-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026;border-color:var(--primary-color)}.discussion-card.pinned{background:linear-gradient(135deg,#667eea08,#764ba208);border-color:var(--primary-color)}.pinned-badge{position:absolute;top:1rem;right:1rem;padding:.375rem .75rem;background:var(--primary-color);color:#fff;border-radius:12px;font-size:.75rem;font-weight:700}.solved-badge{position:absolute;top:1rem;right:7rem;padding:.375rem .75rem;background:var(--success-color);color:#fff;border-radius:12px;font-size:.75rem;font-weight:700}.discussion-avatar{width:60px;height:60px;border-radius:50%;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.discussion-content{flex:1;min-width:0}.discussion-header{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.discussion-title{font-size:1.125rem;font-weight:700;color:var(--gray-900);margin:0;flex:1}.category-badge{padding:.375rem .75rem;background:var(--gray-100);border-radius:12px;font-size:.813rem;font-weight:600;color:var(--gray-700);white-space:nowrap}.discussion-excerpt{font-size:.9375rem;color:var(--gray-600);line-height:1.6;margin:0 0 .75rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.discussion-tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.tag{padding:.25rem .625rem;background:var(--gray-100);border:1px solid var(--gray-300);border-radius:12px;font-size:.75rem;font-weight:600;color:var(--gray-700)}.discussion-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--gray-200)}.author-info{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.author-name{font-weight:600;color:var(--gray-900)}.separator{color:var(--gray-400)}.created-time{color:var(--gray-600)}.discussion-meta{display:flex;gap:1rem;font-size:.875rem;color:var(--gray-600)}.meta-item{display:flex;align-items:center;gap:.25rem}.discussion-actions{display:flex;flex-direction:column;gap:.5rem}.action-btn{padding:.625rem 1rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.action-btn.secondary:hover{border-color:var(--primary-color);color:var(--primary-color)}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem}.pagination-btn:hover{border-color:var(--primary-color)}.pagination-pages{display:flex;gap:.25rem}.modal.large{max-width:800px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.9375rem;font-family:inherit;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}@media(max-width:1024px){.forum-stats{grid-template-columns:repeat(2,1fr)}.forum-controls{flex-direction:column;align-items:stretch}.search-filter-group{flex-direction:column}.category-filter{width:100%}}@media(max-width:768px){.page-header{flex-direction:column;gap:1rem}.forum-stats{grid-template-columns:1fr}.sort-buttons{flex-wrap:wrap}.discussion-card{grid-template-columns:1fr;text-align:center}.discussion-avatar{margin:0 auto}.discussion-header{flex-direction:column;align-items:center}.discussion-footer{flex-direction:column;gap:.75rem;align-items:flex-start}.discussion-actions,.action-btn{width:100%}.solved-badge,.pinned-badge{position:static;display:inline-block;margin-bottom:.5rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.module-layout-container .materials-header-row{align-items:flex-start;padding-bottom:1.25rem;border-bottom:1.5px solid var(--mod-slate-100)}.module-layout-container .header-stack{display:flex;flex-direction:column;gap:.2rem}.module-layout-container .header-kicker{color:#4f6790;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.module-layout-container .header-sub{margin:0;color:var(--mod-slate-500);font-size:.9rem;max-width:640px}.module-layout-container .count-chip{display:inline-flex;align-items:center;justify-content:center;background:var(--mod-slate-100);color:var(--mod-slate-700);border-radius:9999px;font-size:.82rem;font-weight:700;padding:.1rem .55rem}.module-layout-container .materials-beta-badge{font-size:.66rem;font-weight:800;border-radius:8px;padding:.18rem .48rem;color:#2563eb;background:#dbeafe;letter-spacing:.05em;vertical-align:middle}.module-layout-container .stat-card{display:flex;align-items:center;gap:.85rem;transition:transform .16s ease,box-shadow .16s ease}.module-layout-container .stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #152c4a1a}.module-layout-container .stat-icon-wrap{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.module-layout-container .stat-blue .stat-icon-wrap{background:#eff6ff;color:#1d4ed8}.module-layout-container .stat-indigo .stat-icon-wrap{background:#eef2ff;color:#4338ca}.module-layout-container .stat-violet .stat-icon-wrap{background:#f5f3ff;color:#6d28d9}.module-layout-container .stat-emerald .stat-icon-wrap{background:#ecfdf5;color:#047857}.module-layout-container .materials-section-label{display:inline-flex;align-items:center;gap:.42rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--mod-slate-500);margin-bottom:-.2rem}.module-layout-container .materials-tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.95rem}.module-layout-container .materials-tool-card{position:relative;background:#fff;border:1px solid var(--mod-slate-100);border-radius:16px;padding:1.2rem 1.25rem 1.3rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 4px 14px #152c4a0f;transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease;overflow:hidden}.module-layout-container .materials-tool-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1931521c;border-color:var(--mod-slate-200)}.module-layout-container .materials-tool-card.tool-accent-blue{border-top:3px solid #3b82f6}.module-layout-container .materials-tool-card.tool-accent-violet{border-top:3px solid #7c3aed}.module-layout-container .materials-tool-card.tool-accent-amber{border-top:3px solid #f59e0b}.module-layout-container .materials-tool-card.tool-accent-emerald{border-top:3px solid #10b981}.module-layout-container .materials-tool-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.module-layout-container .materials-tool-icon{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.module-layout-container .tool-accent-blue .materials-tool-icon{background:#eff6ff;color:#1d4ed8}.module-layout-container .tool-accent-violet .materials-tool-icon{background:#f5f3ff;color:#6d28d9}.module-layout-container .tool-accent-amber .materials-tool-icon{background:#fffbeb;color:#b45309}.module-layout-container .tool-accent-emerald .materials-tool-icon{background:#ecfdf5;color:#047857}.module-layout-container .materials-tool-tag{font-size:.65rem;font-weight:800;letter-spacing:.04em;border-radius:999px;padding:.18rem .5rem;flex-shrink:0}.module-layout-container .materials-tool-tag.available{background:#dcfce7;color:#16a34a}.module-layout-container .materials-tool-tag.coming-soon{background:#f1f5f9;color:#64748b}.module-layout-container .materials-tool-card h3{margin:0;font-family:var(--font-family);font-size:1rem;font-weight:800;color:var(--mod-ink);line-height:1.25;letter-spacing:0;font-synthesis:none;text-rendering:optimizeLegibility}.module-layout-container .materials-tool-card p{margin:0;color:var(--mod-slate-500);font-size:.86rem;line-height:1.6;flex:1}.module-layout-container .materials-tool-cta{width:100%;justify-content:center;border-radius:10px;font-size:.85rem;margin-top:auto}.module-layout-container .materials-tool-cta.materials-tool-cta--blue{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 6px 16px #2563eb47}.module-layout-container .materials-tool-cta.materials-tool-cta--blue:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8;color:#fff}.module-layout-container .materials-tool-cta.materials-tool-cta--violet{background:#7c3aed;border-color:#7c3aed;color:#fff;box-shadow:0 6px 16px #7c3aed4d}.module-layout-container .materials-tool-cta.materials-tool-cta--violet:hover:not(:disabled){background:#6d28d9;border-color:#6d28d9;color:#fff}.module-layout-container .materials-tool-cta.materials-tool-cta--amber.secondary{background:#fffbeb;color:#b45309;border-color:#fcd34d;box-shadow:none}.module-layout-container .materials-tool-cta.materials-tool-cta--amber.secondary:disabled{opacity:1;cursor:not-allowed}.module-layout-container .materials-tool-cta.materials-tool-cta--emerald.secondary{background:#ecfdf5;color:#047857;border-color:#6ee7b7;box-shadow:none}.module-layout-container .materials-tool-cta.materials-tool-cta--emerald.secondary:disabled{opacity:1;cursor:not-allowed}.module-layout-container .materials-file-cell{display:flex;align-items:center;gap:.55rem}.module-layout-container .materials-file-icon{width:28px;height:28px;border-radius:8px;background:#eef4ff;color:#2563eb;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.module-layout-container .materials-file-name{font-weight:700;color:var(--mod-ink);font-size:.87rem;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-layout-container .badge.materials-kind-badge{font-size:.67rem;font-weight:800;letter-spacing:.04em;border-radius:999px}.module-layout-container .badge.materials-kind-badge.slide{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.module-layout-container .badge.materials-kind-badge.mindmap{background:#f5f3ff;color:#6d28d9;border-color:#ddd6fe}.module-layout-container .badge.published{background:#dcfce7;color:#166534;border-color:#86efac}.module-layout-container .badge.draft{background:#fff7ed;color:#9a3412;border-color:#fdba74}.module-layout-container .materials-action-btn{padding:.38rem .7rem;font-size:.8rem;border-radius:9px;text-decoration:none;display:inline-flex;align-items:center;gap:.32rem}.module-layout-container .materials-action-btn.materials-action-btn--slide{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe;box-shadow:none}.module-layout-container .materials-action-btn.materials-action-btn--slide:hover:not(:disabled){background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}.module-layout-container .materials-action-btn.materials-action-btn--mindmap{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe;box-shadow:none}.module-layout-container .materials-action-btn.materials-action-btn--mindmap:hover:not(:disabled){background:#ede9fe;border-color:#c4b5fd;color:#5b21b6}.module-layout-container .materials-action-group{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.module-layout-container .table th:nth-child(5),.module-layout-container .table td:nth-child(5){text-align:center}.module-layout-container .table td:nth-child(5){vertical-align:middle}.module-layout-container .materials-preview-overlay{position:fixed;inset:0;background:#0f172a85;z-index:1400;display:flex;align-items:center;justify-content:center;padding:1.2rem}.module-layout-container .materials-preview-modal{width:min(1100px,96vw);height:min(82vh,900px);background:#fff;border-radius:14px;border:1px solid var(--mod-slate-200);box-shadow:0 24px 56px #02061742;display:flex;flex-direction:column;overflow:hidden}.module-layout-container .materials-preview-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem .95rem;border-bottom:1px solid var(--mod-slate-100)}.module-layout-container .materials-preview-header h3{margin:0;color:var(--mod-ink);font-size:1rem}.module-layout-container .materials-preview-frame{border:none;width:100%;flex:1;min-height:0}.module-layout-container .materials-download-overlay{position:fixed;inset:0;background:#0f172a70;z-index:1450;display:flex;align-items:center;justify-content:center;padding:1rem}.module-layout-container .materials-download-modal{width:min(640px,94vw)}.module-layout-container .materials-math-loader{position:relative;margin:auto;min-height:220px;width:min(560px,95%);border:1px solid #dbeafe;border-radius:14px;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.13),transparent 38%),radial-gradient(circle at 85% 25%,rgba(14,165,233,.14),transparent 34%),linear-gradient(180deg,#f8fbff,#f1f5ff);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;overflow:hidden}.module-layout-container .materials-math-loader-ring{width:70px;height:70px;border-radius:999px;border:3px solid rgba(59,130,246,.2);border-top-color:#2563eb;animation:materials-math-spin 1s linear infinite}.module-layout-container .materials-math-loader-symbols{position:absolute;inset:0;pointer-events:none}.module-layout-container .materials-math-loader-symbols span{position:absolute;font-size:1.15rem;font-weight:800;color:#1d4ed8;opacity:0;animation:materials-math-float 2.8s ease-in-out infinite}.module-layout-container .materials-math-loader-symbols span:nth-child(1){top:18%;left:22%;animation-delay:0s}.module-layout-container .materials-math-loader-symbols span:nth-child(2){top:24%;right:19%;animation-delay:.35s}.module-layout-container .materials-math-loader-symbols span:nth-child(3){bottom:20%;left:28%;animation-delay:.7s}.module-layout-container .materials-math-loader-symbols span:nth-child(4){bottom:25%;right:24%;animation-delay:1.05s}.module-layout-container .materials-math-loader-symbols span:nth-child(5){top:48%;left:50%;transform:translate(-50%,-50%);animation-delay:1.4s}.module-layout-container .materials-math-loader p{margin:0;color:#1e3a8a;font-weight:700}@keyframes materials-math-spin{to{transform:rotate(360deg)}}@keyframes materials-math-float{0%{transform:translateY(10px) scale(.9);opacity:0}35%{opacity:.95}65%{opacity:.95}to{transform:translateY(-10px) scale(1.06);opacity:0}}.module-layout-container .materials-table-footer{padding:.72rem .95rem;font-size:.8rem;color:var(--mod-slate-500);border-top:1px solid var(--mod-slate-100);background:#f9fbff}.module-layout-container .materials-table-placeholder{padding:1rem}.module-layout-container .skeleton-card{border-radius:14px;background:linear-gradient(90deg,#f1f5f9 25%,#e8edf5,#f1f5f9 75%);background-size:400% 100%;animation:shimmer 1.5s ease-in-out infinite}@keyframes shimmer{0%{background-position:100% 50%}to{background-position:0% 50%}}@media(max-width:1150px){.module-layout-container .materials-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.module-layout-container .materials-tool-grid{grid-template-columns:1fr}.module-layout-container .materials-header-row{flex-direction:column;align-items:flex-start;gap:.75rem}.module-layout-container .materials-file-name{max-width:160px}.module-layout-container .materials-action-group{flex-direction:column;align-items:stretch;width:100%}.module-layout-container .materials-preview-overlay{padding:.7rem}.module-layout-container .materials-preview-modal{width:100%;height:88vh}}.materials-header-legacy{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.materials-header h1{margin:0;font-size:clamp(1.8rem,2.2vw,2.3rem);color:#0f172a;font-weight:800}.beta-badge{margin-left:.45rem;font-size:.7rem;border-radius:8px;padding:.2rem .42rem;color:#2563eb;background:#e0ecff;vertical-align:middle;font-weight:800}.materials-header p{margin:.45rem 0 0;color:#64748b;max-width:720px}.history-btn{border:1px solid #2d7be7;background:#2d7be7;color:#fff;border-radius:10px;padding:.72rem 1rem;font-family:var(--font-family);font-size:.87rem;font-weight:700;display:inline-flex;align-items:center;gap:.4rem}.tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.95rem}.tool-card{border:1px solid #dbe4f0;border-radius:16px;background:#fff;padding:1rem}.tool-icon{width:44px;height:44px;border-radius:12px;background:#eaf1ff;font-size:1.3rem;display:inline-flex;align-items:center;justify-content:center}.tool-card h3{margin:.9rem 0 0;font-size:1.45rem;line-height:1.15;color:#0f172a;font-weight:800}.tool-card p{color:#64748b;font-size:.9rem;line-height:1.6;min-height:74px}.tool-card button{width:100%;border:none;border-radius:10px;background:#eff4fa;color:#2d7be7;font-family:var(--font-family);font-size:.86rem;font-weight:700;padding:.62rem}.recent-section{margin-top:1rem}.recent-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem}.recent-head h2{margin:0;color:#0f172a;font-size:2rem;line-height:1.1;font-weight:800}.search-box{width:280px;border:1px solid #dbe4f0;border-radius:10px;background:#fff;display:flex;align-items:center;gap:.45rem;color:#94a3b8;padding:0 .65rem}.search-box input{width:100%;border:none;height:38px;background:transparent;font-size:.88rem;font-family:var(--font-family);color:#334155}.search-box input:focus{outline:none}.table-wrap{border:1px solid #dbe4f0;border-radius:14px;background:#fff;overflow:hidden}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.85rem .95rem;border-bottom:1px solid #eef2f7;font-size:.85rem}th{text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-weight:700;font-size:.72rem;background:#f8fafc}.file-cell{color:#0f172a;font-weight:700;display:flex;align-items:center;gap:.45rem}.file-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:7px;background:#eef4ff}.tool-tag{display:inline-flex;border-radius:999px;padding:.2rem .55rem;font-size:.68rem;font-weight:800;color:#2d7be7;background:#e8f1ff}.status-tag{display:inline-flex;border-radius:999px;padding:.24rem .55rem;font-size:.73rem;font-weight:700}.status-tag.done{color:#059669;background:#d1fae5}.status-tag.processing{color:#ea580c;background:#ffedd5}.action-cell{color:#2563eb;font-weight:700}.table-footer{padding:.75rem .95rem;font-size:.82rem;color:#64748b;background:#fff}@media(max-width:1150px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.materials-header,.recent-head{flex-direction:column;align-items:flex-start}.search-box{width:100%}.tool-grid{grid-template-columns:1fr}.table-wrap{overflow-x:auto}table{min-width:680px}}.rcp{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 5rem;display:flex;flex-direction:column;gap:0}.rcp-page-head{padding:0 0 2rem;border-bottom:1px solid #e5e7eb;margin-bottom:2.5rem}.rcp-page-head__eyebrow{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#6b7280;margin-bottom:.5rem;display:block}.rcp-page-head__title{font-size:2rem;font-weight:800;color:#111827;letter-spacing:-.03em;margin:0 0 .5rem;line-height:1.15}.rcp-page-head__sub{font-size:.9rem;color:#6b7280;margin:0;line-height:1.6}.rcp-page-head__meta{display:flex;gap:1.5rem;margin-top:1rem}.rcp-page-head__stat{font-size:.82rem;color:#9ca3af}.rcp-page-head__stat strong{color:#111827;font-weight:700;margin-right:.25rem}.rcp-body{display:grid;grid-template-columns:240px 1fr;gap:3rem;align-items:start}.rcp-sidebar{position:sticky;top:1.5rem}.rcp-sidebar__heading{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#9ca3af;margin-bottom:.75rem;padding-left:.5rem}.rcp-sidebar__list{display:flex;flex-direction:column;gap:.1rem}.rcp-sidebar__item{display:flex;align-items:center;gap:.65rem;padding:.6rem .75rem;border-radius:8px;border:none;background:transparent;cursor:pointer;text-align:left;transition:background .12s;font-family:inherit;width:100%;color:#374151}.rcp-sidebar__item:hover{background:#f3f4f6}.rcp-sidebar__item--active{background:#eef2ff;color:#4f46e5}.rcp-sidebar__item-main{flex:1;min-width:0}.rcp-sidebar__item-name{display:block;font-size:.875rem;font-weight:500;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rcp-sidebar__item--active .rcp-sidebar__item-name{font-weight:600;color:#4f46e5}.rcp-sidebar__item-meta{display:block;font-size:.7rem;color:#9ca3af;margin-top:.1rem}.rcp-sidebar__item-badge{background:#f3f4f6;color:#6b7280;border-radius:999px;padding:.1rem .5rem;font-size:.7rem;font-weight:700;flex-shrink:0}.rcp-sidebar__item--active .rcp-sidebar__item-badge{background:#c7d2fe;color:#4338ca}.rcp-sidebar__dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:transparent;border:1.5px solid #d1d5db}.rcp-sidebar__item--active .rcp-sidebar__dot{background:#4f46e5;border-color:#4f46e5}.rcp-preview{min-height:200px}.rcp-preview__header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #f3f4f6}.rcp-preview__title{font-size:1.5rem;font-weight:800;color:#111827;margin:0 0 .5rem;letter-spacing:-.02em;line-height:1.25}.rcp-preview__desc{color:#6b7280;font-size:.9rem;line-height:1.65;margin:0 0 .75rem}.rcp-preview__tags{display:flex;flex-wrap:wrap;gap:.5rem}.rcp-preview__tag{padding:.2rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#f3f4f6;color:#6b7280}.rcp-preview__tag--blue{background:#eff6ff;color:#1d4ed8}.rcp-preview__tag--purple{background:#f5f3ff;color:#6d28d9}.rcp-preview__tag--green{background:#ecfdf5;color:#065f46}.rcp-topics{display:flex;flex-direction:column;position:relative;padding-left:1.25rem}.rcp-topics:before{content:"";position:absolute;left:4px;top:10px;bottom:10px;width:2px;background:#e5e7eb}.rcp-topic-item{display:flex;align-items:flex-start;gap:.875rem;padding:.65rem .75rem .65rem 0;position:relative;transition:background .12s;border-radius:8px}.rcp-topic-item:hover{background:#f9fafb}.rcp-topic-item__dot{position:absolute;left:-1.25rem;top:50%;transform:translateY(-50%);width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid #d1d5db;flex-shrink:0;z-index:1}.rcp-topic-item__num{width:22px;font-size:.72rem;font-weight:700;color:#9ca3af;flex-shrink:0;margin-top:.15rem;text-align:right}.rcp-topic-item__title{flex:1;font-size:.875rem;font-weight:500;color:#374151;line-height:1.5}.rcp-topic-item__diff{padding:.15rem .5rem;border-radius:5px;font-size:.68rem;font-weight:700;text-transform:uppercase;flex-shrink:0;align-self:center}.rcp-topic-item__diff--easy{background:#dcfce7;color:#166534}.rcp-topic-item__diff--medium{background:#fef9c3;color:#854d0e}.rcp-topic-item__diff--hard{background:#fee2e2;color:#991b1b}.rcp-preview__footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #f3f4f6}.rcp-preview__cta{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.5rem;background:#4f46e5;color:#fff;border-radius:8px;font-weight:600;font-size:.9rem;text-decoration:none;transition:background .15s;letter-spacing:.01em}.rcp-preview__cta:hover{background:#4338ca;color:#fff}.rcp-preview__empty{display:flex;flex-direction:column;align-items:center;padding:3rem 1rem;color:#9ca3af;font-size:.9rem;gap:.75rem;text-align:center}.rcp-preview__empty span{font-size:2.5rem}.rcp-loading{display:flex;flex-direction:column;gap:.75rem}.rcp-skeleton{height:56px;background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 37%,#f3f4f6 63%);background-size:400% 100%;border-radius:8px;animation:rcp-shimmer 1.4s infinite ease-in-out}.rcp-skeleton--sm{height:40px}@keyframes rcp-shimmer{0%{background-position:100% 50%}to{background-position:0% 50%}}.rcp-error{padding:1.25rem;text-align:center;color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-weight:500;font-size:.9rem}.rcp-preview__skeleton{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}@media(max-width:800px){.rcp-body{grid-template-columns:1fr}.rcp-sidebar{position:static}.rcp-page-head__title{font-size:1.5rem}}.rmc{background:#fff;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s;overflow:hidden;position:relative}.rmc:hover{border-color:#c7d2fe;box-shadow:0 4px 16px #4f46e512}.rmc--active{border-color:#a5b4fc}.rmc__accent{height:3px;background:#4f46e5;opacity:0;transition:opacity .2s}.rmc--active .rmc__accent{opacity:1}.rmc__inner{padding:1.25rem;display:flex;flex-direction:column;gap:.65rem;flex:1}.rmc__tags{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.rmc__tag{padding:.18rem .55rem;border-radius:999px;font-size:.7rem;font-weight:600}.rmc__tag--subject{background:#eff6ff;color:#1d4ed8}.rmc__tag--grade{background:#f5f3ff;color:#6d28d9}.rmc__status{border-radius:999px;padding:.18rem .55rem;font-size:.7rem;font-weight:600;align-self:flex-start;margin-left:auto}.rmc__status--published{background:#dcfce7;color:#166534}.rmc__status--draft{background:#fef9c3;color:#854d0e}.rmc__status--archived{background:#f3f4f6;color:#6b7280}.rmc__status--generated{background:#ecfdf5;color:#065f46}.rmc__status--in_progress{background:#eff6ff;color:#1d4ed8}.rmc__status--completed{background:#f0fdf4;color:#15803d}.rmc__title{font-size:.95rem;font-weight:700;color:#111827;line-height:1.4;letter-spacing:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.rmc__desc{font-size:.82rem;color:#6b7280;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.rmc__stats{display:flex;gap:1.5rem;font-size:.78rem;padding-top:.5rem;border-top:1px solid #f3f4f6}.rmc__stat{display:flex;flex-direction:column;align-items:flex-start}.rmc__stat strong{font-size:.95rem;font-weight:700;color:#111827}.rmc__stat span{color:#9ca3af;font-size:.7rem;font-weight:500}.rmc__bar-track{height:4px;background:#f3f4f6;border-radius:999px;overflow:hidden}.rmc__bar-fill{height:100%;background:#4f46e5;border-radius:999px;width:100%;transform-origin:left;transition:transform .4s ease}.rmc__bar-label{font-size:.72rem;color:#9ca3af;margin-top:.25rem;text-align:right}.rmc__footer{margin-top:auto;padding-top:.75rem;border-top:1px solid #f3f4f6}.rmc__cta{display:block;width:100%;padding:.6rem;text-align:center;border-radius:7px;font-weight:600;font-size:.85rem;text-decoration:none;transition:background .15s,color .15s}.rmc__cta--start{background:#4f46e5;color:#fff}.rmc__cta--start:hover{background:#4338ca;color:#fff}.rmc__cta--continue{background:transparent;color:#4f46e5}.rmc__cta--continue:hover{background:#eef2ff;color:#4338ca}.roadmap-lesson-item{display:flex;justify-content:space-between;align-items:center;gap:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.75rem}.roadmap-lesson-item__title{margin:0;font-size:.95rem;color:#0f172a}.roadmap-lesson-item__meta{margin:.25rem 0 0;color:#64748b;font-size:.82rem}.roadmap-lesson-item__action{border:0;border-radius:8px;padding:.5rem .7rem;font-size:.8rem;font-weight:700;color:#fff;background:#0369a1;cursor:pointer}.roadmap-lesson-item__done{color:#16a34a;font-size:.8rem;font-weight:700}.roadmap-lesson-item__locked{color:#64748b;font-size:.8rem;font-weight:700}.roadmap-progress-bar{width:100%}.roadmap-progress-bar__meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;color:#1f2937;font-size:.9rem}.roadmap-progress-bar__track{height:10px;border-radius:999px;background:#e5e7eb;overflow:hidden}.roadmap-progress-bar__fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#0284c7,#0ea5e9);width:100%;transform-origin:left;transition:transform .25s ease}.roadmap-progress-bar__native{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.roadmap-module{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:1rem;display:grid;gap:.75rem}.roadmap-module__header{display:flex;justify-content:space-between;align-items:center}.roadmap-module__title{margin:0;color:#111827;font-size:1.05rem}.roadmap-module__badge{border-radius:999px;background:#e0f2fe;color:#075985;padding:.2rem .65rem;font-size:.75rem;font-weight:700}.roadmap-module__description{margin:0;color:#4b5563}.roadmap-module__lessons{margin:0;padding:0;list-style:none;display:grid;gap:.6rem}.roadmap-dashboard-widget{background:linear-gradient(140deg,#f0f9ff,#ecfeff);border:1px solid #bae6fd;border-radius:16px;padding:1rem;display:grid;gap:1rem}.roadmap-dashboard-widget__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.roadmap-dashboard-widget__title{margin:0;color:#0f172a}.roadmap-dashboard-widget__roadmap{color:#0369a1;font-size:.86rem;font-weight:700}.roadmap-dashboard-widget__metrics{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.roadmap-dashboard-widget__metrics article{background:#fff;border:1px solid #dbeafe;border-radius:10px;padding:.75rem}.roadmap-dashboard-widget__metrics p{margin:0;color:#475569;font-size:.82rem}.roadmap-dashboard-widget__metrics strong{font-size:1.3rem;color:#0f172a}@media(max-width:768px){.roadmap-dashboard-widget__metrics{grid-template-columns:1fr}}.admin-roadmap-editor{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;padding:2rem;display:grid;gap:1.5rem;box-shadow:0 1px 3px #0000000d}.admin-roadmap-editor__header h3{margin:0;color:#0f172a;font-size:1.25rem;font-weight:700}.admin-roadmap-editor__header p{margin:.5rem 0 0;color:#64748b;font-size:.875rem;line-height:1.5}.admin-roadmap-editor__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;align-items:start}.admin-roadmap-editor__field{display:grid;gap:.5rem;font-size:.875rem;color:#334155}.admin-roadmap-editor__field span{font-weight:600;color:#1e293b}.admin-roadmap-editor__field input,.admin-roadmap-editor__field textarea,.admin-roadmap-editor__field select{border:1.5px solid #e2e8f0;border-radius:8px;padding:.625rem .875rem;font:inherit;background:#fff;transition:all .15s;font-size:.9375rem;min-height:2.75rem;box-sizing:border-box}.admin-roadmap-editor__field input:focus,.admin-roadmap-editor__field textarea:focus,.admin-roadmap-editor__field select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.admin-roadmap-editor__field input:-moz-read-only{background:#f8fafc;color:#64748b;cursor:not-allowed}.admin-roadmap-editor__field input:read-only{background:#f8fafc;color:#64748b;cursor:not-allowed}.admin-roadmap-editor__field textarea{min-height:5.5rem;resize:vertical}.admin-roadmap-editor__field--wide{grid-column:1 / -1}.admin-roadmap-editor__pair-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem;align-items:start;grid-column:1 / -1}.admin-roadmap-editor__pair-left{display:flex;flex-direction:column;gap:.35rem;min-width:0}.admin-roadmap-editor__field--invalid input,.admin-roadmap-editor__field--invalid select,.admin-roadmap-editor__field--invalid textarea{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.admin-roadmap-editor__hint{margin:.15rem 0 0;font-size:.8125rem;color:#64748b;line-height:1.4;font-weight:400}.admin-roadmap-editor__inline-error{margin:.25rem 0 0;font-size:.8125rem;color:#b91c1c;font-weight:600}.admin-roadmap-editor__actions{display:flex;justify-content:flex-end;padding-top:.5rem;border-top:1px solid #f1f5f9}.admin-roadmap-editor__actions button{border:0;border-radius:8px;padding:.75rem 1.5rem;color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.admin-roadmap-editor__actions button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.admin-roadmap-editor__actions button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.admin-roadmap-editor{padding:1.5rem}.admin-roadmap-editor__fields{grid-template-columns:1fr}}.roadmap-dashboard-page{display:grid;gap:1rem}.roadmap-dashboard-page__header h1{margin:0}.roadmap-dashboard-page__header p{margin:.5rem 0 0;color:#475569}.roadmap-dashboard-page__actions{display:flex;gap:.65rem}.roadmap-dashboard-page__link{text-decoration:none;border-radius:8px;border:1px solid #bae6fd;color:#075985;background:#f0f9ff;padding:.5rem .8rem;font-weight:700}.roadmap-dashboard-page__state{margin:0;color:#64748b}.rdp-page{min-height:100vh;background:#f8fafc}.rdp-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:.875rem 2rem;display:flex;align-items:center;gap:1.25rem;position:sticky;top:0;z-index:20}.rdp-header__back{display:flex;align-items:center;gap:.35rem;color:#6b7280;font-size:.85rem;font-weight:500;background:none;border:none;cursor:pointer;padding:.3rem 0;transition:color .15s;font-family:inherit;flex-shrink:0}.rdp-header__back:hover{color:#111827}.rdp-header__info{flex:1;min-width:0}.rdp-header__title{font-size:1.05rem;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.rdp-header__sub{font-size:.77rem;color:#9ca3af;margin-top:.1rem}.rdp-header__progress{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.rdp-header__pct{font-size:.88rem;font-weight:700;color:#4f46e5;min-width:36px;text-align:right}.rdp-header__bar-track{width:130px;height:5px;background:#e5e7eb;border-radius:3px;overflow:hidden}.rdp-header__bar-fill{height:100%;background:#4f46e5;border-radius:3px;width:100%;transform-origin:left;transition:transform .5s ease}.rdp-header__count{font-size:.8rem;color:#9ca3af;white-space:nowrap}.rdp-action-msg{max-width:760px;margin:1rem auto -.5rem;padding:.7rem 1rem;border-radius:8px;font-size:.88rem;font-weight:500;display:flex;align-items:center;gap:.5rem;animation:rdp-slide-in .25s ease}.rdp-action-msg--success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.rdp-action-msg--error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}@keyframes rdp-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.rdp-layout{display:flex;position:relative}.rdp-layout--panel{padding-right:420px}.rdp-map{flex:1;display:flex;flex-direction:column;align-items:center;padding:2.5rem 1.5rem 6rem;overflow-x:auto}.rdp-map-title{width:100%;max-width:900px;margin-bottom:2.5rem}.rdp-map-title h2{font-size:1.1rem;font-weight:700;color:#111827;margin:0 0 .2rem}.rdp-map-title p{font-size:.83rem;color:#9ca3af;margin:0}.rdp-level-banner{margin-top:.85rem;display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.rdp-level-banner__level{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:.24rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700}.rdp-level-banner__progress{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;padding:.24rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600}.rdp-level-banner__entry{color:#6b7280;font-size:.75rem;font-weight:500}.rdp-level-banner__entry-link{color:#4f46e5;font-size:.75rem;font-weight:700;text-decoration:none}.rdp-level-banner__entry-link:hover{text-decoration:underline}.rdp-tree{width:100%;max-width:900px;display:flex;flex-direction:column;align-items:flex-start}.rdp-vline-wrap{width:400px;display:flex;justify-content:center;pointer-events:none}.rdp-vline{width:2px;height:32px;background:#d1d5db}.rdp-tree-row{display:flex;align-items:flex-start;width:100%;gap:0}.rdp-topic-area{width:400px;flex-shrink:0;display:flex;justify-content:center}.rdp-topic-node{width:100%;max-width:370px;display:flex;align-items:center;gap:.75rem;padding:.85rem 1.1rem;background:#fefce8;border:1.5px solid #d9ac4a;border-radius:8px;cursor:pointer;font-family:inherit;font-size:.95rem;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s;position:relative;outline:none}.rdp-topic-node:hover{border-color:#b45309;background:#fef9c3;box-shadow:0 2px 12px #b453091f}.rdp-topic-node:focus-visible{box-shadow:0 0 0 3px #d9ac4a59}.rdp-topic-node--done{background:#f0fdf4;border-color:#86efac}.rdp-topic-node--done:hover{border-color:#16a34a;background:#dcfce7;box-shadow:0 2px 12px #16a34a1a}.rdp-topic-node--progress{background:#eff6ff;border-color:#93c5fd}.rdp-topic-node--progress:hover{border-color:#2563eb;background:#dbeafe;box-shadow:0 2px 12px #2563eb1a}.rdp-topic-node--active{border-color:#b45309!important;background:#fef9c3!important;box-shadow:0 0 0 3px #d9ac4a40}.rdp-topic-node--done.rdp-topic-node--active{border-color:#16a34a!important;background:#dcfce7!important;box-shadow:0 0 0 3px #16a34a33}.rdp-topic-node--progress.rdp-topic-node--active{border-color:#2563eb!important;background:#dbeafe!important;box-shadow:0 0 0 3px #2563eb33}.rdp-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.rdp-status-dot--done{background:#16a34a}.rdp-status-dot--progress{background:#2563eb}.rdp-status-dot--none{background:transparent;border:2px solid #9ca3af}.rdp-topic-node__body{flex:1;min-width:0;display:flex;align-items:baseline;gap:.5rem}.rdp-topic-node__num{font-size:.72rem;font-weight:700;color:#92400e;flex-shrink:0;opacity:.8}.rdp-topic-node__title{font-size:.93rem;font-weight:700;color:#1c1917;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rdp-topic-node__meta-row{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.rdp-diff-badge{font-size:.65rem;font-weight:700;padding:.14rem .45rem;border-radius:4px;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.rdp-diff-badge--easy{background:#dcfce7;color:#166534}.rdp-diff-badge--medium{background:#fef9c3;color:#854d0e}.rdp-diff-badge--hard{background:#fee2e2;color:#991b1b}.rdp-topic-node__course-count{font-size:.72rem;color:#6b7280;white-space:nowrap}.rdp-topic-node__chevron{font-size:1.1rem;color:#9ca3af;flex-shrink:0;transform:rotate(0);transition:transform .2s,color .15s;line-height:1}.rdp-topic-node__chevron--open{transform:rotate(90deg);color:#b45309}.rdp-courses-branch{flex:1;display:flex;align-items:flex-start;padding-top:16px;min-width:0;animation:rdp-branch-in .2s ease}@keyframes rdp-branch-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.rdp-branch-hconn{flex-shrink:0;width:36px;border-top:2px dashed #cbd5e1;margin-top:14px}.rdp-courses-tree{flex:1;display:flex;flex-direction:column;gap:8px;border-left:2px dashed #cbd5e1;padding-left:0;min-width:0}.rdp-course-row{display:flex;align-items:stretch;position:relative}.rdp-course-row:before{content:"";display:block;width:20px;flex-shrink:0;border-top:2px dashed #cbd5e1;margin-top:22px}.rdp-course-card{flex:1;min-width:0;max-width:340px;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;padding:.75rem .9rem;display:flex;align-items:flex-start;gap:.6rem;cursor:pointer;font-family:inherit;font-size:inherit;text-align:left;transition:border-color .15s,box-shadow .15s,background .15s;outline:none}.rdp-course-card:hover{border-color:#6366f1;box-shadow:0 2px 10px #6366f11a}.rdp-course-card:focus-visible{box-shadow:0 0 0 3px #6366f140}.rdp-course-card--selected{border-color:#6366f1;background:#f5f3ff;box-shadow:0 0 0 3px #6366f126}.rdp-course-card--empty{cursor:default;background:#f9fafb;border-style:dashed}.rdp-course-card__left{display:flex;align-items:flex-start;padding-top:3px;flex-shrink:0}.rdp-course-card__body{flex:1;min-width:0}.rdp-course-card__title{display:block;font-size:.875rem;font-weight:600;color:#111827;line-height:1.45;margin-bottom:.35rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rdp-course-card__bottom{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.rdp-course-card__meta{font-size:.73rem;color:#9ca3af}.rdp-course-card__progress{margin-top:.45rem;height:3px;background:#e5e7eb;border-radius:2px;overflow:hidden}.rdp-course-card__progress-fill{height:100%;background:#4f46e5;border-radius:2px;width:100%;transform-origin:left;transition:transform .4s ease}.rdp-course-tag{font-size:.68rem;font-weight:600;padding:.12rem .4rem;border-radius:4px}.rdp-course-tag--enrolled{background:#dbeafe;color:#1d4ed8}.rdp-course-tag--done{background:#dcfce7;color:#166534}.rdp-course-card__arrow{font-size:1rem;color:#d1d5db;flex-shrink:0;align-self:center;transition:color .15s,transform .15s}.rdp-course-card:hover .rdp-course-card__arrow,.rdp-course-card--selected .rdp-course-card__arrow{color:#6366f1;transform:translate(2px)}.rdp-panel{position:fixed;top:0;right:0;width:420px;height:100vh;background:#fff;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;z-index:100;overflow:hidden}.rdp-panel__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:#fff;position:sticky;top:0;z-index:10;gap:.75rem}.rdp-panel__header-tabs{display:flex;align-items:center;gap:.5rem}.rdp-panel__tab{font-size:.8rem;font-weight:600;color:#9ca3af;padding:.25rem .6rem;border-radius:5px}.rdp-panel__tab--active{background:#f3f4f6;color:#374151}.rdp-panel__tab-divider{color:#e5e7eb;font-size:1rem}.rdp-panel__header-right{display:flex;align-items:center;gap:.5rem}.rdp-panel__status-badge{font-size:.72rem;font-weight:600;padding:.22rem .6rem;border-radius:20px;white-space:nowrap}.rdp-panel__status-badge--none{background:#f3f4f6;color:#6b7280}.rdp-panel__status-badge--progress{background:#dbeafe;color:#1d4ed8}.rdp-panel__status-badge--done{background:#dcfce7;color:#166534}.rdp-panel__close{background:none;border:none;cursor:pointer;color:#9ca3af;font-size:1.1rem;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:5px;transition:color .15s,background .15s;font-family:inherit;flex-shrink:0}.rdp-panel__close:hover{color:#111827;background:#f3f4f6}.rdp-panel__body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:0}.rdp-panel__course-header{padding:1.25rem 1.25rem 1rem;border-bottom:1px solid #f3f4f6}.rdp-panel__topic-tag{display:inline-block;font-size:.7rem;font-weight:700;color:#7c3aed;background:#f5f3ff;padding:.18rem .55rem;border-radius:4px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.rdp-panel__title{font-size:1.35rem;font-weight:800;color:#111827;line-height:1.3;margin:0 0 .5rem}.rdp-panel__desc{font-size:.88rem;color:#6b7280;line-height:1.6;margin:0}.rdp-panel__thumb{display:block;width:calc(100% - 2.5rem);margin:1rem 1.25rem 0;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.rdp-panel__meta-row{display:flex;gap:.6rem;padding:1rem 1.25rem 0;flex-wrap:wrap}.rdp-panel__meta-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:.5rem .75rem;display:flex;flex-direction:column;gap:.1rem}.rdp-panel__meta-item span{font-size:.67rem;color:#9ca3af;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.rdp-panel__meta-item strong{font-size:.9rem;color:#111827;font-weight:700}.rdp-panel__progress-wrap{display:flex;align-items:center;gap:.6rem;padding:.75rem 1.25rem 0}.rdp-panel__progress-bar{flex:1;height:5px;background:#e5e7eb;border-radius:3px;overflow:hidden}.rdp-panel__progress-fill{height:100%;background:#4f46e5;border-radius:3px;width:100%;transform-origin:left;transition:transform .5s ease}.rdp-panel__progress-pct{font-size:.8rem;font-weight:700;color:#4f46e5;flex-shrink:0}.rdp-panel__loading{font-size:.85rem;color:#9ca3af;padding:.5rem 1.25rem;margin:0}.rdp-panel__section{padding:1.25rem 1.25rem 0}.rdp-panel__section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.rdp-panel__section-header:after{content:"";flex:1;height:1px;background:#e5e7eb}.rdp-panel__section-icon{font-size:.9rem}.rdp-panel__section-title{font-size:.72rem;font-weight:700;color:#374151;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.rdp-panel__section-header--green .rdp-panel__section-title{color:#16a34a}.rdp-panel__section-header--purple .rdp-panel__section-title{color:#7c3aed}.rdp-panel__lessons{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.rdp-panel__lesson-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .85rem;border-bottom:1px solid #f3f4f6;transition:background .1s}.rdp-panel__lesson-item:last-child{border-bottom:none}.rdp-panel__lesson-item:hover{background:#f9fafb}.rdp-panel__lesson-num{width:20px;height:20px;background:#f3f4f6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:#6b7280;flex-shrink:0}.rdp-panel__lesson-content{display:flex;flex-direction:column;gap:4px;flex:1}.rdp-panel__lesson-title{font-size:.85rem;color:#374151;line-height:1.4}.rdp-panel__lesson-video{font-size:.75rem;color:#6b7280;font-style:italic}.rdp-panel__lesson-duration{font-size:.72rem;color:#9ca3af;flex-shrink:0}.rdp-panel__resources{display:flex;flex-direction:column;gap:6px}.rdp-panel__resource-item{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;border:1px solid #e5e7eb;border-radius:7px;text-decoration:none;background:#fff;transition:border-color .15s,background .15s}.rdp-panel__resource-item:hover{border-color:#4f46e5;background:#f5f3ff}.rdp-panel__resource-item--premium{background:#fafafa}.rdp-panel__resource-item--premium:hover{border-color:#7c3aed;background:#f5f3ff}.rdp-panel__resource-badge{font-size:.65rem;font-weight:700;padding:.15rem .45rem;border-radius:4px;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;white-space:nowrap}.rdp-panel__resource-badge--article{background:#dbeafe;color:#1d4ed8}.rdp-panel__resource-badge--video{background:#fce7f3;color:#be185d}.rdp-panel__resource-badge--course{background:#dcfce7;color:#166534}.rdp-panel__resource-badge--book{background:#fef9c3;color:#854d0e}.rdp-panel__resource-badge--podcast{background:#ede9fe;color:#6d28d9}.rdp-panel__resource-badge--other{background:#f3f4f6;color:#6b7280}.rdp-panel__resource-title{flex:1;font-size:.85rem;color:#374151;font-weight:500;line-height:1.4}.rdp-panel__resource-arrow{font-size:.85rem;color:#9ca3af;flex-shrink:0}.rdp-panel__resource-item:hover .rdp-panel__resource-arrow{color:#4f46e5}.rdp-panel__footer{padding:1rem 1.25rem;border-top:1px solid #e5e7eb;background:#fff;flex-shrink:0}.rdp-panel__cta{display:block;width:100%;padding:.85rem;text-align:center;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:700;cursor:pointer;transition:background .15s;font-family:inherit}.rdp-panel__cta:hover{background:#4338ca}.rdp-panel__cta--enrolled{background:#059669}.rdp-panel__cta--enrolled:hover{background:#047857}.rdp-panel__cta:disabled{opacity:.55;cursor:not-allowed}.rdp-feedback{max-width:900px;width:100%;margin:0 auto 4rem;padding:1.75rem;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.rdp-feedback__header{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.rdp-feedback__icon{width:34px;height:34px;background:#fef9c3;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.rdp-feedback__title{font-size:.95rem;font-weight:700;color:#111827;margin:0 0 .2rem}.rdp-feedback__sub{font-size:.83rem;color:#6b7280;margin:0}.rdp-feedback__loading{text-align:center;color:#9ca3af;font-size:.875rem;padding:1rem}.rdp-feedback__existing{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:1rem}.rdp-feedback__existing-badge{font-size:.875rem;font-weight:600;color:#16a34a}.rdp-feedback__existing-date{font-size:.8125rem;color:#65a30d}.rdp-stars{display:flex;gap:.3rem;margin-bottom:.9rem}.rdp-star{background:none;border:none;font-size:1.55rem;cursor:pointer;color:#d1d5db;transition:color .15s,transform .1s;padding:0;line-height:1;font-family:inherit}.rdp-star:hover{transform:scale(1.15);color:#f59e0b}.rdp-star--active{color:#f59e0b}.rdp-feedback__chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem}.rdp-feedback__chip{padding:.28rem .7rem;border:1px solid #e5e7eb;border-radius:6px;background:#f9fafb;color:#6b7280;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.rdp-feedback__chip:hover{border-color:#4f46e5;color:#4f46e5}.rdp-feedback__chip--active{border-color:#4f46e5;background:#eef2ff;color:#4f46e5;font-weight:600}.rdp-feedback__field{position:relative;margin-bottom:.9rem}.rdp-feedback__field textarea{width:100%;padding:.8rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.9rem;font-family:inherit;color:#111827;resize:vertical;min-height:90px;transition:border-color .15s;outline:none;background:#f9fafb;box-sizing:border-box}.rdp-feedback__field textarea:focus{border-color:#4f46e5;background:#fff}.rdp-feedback__char-count{display:block;text-align:right;font-size:.74rem;color:#9ca3af;margin-top:.3rem}.rdp-feedback__submit{background:#4f46e5;color:#fff;border:none;border-radius:8px;padding:.75rem 1.75rem;font-size:.92rem;font-weight:700;cursor:pointer;transition:background .15s;font-family:inherit}.rdp-feedback__submit:hover{background:#4338ca}.rdp-feedback__submit:disabled{opacity:.5;cursor:not-allowed}.rdp-skeleton-wrap{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem 2rem}.rdp-skeleton{width:100%;max-width:540px;height:62px;background:linear-gradient(90deg,#f3f4f6 25%,#e9eaec,#f3f4f6 75%);background-size:200% 100%;border-radius:8px;animation:rdp-shimmer 1.4s infinite}@keyframes rdp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.rdp-error{text-align:center;color:#dc2626;padding:3rem 2rem;font-size:.95rem}@media(max-width:900px){.rdp-layout--panel{padding-right:0}.rdp-panel{position:fixed;inset:auto 0 0;width:100%;height:75vh;border-left:none;border-top:1px solid #e5e7eb;border-radius:16px 16px 0 0;z-index:200}}@media(max-width:640px){.rdp-header{padding:.75rem 1rem;flex-wrap:wrap}.rdp-header__progress{display:none}.rdp-map{padding:1.5rem .75rem 4rem}.rdp-topic-area,.rdp-vline-wrap{width:100%}.rdp-tree-row{flex-direction:column}.rdp-courses-branch{padding-top:0;padding-left:1.5rem;flex-direction:column}.rdp-branch-hconn{display:none}.rdp-topic-node{max-width:100%}}.module-layout-container.srp{position:relative;isolation:isolate;padding-bottom:2rem;font-family:Be Vietnam Pro,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.module-layout-container.srp:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 12% 0%,rgba(163,182,212,.12),transparent 45%),radial-gradient(ellipse 65% 42% at 88% 8%,rgba(143,167,196,.08),transparent 44%),linear-gradient(180deg,#faf9f5,#f5f4ed 42%,#f8f7f2)}.module-layout-container.srp .module-page{position:relative;z-index:1;width:100%;max-width:none;margin:0;padding:0;gap:0}.srp__body-full-width{width:100%}.srp__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.srp__grid-card{display:flex;flex-direction:column;gap:.75rem;border-radius:1rem;border:1px solid #e8e6dc;background:#fff;padding:1rem;text-decoration:none;box-shadow:#0000000a 0 4px 24px;transition:all .2s ease}.srp__grid-card:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #d1cfc5,#00000014 0 8px 30px}.srp__grid-card--generated{border-color:#e8e6dc}.srp__grid-card-top{display:flex;align-items:center;justify-content:space-between}.srp__grid-card-arrow{width:1rem;height:1rem;color:#87867f}.srp__grid-card-title{margin:0;font-family:Playfair Display,Georgia,serif;font-size:1.05rem;font-weight:500;line-height:1.45;color:#141413}.srp__grid-card-meta{margin:0;font-size:.88rem;font-weight:400;line-height:1.6;color:#5e5d59}.srp__grid-progress-wrap{display:flex;align-items:center;gap:.5rem}.srp__grid-progress{height:.45rem;flex:1;background:#e8e6dc;border-radius:999px;overflow:hidden}.srp__grid-progress-fill{height:100%;border-radius:999px;background:#92a7c4;transform-origin:left;transition:transform .5s ease}.srp__grid-progress-pct{font-size:.78rem;font-weight:700;color:#7a8faf}.srp__grid-card-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between}.srp__grid-card-count{font-size:.78rem;font-weight:500;color:#5e5d59}.srp__grid-card-icon{width:1rem;height:1rem;color:#4d4c48}.srp__badge{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .45rem;border-radius:999px;font-size:.68rem;font-weight:600;letter-spacing:.01em}.srp__badge-dot{width:.35rem;height:.35rem;fill:currentColor}.srp__badge--in_progress{background:#f0eee6;color:#4d4c48}.srp__badge--completed{background:#e8e6dc;color:#3d3d3a}.srp__badge--generated{background:#dfe8f4;color:#3d4d63}.srp__badge--archived{background:#f0eee6;color:#5e5d59}.srp__empty{background:#fff;border:1px solid #e8e6dc;border-radius:1rem;padding:2.5rem 1.6rem;text-align:center;box-shadow:#0000000a 0 4px 24px}.srp__empty-icon{width:2.4rem;height:2.4rem;color:#87867f;margin:0 auto .8rem}.srp__empty h3{margin:0 0 .35rem;font-family:Playfair Display,Georgia,serif;font-size:1.15rem;font-weight:500;color:#141413}.srp__empty p{margin:0;font-size:.92rem;color:#5e5d59;line-height:1.6}.srp__skeleton-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.srp__skeleton{border-radius:16px;background:linear-gradient(90deg,#f0eee6 25%,#faf9f5,#f0eee6 75%);background-size:200% 100%;animation:srp-shimmer 1.4s infinite}.srp__skeleton--grid{height:210px}.srp__error-text{margin:0;padding:.9rem 1rem;border-radius:12px;border:1px solid #e8e6dc;background:#faf9f5;color:#b53333;font-size:.95rem}@keyframes srp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:1199px){.srp__grid,.srp__skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.srp__grid,.srp__skeleton-grid{grid-template-columns:1fr}}.search-results-page{max-width:1400px;margin:0 auto}.search-header{margin-bottom:2rem}.search-bar-large{display:flex;align-items:center;gap:1rem;background:#fff;border-radius:16px;padding:.75rem 1.5rem;box-shadow:0 4px 16px #0000001a}.search-bar-large .search-icon{position:static;left:auto;right:auto;top:auto;transform:none;font-size:1.5rem;color:var(--gray-600);flex-shrink:0}.search-bar-large input{flex:1;border:none;font-size:1.125rem;color:var(--gray-900);outline:none}.search-bar-large input::-moz-placeholder{color:var(--gray-500)}.search-bar-large input::placeholder{color:var(--gray-500)}.search-btn{padding:.75rem 2rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s;flex-shrink:0}.search-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.results-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.results-title{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0}.results-title .highlight{color:var(--primary-color)}.results-title .query{color:var(--primary-color);font-style:italic}.sort-filter select{padding:.625rem 1rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer}.sort-filter select:focus{outline:none;border-color:var(--primary-color)}.category-filters{display:flex;gap:.75rem;margin-bottom:2rem;overflow-x:auto;padding-bottom:.5rem}.category-filters::-webkit-scrollbar{height:4px}.category-filters::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:2px}.category-btn{padding:.75rem 1.5rem;border:2px solid var(--gray-300);background:#fff;border-radius:12px;font-size:.9375rem;font-weight:600;color:var(--gray-700);cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.category-btn:hover{border-color:var(--primary-color);transform:translateY(-2px)}.category-btn.active{background:var(--gradient-primary);color:#fff;border-color:transparent}.results-container{margin-bottom:2rem}.results-list{display:flex;flex-direction:column;gap:1.25rem}.result-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:center;transition:all .2s;border:2px solid transparent}.result-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026;border-color:var(--primary-color)}.result-thumbnail{width:80px;height:80px;border-radius:12px;background:var(--gray-100);display:flex;align-items:center;justify-content:center;font-size:2.5rem;flex-shrink:0}.result-card.type-course .result-thumbnail{background:linear-gradient(135deg,#667eea1a,#764ba21a)}.result-card.type-lesson .result-thumbnail{background:linear-gradient(135deg,#43e97b1a,#38f9d71a)}.result-card.type-assignment .result-thumbnail{background:linear-gradient(135deg,#ffc7001a,#ff57221a)}.result-card.type-material .result-thumbnail{background:linear-gradient(135deg,#f093fb1a,#f5576c1a)}.result-content{flex:1;min-width:0}.result-type-badge{display:inline-block;padding:.25rem .75rem;background:var(--gray-100);border-radius:12px;font-size:.813rem;font-weight:600;color:var(--gray-700);margin-bottom:.5rem}.result-title{font-size:1.25rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-description{font-size:.9375rem;color:var(--gray-600);line-height:1.6;margin:0 0 .75rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.result-metadata{font-size:.813rem;color:var(--gray-500);font-weight:600}.result-actions{display:flex;flex-direction:column;gap:.5rem}.action-btn{padding:.625rem 1.25rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.action-btn.primary{background:var(--gradient-primary);color:#fff}.action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.action-btn.secondary{background:#fff;border:2px solid var(--gray-300);color:var(--gray-700)}.action-btn.secondary:hover{border-color:var(--warning-color);color:var(--warning-color)}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a}.empty-icon{font-size:5rem;margin-bottom:1rem;opacity:.5}.empty-state h3{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.empty-state p{font-size:1rem;color:var(--gray-600);margin:0}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-bottom:2rem}.pagination-btn{padding:.625rem 1rem;border:2px solid var(--gray-300);background:#fff;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.pagination-btn:hover{border-color:var(--primary-color);background:#667eea0d}.pagination-pages{display:flex;gap:.25rem;align-items:center}.pagination-page{width:36px;height:36px;border:2px solid var(--gray-300);background:#fff;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.pagination-page:hover{border-color:var(--primary-color)}.pagination-page.active{background:var(--gradient-primary);color:#fff;border-color:transparent}.search-suggestions{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 2px 8px #0000001a}.search-suggestions h3{font-size:1.125rem;font-weight:700;color:var(--gray-900);margin:0 0 1rem}.suggestions-tags{display:flex;flex-wrap:wrap;gap:.75rem}.tag{padding:.5rem 1rem;background:var(--gray-100);border:2px solid var(--gray-300);border-radius:20px;font-size:.875rem;font-weight:600;color:var(--gray-700);cursor:pointer;transition:all .2s}.tag:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}@media(max-width:1024px){.result-card{grid-template-columns:auto 1fr;gap:1rem}.result-actions{grid-column:1 / -1;flex-direction:row}.action-btn{flex:1}}@media(max-width:768px){.search-bar-large{flex-direction:column;align-items:stretch}.search-btn{width:100%}.results-summary{flex-direction:column;align-items:flex-start;gap:1rem}.category-filters{flex-wrap:nowrap;overflow-x:auto}.result-card{grid-template-columns:1fr;text-align:center}.result-thumbnail{margin:0 auto}.result-title{white-space:normal}.result-actions{flex-direction:column}}.ps-page{max-width:100%;margin:0;padding:0;height:100%;background:#f5f4ed}.ps-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem 2rem 0;background:#f5f4ed}.ps-header__title{font-family:Playfair Display,Georgia,serif;font-size:1.625rem;font-weight:500;color:#141413;margin:0 0 .375rem;letter-spacing:-.025em;line-height:1.2}.ps-header__subtitle{font-size:.9375rem;color:#5e5d59;margin:0;line-height:1.5}.ps-header__meta{display:flex;align-items:center;gap:.875rem;flex-shrink:0;padding-top:.25rem}.ps-header__joined{display:flex;align-items:center;gap:.35rem;font-size:.8125rem;color:#87867f}.ps-layout{display:grid;grid-template-columns:256px 1fr;gap:1.75rem;align-items:start;padding:0 2rem 2rem}.ps-nav{background:#faf9f5;border:1px solid #F0EEE6;border-radius:16px;padding:.5rem;box-shadow:#0000000d 0 4px 24px;position:sticky;top:5.25rem;display:flex;flex-direction:column}.ps-nav__items{display:flex;flex-direction:column;gap:2px}.ps-nav__btn{position:relative;display:flex;align-items:center;gap:.75rem;padding:.6875rem .875rem;border:none;background:transparent;border-radius:var(--radius-lg);cursor:pointer;color:var(--gray-600);font-size:.875rem;font-weight:500;font-family:var(--font-heading);text-align:left;width:100%;transition:background var(--transition-fast),color var(--transition-fast)}.ps-nav__btn:hover{background:var(--gray-50);color:var(--gray-900)}.ps-nav__btn--active{background:#eef2ff;color:var(--primary-color);font-weight:600}.ps-nav__icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-md);flex-shrink:0;transition:background var(--transition-fast)}.ps-nav__btn--active .ps-nav__icon{background:#c7d2fe}.ps-nav__label{flex:1;line-height:1.3}.ps-nav__dot{width:6px;height:6px;border-radius:50%;background:var(--primary-color);flex-shrink:0}.ps-nav__id-card{display:flex;align-items:center;gap:.75rem;margin-top:.625rem;padding:.875rem .75rem .625rem;border-top:1px solid var(--gray-100)}.ps-mini-avatar{width:34px;height:34px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;font-size:.75rem;font-weight:700;font-family:var(--font-heading)}.ps-mini-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.ps-nav__id-info{display:flex;flex-direction:column;min-width:0;gap:1px}.ps-nav__id-name{font-size:.8125rem;font-weight:600;color:var(--gray-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ps-nav__id-roles{font-size:.74rem;color:var(--gray-400)}.ps-main{min-width:0}.ps-tab{display:flex;flex-direction:column;gap:1.125rem}.ps-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base)}.ps-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.ps-card__header{padding:1.375rem 1.625rem;border-bottom:1px solid var(--gray-100)}.ps-card__title{font-size:.9375rem;font-weight:650;color:var(--gray-900);margin:0 0 .3rem;letter-spacing:-.015em;font-family:var(--font-heading)}.ps-card__desc{font-size:.84375rem;color:var(--gray-500);margin:0;line-height:1.55}.ps-card__body{padding:1.625rem}.ps-card__actions{padding-top:1.375rem;display:flex;gap:.75rem}.ps-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.125rem}.ps-form-stack{display:flex;flex-direction:column;gap:1.125rem}.ps-skeleton-field{display:flex;flex-direction:column;gap:6px;margin-bottom:1.25rem}.ps-field{display:flex;flex-direction:column;gap:.375rem}.ps-field__label{font-size:.7375rem;font-weight:700;color:var(--gray-700);letter-spacing:.045em;text-transform:uppercase;font-family:var(--font-heading)}.ps-field__required{color:var(--error-color);margin-left:.2rem}.ps-field__wrap{position:relative;display:flex;align-items:center}.ps-field__icon{position:absolute;left:.8125rem;color:var(--gray-400);display:flex;align-items:center;pointer-events:none;z-index:1}.ps-field__right-el{position:absolute;right:.5rem;display:flex;align-items:center}.ps-field__input,.ps-field__select{width:100%;padding:.6875rem .875rem;font-size:.9375rem;color:var(--gray-900);background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:.75rem;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);font-family:var(--font-heading);-moz-appearance:none;appearance:none;-webkit-appearance:none}.ps-field__input--icon{padding-left:2.4375rem}.ps-field__input--right{padding-right:2.75rem}.ps-field__input:focus,.ps-field__select:focus{border-color:var(--primary-color);background:#fff;box-shadow:0 0 0 3px #5b67f124}.ps-field__input:hover:not(:focus):not([readonly]):not(:disabled),.ps-field__select:hover:not(:focus):not(:disabled){border-color:var(--gray-300)}.ps-field--error .ps-field__input,.ps-field--error .ps-field__select{border-color:var(--error-color);background:#fff8f8}.ps-field--error .ps-field__input:focus{box-shadow:0 0 0 3px #ef44441f}.ps-field--readonly .ps-field__input{background:var(--gray-100);color:var(--gray-500);cursor:default;border-style:dashed}.ps-field__error{display:flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--error-color);margin:0;line-height:1.4}.ps-field__hint{font-size:.8rem;color:var(--gray-400);margin:0;line-height:1.4}.ps-field__select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .875rem center;padding-right:2.5rem}.ps-field__select--inline{width:auto;min-width:150px}.ps-eye-btn{background:none;border:none;padding:.375rem;cursor:pointer;color:var(--gray-400);display:flex;align-items:center;border-radius:var(--radius-sm);transition:color var(--transition-fast)}.ps-eye-btn:hover{color:var(--gray-700)}.ps-avatar-row{display:flex;align-items:center;gap:1.75rem;margin-bottom:1.875rem;padding-bottom:1.75rem;border-bottom:1px solid var(--gray-100)}.ps-avatar{position:relative;width:92px;height:92px;border-radius:50%;overflow:hidden;cursor:pointer;flex-shrink:0;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));box-shadow:0 0 0 4px #eef2ff,0 0 0 5px #c7d2fe;border:none;padding:0;transition:box-shadow var(--transition-base)}.ps-avatar:hover{box-shadow:0 0 0 4px #c7d2fe,0 0 0 5px var(--primary-color)}.ps-avatar__img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ps-avatar__initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fff;font-size:1.625rem;font-weight:700;letter-spacing:-.02em;font-family:var(--font-heading)}.ps-avatar__overlay{position:absolute;inset:0;background:#1118278c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;color:#fff;font-size:.725rem;font-weight:600;opacity:0;transition:opacity var(--transition-fast);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ps-avatar:hover .ps-avatar__overlay{opacity:1}.ps-avatar-meta{display:flex;flex-direction:column;gap:.25rem}.ps-avatar-meta__name{font-size:1rem;font-weight:650;color:var(--gray-900);margin:0;font-family:var(--font-heading)}.ps-avatar-meta__username{font-size:.875rem;color:var(--gray-500);margin:0;font-family:Source Code Pro,monospace}.ps-avatar-meta__hint{display:flex;align-items:center;gap:.3rem;font-size:.79375rem;color:var(--gray-400);margin:.3rem 0 0;line-height:1.4}.ps-avatar-edit{display:flex;align-items:flex-end;gap:.75rem;padding:1rem 1.125rem;background:#f5f7ff;border:1px solid #c7d2fe;border-radius:var(--radius-lg);margin-bottom:1.5rem}.ps-avatar-edit .ps-field{flex:1}.ps-btn{display:inline-flex;align-items:center;gap:.4375rem;padding:.625rem 1.1875rem;border-radius:var(--radius-lg);font-size:.875rem;font-weight:600;cursor:pointer;border:1.5px solid transparent;transition:all var(--transition-fast);white-space:nowrap;line-height:1;letter-spacing:-.01em;font-family:var(--font-heading)}.ps-btn:disabled{opacity:.55;cursor:not-allowed}.ps-btn--primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 1px 3px #5b67f147}.ps-btn--primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark);box-shadow:0 4px 14px #5b67f161;transform:translateY(-1px)}.ps-btn--primary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 4px #5b67f147}.ps-btn--ghost{background:transparent;color:var(--gray-600);border-color:var(--gray-200)}.ps-btn--ghost:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-300);color:var(--gray-800)}.ps-btn--sm{padding:.4375rem .8125rem;font-size:.8125rem}@keyframes ps-spin{to{transform:rotate(360deg)}}.ps-spin{animation:ps-spin .65s linear infinite}.ps-role-section{display:flex;flex-direction:column;gap:.5rem;margin-top:1.375rem;padding-top:1.375rem;border-top:1px solid var(--gray-100)}.ps-roles{display:flex;gap:.5rem;flex-wrap:wrap}.ps-role-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.3125rem .75rem;background:#eef2ff;color:var(--primary-color);border-radius:var(--radius-full);font-size:.8125rem;font-weight:600;border:1px solid #c7d2fe;font-family:var(--font-heading)}.ps-badge{display:inline-flex;align-items:center;padding:.28125rem .75rem;border-radius:var(--radius-full);font-size:.78125rem;font-weight:600;letter-spacing:.02em;font-family:var(--font-heading)}.ps-badge--green{background:#dcfce7;color:#15803d}.ps-badge--gray{background:var(--gray-100);color:var(--gray-600)}.ps-badge--red{background:#fef2f2;color:#b91c1c}.ps-info-table{display:flex;flex-direction:column;margin-top:1.375rem;padding-top:1.25rem;border-top:1px solid var(--gray-100)}.ps-info-row{display:flex;align-items:center;justify-content:space-between;padding:.6875rem 0;border-bottom:1px solid var(--gray-50)}.ps-info-row:last-child{border-bottom:none}.ps-info-row__key{font-size:.875rem;color:var(--gray-500)}.ps-info-row__val{font-size:.875rem;font-weight:500;color:var(--gray-800)}.ps-pw-strength{display:flex;align-items:center;gap:.75rem}.ps-pw-meter{display:flex;gap:4px;flex:1}.ps-pw-seg{height:4px;flex:1;background:var(--gray-200);border-radius:2px;transition:background var(--transition-fast)}.ps-strength--1{background:#ef4444}.ps-strength--2{background:#f97316}.ps-strength--3{background:#eab308}.ps-strength--4{background:#22c55e}.ps-strength--5{background:#10b981}.ps-pw-label{font-size:.78125rem;font-weight:600;min-width:5.5rem;text-align:right;font-family:var(--font-heading)}.ps-pw-rules{padding:.9375rem 1.125rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg)}.ps-pw-rules__title{font-size:.8rem;font-weight:700;color:var(--gray-600);margin:0 0 .5625rem;text-transform:uppercase;letter-spacing:.04em}.ps-pw-rules ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.3125rem}.ps-pw-rules li{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--gray-400);transition:color var(--transition-fast)}.ps-pw-rule--ok{color:var(--success-color)!important}.ps-session{display:flex;align-items:center;gap:1rem;padding:.9375rem 1.125rem;background:#f5f7ff;border:1px solid #c7d2fe;border-radius:var(--radius-lg)}.ps-session__icon{width:42px;height:42px;border-radius:var(--radius-lg);background:#eef2ff;color:var(--primary-color);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ps-session__info{flex:1}.ps-session__title{font-size:.9rem;font-weight:600;color:var(--gray-900);margin:0 0 .2rem;font-family:var(--font-heading)}.ps-session__meta{font-size:.82rem;color:var(--gray-500);margin:0}.ps-save-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.125rem;background:#fff;border:1.5px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity var(--transition-base),transform var(--transition-base)}.ps-save-bar--visible{opacity:1;transform:translateY(0);pointer-events:all}.ps-save-bar__msg{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--warning-color);margin:0;font-weight:500}.ps-save-bar__actions{display:flex;gap:.625rem;align-items:center}.ps-toast{position:fixed;top:1.25rem;right:1.25rem;z-index:var(--z-modal);display:flex;align-items:center;gap:.625rem;padding:.8125rem 1.0625rem;border-radius:var(--radius-xl);font-size:.875rem;font-weight:500;box-shadow:var(--shadow-xl);max-width:380px;opacity:0;transform:translate(calc(100% + 2rem));transition:opacity var(--transition-base),transform var(--transition-base);border:1px solid transparent;font-family:var(--font-heading)}.ps-toast--visible{opacity:1;transform:translate(0)}.ps-toast--success{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.ps-toast--error{background:#fff5f5;color:#b91c1c;border-color:#fca5a5}.ps-toast__close{margin-left:auto;background:none;border:none;cursor:pointer;opacity:.55;color:inherit;padding:.125rem;display:flex;border-radius:var(--radius-sm);transition:opacity var(--transition-fast)}.ps-toast__close:hover{opacity:1}.ps-pref-row{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:.25rem 0}.ps-pref-text__title{font-size:.9375rem;font-weight:600;color:var(--gray-900);margin:0 0 .2rem;font-family:var(--font-heading)}.ps-pref-text__desc{font-size:.8375rem;color:var(--gray-500);margin:0}.ps-divider{height:1px;background:var(--gray-100);margin:1.125rem 0}.ps-theme-group{display:flex;border:1.5px solid var(--gray-200);border-radius:var(--radius-lg);overflow:hidden}.ps-theme-btn{padding:.5rem .9375rem;border:none;background:transparent;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--gray-500);transition:all var(--transition-fast);white-space:nowrap;font-family:var(--font-heading)}.ps-theme-btn+.ps-theme-btn{border-left:1.5px solid var(--gray-200)}.ps-theme-btn--active{background:var(--primary-color);color:#fff}.ps-toggles{display:flex;flex-direction:column}.ps-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:.9375rem 0;border-bottom:1px solid var(--gray-100)}.ps-toggle-row:last-child{border-bottom:none}.ps-toggle-row__title{font-size:.9rem;font-weight:600;color:var(--gray-900);margin:0 0 .2rem;font-family:var(--font-heading)}.ps-toggle-row__desc{font-size:.8375rem;color:var(--gray-500);margin:0}.ps-toggle{position:relative;width:44px;height:24px;border-radius:12px;border:none;cursor:pointer;background:var(--gray-300);flex-shrink:0;transition:background var(--transition-fast);padding:0}.ps-toggle--on{background:var(--primary-color)}.ps-toggle__thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:transform var(--transition-fast)}.ps-toggle--on .ps-toggle__thumb{transform:translate(20px)}.ps-prefs-footer{display:flex;justify-content:flex-end}.ps-skeleton{background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:200% 100%;border-radius:var(--radius-md);animation:ps-shimmer 1.4s infinite}@keyframes ps-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:960px){.ps-layout{grid-template-columns:1fr}.ps-nav{position:static;flex-direction:column}.ps-nav__items{flex-direction:row;overflow-x:auto;padding-bottom:.125rem;-ms-overflow-style:none;scrollbar-width:none}.ps-nav__items::-webkit-scrollbar{display:none}.ps-nav__btn{flex-direction:column;gap:.25rem;padding:.625rem .875rem;min-width:80px;text-align:center;font-size:.75rem}.ps-nav__dot,.ps-nav__id-card{display:none}.ps-form-grid{grid-template-columns:1fr}.ps-header{flex-direction:column;align-items:flex-start;gap:.75rem}.ps-avatar-row{flex-direction:column;align-items:flex-start;gap:1.25rem}}.teacher-students-page{max-width:1600px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-actions{display:flex;gap:1rem}.students-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:1rem}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.75rem;flex-shrink:0}.stat-content{flex:1}.stat-value{font-size:2rem;font-weight:800;color:var(--gray-900);line-height:1;margin-bottom:.25rem}.stat-label{font-size:.875rem;color:var(--gray-600)}.students-filters{display:flex;gap:1rem;margin-bottom:2rem}.search-input{flex:1;padding:.75rem 1rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.9375rem;transition:all .2s}.search-input:focus{outline:none;border-color:var(--primary-color)}.filter-select{padding:.75rem 1rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.9375rem;font-weight:600;min-width:200px}.students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.student-card{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 2px 8px #0000001a;transition:all .3s;position:relative;text-align:center;border:2px solid transparent}.student-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026;border-color:var(--primary-color)}.student-card.status-warning{border-color:var(--warning-color)}.warning-badge{position:absolute;top:1rem;right:1rem;padding:.375rem .75rem;background:var(--warning-color);color:#fff;border-radius:12px;font-size:.75rem;font-weight:700}.student-avatar-large{width:80px;height:80px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin:0 auto 1rem}.student-name{font-size:1.25rem;font-weight:700;color:var(--gray-900);margin:0 0 .25rem}.student-email{font-size:.875rem;color:var(--gray-600);margin:0 0 1rem}.student-courses{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem}.course-tag{padding:.375rem .75rem;background:var(--gray-100);border-radius:12px;font-size:.813rem;font-weight:600;color:var(--gray-700)}.student-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.metric{text-align:center}.metric-label{font-size:.75rem;color:var(--gray-600);margin-bottom:.25rem}.metric-value{font-size:1.25rem;font-weight:800;color:var(--gray-900)}.metric-value.good{color:var(--success-color)}.metric-value.normal{color:var(--warning-color)}.metric-value.warning{color:var(--error-color)}.student-progress{margin-bottom:1.5rem}.progress-label{font-size:.813rem;color:var(--gray-600);margin-bottom:.5rem;text-align:left}.progress-bar{height:8px;background:var(--gray-200);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--gradient-primary);border-radius:4px;width:100%;transform-origin:left;transition:transform .3s ease}.student-footer{text-align:center;padding-top:1rem;border-top:1px solid var(--gray-200);margin-bottom:1rem}.last-active{font-size:.813rem;color:var(--gray-600)}.student-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.action-btn{padding:.625rem;border:2px solid var(--primary-color);background:#fff;color:var(--primary-color);border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.action-btn:hover{background:var(--primary-color);color:#fff}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:#fff;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal.large{max-width:900px}.modal-header{padding:1.5rem;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0}.modal-close{width:32px;height:32px;border:none;background:var(--gray-200);border-radius:8px;font-size:1.25rem;cursor:pointer;transition:all .2s}.modal-close:hover{background:var(--gray-300)}.modal-body{padding:1.5rem}.modal-footer{padding:1.5rem;border-top:1px solid var(--gray-200);display:flex;justify-content:flex-end;gap:1rem}.detail-header{display:flex;gap:1.5rem;align-items:center;padding:1.5rem;background:var(--gray-50);border-radius:12px;margin-bottom:1.5rem}.detail-avatar{width:80px;height:80px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;flex-shrink:0}.detail-info h3{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0 0 .25rem}.detail-info p{color:var(--gray-600);margin:0 0 .75rem}.detail-courses{display:flex;gap:.5rem;flex-wrap:wrap}.detail-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.detail-stat{padding:1rem;background:var(--gray-50);border-radius:12px;text-align:center}.detail-stat .stat-label{font-size:.813rem;color:var(--gray-600);margin-bottom:.5rem}.detail-stat .stat-value{font-size:1.125rem;font-weight:700;color:var(--gray-900)}.detail-section{margin-bottom:1.5rem}.detail-section h4{font-size:1rem;font-weight:700;color:var(--gray-900);margin:0 0 1rem}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;gap:1rem;padding:1rem;background:var(--gray-50);border-radius:12px}.activity-icon{width:40px;height:40px;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.activity-content{flex:1}.activity-title{font-weight:600;color:var(--gray-900);margin-bottom:.25rem}.activity-time{font-size:.813rem;color:var(--gray-600)}.detail-actions{display:flex;gap:.75rem}.detail-actions .btn{flex:1}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--gray-700);margin-bottom:.5rem}.form-group input,.form-group textarea{width:100%;padding:.75rem 1rem;border:2px solid var(--gray-300);border-radius:8px;font-size:.9375rem;font-family:inherit;transition:all .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:var(--gray-100);cursor:not-allowed}@media(max-width:1024px){.students-stats{grid-template-columns:repeat(2,1fr)}.students-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.detail-stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.page-header{flex-direction:column;gap:1rem}.header-actions{width:100%;flex-direction:column}.students-stats{grid-template-columns:1fr}.students-filters{flex-direction:column}.filter-select{width:100%}.students-grid{grid-template-columns:1fr}.detail-header{flex-direction:column;text-align:center}.detail-stats-grid{grid-template-columns:1fr}.detail-actions{flex-direction:column}}.wd-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1200;padding:1rem}.wd-modal{background:#fff;border-radius:20px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 64px #00000038;display:flex;flex-direction:column}.wd-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 0}.wd-header__title{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:700;color:#111827}.wd-header__icon{color:#6366f1}.wd-close{background:none;border:none;cursor:pointer;color:#6b7280;padding:.25rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.wd-close:hover{color:#111827;background:#f3f4f6}.wd-steps{display:flex;align-items:center;padding:1.25rem 1.5rem;gap:0}.wd-step{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.wd-step__num{width:24px;height:24px;border-radius:50%;background:#e5e7eb;color:#6b7280;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.wd-step.active .wd-step__num{background:#6366f1;color:#fff}.wd-step.done .wd-step__num{background:#10b981;color:#fff}.wd-step__label{font-size:.8125rem;color:#9ca3af;font-weight:500}.wd-step.active .wd-step__label{color:#6366f1;font-weight:600}.wd-step.done .wd-step__label{color:#10b981}.wd-step__line{flex:1;height:2px;background:#e5e7eb;margin:0 .5rem}.wd-body{padding:0 1.5rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.wd-balance-chip{background:linear-gradient(135deg,#eef2ff,#f0fdf4);border:1px solid #c7d2fe;border-radius:12px;padding:.875rem 1rem;display:flex;align-items:center;justify-content:space-between}.wd-balance-chip__label{font-size:.8125rem;color:#6b7280}.wd-balance-chip__value{font-size:1.0625rem;font-weight:700;color:#4f46e5}.wd-field{display:flex;flex-direction:column;gap:.375rem}.wd-label{font-size:.8125rem;font-weight:600;color:#374151;display:flex;align-items:center}.wd-required{color:#ef4444;margin-left:2px}.wd-input-wrap{position:relative;display:flex;align-items:center}.wd-input{width:100%;padding:.625rem .875rem;border:1.5px solid #e5e7eb;border-radius:10px;font-size:.9375rem;color:#111827;background:#fff;outline:none;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.wd-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.wd-input-suffix{position:absolute;right:.75rem;font-size:.8125rem;color:#9ca3af;pointer-events:none}.wd-select-wrap{position:relative}.wd-select{width:100%;padding:.625rem 2.25rem .625rem .875rem;border:1.5px solid #e5e7eb;border-radius:10px;font-size:.9375rem;color:#111827;background:#fff;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .2s}.wd-select:focus{border-color:#6366f1}.wd-select-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:#6b7280;pointer-events:none}.wd-pw-toggle{position:absolute;right:.75rem;background:none;border:none;cursor:pointer;color:#9ca3af;display:flex;align-items:center;padding:0}.wd-pw-toggle:hover{color:#374151}.wd-error-msg{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:.625rem .875rem;display:flex;align-items:flex-start;gap:.5rem;color:#dc2626;font-size:.8125rem}.wd-btn-primary{width:100%;padding:.75rem;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;border:none;border-radius:12px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:opacity .2s,transform .1s}.wd-btn-primary:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.wd-btn-primary:disabled{opacity:.55;cursor:not-allowed}.wd-btn-ghost{width:100%;padding:.625rem;background:none;border:1.5px solid #e5e7eb;border-radius:12px;font-size:.875rem;color:#6b7280;cursor:pointer;transition:border-color .2s,color .2s}.wd-btn-ghost:hover:not(:disabled){border-color:#6366f1;color:#6366f1}.wd-btn-ghost:disabled{opacity:.55;cursor:not-allowed}.wd-otp-intro{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#374151;font-size:.9375rem}.wd-otp-icon{width:56px;height:56px;background:#eef2ff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#6366f1;margin-bottom:.25rem}.wd-otp-sub{color:#6b7280;font-size:.8125rem;margin:0}.wd-countdown{font-size:1.5rem;font-weight:800;color:#6366f1;font-variant-numeric:tabular-nums}.wd-countdown.urgent{color:#ef4444}.wd-otp-boxes{display:flex;gap:.5rem;justify-content:center}.wd-otp-box{width:48px;height:56px;border:2px solid #e5e7eb;border-radius:10px;text-align:center;font-size:1.375rem;font-weight:700;color:#111827;outline:none;transition:border-color .2s,box-shadow .2s}.wd-otp-box:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.wd-success{align-items:center;text-align:center}.wd-success__icon{color:#10b981}.wd-success__title{font-size:1.25rem;font-weight:700;color:#111827;margin:0}.wd-success__desc{font-size:.875rem;color:#6b7280;margin:0;max-width:360px}.wd-summary{width:100%;background:#f9fafb;border:1px solid #e5e7eb;border-radius:14px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.625rem;text-align:left}.wd-summary__row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.wd-summary__row span:first-child{color:#6b7280}.wd-badge{padding:.2rem .625rem;border-radius:20px;font-size:.75rem;font-weight:600}.wd-badge--pending{background:#dbeafe;color:#1d4ed8}.wbc-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1300;padding:1rem}.wbc-card{background:#fff;border-radius:18px;width:100%;max-width:440px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column}.wbc-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.25rem 1.25rem 0;gap:.75rem}.wbc-header__left{display:flex;align-items:flex-start;gap:.625rem}.wbc-header__icon{color:#6366f1;flex-shrink:0;margin-top:2px}.wbc-header__title{font-size:.875rem;font-weight:800;color:#111827;letter-spacing:.02em}.wbc-header__sub{font-size:.75rem;color:#9ca3af;margin-top:2px}.wbc-header__sub span{color:#6366f1;font-weight:600;font-family:monospace}.wbc-close{background:none;border:none;cursor:pointer;color:#9ca3af;padding:.2rem;border-radius:6px;flex-shrink:0;transition:color .15s}.wbc-close:hover{color:#374151}.wbc-status-banner{margin:1rem 1.25rem 0;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:.625rem 1rem;display:flex;align-items:center;gap:.5rem;color:#15803d;font-size:.875rem;font-weight:700;letter-spacing:.04em}.wbc-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:0}.wbc-section{display:flex;flex-direction:column;gap:.625rem;padding:.75rem 0}.wbc-section__label{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}.wbc-rows{display:flex;flex-direction:column;gap:.5rem}.wbc-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.wbc-row span:first-child{color:#6b7280}.wbc-amount{color:#4f46e5;font-size:1rem}.wbc-mono{font-family:monospace;font-size:.8125rem;color:#374151}.wbc-divider{height:1px;background:#f3f4f6}.wbc-proof-link{display:block;border-radius:10px;overflow:hidden;border:1px solid #e5e7eb}.wbc-proof-img{width:100%;max-height:200px;-o-object-fit:contain;object-fit:contain;display:block;background:#f9fafb}.wbc-note{font-size:.875rem;color:#374151;margin:0;line-height:1.5}.wbc-close-btn{margin:0 1.25rem 1.25rem;padding:.625rem;background:#f3f4f6;border:none;border-radius:10px;font-size:.875rem;font-weight:600;color:#374151;cursor:pointer;transition:background .2s}.wbc-close-btn:hover{background:#e5e7eb}@keyframes cardGlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes shimmer{0%{transform:translate(-100%) skew(-15deg)}to{transform:translate(320%) skew(-15deg)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes skeletonSweep{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes cardPulse{0%,to{opacity:.45}50%{opacity:1}}@keyframes statIn{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.wallet-page{--wallet-accent: #6b8e9e;--wallet-accent-deep: #547e91;--wallet-accent-muted: #8fabba;--wallet-accent-surface: #f1f6f9;margin:0;width:100%;max-width:none;color:#141413;padding:0}.wallet-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.8rem}.wallet-header h1{margin:0;font-size:2rem;font-weight:800;letter-spacing:-.035em;line-height:1.15;color:#141413}.wallet-header p{margin:.3rem 0 0;color:#87867f;font-size:.9rem}.btn-report{display:inline-flex;align-items:center;gap:.45rem;border:1.5px solid #e8e6dc;background:#fff;color:#5e5d59;border-radius:12px;padding:.65rem 1.1rem;font-size:.86rem;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.btn-report:hover{border-color:var(--wallet-accent);color:var(--wallet-accent-deep);transform:translateY(-1px);box-shadow:0 6px 18px #5b829133}.wallet-error-banner{display:flex;align-items:center;gap:.65rem;background:#faf9f5;border:1px solid #e8e6dc;border-left:1px solid rgba(185,28,28,.3);border-radius:16px;padding:.85rem 1rem;margin-bottom:0;color:#b91c1c;font-size:.9rem;font-weight:500;animation:fadeSlideIn .22s ease}.wallet-error-banner>svg{flex-shrink:0}.wallet-error-banner>span{flex:1}.error-dismiss{background:none;border:none;cursor:pointer;color:#be123c;display:flex;padding:.15rem;border-radius:6px;opacity:.7;transition:opacity .15s}.error-dismiss:hover{opacity:1}.wallet-stat-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.wallet-stat-divider{display:none}.wallet-stat-item{display:flex;flex-direction:column;gap:.55rem;padding:1.2rem 1.4rem;background:#fff;border:1.5px solid #e8edf5;border-radius:18px;box-shadow:0 2px 14px #0f172a0a;animation:statIn .35s ease both;transition:box-shadow .2s,transform .2s;position:relative;overflow:hidden}.wallet-stat-item:hover{transform:translateY(-2px);box-shadow:0 8px 28px #4f46e51a}.wallet-stat-item:nth-child(1){animation-delay:.04s}.wallet-stat-item:nth-child(2){animation-delay:.09s}.wallet-stat-item:nth-child(3){animation-delay:.14s}.wallet-stat-item:nth-child(1):before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:18px 0 0 18px;background:linear-gradient(180deg,#6366f1,#4f46e5)}.wallet-stat-item:nth-child(2):before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:18px 0 0 18px;background:linear-gradient(180deg,#10b981,#059669)}.wallet-stat-item:nth-child(3):before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:18px 0 0 18px;background:linear-gradient(180deg,#f59e0b,#d97706)}.wallet-stat-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;padding-left:.5rem}.wallet-stat-value{font-size:1.65rem;font-weight:900;letter-spacing:-.04em;color:#0f172a;line-height:1;padding-left:.5rem}.wallet-stat-value--primary{color:#1e3a8a}.wallet-stat-value--green{color:#059669}.wallet-overview{display:grid;grid-template-columns:360px 1fr;gap:1.25rem;margin-bottom:0;align-items:start}.balance-card-section{display:flex;flex-direction:column;gap:0}.balance-card-tpl-picker{display:flex;align-items:center;gap:.4rem;padding:.4rem .6rem;background:#faf9f5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #e8e6dc;border-radius:12px;margin-bottom:.55rem;box-shadow:#0000000d 0 2px 12px;min-width:0;overflow:hidden}.bc-tpl-label{font-size:.72rem;font-weight:600;color:#64748b;white-space:nowrap;margin-right:.15rem}.bc-tpl-choose-btn{display:inline-flex;align-items:center;gap:.3rem;margin-left:auto;padding:.25rem .6rem;border-radius:8px;border:1.5px solid #141413;background:#141413;color:#faf9f5;font-size:.7rem;font-weight:700;cursor:pointer;transition:background .15s,transform .12s;white-space:nowrap;flex-shrink:0}.bc-tpl-choose-btn:hover{background:#30302e;border-color:#30302e;transform:translateY(-1px)}.balance-card-flip-outer{cursor:pointer;border-radius:24px}.balance-card-flipper{position:relative;height:220px;transform-style:preserve-3d;transition:transform .62s cubic-bezier(.4,.2,.2,1)}.balance-card-flipper.flipped{transform:rotateY(180deg)}.balance-card{position:relative;border-radius:24px;min-height:220px;padding:1.6rem;overflow:hidden;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-size:250% 250%;animation:cardGlow 10s ease infinite;box-shadow:0 24px 60px #4f46e566,0 8px 24px #4f46e53d,inset 0 1px #ffffff2e;display:flex;flex-direction:column}.balance-card--face{position:absolute;inset:0;min-height:unset;backface-visibility:hidden;-webkit-backface-visibility:hidden}.balance-card--back{transform:rotateY(180deg)}.bc-front-hint{font-size:.6rem;color:#fff6;font-style:italic;text-align:right;max-width:90px;line-height:1.4}.bc-mag-stripe{position:absolute;top:18%;left:0;right:0;height:13%;background:#111;z-index:1}.bc-back-stats{display:flex;flex-direction:column;gap:.9rem;margin-top:auto;z-index:2;padding-top:3.5rem}.bc-back-stat{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.4rem}.bc-back-stat__label{font-size:.68rem;color:#ffffff8c;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.bc-back-stat__val{font-size:.92rem;font-weight:800;color:#fff;letter-spacing:-.02em}.bc-back-footer{display:flex;align-items:flex-end;justify-content:space-between;margin-top:1rem;z-index:2}.bc-back-hint{font-size:.6rem;color:#fff6;font-style:italic}.bc-back-brand{font-size:.85rem;font-weight:900;color:#ffffffd9;letter-spacing:.06em;text-transform:uppercase}.balance-card:hover{box-shadow:0 32px 80px #4f46e580,0 14px 36px #4f46e54d,inset 0 1px #ffffff38}.card-noise{position:absolute;inset:0;border-radius:24px;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.78' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px}.card-light{position:absolute;top:-40%;right:-10%;width:65%;height:130%;background:radial-gradient(ellipse at center,rgba(255,255,255,.18) 0%,transparent 68%);pointer-events:none;transform:rotate(-16deg)}.card-top-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:auto}.card-mc-rings{display:flex;align-items:center}.ring-left,.ring-right{width:28px;height:28px;border-radius:50%;display:block}.ring-left{background:#eb001bd9}.ring-right{background:#f79e1bd9;margin-left:-10px}.card-chip{width:36px;height:26px;border-radius:5px;background:linear-gradient(135deg,#fde68a,#f59e0b 42%,#b45309);box-shadow:inset 0 1px #ffffff4d,0 2px 6px #00000040}.card-balance-section{margin-top:1.4rem;flex:1}.card-balance-label{font-size:.7rem;color:#ffffffa6;font-weight:600;letter-spacing:.09em;text-transform:uppercase;margin-bottom:.3rem}.card-balance-skeleton{width:58%;height:2.4rem;border-radius:8px;background:#ffffff26;animation:cardPulse 1.6s ease-in-out infinite}.card-balance-value{font-size:clamp(2rem,3vw,2.8rem);font-weight:900;letter-spacing:-.05em;color:#fff;line-height:1}.card-balance-currency{font-size:1rem;font-weight:600;color:#ffffffa6;letter-spacing:0}.card-footer-row{display:flex;justify-content:space-between;align-items:flex-end;margin-top:1.6rem}.card-number{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.82rem;color:#ffffffe0;letter-spacing:.22em;font-weight:500}.card-holder{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.68rem;color:#ffffff8c;letter-spacing:.14em;margin-top:.2rem;text-transform:uppercase}.card-updated{font-size:.65rem;color:#ffffff73;text-align:right;max-width:90px;line-height:1.4}.wallet-topup-card{background:#fff;border:1px solid #e8e6dc;border-radius:16px;padding:1.6rem;display:flex;flex-direction:column;gap:1.2rem;box-shadow:#0000000d 0 4px 24px,0 0 0 1px #f0eee6e6}.topup-header{display:flex;align-items:center;gap:.6rem}.topup-header h2{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:-.02em;color:#141413;font-family:Playfair Display,Playfair_Display,Georgia,serif}.topup-zap{color:var(--wallet-accent-deep)}.method-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.method-card{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.85rem .5rem;border:1.5px solid #e2e8f0;border-radius:14px;background:#f8fafc;cursor:pointer;transition:all .2s ease}.method-card:hover{border-color:#a5b4fc;background:#eef2ff;transform:translateY(-2px);box-shadow:0 4px 14px #4f46e51a}.method-card.selected{border-color:var(--wallet-accent);background:var(--wallet-accent-surface);box-shadow:0 0 0 3px #5b82911f,0 4px 14px #5b829114}.method-logo{display:flex;align-items:center;justify-content:center}.method-name{font-size:.8rem;font-weight:800;color:#1e293b}.method-sub{font-size:.68rem;color:#64748b;text-align:center}.amount-field{display:flex;flex-direction:column;gap:.45rem}.amount-field label{font-size:.83rem;font-weight:700;color:#374151}.amount-input-wrap{position:relative}.amount-input{width:100%;border:1.5px solid #e2e8f0;border-radius:12px;padding:.9rem 3.8rem .9rem 1rem;font-size:1.65rem;font-weight:900;color:#0f172a;background:#f8fafc;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;letter-spacing:-.03em}.amount-input:focus{outline:none;border-color:var(--wallet-accent);box-shadow:0 0 0 3px #5b82912e;background:#fff}.amount-suffix{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:.78rem;font-weight:700;color:#64748b}.quick-amounts{display:flex;flex-wrap:wrap;gap:.45rem}.quick-pill{border:1.5px solid #e2e8f0;background:#f1f5f9;color:#475569;border-radius:999px;padding:.32rem .85rem;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .18s ease}.quick-pill:hover{border-color:var(--wallet-accent);color:var(--wallet-accent-deep);background:var(--wallet-accent-surface);transform:scale(1.05)}.quick-pill.active{border-color:var(--wallet-accent);background:var(--wallet-accent);color:#faf9f5;box-shadow:0 4px 12px #5b829133}.btn-deposit{position:relative;overflow:hidden;width:100%;border:none;border-radius:14px;padding:0;height:52px;font-size:1rem;font-weight:800;cursor:pointer;color:#faf9f5;background:linear-gradient(135deg,#4d7585 0%,var(--wallet-accent) 48%,#a8c0cb 100%);background-size:200% 100%;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;letter-spacing:.01em;box-shadow:0 6px 20px #5b829142;flex-shrink:0}.btn-deposit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 36px #5b82914d;background-position:100% 0}.btn-deposit:active:not(:disabled){transform:translateY(0)}.btn-deposit:disabled{opacity:.9;cursor:not-allowed}@keyframes depositPulse{0%,to{box-shadow:0 6px 20px #4f46e561}50%{box-shadow:0 10px 36px #4f46e5a6}}.btn-deposit-processing{position:relative;display:flex;align-items:center;justify-content:center;gap:.55rem;height:52px;border-radius:14px;background:#f1f5f9;border:1.5px solid #e2e8f0;overflow:hidden}.btn-deposit-processing__text{font-size:.9rem;font-weight:600;color:#64748b;letter-spacing:.01em}.btn-deposit-processing__bar{position:absolute;bottom:0;left:0;height:3px;width:40%;background:linear-gradient(90deg,var(--wallet-accent-deep),var(--wallet-accent-muted));border-radius:0 2px 2px 0;animation:progressSweep 1.4s ease-in-out infinite}@keyframes progressSweep{0%{left:-40%;width:40%}50%{left:60%;width:40%}to{left:100%;width:40%}}.spinner--sm{width:16px;height:16px;border-width:2px;border-color:#64748b4d;border-top-color:var(--wallet-accent)}.btn-deposit.success{background:linear-gradient(135deg,#059669,#10b981);box-shadow:0 6px 20px #05966959}.btn-shimmer{position:absolute;top:0;left:0;width:38%;height:100%;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.22) 50%,transparent 80%);animation:shimmer 3s ease-in-out infinite}.btn-deposit.loading .btn-shimmer{display:none}.spinner{display:inline-block;width:18px;height:18px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .65s linear infinite;flex-shrink:0}.btn-loading-label{display:flex;align-items:center;gap:.65rem;font-size:.95rem;font-weight:700;letter-spacing:.02em;opacity:.95}.btn-loading-dots{display:inline-flex;gap:3px;align-items:center}.btn-loading-dots span{width:4px;height:4px;border-radius:50%;background:#fffc;animation:dotBounce 1.2s ease-in-out infinite}.btn-loading-dots span:nth-child(2){animation-delay:.2s}.btn-loading-dots span:nth-child(3){animation-delay:.4s}@keyframes dotBounce{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1.2);opacity:1}}.trust-badge{display:flex;align-items:center;justify-content:center;gap:.42rem;color:#64748b;font-size:.73rem;font-weight:500;padding:.52rem;background:#f8fafc;border-radius:10px;border:1px solid #e8edf5}.trust-badge svg{color:#10b981;flex-shrink:0}.transactions-panel{background:#fff;border:1px solid #e8e6dc;border-radius:16px;overflow:hidden;box-shadow:#0000000d 0 4px 24px,0 0 0 1px #f0eee6e6}.transactions-head{padding:1rem 1.25rem;border-bottom:1px solid #f0eee6;background:#faf9f5}.transactions-head h2{margin:0;font-size:1.1rem;font-weight:800;color:#141413;letter-spacing:-.022em}.transactions-head p{margin:.18rem 0 0;font-size:.82rem;color:#87867f}.transactions-head p strong{color:#2ead7a}.transaction-list{padding:.25rem 0}.tx-skeleton{height:72px;margin:.3rem 1.4rem;border-radius:14px;background:linear-gradient(90deg,#f1f5f9 25%,#e8edf5,#f1f5f9 75%);background-size:400% 100%;animation:skeletonSweep 1.6s ease-in-out infinite}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1.5rem;text-align:center;gap:.6rem}.empty-icon{color:#c7d2fe;margin-bottom:.5rem}.empty-state h3{margin:0;font-size:1.1rem;font-weight:800;color:#1e293b}.empty-state p{margin:0;font-size:.88rem;color:#64748b;max-width:300px}.btn-empty-cta{margin-top:.6rem;border:none;background:linear-gradient(135deg,#547e91,var(--wallet-accent));color:#faf9f5;border-radius:999px;padding:.65rem 1.5rem;font-size:.88rem;font-weight:700;cursor:pointer;transition:all .2s}.btn-empty-cta:hover{transform:translateY(-2px);box-shadow:0 6px 18px #5b829138}.tx-row{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #f8fafc;transition:background .14s ease;cursor:default}.tx-row:hover{background:#faf9f5}.tx-row:last-child{border-bottom:none}.tx-icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tx-icon-wrap.deposit{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.tx-icon-wrap.payment{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.tx-info{flex:1;min-width:0}.tx-title{font-size:.92rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tx-meta{display:flex;align-items:center;gap:.35rem;margin-top:.18rem}.tx-code{font-family:SF Mono,Consolas,monospace;font-size:.72rem;color:#64748b;font-weight:500}.tx-sep{color:#cbd5e1;font-size:.75rem}.tx-time{font-size:.72rem;color:#94a3b8}.tx-right{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem;flex-shrink:0}.tx-amount{font-size:1rem;font-weight:800;letter-spacing:-.025em}.tx-amount.positive{color:#059669}.tx-amount.negative{color:#dc2626}.tx-balance{font-size:.76rem;font-weight:600;color:#475569}.tx-status-badge{display:inline-flex;align-items:center;padding:.16rem .6rem;border-radius:999px;font-size:.7rem;font-weight:700}.tx-status-badge.completed{background:#d1fae5;color:#047857}.tx-status-badge.pending{background:#fef3c7;color:#b45309}.tx-status-badge.failed{background:#fee2e2;color:#b91c1c}.tx-status-badge.cancelled{background:#f1f5f9;color:#64748b}.tx-bill-btn{background:none;border:1.5px solid #e5e7eb;border-radius:7px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6366f1;transition:border-color .15s,background .15s;flex-shrink:0}.tx-bill-btn:hover:not(:disabled){border-color:#6366f1;background:#f0f0ff}.tx-bill-btn:disabled{opacity:.5;cursor:not-allowed}.tx-bill-spin{width:12px;height:12px;border:2px solid #c7d2fe;border-top-color:#6366f1;border-radius:50%;animation:tx-bill-spin .7s linear infinite;display:inline-block}@keyframes tx-bill-spin{to{transform:rotate(360deg)}}.tx-countdown{display:inline-flex;align-items:center;padding:.14rem .55rem;border-radius:999px;font-size:.68rem;font-weight:700;font-family:Courier New,monospace;letter-spacing:.04em;background:#fff7ed;color:#c2410c;border:1px solid #fed7aa;gap:.2rem}.tx-countdown:before{content:"⏱";font-size:.65rem}.tx-countdown--expired{background:#fef2f2;color:#9f1239;border-color:#fecaca}.tx-countdown--expired:before{content:""}.transactions-footer{padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#faf9f5;border-top:1px solid #f0eee6}.transactions-footer span{font-size:.82rem;color:#64748b}.pagination{display:inline-flex;gap:.35rem}.pagination button{display:inline-flex;align-items:center;justify-content:center;border:1.5px solid #e2e8f0;background:#fff;color:#334155;min-width:34px;height:34px;padding:0 .4rem;border-radius:9px;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .18s ease}.pagination button:hover:not(:disabled){border-color:var(--wallet-accent);color:var(--wallet-accent-deep);background:var(--wallet-accent-surface)}.pagination button.active{background:var(--wallet-accent);border-color:var(--wallet-accent);color:#faf9f5;box-shadow:0 3px 10px #5b829133}.pagination button:disabled{opacity:.38;cursor:not-allowed}@media(max-width:1024px){.wallet-overview{grid-template-columns:1fr}.balance-card{min-height:200px}}@media(max-width:768px){.wallet-stat-strip{grid-template-columns:1fr;gap:.75rem}.wallet-header{flex-direction:column;align-items:flex-start}}@keyframes sectionSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.payos-section{background:#f8fafc;border:1.5px solid #e8edf5;border-radius:16px;overflow:hidden;animation:sectionSlideIn .22s ease;transition:border-color .18s}.payos-section__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1.1rem;background:none;border:none;cursor:pointer;text-align:left;transition:background .15s}.payos-section__header:hover{background:#f1f5f9}.payos-section__header:focus{outline:none}.payos-section__header:focus-visible{outline:none}.payos-section__header-left{display:flex;align-items:center;gap:.45rem;font-size:.82rem;font-weight:700;color:#374151}.payos-section__chevron{color:#94a3b8;flex-shrink:0;transition:transform .22s ease}.payos-section__chevron.open{transform:rotate(180deg)}.payos-section__selected-tag{display:inline-flex;align-items:center;padding:.1rem .45rem;border-radius:20px;font-size:.67rem;font-weight:700;letter-spacing:.03em;margin-left:.1rem}.payos-bank-body{display:flex;flex-direction:column;gap:.65rem;padding:0 1.1rem 1rem;animation:sectionSlideIn .18s ease}.payos-section__optional{font-size:.74rem;font-weight:500;color:#94a3b8}.bank-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.bank-chip{display:flex;flex-direction:column;align-items:center;gap:.35rem;border:1.5px solid #e2e8f0;background:#fff;border-radius:12px;padding:.6rem .25rem .5rem;cursor:pointer;transition:all .18s ease}.bank-chip:hover{border-color:#a5b4fc;background:#f8f8ff;transform:translateY(-2px);box-shadow:0 4px 12px #4f46e51a}.bank-chip.selected{transform:translateY(-2px);box-shadow:0 4px 14px #0000001f}.bank-chip__icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;overflow:hidden;transition:box-shadow .15s ease}.bank-chip__name{font-size:.62rem;font-weight:700;color:#334155;text-align:center;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;padding:0 2px}.payos-note{display:flex;align-items:center;gap:.4rem;margin:0;font-size:.73rem;color:#64748b;font-weight:500}.payos-note svg{flex-shrink:0;color:#4f46e5}.card-preview-section{display:flex;flex-direction:column;gap:0;animation:sectionSlideIn .22s ease}.card-template-picker{display:flex;align-items:center;gap:.55rem;padding:.5rem 0 .65rem}.card-tpl-swatch{width:24px;height:24px;border-radius:50%;border:2.5px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s;box-shadow:0 2px 6px #00000038;flex-shrink:0}.card-tpl-swatch:hover{transform:scale(1.18)}.card-tpl-swatch.active{border-color:#fff;transform:scale(1.22);box-shadow:0 0 0 3px #6366f173}.card-tpl-hint{font-size:.7rem;color:#94a3b8;font-weight:600;margin-left:2px;letter-spacing:.03em}.card-flip-container{width:100%;aspect-ratio:1.586 / 1;perspective:1100px;cursor:pointer}.card-flipper{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .62s cubic-bezier(.4,.2,.2,1)}.card-flipper.flipped{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;border-radius:18px;padding:1.2rem 1.4rem;overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:space-between;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 24px 60px #00000047,0 8px 20px #0000002e;-webkit-user-select:none;-moz-user-select:none;user-select:none}.card-face--back{transform:rotateY(180deg)}.cp-mag-stripe{position:absolute;top:18%;left:0;right:0;height:13%;background:#1a1a1a;z-index:1}.cp-sig-row{display:flex;align-items:stretch;gap:.5rem;z-index:2;margin-top:auto}.cp-sig-strip{flex:1;background:repeating-linear-gradient(0deg,#e2e8f0 0px 3px,#f8fafc 3px 6px);border-radius:5px;padding:.3rem .5rem;display:flex;flex-direction:column;justify-content:flex-end}.cp-sig-text{font-size:.52rem;color:#94a3b8;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.cp-cvv-box{width:52px;background:#fff;border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.25rem;gap:1px}.cp-cvv-label{font-size:.5rem;color:#64748b;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.cp-cvv-val{font-family:SF Mono,Courier New,monospace;font-size:.75rem;font-weight:800;color:#1e293b;letter-spacing:.15em}.cp-back-footer{display:flex;align-items:center;justify-content:space-between;z-index:2}.cp-back-hint{font-size:.6rem;color:#ffffff73;font-weight:600;letter-spacing:.04em}.card-preview{position:relative;width:100%;aspect-ratio:1.586 / 1;border-radius:18px;padding:1.2rem 1.4rem;overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 24px 60px #00000047,0 8px 20px #0000002e;-webkit-user-select:none;-moz-user-select:none;user-select:none}.card-preview--visa{background:linear-gradient(135deg,#0f1f6b,#1a3099 45%,#1565c0)}.card-preview--mastercard{background:linear-gradient(135deg,#1a1a2e,#2d2d44 45%,#3d3d5c)}.cp-deco-circle{position:absolute;border-radius:50%;pointer-events:none}.cp-pattern{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.cp-deco-circle--1{width:220px;height:220px;top:-80px;right:-60px;background:#ffffff0f}.cp-deco-circle--2{width:140px;height:140px;bottom:-40px;left:-30px;background:#ffffff0a}.cp-top-row{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.cp-chip{position:relative;width:44px;height:33px;background:linear-gradient(135deg,#d4af37,#f5d020 35%,#d4af37 65%,#c8a000);border-radius:7px;box-shadow:0 2px 6px #00000040,inset 0 1px #ffffff4d}.cp-chip-h{position:absolute;top:50%;left:0;right:0;height:1px;background:#0000002e;transform:translateY(-50%)}.cp-chip-v{position:absolute;left:50%;top:0;bottom:0;width:1px;background:#00000026;transform:translate(-50%)}.cp-contactless{opacity:.65;color:#fff}.cp-number{font-family:SF Mono,Courier New,Consolas,monospace;font-size:clamp(.85rem,3.5vw,1.1rem);font-weight:600;letter-spacing:.22em;color:#ffffffeb;position:relative;z-index:1}.cp-bottom-row{display:flex;align-items:flex-end;gap:1.2rem;position:relative;z-index:1}.cp-field{display:flex;flex-direction:column;gap:.18rem}.cp-field-label{font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;color:#ffffff80;font-weight:600}.cp-field-value{font-size:.82rem;font-weight:700;color:#ffffffeb;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.cp-field-value--mono{font-family:SF Mono,Consolas,monospace;letter-spacing:.12em}.cp-logo-wrap{margin-left:auto;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.cp-overlay{position:absolute;inset:0;z-index:10;background:#0a0f28a6;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;text-align:center;padding:1rem}.cp-overlay p{margin:0;font-size:.82rem;font-weight:600;color:#ffffffd9}.card-inputs-blur{background:#f8fafc;border:1.5px solid #e8edf5;border-top:none;border-radius:0 0 16px 16px;padding:1rem;display:flex;flex-direction:column;gap:.7rem;opacity:.45;filter:blur(1.5px);-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.cs-badge{display:inline-flex;align-items:center;background:linear-gradient(135deg,#92400e,#b45309);color:#fff;font-size:.72rem;font-weight:800;padding:.28rem .85rem;border-radius:999px;letter-spacing:.05em;text-transform:uppercase}.card-form__field{display:flex;flex-direction:column;gap:.3rem}.card-form__field label{font-size:.75rem;font-weight:700;color:#64748b;letter-spacing:.04em;text-transform:uppercase}.card-form__field input{border:1.5px solid #e2e8f0;border-radius:10px;padding:.7rem .9rem;font-size:.95rem;font-weight:600;color:#334155;background:#fff;outline:none;font-family:SF Mono,Consolas,monospace;letter-spacing:.05em;width:100%;box-sizing:border-box}.card-form__row{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.btn-deposit.disabled-method{background:linear-gradient(135deg,#94a3b8,#64748b);box-shadow:none;cursor:not-allowed;opacity:.7}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.sw-modal-overlay{position:fixed;inset:0;z-index:1000;background:#0f172a8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeSlideIn .2s ease}.sw-confirm-modal{position:relative;background:#fff;border-radius:24px;width:100%;max-width:420px;overflow:hidden;box-shadow:0 32px 80px #0f172a38,0 8px 32px #0f172a1f;animation:modalIn .28s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column}.sw-modal-close{position:absolute;top:1rem;right:1rem;background:#fff3;border:none;border-radius:8px;padding:.38rem;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;transition:all .15s ease;z-index:2}.sw-modal-close:hover{background:#ffffff4d}.sw-modal-hero{background:linear-gradient(145deg,#1e3a8a,#3730a3 40%,#4f46e5);padding:2rem 2rem 1.75rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.25rem}.sw-modal-hero__label{font-size:.72rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.12em}.sw-modal-hero__amount{font-size:2.8rem;font-weight:800;color:#fff;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.sw-modal-hero__currency{font-weight:700;margin-left:.2rem;opacity:.85;vertical-align:super;font-size:1rem}.sw-modal-hero__sub{font-size:.78rem;color:#ffffff8c;font-weight:400;margin-top:.2rem;letter-spacing:.01em}.sw-bill-card{padding:1.4rem 1.6rem;display:flex;flex-direction:column;gap:0}.sw-bill-row2{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem 0;border-bottom:1px solid #f1f5f9}.sw-bill-row2:last-child{border-bottom:none}.sw-bill-row2__label{font-size:.8rem;color:#94a3b8;font-weight:500;letter-spacing:.01em}.sw-bill-row2__val{display:flex;align-items:center;gap:.45rem;font-size:.85rem;font-weight:600;color:#1e293b;flex-wrap:nowrap;justify-content:flex-end}.sw-bill-row2__val--bank{gap:.5rem}.sw-bill-row2__method-txt{font-size:.82rem;color:#334155;font-weight:600}.sw-payos-badge{display:inline-flex;align-items:center;gap:.25rem;background:linear-gradient(135deg,#0052cc,#06f);color:#fff;font-size:.7rem;font-weight:800;padding:.22rem .65rem;border-radius:999px;letter-spacing:.04em}.sw-bill-bank-icon{width:28px;height:28px;border-radius:7px;background:#fff;border:1.5px solid #e2e8f0;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.sw-free-badge{background:#dcfce7;color:#166534;font-size:.75rem;font-weight:700;padding:.2rem .65rem;border-radius:999px;border:1px solid #bbf7d0}.sw-bill-sep{height:2px;background:linear-gradient(90deg,transparent,#e2e8f0,transparent);margin:.25rem 0}.sw-bill-total-row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0 .25rem;font-size:.82rem;font-weight:600;color:#64748b}.sw-bill-total-val{font-size:1.3rem;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";color:#0ea5e9}.sw-security-note{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:0 1.6rem 1rem;font-size:.73rem;color:#64748b;font-weight:500}.sw-security-note svg{color:#16a34a;flex-shrink:0}.sw-modal-actions{display:flex;gap:.65rem;padding:0 1.6rem 1.6rem}.sw-modal-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:none;border-radius:12px;padding:.82rem 1.25rem;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s ease;flex:1}.sw-modal-btn--cancel{background:#f1f5f9;color:#475569;border:1.5px solid #e2e8f0}.sw-modal-btn--cancel:hover{background:#e2e8f0;color:#0f172a}.sw-modal-btn--confirm{background:linear-gradient(135deg,#059669,#10b981);color:#fff;box-shadow:0 4px 16px #10b98159;white-space:nowrap}.sw-modal-btn--confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 22px #10b98173}.sw-modal-btn--confirm:disabled{opacity:.7;cursor:not-allowed}@media(max-width:640px){.bank-grid{grid-template-columns:repeat(3,1fr)}.sw-modal-hero{padding:1.6rem 1.4rem 1.4rem}.sw-modal-hero__amount{font-size:2rem}.sw-bill-card{padding:1rem 1.2rem}.sw-modal-actions{padding:0 1.2rem 1.2rem;flex-direction:column-reverse}}.sw-pending-warning{max-width:380px;padding:0}.sw-pw-icon{text-align:center;font-size:2.6rem;padding:1.8rem 1.5rem .4rem;line-height:1}.sw-pw-title{text-align:center;font-size:1.05rem;font-weight:800;color:#1e293b;margin:0 1.5rem .6rem}.sw-pw-body{font-size:.85rem;color:#64748b;line-height:1.6;margin:0 1.5rem .5rem;text-align:center}.sw-pw-body strong{color:#c2410c}.sw-pending-warning .sw-modal-actions{padding:1rem 1.5rem 1.5rem}.bc-tpl-more-btn{width:24px;height:24px;border-radius:50%;border:2px dashed #94a3b8;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.72rem;color:#94a3b8;font-weight:700;letter-spacing:-1px;flex-shrink:0;transition:border-color .15s,color .15s,transform .15s;padding:0;line-height:1}.bc-tpl-more-btn:hover{border-color:#6366f1;color:#6366f1;transform:scale(1.15)}.bc-tpl-more-dot{display:block;width:14px;height:14px;border-radius:50%;box-shadow:0 0 0 2px #6366f166}.bc-tpl-modal-overlay{z-index:1100;align-items:center}.bc-tpl-modal{position:relative;background:#fff;border-radius:20px;width:100%;max-width:560px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 32px 80px #0f172a40,0 8px 32px #0f172a1f;animation:modalIn .28s cubic-bezier(.22,1,.36,1)}.bc-tpl-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem .75rem;border-bottom:1px solid #f1f5f9;flex-shrink:0}.bc-tpl-modal-title{font-size:1rem;font-weight:800;color:#1e293b}.bc-tpl-modal .sw-modal-close{position:static;background:#f1f5f9;color:#475569;border-radius:8px;font-size:1.1rem;width:28px;height:28px;padding:0}.bc-tpl-modal .sw-modal-close:hover{background:#e2e8f0;color:#1e293b}.bc-tpl-modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding:1rem 1.25rem 1.25rem;overflow-y:auto}.bc-tpl-card-btn{position:relative;background:none;border:2px solid transparent;border-radius:14px;cursor:pointer;padding:0;transition:transform .18s,border-color .18s;overflow:hidden}.bc-tpl-card-btn:hover{transform:translateY(-3px) scale(1.03);border-color:#e2e8f0}.bc-tpl-card-btn.active{border-color:#6366f1;box-shadow:0 0 0 3px #6366f140}.bc-tpl-card-preview{position:relative;width:100%;aspect-ratio:1.586 / 1;border-radius:11px;overflow:hidden;display:flex;align-items:flex-end;padding:.5rem .6rem}.bc-tpl-card-name{position:relative;z-index:1;font-size:.65rem;font-weight:700;color:#ffffffe6;text-shadow:0 1px 4px rgba(0,0,0,.4);letter-spacing:.04em}.bc-tpl-card-check{position:absolute;top:.35rem;right:.35rem;background:#6366f1;color:#fff;font-size:.6rem;font-weight:900;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #6366f180}.bc-tpl-cat-tabs{display:flex;gap:.4rem;padding:0 1.25rem .75rem;flex-wrap:wrap}.bc-tpl-cat-tab{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .7rem;border-radius:20px;border:1.5px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.bc-tpl-cat-tab:hover{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}.bc-tpl-cat-tab.active{background:#6366f1;border-color:#6366f1;color:#fff}.bc-tpl-cat-count{background:#ffffff40;border-radius:10px;padding:.05rem .35rem;font-size:.65rem;font-weight:700}.bc-tpl-cat-tab:not(.active) .bc-tpl-cat-count{background:#e2e8f0;color:#64748b}.bc-tpl-card-cat-badge{position:absolute;top:.35rem;left:.35rem;background:#00000073;color:#ffffffd9;font-size:.55rem;font-weight:700;padding:.1rem .35rem;border-radius:6px;letter-spacing:.03em;z-index:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.bc-tpl-preview-pane{padding:0 1.25rem .75rem;border-bottom:1px solid #f1f5f9;margin-bottom:.25rem}.bc-tpl-preview-label{font-size:.78rem;color:#64748b;margin-bottom:.6rem}.bc-tpl-preview-label strong{color:#1e293b}.bc-tpl-preview-faces{display:flex;gap:.75rem;justify-content:center}.bc-tpl-preview-face-wrap{flex:1;min-width:0;max-width:260px}.bc-tpl-face-hint{display:block;font-size:.68rem;font-weight:600;color:#94a3b8;text-align:center;margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.06em}.bc-tpl-preview-card{position:relative;width:100%;aspect-ratio:1.586 / 1;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:.55rem .7rem;box-shadow:0 4px 16px #00000047}.bc-tpl-pcard-chip{width:22px;height:16px;border-radius:3px;background:linear-gradient(135deg,#f0d080,#c8a840,#f0d080);border:.5px solid rgba(255,255,255,.15);box-shadow:0 1px 3px #0000004d}.bc-tpl-pcard-body{flex:1;display:flex;flex-direction:column;justify-content:flex-end}.bc-tpl-pcard-label{font-size:.5rem;color:#fff9;letter-spacing:.04em;margin-bottom:.1rem}.bc-tpl-pcard-balance{font-size:.72rem;font-weight:800;color:#ffffffe6;letter-spacing:.02em}.bc-tpl-pcard-footer{display:flex;justify-content:space-between;align-items:flex-end}.bc-tpl-pcard-num{font-size:.55rem;color:#ffffffa6;font-family:monospace;letter-spacing:.08em}.bc-tpl-pcard-brand{font-size:.52rem;font-weight:700;color:#ffffffb3;letter-spacing:.06em}.bc-tpl-preview-card--back{justify-content:flex-start}.bc-tpl-pcard-stripe{width:calc(100% + 1.4rem);height:22px;background:#0000008c;margin:-.55rem -.7rem .5rem}.bc-tpl-pcard-stats{display:flex;flex-direction:column;gap:.15rem;flex:1}.bc-tpl-pcard-stat{display:flex;justify-content:space-between;font-size:.52rem;color:#ffffffa6}.bc-tpl-pcard-stat span:last-child{color:#fffc;font-weight:600}.bc-tpl-pcard-back-footer{font-size:.5rem;color:#ffffff8c;text-align:right;letter-spacing:.06em;font-weight:600}.bc-tpl-preview-actions{display:flex;gap:.6rem;margin-top:.75rem}.bc-tpl-preview-cancel{flex:1;padding:.5rem;border-radius:10px;border:1.5px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .15s}.bc-tpl-preview-cancel:hover{background:#f1f5f9}.bc-tpl-preview-apply{flex:2;padding:.5rem;border-radius:10px;border:none;background:linear-gradient(135deg,#6366f1,#d97757);color:#fff;font-size:.78rem;font-weight:700;cursor:pointer;box-shadow:0 3px 10px #6366f159;transition:opacity .15s,transform .15s}.bc-tpl-preview-apply:hover{opacity:.92;transform:translateY(-1px)}.bc-tpl-modal-grid{padding:.5rem 1.25rem 1.25rem}.wallet-tabs-header{display:flex;flex-direction:column;gap:.5rem}.wallet-tabs{display:flex;gap:1.5rem;border-bottom:2px solid #e2e8f0;margin-bottom:.5rem}.wallet-tab{background:none;border:none;padding:.75rem .5rem;font-size:1.1rem;font-weight:700;color:#64748b;cursor:pointer;position:relative;transition:all .2s}.wallet-tab:hover,.wallet-tab.active{color:#1e3a8a}.wallet-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#1e3a8a;border-radius:2px}.order-row{border-top:1px solid #e8e6dc}.tx-icon-wrap.payment{background:#f3f0ff;color:#8b5cf6}.wd-row{border-top:1px solid #e8e6dc}.wd-filter-bar{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;padding:.75rem 1.25rem;border-bottom:1px solid #f0eee6;background:#faf9f5}.wd-filter-label{flex-shrink:0;font-family:Be Vietnam Pro,Be_Vietnam_Pro,system-ui,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#87867f}.wd-filter-segments{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:.25rem;min-width:0;padding:.25rem;border-radius:12px;background:#f5f4ed}.wd-filter-chip{margin:0;padding:.45rem .65rem;border-radius:8px;border:none;background:transparent;font-family:Be Vietnam Pro,Be_Vietnam_Pro,system-ui,sans-serif;font-size:.75rem;font-weight:600;color:#87867f;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.wd-filter-chip:hover{color:#141413;background:#ffffff8c}.wd-filter-chip.active{background:#fff;color:#141413;box-shadow:0 1px 2px #1414130f,0 0 0 1px #e8e6dce6}.wd-filter-chip:focus-visible{outline:none;box-shadow:0 0 0 2px #3898ec59}.wd-acct-name{color:#374151;font-weight:500;font-size:.8125rem}.wd-admin-note{font-size:.75rem;color:#6b7280;margin-top:.25rem;font-style:italic}.wd-actions{display:flex;gap:.25rem;margin-top:.25rem}.wd-cancel-btn{color:#ef4444!important}.wd-cancel-btn:hover:not(:disabled){border-color:#ef4444!important;background:#fef2f2!important}.tx-status-badge{display:inline-block;padding:.2rem .625rem;border-radius:20px;font-size:.75rem;font-weight:600}.tx-amount.negative{color:#ef4444}.tx-status-badge.completed{background:#dcfce7;color:#15803d}.tp-page{font-family:var(--f-body, -apple-system, sans-serif);color:var(--c-text-2, #3f3a52);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0}.tp-card{background:#fff;border-radius:20px;box-shadow:0 4px 8px #0e0c1508,0 8px 24px #0e0c150f;overflow:hidden;border:1px solid #f0edf8}.tp-card-header{padding:1.75rem 2rem 1.5rem;border-bottom:1px solid #f0edf8;background:linear-gradient(135deg,#fafaff,#f5f3ff);position:relative}.tp-card-header:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#c96442,#ff98e2);border-radius:20px 0 0 20px}.tp-card-header__top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.tp-card-header__title{font-family:Be Vietnam Pro,-apple-system,sans-serif;font-size:1.5rem;font-weight:700;color:#0e0c15;margin:0 0 .3rem;letter-spacing:-.5px;line-height:1.25}.tp-card-header__subtitle{font-size:.85rem;color:#756b85;margin:0;line-height:1.5;max-width:520px}.tp-gradient-text{color:#c96442}.tp-status-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .8rem;border-radius:100px;font-size:.72rem;font-weight:700;letter-spacing:.2px;white-space:nowrap;flex-shrink:0}.tp-status-badge--pending{background:#fef9c3;color:#854d0e;border:1px solid #fde68a}.tp-status-badge--approved{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.tp-status-badge--rejected{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.tp-card-body{padding:1.75rem 2rem}.tp-alert{display:flex;align-items:flex-start;gap:.6rem;padding:.8rem 1rem;border-radius:12px;margin-bottom:1.25rem;font-size:.855rem;line-height:1.55}.tp-alert__icon{flex-shrink:0;font-size:.9rem;margin-top:.1rem}.tp-alert--error{background:#fff5f5;color:#9b1c1c;border:1px solid #fecdd3}.tp-alert--success{background:#f0fff4;color:#14532d;border:1px solid #bbf7d0}.tp-alert--warning{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.tp-alert--info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.tp-section-label{font-size:.68rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#9991a8;margin:0 0 .875rem;display:flex;align-items:center;gap:.5rem}.tp-section-label:after{content:"";flex:1;height:1px;background:#f0edf8}.tp-info-grid{background:#fafaff;border:1px solid #f0edf8;border-radius:14px;overflow:hidden;margin-bottom:1.5rem}.tp-info-row{display:grid;grid-template-columns:150px 1fr;align-items:baseline;padding:.7rem 1.25rem;border-bottom:1px solid #f0edf8;gap:1rem;transition:background .15s ease}.tp-info-row:last-child{border-bottom:none}.tp-info-row:hover{background:#f5f3ff}.tp-info-label{font-size:.78rem;font-weight:600;color:#756b85;text-transform:uppercase;letter-spacing:.3px}.tp-info-value{font-size:.875rem;color:#0e0c15;font-weight:500;word-break:break-word;line-height:1.5}.tp-info-value a{color:#c96442;text-decoration:none;font-weight:500}.tp-info-value a:hover{text-decoration:underline}.tp-info-value--muted{color:#9991a8;font-style:italic;font-weight:400}.tp-admin-comment{background:#fffbeb;border:1px solid #fde68a;box-shadow:inset 3px 0 #f59e0b;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.5rem}.tp-admin-comment__title{font-size:.78rem;font-weight:700;color:#92400e;text-transform:uppercase;letter-spacing:.5px;margin:0 0 .5rem}.tp-admin-comment__text{font-size:.875rem;color:#78350f;margin:0;line-height:1.6}.tp-ocr-card{background:#fff;border:1px solid #fecaca;box-shadow:inset 3px 0 #ef4444,0 2px 8px #ef444414;border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.5rem}.tp-ocr-card__header{display:flex;align-items:flex-start;gap:.875rem;margin-bottom:1rem}.tp-ocr-card__icon{flex-shrink:0;width:2rem;height:2rem;background:#ef4444;color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:800;line-height:1;margin-top:.1rem}.tp-ocr-card__title{font-size:.9375rem;font-weight:700;color:#111827;margin:0 0 .25rem}.tp-ocr-card__subtitle{font-size:.8125rem;color:#6b7280;margin:0;line-height:1.5}.tp-ocr-fields{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.5rem}.tp-ocr-field{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:#f9fafb;border-radius:8px}.tp-ocr-field__label{font-size:.875rem;color:#374151;font-weight:500}.tp-ocr-field__badge{font-size:.75rem;font-weight:700;padding:.2rem .625rem;border-radius:999px;letter-spacing:.3px}.tp-ocr-field__badge--valid{background:#dcfce7;color:#15803d}.tp-ocr-field__badge--failed{background:#fee2e2;color:#b91c1c}.tp-ocr-card__actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.tp-ocr-card__btn{padding:.5rem 1.125rem;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s}.tp-ocr-card__btn:hover{background:#1d4ed8}.tp-ocr-card__dismiss{background:none;border:none;color:#9ca3af;font-size:.875rem;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px;transition:color .15s}.tp-ocr-card__dismiss:hover{color:#6b7280}.tp-form{display:flex;flex-direction:column;gap:1.25rem}.tp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:640px){.tp-form-grid{grid-template-columns:1fr}}.tp-form-group{display:flex;flex-direction:column;gap:.375rem}.tp-label{display:flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;color:#3f3a52;letter-spacing:.1px}.tp-required{color:#ef4444;font-size:.75rem}.tp-input,.tp-textarea{padding:.6rem .875rem;border:1.5px solid #e8e5f0;border-radius:10px;font-size:.875rem;font-family:Be Vietnam Pro,-apple-system,sans-serif;color:#0e0c15;background:#fff;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;width:100%;box-sizing:border-box}.tp-input::-moz-placeholder,.tp-textarea::-moz-placeholder{color:#c4bfcf}.tp-input::placeholder,.tp-textarea::placeholder{color:#c4bfcf}.tp-input:focus,.tp-textarea:focus{outline:none;border-color:#c96442;box-shadow:0 0 0 3px #5e5ce61a;background:#fafaff}.tp-input:disabled,.tp-textarea:disabled{background:#f8f7fc;color:#756b85;cursor:not-allowed}.tp-input--readonly{background:#f5f3ff;color:#756b85;cursor:not-allowed;border-style:dashed;border-color:#d4d0e8}.tp-textarea{min-height:100px;resize:vertical;line-height:1.55}.tp-form-hint{font-size:.775rem;color:#756b85;margin:0;line-height:1.45}.tp-file-zone{border:2px dashed #d4d0e8;border-radius:14px;padding:1.75rem 1.5rem;text-align:center;cursor:pointer;transition:all .25s ease;background:#fafaff;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tp-file-zone:hover{border-color:#c96442;background:#f5f3ff}.tp-file-zone--filled{border-color:#22c55e;border-style:solid;background:#f0fff4}.tp-file-zone__icon{display:flex;justify-content:center;margin-bottom:.625rem;color:#9991a8;transition:color .2s ease}.tp-file-zone:hover .tp-file-zone__icon{color:#c96442}.tp-file-zone--filled .tp-file-zone__icon{color:#16a34a}.tp-file-zone__title{font-size:.875rem;font-weight:600;color:#3f3a52;margin:0 0 .2rem}.tp-file-zone__subtitle{font-size:.78rem;color:#9991a8;margin:0}.tp-file-zone__files{display:flex;flex-direction:column;gap:.3rem;align-items:center}.tp-file-zone__file-name{font-size:.8rem;font-weight:600;color:#166534;background:#d1fae5;border-radius:6px;padding:.2rem .6rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-file-zone__file-count{font-size:.75rem;color:#6b7280;margin-top:.1rem}.tp-actions{display:flex;gap:.625rem;padding-top:.5rem;flex-wrap:wrap}.tp-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.575rem 1.25rem;border-radius:100px;font-size:.835rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:1px solid transparent;text-decoration:none;font-family:Be Vietnam Pro,-apple-system,sans-serif;white-space:nowrap;letter-spacing:-.1px;line-height:1}.tp-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.tp-btn--primary{background:#c96442;color:#fff;border-color:#c96442;box-shadow:0 1px 2px #0e0c150a}.tp-btn--primary:hover:not(:disabled){background:#4e4cc6;border-color:#4e4cc6;box-shadow:0 4px 24px #c964423d;transform:translateY(-1px)}.tp-btn--ghost{background:transparent;color:#3f3a52;border-color:#e8e5f0}.tp-btn--ghost:hover:not(:disabled){background:#f5f3ff;border-color:#c4bfcf;color:#0e0c15}.tp-btn--danger{background:#fff5f5;color:#dc2626;border-color:#fecdd3}.tp-btn--danger:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5}.tp-btn--large{padding:.7rem 1.625rem;font-size:.875rem}.tp-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:3rem 2rem;color:#756b85;font-size:.875rem}.tp-loading__spinner{width:18px;height:18px;border:2px solid #e8e5f0;border-top-color:#c96442;border-radius:50%;animation:tp-spin .7s linear infinite;flex-shrink:0}@keyframes tp-spin{to{transform:rotate(360deg)}}.tp-success-card{text-align:center;padding:3rem 2rem}.tp-success-card__icon{width:56px;height:56px;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;font-size:1.4rem;color:#166534}.tp-success-card__title{font-family:Be Vietnam Pro,-apple-system,sans-serif;font-size:1.25rem;font-weight:700;color:#0e0c15;margin:0 0 .375rem;letter-spacing:-.3px}.tp-success-card__subtitle{font-size:.875rem;color:#756b85;margin:0}@media(max-width:768px){.tp-card-header,.tp-card-body{padding-left:1.25rem;padding-right:1.25rem}.tp-card-header__title{font-size:1.25rem}.tp-info-row{grid-template-columns:110px 1fr;padding:.625rem 1rem;gap:.75rem}.tp-info-label{font-size:.72rem}.tp-actions{flex-direction:column}.tp-btn{width:100%;justify-content:center}}body.profile-active .sidebar,body.profile-active aside.sidebar{display:none!important}body.profile-active .main-content,body.profile-active main,body.profile-active .dashboard-layout{margin-left:0!important;width:100%!important;max-width:100%!important}.profile-navbar{position:fixed;top:0;left:0;right:0;height:70px;background:#fff;border-bottom:1px solid #e2e8f0;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa}.profile-navbar-content{max-width:1200px;margin:0 auto;height:100%;padding:0 2rem;display:flex;align-items:center;justify-content:space-between}.profile-navbar h1{font-size:1.375rem;color:#1e293b;margin:0;font-weight:600;letter-spacing:-.01em}.back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:transparent;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.back-button:hover{background:#f8fafc;border-color:#cbd5e1;color:#475569}.profile-page{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:0;margin-top:70px;margin-left:0!important;width:100vw!important}.profile-container{max-width:1400px;margin:0 auto;padding:2rem 2.5rem;display:flex;gap:1.5rem}.profile-sidebar{flex:0 0 220px;background:#fff;border-radius:16px;padding:1rem;box-shadow:0 1px 3px #0000000d;border:1px solid #e8e5f0;height:-moz-fit-content;height:fit-content;position:sticky;top:90px}.profile-sidebar h2{font-size:.75rem;color:#9ca3af;margin:0 0 .5rem;padding:0 .5rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.profile-nav{display:flex;flex-direction:column;gap:.375rem}.profile-nav-item{display:flex;align-items:center;gap:.625rem;padding:.625rem .75rem;border:none;background:transparent;border-radius:10px;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;text-align:left;position:relative;width:100%}.profile-nav-item:hover{background:#f5f3ff;color:#3f3a52}.profile-nav-item.active{background:#eef2ff;color:#c96442;font-weight:600}.profile-nav-item .nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-content{flex:1;background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000000d;border:1px solid #e2e8f0;overflow:hidden;min-height:600px}.loading{text-align:center;padding:4rem 2rem;color:#64748b;font-size:.9375rem}.profile-content .ps-page{max-width:none;padding:0;margin:0}.profile-content .teacher-profile-page,.profile-content>div{max-width:100%;margin:0;padding:2.5rem;background:transparent}.profile-content .profile-card{box-shadow:none;border:none;border-radius:0;padding:0}.profile-content .profile-header{border-bottom:1px solid #e2e8f0;padding-bottom:1.5rem;margin-bottom:2rem}.profile-content .profile-header h1{font-size:1.75rem;color:#1e293b;font-weight:600;letter-spacing:-.02em}@media(max-width:1024px){.profile-container{padding:2rem 1.5rem;gap:1.5rem}.profile-sidebar{flex:0 0 220px;padding:1.25rem}.profile-content .teacher-profile-page,.profile-content>div{padding:2rem}}@media(max-width:768px){.profile-navbar-content{padding:0 1.5rem}.profile-navbar h1{font-size:1.125rem}.back-button{padding:.5rem .875rem;font-size:.8125rem}.profile-container{flex-direction:column;padding:1.5rem 1rem;gap:1.25rem}.profile-sidebar{flex:none;position:static;padding:1rem}.profile-sidebar h2{font-size:.875rem;margin-bottom:1rem}.profile-nav{flex-direction:row;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;-webkit-overflow-scrolling:touch}.profile-nav::-webkit-scrollbar{height:4px}.profile-nav::-webkit-scrollbar-track{background:#f1f5f9;border-radius:2px}.profile-nav::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.profile-nav-item{white-space:nowrap;padding:.75rem 1rem;font-size:.875rem}.profile-nav-item .nav-icon{font-size:1.125rem}.profile-content{border-radius:12px}.profile-content .teacher-profile-page,.profile-content>div{padding:1.5rem}.profile-content .profile-header h1{font-size:1.5rem}}@media(max-width:640px){.profile-navbar{height:60px}.profile-navbar-content{padding:0 1rem}.profile-navbar h1{font-size:1rem}.back-button{padding:.5rem .75rem;font-size:.75rem}.profile-page{margin-top:60px}.profile-container{padding:1rem .75rem}.profile-sidebar{border-radius:12px;padding:.875rem}.profile-sidebar h2{font-size:.8125rem;margin-bottom:.875rem}.profile-nav{gap:.375rem}.profile-nav-item{padding:.625rem .875rem;font-size:.8125rem;gap:.625rem}.profile-nav-item .nav-icon{font-size:1rem}.profile-content{border-radius:12px}.profile-content .teacher-profile-page,.profile-content>div{padding:1.25rem}.profile-content .profile-header{padding-bottom:1rem;margin-bottom:1.5rem}.profile-content .profile-header h1{font-size:1.25rem}}@media(max-width:360px){.profile-navbar-content{padding:0 .75rem}.profile-container{padding:.75rem .5rem}.profile-content .teacher-profile-page,.profile-content>div{padding:1rem}.profile-nav-item{padding:.5rem .75rem;font-size:.75rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.profile-container{animation:fadeIn .3s ease-out}@media print{.profile-navbar,.back-button,.profile-sidebar{display:none!important}.profile-page{margin-top:0;background:#fff}.profile-content{box-shadow:none;border:none}}.aas-page{position:relative}.aas-page__bg{position:absolute;inset:0;pointer-events:none;background:#f5f4ed}.aas-page__content{position:relative;z-index:1;display:grid;gap:2rem;padding-top:0}.aas-layout{display:grid;gap:1.5rem;grid-template-columns:minmax(340px,1fr) minmax(420px,1.2fr)}.aas-tree-shell,.aas-editor-shell{border-radius:1rem;border:1px solid #f0eee6;background:#faf9f5;box-shadow:#0000000d 0 4px 24px;transition:all .2s ease}.aas-tree-shell{display:grid;grid-template-rows:auto auto 1fr;min-height:620px}.aas-tree-shell:hover,.aas-editor-shell:hover{box-shadow:0 0 0 1px #d1cfc5,#00000014 0 8px 30px}.aas-tree-shell__head,.aas-editor-shell__head{padding:1.25rem;border-bottom:1px solid #f0eee6;display:flex;justify-content:space-between;align-items:center;gap:1rem}.aas-tree-shell__head h2,.aas-editor-shell__head h2{margin:0;display:inline-flex;align-items:center;gap:.5rem;color:#141413;font-family:Playfair Display,Georgia,serif;font-size:1.125rem;font-weight:500;line-height:1.3}.aas-tree-shell__head span{font-size:.75rem;color:#87867f;border:1px solid #e8e6dc;background:#faf9f5;border-radius:999px;padding:.375rem .75rem;font-weight:500;letter-spacing:.05em}.aas-editor-shell__head p{margin:0;color:#87867f;font-size:.875rem;text-align:right;font-family:Be Vietnam Pro,system-ui,sans-serif}.aas-tree{overflow:auto;padding:.875rem}.aas-tree-node{display:grid;gap:.5rem}.aas-tree-node+.aas-tree-node{margin-top:.5rem}.aas-tree-children{margin-left:.75rem;padding-left:.875rem;border-left:1px solid #e8e6dc;display:grid;gap:.5rem}.aas-node-btn{width:100%;border:1px solid #e8e6dc;background:#fff;color:#141413;border-radius:.75rem;padding:.5rem .625rem;display:inline-flex;align-items:center;gap:.5rem;text-align:left;font-size:.875rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-weight:400;cursor:pointer;transition:all .15s ease}.aas-node-btn:hover{border-color:#93c5fd;background:#f8fbff;box-shadow:0 0 0 1px #d1cfc5}.aas-node-btn.is-active{border-color:#0284c7;background:#ecfeff;box-shadow:0 0 0 2px #0284c729;color:#0284c7;font-weight:500}.aas-node-btn.is-draft{border-style:dashed;border-color:#93c5fd;background:#f8fbff;color:#0369a1}.aas-node-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aas-editor-tabs{display:flex;gap:.5rem;padding:.875rem 1.25rem 0;flex-wrap:wrap;border-bottom:1px solid #f0eee6}.aas-editor-tabs button{border:1px solid #e8e6dc;background:transparent;color:#5e5d59;border-radius:.75rem;padding:.5rem .875rem;font-size:.875rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-weight:500;cursor:pointer;transition:all .15s ease}.aas-editor-tabs button:hover:not(:disabled){border-color:#93c5fd;color:#0284c7;background:#f0f9ff}.aas-editor-tabs button.is-active{border-color:#0284c7;background:#0284c7;color:#fff;box-shadow:0 0 0 1px #0284c7}.aas-editor-tabs button:disabled{opacity:.4;cursor:not-allowed}.aas-editor-card{padding:1.25rem}.aas-draft-preview{padding:.75rem 1.25rem 0;display:flex;align-items:center;gap:.5rem}.aas-draft-preview__label{font-size:.78rem;color:#64748b;font-family:Be Vietnam Pro,system-ui,sans-serif}.aas-draft-preview__chip{border:1px dashed #93c5fd;border-radius:.7rem;background:#f8fbff;color:#0369a1;padding:.4rem .6rem;display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-family:Be Vietnam Pro,system-ui,sans-serif;max-width:100%}.aas-draft-preview__chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aas-form{display:grid;gap:.875rem}.aas-form__title{font-size:1.125rem;color:#141413;font-family:Playfair Display,Georgia,serif;font-weight:500;margin:0 0 .5rem;line-height:1.3}.aas-form input,.aas-form select,.aas-form textarea{width:100%;border-radius:.75rem;border:1px solid #e8e6dc;padding:.625rem .75rem;font-size:.875rem;font-family:Be Vietnam Pro,system-ui,sans-serif;background:#fff;color:#141413;box-sizing:border-box;transition:all .15s ease}.aas-form input::-moz-placeholder,.aas-form select::-moz-placeholder,.aas-form textarea::-moz-placeholder{color:#87867f}.aas-form input::placeholder,.aas-form select::placeholder,.aas-form textarea::placeholder{color:#87867f}.aas-form input:focus,.aas-form select:focus,.aas-form textarea:focus{outline:none;border-color:#3898ec;box-shadow:0 0 0 3px #3898ec1f}.aas-form textarea{min-height:80px;resize:vertical}.aas-search-wrap{border:1px solid #e8e6dc;border-radius:.75rem;display:flex;align-items:center;gap:.5rem;padding:0 .75rem;background:#fff;transition:all .15s ease}.aas-search-wrap:focus-within{border-color:#3898ec;box-shadow:0 0 0 3px #3898ec1f}.aas-search-wrap svg{color:#87867f;flex-shrink:0}.aas-search-wrap input{border:none;padding:.625rem 0;padding-left:0;padding-right:0;background:transparent}.aas-search-wrap input:focus{outline:none}.aas-inline-2{display:grid;gap:.875rem;grid-template-columns:1fr 1fr}.aas-check{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;color:#5e5d59;font-family:Be Vietnam Pro,system-ui,sans-serif;-webkit-user-select:none;-moz-user-select:none;user-select:none}.aas-check input{width:auto;cursor:pointer}.aas-actions{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:.5rem}.aas-actions button{border:1px solid #0369a1;background:#0369a1;color:#fff;border-radius:.75rem;padding:.5rem .875rem;display:inline-flex;align-items:center;gap:.375rem;font-size:.875rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-weight:500;cursor:pointer;transition:all .15s ease}.aas-actions button:hover:not(:disabled){background:#025f8a;border-color:#025f8a;transform:translateY(-1px);box-shadow:0 0 0 1px #0369a1}.aas-actions button:active:not(:disabled){transform:scale(.98)}.aas-actions button.ghost{border-color:#d1d5db;background:#fff;color:#1f2937}.aas-actions button.ghost:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af;color:#111827}.aas-actions button.danger{border-color:#b53333;background:#b53333}.aas-actions button.danger:hover:not(:disabled){background:#9a2828;border-color:#9a2828}.aas-actions button:disabled{opacity:.5;cursor:not-allowed}.aas-helper{margin:.875rem 0 0;padding:.75rem;background:#f5f4ed;border:1px solid #e8e6dc;border-radius:.75rem;font-size:.875rem;color:#5e5d59;font-family:Be Vietnam Pro,system-ui,sans-serif}.aas-empty{margin:1rem 0;padding:.875rem;text-align:center;color:#87867f;font-size:.875rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-style:italic}.aas-helper{margin:0;color:#b45309;font-size:.78rem}.aas-empty{margin:0;padding:.5rem .6rem;border:1px dashed #cbd5e1;border-radius:.58rem;color:#64748b;font-size:.78rem}@media(max-width:1200px){.aas-layout{grid-template-columns:1fr}.aas-tree-shell{min-height:420px}.aas-editor-shell__head{display:grid;gap:.25rem;justify-content:start}.aas-editor-shell__head p{text-align:left}}@media(max-width:640px){.aas-inline-2{grid-template-columns:1fr}}:root{--ocr-bg: #f5f4ed;--ocr-surface: #faf9f5;--ocr-surface-2: #ffffff;--ocr-primary: #c96442;--ocr-primary-soft: rgba(201, 100, 66, .08);--ocr-primary-mid: rgba(201, 100, 66, .15);--ocr-text-main: #141413;--ocr-text-body: #5e5d59;--ocr-text-muted: #87867f;--ocr-border: #f0eee6;--ocr-border-warm: #e8e6dc;--ocr-ring: #d1cfc5;--ocr-shadow-sm: rgba(0, 0, 0, .05) 0px 4px 24px;--ocr-shadow-card: 0px 0px 0px 1px #e8e6dc, rgba(0, 0, 0, .04) 0px 4px 20px;--ocr-radius: 12px;--ocr-radius-sm: 8px;--ocr-radius-lg: 16px}.ocr-books-page{padding:2rem 2.5rem;background:var(--ocr-bg);min-height:100vh;font-family:Be Vietnam Pro,system-ui,sans-serif;color:var(--ocr-text-main)}.ocr-page-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--ocr-border)}.ocr-header-stack{display:flex;flex-direction:column;gap:.3rem}.ocr-page-title{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:2.25rem;font-weight:700;letter-spacing:-.01em;line-height:1.2;color:var(--ocr-text-main);margin:0}.ocr-page-subtitle{color:var(--ocr-text-muted);font-size:.9375rem;line-height:1.6;margin:0}.ocr-header-actions{display:flex;align-items:center;gap:.75rem}.ocr-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.625rem 1.125rem;border-radius:var(--ocr-radius-sm);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s,transform .1s;border:none;text-decoration:none}.ocr-btn:active{transform:scale(.97)}.ocr-btn-primary{background:var(--ocr-primary);color:#faf9f5;box-shadow:0 0 0 1px var(--ocr-primary)}.ocr-btn-primary:hover{background:#b8573a}.ocr-btn-ghost{background:var(--ocr-surface-2);color:var(--ocr-text-main);box-shadow:0 0 0 1px var(--ocr-border-warm)}.ocr-btn-ghost:hover{background:var(--ocr-border)}.ocr-btn-danger{background:transparent;color:#b53333;box-shadow:0 0 0 1px #e8cece}.ocr-btn-danger:hover{background:#b5333312}.ocr-btn-sm{padding:.35rem .75rem;font-size:.8125rem;font-weight:500}.ocr-upload-section{background:var(--ocr-surface);border:1px solid var(--ocr-border);border-radius:var(--ocr-radius-lg);padding:2rem;margin-bottom:2rem;box-shadow:var(--ocr-shadow-sm)}.ocr-upload-heading{font-family:Playfair Display,Georgia,serif;font-size:1.125rem;font-weight:500;color:var(--ocr-text-main);margin:0 0 1.25rem;display:flex;align-items:center;gap:.5rem}.ocr-upload-body{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}@media(max-width:768px){.ocr-upload-body{grid-template-columns:1fr}}.ocr-dropzone{border:2px dashed var(--ocr-border-warm);border-radius:var(--ocr-radius);padding:2.5rem 1.5rem;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;background:var(--ocr-bg);position:relative}.ocr-dropzone:hover,.ocr-dropzone--over{border-color:var(--ocr-primary);background:var(--ocr-primary-soft)}.ocr-dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.ocr-dropzone-icon{color:var(--ocr-primary);margin-bottom:.75rem}.ocr-dropzone-title{font-size:.9375rem;font-weight:600;color:var(--ocr-text-main);margin:0 0 .25rem}.ocr-dropzone-hint{font-size:.8125rem;color:var(--ocr-text-muted);margin:0}.ocr-dropzone-file{margin-top:.75rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.875rem;color:var(--ocr-primary);font-weight:500}.ocr-upload-fields{display:flex;flex-direction:column;gap:1rem}.ocr-field-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ocr-text-muted);margin-bottom:.35rem;display:block}.ocr-field-input,.ocr-field-select{width:100%;padding:.625rem .875rem;border:1px solid var(--ocr-border-warm);border-radius:var(--ocr-radius-sm);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9375rem;color:var(--ocr-text-main);background:var(--ocr-surface-2);transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.ocr-field-input:focus,.ocr-field-select:focus{outline:none;border-color:var(--ocr-primary);box-shadow:0 0 0 3px var(--ocr-primary-soft)}.ocr-upload-submit{margin-top:.5rem}.ocr-upload-progress{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--ocr-border)}.ocr-progress-label{font-size:.875rem;font-weight:500;color:var(--ocr-text-body);margin-bottom:.5rem;display:flex;justify-content:space-between}.ocr-progress-track{height:6px;background:var(--ocr-border-warm);border-radius:99px;overflow:hidden}.ocr-progress-fill{width:100%;height:100%;background:var(--ocr-primary);border-radius:99px;transform-origin:left;transition:transform .4s ease}.ocr-progress-fill--pulse{animation:ocrPulse 1.8s ease-in-out infinite}@keyframes ocrPulse{0%,to{opacity:1}50%{opacity:.5}}.ocr-filters{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.ocr-filter-label{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ocr-text-muted)}.ocr-filter-chip{padding:.3rem .875rem;border-radius:99px;border:1px solid var(--ocr-border-warm);background:var(--ocr-surface-2);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;font-weight:500;color:var(--ocr-text-body);cursor:pointer;transition:all .15s}.ocr-filter-chip:hover{border-color:var(--ocr-primary);color:var(--ocr-primary)}.ocr-filter-chip--active{background:var(--ocr-primary);border-color:var(--ocr-primary);color:#faf9f5}.ocr-books-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.ocr-empty{text-align:center;padding:4rem 2rem;color:var(--ocr-text-muted)}.ocr-empty-icon{margin:0 auto 1rem;color:var(--ocr-border-warm)}.ocr-empty-text{font-size:.9375rem}.ocr-book-thumb{position:relative;width:calc(100% + 2.75rem);margin:-1.25rem -1.375rem 0;height:230px;border-radius:var(--ocr-radius-lg) var(--ocr-radius-lg) 0 0;overflow:hidden;cursor:pointer;flex-shrink:0;background:#1a1714}.ocr-book-thumb-bg{position:absolute;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);-o-object-fit:cover;object-fit:cover;filter:blur(18px) brightness(.45) saturate(1.3);z-index:0;pointer-events:none}.ocr-book-thumb-img{position:relative;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block;z-index:1;filter:drop-shadow(0 4px 18px rgba(0,0,0,.5));transition:transform .28s ease}.ocr-book-thumb:hover .ocr-book-thumb-img{transform:scale(1.03)}.ocr-book-thumb-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#2e2b25,#4a3f35 40%,#c96442);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#ffffff8c;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ocr-book-thumb-placeholder svg{color:#ffffff59}.ocr-book-thumb-overlay{position:absolute;inset:0;background:#00000085;display:flex;align-items:center;justify-content:center;gap:7px;color:#fff;font-size:.8125rem;font-weight:600;opacity:0;transition:opacity .18s}.ocr-book-thumb:hover .ocr-book-thumb-overlay{opacity:1}.ocr-book-card{background:var(--ocr-surface);border:1px solid var(--ocr-border);border-radius:var(--ocr-radius-lg);padding:1.25rem 1.375rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:var(--ocr-shadow-sm);transition:box-shadow .2s,border-color .2s}.ocr-book-card:hover{box-shadow:var(--ocr-shadow-card);border-color:var(--ocr-border-warm)}.ocr-book-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.ocr-grade-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .6rem;background:var(--ocr-primary-soft);border:1px solid var(--ocr-primary-mid);border-radius:99px;font-size:.75rem;font-weight:700;color:var(--ocr-primary);letter-spacing:.02em;flex-shrink:0}.ocr-status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .6rem;border-radius:99px;font-size:.75rem;font-weight:600;flex-shrink:0}.ocr-status-badge--pending{background:#f5f5f0;color:var(--ocr-text-muted);border:1px solid var(--ocr-border-warm)}.ocr-status-badge--processing{background:#c964421a;color:var(--ocr-primary);border:1px solid var(--ocr-primary-mid);animation:ocrStatusPulse 1.5s ease-in-out infinite}@keyframes ocrStatusPulse{0%,to{opacity:1}50%{opacity:.65}}.ocr-status-badge--done{background:#5e5d5914;color:#3d6b4f;border:1px solid rgba(61,107,79,.2)}.ocr-status-badge--error{background:#b5333312;color:#b53333;border:1px solid rgba(181,51,51,.2)}.ocr-book-card-title{font-family:Playfair Display,Georgia,serif;font-size:1.0625rem;font-weight:500;color:var(--ocr-text-main);line-height:1.35;margin:0}.ocr-book-publisher{font-size:.8125rem;color:var(--ocr-text-muted);margin:0}.ocr-card-progress{display:flex;flex-direction:column;gap:.3rem}.ocr-card-progress-bar{height:5px;background:var(--ocr-border-warm);border-radius:99px;overflow:hidden}.ocr-card-progress-fill{width:100%;height:100%;background:var(--ocr-primary);border-radius:99px;transform-origin:left;transition:transform .5s ease}.ocr-card-progress-text{display:flex;justify-content:space-between;font-size:.75rem;color:var(--ocr-text-muted)}.ocr-card-stats{display:flex;gap:1rem}.ocr-card-stat{display:flex;flex-direction:column;gap:.1rem}.ocr-card-stat-value{font-size:1.125rem;font-weight:700;color:var(--ocr-text-main);font-variant-numeric:tabular-nums}.ocr-card-stat-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ocr-text-muted);font-weight:500}.ocr-card-error{font-size:.8125rem;color:#b53333;background:#b533330f;border:1px solid rgba(181,51,51,.15);border-radius:var(--ocr-radius-sm);padding:.5rem .75rem}.ocr-card-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.25rem;border-top:1px solid var(--ocr-border)}.ocr-export-row{display:flex;gap:.4rem}.ocr-loading{display:flex;align-items:center;justify-content:center;padding:5rem;color:var(--ocr-text-muted);gap:.75rem;font-size:.9375rem}.ocr-spinner{width:20px;height:20px;border:2.5px solid var(--ocr-border-warm);border-top-color:var(--ocr-primary);border-radius:50%;animation:ocrSpin .7s linear infinite}@keyframes ocrSpin{to{transform:rotate(360deg)}}.ocr-upload-toggle{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;font-weight:600;color:var(--ocr-text-body);padding:.5rem .875rem;border-radius:var(--ocr-radius-sm);transition:background .15s}.ocr-upload-toggle:hover{background:var(--ocr-border)}.ocr-stats-bar{display:flex;gap:1.5rem;align-items:center;margin-bottom:1.5rem}.ocr-stat-chip{display:flex;align-items:center;gap:.45rem;font-size:.875rem;color:var(--ocr-text-body)}.ocr-stat-chip-value{font-weight:700;color:var(--ocr-text-main)}.ocr-delete-confirm{background:#b533330f;border:1px solid rgba(181,51,51,.15);border-radius:var(--ocr-radius-sm);padding:.625rem .875rem;font-size:.8125rem;color:#b53333;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ocr-delete-confirm span{flex:1;min-width:0}.ocr-book-card{position:relative;overflow:hidden}.ocr-book-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.ocr-book-card-badges{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ocr-book-card-header-actions{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.ocr-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--ocr-radius-sm);border:none;cursor:pointer;transition:background .15s,color .15s;flex-shrink:0;font-size:0}.ocr-icon-btn--edit{background:#eef1f8;color:#3d5a8a}.ocr-icon-btn--edit:hover{background:#dde5f5;color:#2a4070}.ocr-icon-btn--danger{background:#b533331a;color:#b53333}.ocr-icon-btn--danger:hover{background:#b5333333;color:#8f1f1f}.ocr-book-card-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:-.25rem}.ocr-book-year{font-size:.75rem;color:var(--ocr-text-muted);background:var(--ocr-border);padding:.1rem .45rem;border-radius:99px}.ocr-card-divider{height:1px;background:var(--ocr-border);margin:.25rem 0}.ocr-delete-overlay{position:absolute;inset:0;background:#faf9f5f5;border-radius:var(--ocr-radius-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem;text-align:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10}.ocr-delete-overlay-msg{font-size:.9375rem;color:var(--ocr-text-main);margin:0}.ocr-delete-overlay-sub{font-size:.8125rem;color:var(--ocr-text-muted);margin:0 0 .5rem}.ocr-delete-overlay-btns{display:flex;gap:.5rem}.ocr-modal-backdrop{position:fixed;inset:0;background:#14141373;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.ocr-modal{background:var(--ocr-surface-2);border:1px solid var(--ocr-border-warm);border-radius:var(--ocr-radius-lg);width:100%;max-width:480px;box-shadow:0 20px 60px #0000002e;display:flex;flex-direction:column;overflow:hidden}.ocr-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--ocr-border)}.ocr-modal-title{font-family:Playfair Display,Georgia,serif;font-size:1.0625rem;font-weight:500;color:var(--ocr-text-main);margin:0}.ocr-modal-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;border-radius:var(--ocr-radius-sm);color:var(--ocr-text-muted);cursor:pointer;transition:background .15s}.ocr-modal-close:hover{background:var(--ocr-border)}.ocr-modal-body{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.ocr-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid var(--ocr-border);background:var(--ocr-bg)}.ocr-field-group{display:flex;flex-direction:column}.ocr-field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.ocr-field-error{font-size:.8125rem;color:#b53333;background:#b533330f;border-radius:var(--ocr-radius-sm);padding:.5rem .75rem;margin:0}.spin{animation:ocrSpin .7s linear infinite}:root{--cnt-bg: #f5f4ed;--cnt-surface: #faf9f5;--cnt-surface-2: #ffffff;--cnt-primary: #c96442;--cnt-primary-soft: rgba(201, 100, 66, .08);--cnt-primary-mid: rgba(201, 100, 66, .15);--cnt-text-main: #141413;--cnt-text-body: #5e5d59;--cnt-text-muted: #87867f;--cnt-border: #f0eee6;--cnt-border-warm: #e8e6dc;--cnt-ring: #d1cfc5;--cnt-shadow-sm: rgba(0, 0, 0, .04) 0px 4px 20px;--cnt-radius: 12px;--cnt-radius-sm: 8px;--cnt-sidebar-w: 320px}.ocr-content-page{display:flex;flex-direction:column;height:100%;background:var(--cnt-bg);font-family:Be Vietnam Pro,system-ui,sans-serif;color:var(--cnt-text-main);min-height:100vh}.cnt-topbar{display:flex;align-items:center;gap:1rem;padding:1.25rem 2rem;background:var(--cnt-surface);border-bottom:1px solid var(--cnt-border);flex-shrink:0;flex-wrap:wrap}.cnt-topbar-title{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:1.375rem;font-weight:700;letter-spacing:-.01em;color:var(--cnt-text-main);margin:0;flex-shrink:0}.cnt-book-select-wrap{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0;max-width:520px}.cnt-book-select-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--cnt-text-muted);flex-shrink:0}.cnt-book-select{flex:1;min-width:0;padding:.5rem .875rem;border:1px solid var(--cnt-border-warm);border-radius:var(--cnt-radius-sm);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9375rem;color:var(--cnt-text-main);background:var(--cnt-surface-2);transition:border-color .15s,box-shadow .15s;cursor:pointer}.cnt-book-select:focus{outline:none;border-color:var(--cnt-primary);box-shadow:0 0 0 3px var(--cnt-primary-soft)}.cnt-back-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .875rem;background:transparent;border:1px solid var(--cnt-border-warm);border-radius:var(--cnt-radius-sm);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;font-weight:500;color:var(--cnt-text-body);cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s;flex-shrink:0}.cnt-back-btn:hover{background:var(--cnt-border);border-color:var(--cnt-ring)}.cnt-export-group{display:flex;gap:.4rem;margin-left:auto;flex-shrink:0}.cnt-export-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;background:var(--cnt-surface-2);border:1px solid var(--cnt-border-warm);border-radius:var(--cnt-radius-sm);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;font-weight:500;color:var(--cnt-text-body);cursor:pointer;transition:all .15s}.cnt-export-btn:hover{background:var(--cnt-border);color:var(--cnt-text-main)}.cnt-book-banner{display:flex;align-items:center;gap:1rem;padding:.875rem 2rem;background:var(--cnt-primary-soft);border-bottom:1px solid var(--cnt-primary-mid);flex-shrink:0}.cnt-book-banner-grade{padding:.2rem .7rem;background:var(--cnt-primary);color:#faf9f5;border-radius:99px;font-size:.75rem;font-weight:700;letter-spacing:.02em;flex-shrink:0}.cnt-book-banner-title{font-family:Playfair Display,Georgia,serif;font-size:1rem;font-weight:500;color:var(--cnt-text-main);margin:0;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cnt-book-banner-meta{font-size:.8125rem;color:var(--cnt-text-muted);flex-shrink:0}.cnt-body{display:flex;flex:1;overflow:hidden;min-height:0;height:calc(100vh - 130px)}.cnt-sidebar{width:var(--cnt-sidebar-w);flex-shrink:0;background:var(--cnt-surface);border-right:1px solid var(--cnt-border);overflow-y:auto;display:flex;flex-direction:column}.cnt-sidebar-header{padding:1rem 1.125rem .75rem;border-bottom:1px solid var(--cnt-border);flex-shrink:0}.cnt-sidebar-heading{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--cnt-text-muted);margin:0}.cnt-chapter{border-bottom:1px solid var(--cnt-border)}.cnt-chapter-btn{flex:1;min-width:0;display:flex;align-items:center;gap:.5rem;padding:.75rem .625rem .75rem .875rem;background:none;border:none;cursor:pointer;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;font-weight:600;color:var(--cnt-text-main);text-align:left;transition:background .15s}.cnt-chapter-btn:hover{background:var(--cnt-border)}.cnt-chapter-btn--active{background:var(--cnt-primary-soft);color:var(--cnt-primary)}.cnt-chapter-num{width:22px;height:22px;border-radius:6px;background:var(--cnt-border-warm);display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;flex-shrink:0;color:var(--cnt-text-muted)}.cnt-chapter-btn--active .cnt-chapter-num{background:var(--cnt-primary);color:#fff}.cnt-chapter-title{flex:1;min-width:0;line-height:1.35;white-space:normal;word-break:break-word}.cnt-chapter-chevron{flex-shrink:0;color:var(--cnt-text-muted);transition:transform .2s}.cnt-chapter-chevron--open{transform:rotate(180deg)}.cnt-lessons-list{padding:.25rem 0;background:var(--cnt-bg)}.cnt-lesson-btn{flex:1;min-width:0;display:flex;align-items:flex-start;gap:.5rem;padding:.6rem .5rem .6rem 2.25rem;background:none;border:none;cursor:pointer;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;color:var(--cnt-text-body);text-align:left;line-height:1.45;transition:background .12s,color .12s}.cnt-lesson-btn:hover{background:var(--cnt-border);color:var(--cnt-text-main)}.cnt-lesson-btn--active{background:var(--cnt-primary-soft);color:var(--cnt-primary);font-weight:600;border-right:2px solid var(--cnt-primary)}.cnt-sidebar-loading{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.125rem;font-size:.8125rem;color:var(--cnt-text-muted)}.cnt-spinner{width:14px;height:14px;border:2px solid var(--cnt-border-warm);border-top-color:var(--cnt-primary);border-radius:50%;animation:cntSpin .65s linear infinite;flex-shrink:0}@keyframes cntSpin{to{transform:rotate(360deg)}}.cnt-panel{flex:1;min-width:0;overflow-y:auto;padding:1.75rem 2rem;background:var(--cnt-bg)}.cnt-panel-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:300px;color:var(--cnt-text-muted);gap:.75rem;text-align:center}.cnt-panel-placeholder-icon{color:var(--cnt-border-warm)}.cnt-panel-placeholder-text{font-size:.9375rem}.cnt-lesson-header{margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--cnt-border)}.cnt-lesson-title{font-family:Playfair Display,Georgia,serif;font-size:1.625rem;font-weight:500;color:var(--cnt-text-main);line-height:1.3;margin:0 0 .4rem}.cnt-lesson-meta{font-size:.8125rem;color:var(--cnt-text-muted)}.cnt-content-items{display:flex;flex-direction:column;gap:1.25rem}.cnt-item-text{font-size:1rem;line-height:1.7;color:var(--cnt-text-body)}.cnt-item-heading{font-family:Playfair Display,Georgia,serif;font-size:1.125rem;font-weight:500;color:var(--cnt-text-main);margin:.5rem 0 0}.cnt-item-formula{background:var(--cnt-surface);border:1px solid var(--cnt-border);border-radius:var(--cnt-radius-sm);padding:1rem 1.25rem;overflow-x:auto;font-size:1.0625rem;text-align:center}.cnt-formula-raw{font-family:Courier New,monospace;font-size:.9375rem;color:var(--cnt-text-body);background:var(--cnt-bg);border-radius:4px;padding:.25rem .5rem}.cnt-item-definition{background:#c9644214;border-radius:var(--cnt-radius-sm);padding:1rem 1.25rem}.cnt-item-box-label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--cnt-primary);margin:0 0 .5rem}.cnt-item-box-content{font-size:.9375rem;line-height:1.6;color:var(--cnt-text-body);margin:0}.cnt-item-example{background:var(--cnt-surface);border:1px solid var(--cnt-border);border-top:2px solid var(--cnt-primary);border-radius:0 0 var(--cnt-radius-sm) var(--cnt-radius-sm);padding:1rem 1.25rem}.cnt-item-exercise{background:var(--cnt-surface-2);border:1px solid var(--cnt-border-warm);border-radius:var(--cnt-radius-sm);padding:1rem 1.25rem}.cnt-item-exercise .cnt-item-box-label{color:#3d6b4f}.cnt-item-note{background:#f8f7f0;border:1px dashed var(--cnt-border-warm);border-radius:var(--cnt-radius-sm);padding:.875rem 1.125rem;font-size:.875rem;color:var(--cnt-text-muted);font-style:italic;line-height:1.6}.cnt-item-image{display:flex;flex-direction:column;align-items:center;width:100%}.cnt-item-image img{max-width:100%;width:auto;height:auto;max-height:420px;display:block;border-radius:var(--cnt-radius-sm);border:1px solid var(--cnt-border);-o-object-fit:contain;object-fit:contain}.cnt-item-image-caption{font-size:.8125rem;color:var(--cnt-text-muted);margin-top:.4rem;font-style:italic}.cnt-item-image-placeholder{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:var(--cnt-border);border-radius:var(--cnt-radius-sm);font-size:.8125rem;color:var(--cnt-text-muted)}.cnt-empty-state{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem;color:var(--cnt-text-muted);text-align:center}.cnt-no-book{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:60vh;color:var(--cnt-text-muted);text-align:center;padding:2rem}.cnt-no-book h2{font-family:Playfair Display,Georgia,serif;font-size:1.25rem;font-weight:500;color:var(--cnt-text-main);margin:0}.cnt-no-book p{font-size:.9375rem;margin:0;max-width:360px}.cnt-search-wrap{padding:.75rem 1.125rem;border-bottom:1px solid var(--cnt-border);flex-shrink:0}.cnt-search-input{width:100%;padding:.45rem .75rem;border:1px solid var(--cnt-border-warm);border-radius:var(--cnt-radius-sm);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;color:var(--cnt-text-main);background:var(--cnt-bg);box-sizing:border-box}.cnt-search-input:focus{outline:none;border-color:var(--cnt-primary);box-shadow:0 0 0 2px var(--cnt-primary-soft)}@media(max-width:768px){:root{--cnt-sidebar-w: 220px}.cnt-topbar{padding:1rem}.cnt-panel{padding:1.25rem 1rem}}.cnt-book-dropdown{position:relative}.cnt-book-dropdown-btn{display:flex;align-items:center;gap:.5rem;padding:.45rem .875rem;background:#fff;border:1.5px solid var(--cnt-border-warm);border-radius:var(--cnt-radius-sm);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;color:var(--cnt-text-main);cursor:pointer;transition:border-color .15s,box-shadow .15s;min-width:220px;max-width:320px;text-align:left}.cnt-book-dropdown-btn:hover,.cnt-book-dropdown-btn--open{border-color:var(--cnt-primary);box-shadow:0 0 0 2px var(--cnt-primary-soft)}.cnt-book-dropdown-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cnt-dropdown-chevron{flex-shrink:0;color:var(--cnt-text-muted);transition:transform .18s}.cnt-dropdown-chevron--open{transform:rotate(180deg)}.cnt-book-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:280px;max-width:380px;background:#fff;border:1.5px solid var(--cnt-border-warm);border-radius:var(--cnt-radius);box-shadow:0 4px 16px #0000001a;z-index:200;max-height:260px;overflow-y:auto;padding:.375rem 0}.cnt-dropdown-option{width:100%;display:flex;align-items:baseline;gap:.5rem;padding:.6rem 1rem;background:none;border:none;cursor:pointer;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;color:var(--cnt-text-main);text-align:left;transition:background .12s;white-space:normal;word-break:break-word}.cnt-dropdown-option:hover{background:var(--cnt-bg)}.cnt-dropdown-option--active{background:var(--cnt-primary-soft);color:var(--cnt-primary);font-weight:600}.cnt-dropdown-option-grade{font-size:.75rem;font-weight:700;color:var(--cnt-primary);background:var(--cnt-primary-soft);border-radius:4px;padding:1px 6px;flex-shrink:0}.cnt-dropdown-empty{padding:.75rem 1rem;font-size:.8125rem;color:var(--cnt-text-muted)}.cnt-chapter-btn-row{display:flex;align-items:stretch;width:100%;border-bottom:none}.cnt-chapter-btn-row .cnt-chapter-btn{flex:1;min-width:0;width:0}.cnt-chapter-btn-row--active .cnt-chapter-btn{background:var(--cnt-primary-soft);color:var(--cnt-primary)}.cnt-chapter-btn-row .cnt-item-action{opacity:1;align-self:center}.cnt-chapter-edit-row{display:flex;align-items:center;gap:.375rem;padding:.625rem .75rem}.cnt-lesson-row{display:flex;align-items:stretch;width:100%;position:relative}.cnt-lesson-row .cnt-lesson-btn{flex:1;min-width:0;width:0}.cnt-lesson-row .cnt-item-action{opacity:1;align-self:center}.cnt-lesson-edit-row{display:flex;align-items:center;gap:.3rem;padding:.5rem .75rem .5rem 2.25rem}.cnt-item-action{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;min-height:28px;border:none;border-radius:5px;cursor:pointer;flex-shrink:0;opacity:.55;transition:opacity .12s,background .12s;align-self:center;margin:0 2px;line-height:1}.cnt-item-action:hover{opacity:1}.cnt-item-action svg{display:block;width:14px;height:14px;flex-shrink:0;pointer-events:none}.cnt-item-action--edit{background:#eef1f8;color:#3d5a8a}.cnt-item-action--edit:hover{background:#dce6f5}.cnt-item-action--delete{background:#b5333314;color:#b53333}.cnt-item-action--delete:hover{background:#b533332e}.cnt-item-action:disabled{opacity:.35!important;cursor:not-allowed}.cnt-inline-input{flex:1;min-width:0;padding:.375rem .625rem;border:1.5px solid var(--cnt-primary);border-radius:var(--cnt-radius-sm);font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;color:var(--cnt-text-main);background:#fff;outline:none;box-shadow:0 0 0 2px var(--cnt-primary-soft)}.cnt-inline-input--lesson{font-size:.75rem}.cnt-inline-action{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:5px;cursor:pointer;flex-shrink:0;transition:background .12s}.cnt-inline-action--save{background:var(--cnt-primary-soft);color:var(--cnt-primary)}.cnt-inline-action--save:hover{background:#d0e0f0}.cnt-inline-action--cancel{background:#b5333314;color:#b53333}.cnt-inline-action--cancel:hover{background:#b533332e}.cnt-inline-action:disabled{opacity:.4;cursor:not-allowed}.cnt-inline-action svg{display:block;width:14px;height:14px;flex-shrink:0;pointer-events:none}.cnt-edit-toggle-btn{display:inline-flex;align-items:center;gap:5px;padding:.3rem .75rem;border:1.5px solid var(--cnt-primary);border-radius:var(--cnt-radius-sm);background:#fff;color:var(--cnt-primary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .14s,color .14s}.cnt-edit-toggle-btn--active{background:var(--cnt-primary);color:#fff}.cnt-edit-toggle-btn svg{display:block;width:13px;height:13px}.cnt-add-lesson-btn{display:inline-flex;align-items:center;gap:4px;width:calc(100% - 16px);margin:2px 8px;padding:.3rem .5rem;background:none;border:1.5px dashed var(--cnt-primary);border-radius:var(--cnt-radius-sm);color:var(--cnt-primary);font-size:.75rem;font-weight:600;cursor:pointer;opacity:.8;transition:opacity .12s,background .12s}.cnt-add-lesson-btn:hover{opacity:1;background:var(--cnt-primary-soft)}.cnt-add-lesson-btn svg{display:block}.cnt-history-btn{display:inline-flex;align-items:center;gap:5px;padding:.25rem .65rem;border:1.5px solid #c8b8e0;border-radius:var(--cnt-radius-sm);background:none;color:#7f5fa6;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .12s}.cnt-history-btn:hover{background:#f3eeff}.cnt-history-btn svg{display:block}.cnt-add-content-btn{display:inline-flex;align-items:center;gap:5px;padding:.3rem .8rem;border:1.5px dashed var(--cnt-primary);border-radius:var(--cnt-radius-sm);background:none;color:var(--cnt-primary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .12s}.cnt-add-content-btn:hover{background:var(--cnt-primary-soft)}.cnt-add-content-btn svg{display:block}.cnt-lesson-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap}.cnt-lesson-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.cnt-content-item-wrap{position:relative}.cnt-content-item-actions{display:none;position:absolute;top:4px;right:4px;gap:4px;background:#ffffffe6;border-radius:6px;padding:2px;box-shadow:0 1px 4px #0000001a}.cnt-content-item-wrap:hover .cnt-content-item-actions{display:flex}.cnt-content-item-wrap--editing{border:1.5px solid var(--cnt-primary);border-radius:var(--cnt-radius-sm);padding:.75rem;background:#fafafa;margin-bottom:.75rem}.cnt-item-editor{display:flex;flex-direction:column;gap:.5rem}.cnt-editor-label{font-size:.78rem;font-weight:600;color:var(--cnt-text-muted)}.cnt-editor-input{padding:.375rem .625rem;border:1.5px solid #d0cec8;border-radius:var(--cnt-radius-sm);font-size:.85rem;outline:none;font-family:inherit;transition:border-color .14s}.cnt-editor-input:focus{border-color:var(--cnt-primary)}.cnt-editor-textarea{padding:.5rem .625rem;border:1.5px solid #d0cec8;border-radius:var(--cnt-radius-sm);font-size:.85rem;resize:vertical;outline:none;font-family:inherit;transition:border-color .14s}.cnt-editor-textarea:focus{border-color:var(--cnt-primary)}.cnt-editor-textarea--mono{font-family:Courier New,monospace;font-size:.82rem}.cnt-editor-select{padding:.375rem .625rem;border:1.5px solid #d0cec8;border-radius:var(--cnt-radius-sm);font-size:.85rem;outline:none;background:#fff;font-family:inherit}.cnt-editor-actions{display:flex;gap:8px;margin-top:4px}.cnt-editor-save{display:inline-flex;align-items:center;gap:5px;padding:.35rem .85rem;border:none;border-radius:var(--cnt-radius-sm);background:var(--cnt-primary);color:#fff;font-size:.82rem;font-weight:600;cursor:pointer;font-family:inherit}.cnt-editor-save:disabled{opacity:.5;cursor:not-allowed}.cnt-editor-cancel{display:inline-flex;align-items:center;gap:5px;padding:.35rem .85rem;border:1.5px solid #d0cec8;border-radius:var(--cnt-radius-sm);background:#fff;color:var(--cnt-text-muted);font-size:.82rem;cursor:pointer;font-family:inherit}.cnt-img-upload-row{display:flex;gap:6px;align-items:center}.cnt-img-upload-row .cnt-editor-input{flex:1;min-width:0}.cnt-img-upload-btn{display:inline-flex;align-items:center;gap:5px;padding:.35rem .75rem;border:1.5px solid var(--cnt-border-warm);border-radius:var(--cnt-radius-sm);background:var(--cnt-surface-2);color:var(--cnt-text-body);font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:border-color .14s,background .14s;font-family:inherit}.cnt-img-upload-btn:hover:not(:disabled){border-color:var(--cnt-primary);color:var(--cnt-primary);background:var(--cnt-primary-soft)}.cnt-img-upload-btn:disabled{opacity:.5;cursor:not-allowed}.cnt-img-preview{display:block;max-width:100%;max-height:200px;-o-object-fit:contain;object-fit:contain;border-radius:var(--cnt-radius-sm);border:1px solid var(--cnt-border);background:var(--cnt-bg)}@keyframes cntSpinAnim{to{transform:rotate(360deg)}}.cnt-spin{animation:cntSpinAnim .7s linear infinite;display:block}.cnt-modal-overlay{position:fixed;inset:0;background:#00000061;z-index:500;display:flex;align-items:center;justify-content:center;padding:1rem}.cnt-modal{background:#fff;border-radius:12px;width:100%;max-width:520px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000002e;overflow:hidden}.cnt-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #ece9e0}.cnt-modal-title{display:flex;align-items:center;gap:6px;font-size:.95rem;font-weight:700;color:var(--cnt-text-main)}.cnt-modal-close{border:none;background:none;cursor:pointer;color:var(--cnt-text-muted);padding:4px;border-radius:6px;display:flex;align-items:center}.cnt-modal-close:hover{background:#f0ede4}.cnt-modal-body{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.cnt-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:.75rem 1.25rem;border-top:1px solid #ece9e0}.cnt-history-empty{color:var(--cnt-text-muted);font-size:.85rem;text-align:center;padding:1.5rem 0}.cnt-history-entry{border:1px solid #ece9e0;border-radius:10px;padding:.875rem 1rem;transition:border-color .12s,background .12s}.cnt-history-entry:hover,.cnt-history-entry--expanded{background:#faf9f6;border-color:#ddd9ce}.cnt-history-meta{display:flex;align-items:flex-start;gap:10px}.cnt-history-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#c96442,#e0926a);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0;letter-spacing:0}.cnt-history-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.cnt-history-info-row{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.cnt-history-by{font-size:.825rem;font-weight:600;color:var(--cnt-text-main);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cnt-history-action{font-size:.67rem;font-weight:700;padding:1px 7px;border-radius:10px;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.cnt-history-action--create{background:#e2f7e9;color:#2d7a47}.cnt-history-action--update{background:#e8f0ff;color:#2a50a8}.cnt-history-action--delete{background:#fde8e8;color:#b53333}.cnt-history-entity{font-size:.67rem;font-weight:600;padding:1px 6px;border-radius:8px;flex-shrink:0}.cnt-history-entity--chapter{background:#fef3e2;color:#c07c00}.cnt-history-entity--lesson{background:#ede8ff;color:#5b3ea8}.cnt-history-entity--content{background:#f0f7f0;color:#2d7a47}.cnt-history-at{display:inline-flex;align-items:center;gap:3px;font-size:.73rem;color:var(--cnt-text-muted)}.cnt-history-summary{font-size:.8rem;color:var(--cnt-text-muted);margin:2px 0 0}.cnt-history-diff-toggle{font-size:.75rem;color:var(--cnt-primary);background:none;border:none;cursor:pointer;padding:2px 0 0;text-align:left;margin-top:2px}.cnt-history-diff-toggle:hover{text-decoration:underline}.cnt-diff-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.cnt-diff-side{border-radius:6px;overflow:hidden;border:1px solid var(--cnt-border)}.cnt-diff-side--before{border-color:#f5c6c6}.cnt-diff-side--after{border-color:#b2dfc3}.cnt-diff-side-header{padding:4px 10px;font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}.cnt-diff-side--before .cnt-diff-side-header{background:#fff0f0;color:#a33}.cnt-diff-side--after .cnt-diff-side-header{background:#f0fff4;color:#2d7a47}.cnt-diff-field{display:flex;flex-direction:column;padding:6px 10px;border-top:1px solid var(--cnt-border)}.cnt-diff-side--before .cnt-diff-field{background:#fff8f8}.cnt-diff-side--after .cnt-diff-field{background:#f7fffa}.cnt-diff-key{font-weight:700;color:var(--cnt-text-muted);font-size:.68rem;margin-bottom:3px;text-transform:uppercase;letter-spacing:.03em}.cnt-diff-val{color:var(--cnt-text-body);font-size:.78rem;line-height:1.5;word-break:break-word}.cnt-diff-no-change{font-size:.8rem;color:var(--cnt-text-muted);text-align:center;padding:8px 0;margin:0}.cnt-meta-info{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;color:var(--cnt-text-muted);margin-top:2px}.cnt-meta-info--item{display:flex;padding:1px 4px;margin-top:4px}.cnt-modal--history{max-width:700px}.admin-roadmap-page{display:grid;gap:1rem;padding:1.25rem;background:#f5f4ed;border-radius:1.5rem;border:1px solid #f0eee6;box-shadow:#14141312 0 10px 28px}.admin-roadmap-page__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.25rem;animation:adminRoadmapFadeInUp .38s cubic-bezier(.22,1,.36,1) both}.admin-roadmap-page__header h1{margin:0;font-family:var(--f-heading, "Be Vietnam Pro", system-ui, sans-serif);font-size:clamp(1.75rem,2.2vw,2.25rem);font-weight:500;line-height:1.2;color:#141413}.admin-roadmap-page__header p{margin:.55rem 0 0;color:#5e5d59;font-size:.95rem}.admin-roadmap-page__action{display:inline-flex;align-items:center;gap:.45rem;text-decoration:none;border-radius:.75rem;background:#c96442;color:#141413;padding:.62rem .92rem;font-weight:600;box-shadow:#c96442 0 0,#c96442 0 0 0 1px;transition:transform .16s cubic-bezier(.22,1,.36,1),box-shadow .16s cubic-bezier(.22,1,.36,1),background-color .16s cubic-bezier(.22,1,.36,1)}.admin-roadmap-page__action:hover{background:#b85a3a;box-shadow:#b85a3a 0 0,#b85a3a 0 0 0 1px;transform:translateY(-1px)}.admin-roadmap-page__action:active{transform:translateY(0)}.admin-roadmap-page__action:focus-visible{outline:none;box-shadow:#c96442 0 0,#c96442 0 0 0 1px,#3898ec40 0 0 0 4px}.admin-roadmap-page__action-icon{width:.95rem;height:.95rem}.admin-roadmap-page__table{border:1px solid #e8e6dc;border-radius:1rem;overflow:hidden;background:#faf9f5;box-shadow:#1414130d 0 4px 24px;animation:adminRoadmapFadeInUp .38s cubic-bezier(.22,1,.36,1) both;animation-delay:.14s}.admin-roadmap-page__row{display:grid;grid-template-columns:minmax(220px,1.7fr) minmax(120px,.9fr) minmax(70px,.55fr) minmax(190px,1.05fr);gap:.9rem;padding:.85rem 1rem;background:#faf9f5;border-bottom:1px solid #f0eee6;align-items:center;color:#3d3d3a}.admin-roadmap-page__row--head{background:#faf9f5;color:#87867f;font-size:.7rem;letter-spacing:.08em;font-weight:600;text-transform:uppercase}.admin-roadmap-page__row:not(.admin-roadmap-page__row--head):hover{background:#fff}.admin-roadmap-page__state{margin:0;color:#5e5d59}.admin-roadmap-page__row-actions{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.45rem}.admin-roadmap-page__inline-action,.admin-roadmap-page__inline-danger{display:inline-flex;align-items:center;gap:.3rem;border:1px solid #e8e6dc;border-radius:999px;background:#fff;color:#4d4c48;font-weight:600;cursor:pointer;text-decoration:none;padding:.34rem .62rem;transition:background-color .16s cubic-bezier(.22,1,.36,1),border-color .16s cubic-bezier(.22,1,.36,1),color .16s cubic-bezier(.22,1,.36,1)}.admin-roadmap-page__inline-action:hover,.admin-roadmap-page__inline-danger:hover:not(:disabled){background:#f5f4ed;border-color:#d1cfc5}.admin-roadmap-page__inline-action:focus-visible,.admin-roadmap-page__inline-danger:focus-visible{outline:none;box-shadow:#3898ec38 0 0 0 3px}.admin-roadmap-page__inline-danger{color:#b53333;border-color:#b5333333}.admin-roadmap-page__inline-danger:disabled{opacity:.6;cursor:not-allowed}.admin-roadmap-page__inline-icon{width:.82rem;height:.82rem}.admin-roadmap-page__toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;animation:adminRoadmapFadeInUp .38s cubic-bezier(.22,1,.36,1) both;animation-delay:80ms}.admin-roadmap-page__search-wrap{position:relative;flex:1 1 280px}.admin-roadmap-page__search-icon{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);width:.95rem;height:.95rem;color:#87867f}.admin-roadmap-page__search{width:100%;padding:.56rem 2.3rem .56rem 2.35rem;border:1px solid #d1cfc5;border-radius:.75rem;font-size:.92rem;outline:none;box-sizing:border-box;background:#fff;color:#141413;box-shadow:#fff 0 0,#f0eee6 0 0 0 1px;transition:border-color .14s cubic-bezier(.22,1,.36,1),box-shadow .14s cubic-bezier(.22,1,.36,1)}.admin-roadmap-page__search::-moz-placeholder{color:#87867f}.admin-roadmap-page__search::placeholder{color:#87867f}.admin-roadmap-page__search:focus,.admin-roadmap-page__search:focus-visible{border-color:#3898ec;box-shadow:#fff 0 0,#f0eee6 0 0 0 1px,#3898ec33 0 0 0 4px}.admin-roadmap-page__search-loading{position:absolute;right:.72rem;top:50%;transform:translateY(-50%);color:#87867f;display:inline-block}.admin-roadmap-page__loading-icon{width:.95rem;height:.95rem;animation:spin .8s linear infinite}.admin-roadmap-page__filter-wrap{position:relative;min-width:210px;display:inline-flex;align-items:center}.admin-roadmap-page__filter-icon{position:absolute;left:.74rem;width:.9rem;height:.9rem;color:#87867f;pointer-events:none}.admin-roadmap-page__filter-select{width:100%;padding:.56rem .82rem .56rem 2.2rem;border:1px solid #d1cfc5;border-radius:.75rem;font-size:.92rem;background:#fff;color:#141413;cursor:pointer;outline:none;box-shadow:#fff 0 0,#f0eee6 0 0 0 1px;transition:border-color .14s cubic-bezier(.22,1,.36,1),box-shadow .14s cubic-bezier(.22,1,.36,1)}.admin-roadmap-page__filter-select:focus,.admin-roadmap-page__filter-select:focus-visible{border-color:#3898ec;box-shadow:#fff 0 0,#f0eee6 0 0 0 1px,#3898ec33 0 0 0 4px}.admin-roadmap-page__status{display:inline-flex;align-items:center;gap:.35rem;padding:.22rem .58rem;border-radius:999px;font-size:.72rem;font-weight:600}.admin-roadmap-page__status-dot{width:.45rem;height:.45rem;fill:currentColor}.admin-roadmap-page__status--generated{background:#fff1eb;color:#8a341f}.admin-roadmap-page__status--in_progress{background:#fffbeb;color:#b45309}.admin-roadmap-page__status--completed{background:#f0fdf4;color:#166534}.admin-roadmap-page__status--archived{background:#f0eee6;color:#5e5d59}.admin-roadmap-page__pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:.65rem 0 .2rem;animation:adminRoadmapFadeInUp .38s cubic-bezier(.22,1,.36,1) both;animation-delay:.2s}.admin-roadmap-page__pagination-info{font-size:.84rem;color:#5e5d59}.admin-roadmap-page__pagination-controls{display:flex;gap:.35rem;flex-wrap:wrap;align-items:center}.admin-roadmap-page__page-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.34rem .64rem;border:1px solid #e8e6dc;border-radius:.75rem;background:#fff;color:#4d4c48;font-size:.83rem;font-weight:500;cursor:pointer;transition:background-color .15s cubic-bezier(.22,1,.36,1),border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1),transform .15s cubic-bezier(.22,1,.36,1)}.admin-roadmap-page__page-btn:hover:not(:disabled){background:#f5f4ed;border-color:#c2c0b6;transform:translateY(-1px)}.admin-roadmap-page__page-btn--active{background:#141413;color:#faf9f5;border-color:#30302e}.admin-roadmap-page__page-btn:focus-visible{outline:none;box-shadow:#788caf47 0 0 0 3px}.admin-roadmap-page__page-btn:disabled{opacity:.45;cursor:not-allowed}.admin-roadmap-page__page-icon{width:.84rem;height:.84rem}@keyframes adminRoadmapFadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.admin-roadmap-page__loading-icon,.admin-roadmap-page__header,.admin-roadmap-page__toolbar,.admin-roadmap-page__table,.admin-roadmap-page__pagination{animation:none}.admin-roadmap-page__action,.admin-roadmap-page__inline-action,.admin-roadmap-page__inline-danger,.admin-roadmap-page__page-btn{transition:none}}.admin-roadmap-page__road-section{border:1px solid #e8e6dc;background:#faf9f5;border-radius:1rem;padding:1rem;display:grid;gap:.9rem;box-shadow:#1414130a 0 4px 20px}.admin-roadmap-page__road-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.admin-roadmap-page__road-header h3{margin:0}.admin-roadmap-page__section-title{display:inline-flex;align-items:center;gap:.45rem;margin:0;font-family:var(--f-heading, "Be Vietnam Pro", system-ui, sans-serif);font-size:1.26rem;font-weight:500;color:#141413;line-height:1.2}.admin-roadmap-page__section-icon{width:1rem;height:1rem;color:#c96442}.admin-roadmap-page__road-header p{margin:.35rem 0 0;color:#5e5d59;font-size:.9rem;line-height:1.55}.admin-roadmap-page__road-visual{position:relative;border-radius:14px;border:1px solid #d4dfef;background:#fff;overflow:hidden;min-height:230px}.admin-roadmap-page__road-svg{width:100%;height:230px}.admin-roadmap-page__road-track-shadow{fill:none;stroke:#dbe8ff;stroke-width:34;stroke-linecap:round}.admin-roadmap-page__road-track{fill:none;stroke:#1e2f73;stroke-width:26;stroke-linecap:round;stroke-dasharray:14 10}.admin-roadmap-page__topic-nodes{position:absolute;inset:0;pointer-events:none}.admin-roadmap-page__topic-node{position:absolute;top:50%;transform:translate(-50%,-50%);background:#fff;border:2px solid #0ea5e9;border-radius:14px;width:160px;padding:.55rem .65rem;display:grid;gap:.15rem;box-shadow:0 12px 24px #1e293b26;pointer-events:auto;cursor:pointer;text-align:left;-webkit-appearance:none;-moz-appearance:none;appearance:none}.admin-roadmap-page__topic-node--active{box-shadow:0 0 0 3px #0ea5e959,0 12px 24px #1e293b26}.admin-roadmap-page__topic-badge{font-style:normal;background:#fef3c7;color:#92400e;border-radius:999px;font-size:.65rem;font-weight:700;width:-moz-fit-content;width:fit-content;padding:.1rem .42rem}.admin-roadmap-page__topic-node--easy{border-color:#16a34a}.admin-roadmap-page__topic-node--medium{border-color:#d97706}.admin-roadmap-page__topic-node--hard{border-color:#dc2626}.admin-roadmap-page__topic-order{width:1.4rem;height:1.4rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#fff;background:#1d4ed8}.admin-roadmap-page__topic-node strong{font-size:.82rem;color:#0f172a;line-height:1.25}.admin-roadmap-page__topic-node small{color:#475569;font-size:.72rem}.admin-roadmap-page__topic-controls{display:flex;gap:.35rem}.admin-roadmap-page__topic-controls button{border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#0f172a;font-weight:700;cursor:pointer;min-width:1.6rem;height:1.5rem}.admin-roadmap-page__topic-controls button:disabled{opacity:.45;cursor:not-allowed}.admin-roadmap-page__modal-backdrop{position:fixed;inset:0;background:#0f172a8c;display:grid;place-items:center;z-index:70;padding:1rem}.admin-roadmap-page__modal{width:min(760px,100%);max-height:90vh;overflow:auto;border-radius:14px;background:#fff;border:1px solid #d6e2f3;box-shadow:0 18px 38px #0f172a4d;padding:1rem;display:grid;gap:.8rem}.admin-roadmap-page__modal[open]{display:grid}.admin-roadmap-page__modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.admin-roadmap-page__modal-header h3{margin:0}.admin-roadmap-page__modal-close{border:0;border-radius:8px;padding:.5rem .7rem;background:#e2e8f0;color:#0f172a;font-weight:700;cursor:pointer}.admin-roadmap-page__form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.admin-roadmap-page__form-grid label{display:grid;gap:.35rem;font-size:.82rem;color:#334155}.admin-roadmap-page__form-grid input,.admin-roadmap-page__form-grid textarea,.admin-roadmap-page__form-grid select{border:1px solid #cbd5e1;border-radius:8px;padding:.5rem .6rem}.admin-roadmap-page__form-grid textarea{resize:vertical}.admin-roadmap-page__checkbox-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.admin-roadmap-page__checkbox-row label{display:flex;align-items:center;gap:.35rem;font-size:.82rem;color:#334155}.admin-roadmap-page__actions{display:flex;gap:.6rem;flex-wrap:wrap}.admin-roadmap-page__button{display:inline-flex;align-items:center;justify-content:center;gap:.36rem;border:1px solid #d1cfc5;border-radius:.75rem;background:#e8e6dc;color:#4d4c48;font-weight:600;padding:.56rem .9rem;cursor:pointer;box-shadow:#e8e6dc 0 0,#d1cfc5 0 0 0 1px;transition:transform .15s cubic-bezier(.22,1,.36,1),background-color .15s cubic-bezier(.22,1,.36,1),box-shadow .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1)}.admin-roadmap-page__button:hover:not(:disabled){background:#dedcd2;box-shadow:#dedcd2 0 0,#c2c0b6 0 0 0 1px;transform:translateY(-1px)}.admin-roadmap-page__button:focus-visible{outline:none;box-shadow:#e8e6dc 0 0,#d1cfc5 0 0 0 1px,#3898ec3b 0 0 0 3px}.admin-roadmap-page__button:active:not(:disabled){transform:translateY(0)}.admin-roadmap-page__button:disabled{opacity:.6;cursor:not-allowed}.admin-roadmap-page__button-icon{width:.88rem;height:.88rem}.admin-roadmap-page__result-list{display:grid;gap:.5rem}.admin-roadmap-page__result-item{border:1px solid #e2e8f0;border-radius:8px;padding:.55rem .7rem;display:grid;gap:.2rem}.admin-roadmap-page__feedback-list{display:grid;gap:.6rem}.admin-roadmap-page__feedback-item{border:1px solid #f0eee6;border-radius:.88rem;background:#fff;padding:.82rem .88rem;display:grid;gap:.36rem;box-shadow:#14141309 0 3px 16px}.admin-roadmap-page__feedback-main{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.admin-roadmap-page__feedback-stars{color:#5e5d59;font-weight:600;font-size:.78rem;display:inline-flex;align-items:center;gap:.36rem}.admin-roadmap-page__rating-stars{display:inline-flex;align-items:center;gap:.08rem}.admin-roadmap-page__rating-star{width:.82rem;height:.82rem;color:#b0aea5;fill:transparent}.admin-roadmap-page__rating-star--active{color:#d97757;fill:currentColor}.admin-roadmap-page__feedback-content{margin:0;color:#4d4c48;font-size:.86rem;line-height:1.55}.admin-roadmap-page__feedback-updated{color:#87867f;font-size:.76rem}.admin-roadmap-page__feedback-pagination{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.3rem;flex-wrap:wrap}.admin-roadmap-page__result-item span{color:#5e5d59;font-size:.82rem}.admin-roadmap-page__success{color:#166534;font-weight:600}.module-layout-container .admin-roadmap-mgmt-page{position:relative;min-height:calc(100vh - 68px);min-height:100%;overflow-x:hidden;isolation:isolate}.module-layout-container .admin-roadmap-mgmt-page__bg{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 10% 0%,rgba(163,182,212,.14),transparent 45%),radial-gradient(ellipse 65% 42% at 92% 6%,rgba(79,126,247,.06),transparent 44%),linear-gradient(180deg,#faf9f5,#f5f4ed 42%,#f8f7f2)}.module-layout-container .admin-roadmap-mgmt-page__content{position:relative;z-index:1}.module-layout-container .admin-roadmap-mgmt-header-sub:before{display:none}.module-layout-container .admin-roadmap-page__table.admin-roadmap-mgmt-table-shell{min-height:0;height:auto;display:block;margin:0;border-radius:0;background:transparent;border:none;box-shadow:none}.module-layout-container .admin-roadmap-mgmt-table-shell .empty{border:none;box-shadow:none;background:transparent}.module-layout-container .admin-roadmap-mgmt-toolbar{position:relative;z-index:1}.module-layout-container .admin-roadmap-mgmt-search-pending{position:absolute;right:.55rem;top:50%;transform:translateY(-50%);color:var(--mod-slate-500, #60748f);display:flex;align-items:center;pointer-events:none}.module-layout-container .search-box:has(.search-box__clear) .admin-roadmap-mgmt-search-pending{right:2.5rem}.module-layout-container .admin-roadmap-mgmt-spin{animation:spin .8s linear infinite}.module-layout-container .admin-roadmap-mgmt-empty{text-align:center;max-width:28rem;margin:0 auto}.module-layout-container .admin-roadmap-mgmt-empty p{margin:0;line-height:1.5;color:var(--mod-slate-500, #60748f)}.module-layout-container .admin-roadmap-mgmt-cell-name{font-weight:600;color:#141413}.module-layout-container .admin-roadmap-mgmt-summary{position:relative;z-index:1}.module-layout-container .admin-roadmap-mgmt-pagination.admin-roadmap-page__pagination{padding:.75rem 1rem .75rem 1.75rem}@media(min-width:640px){.module-layout-container .admin-roadmap-mgmt-pagination.admin-roadmap-page__pagination{padding-left:2rem}}.module-layout-container .admin-roadmap-mgmt-alert{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.65rem .9rem;border-radius:12px;background:#fef2f2;color:#b91c1c;font-size:.88rem;font-weight:600;border:1px solid #fecaca;position:relative;z-index:1}.module-layout-container .admin-roadmap-create-top{width:100%;margin-bottom:.2rem;position:relative;z-index:1}.module-layout-container .admin-roadmap-create-form-wrap{position:relative;z-index:1;border-radius:14px;overflow:hidden;box-shadow:0 4px 20px #14223514;border:1px solid #e5edf7;background:#fff}.module-layout-container .admin-roadmap-edit-section-inner{padding:1.15rem 1.25rem 1.25rem}.module-layout-container .admin-roadmap-edit-feedback-skeleton.skeleton-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.module-layout-container .admin-roadmap-edit-section-inner .admin-roadmap-page__feedback-pagination{margin-top:.75rem}@media(max-width:768px){.module-layout-container .admin-roadmap-mgmt-page__content.module-page{padding:1rem}.module-layout-container .page-header.courses-header-row{flex-direction:column;align-items:flex-start}.module-layout-container .page-header.courses-header-row .btn{width:100%;justify-content:center}.module-layout-container .admin-roadmap-mgmt-toolbar{flex-direction:column;align-items:stretch}.module-layout-container .admin-roadmap-mgmt-toolbar .pill-group{width:100%}.admin-roadmap-page__header{flex-direction:column}.admin-roadmap-page__action{width:100%;justify-content:center}.admin-roadmap-page__toolbar{flex-direction:column;align-items:stretch}.admin-roadmap-page__filter-wrap{min-width:0}.admin-roadmap-page__row--head{display:none}.admin-roadmap-page__row{grid-template-columns:1fr;gap:.48rem;padding:.86rem}.admin-roadmap-page__row:not(.admin-roadmap-page__row--head)>span{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.admin-roadmap-page__row:not(.admin-roadmap-page__row--head)>span:before{color:#87867f;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;font-weight:600}.admin-roadmap-page__row:not(.admin-roadmap-page__row--head)>span:nth-child(1):before{content:"Tên lộ trình"}.admin-roadmap-page__row:not(.admin-roadmap-page__row--head)>span:nth-child(2):before{content:"Trạng thái"}.admin-roadmap-page__row:not(.admin-roadmap-page__row--head)>span:nth-child(3):before{content:"Chủ đề"}.admin-roadmap-page__row:not(.admin-roadmap-page__row--head)>span:nth-child(4):before{content:"Thao tác"}.admin-roadmap-page__row-actions{justify-content:flex-end}.admin-roadmap-page__pagination{flex-direction:column;align-items:flex-start}.admin-roadmap-page__pagination-controls{width:100%}.admin-roadmap-page__form-grid{grid-template-columns:1fr}.admin-roadmap-page__road-header{flex-direction:column}.admin-roadmap-page__actions,.admin-roadmap-page__button{width:100%}.admin-roadmap-page__topic-node{width:125px}}.art{font-family:inherit;background:#f5f6fa;color:#1e2028;min-height:100vh;padding:28px 32px 80px;position:relative}.module-layout-container .art.art--in-module{min-height:auto;background:linear-gradient(180deg,#fafbfd,#f4f6fb);border:1px solid #e5edf7;border-radius:14px;box-shadow:0 4px 20px #1422350f;padding:1.25rem 1.15rem 2rem;position:relative;z-index:1}.module-layout-container .art-page-header--topics.courses-header-row{align-items:flex-start;flex-wrap:wrap;margin-bottom:.35rem}.module-layout-container .art-page-header--topics .art-header__actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:flex-end}@media(max-width:720px){.module-layout-container .art-page-header--topics.courses-header-row{flex-direction:column;align-items:stretch}.module-layout-container .art-page-header--topics .art-header__actions{width:100%;justify-content:stretch}.module-layout-container .art-page-header--topics .art-header__actions .btn{width:100%;justify-content:center}}.art-loading{padding:80px 40px;text-align:center;color:#9ca3af;font-size:1rem}.art-toast{position:fixed;bottom:28px;right:28px;padding:14px 22px;border-radius:12px;font-size:.88rem;font-weight:600;z-index:8300;animation:art-slide-in .25s ease;box-shadow:0 8px 32px #00000026;max-width:360px}.art-toast--success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.art-toast--error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}@keyframes art-slide-in{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.art-header{display:flex;align-items:center;gap:16px;margin-bottom:28px;flex-wrap:wrap}.art-back{background:#fff;border:1.5px solid #e5e7eb;color:#6b7280;padding:8px 16px;border-radius:10px;font-size:.85rem;font-weight:500;cursor:pointer;font-family:inherit;transition:all .2s;white-space:nowrap}.art-back:hover{background:#f9fafb;color:#374151;border-color:#d1d5db}.art-header__info{flex:1;min-width:0}.art-header__title{font-size:1.55rem;font-weight:800;color:#111827;margin:0 0 2px}.art-header__sub{font-size:.82rem;color:#9ca3af;margin:0}.art-header__warning{margin:6px 0 0;color:#b45309;font-size:.8rem;font-weight:600}.art-header__actions{display:flex;gap:10px}.art-btn{padding:.625rem 1.25rem;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;font-family:inherit;border:1.5px solid #e5e7eb;background:#fff;color:#374151;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;display:inline-flex;align-items:center;gap:.5rem;line-height:1}.art-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 4px 6px #0000001a}.art-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000000d}.art-btn:disabled{opacity:.5;cursor:not-allowed}.art-btn--add{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border-color:#6366f1;box-shadow:0 2px 4px #6366f133}.art-btn--add:hover:not(:disabled){background:linear-gradient(135deg,#4f46e5,#4338ca);border-color:#4f46e5;box-shadow:0 4px 12px #6366f14d}.art-btn--save{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#10b981;box-shadow:0 2px 4px #10b98133}.art-btn--save:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);border-color:#059669;box-shadow:0 4px 12px #10b9814d}.art-btn--save-all{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-color:#f59e0b;box-shadow:0 2px 4px #f59e0b33}.art-btn--save-all:hover:not(:disabled){background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #f59e0b4d}.art-btn--delete{background:#fff;color:#dc2626;border-color:#fca5a5}.art-btn--delete:hover:not(:disabled){background:#fee2e2;border-color:#f87171;box-shadow:0 4px 6px #dc262626}.art-btn--pick{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.art-btn--pick:hover:not(:disabled){background:#dbeafe;border-color:#93c5fd;box-shadow:0 4px 6px #2563eb26}.module-layout-container .art.art--in-module .art-canvas-wrap,.art-canvas-wrap{position:relative;background:linear-gradient(180deg,#faf9f5,#f5f4ed 55%,#f0eee6);border-radius:16px;border:1px solid #f0eee6;box-shadow:#0000000d 0 4px 24px;margin-bottom:20px;overflow:hidden}.art-road-svg{display:block;width:100%;height:auto}.art-road__shadow{fill:none;stroke:#30302e24;stroke-width:36;stroke-linecap:round;stroke-linejoin:round;filter:blur(3px);transform:translateY(4px)}.art-road__surface{fill:none;stroke:#30302e;stroke-width:28;stroke-linecap:round;stroke-linejoin:round}.art-road__dash{fill:none;stroke:#faf9f5;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:18 22;opacity:.62}.art-pins{position:absolute;inset:0;pointer-events:none}.art-pin{position:absolute;pointer-events:all;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:0;padding:0;font-family:inherit;transition:opacity .18s;z-index:10}.art-pin:hover .art-pin__circle{box-shadow:0 6px 18px #1414132e,0 0 0 3px #fff}.art-pin--active{z-index:20}.art-pin__circle{position:relative;width:48px;height:48px;border-radius:50%;background:var(--pin-color, #6366f1);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #00000038,0 0 0 3px #fff;border:3px solid #fff;transition:box-shadow .18s}.art-pin--active .art-pin__circle{box-shadow:0 6px 22px #14141347,0 0 0 3px #fff,0 0 0 5px #30302e1a}.art-pin__num{color:#fff;font-size:1rem;font-weight:800;line-height:1}.art-pin__dot{position:absolute;top:-4px;right:-4px;width:12px;height:12px;background:#d4a017;border-radius:50%;border:2px solid #fff}.art-pin__tip{width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:14px solid var(--pin-color, #6366f1);margin-top:-1px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.18))}.art-pin__label{background:#fffefd;border:1px solid #f0eee6;border-radius:12px;padding:7px 12px;margin-top:6px;text-align:center;box-shadow:0 1px #e8e6dc inset,0 4px 20px #0000000d;min-width:110px;max-width:168px}.art-pin__title{display:block;font-size:.78rem;font-weight:600;color:#141413;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.art-pin__warn{display:block;font-size:.68rem;color:#a36a12;margin-top:2px}.art-pin__course-ok{display:block;font-size:.68rem;color:#0d845d;margin-top:2px}.art-pin--draft .art-pin__circle{border-style:dashed;opacity:.85}.art-empty-road{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;color:#87867f;pointer-events:none;font-size:.95rem;line-height:1.7}.art-empty-road strong{color:#4d4c48}.art-entry{background:#fff;border:1.5px solid #e5e7eb;border-radius:14px;overflow:hidden;margin-bottom:20px;box-shadow:0 2px 10px #0000000f}.art-entry__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:none;border:none;cursor:pointer;color:#1f2937;font-family:inherit;transition:background .15s;text-align:left}.art-entry__trigger:hover{background:#f9fafb}.art-entry__trigger-main{display:inline-flex;align-items:center;gap:10px;min-width:0}.art-entry__trigger-icon{flex-shrink:0;color:#059669}.art-entry__trigger-title{font-size:.98rem;font-weight:700;letter-spacing:-.01em}.art-entry__chevron-ico{flex-shrink:0;color:#9ca3af}.art-entry__body{padding:0 18px 18px;border-top:1px solid #f3f4f6;display:flex;flex-direction:column;gap:14px}.art-entry__hint{font-size:.83rem;color:#6b7280;margin:12px 0 0;line-height:1.6}.art-entry__current{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#ecfdf5;border:1.5px solid #86efac;border-radius:10px}.art-entry__current-text{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;flex:1;min-width:0}.art-entry__current-label{font-size:.72rem;font-weight:800;color:#15803d;text-transform:uppercase;letter-spacing:.04em}.art-entry__current-label:after{content:":";margin-left:1px}.art-entry__current-name{font-size:.9rem;font-weight:600;color:#14532d;min-width:0;line-height:1.35}.art-entry__remove-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.4rem .75rem;background:#fff;border:1px solid #fecaca;color:#dc2626;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;font-family:inherit;transition:background .15s,border-color .15s}.art-entry__remove-btn:hover:not(:disabled){background:#fef2f2;border-color:#f87171}.art-entry__remove-btn:disabled{opacity:.5;cursor:not-allowed}.art-entry__search{display:flex;flex-direction:column;gap:6px}.art-entry__search-label{font-size:.78rem;font-weight:600;color:#6b7280}.art-entry__search .art-input{background:#fff}.art-entry__list-empty{margin:0;padding:12px 14px;font-size:.85rem;color:#9ca3af;text-align:center;background:#f9fafb;border:1px dashed #e5e7eb;border-radius:10px}.art-entry__save{width:100%;justify-content:center;margin-top:2px;padding-top:.75rem;padding-bottom:.75rem;border-radius:10px;font-size:.95rem}.art-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto;padding:2px 4px 2px 2px;margin-right:-2px;scrollbar-width:thin;scrollbar-color:#d1d5db transparent}.art-list::-webkit-scrollbar{width:6px}.art-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:6px}.art-list-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;cursor:pointer;text-align:left;font-family:inherit;color:#374151;font-size:.88rem;transition:border-color .15s,background .15s,box-shadow .15s}.art-list-item:hover{background:#fafafa;border-color:#d1d5db}.art-list-item--active{border-color:#3b82f6;background:#eff6ff;color:#1e40af;box-shadow:0 0 0 1px #3b82f640}.art-list-item__info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.art-list-item__title{font-weight:600;line-height:1.35}.art-list-item__meta{display:inline-flex;align-items:center;gap:.35rem;font-size:.76rem;color:#6b7280}.art-list-item__clock{flex-shrink:0;color:#9ca3af}.art-list-item--active .art-list-item__meta{color:#3b82f6}.art-list-item--active .art-list-item__clock{color:#60a5fa}.art-check{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#2563eb}.art-overlay-bg{position:fixed;inset:0;background:#0f172a47;z-index:8000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.art-drawer{position:fixed;top:0;right:0;width:min(420px,100vw);height:100vh;height:100dvh;max-height:100dvh;background:#fff;border-left:1px solid #e2e8f0;box-shadow:-12px 0 48px #0f172a24;z-index:8010;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.art-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 22px;border-bottom:1px solid #e8edf5;background:linear-gradient(180deg,#fff,#f8fafc);flex-shrink:0}.art-drawer__content{flex:1;overflow-y:auto;overflow-x:hidden;scroll-padding-bottom:24px;padding-bottom:max(20px,env(safe-area-inset-bottom,0px))}.art-drawer__title{font-size:1.05rem;font-weight:700;color:#0f172a;margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;line-height:1.35;letter-spacing:-.02em}.art-drawer__actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px;flex-shrink:0}.art-drawer__close{background:#f3f4f6;border:none;border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;font-size:.85rem;transition:all .15s}.art-drawer__close:hover{background:#e5e7eb;color:#374151}.art-drawer__section{padding:22px 24px;border-bottom:1px solid #eef2f7;display:flex;flex-direction:column;gap:16px}.art-drawer__section:last-child{border-bottom:none}.art-drawer__section--basic{padding-top:24px}.art-drawer__form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;align-items:start}.art-drawer__form-row--single{grid-template-columns:1fr}.art-drawer__content .art-field{gap:7px}.art-drawer__content .art-input,.art-drawer__content .art-textarea,.art-drawer__content .art-select{min-height:42px}.art-drawer__content .art-textarea{min-height:5.5rem}.art-drawer--studio{--mod-slate-25: #f8fbff;--mod-slate-50: #f3f7fd;--mod-slate-100: #e8eef8;--mod-slate-200: #d6e0ee;--mod-slate-300: #b7c8df;--mod-slate-500: #60748f;--mod-slate-700: #24364b;--mod-ink: #142235;--mod-primary: #1f5eff;--mod-primary-700: #184ee0;--mod-danger: #c63f4d;--mod-warn: #a36a12;font-family:Segoe UI,system-ui,sans-serif;background:var(--mod-slate-25);border-left:1px solid var(--mod-slate-100);box-shadow:-10px 0 40px #10233e1a}.art-drawer--studio .art-drawer__header{align-items:center;background:#fff;border-bottom:1.5px solid var(--mod-slate-100);padding:16px 18px}.art-drawer--studio .art-drawer__title{color:var(--mod-ink);font-size:1.08rem;font-weight:800;letter-spacing:-.025em}.art-drawer--studio .art-drawer__actions .art-btn{box-shadow:none;transform:none;font-size:.8rem;font-weight:700;border-radius:10px;padding:.5rem .72rem}.art-drawer--studio .art-drawer__actions .art-btn:hover:not(:disabled){transform:translateY(-1px)}.art-drawer--studio .art-drawer__actions .art-btn--save{background:var(--mod-ink);color:#fff;border:none}.art-drawer--studio .art-drawer__actions .art-btn--save:hover:not(:disabled){background:#1e293b;box-shadow:0 4px 14px #1422352e}.art-drawer--studio .art-drawer__actions .art-btn--delete{background:#fff1f2;color:#be123c;border:1.5px solid #fecdd3}.art-drawer--studio .art-drawer__actions .art-btn--delete:hover:not(:disabled){background:#ffe4e6;border-color:#fda4af;box-shadow:none}.art-drawer--studio .art-drawer__close{width:36px;height:36px;border-radius:10px;border:1.5px solid var(--mod-slate-200);background:var(--mod-slate-50);color:var(--mod-slate-500)}.art-drawer--studio .art-drawer__close:hover{background:var(--mod-slate-100);color:var(--mod-slate-700)}.art-drawer--studio .art-drawer__content{background:var(--mod-slate-25);padding:12px 12px 20px}.art-drawer--studio .art-drawer__section{background:#fff;margin:0 0 12px;padding:18px 18px 20px;border:1px solid var(--mod-slate-100);border-radius:14px;box-shadow:0 2px 10px #10233e0d}.art-drawer--studio .art-drawer__section:last-child{margin-bottom:0}.art-drawer--studio .art-drawer__section--basic{padding-top:18px}.art-drawer--studio .art-drawer__section:last-child{border-bottom:1px solid var(--mod-slate-100)}.art-drawer--studio .art-drawer__section-title{color:var(--mod-primary);border-bottom-color:#dbe5f2;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding-bottom:10px;margin-bottom:0}.art-drawer--studio .art-section-hint{color:var(--mod-slate-500);font-size:.84rem}.art-drawer--studio .art-label{color:var(--mod-slate-700);font-size:.8rem;font-weight:600}.art-drawer--studio .art-input,.art-drawer--studio .art-textarea,.art-drawer--studio .art-select{background:#f8faff;border:1px solid #d0defc;border-radius:12px;color:var(--mod-ink);box-shadow:inset 0 1px #ffffffd9}.art-drawer--studio .art-input:focus,.art-drawer--studio .art-textarea:focus,.art-drawer--studio .art-select:focus{outline:none;border-color:var(--mod-primary);background:#fff;box-shadow:0 0 0 3px #1f5eff1f,0 4px 14px #1f5eff0f}.art-drawer--studio .art-btn--pick{width:100%;justify-content:center;background:var(--mod-slate-50);color:var(--mod-primary);border:1.5px solid var(--mod-slate-200);border-radius:10px;font-weight:700;font-size:.84rem;padding:.58rem .85rem}.art-drawer--studio .art-btn--pick:hover:not(:disabled){background:#e2eaff;border-color:#c5d6ff;box-shadow:0 2px 10px #1f5eff1a}.art-drawer--studio .art-badge{display:inline-flex;align-items:center;gap:.28rem}.art-drawer--studio .art-badge--new{background:#fffbeb;color:var(--mod-warn);border:1px solid #fde68a}.art-drawer--studio .art-badge--warning{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;font-weight:700;font-size:.68rem;letter-spacing:.02em;text-transform:none}.art-drawer--studio .art-drawer__course-stack{display:flex;flex-direction:column;gap:8px;margin-bottom:4px}.art-drawer--studio .art-drawer__course-pill{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--mod-slate-50);border:1px solid var(--mod-slate-100);border-radius:12px}.art-drawer--studio .art-drawer__course-title{flex:1;min-width:0;font-size:.88rem;font-weight:600;color:var(--mod-ink);line-height:1.35}.art-drawer--studio .art-drawer__course-remove{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:#fff;color:var(--mod-danger);cursor:pointer;border:1px solid #fecdd3;transition:background .15s,border-color .15s}.art-drawer--studio .art-drawer__course-remove:hover{background:#fff1f2;border-color:#fda4af}.art-picker--studio{--mod-slate-100: #e8eef8;--mod-slate-200: #d6e0ee;--mod-slate-500: #60748f;--mod-ink: #142235;--mod-primary: #1f5eff;--mod-danger: #c63f4d}.art-picker--studio .art-picker__inner{border:1px solid var(--mod-slate-100);box-shadow:0 24px 80px #10233e2e}.art-picker--studio .art-picker__header{border-bottom-color:var(--mod-slate-100)}.art-picker--studio .art-picker__title{color:var(--mod-ink)}.art-picker--studio .art-picker__input{background:#f8faff;border:1px solid #d0defc;border-radius:12px}.art-picker--studio .art-picker__input:focus{outline:none;border-color:var(--mod-primary);box-shadow:0 0 0 3px #1f5eff1f;background:#fff}.art-picker--studio .art-picker__card{background:#f8faff;border-color:#d0defc}.art-picker--studio .art-picker__card:hover{border-color:var(--mod-primary);box-shadow:0 4px 16px #1f5eff1f}.art-picker--studio .art-picker__card--selected{border-color:var(--mod-primary);background:#eff6ff}.art-picker--studio .art-picker__card-check{background:var(--mod-primary)}.art-picker--studio .art-drawer__close{border:1.5px solid var(--mod-slate-200);background:var(--mod-slate-50);color:var(--mod-slate-500)}.art-section-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6366f1}.art-drawer__section-title{font-size:.78rem;font-weight:800;letter-spacing:.06em;color:#4338ca;margin-bottom:2px;padding-bottom:12px;border-bottom:1px solid #e8e9ff;width:100%}.art-section-hint{font-size:.82rem;color:#9ca3af;margin:0;line-height:1.6}.art-field{display:flex;flex-direction:column;gap:5px}.art-label{font-size:.8rem;font-weight:600;color:#6b7280}.art-input,.art-textarea,.art-select{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:10px;color:#111827;font-size:.9rem;font-family:inherit;padding:9px 13px;transition:border-color .2s,background .2s;width:100%;box-sizing:border-box}.art-input:focus,.art-textarea:focus,.art-select:focus{outline:none;border-color:#6366f1;background:#fff}.art-entry__search .art-input:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9812e;background:#fff}.art-textarea{resize:vertical}.art-select{cursor:pointer}.art-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.art-loading-text{font-size:.82rem;color:#9ca3af;margin:4px 0}.art-selected-course{display:flex;align-items:flex-start;gap:12px;background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:12px;padding:12px 14px}.art-selected-course__thumb{width:52px;height:52px;border-radius:8px;-o-object-fit:cover;object-fit:cover;flex-shrink:0}.art-selected-course__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.art-selected-course__ok{font-size:.72rem;font-weight:700;color:#16a34a;text-transform:uppercase;letter-spacing:.05em}.art-selected-course__info strong{font-size:.9rem;color:#111827}.art-selected-course__info p{font-size:.8rem;color:#6b7280;margin:0}.art-selected-course__clear{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;padding:4px 10px;font-size:.78rem;font-weight:600;font-family:inherit;flex-shrink:0;transition:all .15s}.art-selected-course__clear:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.art-no-course{font-size:.83rem;color:#d97706;background:#fffbeb;border:1.5px solid #fde68a;border-radius:10px;padding:10px 14px}.art-badge{font-size:.65rem;font-weight:700;padding:2px 8px;border-radius:20px}.art-badge--new{background:#fef3c7;color:#d97706}.art-badge--warning{background:#fee2e2;color:#dc2626}.art-picker{position:fixed;inset:0;background:#00000073;z-index:8100;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:24px}.art-picker__inner{background:#fff;border-radius:20px;width:100%;max-width:780px;max-height:86vh;display:flex;flex-direction:column;box-shadow:0 24px 80px #00000040;overflow:hidden}.art-picker__header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1.5px solid #f3f4f6;flex-shrink:0}.art-picker__title{font-size:1.2rem;font-weight:800;color:#111827;margin:0}.art-picker__search{padding:16px 24px;border-bottom:1.5px solid #f3f4f6;flex-shrink:0;position:relative}.art-picker__search-spinner{position:absolute;right:36px;top:50%;transform:translateY(-50%);font-size:1.2rem;animation:spin 1s linear infinite}@keyframes spin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.art-picker__result-count{padding:8px 24px;font-size:.875rem;color:#6b7280;border-bottom:1px solid #e5e7eb;background:#fafafa}.art-picker__input{background:#f9fafb;font-size:1rem}.art-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;padding:16px 24px 24px;overflow-y:auto}.art-picker__card{display:flex;flex-direction:column;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:14px;cursor:pointer;text-align:left;font-family:inherit;overflow:hidden;transition:all .18s;position:relative}.art-picker__card:hover{border-color:#6366f1;background:#fafafa;box-shadow:0 4px 16px #6366f11f}.art-picker__card--selected{border-color:#6366f1;background:#eef2ff}.art-picker__card-thumb{width:100%;height:120px;-o-object-fit:cover;object-fit:cover}.art-picker__card-body{padding:12px 14px}.art-picker__card-title{display:block;font-size:.9rem;font-weight:700;color:#111827;margin-bottom:4px}.art-picker__card-desc{font-size:.78rem;color:#9ca3af;margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.art-picker__card-check{position:absolute;top:10px;right:10px;width:26px;height:26px;background:#6366f1;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.art-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:8200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.art-modal{background:#fff;border-radius:18px;padding:32px 36px;max-width:420px;width:90%;box-shadow:0 24px 80px #0003}.art-modal__title{font-size:1.1rem;font-weight:700;color:#111827;margin:0 0 10px}.art-modal__body{font-size:.9rem;color:#6b7280;margin:0 0 24px;line-height:1.6}.art-modal__actions{display:flex;gap:10px;justify-content:flex-end}@media(max-width:768px){.art{padding:16px 12px 60px}.art-drawer{width:100%}.art-picker{padding:12px}.art-picker__grid{grid-template-columns:1fr 1fr}}.acp-page{display:flex;flex-direction:column;gap:1.5rem;padding:0 0 2rem;width:100%;max-width:none;margin:0}.acp-table-wrap{background:#fff;border-radius:16px;border:1px solid #e8e6dc;overflow:hidden;box-shadow:#0000000d 0 4px 24px}.acp-table{width:100%;border-collapse:collapse;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px}.acp-table thead tr{background:#faf9f5;border-bottom:1px solid #e8e6dc}.acp-table th{padding:.85rem 1rem;text-align:left;font-weight:600;color:#5e5d59;font-size:12px;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.acp-table td{padding:.85rem 1rem;border-bottom:1px solid #f0eee6;color:#141413;vertical-align:middle}.acp-table tbody tr:last-child td{border-bottom:none}.acp-table tbody tr:hover td{background:#faf9f5}.acp-split-pill{display:inline-flex;align-items:center;gap:.35rem;background:#faf9f5;border:1px solid #e8e6dc;border-radius:999px;padding:.3rem .75rem;font-size:12px;font-weight:600;color:#c96442;white-space:nowrap}.acp-split-pill span{color:#87867f;font-weight:500}.acp-status-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:999px;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:600;background:color-mix(in srgb,var(--badge-color) 12%,#fff);color:var(--badge-color);border:1px solid color-mix(in srgb,var(--badge-color) 25%,transparent)}.acp-user-cell{display:flex;flex-direction:column;gap:.15rem}.acp-user-name{font-weight:600;color:#141413}.acp-user-email{font-size:12px;color:#87867f}.acp-actions-cell{display:flex;gap:.4rem}.acp-action-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;border:1px solid #e8e6dc;background:#fff;color:#5e5d59;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.acp-action-btn:hover{border-color:#c96442;color:#c96442;background:#faf9f5}.acp-action-btn--approve:hover{border-color:#16a34a;color:#16a34a;background:#f0fdf4}.acp-loading,.acp-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3.5rem 2rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;color:#87867f;font-size:14px}.acp-spin{animation:acp-spin .9s linear infinite}@keyframes acp-spin{to{transform:rotate(360deg)}}.acp-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;color:#5e5d59}.acp-pagination__info{font-size:12px;color:#87867f}.acp-pagination__nav{display:flex;align-items:center;gap:.75rem}.acp-page-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;border:1px solid #e8e6dc;background:#fff;color:#141413;cursor:pointer;transition:all .15s ease}.acp-page-btn:disabled{opacity:.4;cursor:not-allowed}.acp-page-btn:not(:disabled):hover{border-color:#c96442;color:#c96442;background:#faf9f5}.acp-pagination__pages{font-weight:600;color:#141413}.acp-toast{display:flex;align-items:center;gap:.5rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;padding:.65rem 1rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;color:#166534;font-weight:500}.acp-overlay{position:fixed;inset:0;z-index:1000;background:#00000073;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:acp-fade-in .18s ease}@keyframes acp-fade-in{0%{opacity:0}to{opacity:1}}.acp-modal{background:#fff;border-radius:16px;width:min(520px,95vw);border:1px solid #e8e6dc;box-shadow:#0003 0 20px 60px;overflow:hidden;animation:acp-slide-up .2s ease}.acp-modal--sm{width:min(420px,95vw)}@keyframes acp-slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.acp-modal__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0eee6;background:#faf9f5}.acp-modal__title{display:flex;align-items:center;gap:.5rem;font-family:Playfair Display,Georgia,serif;font-weight:600;font-size:16px;color:#141413}.acp-modal__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;border:none;background:transparent;cursor:pointer;color:#87867f;transition:background .15s ease,color .15s ease}.acp-modal__close:hover{background:#e8e6dc;color:#141413}.acp-modal__body{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.acp-info-box{background:#faf9f5;border:1px solid #e8e6dc;border-radius:14px;padding:1rem;display:flex;flex-direction:column;gap:.6rem}.acp-info-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px}.acp-info-row>span:first-child{color:#87867f}.acp-info-split{font-size:14px;font-weight:600;color:#141413}.acp-field{display:flex;flex-direction:column;gap:.4rem}.acp-label{font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:12px;font-weight:600;color:#5e5d59}.acp-textarea{border:1px solid #e8e6dc;border-radius:12px;padding:.65rem .85rem;font-size:13px;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;resize:vertical;min-height:80px;outline:none;transition:border-color .15s ease,box-shadow .15s ease;background:#fff;color:#141413}.acp-textarea:focus{border-color:#c96442;box-shadow:0 0 0 3px #c964421f}.acp-error{display:flex;align-items:center;gap:.4rem;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:.55rem .85rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;color:#b91c1c}.acp-modal__actions{display:flex;gap:.65rem;justify-content:flex-end;flex-wrap:wrap}.acp-btn-ghost{padding:.55rem 1.15rem;border-radius:12px;border:1px solid #e8e6dc;background:#fff;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:500;color:#5e5d59;cursor:pointer;transition:background .15s ease}.acp-btn-ghost:hover{background:#f5f4ed}.acp-btn-approve{padding:.55rem 1.15rem;border-radius:12px;border:none;background:#16a34a;color:#fff;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:filter .15s ease;display:inline-flex;align-items:center;gap:.4rem}.acp-btn-approve:hover:not(:disabled){filter:brightness(1.05)}.acp-btn-approve:disabled{opacity:.55;cursor:not-allowed}.acp-btn-reject{padding:.55rem 1.15rem;border-radius:12px;border:none;background:#dc2626;color:#fff;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:filter .15s ease;display:inline-flex;align-items:center;gap:.4rem}.acp-btn-reject:hover:not(:disabled){filter:brightness(1.05)}.acp-btn-reject:disabled{opacity:.55;cursor:not-allowed}.wad-page{width:100%;max-width:none;margin:0;display:flex;flex-direction:column;gap:1.5rem;padding:0 0 2rem}.wad-success-toast{display:flex;align-items:center;gap:.5rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;padding:.65rem 1rem;color:#166534;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:13px;font-weight:500}.wad-table-wrap{background:#fff;border-radius:16px;border:1px solid #e8e6dc;box-shadow:#0000000d 0 4px 24px;overflow:hidden}.wad-table{width:100%;border-collapse:collapse;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem}.wad-table thead tr{background:#faf9f5;border-bottom:1px solid #e8e6dc}.wad-table th{padding:.85rem 1rem;text-align:left;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:12px;font-weight:600;color:#5e5d59;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e8e6dc;white-space:nowrap}.wad-table td{padding:.85rem 1rem;border-bottom:1px solid #f0eee6;color:#141413;vertical-align:middle;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:13px}.wad-table tbody tr:last-child td{border-bottom:none}.wad-table tbody tr:hover td{background:#faf9f5;transition:background .15s ease}.wad-user-cell{display:flex;flex-direction:column;gap:.125rem}.wad-user-name{font-weight:600;color:#141413;font-size:.875rem}.wad-user-email{font-size:.75rem;color:#87867f}.wad-mono{font-family:Courier New,monospace;font-size:.8125rem;color:#5e5d59;background:#f0eee6;padding:.125rem .375rem;border-radius:4px}.wad-status-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:999px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:11px;font-weight:600;background:color-mix(in srgb,var(--badge-color) 12%,#fff);color:var(--badge-color);border:1px solid color-mix(in srgb,var(--badge-color) 25%,transparent);white-space:nowrap}.wad-actions-cell{display:flex;gap:.375rem;align-items:center}.wad-action-btn{width:34px;height:34px;border-radius:10px;border:1px solid #e8e6dc;background:#fff;color:#5e5d59;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,background .15s ease,color .15s ease}.wad-action-btn:hover{border-color:#c96442;color:#c96442;background:#faf9f5}.wad-action-btn--approve:hover{border-color:#16a34a;color:#16a34a;background:#f0fdf4}.wad-action-btn--reject:hover{border-color:#dc2626;color:#dc2626;background:#fef2f2}.wad-loading,.wad-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 2rem;color:#87867f;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9375rem}.wad-spin{animation:wad-spin .8s linear infinite}@keyframes wad-spin{to{transform:rotate(360deg)}}.wad-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:13px;color:#5e5d59}.wad-pagination__info{font-size:12px;color:#87867f}.wad-pagination__nav{display:flex;align-items:center;gap:.75rem}.wad-pagination__pages{color:#141413;font-weight:600}.wad-page-btn{width:32px;height:32px;border-radius:10px;border:1px solid #e8e6dc;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#141413;transition:all .15s ease}.wad-page-btn:disabled{opacity:.4;cursor:not-allowed}.wad-page-btn:not(:disabled):hover{border-color:#c96442;color:#c96442;background:#faf9f5}.wad-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1200;padding:1rem}.wad-modal{background:#fff;border-radius:16px;border:1px solid #e8e6dc;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:#0003 0 20px 60px}.wad-modal--sm{max-width:420px}.wad-modal__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0eee6;background:#faf9f5}.wad-modal__title{display:flex;align-items:center;gap:.5rem;font-family:Playfair Display,Georgia,serif;font-size:16px;font-weight:600;color:#141413}.wad-modal__close{background:transparent;border:none;cursor:pointer;color:#87867f;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;transition:background .15s ease,color .15s ease}.wad-modal__close:hover{background:#e8e6dc;color:#141413}.wad-modal__body{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.wad-modal__actions{display:flex;gap:.625rem}.wad-info-box{background:#faf9f5;border:1px solid #e8e6dc;border-radius:14px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.625rem}.wad-info-row{display:flex;justify-content:space-between;align-items:center;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem}.wad-info-row>span:first-child{color:#87867f;font-size:.8125rem}.wad-info-amount{color:#c96442;font-size:1rem;font-weight:700;font-family:Be Vietnam Pro,system-ui,sans-serif}.wad-copy-row{display:flex;align-items:center;gap:.375rem}.wad-copy-btn{background:#e8e6dc;border:none;border-radius:6px;cursor:pointer;color:#87867f;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:all .15s}.wad-copy-btn:hover{background:#d1cfc5;color:#141413}.wad-dropzone{border:2px dashed #d1cfc5;border-radius:12px;padding:1.5rem;text-align:center;cursor:pointer;background:#f5f4ed;transition:border-color .2s,background .2s;position:relative}.wad-dropzone:hover,.wad-dropzone.has-file{border-color:#c96442;background:#fdf8f5}.wad-dropzone__icon{color:#87867f;margin-bottom:.5rem}.wad-dropzone__text{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#5e5d59;margin:0 0 .25rem}.wad-dropzone__text span{color:#c96442;text-decoration:underline}.wad-dropzone__sub{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.75rem;color:#87867f;margin:0}.wad-preview-wrap{position:relative;display:inline-block}.wad-preview-img{max-height:180px;border-radius:8px;display:block;margin:0 auto;-o-object-fit:contain;object-fit:contain}.wad-preview-remove{position:absolute;top:-8px;right:-8px;background:#b53333;color:#faf9f5;border:none;border-radius:50%;width:22px;height:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}.wad-proof-section{display:flex;flex-direction:column;gap:.5rem}.wad-field{display:flex;flex-direction:column;gap:.375rem}.wad-label{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem;font-weight:600;color:#5e5d59;text-transform:uppercase;letter-spacing:.04em}.wad-textarea{padding:.625rem .875rem;border:1.5px solid #e8e6dc;border-radius:10px;background:#fff;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#141413;resize:vertical;outline:none;transition:border-color .15s,box-shadow .15s}.wad-textarea::-moz-placeholder{color:#87867f}.wad-textarea::placeholder{color:#87867f}.wad-textarea:focus{border-color:#3898ec;box-shadow:0 0 0 3px #3898ec1f}.wad-step-hint{font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.875rem;color:#87867f;line-height:1.6;margin:0}.wad-error{background:#fdf2f2;border:1px solid #e8c4c4;border-radius:10px;padding:.625rem .875rem;display:flex;align-items:flex-start;gap:.5rem;color:#b53333;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.8125rem}.wad-btn-confirm{flex:1;padding:.7rem;background:#141413;color:#faf9f5;border:1px solid #30302e;border-radius:12px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9375rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.375rem;transition:all .15s}.wad-btn-confirm:hover:not(:disabled){background:#30302e}.wad-btn-confirm:active{transform:scale(.98)}.wad-btn-confirm:disabled{opacity:.55;cursor:not-allowed}.wad-btn-reject{flex:1;padding:.7rem;background:#b53333;color:#faf9f5;border:none;border-radius:12px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .15s;box-shadow:0 0 0 1px #b53333}.wad-btn-reject:hover:not(:disabled){background:#963030;box-shadow:0 0 0 1px #963030}.wad-btn-reject:active{transform:scale(.98)}.wad-btn-reject:disabled{opacity:.55;cursor:not-allowed}.wad-btn-ghost{flex:1;padding:.7rem;background:#e8e6dc;border:1px solid #d1cfc5;border-radius:12px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:.9375rem;font-weight:500;color:#4d4c48;cursor:pointer;box-shadow:0 0 0 1px #d1cfc5;transition:all .15s}.wad-btn-ghost:hover{box-shadow:0 0 0 1px #c2c0b6;border-color:#c2c0b6}.wad-btn-ghost:active{transform:scale(.98)}.revenue-breakdown-page{--rb-ink: #141413;--rb-muted: #87867f;--rb-subtle: #5e5d59;--rb-border: #e8e6dc;--rb-surface: #ffffff;--rb-canvas: transparent;--rb-accent: #c96442;--rb-violet: #9b6fe0;--rb-green: #2ead7a;width:100%;max-width:none;margin:0;padding:0 0 2.5rem;background:var(--rb-canvas);min-height:0;font-family:Be Vietnam Pro,system-ui,sans-serif;display:flex;flex-direction:column;gap:1.75rem;box-sizing:border-box}.rb-motion-root,.rb-loading-stack{display:flex;flex-direction:column;gap:1.75rem}.rb-skeleton{border-radius:16px;background:linear-gradient(90deg,#edeae4,#f5f4ed,#edeae4);background-size:200% 100%;animation:rb-shimmer 1.2s ease-in-out infinite}@keyframes rb-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.rb-skeleton--header{height:120px;border-radius:18px}.rb-skeleton--featured{min-height:220px}.rb-skeleton--source{min-height:104px;border-radius:18px}.rb-skeleton--chart{min-height:380px}.rb-error-icon{width:52px;height:52px;border-radius:16px;background:#fef2f2;color:#dc2626;display:flex;align-items:center;justify-content:center;margin:0 auto}.breakdown-header{display:flex;flex-direction:column;gap:1.35rem;padding:1.35rem 1.5rem;background:#faf9f5;border:1px solid var(--rb-border);border-radius:18px;box-shadow:0 0 0 1px #d1cfc559,#0000000a 0 8px 28px}.breakdown-header__intro{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.breakdown-header__title-row{display:flex;align-items:flex-start;gap:1rem;min-width:0}.breakdown-header__icon{flex-shrink:0;width:44px;height:44px;border-radius:14px;background:#e8e6dc;color:#5e5d59;display:flex;align-items:center;justify-content:center}.breakdown-header__heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.35rem,2.6vw,1.65rem);font-weight:600;color:var(--rb-ink);margin:0;line-height:1.2;letter-spacing:-.02em}.header-stack{display:flex;flex-direction:column;gap:.4rem;min-width:0}.header-sub{font-size:.8125rem;color:var(--rb-muted);margin:0;line-height:1.55;max-width:52ch}.breakdown-header__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.rb-date-strip{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.45rem .65rem .45rem .75rem;background:var(--rb-surface);border:1px solid var(--rb-border);border-radius:14px}.rb-date-strip__icon{color:var(--rb-muted);flex-shrink:0}.rb-date-input{border:none;background:transparent;font-family:inherit;font-size:.8125rem;font-weight:600;color:var(--rb-ink);padding:.25rem 0;cursor:pointer}.rb-date-input:focus{outline:none}.rb-date-sep{color:var(--rb-muted);font-size:.75rem;font-weight:600;padding:0 .15rem}.rb-quick-range{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem;margin:0;border:none;min-width:0;background:#f5f4ed;border-radius:12px;flex-wrap:wrap}.rb-quick-pill{border:none;cursor:pointer;padding:.45rem .85rem;border-radius:10px;font-family:inherit;font-size:.75rem;font-weight:600;color:var(--rb-muted);background:transparent;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.rb-quick-pill:hover{color:var(--rb-subtle)}.rb-quick-pill--active{background:#fff;color:var(--rb-ink);box-shadow:0 1px 3px #0000000f}.breakdown-header__actions{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex-wrap:wrap}.rb-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.55rem 1rem;border-radius:12px;font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;transition:filter .15s ease,transform .15s ease,background .15s ease,border-color .15s ease}.rb-btn:active:not(:disabled){transform:scale(.98)}.rb-btn:disabled{opacity:.55;cursor:not-allowed}.rb-btn--outline{background:#fff;border:1px solid var(--rb-border);color:var(--rb-subtle)}.rb-btn--outline:hover:not(:disabled){background:#faf9f5;border-color:#d1cfc5;color:var(--rb-ink)}.rb-btn--primary{background:var(--rb-accent);border:1px solid var(--rb-accent);color:#faf9f5}.rb-btn--primary:hover:not(:disabled){filter:brightness(1.03)}.revenue-bento-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:1.25rem;align-items:stretch}.featured-revenue-card{position:relative;padding:2rem 2.25rem;border-radius:18px;border:1px solid var(--rb-border);background:linear-gradient(155deg,#fff,#faf9f5 42%,#fff9f5);box-shadow:#0000000d 0 8px 32px;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:200px}.featured-revenue-card__mesh{pointer-events:none;position:absolute;inset:-40% -20% auto auto;width:70%;height:140%;background:radial-gradient(circle at 30% 40%,rgba(201,100,66,.09),transparent 52%),radial-gradient(circle at 70% 60%,rgba(155,111,224,.06),transparent 48%)}.featured-revenue-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--rb-accent),#e8834e);z-index:1}.featured-revenue-card>*:not(.featured-revenue-card__mesh){position:relative;z-index:2}.card-label-large{font-size:.6875rem;font-weight:700;color:var(--rb-muted);text-transform:uppercase;letter-spacing:.11em;margin-bottom:.85rem}.card-value-large{font-family:Playfair Display,Georgia,serif;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:600;font-variant-numeric:tabular-nums;color:var(--rb-ink);margin:0 0 1rem;line-height:1.05;letter-spacing:-.03em}.card-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.card-meta-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:999px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:#c964421a;color:#a54b2f;border:1px solid rgba(201,100,66,.2)}.card-meta-muted{font-size:.8125rem;font-weight:600;color:var(--rb-muted);font-variant-numeric:tabular-nums}.sources-sidebar{display:flex;flex-direction:column;gap:1rem}.source-mini-card{flex:1;padding:1.35rem 1.25rem;border-radius:16px;border:1px solid var(--rb-border);background:var(--rb-surface);display:flex;align-items:center;gap:1.1rem;transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease;box-shadow:#00000008 0 4px 16px}.source-mini-card:hover{transform:translateY(-2px);border-color:#d1cfc5;box-shadow:#0000000f 0 12px 28px}.source-mini-card--subs .source-icon{background:#f5f3ff;color:#7c5cbf}.source-mini-card--courses .source-icon{background:#ecfdf5;color:#0f766e}.source-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#faf9f5;border-radius:14px;color:var(--rb-muted);flex-shrink:0}.source-info h3{font-size:.625rem;font-weight:700;color:var(--rb-muted);margin:0 0 .2rem;text-transform:uppercase;letter-spacing:.1em}.source-info p{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--rb-ink);margin:0;letter-spacing:-.02em}.source-percentage{font-size:.6875rem;color:var(--rb-subtle);margin-top:.25rem;font-weight:600}.main-chart-card{padding:1.5rem 1.5rem 1.35rem;border-radius:18px;border:1px solid var(--rb-border);background:var(--rb-surface);box-shadow:#0000000a 0 8px 28px}.main-chart-card__head{margin-bottom:1.25rem}.main-chart-card h2{font-family:Playfair Display,Georgia,serif;font-size:1.2rem;font-weight:600;color:var(--rb-ink);margin:0 0 .35rem;letter-spacing:-.02em}.main-chart-card p{font-size:.8125rem;color:var(--rb-muted);margin:0;line-height:1.5;max-width:56ch}.chart-container{margin:0 -.25rem}.ledger-section{display:flex;flex-direction:column;gap:1.25rem}.ledger-header-row{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem}.ledger-header-row h2{font-family:Playfair Display,Georgia,serif;font-size:1.2rem;font-weight:600;color:var(--rb-ink);margin:0;letter-spacing:-.02em}.ledger-search{display:flex;align-items:center;gap:.65rem;width:100%;max-width:380px;padding:.55rem 1rem;background:#faf9f5;border:1px solid var(--rb-border);border-radius:14px;transition:border-color .15s ease,box-shadow .15s ease}.ledger-search:focus-within{border-color:#3898eca6;box-shadow:0 0 0 3px #3898ec1f;background:#fff}.ledger-search input{flex:1;min-width:0;border:none;background:transparent;font-family:inherit;font-size:.875rem;color:var(--rb-ink);outline:none}.ledger-search input::-moz-placeholder{color:var(--rb-muted)}.ledger-search input::placeholder{color:var(--rb-muted)}.ledger-search-icon{flex-shrink:0;color:var(--rb-muted)}.table-wrapper{background:var(--rb-surface);border-radius:16px;border:1px solid var(--rb-border);overflow:hidden;box-shadow:#00000008 0 6px 22px}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:.95rem 1.25rem;background:#faf9f5;border-bottom:1px solid var(--rb-border);text-align:left;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--rb-subtle)}.data-table td{padding:.95rem 1.25rem;border-bottom:1px solid #f0eee6;font-size:.8125rem;color:var(--rb-ink)}.data-table tbody tr:hover td{background:#fdfcfa}.data-table tbody tr:last-child td{border-bottom:none}.date-cell{font-weight:600;font-variant-numeric:tabular-nums}.currency-cell{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.rb-currency-sub{color:#6d4cbf}.rb-currency-course{color:#0d9488}.currency-total{font-weight:800;color:var(--rb-ink)}.table-footer-row{background:#faf9f5}.table-footer-row td{font-weight:800;font-size:.8125rem;border-top:2px solid var(--rb-border);border-bottom:none;padding-top:1rem;padding-bottom:1rem}.ledger-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.ledger-footer-left{font-size:.8125rem;color:var(--rb-muted)}.ledger-footer-left strong{color:var(--rb-ink);font-weight:700}.ledger-footer-right{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.ledger-page-indicator{font-size:.8125rem;color:var(--rb-muted);font-weight:500}.rb-page-size-label{display:inline-flex;align-items:center;gap:.5rem}.rb-page-size-label__text{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--rb-muted)}.rb-page-size-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.45rem 2rem .45rem .75rem;border-radius:11px;border:1px solid var(--rb-border);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2387867f' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right .65rem center no-repeat;font-family:inherit;font-size:.8125rem;font-weight:600;color:var(--rb-subtle);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.rb-page-size-select:hover{border-color:#d1cfc5}.rb-page-size-select:focus{outline:none;border-color:#3898eca6;box-shadow:0 0 0 3px #3898ec1f}.rb-pager{display:inline-flex;align-items:center;gap:.3rem}.rb-pager-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:10px;border:1px solid var(--rb-border);background:#fff;color:var(--rb-ink);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.rb-pager-btn:hover:not(:disabled){border-color:var(--rb-accent);color:var(--rb-accent);background:#fffdfb}.rb-pager-btn:disabled{opacity:.38;cursor:not-allowed}.insight-footer{padding:1.5rem;border-radius:16px;border:1px solid var(--rb-border);background:linear-gradient(180deg,#faf9f5,#fff);box-shadow:#00000008 0 6px 24px}.insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem 2rem}.insight-item{padding:.25rem 0 0 1rem;border-top:1px solid var(--rb-border)}.insight-item--subs{border-left-color:#9b6fe0a6}.insight-item--courses{border-left-color:#2ead7abf}.insight-item h4{font-size:.6875rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--rb-accent);margin:0 0 .5rem}.insight-item p{font-size:.8125rem;color:var(--rb-subtle);line-height:1.65;margin:0}@keyframes admin-finance-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-finance-spin{animation:admin-finance-spin .85s linear infinite}@media(max-width:1100px){.revenue-bento-grid{grid-template-columns:1fr}.sources-sidebar{flex-direction:row;flex-wrap:wrap}.source-mini-card{flex:1 1 220px}}@media(max-width:768px){.revenue-breakdown-page{gap:1.35rem;padding-bottom:2rem}.breakdown-header__toolbar{flex-direction:column;align-items:stretch}.breakdown-header__actions{margin-left:0;width:100%}.rb-btn{flex:1;min-width:0}.ledger-header-row{flex-direction:column;align-items:stretch}.ledger-search{max-width:none}.featured-revenue-card{padding:1.5rem 1.35rem}.data-table th,.data-table td{padding:.75rem 1rem}}.rp{--rp-primary: #c96442;--rp-primary-soft: rgba(201, 100, 66, .12);--rp-text-1: #141413;--rp-text-2: #4d4c48;--rp-text-3: #5e5d59;--rp-text-4: #87867f;--rp-border: #e8e6dc;--rp-surface: #ffffff;--rp-bg: #faf9f5;--rp-radius: 12px;--rp-f-head: "Be Vietnam Pro", -apple-system, sans-serif;--rp-f-body: "Be Vietnam Pro", -apple-system, sans-serif;max-width:1200px;margin:0 auto;padding:0 0 2.5rem;font-family:var(--rp-f-body)}.rp-header{margin-bottom:1.375rem;padding-bottom:1.25rem;border-bottom:1px solid var(--rp-border)}.rp-title{font-size:1.4rem;font-weight:700;color:var(--rp-text-1);font-family:var(--rp-f-head);letter-spacing:-.3px;margin:0 0 .25rem}.rp-subtitle{font-size:.85rem;color:var(--rp-text-3);margin:0}.rp-tabs{display:flex;gap:.2rem;margin-bottom:1.25rem;background:var(--rp-bg);padding:.25rem;border-radius:10px;width:-moz-fit-content;width:fit-content;border:1px solid var(--rp-border)}.rp-tab{display:flex;align-items:center;gap:.4rem;padding:.45rem .875rem;font-size:.82rem;font-weight:500;color:var(--rp-text-3);background:transparent;border:none;border-radius:7px;cursor:pointer;transition:all .14s ease;font-family:var(--rp-f-body)}.rp-tab:hover{color:var(--rp-text-1);background:var(--rp-surface)}.rp-tab--active{background:var(--rp-surface);color:var(--rp-primary);font-weight:600;box-shadow:0 1px 3px #0e0c151a}.rp-tab-badge{background:var(--rp-primary);color:#fff;font-size:.68rem;font-weight:700;border-radius:9999px;padding:0 5px;min-width:16px;height:16px;line-height:16px;text-align:center;display:inline-block}.rp-error{background:#fef2f2;border:1px solid #fecaca;color:#7f1d1d;border-radius:8px;padding:.75rem 1rem;font-size:.85rem;margin-bottom:1rem}.rp-body{display:grid;grid-template-columns:420px 1fr;gap:1rem;align-items:start}.rp-list{background:var(--rp-surface);border:1px solid var(--rp-border);border-radius:var(--rp-radius);overflow:hidden;display:flex;flex-direction:column}.rp-search-wrap{position:relative;padding:.75rem;border-bottom:1px solid var(--rp-border)}.rp-search-icon{position:absolute;left:1.375rem;top:50%;transform:translateY(-50%);color:var(--rp-text-4);pointer-events:none}.rp-search-input{width:100%;padding:.5rem .75rem .5rem 1.875rem;font-size:.83rem;border:1px solid var(--rp-border);border-radius:8px;background:var(--rp-bg);color:var(--rp-text-1);font-family:var(--rp-f-body);outline:none;transition:border-color .14s ease;box-sizing:border-box}.rp-search-input:focus{border-color:var(--rp-primary)}.rp-list-count{font-size:.73rem;color:var(--rp-text-4);padding:.35rem .875rem;margin:0;background:var(--rp-bg);border-bottom:1px solid var(--rp-border)}.rp-items{overflow-y:auto;max-height:calc(100vh - 300px)}.rp-row{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;border:none;border-bottom:1px solid var(--rp-border);background:transparent;cursor:pointer;text-align:left;width:100%;transition:background .12s ease;font-family:var(--rp-f-body)}.rp-row:last-child{border-bottom:none}.rp-row:hover{background:var(--rp-bg)}.rp-row--active,.rp-row--active:hover{background:var(--rp-primary-soft)}@keyframes rp-highlight-pulse{0%{background:#c964421f;box-shadow:inset 3px 0 #c96442}60%{background:#c964420f;box-shadow:inset 3px 0 #c96442}to{background:transparent;box-shadow:none}}.rp-row--highlight{animation:rp-highlight-pulse 2.5s ease-out forwards}.rp-row-avatar{width:36px;height:36px;border-radius:9px;background:var(--rp-primary-soft);color:var(--rp-primary);font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--rp-f-head)}.rp-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rp-row-name{font-size:.875rem;font-weight:600;color:var(--rp-text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-row-sub{font-size:.78rem;color:var(--rp-text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-row-date{font-size:.72rem;color:var(--rp-text-4)}.rp-row--skeleton{pointer-events:none}.rp-skel{background:#eeede7;border-radius:4px;animation:rp-pulse 1.4s ease-in-out infinite}.rp-skel--avatar{width:36px;height:36px;border-radius:9px;flex-shrink:0}.rp-skel--line{height:10px}.rp-skel--badge{width:58px;height:22px;border-radius:9999px;flex-shrink:0}@keyframes rp-pulse{0%,to{opacity:1}50%{opacity:.38}}.rp-empty{padding:3rem 1rem;text-align:center;color:var(--rp-text-3);font-size:.85rem}.rp-pagination{display:flex;align-items:center;justify-content:center;gap:.875rem;padding:.75rem;border-top:1px solid var(--rp-border)}.rp-page-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--rp-border);border-radius:6px;background:transparent;cursor:pointer;color:var(--rp-text-2);transition:all .12s ease}.rp-page-btn:disabled{opacity:.3;cursor:not-allowed}.rp-page-btn:not(:disabled):hover{border-color:var(--rp-primary);color:var(--rp-primary)}.rp-pagination-info{font-size:.8rem;color:var(--rp-text-3)}.rp-badge{display:inline-flex;align-items:center;padding:.18rem .55rem;border-radius:9999px;font-size:.71rem;font-weight:600;white-space:nowrap;flex-shrink:0}.badge--pending{background:#fef3c7;color:#92400e}.badge--approved{background:#d1fae5;color:#065f46}.badge--rejected{background:#fee2e2;color:#991b1b}.rp-detail{background:var(--rp-surface);border:1px solid var(--rp-border);border-radius:var(--rp-radius);position:sticky;top:80px;max-height:calc(100vh - 120px);overflow-y:auto;display:flex;flex-direction:column}.rp-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:4rem 2rem;color:var(--rp-text-4);font-size:.85rem;text-align:center;min-height:320px}.rp-detail-empty p{margin:0}.rp-detail-empty-icon{width:52px;height:52px;border-radius:14px;background:var(--rp-bg);border:1px solid var(--rp-border);display:flex;align-items:center;justify-content:center;color:var(--rp-text-4)}.rpd-header{display:flex;align-items:flex-start;gap:.875rem;padding:1.25rem 1.25rem 1rem;border-bottom:1px solid var(--rp-border)}.rpd-avatar{width:44px;height:44px;border-radius:12px;background:var(--rp-primary-soft);color:var(--rp-primary);font-size:.875rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--rp-f-head)}.rpd-header-info{flex:1;min-width:0}.rpd-name{font-size:.975rem;font-weight:700;color:var(--rp-text-1);font-family:var(--rp-f-head);margin:0 0 2px}.rpd-username{font-size:.78rem;color:var(--rp-text-3);margin:0 0 .5rem}.rpd-close{width:28px;height:28px;border-radius:6px;border:1px solid var(--rp-border);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--rp-text-3);transition:all .12s ease;flex-shrink:0}.rpd-close:hover{border-color:var(--rp-primary);color:var(--rp-primary)}.rpd-body{padding:1rem 1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.rpd-section{display:flex;flex-direction:column;gap:.5rem}.rpd-section-title{display:flex;align-items:center;gap:.35rem;font-size:.7rem;font-weight:600;color:var(--rp-text-3);text-transform:uppercase;letter-spacing:.05em;font-family:var(--rp-f-body);margin:0}.rpd-rows{border:1px solid var(--rp-border);border-radius:8px;overflow:hidden}.rpd-row{display:flex;gap:.75rem;padding:.5rem .75rem;border-bottom:1px solid var(--rp-border);font-size:.82rem}.rpd-row:last-child{border-bottom:none}.rpd-row-label{display:flex;align-items:center;gap:.25rem;color:var(--rp-text-3);min-width:76px;flex-shrink:0;font-size:.78rem}.rpd-row-value{color:var(--rp-text-1);font-weight:500;flex:1;text-align:right;word-break:break-word}.rpd-link{color:var(--rp-primary);text-decoration:none;font-size:.82rem;word-break:break-all}.rpd-link:hover{text-decoration:underline}.rpd-description{font-size:.83rem;color:var(--rp-text-2);line-height:1.65;background:var(--rp-bg);border:1px solid var(--rp-border);border-radius:8px;padding:.75rem;margin:0}.rpd-admin-note{font-size:.83rem;color:var(--rp-text-2);line-height:1.55;background:#fef9ec;border:1px solid #fde68a;box-shadow:inset 2px 0 #f59e0b;border-radius:8px;padding:.75rem;margin:0}.rpd-admin-note-lines{display:flex;flex-direction:column;gap:.3rem}.rpd-admin-note-line{font-size:.83rem;color:var(--rp-text-2);line-height:1.55;margin:0}.rpd-admin-note-fields{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.6rem;padding-top:.55rem;border-top:1px solid #fde68a}.rpd-admin-note-field{display:inline-flex;align-items:center;gap:.25rem;font-size:.71rem;font-weight:600;padding:.25rem .6rem;border-radius:4px;white-space:nowrap}.rpd-admin-note-field--pass{background:#05966926;color:#065f46}.rpd-admin-note-field--fail{background:#dc26261f;color:#991b1b}.rpd-verification-loading,.rpd-verification-error,.rpd-verification-hint{border:1px solid var(--rp-border);border-radius:8px;padding:.65rem .75rem;font-size:.8rem}.rpd-verification-loading{display:flex;align-items:center;gap:.45rem;color:var(--rp-text-3);background:var(--rp-bg)}.rpd-spin{animation:rpd-spin .9s linear infinite}@keyframes rpd-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rpd-verification-error{display:flex;align-items:center;gap:.45rem;color:#b91c1c;background:#fef2f2;border-color:#fecaca}.rpd-verification-hint{color:var(--rp-text-3);background:var(--rp-bg)}.rpd-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.rpd-image-card{display:flex;flex-direction:column;gap:.4rem;border:1px solid var(--rp-border);border-radius:10px;padding:.4rem;background:#fff;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}.rpd-image-card:hover{border-color:var(--rp-primary);box-shadow:0 2px 8px #00000014}.rpd-image-card img{width:100%;height:auto;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover;border-radius:8px}.rpd-image-card span{font-size:.74rem;font-weight:600;color:var(--rp-text-2);text-align:center}.rpd-actions{border-top:1px solid var(--rp-border);padding-top:1rem;display:flex;flex-direction:column;gap:.625rem}.rpd-action-btns{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.rpd-approve,.rpd-reject{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.6rem .75rem;font-size:.82rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .14s ease;font-family:var(--rp-f-body);border:1.5px solid transparent}.rpd-approve{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.rpd-approve:hover,.rpd-approve--active{background:#15803d;color:#fff;border-color:#15803d}.rpd-reject{background:#fef2f2;color:#991b1b;border-color:#fecaca}.rpd-reject:hover,.rpd-reject--active{background:#dc2626;color:#fff;border-color:#dc2626}.rpd-comment-wrap{display:flex;flex-direction:column;gap:.5rem;animation:rpd-fade-in .15s ease}@keyframes rpd-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.rpd-textarea{width:100%;padding:.6rem .75rem;font-size:.83rem;border:1px solid var(--rp-border);border-radius:8px;font-family:var(--rp-f-body);color:var(--rp-text-1);resize:vertical;outline:none;transition:border-color .12s ease;box-sizing:border-box}.rpd-textarea:focus{border-color:var(--rp-primary)}.rpd-submit{width:100%;padding:.65rem 1rem;font-size:.83rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:opacity .14s ease;font-family:var(--rp-f-body);letter-spacing:.01em}.rpd-submit:disabled{opacity:.5;cursor:not-allowed}.rpd-submit--approve{background:#15803d;color:#fff}.rpd-submit--approve:not(:disabled):hover{background:#166534}.rpd-submit--reject{background:#dc2626;color:#fff}.rpd-submit--reject:not(:disabled):hover{background:#b91c1c}.rp-toast{position:fixed;bottom:2rem;right:2rem;display:flex;align-items:center;gap:.625rem;padding:.75rem 1.125rem;border-radius:10px;font-size:.85rem;font-weight:500;box-shadow:0 4px 20px #0e0c1529;z-index:9999;animation:toast-in .22s ease;font-family:var(--rp-f-body)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.rp-toast--success{background:#0e0c15;color:#fff}.rp-toast--error{background:#dc2626;color:#fff}.rp-lightbox{position:fixed;inset:0;background:#07080ce0;z-index:10000;display:flex;align-items:center;justify-content:center}.rp-lightbox-stage{width:min(78vw,980px);height:min(78vh,760px);display:flex;align-items:center;justify-content:center;overflow:auto}.rp-lightbox-image{max-width:100%;max-height:100%;transform-origin:center center;transition:transform .14s ease}.rp-lightbox-toolbar{position:fixed;top:18px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.35rem;padding:.4rem;border-radius:10px;background:#ffffff24;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rp-lightbox-toolbar button,.rp-lightbox-nav{border:1px solid rgba(255,255,255,.25);background:#141413b8;color:#faf9f5;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.rp-lightbox-toolbar button{width:32px;height:32px}.rp-lightbox-toolbar button:disabled{opacity:.35;cursor:not-allowed}.rp-lightbox-toolbar span{min-width:48px;text-align:center;font-size:.8rem;color:#f8fafc;font-weight:600}.rp-lightbox-nav{position:fixed;width:38px;height:38px;top:50%;transform:translateY(-50%)}.rp-lightbox-nav--prev{left:20px}.rp-lightbox-nav--next{right:20px}.rp-lightbox-counter{position:fixed;bottom:22px;left:50%;transform:translate(-50%);color:#faf9f5;font-size:.8rem;font-weight:600;padding:.3rem .65rem;border-radius:999px;background:#141413b8}@media(max-width:900px){.rp-body{grid-template-columns:1fr}.rp-detail{position:static;max-height:none}.rp-items{max-height:50vh}.rpd-image-grid{grid-template-columns:1fr}.rp-lightbox-stage{width:min(92vw,980px);height:min(72vh,760px)}.rp-lightbox-toolbar{width:calc(100vw - 1rem);justify-content:center;top:10px}.rp-lightbox-nav--prev{left:8px}.rp-lightbox-nav--next{right:8px}}.rpd-ocr-btn{width:100%;padding:.75rem 1rem;margin-top:.75rem;background:#141413;color:#fff;border:none;border-radius:var(--rp-radius);font-size:.875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s ease;font-family:var(--rp-f-body)}.rpd-ocr-btn:hover:not(:disabled){background:#2a2a28;transform:translateY(-1px);box-shadow:0 4px 12px #14141333}.rpd-ocr-btn:disabled{opacity:.7;cursor:not-allowed}.rpd-ocr-progress{margin-top:1rem}.rpd-ocr-progress-bar{width:100%;height:8px;background:var(--rp-border);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.rpd-ocr-progress-fill{height:100%;background:#141413;width:100%;transform-origin:left;transform:scaleX(0);transition:transform .3s ease}.rpd-ocr-progress-text{text-align:center;font-size:.75rem;color:var(--rp-text-3);margin:0}.rpd-ocr-error{margin-top:.75rem;padding:.75rem;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:.8rem;display:flex;align-items:center;gap:.5rem}.rpd-ocr-result{margin-top:1rem;padding:1rem;background:var(--rp-bg);border:1px solid var(--rp-border);border-radius:var(--rp-radius)}.rpd-ocr-match{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border-radius:8px;font-weight:600;font-size:.875rem;margin-bottom:.75rem}.rpd-ocr-match--yes{background:#d1fae5;color:#065f46}.rpd-ocr-match--no{background:#fee2e2;color:#991b1b}.rpd-ocr-summary{font-size:.85rem;color:var(--rp-text-2);margin:0 0 1rem;line-height:1.5}.rpd-ocr-fields h4{font-size:.8rem;font-weight:600;color:var(--rp-text-2);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.5px}.rpd-ocr-fields-title{font-size:.7rem;font-weight:600;color:var(--rp-text-3);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.rpd-ocr-field{padding:.75rem;background:#fff;border:1px solid var(--rp-border);border-radius:8px;margin-bottom:.5rem}.rpd-ocr-field:last-child{margin-bottom:0}.rpd-ocr-field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.rpd-ocr-field-name{font-weight:600;font-size:.8rem;color:var(--rp-text-2);display:flex;align-items:center;gap:.35rem}.rpd-ocr-field-num{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--rp-border);color:var(--rp-text-2);font-size:.68rem;font-weight:700;flex-shrink:0;line-height:1}.rpd-ocr-field--critical .rpd-ocr-field-num{background:#fee2e2;color:#991b1b}.rpd-ocr-field-status{font-size:.72rem;font-weight:600;padding:.2rem .45rem;border-radius:4px;display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;flex-shrink:0}.rpd-ocr-field-status--match{background:#d1fae5;color:#065f46}.rpd-ocr-field-status--mismatch{background:#fee2e2;color:#991b1b}.rpd-ocr-field-values{display:flex;flex-direction:column;gap:.375rem}.rpd-ocr-field-values>div{display:flex;gap:.5rem;font-size:.8rem}.rpd-ocr-field-label{font-weight:500;color:var(--rp-text-3);min-width:60px}.rpd-ocr-field-values span:last-child{color:var(--rp-text-2)}.rpd-ocr-field--critical{border-color:#fca5a5;background:#fef2f2}.rpd-ocr-missing{color:#dc2626;font-weight:600}.rpd-ocr-field-notes{display:flex;gap:.5rem;font-size:.75rem;padding-top:.25rem;border-top:1px solid var(--rp-border);margin-top:.375rem}.rpd-ocr-field-notes span:last-child{color:var(--rp-text-3);font-style:italic}.module-layout-container.admin-review-profiles-page .rp{max-width:none;margin:0;padding:0;background:transparent}.module-layout-container.admin-review-profiles-page .rp-page-header{margin-bottom:0;padding-bottom:0;border-bottom:none}.module-layout-container.admin-review-profiles-page .courses-header-row{align-items:flex-start;padding-bottom:1.2rem;border-bottom:1px solid #e8e6dc}.module-layout-container.admin-review-profiles-page .header-kicker{color:#c96442}.module-layout-container.admin-review-profiles-page .header-kicker:before{background:#c96442}.module-layout-container.admin-review-profiles-page .courses-header-row h2{color:#141413}.module-layout-container.admin-review-profiles-page .header-sub{color:#5e5d59}.module-layout-container.admin-review-profiles-page .header-sub:before{background:#c96442}.module-layout-container.admin-review-profiles-page .rp-toolbar{margin-bottom:1.25rem}.module-layout-container.admin-review-profiles-page .toolbar{background:#faf9f5;border-color:#e8e6dc}.module-layout-container.admin-review-profiles-page .pill-btn{background:#f5f4ed;border-color:#e8e6dc;color:#5e5d59}.module-layout-container.admin-review-profiles-page .pill-btn.active{background:#30302e;border-color:#30302e;color:#faf9f5}.module-layout-container.admin-review-profiles-page .rp-search-wrap--module .search-box{background:#fff;border-color:#e8e6dc;box-shadow:none}.module-layout-container.admin-review-profiles-page .rp-search-wrap--module .search-box:focus-within{border-color:#c96442;box-shadow:0 0 0 3px #c9644224}.module-layout-container.admin-review-profiles-page .rp-search-wrap--module .search-box__icon{background:#f5f4ed;border-color:#e8e6dc;color:#4d4c48}.module-layout-container.admin-review-profiles-page .pill-btn .rp-tab-badge{margin-left:.15rem;flex-shrink:0;align-self:center}.module-layout-container.admin-review-profiles-page .rp-body{grid-template-columns:420px 1fr;gap:0;border-radius:14px;border:1px solid #e8e6dc;box-shadow:0 4px 16px #1414130f;overflow:hidden;background:#fff}.module-layout-container.admin-review-profiles-page .rp-list{border:none;border-radius:0;box-shadow:inset -1px 0 0 var(--rp-border)}.module-layout-container.admin-review-profiles-page .rp-detail{border:none;border-radius:0}.module-layout-container.admin-review-profiles-page .rp-search-wrap--module{padding:.75rem 1rem;border-bottom:1px solid var(--rp-border)}.module-layout-container.admin-review-profiles-page .rp-search-wrap--module .search-box{width:100%}.module-layout-container.admin-review-profiles-page .rp-list,.module-layout-container.admin-review-profiles-page .rp-detail{background:#fff}.module-layout-container.admin-review-profiles-page .rpd-admin-note{background:#fef9ec;border:1px solid #fde68a;box-shadow:inset 2px 0 #f59e0b;color:#4d4c48}@media(max-width:900px){.module-layout-container.admin-review-profiles-page .rp-body{gap:0}.module-layout-container.admin-review-profiles-page .rp-list{border-right:none;border-bottom:1px solid var(--rp-border)}}.question-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:24px;transition:all .2s ease}.question-card:hover{box-shadow:0 2px 8px #00000014}.question-card--dirty{border-color:#fbbf24;background:#fffbeb}.question-card--success{border-color:#10b981;background:#f0fdf4}.question-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.question-card__index{font-size:14px;font-weight:600;color:#3b82f6;background:#eff6ff;padding:4px 12px;border-radius:4px}.question-card__badges{display:flex;gap:8px;flex-wrap:wrap}.badge{font-size:11px;font-weight:500;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.badge--ai{background:#fef3c7;color:#92400e}.badge--parametric{background:#dbeafe;color:#1e40af}.badge--canonical{background:#e0e7ff;color:#4338ca}.question-card__content{margin-bottom:20px}.question-card__text{font-size:15px;line-height:1.6;color:#1f2937;margin-bottom:8px}.question-card__expand-btn{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#3b82f6;background:none;border:none;padding:4px 0;cursor:pointer;font-weight:500;transition:color .2s}.question-card__expand-btn:hover{color:#2563eb}.question-card__details{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.question-card__detail-label{font-size:12px;font-weight:600;color:#6b7280;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.question-card__solution,.question-card__diagram{margin-bottom:16px}.question-card__diagram-code{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;padding:12px;font-size:12px;overflow-x:auto;margin:0}.question-card__editable{display:flex;flex-direction:column;gap:16px;margin-bottom:20px;padding:16px;background:#f9fafb;border-radius:6px}.question-card__inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.score-display{display:flex;gap:24px;flex-wrap:wrap}.score-display__item{display:flex;flex-direction:column;gap:4px}.score-display__item--override{padding-left:24px;border-left:2px solid #3b82f6}.score-display__label{font-size:12px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.score-display__value{font-size:20px;font-weight:700;color:#1f2937}.score-display__value--dimmed{color:#9ca3af;text-decoration:line-through}.score-display__value--override{color:#3b82f6}.score-display__value--current{color:#10b981}.editable-field{display:flex;flex-direction:column;gap:6px}.editable-field__label{font-size:13px;font-weight:500;color:#374151}.editable-field__input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .2s;background:#fff}.editable-field__input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.editable-field__input:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.question-card__actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:16px;border-top:1px solid #e5e7eb}.question-card__actions-left{display:flex;align-items:center;gap:12px}.question-card__actions-right{display:flex;gap:8px;margin-left:auto}.question-card__success-indicator{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#10b981;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:all .2s;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:#3b82f6;color:#fff}.btn--primary:hover:not(:disabled){background:#2563eb}.btn--ghost{background:transparent;color:#6b7280;border:1px solid #d1d5db}.btn--ghost:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.btn--danger{background:transparent;color:#dc2626;border:1px solid #fecaca}.btn--danger:hover:not(:disabled){background:#fef2f2;border-color:#dc2626}.question-list{display:flex;flex-direction:column;gap:16px}.question-list__empty,.question-list__loading{text-align:center;padding:48px 24px;color:#6b7280;font-size:15px}@media(max-width:768px){.question-card{padding:16px}.question-card__inputs{grid-template-columns:1fr}.question-card__actions{flex-direction:column;align-items:stretch}.question-card__actions-left,.question-card__actions-right{width:100%;justify-content:stretch}.question-card__actions-right{margin-left:0}.btn{width:100%;justify-content:center}.score-display{flex-direction:column;gap:12px}.score-display__item--override{padding-left:0;padding-top:12px;border-left:none;border-top:2px solid #3b82f6}}.pg-root{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:.75rem 1rem;border-top:1px solid var(--mod-slate-200, #d6e0ee);background:var(--mod-slate-25, #f8fbff);border-radius:0 0 10px 10px}.pg-info{font-size:.82rem;color:var(--mod-slate-500, #60748f);white-space:nowrap;flex:1 1 auto}.pg-info strong{color:var(--mod-ink, #142235);font-weight:600}.pg-controls{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;flex-shrink:0}.pg-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 .45rem;border-radius:8px;border:1px solid var(--mod-slate-200, #d6e0ee);background:#fff;color:var(--mod-ink, #142235);font-size:.82rem;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none}.pg-btn:hover:not(:disabled){background:var(--mod-slate-50, #f3f7fd);border-color:var(--mod-primary, #1f5eff);color:var(--mod-primary, #1f5eff)}.pg-btn:focus-visible{box-shadow:0 0 0 2px #1f5eff40;border-color:var(--mod-primary, #1f5eff)}.pg-btn.active{background:var(--mod-primary, #1f5eff);border-color:var(--mod-primary, #1f5eff);color:#fff;font-weight:700;box-shadow:0 2px 6px #1f5eff47}.pg-btn.active:hover{background:var(--mod-primary-dark, #1648d6);border-color:var(--mod-primary-dark, #1648d6)}.pg-btn:disabled{opacity:.38;cursor:not-allowed}.pg-btn.pg-nav{font-size:1.1rem;font-weight:400;min-width:2.1rem}.pg-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:2rem;font-size:.82rem;color:var(--mod-slate-400, #8fa3bc);-webkit-user-select:none;-moz-user-select:none;user-select:none;letter-spacing:.05em}.pg-jump{display:flex;align-items:center;gap:.3rem;margin-left:.4rem}.pg-jump-label{font-size:.8rem;color:var(--mod-slate-500, #60748f);white-space:nowrap}.pg-jump-input{width:3rem;height:2rem;padding:0 .35rem;border:1px solid var(--mod-slate-200, #d6e0ee);border-radius:8px;background:#fff;font-size:.82rem;color:var(--mod-ink, #142235);text-align:center;transition:border-color .15s,box-shadow .15s;outline:none;-moz-appearance:textfield}.pg-jump-input::-webkit-outer-spin-button,.pg-jump-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pg-jump-input:focus{border-color:var(--mod-primary, #1f5eff);box-shadow:0 0 0 2px #1f5eff26}.pg-jump-input::-moz-placeholder{color:var(--mod-slate-400, #8fa3bc)}.pg-jump-input::placeholder{color:var(--mod-slate-400, #8fa3bc)}.pg-size-wrapper{display:flex;align-items:center;gap:.3rem;margin-left:.5rem;padding-left:.75rem;border-left:1px solid var(--mod-slate-200, #d6e0ee)}.pg-size-label{font-size:.8rem;color:var(--mod-slate-500, #60748f);white-space:nowrap}.pg-size-select{height:2rem;padding:0 1.6rem 0 .5rem;border:1px solid var(--mod-slate-200, #d6e0ee);border-radius:8px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2360748f'/%3E%3C/svg%3E") no-repeat right .5rem center;background-size:8px;font-size:.82rem;color:var(--mod-ink, #142235);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:border-color .15s,box-shadow .15s;outline:none}.pg-size-select:hover{border-color:var(--mod-primary, #1f5eff)}.pg-size-select:focus{border-color:var(--mod-primary, #1f5eff);box-shadow:0 0 0 2px #1f5eff26}.pg-mobile{display:none;align-items:center;justify-content:center;gap:.6rem;width:100%}.pg-mobile-info{font-size:.85rem;color:var(--mod-slate-500, #60748f);white-space:nowrap}.pg-mobile-info strong{color:var(--mod-ink, #142235);font-weight:600}@media(max-width:600px){.pg-root{flex-direction:column;align-items:center;gap:.5rem}.pg-info{text-align:center}.pg-controls{display:none}.pg-mobile{display:flex}}.bct{display:flex;flex-direction:column;gap:.5rem;font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,sans-serif}.bct--empty{padding:1rem;border:1px dashed #cbd3e1;border-radius:10px;background:#f8fafd;color:#64748b;font-size:.85rem;text-align:center}.bct-bank{background:#fff;border:1px solid #e5e9f2;border-radius:12px;overflow:hidden}.bct-bank__head{display:flex;align-items:center;gap:.5rem;width:100%;padding:.6rem .85rem;border:0;background:#f8fafd;cursor:pointer;font-family:inherit;text-align:left;color:#0f172a}.bct-bank__head:hover{background:#eff6ff}.bct-bank__icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.bct-bank__title{font-size:.9rem;font-weight:700;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bct-bank__meta{font-size:.78rem;color:#64748b;white-space:nowrap}.bct-bank__body{padding:.6rem .85rem .85rem}.bct-bank__loading{margin:0;font-size:.85rem;color:#64748b;font-style:italic}.bct-chapter-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.bct-chapter{background:#fcfdff;border:1px solid #e5e9f2;border-radius:8px;padding:.5rem .6rem}.bct-chapter__head{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.bct-chapter__index{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#1d4ed8;background:#eff6ff;padding:.15rem .4rem;border-radius:4px;border:1px solid #bfdbfe;white-space:nowrap}.bct-chapter__title{font-size:.86rem;font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bct-chapter__total{font-size:.76rem;color:#64748b;white-space:nowrap}.bct-cog-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem}@media(max-width:720px){.bct-cog-list{grid-template-columns:repeat(2,1fr)}}.bct-cog{display:flex;flex-direction:column;gap:.18rem;padding:.4rem .5rem;border-radius:6px;border:1px solid;font-size:.78rem}.bct-cog__label{font-weight:600;font-size:.72rem;letter-spacing:.02em}.bct-cog__count{font-size:1.05rem;font-weight:800;line-height:1}.bct-cog__gap{display:inline-flex;align-items:center;gap:.25rem;margin-top:.2rem;padding:.15rem .35rem;border-radius:4px;background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;font-size:.7rem;font-weight:700;white-space:nowrap}.bct-cog--gap{border-color:#fca5a5!important;box-shadow:0 0 0 1px #fca5a5 inset}.bct-cog--nb{background:#ecfeff;color:#0e7490;border-color:#a5f3fc}.bct-cog--th{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.bct-cog--vd{background:#f5f3ff;color:#6d28d9;border-color:#ddd6fe}.bct-cog--vdc{background:#fdf2f8;color:#be185d;border-color:#fbcfe8}.assessment-builder-flow__step{gap:.95rem}.assessment-builder-flow__orchestration-card{display:grid;gap:.8rem}.assessment-builder-flow__routing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem}.assessment-builder-flow__route-item{border:1px solid #dde7f5;border-radius:12px;background:#fff;padding:.8rem;display:grid;gap:.55rem}.assessment-builder-flow__route-item strong{color:#142235}.assessment-builder-flow__route-item p{margin:.2rem 0 0;font-size:.84rem;color:#60748f;line-height:1.45}.assessment-builder-flow__route-icon{width:1.9rem;height:1.9rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#edf3ff;color:#1f5eff}.assessment-builder-flow__orchestration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.assessment-builder-flow__review-meta{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.assessment-builder-flow__review-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.assessment-builder-flow__publish-summary{border-radius:10px;padding:.7rem .75rem;border:1px solid #d9e8d8;background:#f0faf1;display:grid;gap:.3rem}.assessment-builder-flow__publish-summary.warn{border-color:#f0dbb2;background:#fff8ea}.assessment-builder-flow__publish-summary p{margin:0;font-size:.84rem;color:#3b4e68}.assessment-builder-flow__step-title{display:flex;align-items:center;gap:.6rem}.assessment-builder-flow__panel{border:1px solid #dbe8f8;border-radius:12px;padding:.9rem;background:#f8fbff;display:flex;flex-direction:column;gap:.75rem}.assessment-builder-flow__bulk-bar{border:1px dashed #b8cfee;border-radius:12px;padding:.65rem .75rem;display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.assessment-builder-flow__link-btn{border:0;background:transparent;color:#1f5eff;font-size:.82rem;font-weight:700;margin-top:5px;padding:0;display:inline-flex;align-items:center;gap:.2rem;cursor:pointer}.assessment-builder-flow__distribution{display:inline-flex;gap:.6rem;align-items:center;flex-wrap:wrap;font-size:.85rem;color:#24364b;font-weight:600}.assessment-builder-flow__validation-grid{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.assessment-builder-flow__warning-banner{border:1px solid #f3d9a8;background:#fff7e8;border-radius:11px;padding:.65rem .75rem;color:#8a5a09;display:flex;align-items:center;gap:.45rem;font-size:.88rem}.assessment-builder-flow__issues{margin:0;padding-left:1.2rem;font-size:.87rem}.assessment-builder-flow__issues li+li{margin-top:.3rem}.assessment-builder-flow__issues--error{color:#9f1239}.assessment-builder-flow__issues--warn{color:#7a5a0a}.assessment-builder-flow__generation-summary{border:1px solid #dbe8f8;border-radius:12px;padding:.85rem;background:#f8fbff}.assessment-builder-flow__badge-ai-draft{background:#fff8db;border-color:#f0d27a;color:#946200}.assessment-builder-flow__badge-ai{background:#efe8ff;border-color:#d9c4ff;color:#5b35a5}.assessment-builder-flow__selected-btn{border-color:#2b62f5;color:#2b62f5;background:#eef4ff}.assessment-builder-flow__toast{position:fixed;right:1rem;bottom:1rem;z-index:1300;border-radius:10px;padding:.75rem .95rem;color:#fff;font-size:.88rem;font-weight:600;box-shadow:0 10px 24px #17284133}.assessment-builder-flow__toast--success{background:#0d845d}.assessment-builder-flow__toast--error{background:#b4223f}.module-layout-container .assessment-builder-flow-page{padding:1.1rem clamp(1rem,2vw,1.7rem) 1.5rem}@media(max-width:768px){.assessment-builder-flow__toast{right:.7rem;bottom:.7rem;left:.7rem}}.module-layout-container .abf-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.module-layout-container .header-stack{display:flex;flex-direction:column;gap:.35rem}.module-layout-container .header-kicker{display:inline-flex;align-items:center;gap:.4rem;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1f5eff;padding-left:.55rem}.module-layout-container .header-kicker:before{content:"";display:block;width:3px;height:14px;border-radius:2px;background:#1f5eff;flex-shrink:0}.module-layout-container .header-sub{margin:0;font-size:1rem;color:#60748f;line-height:1.5}.module-layout-container .abf-quicknav{display:flex;align-items:stretch;border:1px solid #dde7f5;border-radius:14px;background:#fff;overflow:hidden;margin-bottom:.6rem}.module-layout-container .abf-quicknav__item{display:flex;align-items:center;gap:.7rem;padding:1rem 1.25rem;flex:1;cursor:pointer;background:transparent;border:none;text-align:left;text-decoration:none;color:inherit;transition:background .15s}.module-layout-container .abf-quicknav__item:hover{background:#f4f7ff}.module-layout-container .abf-quicknav__divider{width:1px;background:#e5edf8;align-self:stretch;flex-shrink:0}.module-layout-container .abf-quicknav__icon{width:2rem;height:2rem;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.module-layout-container .abf-nav-indigo{background:#4f46e5}.module-layout-container .abf-nav-violet{background:#7c3aed}.module-layout-container .abf-nav-blue{background:#2563eb}.module-layout-container .abf-quicknav__text{flex:1;display:flex;flex-direction:column;gap:.1rem}.module-layout-container .abf-quicknav__title{font-size:1rem;font-weight:700;color:#142235;line-height:1.3}.module-layout-container .abf-quicknav__desc{font-size:.77rem;color:#60748f;line-height:1.3}.module-layout-container .abf-quicknav__arrow{color:#9db4d0;flex-shrink:0;transition:transform .15s,color .15s}.module-layout-container .abf-quicknav__item:hover .abf-quicknav__arrow{transform:translate(3px);color:#1f5eff}.module-layout-container .abf-step-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem;overflow:hidden}.module-layout-container .abf-step{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:.95rem 1rem;border:1px solid #e7edf7;border-radius:12px;background:#fbfdff;box-shadow:0 1px #0f172a05}.module-layout-container .abf-step:last-child{margin-bottom:0}.module-layout-container .abf-step--active{border-color:#c9d8ff;background:linear-gradient(180deg,#f7f9ff,#f2f6ff)}.module-layout-container .abf-step__num{width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;background:#f1f5f9;color:#64748b;flex-shrink:0;border:2px solid #e2e8f0}.module-layout-container .abf-step__num--active{background:#dbeafe;color:#1d4ed8;border-color:#93c5fd}.module-layout-container .abf-step__body{flex:1;min-width:0}.module-layout-container .abf-step>.btn,.module-layout-container .abf-step>.badge{justify-self:end;flex-shrink:0}.module-layout-container .abf-step__title{font-size:1rem;color:#142235;font-weight:700;display:block}.module-layout-container .abf-process-card{padding:1.4rem 1.5rem;min-height:0;gap:1rem}.module-layout-container .abf-process-head{display:flex;flex-direction:column;gap:.4rem;text-align:left;margin:0;padding-bottom:.85rem;border-bottom:1px solid #eef2f8}.module-layout-container .abf-process-title{margin:0;font-size:1.25rem;font-weight:700;line-height:1.3;letter-spacing:-.01em;color:#0f1f33}.module-layout-container .abf-process-subtitle{margin:0;font-size:.92rem;font-weight:400;line-height:1.55;color:#60748f;max-width:62ch}.module-layout-container .abf-step__desc{margin:.15rem 0 0;font-size:.8rem;color:#64748b;line-height:1.4}@media(max-width:640px){.module-layout-container .abf-quicknav{flex-direction:column}.module-layout-container .abf-quicknav__divider{width:auto;height:1px}.module-layout-container .abf-step{grid-template-columns:auto 1fr}.module-layout-container .abf-step>.btn,.module-layout-container .abf-step>.badge{grid-column:1 / -1;justify-self:start}}.lesson-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.lesson-chips .chip{padding:.375rem .75rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:16px;font-size:.8125rem;color:#0c4a6e;font-weight:500;transition:all .2s ease}.lesson-chips .chip:hover{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-color:#7dd3fc;transform:translateY(-1px);box-shadow:0 2px 4px #0ea5e91a}.module-layout-container .abf-field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem}.module-layout-container .abf-field__label{font-size:.82rem;font-weight:600;color:var(--mod-slate-700, #24364b)}.module-layout-container .abf-bank-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.module-layout-container .abf-bank-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .5rem .25rem .6rem;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:999px;font-size:.78rem;font-weight:600}.module-layout-container .abf-bank-chip button{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;border-radius:999px}.module-layout-container .abf-bank-chip button:hover{background:#1d4ed82e}.module-layout-container .abf-bank-picker{display:flex;flex-direction:column;gap:.3rem;max-height:280px;overflow-y:auto;border:1px solid var(--mod-slate-200, #d6e0ee);border-radius:10px;padding:.4rem;background:#fcfdff}.module-layout-container .abf-bank-option{display:flex;align-items:center;gap:.55rem;padding:.45rem .55rem;border-radius:8px;background:#fff;border:1px solid #e5e9f2;cursor:pointer;transition:background .14s ease,border-color .14s ease}.module-layout-container .abf-bank-option:hover{background:#f8fafd}.module-layout-container .abf-bank-option--checked{background:#eff6ff;border-color:#bfdbfe}.module-layout-container .abf-bank-option input[type=checkbox]{width:16px;height:16px;accent-color:#2563eb;cursor:pointer}.module-layout-container .abf-bank-option__main{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.module-layout-container .abf-bank-option__title{font-size:.88rem;font-weight:600;color:var(--mod-ink, #142235);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-layout-container .abf-bank-option__meta{font-size:.74rem;color:var(--mod-slate-500, #60748f)}.module-layout-container .abf-coverage{margin-top:.85rem;display:flex;flex-direction:column;gap:.55rem}.module-layout-container .abf-coverage__head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.module-layout-container .abf-coverage__ok{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .55rem;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;border-radius:999px;font-size:.78rem;font-weight:700}.module-layout-container .abf-coverage__warn{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .55rem;background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;border-radius:999px;font-size:.78rem;font-weight:700}.module-layout-container .abf-gap-list{list-style:none;margin:0;padding:.6rem .75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;display:flex;flex-direction:column;gap:.3rem}.module-layout-container .abf-gap-item{display:flex;align-items:flex-start;gap:.4rem;font-size:.86rem;color:#7f1d1d}.module-layout-container .abf-gap-item svg{color:#b91c1c;flex-shrink:0;margin-top:.15rem}.module-layout-container .abf-gap-item strong{color:#7f1d1d}.module-layout-container article.abf-orchestration-card-modern.data-card{min-height:0;border-radius:1rem;border-color:#e8e6dc;background:linear-gradient(180deg,#fff,#faf9f5 55%);box-shadow:#0000000f 0 4px 22px}.module-layout-container article.abf-orchestration-card-modern.data-card:hover{transform:translateY(-2px);border-color:#d1cfc5;box-shadow:0 0 0 1px #e8e6dc,#00000014 0 10px 28px}.module-layout-container article.abf-nested-card.data-card{min-height:0;border-radius:.85rem;border-color:#e8e6dc;background:#fff;box-shadow:#0000000a 0 2px 12px}.module-layout-container article.abf-nested-card.data-card:hover{transform:translateY(-1px)}.module-layout-container .assessment-builder-flow__orchestration-grid{gap:1.25rem}.tcp-page{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:none;margin:0;padding:0}.tcp-grid{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:1rem;align-items:start}@media(min-width:1024px){.tcp-grid{gap:1.25rem}}@media(max-width:860px){.tcp-grid{grid-template-columns:1fr}}.tcp-left,.tcp-right{display:flex;flex-direction:column;gap:1.25rem}.tcp-card{background:#fff;border:1px solid #e8e6dc;border-radius:16px;padding:1.25rem 1.5rem;box-shadow:#0000000d 0 4px 24px;display:flex;flex-direction:column;gap:1rem}.tcp-card--active{background:#faf9f5;border-color:#f0eee6}.tcp-card--full{flex:1}.tcp-card__label{font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#5e5d59}.tcp-rate-display{display:flex;align-items:center;justify-content:center;gap:1.25rem;padding:.5rem 0}.tcp-rate-ring{display:flex;flex-direction:column;align-items:center;gap:.2rem;background:#faf9f5;border-radius:14px;padding:1rem 1.5rem;border:2px solid transparent}.tcp-rate-ring--teacher{border-color:#c96442;background:linear-gradient(#faf9f5,#faf9f5) padding-box,linear-gradient(135deg,#c96442,#e8834e) border-box}.tcp-rate-ring--platform{border-color:#87867f;background:linear-gradient(#faf9f5,#faf9f5) padding-box,linear-gradient(135deg,#87867f,#b0aea5) border-box}.tcp-rate-ring__value{font-family:Playfair Display,Georgia,serif;font-size:1.75rem;font-weight:600;color:#141413;line-height:1}.tcp-rate-ring__label{font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:12px;color:#87867f;font-weight:500}.tcp-rate-divider{font-family:Playfair Display,Georgia,serif;font-size:1.35rem;font-weight:600;color:#b0aea5}.tcp-rate-note{display:flex;align-items:center;gap:.35rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;color:#87867f;margin:0;text-align:center;justify-content:center}.tcp-info-banner{display:flex;align-items:flex-start;gap:.5rem;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:.75rem 1rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;color:#92400e;line-height:1.45}.tcp-slider-wrap{display:flex;flex-direction:column;gap:.6rem}.tcp-slider-labels{display:flex;justify-content:space-between;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;color:#5e5d59}.tcp-slider-labels strong{color:#141413}.tcp-slider{width:100%;accent-color:#c96442;cursor:pointer;height:6px}.tcp-slider:disabled{opacity:.45;cursor:not-allowed}.tcp-slider-ticks{display:flex;justify-content:space-between;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:11px;color:#b0aea5}.tcp-preview-pill{display:flex;align-items:center;justify-content:center;gap:.6rem;background:#faf9f5;border:1px solid #e8e6dc;border-radius:999px;padding:.55rem 1.15rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:14px;font-weight:600}.tcp-preview-pill__teacher{color:#c96442}.tcp-preview-pill__divider{color:#87867f;font-weight:500;font-size:12px}.tcp-preview-pill__platform{color:#5e5d59}.tcp-error,.tcp-success{display:flex;align-items:center;gap:.4rem;border-radius:12px;padding:.55rem .85rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px}.tcp-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.tcp-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.tcp-btn-submit{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.625rem 1rem;background:#c96442;border:none;border-radius:12px;color:#faf9f5;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:filter .15s ease,transform .15s ease}.tcp-btn-submit:hover:not(:disabled){filter:brightness(.97);transform:translateY(-1px)}.tcp-btn-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.tcp-disclaimer{font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:12px;color:#87867f;margin:0;line-height:1.55;text-align:center}.tcp-history-list{display:flex;flex-direction:column;gap:.5rem}.tcp-history-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.85rem 1rem;background:#faf9f5;border:1px solid #f0eee6;border-radius:14px;transition:background .15s ease,box-shadow .15s ease}.tcp-history-item:hover{background:#fff;box-shadow:#0000000f 0 4px 16px}.tcp-history-item__left{display:flex;flex-direction:column;gap:.15rem}.tcp-history-split{font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:600;color:#141413}.tcp-history-date{font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:12px;color:#b0aea5}.tcp-history-item__right{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem}.tcp-status-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:999px;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:600;background:color-mix(in srgb,var(--badge-color) 12%,#fff);color:var(--badge-color);border:1px solid color-mix(in srgb,var(--badge-color) 25%,transparent);white-space:nowrap}.tcp-admin-note{font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:11px;color:#87867f;font-style:italic;max-width:min(200px,40vw);text-align:right}.tcp-spinner{display:flex;align-items:center;justify-content:center;padding:2rem;color:#b0aea5}.tcp-spin{animation:tcp-spin .9s linear infinite}@keyframes tcp-spin{to{transform:rotate(360deg)}}.tcp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;padding:2.5rem 1rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;color:#87867f;font-size:14px}.tcp-pagination{display:flex;align-items:center;justify-content:center;gap:.65rem;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:13px;color:#5e5d59;padding-top:.5rem}.tcp-page-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;border:1px solid #e8e6dc;background:#fff;color:#141413;cursor:pointer;transition:all .15s ease}.tcp-page-btn:disabled{opacity:.4;cursor:not-allowed}.tcp-page-btn:not(:disabled):hover{border-color:#c96442;color:#c96442;background:#faf9f5}.matrix-container{background:#fff;border:2px solid #1e3a8a;border-radius:4px;overflow:hidden;box-shadow:0 2px 8px #0000001a;transition:border-color .2s ease,box-shadow .2s ease}.matrix-container--edit-mode{border-color:#c2410c;box-shadow:0 0 0 1px #c2410c59,0 6px 20px #c2410c1f}.matrix-scroll-wrapper{overflow-x:auto;overflow-y:auto;max-height:80vh}.matrix-empty{padding:48px 24px;text-align:center;color:#6b7280;font-size:15px;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px}.matrix-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff;background-image:repeating-linear-gradient(90deg,transparent,transparent 23px,rgba(99,102,241,.035) 23px,rgba(99,102,241,.035) 24px);table-layout:fixed;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}.matrix-cell-value,.matrix-cell-input,.matrix-cell-availability{font-variant-numeric:tabular-nums lining-nums}.matrix-row--grand-total{background:linear-gradient(180deg,#fff7ed,#ffedd5)!important;border-top:2px solid #fb923c!important;font-weight:700}.matrix-row>:first-child,.matrix-row--even>:first-child,.matrix-row--odd>:first-child{background:#eef2ff73;border-right:1px solid #c7d2fe}.matrix-header{position:sticky;top:0;z-index:10;background:#fef3c7;border-bottom:3px solid #1e3a8a}.matrix-th{padding:10px 8px;text-align:center;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.3px;border:1px solid #92400e;background:#fef3c7;color:#1e3a8a;vertical-align:middle}.matrix-th--grade,.matrix-th--chapter{position:sticky;left:0;z-index:11;background:#fef3c7}.matrix-th--chapter{left:60px}.matrix-th--type{position:sticky;left:180px;z-index:11;background:#fef3c7}.matrix-th--grade{width:60px;min-width:60px}.matrix-th--chapter{width:180px;min-width:180px}.matrix-th--type{width:150px;min-width:150px}.matrix-th--reference{width:120px;min-width:120px}.matrix-th--level{width:80px;min-width:80px}.matrix-th--total-type{width:140px;min-width:140px}.matrix-th--actions{width:80px;min-width:80px}.matrix-th--part-group{background:#059669;color:#fff;font-size:13px;font-weight:700;border:2px solid #065f46;letter-spacing:.3px;text-transform:none}.matrix-th--cognitive-group{background:#dbeafe;border:2px solid #1e3a8a;font-size:13px}.matrix-th--level{background:#dbeafe;border:1px solid #1e40af;padding:6px 4px}.matrix-th--level-nb{background:#dbeafe}.matrix-th--level-th{background:#bfdbfe}.matrix-th--level-vd{background:#93c5fd}.matrix-th--level-vdc{background:#60a5fa}.matrix-level-header{display:flex;flex-direction:column;align-items:center;gap:2px}.matrix-level-code{font-size:14px;font-weight:800;color:#1e3a8a}.matrix-level-label{font-size:10px;font-weight:500;color:#1e40af;text-transform:none}.matrix-body{background:#fff}.matrix-row{transition:background-color .15s}.matrix-row:hover{background-color:#f0f9ff}.matrix-row--even{background-color:#fff}.matrix-row--odd{background-color:#f9fafb}.matrix-row--even:hover{background-color:#eff6ff}.matrix-row--odd:hover{background-color:#f0f9ff}.matrix-row--grand-total{background:#fef3c7;border-top:3px solid #1e3a8a;border-bottom:3px solid #1e3a8a}.matrix-row--grand-total:hover{background:#fef3c7}.matrix-row--percentage-config{background:#eefbf5;border-top:2px solid #0f766e}.matrix-row--percentage-config:hover{background:#e2f9ef}.matrix-td{padding:8px 6px;border:1px solid #d1d5db;text-align:center;vertical-align:middle;font-size:13px}.matrix-td--grade,.matrix-td--chapter{position:sticky;left:0;z-index:5;background:inherit}.matrix-td--chapter{left:60px}.matrix-td--type{position:sticky;left:240px;z-index:5;background:inherit}.matrix-td--grade{font-weight:700;font-size:16px;color:#1e3a8a;background:#fef3c7;border-right:2px solid #92400e}.matrix-grade-cell{display:flex;align-items:center;justify-content:center;height:100%}.matrix-td--chapter{font-weight:700;font-size:13px;text-align:left;padding:12px 10px;background:#e0e7ff;border-right:2px solid #4338ca;color:#1e3a8a;text-transform:uppercase;letter-spacing:.3px}.matrix-chapter-cell{line-height:1.4}.matrix-td--type{text-align:left;padding:8px 10px;font-weight:500;background:inherit}.matrix-type-cell{line-height:1.4}.matrix-td--reference{text-align:left;padding:8px 10px;font-size:12px;color:#6b7280;background:inherit}.matrix-reference-cell{line-height:1.3;max-height:60px;overflow-y:auto}.matrix-td--level{background:#eff6ff;font-weight:600;font-size:14px;color:#1e3a8a;padding:6px 4px}.matrix-td--level-nb{background:#eff6ff}.matrix-td--level-th{background:#dbeafe}.matrix-td--level-vd{background:#bfdbfe}.matrix-td--level-vdc{background:#93c5fd}.matrix-td--empty{color:#9ca3af;font-weight:400}.matrix-td--total-type{background:#fef3c7;font-weight:700;font-size:14px;color:#92400e;border-left:2px solid #92400e}.matrix-total-cell{display:flex;align-items:center;justify-content:center;height:100%}.matrix-td--grand-total{background:#fde68a;font-weight:800;font-size:15px;color:#78350f;border:2px solid #92400e}.matrix-td--total-label{text-align:center;font-weight:800;font-size:14px;color:#1e3a8a;text-transform:uppercase;letter-spacing:.5px;background:#fef3c7}.matrix-grand-total-label{padding:8px}.matrix-grand-total-cell{display:flex;align-items:center;justify-content:center;height:100%}.matrix-td--percentage-label{text-align:left;background:#d1fae5;color:#065f46;border:1px solid #6ee7b7;padding:12px 16px;vertical-align:top}.matrix-percentage-hint{margin:6px 0 0;font-size:12px;color:#047857;line-height:1.4}.matrix-td--percentage-cell,.matrix-td--percentage-total-cell{background:#ecfdf5;position:relative;padding:12px 8px;vertical-align:top}.matrix-percentage-input{width:100%;border:1px solid #10b981;border-radius:4px;padding:8px 28px 8px 8px;text-align:right;font-size:14px;font-weight:700;color:#065f46;background:#fff;box-sizing:border-box}.matrix-percentage-input:focus{outline:2px solid rgba(16,185,129,.25);border-color:#059669}.matrix-percentage-input:disabled{background:#f0fdf4;color:#6b7280}.matrix-percentage-input--total{padding-right:8px}.matrix-percentage-suffix{position:absolute;top:20px;right:16px;font-size:13px;color:#047857;font-weight:700;pointer-events:none}.matrix-percentage-preview{margin:6px 0 0;font-size:11px;color:#047857;text-align:right;line-height:1.4}.matrix-percentage-error{margin:4px 0 0;font-size:11px;color:#b91c1c;text-align:right;font-weight:600}.matrix-td--percentage-total-value{background:#d1fae5;border-left:2px solid #10b981}.matrix-td--percentage-action{background:#ecfdf5;padding:12px 8px;vertical-align:middle}.matrix-save-percentage-btn{width:100%;border:1px solid #059669;border-radius:6px;padding:10px 12px;font-size:13px;font-weight:700;color:#fff;background:linear-gradient(135deg,#059669,#047857);cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #05966933}.matrix-save-percentage-btn:hover:not(:disabled){background:linear-gradient(135deg,#047857,#065f46);transform:translateY(-1px);box-shadow:0 4px 8px #0596694d}.matrix-save-percentage-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px #05966933}.matrix-save-percentage-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.matrix-td--actions{background:inherit;padding:4px}.matrix-cell-value{display:flex;align-items:center;justify-content:center;min-height:32px;padding:4px;cursor:default}.matrix-cell-value--editable{cursor:pointer;border-radius:3px;transition:background-color .15s}.matrix-cell-value--editable:hover{background-color:#3b82f61a;outline:1px solid #3b82f6}.matrix-cell-input{width:100%;height:32px;padding:4px 6px;text-align:center;font-size:14px;font-weight:600;border:2px solid #3b82f6;border-radius:3px;background:#fff;color:#1e3a8a;outline:none;box-shadow:0 0 0 3px #3b82f61a}.matrix-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #fecaca;border-radius:4px;background:#fff;color:#dc2626;cursor:pointer;transition:all .15s}.matrix-delete-btn:hover:not(:disabled){background:#fef2f2;border-color:#dc2626}.matrix-delete-btn:disabled{opacity:.5;cursor:not-allowed}.matrix-table__bank-name{background:none;border:none;color:#2563eb;font-size:inherit;font-family:inherit;cursor:pointer;padding:0;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;transition:all .15s;text-align:left;width:100%}.matrix-table__bank-name:hover:not(:disabled){color:#1d4ed8;text-decoration-style:solid}.matrix-table__bank-name:disabled{color:#9ca3af;cursor:not-allowed;text-decoration:none}@media(max-width:1024px){.matrix-table{font-size:12px}.matrix-th{padding:8px 6px;font-size:11px}.matrix-td{padding:6px 4px;font-size:12px}.matrix-th--chapter,.matrix-td--chapter{width:150px;min-width:150px}.matrix-th--type,.matrix-td--type{width:120px;min-width:120px}.matrix-th--reference{width:150px;min-width:150px}}@media(max-width:768px){.matrix-scroll-wrapper{max-height:60vh}.matrix-table{font-size:11px}.matrix-th{padding:6px 4px;font-size:10px}.matrix-td{padding:4px 3px;font-size:11px}.matrix-level-label{display:none}.matrix-th--chapter,.matrix-td--chapter{width:120px;min-width:120px}.matrix-th--type,.matrix-td--type{width:100px;min-width:100px}}@media print{.matrix-container{border:2px solid black;box-shadow:none}.matrix-scroll-wrapper{overflow:visible;max-height:none}.matrix-table{page-break-inside:auto}.matrix-row{page-break-inside:avoid;page-break-after:auto}.matrix-delete-btn,.matrix-td--actions,.matrix-th--actions{display:none}.matrix-header,.matrix-th,.matrix-td--chapter,.matrix-td--level,.matrix-td--total-type,.matrix-row--grand-total{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.matrix-save-status{padding:8px 16px;background:#f3f4f6;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:8px;font-size:13px}.matrix-save-status--saving{color:#3b82f6;display:flex;align-items:center;gap:6px}.matrix-save-status--pending{color:#f59e0b;display:flex;align-items:center;gap:6px}.matrix-save-status--saved{color:#10b981;display:flex;align-items:center;gap:6px}.matrix-save-status--error{color:#ef4444;display:flex;align-items:center;gap:6px}.matrix-td--editable{cursor:pointer;transition:background-color .15s ease}.matrix-td--editable:hover{background-color:#eff6ff!important}.matrix-td--dirty{position:relative;background-color:#fffbeb!important;box-shadow:inset 0 0 0 2px #f59e0b}.matrix-cell-value{display:flex;flex-direction:column;gap:4px}.matrix-cell-availability{font-size:10px;color:#6b7280;background:#f3f4f6cc;padding:1px 4px;border-radius:4px;display:inline-flex;gap:3px;white-space:nowrap;font-weight:500;border:1px solid #e5e7eb}.matrix-cell-availability.overlimit{background:#fef2f2;color:#dc2626;border-color:#fecaca;animation:availability-pulse 2s infinite}.availability-label{opacity:.8}.availability-count{font-weight:700}.matrix-td--overlimit{background-color:#fff1f2!important}@keyframes availability-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.matrix-td--dirty:after{content:"";position:absolute;top:2px;right:2px;width:6px;height:6px;background-color:#f59e0b;border-radius:50%}.matrix-cell-input{width:100%;height:100%;border:2px solid #3b82f6;border-radius:4px;padding:4px 8px;font-size:13px;font-weight:600;text-align:center;background:#fff;outline:none;box-shadow:0 0 0 3px #3b82f61a}.matrix-cell-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.matrix-cell-input::-webkit-outer-spin-button,.matrix-cell-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.matrix-cell-input[type=number]{-moz-appearance:textfield}.matrix-td--warning{background-color:#fef2f2!important;border-color:#fca5a5!important}.matrix-edit-toolbar{padding:12px 16px;background:linear-gradient(180deg,#fffbeb,#fef3c7);border-bottom:2px solid #ea580c}.matrix-edit-toolbar__row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 16px}.matrix-edit-toolbar__status{flex:1 1 280px;min-width:0}.matrix-edit-toolbar__line{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.45;color:#1e293b}.matrix-edit-toolbar__line svg{flex-shrink:0;margin-top:2px}.matrix-edit-toolbar__line--saving{color:#1d4ed8;font-weight:600}.matrix-edit-toolbar__line--error{color:#b91c1c}.matrix-edit-toolbar__line--edit{color:#c2410c;font-weight:500}.matrix-edit-toolbar__line--pending{color:#9a3412;font-weight:500}.matrix-edit-toolbar__line--synced{color:#166534;font-weight:500}.matrix-edit-toolbar__actions{display:flex;flex-shrink:0;align-items:center;gap:8px}.matrix-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:13px;font-weight:650;cursor:pointer;border:1px solid transparent;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.matrix-toolbar-btn:disabled{opacity:.45;cursor:not-allowed}.matrix-toolbar-btn--ghost{background:#fff;border-color:#d6d3d1;color:#44403c}.matrix-toolbar-btn--ghost:hover:not(:disabled){background:#fafaf9;border-color:#a8a29e}.matrix-toolbar-btn--primary{background:#141413;border-color:#141413;color:#fafaf9}.matrix-toolbar-btn--primary:hover:not(:disabled){background:#30302e;border-color:#30302e}@keyframes matrix-toolbar-spin{to{transform:rotate(360deg)}}.matrix-edit-toolbar__spin{animation:matrix-toolbar-spin .65s linear infinite}@media(max-width:640px){.matrix-edit-toolbar__actions{width:100%;justify-content:stretch}.matrix-toolbar-btn{flex:1}}@keyframes exam-matrix-nav-spin{to{transform:rotate(360deg)}}.module-layout-container .exam-matrix-nav-spin{animation:exam-matrix-nav-spin .7s linear infinite}.module-layout-container .exam-matrix-detail-page .exam-matrix-detail-back-row{width:100%;margin-bottom:.15rem}.module-layout-container .exam-matrix-detail-page .exam-matrix-detail-page-header{align-items:flex-start;padding-bottom:1rem;border-bottom:1.5px solid var(--mod-slate-100);margin-bottom:.25rem}.module-layout-container .exam-matrix-detail-page .exam-matrix-detail-header-sub:before{display:none}.module-layout-container .exam-matrix-detail-skeleton{width:100%}.module-layout-container .exam-matrix-detail-skeleton .skeleton-section{min-height:0}.module-layout-container .exam-matrix-detail-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:2.5rem 1rem}.module-layout-container .exam-matrix-detail-hero .exam-matrix-detail-hero-title{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;line-height:1.25;color:var(--mod-ink)}.module-layout-container .exam-matrix-detail-content{display:flex;flex-direction:column;gap:0;width:100%}.module-layout-container .exam-matrix-detail-hero--slim{display:flex;flex-direction:column;gap:0}.module-layout-container .exam-matrix-meta-chip{display:inline-flex;align-items:center;padding:.3rem .7rem;border-radius:999px;font-size:.8125rem;font-weight:650;background:#faf9f5;border:1px solid #e8e6dc;color:#3f3e3a}.matrix-stats-tree{border:1px solid #e5e7eb;border-radius:8px;padding:16px;background:#f9fafb}.matrix-stats-header{margin-bottom:16px}.matrix-stats-header h4{margin:0 0 4px;font-size:1rem;color:#1f2937}.matrix-stats-header .muted{font-size:.875rem}.matrix-stats-empty{padding:24px;text-align:center}.matrix-stats-node{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;font-size:.875rem}.matrix-stats-node:hover{background:#f3f4f6}.matrix-stats-node--grade{font-weight:600;color:#1e40af}.matrix-stats-node--chapter{font-weight:500;color:#059669}.matrix-stats-node--type{color:#7c3aed}.matrix-stats-label{flex:1}.matrix-stats-count{font-size:.75rem;padding:2px 8px;background:#e5e7eb;border-radius:12px;color:#6b7280}.matrix-stats-children{margin-left:24px;margin-top:8px;display:flex;flex-direction:column;gap:8px}.matrix-stats-cognitive{display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px;margin-left:24px;background:#fff;border-radius:6px}.matrix-stats-cognitive-item{display:flex;align-items:center;gap:6px}.cognitive-badge{font-size:.75rem;font-weight:600;padding:2px 6px;background:#dbeafe;color:#1e40af;border-radius:4px}.cognitive-count{font-size:.75rem;color:#6b7280}.map-container{-webkit-tap-highlight-color:rgba(0,0,0,0);font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,PingFang SC,Microsoft YaHei,Source Han Sans SC,Noto Sans CJK SC,WenQuanYi Micro Hei,sans-serif;-moz-user-select:none;user-select:none;-webkit-user-select:none;height:100%;width:100%;overflow:hidden;font-size:16px;outline:none;touch-action:none;background-color:var(--bgcolor)}.map-container p{margin:0}.map-container *{box-sizing:border-box}.map-container::-webkit-scrollbar{width:0px;height:0px}.map-container .selected{outline:2px solid var(--selected);outline-offset:1px}.map-container.space-pressed,.map-container.space-pressed *{cursor:grab!important}.map-container.space-pressed:active,.map-container.space-pressed:active *{cursor:grabbing!important}.map-container .hyper-link{text-decoration:none;margin-left:.3em}.map-container me-main>me-wrapper>me-parent>me-epd{top:50%;transform:translateY(-50%)}.map-container me-epd{top:100%;transform:translateY(-50%)}.map-container .lhs{direction:rtl}.map-container .lhs>me-wrapper>me-parent>me-epd{left:-10px}.map-container .lhs me-epd{left:5px}.map-container .lhs me-tpc{direction:ltr}.map-container .rhs>me-wrapper>me-parent>me-epd{right:-10px}.map-container .rhs me-epd{right:5px}.map-container .map-canvas{position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content;transform:scale(1)}.map-container .map-canvas me-nodes{position:relative;display:flex;justify-content:center;align-items:center;height:-moz-max-content;height:max-content;width:-moz-max-content;width:max-content;padding:var(--map-padding)}.map-container me-main>me-wrapper{position:relative;margin:var(--main-gap-y) var(--main-gap-x)}.map-container me-main>me-wrapper>me-parent{margin:10px;padding:0}.map-container me-main>me-wrapper>me-parent>me-tpc{border-radius:var(--main-radius);background-color:var(--main-bgcolor);border:2px solid var(--main-color);color:var(--main-color);padding:8px 25px}.map-container me-wrapper{display:block;pointer-events:none;width:-moz-fit-content;width:fit-content}.map-container me-children,.map-container me-parent{display:inline-block;vertical-align:middle}.map-container me-root{position:relative;margin:45px 0;z-index:10}.map-container me-root me-tpc{font-size:25px;color:var(--root-color);padding:10px 30px;border-radius:var(--root-radius);border:var(--root-border-color) 2px solid;background-color:var(--root-bgcolor)}.map-container me-parent{position:relative;cursor:pointer;padding:6px var(--node-gap-x);margin-top:var(--node-gap-y);z-index:10}.map-container me-parent me-tpc{position:relative;border-radius:3px;color:var(--color);padding:var(--topic-padding)}.map-container me-parent me-tpc .insert-preview{position:absolute;width:100%;left:0;z-index:9}.map-container me-parent me-tpc .show{background:#7ad5ff;pointer-events:none;opacity:.7;border-radius:3px}.map-container me-parent me-tpc .before{height:14px;top:-14px}.map-container me-parent me-tpc .in{height:100%;top:0}.map-container me-parent me-tpc .after{height:14px;bottom:-14px}.map-container me-parent me-epd{position:absolute;height:18px;width:18px;opacity:.8;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgdD0iMTY1NjY1NDcxNzI0MiIgY2xhc3M9Imljb24iIHZpZXdCb3g9IjAgMCAxMDI0IDEwMjQiIHZlcnNpb249IjEuMSIKICAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+CiAgICA8cGF0aCBkPSJNNTEyIDc0LjY2NjY2N0MyNzAuOTMzMzMzIDc0LjY2NjY2NyA3NC42NjY2NjcgMjcwLjkzMzMzMyA3NC42NjY2NjcgNTEyUzI3MC45MzMzMzMgOTQ5LjMzMzMzMyA1MTIgOTQ5LjMzMzMzMyA5NDkuMzMzMzMzIDc1My4wNjY2NjcgOTQ5LjMzMzMzMyA1MTIgNzUzLjA2NjY2NyA3NC42NjY2NjcgNTEyIDc0LjY2NjY2N3oiIHN0cm9rZS13aWR0aD0iNTQiIHN0cm9rZT0nYmxhY2snIGZpbGw9J3doaXRlJyA+PC9wYXRoPgogICAgPHBhdGggZD0iTTY4Mi42NjY2NjcgNDgwaC0xMzguNjY2NjY3VjM0MS4zMzMzMzNjMC0xNy4wNjY2NjctMTQuOTMzMzMzLTMyLTMyLTMycy0zMiAxNC45MzMzMzMtMzIgMzJ2MTM4LjY2NjY2N0gzNDEuMzMzMzMzYy0xNy4wNjY2NjcgMC0zMiAxNC45MzMzMzMtMzIgMzJzMTQuOTMzMzMzIDMyIDMyIDMyaDEzOC42NjY2NjdWNjgyLjY2NjY2N2MwIDE3LjA2NjY2NyAxNC45MzMzMzMgMzIgMzIgMzJzMzItMTQuOTMzMzMzIDMyLTMydi0xMzguNjY2NjY3SDY4Mi42NjY2NjdjMTcuMDY2NjY3IDAgMzItMTQuOTMzMzMzIDMyLTMycy0xNC45MzMzMzMtMzItMzItMzJ6Ij48L3BhdGg+Cjwvc3ZnPg==);background-repeat:no-repeat;background-size:contain;background-position:center;pointer-events:all;z-index:9}.map-container me-parent me-epd.minus{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgdD0iMTY1NjY1NTU2NDk4NSIgY2xhc3M9Imljb24iIHZpZXdCb3g9IjAgMCAxMDI0IDEwMjQiIHZlcnNpb249IjEuMSIKICAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+CiAgICA8cGF0aCBkPSJNNTEyIDc0LjY2NjY2N0MyNzAuOTMzMzMzIDc0LjY2NjY2NyA3NC42NjY2NjcgMjcwLjkzMzMzMyA3NC42NjY2NjcgNTEyUzI3MC45MzMzMzMgOTQ5LjMzMzMzMyA1MTIgOTQ5LjMzMzMzMyA5NDkuMzMzMzMzIDc1My4wNjY2NjcgOTQ5LjMzMzMzMyA1MTIgNzUzLjA2NjY2NyA3NC42NjY2NjcgNTEyIDc0LjY2NjY2N3oiIHN0cm9rZS13aWR0aD0iNTQiIHN0cm9rZT0nYmxhY2snIGZpbGw9J3doaXRlJyA+PC9wYXRoPgogICAgPHBhdGggZD0iTTY4Mi42NjY2NjcgNTQ0SDM0MS4zMzMzMzNjLTE3LjA2NjY2NyAwLTMyLTE0LjkzMzMzMy0zMi0zMnMxNC45MzMzMzMtMzIgMzItMzJoMzQxLjMzMzMzNGMxNy4wNjY2NjcgMCAzMiAxNC45MzMzMzMgMzIgMzJzLTE0LjkzMzMzMyAzMi0zMiAzMnoiPjwvcGF0aD4KPC9zdmc+)!important;transition:opacity .3s;opacity:0}@media(hover:hover){.map-container me-parent me-epd.minus:hover{opacity:.8}}@media(hover:none){.map-container me-parent me-epd.minus{opacity:.8}}.map-container .icon{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}.map-container .lines,.map-container .summary,.map-container .subLines,.map-container .topiclinks,.map-container .linkcontroller{position:absolute;height:102%;width:100%;top:0;left:0}.map-container .topiclinks,.map-container .linkcontroller,.map-container .summary{pointer-events:none;z-index:20}.map-container .summary>g,.map-container .topiclinks>g{cursor:pointer;pointer-events:stroke;z-index:20}.map-container .label-container{z-index:21}.map-container .lines,.map-container .subLines{pointer-events:none}.map-container #input-box{position:absolute;top:0;left:0;width:-moz-max-content;width:max-content;max-width:35em;direction:ltr;-webkit-user-select:auto;-moz-user-select:auto;user-select:auto;pointer-events:auto;color:var(--color);background-color:var(--bgcolor);outline:1px solid #ccc;border-radius:2px;z-index:100}.map-container me-tpc{display:block;max-width:35em;white-space:pre-wrap;pointer-events:all}.map-container me-tpc>*{pointer-events:none}.map-container me-tpc>a,.map-container me-tpc>iframe{pointer-events:auto}.map-container me-tpc>.text{display:inline-block}.map-container me-tpc>.text a{pointer-events:auto}.map-container me-tpc>img{display:block;margin-bottom:8px;-o-object-fit:cover;object-fit:cover}.map-container .circle{position:absolute;height:10px;width:10px;margin-top:-5px;margin-left:-5px;border-radius:100%;background:#757575;border:2px solid #ffffff;z-index:50;cursor:pointer}.map-container .circle:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:30px;height:30px;background:transparent}.map-container .tags{direction:ltr}.map-container .tags span{display:inline-block;border-radius:3px;padding:2px 4px;background:#d6f0f8;color:#276f86;margin:2px 4px 0 0;font-size:12px;line-height:1.3em}.map-container .icons{display:inline-block;direction:ltr;margin-left:5px}.map-container .icons span{display:inline-block;line-height:1.3em}.map-container .mind-elixir-ghost{position:absolute;top:0;left:0;box-sizing:content-box;opacity:.7;background-color:var(--main-bgcolor);border:2px solid var(--main-color);color:var(--main-color);max-width:200px;width:-moz-fit-content;width:fit-content;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:8px 16px;border-radius:6px;display:none;pointer-events:none;z-index:1000}.map-container .selection-area{background:#4f90f22d;border:1px solid #4f90f2}.map-container .svg-label{position:absolute;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;line-height:1.2;pointer-events:auto;cursor:pointer;z-index:10;width:-moz-max-content;width:max-content;max-width:200px;border-radius:3px;padding:var(--topic-padding)}.map-container .svg-label[data-type=arrow]{background-color:var(--main-bgcolor-transparent)}.map-container h1{font-size:1.5rem;font-weight:700;color:var(--selected)}.map-container h2{font-size:1.25rem;font-weight:600;color:var(--selected)}.map-container h3{font-size:1.125rem;font-weight:600;color:var(--selected)}.map-container h4{font-size:1rem;font-weight:600;color:var(--selected)}.map-container h5{font-size:.875rem;font-weight:600;color:var(--selected)}.map-container h6{font-size:.875rem;font-weight:500;margin:.1rem 0;color:var(--selected);font-style:italic}.map-container strong.asterisk-emphasis,.map-container em{color:var(--selected)}.map-container strong.underscore-emphasis{background:#ffeb3b40;padding:.05em .15em;border-radius:.15em}.map-container a{color:var(--selected)}.map-container a:hover{color:var(--selected);text-decoration:underline}.map-container .context-menu{position:fixed;top:0;left:0;width:100%;height:100%;z-index:99}.map-container .context-menu .menu-list{position:fixed;list-style:none;margin:0;padding:0;color:var(--panel-color);box-shadow:0 12px 15px #0003;border-radius:5px;overflow:hidden}.map-container .context-menu .menu-list li{min-width:200px;overflow:hidden;white-space:nowrap;padding:6px 10px;background:var(--panel-bgcolor);border-bottom:1px solid var(--panel-border-color);cursor:pointer}.map-container .context-menu .menu-list li span{line-height:20px}.map-container .context-menu .menu-list li a{color:#333;text-decoration:none}.map-container .context-menu .menu-list li.disabled{display:none}.map-container .context-menu .menu-list li:hover{filter:brightness(.95)}.map-container .context-menu .menu-list li:last-child{border-bottom:0}.map-container .context-menu .menu-list li span:last-child{float:right}.map-container .context-menu .key{font-size:10px;background-color:#f1f1f1;color:#333;padding:2px 5px;border-radius:3px}.map-container .tips{position:absolute;bottom:28px;left:50%;transform:translate(-50%);color:var(--panel-color);background:var(--panel-bgcolor);opacity:.8;padding:5px 10px;border-radius:5px;font-weight:700}.mind-elixir-toolbar{position:absolute;color:var(--panel-color);background:var(--panel-bgcolor);padding:10px;border-radius:5px;box-shadow:0 1px 2px #0003}.mind-elixir-toolbar svg{display:inline-block}.mind-elixir-toolbar span:active{opacity:.5}.mind-elixir-toolbar.rb{right:20px;bottom:20px}.mind-elixir-toolbar.rb span+span{margin-left:10px}.mind-elixir-toolbar.lt{font-size:20px;left:20px;top:20px}.mind-elixir-toolbar.lt span{display:block}.mind-elixir-toolbar.lt span+span{margin-top:10px}.mindmap-editor-page{height:calc(100vh - 60px);display:flex;flex-direction:column;background:#f7fafc}.mindmap-editor-page.mindmap-editor-embedded{height:100vh;background:#f3f5ff}.mindmap-editor-page.mindmap-editor-embedded .editor-content{overflow:auto}.mindmap-editor-page.mindmap-editor-embedded .flow-container{height:100%}.mindmap-editor-loading-embedded,.mindmap-editor-error-embedded{min-height:100vh}.editor-header{background:#fff;padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.header-left{display:flex;align-items:center;gap:1.5rem;flex:1}.btn-back{background:#f7fafc;border:1px solid #e2e8f0;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:600;color:#4a5568;transition:all .3s}.btn-back:hover{background:#edf2f7}.editor-header h1{font-size:1.5rem;color:#1a202c;margin:0 0 .25rem}.editor-header p{color:#718096;font-size:.875rem;margin:0}.header-actions{display:flex;gap:1rem;align-items:center}.interaction-toggle{display:inline-flex;border:1px solid #d7deed;border-radius:10px;padding:.2rem;background:#f8faff}.interaction-btn{border:none;background:transparent;color:#475569;font-size:.85rem;font-weight:600;padding:.45rem .8rem;border-radius:8px;cursor:pointer;transition:all .2s ease}.interaction-btn.active{background:#fff;color:#334155;box-shadow:0 3px 10px #33415524}.btn-export-image{border:none;border-radius:10px;padding:.5rem .9rem;background:linear-gradient(135deg,#0f766e,#0ea5a4);color:#fff;font-size:.83rem;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.btn-export-image:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 16px #0f766e4d}.btn-export-image:disabled{opacity:.62;cursor:not-allowed;transform:none;box-shadow:none}.status-select{padding:.5rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;background:#fff;color:#4a5568;transition:all .3s}.status-select:focus{outline:none;border-color:#667eea}.editor-content{flex:1;display:flex;position:relative;overflow:hidden}.flow-container{flex:1;position:relative;background:linear-gradient(135deg,#f5f4ed,#eae8df)}.interaction-hint{position:absolute;top:.8rem;left:.9rem;z-index:3;background:#0f172ab8;color:#f8fafc;padding:.45rem .7rem;border-radius:8px;font-size:.75rem;max-width:420px;pointer-events:none}.mind-elixir-host{width:100%;height:100%}.mind-elixir-host .mind-elixir{width:100%;height:100%;background:#f0eee6;border-radius:0}.mind-elixir-host .map-container{background:#f0eee6!important;font-family:Be Vietnam Pro,sans-serif;transition:transform .2s ease}.mind-elixir-host me-children,.mind-elixir-host .children-wrapper{background:transparent!important;border:none!important;box-shadow:none!important;outline:none!important}.mind-elixir-host me-root me-tpc{border-radius:16px!important;border:none!important;font-family:Be Vietnam Pro,sans-serif!important;font-weight:700!important;font-size:16px!important;padding:10px 28px!important;box-shadow:0 0 0 3px #fff3,0 6px 24px #00000052!important}.mind-elixir-host me-main>me-wrapper>me-parent>me-tpc{border-radius:100px!important;border:none!important;font-family:Be Vietnam Pro,sans-serif!important;font-weight:600!important;font-size:13px!important;padding:7px 22px!important;box-shadow:0 0 0 2px #ffffff38,0 3px 14px #00000038!important}.mind-elixir-host me-children me-parent me-tpc,.mind-elixir-host me-parent me-tpc{border-radius:100px!important;border:none!important;font-family:Be Vietnam Pro,sans-serif!important;font-weight:500!important;font-size:12px!important;padding:5px 16px!important;box-shadow:0 0 0 1.5px #ffffff4d,0 2px 8px #00000024!important}.mind-elixir-host .selected{box-shadow:0 0 0 3px #4f7ef759,0 6px 20px #0000002e!important}.mind-elixir-host .lines path,.mind-elixir-host .subLines path{stroke-width:2.5px!important;stroke-linecap:round!important;opacity:.75!important;fill:none!important}.mind-elixir-host .mind-elixir-toolbar,.mind-elixir-host .toolbar{border-radius:10px!important;box-shadow:0 2px 8px #0000001a!important;border:1px solid #ddd9cc!important;background:#fafaf7!important}.mind-elixir-host .mind-elixir-toolbar.lt,.mind-elixir-host .toolbar.lt{transform:translateY(40px)}.edit-panel{position:absolute;top:1rem;right:1rem;width:320px;background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 20px 40px #00000026,0 0 0 1px #0000000d;z-index:10;max-height:calc(100vh - 200px);overflow-y:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:panelSlideIn .3s cubic-bezier(.22,1,.36,1)}@keyframes panelSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.edit-panel h3{margin:0 0 1.5rem;color:#1a202c;font-size:1.125rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.edit-panel h3:before{content:"✏️";font-size:1.25rem}.panel-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-bottom:1rem;padding:.3rem;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc}.panel-tab{border:none;border-radius:8px;background:transparent;color:#64748b;font-size:.83rem;font-weight:700;padding:.48rem .6rem;cursor:pointer;transition:all .2s ease}.panel-tab.active{background:#fff;color:#1e293b;box-shadow:0 3px 10px #1e293b1f}.edit-panel .form-group{margin-bottom:1.25rem}.edit-panel .form-group label{display:block;margin-bottom:.5rem;color:#4a5568;font-weight:500;font-size:.875rem}.edit-panel .form-group input,.edit-panel .form-group select{width:100%;padding:.625rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.875rem;transition:border-color .3s}.edit-panel .form-group input[type=color]{height:50px;cursor:pointer;border-radius:8px;padding:.25rem}.edit-panel .form-group input:focus,.edit-panel .form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.panel-actions{display:flex;gap:.5rem;margin-top:1.5rem}.panel-actions button{flex:1;padding:.75rem;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.panel-actions button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.panel-actions button:hover:before{width:300px;height:300px}.panel-actions .btn-cancel{background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0}.panel-actions .btn-cancel:hover{background:#edf2f7;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.panel-actions .btn-delete{background:linear-gradient(135deg,#fc5c7d,#e53e3e);color:#fff;border:none}.panel-actions .btn-delete:hover{transform:translateY(-2px);box-shadow:0 6px 12px #e53e3e4d}.panel-actions .btn-save{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.panel-actions .btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #667eea4d}.panel-actions .btn-save:disabled{opacity:.6;cursor:not-allowed;transform:none}.add-node-block{margin-top:1rem;border-top:1px dashed #dbe4f0;padding-top:1rem}.add-node-block.tab-mode{margin-top:0;border-top:none;padding-top:0}.add-node-block h4{margin:0 0 .75rem;color:#1e293b;font-size:.92rem;font-weight:700}.add-node-block .row-inline{display:grid;grid-template-columns:88px 1fr;gap:.65rem}.add-node-block .row-inline>div{min-width:0}.add-node-block .row-inline input[type=color]{height:44px}.btn-add-child{width:100%;margin-top:.25rem;border:none;border-radius:10px;padding:.7rem .9rem;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;font-size:.86rem;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.btn-add-child:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 16px #2563eb47}.btn-add-child:disabled{opacity:.62;cursor:not-allowed;transform:none;box-shadow:none}.delete-modal-backdrop{position:absolute;inset:0;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:30;padding:1rem}.delete-modal{width:min(440px,100%);border-radius:16px;background:#fff;border:1px solid #fecaca;box-shadow:0 20px 44px #0f172a3d;padding:1rem 1rem .95rem;animation:deleteModalIn .18s ease}.delete-modal h4{margin:0 0 .55rem;color:#991b1b;font-size:1.02rem;font-weight:800}.delete-modal p{margin:0;color:#374151;font-size:.9rem;line-height:1.5}.delete-modal-impact{margin-top:.7rem!important;padding:.65rem .75rem;border:1px solid #fecaca;border-radius:10px;background:#fef2f2;color:#7f1d1d!important}.delete-modal-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.95rem}.delete-modal-actions .btn-cancel,.delete-modal-actions .btn-delete{min-width:112px;padding:.62rem .9rem;border-radius:10px;font-size:.85rem;font-weight:700;border:none;cursor:pointer}.delete-modal-actions .btn-cancel{border:1px solid #e2e8f0;background:#fff;color:#475569}.delete-modal-actions .btn-cancel:hover:not(:disabled){background:#f8fafc}.delete-modal-actions .btn-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.delete-modal-actions .btn-delete:hover:not(:disabled){box-shadow:0 8px 16px #dc26264d}.delete-modal-actions button:disabled{opacity:.65;cursor:not-allowed}@keyframes deleteModalIn{0%{transform:translateY(6px) scale(.985);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.mindmap-editor-loading,.mindmap-editor-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;text-align:center;background:linear-gradient(135deg,#f5f7fa,#e8eef5)}.loader{width:60px;height:60px;border:3px solid rgba(102,126,234,.15);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem;box-shadow:0 4px 12px #667eea33}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mindmap-editor-loading p{color:#4a5568;font-size:1.125rem;font-weight:600;animation:pulse 2s ease-in-out infinite}.loading-slow-hint{font-size:.875rem!important;font-weight:400!important;color:#718096!important;margin-top:-.5rem;animation:none!important}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.mindmap-editor-error h2{color:#e53e3e;margin-bottom:.5rem;font-size:1.5rem}.mindmap-editor-error p{color:#718096;margin-bottom:1.5rem}.mindmap-editor-error button{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s}.mindmap-editor-error button:hover{background:#5568d3}.mindmap-editor-error .error-actions{display:flex;gap:.75rem}.mindmap-editor-error .btn-retry{background:#2f855a}.mindmap-editor-error .btn-retry:hover{background:#276749}@media(max-width:768px){.editor-header{padding:1rem}.header-left{flex-direction:column;align-items:flex-start;gap:1rem}.edit-panel{width:calc(100% - 2rem);left:1rem;right:1rem;top:auto;bottom:1rem;max-height:50vh}.header-actions{width:100%;justify-content:space-between}.interaction-hint{max-width:calc(100% - 1.8rem)}}.public-mindmap-page{min-height:100vh;padding:24px;background:#f0eee6}.public-mindmap-page.embed-preview{min-height:100vh;height:100vh;padding:0;background:#f0eee6}.public-mindmap-header{max-width:1100px;margin:0 auto 16px;padding:20px 24px;border-radius:16px;background:#fafaf7;border:1px solid #e2dfd5;box-shadow:0 1px 3px #0000000f,0 4px 16px #0000000a}.public-mindmap-badge{display:inline-block;margin-bottom:8px;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#c96442;font-family:Be Vietnam Pro,sans-serif}.public-mindmap-header h1{margin:0;color:#141413;font-family:Playfair Display,Georgia,serif;font-size:22px;font-weight:500}.public-mindmap-header p{margin:8px 0 0;color:#6b6a64;font-family:Be Vietnam Pro,sans-serif;font-size:14px}.public-mindmap-canvas-wrap{max-width:1100px;margin:0 auto;border-radius:18px;border:1px solid #e2dfd5;background:#fafaf7;box-shadow:0 1px 3px #00000012,0 6px 28px #0000000f;overflow:hidden}.public-mindmap-page.embed-preview .public-mindmap-canvas-wrap{max-width:none;width:100%;height:100%;margin:0;border:0;border-radius:0;box-shadow:none;background:#f0eee6}.public-mindmap-canvas{min-height:70vh;overflow:auto}.public-mindmap-page.embed-preview .public-mindmap-canvas{min-height:100%;height:100%}.public-mindmap-state{max-width:1100px;margin:24px auto;padding:18px 24px;border-radius:12px;background:#fafaf7;border:1px solid #e2dfd5;color:#141413;font-family:Be Vietnam Pro,sans-serif;font-size:14px}.public-mindmap-state--error{border-color:#f0d0d0;color:#b53333}.public-mindmap-canvas .map-container{background:#f0eee6!important;font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,sans-serif}.public-mindmap-canvas me-children,.public-mindmap-canvas .children-wrapper{background:transparent!important;border:none!important;box-shadow:none!important;outline:none!important}.public-mindmap-canvas me-root me-tpc{border-radius:16px!important;border:none!important;font-family:Be Vietnam Pro,sans-serif!important;font-weight:700!important;font-size:16px!important;letter-spacing:.01em!important;padding:10px 28px!important;box-shadow:0 0 0 3px #fff3,0 6px 24px #00000052!important}.public-mindmap-canvas me-main>me-wrapper>me-parent>me-tpc{border-radius:100px!important;border:none!important;font-family:Be Vietnam Pro,sans-serif!important;font-weight:600!important;font-size:13px!important;padding:7px 22px!important;box-shadow:0 0 0 2px #ffffff38,0 3px 14px #00000038!important}.public-mindmap-canvas me-children me-parent me-tpc,.public-mindmap-canvas me-parent me-tpc{border-radius:100px!important;border:none!important;font-family:Be Vietnam Pro,sans-serif!important;font-weight:500!important;font-size:12px!important;padding:5px 16px!important;box-shadow:0 0 0 1.5px #ffffff4d,0 2px 8px #00000024!important}.public-mindmap-canvas me-parent:hover me-tpc{filter:brightness(.96)!important;transform:translateY(-1px)!important;transition:filter .15s ease,transform .15s ease!important}.public-mindmap-canvas me-tpc{font-family:Be Vietnam Pro,-apple-system,sans-serif!important;line-height:1.4!important;letter-spacing:.01em!important}.public-mindmap-canvas .lines path,.public-mindmap-canvas .subLines path{stroke-width:2.5px!important;stroke-linecap:round!important;stroke-linejoin:round!important;opacity:.75!important;fill:none!important}.public-mindmap-canvas .selected{outline:2.5px solid rgba(79,126,247,.55)!important;outline-offset:2px!important}.public-mindmap-canvas .mind-elixir-toolbar{border-radius:10px!important;box-shadow:0 2px 8px #0000001a!important;border:1px solid #ddd9cc!important;background:#fafaf7!important}@media(max-width:768px){.public-mindmap-page{padding:14px}.public-mindmap-header,.public-mindmap-state{padding:14px 16px}.public-mindmap-canvas{min-height:62vh}.public-mindmap-canvas me-wrapper{font-size:11.5px!important}}.qb-scope .qb-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.22rem .6rem;font-size:.74rem;font-weight:700;letter-spacing:.01em;border-radius:var(--qb-radius-pill);border:1px solid transparent;white-space:nowrap;line-height:1.3}.qb-scope .qb-badge--sm{padding:.1rem .45rem;font-size:.68rem}.qb-scope .qb-badge--neutral{background:var(--qb-neutral-soft);color:var(--qb-text-secondary);border-color:var(--qb-neutral-border)}.qb-scope .qb-badge--info{background:var(--qb-primary-soft);color:var(--qb-primary-strong);border-color:var(--qb-primary-border)}.qb-scope .qb-badge--success{background:var(--qb-success-soft);color:var(--qb-success);border-color:var(--qb-success-border)}.qb-scope .qb-badge--warn{background:var(--qb-warn-soft);color:var(--qb-warn);border-color:var(--qb-warn-border)}.qb-scope .qb-badge--danger{background:var(--qb-danger-soft);color:var(--qb-danger);border-color:var(--qb-danger-border)}.qb-scope .qb-badge--cog{font-weight:800;letter-spacing:.04em}.qb-scope .qb-cog--nb{background:var(--qb-cog-nb-soft);color:var(--qb-cog-nb);border-color:var(--qb-cog-nb-border)}.qb-scope .qb-cog--th{background:var(--qb-cog-th-soft);color:var(--qb-cog-th);border-color:var(--qb-cog-th-border)}.qb-scope .qb-cog--vd{background:var(--qb-cog-vd-soft);color:var(--qb-cog-vd);border-color:var(--qb-cog-vd-border)}.qb-scope .qb-cog--vdc{background:var(--qb-cog-vdc-soft);color:var(--qb-cog-vdc);border-color:var(--qb-cog-vdc-border)}.qb-scope .qb-cog-dist__seg.qb-cog--nb,.qb-scope .qb-cog-dist__dot.qb-cog--nb{background:var(--qb-cog-nb)}.qb-scope .qb-cog-dist__seg.qb-cog--th,.qb-scope .qb-cog-dist__dot.qb-cog--th{background:var(--qb-cog-th)}.qb-scope .qb-cog-dist__seg.qb-cog--vd,.qb-scope .qb-cog-dist__dot.qb-cog--vd{background:var(--qb-cog-vd)}.qb-scope .qb-cog-dist__seg.qb-cog--vdc,.qb-scope .qb-cog-dist__dot.qb-cog--vdc{background:var(--qb-cog-vdc)}.qb-scope .qb-cog-dist{display:flex;flex-direction:column;gap:.4rem}.qb-scope .qb-cog-dist--empty{color:var(--qb-text-muted);font-size:.78rem;font-style:italic}.qb-scope .qb-cog-dist__bar{display:flex;width:100%;height:8px;border-radius:999px;overflow:hidden;background:var(--qb-neutral-soft);border:1px solid var(--qb-border)}.qb-scope .qb-cog-dist__seg{height:100%;transition:transform .3s ease,opacity .3s ease;transform-origin:left}.qb-scope .qb-cog-dist__seg+.qb-cog-dist__seg{border-left:1px solid rgba(255,255,255,.6)}.qb-scope .qb-cog-dist__legend{display:flex;flex-wrap:wrap;gap:.55rem;font-size:.72rem;color:var(--qb-text-secondary)}.qb-scope .qb-cog-dist__legend-item{display:inline-flex;align-items:center;gap:.3rem}.qb-scope .qb-cog-dist__legend-item strong{color:var(--qb-text-primary);font-weight:700}.qb-scope .qb-cog-dist__dot{width:8px;height:8px;border-radius:999px}.qb-scope .qb-page-header{display:flex;flex-direction:column;gap:.5rem}.qb-scope .qb-page-header__back{align-self:flex-start;display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .6rem;border-radius:var(--qb-radius-md);border:1px solid transparent;background:transparent;color:var(--qb-text-secondary);cursor:pointer;font-size:.85rem;font-family:inherit;transition:background .16s ease,color .16s ease}.qb-scope .qb-page-header__back:hover{background:var(--qb-neutral-soft);color:var(--qb-text-primary)}.qb-scope .qb-page-header__row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.qb-scope .qb-page-header__main{flex:1;min-width:0}.qb-scope .qb-page-header__title-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.qb-scope .qb-page-header__title{margin:0;font-size:1.55rem;line-height:1.2;font-weight:800;color:var(--qb-text-primary);letter-spacing:-.01em}.qb-scope .qb-page-header__count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 .55rem;border-radius:var(--qb-radius-pill);background:var(--qb-primary-soft);color:var(--qb-primary-strong);font-size:.78rem;font-weight:700;border:1px solid var(--qb-primary-border)}.qb-scope .qb-page-header__subtitle{margin:.25rem 0 0;font-size:.92rem;color:var(--qb-text-secondary);line-height:1.45}.qb-scope .qb-page-header__actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}@media(max-width:640px){.qb-scope .qb-page-header__title{font-size:1.35rem}.qb-scope .qb-page-header__actions{width:100%}.qb-scope .qb-page-header__actions>*{flex:1 1 auto;justify-content:center}}.qb-scope .qb-toolbar{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;background:var(--qb-surface);border:1px solid var(--qb-border);border-radius:var(--qb-radius-lg);padding:.6rem .8rem;box-shadow:var(--qb-shadow-sm)}.qb-scope .qb-toolbar__main{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;flex:1;min-width:0}.qb-scope .qb-toolbar__actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.qb-scope .qb-search{display:flex;align-items:center;gap:.45rem;background:var(--qb-surface);border:1px solid var(--qb-border-strong);border-radius:var(--qb-radius-md);padding:.34rem .5rem;min-width:240px;flex:1 1 280px;max-width:460px;transition:border-color .16s ease,box-shadow .16s ease}.qb-scope .qb-search:focus-within{border-color:var(--qb-primary);box-shadow:var(--qb-ring-focus)}.qb-scope .qb-search--sm{padding:.22rem .4rem;min-width:200px;flex:1 1 200px}.qb-scope .qb-search__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--qb-radius-sm);background:var(--qb-primary-soft);color:var(--qb-primary);flex-shrink:0}.qb-scope .qb-search__input{flex:1;border:0;outline:0;background:transparent;font-size:.9rem;font-family:inherit;color:var(--qb-text-primary);min-width:0}.qb-scope .qb-search__input::-moz-placeholder{color:var(--qb-text-muted)}.qb-scope .qb-search__input::placeholder{color:var(--qb-text-muted)}.qb-scope .qb-search__clear{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:999px;background:var(--qb-neutral-soft);color:var(--qb-text-secondary);cursor:pointer;flex-shrink:0;transition:background .14s ease,color .14s ease}.qb-scope .qb-search__clear:hover{background:var(--qb-border);color:var(--qb-text-primary)}.qb-scope .qb-search__input::-webkit-search-cancel-button{display:none}.qb-scope .qb-pills{display:inline-flex;gap:.35rem;flex-wrap:wrap}.qb-scope .qb-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.36rem .85rem;border:1px solid var(--qb-border);border-radius:var(--qb-radius-pill);background:var(--qb-surface);color:var(--qb-text-secondary);font-size:.82rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .14s ease;white-space:nowrap}.qb-scope .qb-pill:hover:not(.qb-pill--active){background:var(--qb-neutral-soft);color:var(--qb-text-primary);border-color:var(--qb-border-strong)}.qb-scope .qb-pill--active{background:var(--qb-primary-soft);color:var(--qb-primary-strong);border-color:var(--qb-primary-border);font-weight:700}.qb-scope .qb-view-toggle{display:inline-flex;padding:.18rem;background:var(--qb-neutral-soft);border:1px solid var(--qb-border);border-radius:var(--qb-radius-md);gap:.15rem}.qb-scope .qb-view-toggle__btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;background:transparent;color:var(--qb-text-muted);border-radius:var(--qb-radius-sm);cursor:pointer;transition:background .14s ease,color .14s ease}.qb-scope .qb-view-toggle__btn:hover:not(.qb-view-toggle__btn--active){background:#fff9;color:var(--qb-text-primary)}.qb-scope .qb-view-toggle__btn--active{background:var(--qb-surface);color:var(--qb-primary);box-shadow:var(--qb-shadow-sm)}.qb-scope .qb-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1.25rem;border:1px dashed var(--qb-border-strong);border-radius:var(--qb-radius-lg);background:var(--qb-surface-soft);text-align:center;gap:.4rem}.qb-scope .qb-empty--error{background:var(--qb-danger-soft);border-color:var(--qb-danger-border)}.qb-scope .qb-empty__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:999px;background:var(--qb-surface);color:var(--qb-text-muted);margin-bottom:.4rem;border:1px solid var(--qb-border)}.qb-scope .qb-empty--error .qb-empty__icon{color:var(--qb-danger);border-color:var(--qb-danger-border)}.qb-scope .qb-empty__title{margin:0;font-size:1rem;font-weight:700;color:var(--qb-text-primary)}.qb-scope .qb-empty__desc{margin:0;color:var(--qb-text-secondary);font-size:.88rem;max-width:36rem;line-height:1.5}.qb-scope .qb-empty__action{margin-top:.85rem;display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.qb-scope .qb-notice{display:flex;align-items:flex-start;gap:.6rem;padding:.65rem .85rem;border-radius:var(--qb-radius-md);border:1px solid;font-size:.88rem;line-height:1.5}.qb-scope .qb-notice__icon{flex-shrink:0;display:inline-flex;align-items:center;margin-top:.1rem}.qb-scope .qb-notice__body{flex:1}.qb-scope .qb-notice__close{border:0;background:transparent;cursor:pointer;font-size:1.1rem;line-height:1;color:inherit;opacity:.7;padding:0 .25rem}.qb-scope .qb-notice__close:hover{opacity:1}.qb-scope .qb-notice--info{background:var(--qb-primary-soft);border-color:var(--qb-primary-border);color:var(--qb-primary-strong)}.qb-scope .qb-notice--success{background:var(--qb-success-soft);border-color:var(--qb-success-border);color:var(--qb-success)}.qb-scope .qb-notice--warn{background:var(--qb-warn-soft);border-color:var(--qb-warn-border);color:var(--qb-warn)}.qb-scope .qb-notice--danger{background:var(--qb-danger-soft);border-color:var(--qb-danger-border);color:var(--qb-danger)}.qb-scope .qb-skeleton-card{background:var(--qb-surface);border:1px solid var(--qb-border);border-radius:var(--qb-radius-lg);overflow:hidden}.qb-scope .qb-skeleton--cover{height:64px;border-radius:0}.qb-scope .qb-skeleton-card__body{padding:1rem;display:flex;flex-direction:column;gap:.6rem}.qb-scope .qb-skeleton--line{height:14px;width:100%}.qb-scope .qb-skeleton--line-w-70{width:70%}.qb-scope .qb-skeleton--line-w-40{width:40%}.qb-scope .qb-skeleton--bar{height:8px;width:100%}.qb-scope .qb-skeleton-list{display:flex;flex-direction:column;gap:.55rem}.qb-scope .qb-skeleton--row{height:56px;width:100%}.qb-modal-backdrop{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:1rem;z-index:1050;animation:qb-modal-fade-in .16s ease;font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,sans-serif}@keyframes qb-modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes qb-modal-pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.qb-modal{width:100%;max-height:calc(100vh - 2rem);display:flex;flex-direction:column;background:#fff;border-radius:18px;border:1px solid #e5e9f2;box-shadow:0 20px 50px #0f172a38;overflow:hidden;animation:qb-modal-pop-in .2s cubic-bezier(.2,.7,.4,1);color:#0f172a}.qb-modal--sm{max-width:420px}.qb-modal--md{max-width:640px}.qb-modal--lg{max-width:880px}.qb-modal--xl{max-width:1080px}.qb-modal__header{display:flex;align-items:flex-start;gap:.75rem;padding:1.1rem 1.25rem .85rem;border-bottom:1px solid #eef2f7}.qb-modal__header-text{flex:1;min-width:0}.qb-modal__title{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a;letter-spacing:-.005em}.qb-modal__desc{margin:.3rem 0 0;font-size:.86rem;color:#64748b;line-height:1.5}.qb-modal__close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:8px;background:#f1f5f9;color:#64748b;cursor:pointer;flex-shrink:0;transition:background .14s ease,color .14s ease}.qb-modal__close:hover{background:#e2e8f0;color:#0f172a}.qb-modal__body{padding:1.1rem 1.25rem;overflow:auto;flex:1;min-height:0}.qb-modal__footer{padding:.85rem 1.25rem;border-top:1px solid #eef2f7;display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap;background:#f8fafd}@media(max-width:640px){.qb-modal-backdrop{padding:.5rem}.qb-modal{max-height:calc(100vh - 1rem);border-radius:14px}.qb-modal__header,.qb-modal__body,.qb-modal__footer{padding-left:1rem;padding-right:1rem}}.qb-confirm{display:flex;gap:.85rem;align-items:flex-start;font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,sans-serif}.qb-confirm__icon{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.qb-confirm__icon--primary{background:#eff6ff;color:#1d4ed8}.qb-confirm__icon--danger{background:#fef2f2;color:#dc2626}.qb-confirm__body{flex:1;min-width:0}.qb-confirm__title{margin:0 0 .3rem;font-size:1rem;font-weight:700;color:#0f172a}.qb-confirm__msg{font-size:.88rem;color:#475569;line-height:1.5}.qb-confirm__actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem;flex-wrap:wrap}.qb-confirm__actions .qb-btn{font-family:inherit;font-size:.9rem;font-weight:600;padding:.55rem 1rem;border-radius:10px;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:background .14s ease,border-color .14s ease,transform .14s ease}.qb-confirm__actions .qb-btn:disabled{opacity:.6;cursor:not-allowed}.qb-confirm__actions .qb-btn--primary{background:#2563eb;border-color:#2563eb;color:#fff}.qb-confirm__actions .qb-btn--primary:hover:not(:disabled){background:#1d4ed8}.qb-confirm__actions .qb-btn--danger{background:#dc2626;border-color:#dc2626;color:#fff}.qb-confirm__actions .qb-btn--danger:hover:not(:disabled){background:#b91c1c}.qb-confirm__actions .qb-btn--secondary{background:#fff;border-color:#cbd3e1;color:#0f172a}.qb-confirm__actions .qb-btn--secondary:hover:not(:disabled){background:#f8fafd;border-color:#94a3b8}.qb-add-q-modal{display:flex;flex-direction:column;gap:.85rem}.qb-add-q-modal__search,.qb-add-q-modal__filters{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.qb-add-q-modal__select{min-width:180px;padding:.45rem .7rem;font-size:.86rem}.qb-add-q-modal__clear-link{border:0;background:transparent;color:var(--qb-primary-strong);font-weight:600;cursor:pointer;padding:0;font-family:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:2px}.qb-add-q-modal__empty{margin:0;padding:1.5rem 1rem;text-align:center;color:var(--qb-text-muted);font-size:.9rem;border:1px dashed var(--qb-border-strong);border-radius:var(--qb-radius-md);background:var(--qb-surface-soft)}.qb-add-q-table{border:1px solid var(--qb-border);border-radius:var(--qb-radius-md);background:var(--qb-surface);overflow:hidden}.qb-add-q-table__head{padding:.55rem .75rem;background:var(--qb-surface-soft);border-bottom:1px solid var(--qb-border);font-size:.78rem;color:var(--qb-text-secondary)}.qb-add-q-table__select-all{display:inline-flex;align-items:center;gap:.45rem;cursor:pointer;font-weight:600}.qb-add-q-table__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.qb-add-q-row{display:grid;grid-template-columns:auto 1fr;gap:.65rem;padding:.65rem .8rem;border-bottom:1px solid var(--qb-border);transition:background .14s ease;align-items:flex-start}.qb-add-q-row:last-child{border-bottom:0}.qb-add-q-row:hover{background:var(--qb-surface-soft)}.qb-add-q-row--checked{background:var(--qb-primary-soft)}.qb-add-q-row--in{opacity:.6}.qb-add-q-row__check{margin-top:.4rem;cursor:pointer;width:16px;height:16px;accent-color:var(--qb-primary)}.qb-add-q-row__main{display:flex;flex-direction:column;gap:.4rem;min-width:0}.qb-add-q-row__text{font-size:.9rem;line-height:1.55;color:var(--qb-text-primary);word-break:break-word}.qb-add-q-row__meta{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.qb-add-q-row__chip{display:inline-flex;align-items:center;gap:.25rem;padding:.16rem .5rem;background:var(--qb-neutral-soft);border:1px solid var(--qb-neutral-border);color:var(--qb-text-secondary);border-radius:var(--qb-radius-pill);font-size:.72rem;font-weight:600}.qb-add-q-row__chip--muted{background:transparent;border-color:transparent;color:var(--qb-text-muted)}.qb-add-q-modal__count{margin-right:auto;font-size:.85rem;color:var(--qb-text-secondary)}.qb-add-q-modal__count strong{color:var(--qb-text-primary);font-weight:700}.qb-scope{--qb-bg: #f6f8fc;--qb-surface: #ffffff;--qb-surface-soft: #f8fafd;--qb-surface-sunken: #f1f4fa;--qb-overlay: rgba(15, 23, 42, .45);--qb-border: #e5e9f2;--qb-border-strong: #cbd3e1;--qb-text-primary: #0f172a;--qb-text-secondary: #475569;--qb-text-muted: #64748b;--qb-text-inverse: #ffffff;--qb-primary: #2563eb;--qb-primary-strong: #1d4ed8;--qb-primary-soft: #eff6ff;--qb-primary-border: #bfdbfe;--qb-success: #047857;--qb-success-soft: #ecfdf5;--qb-success-border: #a7f3d0;--qb-warn: #b45309;--qb-warn-soft: #fffbeb;--qb-warn-border: #fde68a;--qb-danger: #dc2626;--qb-danger-soft: #fef2f2;--qb-danger-border: #fecaca;--qb-neutral: #475569;--qb-neutral-soft: #f1f5f9;--qb-neutral-border: #e2e8f0;--qb-cog-nb: #0891b2;--qb-cog-nb-soft: #ecfeff;--qb-cog-nb-border: #a5f3fc;--qb-cog-th: #2563eb;--qb-cog-th-soft: #eff6ff;--qb-cog-th-border: #bfdbfe;--qb-cog-vd: #7c3aed;--qb-cog-vd-soft: #f5f3ff;--qb-cog-vd-border: #ddd6fe;--qb-cog-vdc: #db2777;--qb-cog-vdc-soft: #fdf2f8;--qb-cog-vdc-border: #fbcfe8;--qb-radius-sm: 6px;--qb-radius-md: 10px;--qb-radius-lg: 14px;--qb-radius-xl: 18px;--qb-radius-pill: 9999px;--qb-shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--qb-shadow-md: 0 4px 14px rgba(15, 23, 42, .07);--qb-shadow-lg: 0 14px 32px rgba(15, 23, 42, .12);--qb-ring-focus: 0 0 0 3px rgba(37, 99, 235, .18);--qb-space-1: .25rem;--qb-space-2: .5rem;--qb-space-3: .75rem;--qb-space-4: 1rem;--qb-space-5: 1.25rem;--qb-space-6: 1.5rem;--qb-space-8: 2rem}.qb-scope,.qb-scope *{font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,sans-serif}.qb-scope{color:var(--qb-text-primary)}.qb-scope *:focus-visible{outline:none;box-shadow:var(--qb-ring-focus);border-radius:var(--qb-radius-sm)}.qb-card{background:var(--qb-surface);border:1px solid var(--qb-border);border-radius:var(--qb-radius-lg);box-shadow:var(--qb-shadow-sm);transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}.qb-card--hoverable{cursor:pointer}.qb-card--hoverable:hover{box-shadow:var(--qb-shadow-md);border-color:var(--qb-border-strong);transform:translateY(-2px)}.qb-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem .95rem;border:1px solid transparent;border-radius:var(--qb-radius-md);font-size:.875rem;font-weight:600;letter-spacing:0;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;white-space:nowrap;font-family:inherit;line-height:1.2}.qb-btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.qb-btn--primary{background:var(--qb-primary);border-color:var(--qb-primary);color:#fff;box-shadow:0 4px 10px #2563eb2e}.qb-btn--primary:hover:not(:disabled){background:var(--qb-primary-strong);border-color:var(--qb-primary-strong);transform:translateY(-1px)}.qb-btn--secondary{background:var(--qb-surface);border-color:var(--qb-border-strong);color:var(--qb-text-primary)}.qb-btn--secondary:hover:not(:disabled){background:var(--qb-surface-soft);border-color:var(--qb-text-muted)}.qb-btn--ghost{background:transparent;border-color:transparent;color:var(--qb-text-secondary)}.qb-btn--ghost:hover:not(:disabled){background:var(--qb-neutral-soft);color:var(--qb-text-primary)}.qb-btn--success{background:var(--qb-success);border-color:var(--qb-success);color:#fff;box-shadow:0 4px 10px #0478572e}.qb-btn--success:hover:not(:disabled){filter:brightness(.94);transform:translateY(-1px)}.qb-btn--danger{background:var(--qb-danger);border-color:var(--qb-danger);color:#fff}.qb-btn--danger:hover:not(:disabled){filter:brightness(.94)}.qb-btn--danger-outline{background:var(--qb-danger-soft);border-color:var(--qb-danger-border);color:var(--qb-danger)}.qb-btn--danger-outline:hover:not(:disabled){background:#fee2e2}.qb-btn--icon{padding:.5rem;width:2.25rem;height:2.25rem}.qb-btn--sm{padding:.35rem .7rem;font-size:.8rem}.qb-btn--lg{padding:.7rem 1.2rem;font-size:.95rem}.qb-btn--block{width:100%}.qb-input,.qb-select,.qb-textarea{width:100%;padding:.6rem .85rem;border:1px solid var(--qb-border-strong);border-radius:var(--qb-radius-md);background:var(--qb-surface);color:var(--qb-text-primary);font-size:.9rem;font-family:inherit;transition:border-color .16s ease,box-shadow .16s ease}.qb-textarea{resize:vertical;min-height:96px}.qb-input:focus,.qb-select:focus,.qb-textarea:focus{outline:none;border-color:var(--qb-primary);box-shadow:var(--qb-ring-focus)}.qb-input::-moz-placeholder,.qb-textarea::-moz-placeholder{color:var(--qb-text-muted)}.qb-input::placeholder,.qb-textarea::placeholder{color:var(--qb-text-muted)}@keyframes qb-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.qb-skeleton{background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0,#eef2f7 75%);background-size:400% 100%;animation:qb-shimmer 1.4s ease infinite;border-radius:var(--qb-radius-md);display:block}.qb-field-label{display:block;font-size:.8rem;font-weight:600;color:var(--qb-text-secondary);margin-bottom:.35rem}.qb-row{display:flex;align-items:center;gap:var(--qb-space-2)}.qb-stack{display:flex;flex-direction:column;gap:var(--qb-space-3)}.qb-grow{flex:1;min-width:0}.qb-spacer{flex:1}.qb-text-muted{color:var(--qb-text-muted);font-size:.85rem}.qb-text-mono{font-family:JetBrains Mono,Source Code Pro,ui-monospace,monospace;font-size:.85rem}.qb-divider{height:1px;background:var(--qb-border);border:0;margin:0}.qb-clamp-1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.qb-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.qb-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:768px){.qb-hide-md{display:none!important}}.qb-scope .qb-list-cog{font-size:.92em}@media(max-width:639px){.qb-scope .qb-list-cog{width:100%}}.qb-scope .qb-bank-form,.qb-bank-form{display:flex;flex-direction:column;gap:1.1rem;font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,sans-serif;color:#0f172a}.qb-bank-form__section{border:1px solid #e5e9f2;border-radius:12px;padding:.85rem 1rem .95rem;margin:0;display:flex;flex-direction:column;gap:.7rem;background:#fcfdff}.qb-bank-form__section--share{background:#f8fafd}.qb-bank-form__legend{display:inline-flex;align-items:center;gap:.35rem;padding:0 .4rem;margin-left:-.4rem;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#475569}.qb-bank-form__legend svg{color:#7c3aed}.qb-bank-form__field{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:0}.qb-bank-form__row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}@media(max-width:640px){.qb-bank-form__row{grid-template-columns:1fr}}.qb-bank-form__required{color:#dc2626;font-weight:700}.qb-bank-form__optional{color:#94a3b8;font-weight:500;font-size:.78rem}.qb-bank-form__lock{display:inline-flex;align-items:center;gap:.2rem;margin-left:.3rem;padding:.08rem .4rem;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;font-size:.65rem;font-weight:700;color:#64748b;letter-spacing:.04em;text-transform:uppercase}.qb-bank-form__help{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.76rem;margin-top:.05rem}.qb-bank-form__hint{margin:.15rem 0 0;font-size:.76rem}.qb-bank-form__counter{color:#94a3b8;font-variant-numeric:tabular-nums;font-weight:600;flex-shrink:0}.qb-bank-form__counter--warn{color:#b45309}.qb-bank-form__error{color:#dc2626;font-weight:600}.qb-bank-form__error--block{margin:.2rem 0 0;font-size:.78rem}.qb-scope .qb-input--invalid,.qb-input--invalid{border-color:#fca5a5!important;background:#fff5f5}.qb-scope .qb-input--invalid:focus,.qb-input--invalid:focus{border-color:#dc2626!important;box-shadow:0 0 0 3px #dc262629!important}.qb-bank-form__share{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:.65rem;padding:.65rem .75rem;background:#fff;border:1px solid #e5e9f2;border-radius:10px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.qb-bank-form__share:hover{border-color:#cbd3e1;background:#fcfdff}.qb-bank-form__share input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#2563eb}.qb-bank-form__share-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#f1f5f9;color:#64748b}.qb-bank-form__share input[type=checkbox]:checked~.qb-bank-form__share-icon{background:#ecfdf5;color:#047857}.qb-bank-form__share-text{display:flex;flex-direction:column;gap:.1rem;font-size:.86rem;color:#0f172a;min-width:0}.qb-bank-form__share-text strong{font-weight:700;color:#0f172a}.qb-bank-form__share-text .qb-text-muted{font-size:.76rem;color:#64748b;margin:0}.qb-bank-form .qb-input,.qb-bank-form .qb-select,.qb-bank-form .qb-textarea{width:100%;padding:.6rem .85rem;border:1px solid #cbd3e1;border-radius:10px;background:#fff;color:#0f172a;font-size:.9rem;font-family:inherit;transition:border-color .16s ease,box-shadow .16s ease}.qb-bank-form .qb-textarea{resize:vertical;min-height:84px}.qb-bank-form .qb-input:focus,.qb-bank-form .qb-select:focus,.qb-bank-form .qb-textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb2e}.qb-bank-form .qb-input:disabled,.qb-bank-form .qb-select:disabled,.qb-bank-form .qb-textarea:disabled{background:#f8fafd;color:#64748b;cursor:not-allowed}.qb-scope .qbd-question-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.qb-scope .qbd-question{padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.6rem;background:#faf9f5;border:1px solid #f0eee6;border-radius:1rem;box-shadow:#0000000a 0 4px 16px;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.qb-scope .qbd-question:hover{border-color:#e8e6dc;background:#fff;box-shadow:0 0 0 1px #d1cfc5,#0000000f 0 8px 24px}.qb-scope .qbd-question__text{font-size:.92rem;line-height:1.55;color:var(--qb-text-primary);word-break:break-word}.qb-scope .qbd-question__meta{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.qb-scope .qbd-question__chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;background:#f5f4ed;border:1px solid #e8e6dc;color:var(--qb-text-secondary);border-radius:9999px;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,sans-serif;font-size:.72rem;font-weight:600;white-space:nowrap}.qb-scope .qbd-question__chip--muted{background:transparent;border-color:transparent;color:var(--qb-text-muted)}.qb-scope .qbts{background:var(--qb-surface);border:1px solid var(--qb-border);border-radius:var(--qb-radius-lg);box-shadow:var(--qb-shadow-sm);padding:1rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:.8rem}.qb-scope .qbts__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap}.qb-scope .qbts__title{margin:0;font-size:1.05rem;font-weight:700;color:var(--qb-text-primary);letter-spacing:-.005em}.qb-scope .qbts__subtitle{margin:.2rem 0 0;font-size:.85rem;color:var(--qb-text-muted)}.qb-scope .qbts__legend{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;padding:.4rem .55rem;background:var(--qb-surface-soft);border:1px solid var(--qb-border);border-radius:var(--qb-radius-md)}.qb-scope .qbts__legend-label{font-size:.78rem;font-weight:600;color:var(--qb-text-secondary);margin-right:.2rem}.qb-scope .qbts__loading{display:flex;flex-direction:column;gap:.5rem}.qb-scope .qbts__loading-row{height:120px;width:100%}.qb-scope .qbts__chapters{display:flex;flex-direction:column;gap:.55rem}.qb-scope .qbts-chapter{background:var(--qb-surface);border:1px solid var(--qb-border);border-radius:var(--qb-radius-md);overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease}.qb-scope .qbts-chapter:hover{border-color:var(--qb-border-strong);box-shadow:var(--qb-shadow-sm)}.qb-scope .qbts-chapter__row{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;background:var(--qb-surface-soft);border-bottom:1px solid var(--qb-border)}.qb-scope .qbts-chapter__toggle{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;background:transparent;border:0;padding:0;cursor:pointer;font-family:inherit;text-align:left;color:var(--qb-text-primary)}.qb-scope .qbts-chapter__index{font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--qb-primary-strong);background:var(--qb-primary-soft);padding:.18rem .45rem;border-radius:var(--qb-radius-sm);border:1px solid var(--qb-primary-border);white-space:nowrap}.qb-scope .qbts-chapter__title{font-size:.92rem;font-weight:600;color:var(--qb-text-primary);flex:1;min-width:0}.qb-scope .qbts-chapter__total{display:inline-flex;align-items:baseline;gap:.25rem;font-size:.78rem;color:var(--qb-text-muted);white-space:nowrap}.qb-scope .qbts-chapter__total strong{font-size:1.1rem;font-weight:800;color:var(--qb-text-primary);line-height:1}.qb-scope .qbts-levels{display:flex;flex-direction:column;border-top:1px solid var(--qb-border)}.qb-scope .qbts-level{border-bottom:1px solid var(--qb-border);transition:background .16s ease}.qb-scope .qbts-level:last-child{border-bottom:none}.qb-scope .qbts-level__bar{display:flex;flex-wrap:wrap;align-items:stretch;gap:.5rem;padding:.45rem .65rem .45rem .5rem;background:var(--qb-surface)}@media(min-width:640px){.qb-scope .qbts-level__bar{flex-wrap:nowrap;align-items:center;padding:.5rem .75rem}}.qb-scope .qbts-level__toggle{display:flex;align-items:center;gap:.45rem;flex:1;min-width:0;padding:.35rem .4rem;margin:0;border:0;border-radius:var(--qb-radius-sm);background:transparent;cursor:pointer;font-family:inherit;text-align:left;color:var(--qb-text-primary);transition:background .14s ease}.qb-scope .qbts-level__toggle:hover{background:color-mix(in srgb,var(--qb-surface-soft) 85%,transparent)}.qb-scope .qbts-level__toggle:focus-visible{outline:none;box-shadow:var(--qb-ring-focus)}.qb-scope .qbts-level__chev{flex-shrink:0;color:var(--qb-text-muted)}.qb-scope .qbts-level__long{display:none}@media(min-width:520px){.qb-scope .qbts-level__long{display:block;flex:1;min-width:0}.qb-scope .qbts-level__toggle>.qb-badge.qb-badge--cog{display:none}}.qb-scope .qbts-level__count{font-size:1.15rem;font-weight:800;line-height:1;color:var(--qb-text-primary);flex-shrink:0;min-width:2rem;text-align:right}.qb-scope .qbts-level__hint{font-size:.72rem;font-weight:600;color:var(--qb-text-muted);flex-shrink:0;display:none}@media(min-width:640px){.qb-scope .qbts-level__hint{display:inline}}.qb-scope .qbts-level__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;width:100%;justify-content:flex-end}@media(min-width:640px){.qb-scope .qbts-level__actions{width:auto;flex-shrink:0}}.qb-scope .qbts-level--nb.qbts-level--low .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-nb-soft) 72%,var(--qb-surface))}.qb-scope .qbts-level--nb.qbts-level--med .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-nb-soft) 88%,var(--qb-surface))}.qb-scope .qbts-level--nb.qbts-level--high .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-nb-soft) 78%,var(--qb-cog-nb) 6%)}.qb-scope .qbts-level--th.qbts-level--low .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-th-soft) 72%,var(--qb-surface))}.qb-scope .qbts-level--th.qbts-level--med .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-th-soft) 88%,var(--qb-surface))}.qb-scope .qbts-level--th.qbts-level--high .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-th-soft) 78%,var(--qb-cog-th) 6%)}.qb-scope .qbts-level--vd.qbts-level--low .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-vd-soft) 72%,var(--qb-surface))}.qb-scope .qbts-level--vd.qbts-level--med .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-vd-soft) 88%,var(--qb-surface))}.qb-scope .qbts-level--vd.qbts-level--high .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-vd-soft) 78%,var(--qb-cog-vd) 6%)}.qb-scope .qbts-level--vdc.qbts-level--low .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-vdc-soft) 72%,var(--qb-surface))}.qb-scope .qbts-level--vdc.qbts-level--med .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-vdc-soft) 88%,var(--qb-surface))}.qb-scope .qbts-level--vdc.qbts-level--high .qbts-level__bar{background:color-mix(in srgb,var(--qb-cog-vdc-soft) 78%,var(--qb-cog-vdc) 6%)}.qb-scope .qbts-level--empty .qbts-level__bar{background:var(--qb-surface-soft)}.qb-scope .qbts-level--empty .qbts-level__count{color:var(--qb-text-muted)}.qb-scope .qbts-cell__btn{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .55rem;font-size:.72rem;font-weight:600;font-family:inherit;border-radius:var(--qb-radius-sm);border:1px solid var(--qb-border-strong);background:var(--qb-surface);color:var(--qb-text-secondary);cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease;white-space:nowrap}.qb-scope .qbts-cell__btn:hover{background:var(--qb-surface-soft);color:var(--qb-text-primary);border-color:var(--qb-text-muted)}.qb-scope .qbts-cell__btn--primary{background:var(--qb-primary);color:#fff;border-color:var(--qb-primary)}.qb-scope .qbts-cell__btn--primary:hover{background:var(--qb-primary-strong);border-color:var(--qb-primary-strong);color:#fff}.qb-scope .qbts-level__panel{padding:.55rem .75rem .75rem 2.25rem;background:var(--qb-surface-soft);border-top:1px dashed var(--qb-border)}@media(max-width:519px){.qb-scope .qbts-level__panel{padding-left:.65rem}}.qb-scope .qbts-level__empty{margin:0;font-size:.84rem;color:var(--qb-text-muted);font-style:italic}.qb-scope .qbts-level__questions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.qb-scope .qbts-level__question{padding:.55rem .65rem;background:var(--qb-surface);border:1px solid var(--qb-border);border-radius:var(--qb-radius-md);word-break:break-word}.qb-scope .qbts-level__question-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:.4rem}.qb-scope .qbts-level__qid{font-size:.68rem;font-weight:600;color:var(--qb-text-muted);letter-spacing:.02em;margin-left:auto}.qb-scope .qbts-level__question-body{font-size:.86rem;color:var(--qb-text-secondary);line-height:1.5}.qb-scope .qbts-preview-type{display:inline-block;margin-right:.4rem;padding:.08rem .4rem;background:var(--qb-primary-soft);color:var(--qb-primary-strong);border:1px solid var(--qb-primary-border);border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.02em;vertical-align:middle}.bulk-import-modal{width:90vw;max-width:1200px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.bulk-import-modal .modal-body{overflow-y:auto;flex:1}.bulk-import-upload{display:flex;flex-direction:column;gap:16px}.file-drop-zone{border:2px dashed #cbd5e0;border-radius:8px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .2s ease;background-color:#f7fafc}.file-drop-zone:hover{border-color:#4299e1;background-color:#ebf8ff}.file-drop-zone.active{border-color:#3182ce;background-color:#bee3f8}.file-drop-zone.loading{cursor:not-allowed;opacity:.7}.file-drop-zone svg{color:#718096;margin-bottom:16px}.drop-zone-text{font-size:16px;font-weight:500;color:#2d3748;margin-bottom:8px}.drop-zone-hint{font-size:14px;color:#718096}.bulk-import-preview{display:flex;flex-direction:column;gap:16px}.bulk-import-preview .table-wrap{max-height:500px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px}.bulk-import-preview .table{font-size:14px}.bulk-import-preview .table th{position:sticky;top:0;background-color:#f7fafc;z-index:1}.bulk-import-preview .table td{vertical-align:top}.row-invalid{background-color:#fff5f5}.alert{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:8px;font-size:14px}.alert svg{flex-shrink:0;margin-top:2px}.alert-info{background-color:#ebf8ff;border:1px solid #bee3f8;color:#2c5282}.alert-success{background-color:#f0fff4;border:1px solid #9ae6b4;color:#22543d}.alert-warning{background-color:#fffaf0;border:1px solid #fbd38d;color:#744210}.alert-error{background-color:#fff5f5;border:1px solid #feb2b2;color:#742a2a}.alert strong{display:block;margin-bottom:4px}.alert p{margin:0;font-size:13px;opacity:.9}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge-success{background-color:#c6f6d5;color:#22543d}.badge-error{background-color:#fed7d7;color:#742a2a}.error-list{display:flex;flex-direction:column;gap:4px}.error-item{font-size:12px;color:#c53030;line-height:1.4}.spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}.spinner-small{width:16px;height:16px;border:2px solid #e2e8f0;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1200px){.bulk-import-modal{width:95vw}}@media(max-width:768px){.bulk-import-modal{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0}.file-drop-zone{padding:32px 16px}.bulk-import-preview .table-wrap{max-height:400px}.bulk-import-preview .table{font-size:12px}.modal-footer{flex-direction:column}.modal-footer button{width:100%}}.eqfm-modal-scroll{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#b8b4aa #ebe8e0}.eqfm-modal-scroll::-webkit-scrollbar{width:10px}.eqfm-modal-scroll::-webkit-scrollbar-track{background:#ebe8e0;border-radius:999px}.eqfm-modal-scroll::-webkit-scrollbar-thumb{background:#a8a49a;border-radius:999px;border:2px solid #ebe8e0}.eqfm-modal-scroll::-webkit-scrollbar-thumb:hover{background:#8f8b82}.eqfm-modal-bg{background-color:#faf9f5;background-image:radial-gradient(circle at 1px 1px,rgba(232,230,220,.85) 1px,transparent 0),linear-gradient(180deg,#faf9f5f5,#f5f4edfa);background-size:18px 18px,100% 100%}.module-layout-container.student-assessments-module .data-card.sal-card{border-radius:1rem;border:1px solid #f0eee6;background:#faf9f5;box-shadow:#0000000d 0 4px 24px;min-height:0}.module-layout-container.student-assessments-module .data-card.sal-card:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #d1cfc5,#00000014 0 8px 30px}.module-layout-container.student-assessments-module .sal-cover{height:140px}.module-layout-container .sal-header-sub{font-size:.84rem;color:var(--mod-text-muted, #60748f);margin:0}.module-layout-container .data-card.sal-card{padding:0;gap:0;overflow:hidden}.module-layout-container .sal-cover{position:relative;height:120px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#64748b,#475569);overflow:hidden;flex-shrink:0}.module-layout-container .sal-cover--upcoming{background:linear-gradient(135deg,#4f6ef7,#7c3aed)}.module-layout-container .sal-cover--in-progress{background:linear-gradient(135deg,#f59e0b,#ef4444)}.module-layout-container .sal-cover--completed{background:linear-gradient(135deg,#10b981,#0d9488)}.module-layout-container .sal-cover__overlay{position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(255,255,255,.18) 0%,transparent 55%),radial-gradient(ellipse at 80% 80%,rgba(0,0,0,.12) 0%,transparent 50%);pointer-events:none}.module-layout-container .sal-cover__type-badge{position:absolute;top:10px;right:10px;background:#ffffff38;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.35);border-radius:20px;padding:.22em .65em;font-size:.67rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;line-height:1.4}.module-layout-container .sal-cover__icon{color:#ffffffeb;filter:drop-shadow(0 2px 6px rgba(0,0,0,.18));position:relative;z-index:1}.module-layout-container .sal-card-body{display:flex;flex-direction:column;gap:.55rem;padding:.95rem 1.1rem 1.1rem;flex:1}.module-layout-container .sal-card-head{display:flex;align-items:center;gap:.4rem}.module-layout-container .sal-card__title{font-size:.875rem;font-weight:700;line-height:1.35;color:var(--mod-ink, #1a2332);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.module-layout-container .sal-card__desc{font-size:.78rem;color:var(--mod-text-muted, #60748f);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.module-layout-container .sal-card-metrics{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.1rem}.module-layout-container .sal-card-metrics .metric{display:inline-flex;align-items:center;gap:.28rem;font-size:.73rem;font-weight:500;color:var(--mod-text-muted, #60748f);background:#f7f9fc;border:1px solid var(--mod-border, #dce3ee);border-radius:20px;padding:.22em .6em;line-height:1.4}.module-layout-container .sal-due-date{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--mod-text-muted, #60748f)}.module-layout-container .sal-due-date--overdue{color:var(--mod-danger, #ef4444);font-weight:600}.module-layout-container .sal-card-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:auto;padding-top:.4rem}.module-layout-container .sal-card-actions .btn{flex:1;min-width:0;justify-content:center;font-size:.8rem}.module-layout-container .badge.upcoming{background:#4f6ef71a;color:#4f6ef7;border-color:#4f6ef740}.module-layout-container .badge.in-progress{background:#f59e0b1f;color:#d97706;border-color:#f59e0b4d}.module-layout-container .badge.completed{background:#10b9811a;color:#059669;border-color:#10b98140}.module-layout-container .reason-note{font-size:.75rem;color:var(--mod-text-muted, #60748f);align-self:center}:root{--c-primary: #c96442;--c-primary-soft: rgba(201, 100, 66, .12);--c-primary-glow: rgba(201, 100, 66, .24);--c-dark: #0e0c15;--c-dark-alt: #1a1725;--c-bg: #fafaff;--c-surface: #ffffff;--c-text-1: #0e0c15;--c-text-2: #3f3a52;--c-text-3: #756b85;--c-border: #e8e5f0;--c-border-soft: #f0edf8;--c-accent-pink: #ff98e2;--c-accent-gold: #ffc876;--c-accent-cyan: #67e8f9;--f-heading: "Be Vietnam Pro", -apple-system, sans-serif;--f-body: "Be Vietnam Pro", -apple-system, sans-serif;--shadow-glow: 0 4px 48px rgba(201, 100, 66, .2)}.nf-root{position:relative;min-height:100vh;display:flex;flex-direction:column;background:var(--c-bg);font-family:var(--f-body);color:var(--c-text-2);overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.nf-blob{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0}.nf-blob-1{width:520px;height:520px;top:-140px;left:-120px;background:radial-gradient(circle,rgba(94,92,230,.14) 0%,transparent 70%);animation:nf-blob-drift 12s ease-in-out infinite alternate}.nf-blob-2{width:400px;height:400px;bottom:-80px;right:-80px;background:radial-gradient(circle,rgba(255,152,226,.12) 0%,transparent 70%);animation:nf-blob-drift 15s ease-in-out infinite alternate-reverse}.nf-blob-3{width:280px;height:280px;top:50%;right:15%;background:radial-gradient(circle,rgba(255,200,118,.1) 0%,transparent 70%);animation:nf-blob-drift 10s ease-in-out infinite alternate}@keyframes nf-blob-drift{0%{transform:translate(0) scale(1)}to{transform:translate(30px,20px) scale(1.08)}}.nf-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(94,92,230,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(94,92,230,.04) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0;mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,black 30%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,black 30%,transparent 100%)}.nf-symbols{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}.nf-sym{position:absolute;font-family:var(--f-heading);font-weight:700;color:var(--c-primary);opacity:0;animation:nf-float-sym linear infinite;-webkit-user-select:none;-moz-user-select:none;user-select:none}.nf-sym-1{font-size:1.8rem;left:5%;animation-duration:14s;animation-delay:0s}.nf-sym-2{font-size:2.4rem;left:12%;animation-duration:18s;animation-delay:1.2s}.nf-sym-3{font-size:1.5rem;left:22%;animation-duration:12s;animation-delay:.5s}.nf-sym-4{font-size:2rem;left:33%;animation-duration:16s;animation-delay:3s}.nf-sym-5{font-size:1.6rem;left:46%;animation-duration:10s;animation-delay:1.8s}.nf-sym-6{font-size:2.6rem;left:57%;animation-duration:20s;animation-delay:.8s}.nf-sym-7{font-size:1.4rem;left:68%;animation-duration:13s;animation-delay:2.5s}.nf-sym-8{font-size:2rem;left:78%;animation-duration:17s;animation-delay:.3s}.nf-sym-9{font-size:1.7rem;left:87%;animation-duration:15s;animation-delay:1.5s}.nf-sym-10{font-size:2.2rem;left:93%;animation-duration:11s;animation-delay:4s}.nf-sym-11{font-size:1.3rem;left:8%;animation-duration:19s;animation-delay:2s}.nf-sym-12{font-size:2rem;left:28%;animation-duration:14s;animation-delay:3.5s}.nf-sym-13{font-size:1.6rem;left:50%;animation-duration:16s;animation-delay:.7s}.nf-sym-14{font-size:2.1rem;left:72%;animation-duration:12s;animation-delay:2.8s}.nf-sym-15{font-size:1.5rem;left:83%;animation-duration:18s;animation-delay:1.1s}.nf-sym-16{font-size:2.3rem;left:96%;animation-duration:15s;animation-delay:3.2s}@keyframes nf-float-sym{0%{transform:translateY(110vh) rotate(-10deg);opacity:0}8%{opacity:.22}88%{opacity:.14}to{transform:translateY(-12vh) rotate(12deg);opacity:0}}.nf-header{position:relative;z-index:10;padding:1.25rem 2rem;border-bottom:1px solid var(--c-border-soft);background:#fafaffcc;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%)}.nf-logo{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}.nf-logo-icon{font-size:1.4rem;font-weight:800;color:var(--c-primary);font-family:var(--f-heading)}.nf-logo-text{font-size:1.05rem;font-weight:600;color:var(--c-text-1);font-family:var(--f-heading);letter-spacing:-.3px}.nf-main{position:relative;z-index:10;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem 4rem;text-align:center}.nf-equation-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem;border-radius:100px;background:var(--c-primary-soft);border:1px solid rgba(201,100,66,.2);margin-bottom:2rem;animation:nf-fade-up .6s ease both}.nf-eq-text{font-size:.8rem;font-weight:600;color:var(--c-primary);font-family:var(--f-heading);letter-spacing:.2px}.nf-eq-text sub{font-size:.65rem}.nf-code-wrapper{position:relative;line-height:1;margin-bottom:1.5rem;animation:nf-fade-up .7s ease .1s both}.nf-code-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--f-heading);font-size:clamp(8rem,26vw,18rem);font-weight:900;color:transparent;-webkit-text-stroke:1px rgba(201,100,66,.12);-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;letter-spacing:-.04em}.nf-code{position:relative;font-family:var(--f-heading);font-size:clamp(7rem,24vw,16rem);font-weight:900;letter-spacing:-.04em;margin:0;background:linear-gradient(135deg,var(--c-primary) 0%,#d97757 40%,var(--c-accent-pink) 80%,var(--c-accent-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 8px 32px rgba(201,100,66,.28));animation:nf-pulse-glow 3s ease-in-out infinite}@keyframes nf-pulse-glow{0%,to{filter:drop-shadow(0 8px 32px rgba(201,100,66,.28))}50%{filter:drop-shadow(0 8px 48px rgba(94,92,230,.48))}}.nf-formula-row{display:flex;align-items:center;gap:1rem;width:100%;max-width:480px;margin-bottom:1.75rem;animation:nf-fade-up .7s ease .2s both}.nf-formula-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--c-border),transparent)}.nf-formula-chip{font-size:.72rem;font-weight:500;color:var(--c-text-3);white-space:nowrap;font-family:Courier New,monospace;padding:.2rem .6rem;border:1px solid var(--c-border);border-radius:6px;background:var(--c-surface)}.nf-heading{font-family:var(--f-heading);font-size:clamp(1.5rem,4vw,2.25rem);font-weight:800;color:var(--c-text-1);margin:0 0 1rem;letter-spacing:-.5px;animation:nf-fade-up .7s ease .3s both}.nf-desc{font-size:1rem;line-height:1.7;color:var(--c-text-3);max-width:460px;margin:0 0 2rem;animation:nf-fade-up .7s ease .4s both}.nf-quick{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2.25rem;animation:nf-fade-up .7s ease .5s both}.nf-quick-label{font-size:.8rem;color:var(--c-text-3);font-weight:500}.nf-quick-link{font-size:.8rem;font-weight:600;color:var(--c-primary);text-decoration:none;padding:.25rem .75rem;border:1px solid rgba(94,92,230,.25);border-radius:100px;background:var(--c-primary-soft);transition:background .2s,border-color .2s,transform .15s}.nf-quick-link:hover{background:#5e5ce624;border-color:#5e5ce680;transform:translateY(-1px)}.nf-actions{display:flex;gap:.875rem;justify-content:center;flex-wrap:wrap;margin-bottom:3rem;animation:nf-fade-up .7s ease .6s both}.nf-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;border-radius:12px;font-size:.9rem;font-weight:600;font-family:var(--f-heading);cursor:pointer;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;border:none;outline:none}.nf-btn:hover{transform:translateY(-2px)}.nf-btn:active{transform:translateY(0)}.nf-btn-primary{background:linear-gradient(135deg,var(--c-primary) 0%,#7c3aed 100%);color:#fff;box-shadow:0 4px 20px #5e5ce659}.nf-btn-primary:hover{box-shadow:0 8px 28px #5e5ce673}.nf-btn-ghost{background:var(--c-surface);color:var(--c-text-2);border:1.5px solid var(--c-border);box-shadow:0 2px 8px #0e0c150a}.nf-btn-ghost:hover{border-color:var(--c-primary);color:var(--c-primary);background:var(--c-primary-soft);box-shadow:0 4px 16px #5e5ce624}.nf-card{display:inline-flex;flex-direction:column;gap:.75rem;padding:1.25rem 1.75rem;background:var(--c-surface);border:1px solid var(--c-border);border-radius:16px;box-shadow:0 4px 24px #0e0c150f;max-width:380px;width:100%;animation:nf-fade-up .7s ease .75s both;text-align:left}.nf-card-row{display:flex;align-items:center;gap:.875rem}.nf-card-sym{font-size:1.8rem;color:var(--c-primary);font-family:var(--f-heading);font-weight:700;line-height:1;flex-shrink:0}.nf-card-text{font-size:.8rem;color:var(--c-text-3);line-height:1.5}.nf-card-divider{height:1px;background:var(--c-border-soft)}.nf-card-formula{font-family:Courier New,monospace;font-size:.82rem;color:var(--c-text-3)}.nf-card-op{color:var(--c-accent-gold);font-weight:700;margin:0 .25rem}.nf-card-result{color:#ef4444;font-style:italic}.nf-footer{position:relative;z-index:10;padding:1.25rem 2rem;text-align:center;border-top:1px solid var(--c-border-soft)}.nf-footer p{font-size:.78rem;color:var(--c-text-3);margin:0}.nf-footer-link{color:var(--c-primary);text-decoration:none;font-weight:500}.nf-footer-link:hover{text-decoration:underline}@keyframes nf-fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.nf-desc br{display:none}.nf-code{font-size:clamp(5.5rem,30vw,7rem)}.nf-code-bg{font-size:clamp(6rem,32vw,8rem)}.nf-actions{flex-direction:column;align-items:center}.nf-btn{width:100%;max-width:280px;justify-content:center}}#root,.app{width:100%;min-height:100vh}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
