/* RangeHonar production stylesheet. Generated by php bin/publish-css; do not add browser @import directives. */

/* Compiled Tailwind runtime utilities */
*,:after,:before{--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:rgba(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:rgba(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: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;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,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{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}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{font-family:Vazirmatn,system-ui,-apple-system,sans-serif}[dir=rtl]{text-align:right}body{transition:background-color .2s ease,color .2s ease}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.btn-primary{border-radius:.5rem;--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1));padding:.5rem 1.5rem;font-weight:700;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-primary:hover{--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.btn-secondary{border-radius:.5rem;border-width:2px;--tw-border-opacity:1;border-color:rgb(79 70 229/var(--tw-border-opacity,1));padding:.5rem 1.5rem;font-weight:700;--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-secondary:hover{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.dark .card{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.dark .input-field{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.label{margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.dark .label{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.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}.\!visible{visibility:visible!important}.visible{visibility:visible}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-full{width:100%}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-700{--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity,1))}.border-green-400{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.border-green-700{--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity,1))}.border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.border-red-700{--tw-border-opacity:1;border-color:rgb(185 28 28/var(--tw-border-opacity,1))}.border-yellow-400{--tw-border-opacity:1;border-color:rgb(250 204 21/var(--tw-border-opacity,1))}.border-yellow-700{--tw-border-opacity:1;border-color:rgb(161 98 7/var(--tw-border-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-900{--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-green-900{--tw-bg-opacity:1;background-color:rgb(20 83 45/var(--tw-bg-opacity,1))}.bg-indigo-600,.bg-primary{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/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-900{--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-yellow-900{--tw-bg-opacity:1;background-color:rgb(113 63 18/var(--tw-bg-opacity,1))}.p-12{padding:3rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.text-center{text-align:center}.text-right{text-align:right}.font-vazirmatn{font-family:Vazirmatn,system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-9xl{font-size:8rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.italic{font-style:italic}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-green-300{--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-indigo-600,.text-primary{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-purple-700{--tw-text-opacity:1;color:rgb(126 34 206/var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/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-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-300{--tw-text-opacity:1;color:rgb(253 224 71/var(--tw-text-opacity,1))}.text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(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)}.blur{--tw-blur:blur(8px)}.blur,.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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}[x-cloak]{display:none!important}.hover\:bg-amber-600:hover{--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgb(209 213 219/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-green-700:hover{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.hover\:bg-primary-dark:hover{--tw-bg-opacity:1;background-color:rgb(55 48 163/var(--tw-bg-opacity,1))}.hover\:text-blue-700:hover{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.hover\:text-green-700:hover{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.hover\:text-red-700:hover{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.hover\:text-yellow-700:hover{--tw-text-opacity:1;color:rgb(161 98 7/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(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)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.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-primary:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(79 70 229/var(--tw-ring-opacity,1))}@media (min-width:768px){.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\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Core theme */
/* رنگ‌هنر — لایهٔ بصری عمومی (بدون وابستگی به CDN یا فریم‌ورک CSS دوم) */
:root {
    --rh-ink: #172033;
    --rh-muted: #64748b;
    --rh-paper: #f8fafc;
    --rh-surface: #ffffff;
    --rh-border: #e2e8f0;
    --rh-primary: #3730a3;
    --rh-primary-strong: #312e81;
    --rh-accent: #f59e0b;
    --rh-accent-soft: #fef3c7;
    --rh-rose: #e76f51;
    --rh-shadow: 0 16px 40px rgba(15, 23, 42, 0.08);
    --rh-shadow-hover: 0 22px 52px rgba(30, 41, 59, 0.15);
}

* { box-sizing: border-box; }
html { background: var(--rh-paper); }
html, body, button, input, textarea, select, option {
    font-family: 'Vazirmatn', Tahoma, Arial, sans-serif;
}
.font-vazirmatn { font-family: 'Vazirmatn', Tahoma, Arial, sans-serif; }
body.site-shell { background: var(--rh-paper); color: var(--rh-ink); }
body.site-shell.dark { --rh-ink: #f1f5f9; --rh-muted: #a8b4c7; --rh-paper: #0b1220; --rh-surface: #121c2f; --rh-border: #27344a; --rh-accent-soft: rgba(245, 158, 11, 0.15); --rh-shadow: 0 18px 44px rgba(0, 0, 0, 0.28); --rh-shadow-hover: 0 26px 60px rgba(0, 0, 0, 0.38); }
body.site-shell a { text-decoration: none; }
.rh-container { width: min(1180px, calc(100% - 2rem)); margin-inline: auto; }

/* Navigation */
.site-nav { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid rgba(226, 232, 240, 0.86); background: rgba(255, 255, 255, 0.92); backdrop-filter: blur(16px); }
.dark .site-nav { background: rgba(11, 18, 32, 0.9); border-color: rgba(51, 65, 85, 0.8); }
.nav-bar { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; }
.nav-brand { display: inline-flex; align-items: center; gap: 0.7rem; min-width: max-content; color: var(--rh-ink); }
.nav-brand img { width: 42px; height: 42px; padding: 3px; object-fit: contain; border-radius: 14px; background: linear-gradient(135deg, #fef3c7, #e0e7ff); box-shadow: 0 7px 15px rgba(55, 48, 163, 0.17); }
.nav-brand-copy { display: grid; gap: 1px; }
.nav-brand-name { color: var(--rh-primary); font-size: 1.13rem; font-weight: 900; letter-spacing: -0.04em; }
.dark .nav-brand-name { color: #c7d2fe; }
.nav-brand-tagline { color: var(--rh-muted); font-size: 0.67rem; font-weight: 600; }
.nav-desktop { display: flex; align-items: center; gap: 0.25rem; }
.nav-link { position: relative; padding: 0.65rem 0.8rem; border-radius: 0.7rem; color: #475569; font-size: 0.88rem; font-weight: 650; transition: color .2s ease, background-color .2s ease; }
.nav-link:hover, .nav-link.is-active { color: var(--rh-primary); background: #eef2ff; }
.dark .nav-link { color: #cbd5e1; }
.dark .nav-link:hover, .dark .nav-link.is-active { color: #e0e7ff; background: rgba(99, 102, 241, .18); }
.nav-actions { display: flex; align-items: center; gap: 0.45rem; }
.icon-button { display: inline-grid; place-items: center; width: 2.45rem; height: 2.45rem; border: 1px solid var(--rh-border); border-radius: 0.8rem; color: #475569; background: var(--rh-surface); cursor: pointer; transition: transform .2s ease, color .2s ease, border-color .2s ease, background .2s ease; }
.icon-button:hover { color: var(--rh-primary); border-color: #a5b4fc; background: #eef2ff; transform: translateY(-1px); }
.dark .icon-button { color: #cbd5e1; }
.dark .icon-button:hover { color: #fef3c7; background: rgba(99, 102, 241, .18); }
.nav-login { padding: 0.63rem 0.85rem; color: #475569; font-size: 0.86rem; font-weight: 700; }
.dark .nav-login { color: #dbeafe; }
.nav-cta, .nav-dashboard { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; min-height: 2.5rem; padding: 0.64rem .95rem; border: 1px solid transparent; border-radius: .78rem; color: #fff; background: var(--rh-primary); font-size: .84rem; font-weight: 800; box-shadow: 0 8px 18px rgba(55, 48, 163, .22); transition: background .2s ease, transform .2s ease, box-shadow .2s ease; }
.nav-cta:hover, .nav-dashboard:hover { color: #fff; background: var(--rh-primary-strong); transform: translateY(-1px); box-shadow: 0 11px 23px rgba(55, 48, 163, .3); }
.nav-logout { padding: .45rem; border: 0; background: transparent; color: #94a3b8; font-size: .8rem; cursor: pointer; }
.nav-logout:hover { color: #dc2626; }
.mobile-menu-trigger { display: none; }
.nav-mobile { display: none; overflow: hidden; padding: .3rem 0 1rem; border-top: 1px solid var(--rh-border); }
.nav-mobile-inner { display: grid; gap: .25rem; padding-top: .65rem; }
.mobile-nav-link { display: flex; align-items: center; justify-content: space-between; padding: .78rem .85rem; border-radius: .75rem; color: #475569; font-size: .92rem; font-weight: 700; }
.mobile-nav-link:hover, .mobile-nav-link.is-active { color: var(--rh-primary); background: #eef2ff; }
.dark .mobile-nav-link { color: #dbeafe; }
.dark .mobile-nav-link:hover, .dark .mobile-nav-link.is-active { color: #e0e7ff; background: rgba(99, 102, 241, .18); }
.mobile-nav-footer { display: flex; align-items: center; gap: .65rem; padding-top: .5rem; }
.mobile-nav-footer .nav-cta, .mobile-nav-footer .nav-dashboard { flex: 1; }

/* Homepage */
.home-main { overflow: hidden; }
.hero-section { position: relative; isolation: isolate; padding: clamp(3.6rem, 8vw, 6.5rem) 0 clamp(3rem, 6vw, 5rem); color: #fff; background: linear-gradient(125deg, #111b45 0%, #3730a3 49%, #7c3aed 100%); overflow: hidden; }
.hero-section::before { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .5; background-image: radial-gradient(circle at 12% 25%, rgba(245, 158, 11, .38) 0, transparent 21%), radial-gradient(circle at 85% 12%, rgba(255, 255, 255, .16) 0, transparent 18%), radial-gradient(circle at 66% 98%, rgba(231, 111, 81, .36) 0, transparent 29%); }
.hero-section::after { content: ""; position: absolute; z-index: -1; width: 480px; height: 480px; left: -140px; bottom: -340px; border: 58px solid rgba(255, 255, 255, .075); border-radius: 50%; transform: rotate(20deg); }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(310px, .85fr); align-items: center; gap: clamp(2rem, 7vw, 6rem); }
.hero-overline, .section-kicker { display: inline-flex; align-items: center; gap: .5rem; margin-bottom: 1.15rem; color: #fef3c7; font-size: .82rem; font-weight: 800; }
.hero-overline::before, .section-kicker::before { content: ""; width: 1.6rem; height: 2px; border-radius: 999px; background: currentColor; }
.hero-title { max-width: 660px; margin: 0; color: #fff; font-size: clamp(2.15rem, 5vw, 4.4rem); font-weight: 900; line-height: 1.24; letter-spacing: -0.055em; }
.hero-title .accent { position: relative; z-index: 0; color: #fde68a; white-space: nowrap; }
.hero-title .accent::after { content: ""; position: absolute; z-index: -1; right: -2%; bottom: .08em; width: 104%; height: .23em; border-radius: .6rem; background: rgba(245, 158, 11, .28); transform: rotate(-2deg); }
.hero-copy { max-width: 580px; margin: 1.35rem 0 0; color: #e0e7ff; font-size: clamp(1rem, 1.6vw, 1.16rem); line-height: 2.05; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
.button-primary, .button-secondary, .button-soft { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 3rem; padding: .8rem 1.2rem; border-radius: .92rem; font-size: .91rem; font-weight: 850; transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease; }
.button-primary { color: #2e1065; background: #fde68a; box-shadow: 0 10px 24px rgba(20, 15, 76, .26); }
.button-primary:hover { color: #2e1065; background: #fcd34d; transform: translateY(-2px); box-shadow: 0 15px 28px rgba(20, 15, 76, .35); }
.button-secondary { color: #fff; border: 1px solid rgba(255, 255, 255, .48); background: rgba(255, 255, 255, .08); }
.button-secondary:hover { color: #fff; border-color: rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .16); transform: translateY(-2px); }
.button-soft { color: var(--rh-primary); background: #eef2ff; }
.button-soft:hover { color: var(--rh-primary-strong); background: #e0e7ff; transform: translateY(-2px); }
.hero-points { display: flex; flex-wrap: wrap; gap: .9rem 1.25rem; margin-top: 1.55rem; color: #e0e7ff; font-size: .81rem; font-weight: 650; }
.hero-points span { display: inline-flex; align-items: center; gap: .38rem; }
.hero-points svg { color: #fde68a; }
.hero-showcase { position: relative; }
.hero-card { position: relative; padding: clamp(1rem, 3vw, 1.5rem); border: 1px solid rgba(255, 255, 255, .2); border-radius: 1.45rem; background: linear-gradient(145deg, rgba(255, 255, 255, .18), rgba(255, 255, 255, .06)); box-shadow: 0 28px 52px rgba(12, 9, 58, .28); backdrop-filter: blur(12px); }
.hero-card-label { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; color: #e0e7ff; font-size: .75rem; font-weight: 750; }
.hero-card-label span:last-child { padding: .3rem .55rem; border-radius: 999px; color: #1e1b4b; background: #fde68a; }
.artwork-preview { position: relative; height: 205px; overflow: hidden; border: 1px solid rgba(255, 255, 255, .2); border-radius: 1rem; background: linear-gradient(135deg, #f4d9a5 0%, #d48262 40%, #4f3b7b 100%); }
.artwork-preview::before { content: ""; position: absolute; width: 230px; height: 230px; top: -80px; right: -22px; border: 24px solid rgba(255, 255, 255, .35); border-radius: 48% 52% 30% 70%; transform: rotate(25deg); }
.artwork-preview::after { content: ""; position: absolute; width: 270px; height: 80px; right: -45px; bottom: 8px; border-radius: 50%; background: rgba(38, 28, 70, .42); transform: rotate(-17deg); }
.artwork-stroke { position: absolute; z-index: 1; width: 110px; height: 20px; right: 32px; bottom: 47px; border-radius: 999px; background: #fde68a; transform: rotate(-25deg); box-shadow: 35px 34px 0 -4px rgba(255, 255, 255, .65), -18px -87px 0 4px rgba(231, 111, 81, .82); }
.hero-course-info { display: grid; gap: .48rem; padding: 1rem .25rem .15rem; }
.hero-course-info h2 { margin: 0; color: #fff; font-size: 1.05rem; font-weight: 850; line-height: 1.7; }
.hero-course-meta { display: flex; align-items: center; justify-content: space-between; gap: .8rem; color: #dbeafe; font-size: .77rem; }
.hero-floating-note { position: absolute; left: -1.4rem; bottom: 2.2rem; display: flex; align-items: center; gap: .55rem; padding: .65rem .75rem; border: 1px solid rgba(255, 255, 255, .4); border-radius: .85rem; color: #312e81; background: rgba(255, 255, 255, .93); box-shadow: 0 14px 28px rgba(12, 9, 58, .22); font-size: .71rem; font-weight: 800; }
.hero-floating-note strong { display: block; font-size: .88rem; }

.stats-strip { position: relative; z-index: 2; margin-top: -1.75rem; }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); overflow: hidden; border: 1px solid var(--rh-border); border-radius: 1.25rem; background: var(--rh-surface); box-shadow: var(--rh-shadow); }
.stat-item { position: relative; padding: 1.25rem 1rem; text-align: center; }
.stat-item:not(:last-child)::after { content: ""; position: absolute; top: 24%; left: 0; width: 1px; height: 52%; background: var(--rh-border); }
.stat-value { color: var(--rh-primary); font-size: clamp(1.32rem, 2.8vw, 1.85rem); font-weight: 900; letter-spacing: -.04em; }
.dark .stat-value { color: #a5b4fc; }
.stat-label { margin-top: .25rem; color: var(--rh-muted); font-size: .77rem; font-weight: 650; }

.home-section { padding: clamp(3.5rem, 8vw, 6rem) 0; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 2rem; }
.section-heading-center { max-width: 680px; margin: 0 auto 2.2rem; text-align: center; }
.section-heading-center .section-kicker { justify-content: center; color: #b45309; }
.section-kicker { margin-bottom: .65rem; color: #b45309; }
.section-title { margin: 0; color: var(--rh-ink); font-size: clamp(1.65rem, 3.5vw, 2.35rem); font-weight: 900; line-height: 1.4; letter-spacing: -.045em; }
.section-description { max-width: 570px; margin: .65rem 0 0; color: var(--rh-muted); font-size: .93rem; line-height: 1.95; }
.section-link { display: inline-flex; align-items: center; gap: .4rem; min-width: max-content; color: var(--rh-primary); font-size: .86rem; font-weight: 850; }
.section-link:hover { color: #6d28d9; }
.course-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.course-card { position: relative; display: flex; flex-direction: column; min-height: 100%; overflow: hidden; border: 1px solid var(--rh-border); border-radius: 1.15rem; color: var(--rh-ink); background: var(--rh-surface); box-shadow: 0 5px 16px rgba(15, 23, 42, .035); transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease; }
.course-card:hover { color: var(--rh-ink); border-color: #c7d2fe; box-shadow: var(--rh-shadow-hover); transform: translateY(-5px); }
.course-art { position: relative; height: 150px; overflow: hidden; background: linear-gradient(130deg, #d9e7fb, #f6ded0 48%, #ddc8e8); }
.course-art::after { content: ""; position: absolute; inset: 0; opacity: .72; background: linear-gradient(150deg, transparent 46%, rgba(55, 48, 163, .38) 47% 56%, transparent 57%), radial-gradient(ellipse at 25% 25%, rgba(245, 158, 11, .78) 0 10%, transparent 10.5%), radial-gradient(ellipse at 72% 72%, rgba(231, 111, 81, .58) 0 14%, transparent 14.5%); }
.course-art-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; }
.course-art-artmark { position: absolute; z-index: 2; right: 1rem; bottom: .85rem; display: grid; place-items: center; width: 2.55rem; height: 2.55rem; border: 1px solid rgba(255, 255, 255, .7); border-radius: .8rem; color: #312e81; background: rgba(255, 255, 255, .78); box-shadow: 0 8px 16px rgba(30, 41, 59, .12); font-size: .75rem; font-weight: 900; }
.course-card:nth-child(3n+2) .course-art { background: linear-gradient(130deg, #f5d9ad, #d99a79 48%, #6b5b95); }
.course-card:nth-child(3n+3) .course-art { background: linear-gradient(130deg, #c8dbcf, #a9b8a0 48%, #e0b0a5); }
.course-card-body { display: flex; flex: 1; flex-direction: column; padding: 1.1rem; }
.course-tags { display: flex; flex-wrap: wrap; gap: .38rem; min-height: 1.55rem; }
.course-tag { padding: .25rem .5rem; border-radius: 999px; font-size: .67rem; font-weight: 800; }
.tag-guided { color: #5b21b6; background: #ede9fe; }
.tag-self { color: #047857; background: #d1fae5; }
.tag-free { color: #b45309; background: var(--rh-accent-soft); }
.dark .tag-guided { color: #ddd6fe; background: rgba(109, 40, 217, .28); }
.dark .tag-self { color: #a7f3d0; background: rgba(5, 150, 105, .25); }
.course-title { margin: .85rem 0 .45rem; color: var(--rh-ink); font-size: 1rem; font-weight: 850; line-height: 1.75; transition: color .2s ease; }
.course-card:hover .course-title { color: var(--rh-primary); }
.dark .course-card:hover .course-title { color: #c7d2fe; }
.course-excerpt { display: -webkit-box; overflow: hidden; margin: 0; color: var(--rh-muted); font-size: .79rem; line-height: 1.85; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.course-bottom { display: flex; align-items: end; justify-content: space-between; gap: .6rem; margin-top: auto; padding-top: 1.05rem; }
.course-lessons { display: inline-flex; align-items: center; gap: .32rem; color: var(--rh-muted); font-size: .72rem; font-weight: 700; }
.course-price { color: var(--rh-primary); font-size: .77rem; font-weight: 900; text-align: left; }
.dark .course-price { color: #c7d2fe; }
.empty-courses { padding: 3rem 1.25rem; border: 1px dashed #cbd5e1; border-radius: 1rem; color: var(--rh-muted); text-align: center; }
.course-footer-action { display: flex; justify-content: center; margin-top: 2rem; }

.feature-section { position: relative; background: linear-gradient(180deg, #f1f5f9, #f8fafc); }
.dark .feature-section { background: linear-gradient(180deg, #101a2c, #0b1220); }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.feature-card { padding: 1.45rem; border: 1px solid var(--rh-border); border-radius: 1.1rem; background: var(--rh-surface); box-shadow: 0 7px 20px rgba(15, 23, 42, .035); }
.feature-icon { display: grid; place-items: center; width: 2.9rem; height: 2.9rem; margin-bottom: 1rem; border-radius: .9rem; color: var(--rh-primary); background: #e0e7ff; }
.feature-card:nth-child(2) .feature-icon { color: #b45309; background: #fef3c7; }
.feature-card:nth-child(3) .feature-icon { color: #be123c; background: #ffe4e6; }
.dark .feature-icon { color: #c7d2fe; background: rgba(99, 102, 241, .22); }
.dark .feature-card:nth-child(2) .feature-icon { color: #fde68a; background: rgba(245, 158, 11, .18); }
.dark .feature-card:nth-child(3) .feature-icon { color: #fda4af; background: rgba(244, 63, 94, .18); }
.feature-card h3 { margin: 0; color: var(--rh-ink); font-size: 1.03rem; font-weight: 850; }
.feature-card p { margin: .55rem 0 0; color: var(--rh-muted); font-size: .84rem; line-height: 1.9; }
.path-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 2.3rem; }
.path-item { display: flex; align-items: flex-start; gap: .8rem; padding: 1.1rem; border-top: 1px solid var(--rh-border); }
.path-number { display: grid; flex: 0 0 auto; place-items: center; width: 1.85rem; height: 1.85rem; border-radius: .58rem; color: var(--rh-primary); background: #e0e7ff; font-size: .77rem; font-weight: 900; }
.dark .path-number { color: #c7d2fe; background: rgba(99, 102, 241, .22); }
.path-item h3 { margin: 0; color: var(--rh-ink); font-size: .9rem; font-weight: 850; }
.path-item p { margin: .25rem 0 0; color: var(--rh-muted); font-size: .76rem; line-height: 1.7; }

.cta-section { padding: clamp(3.5rem, 7vw, 5.5rem) 0; }
.cta-panel { position: relative; overflow: hidden; padding: clamp(2rem, 5vw, 3.5rem); border-radius: 1.6rem; color: #fff; background: #172554; }
.cta-panel::before { content: ""; position: absolute; left: -4rem; top: -8rem; width: 22rem; height: 22rem; border-radius: 50%; background: rgba(245, 158, 11, .21); }
.cta-panel::after { content: ""; position: absolute; right: -6rem; bottom: -9rem; width: 25rem; height: 25rem; border: 38px solid rgba(129, 140, 248, .2); border-radius: 50%; }
.cta-content { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 1.7rem; }
.cta-title { max-width: 650px; margin: 0; font-size: clamp(1.6rem, 3.5vw, 2.4rem); font-weight: 900; line-height: 1.5; letter-spacing: -.04em; }
.cta-copy { max-width: 620px; margin: .65rem 0 0; color: #c7d2fe; font-size: .94rem; line-height: 1.95; }
.cta-panel .button-primary { min-width: max-content; }

/* Footer */
.site-footer { border-top: 1px solid var(--rh-border); color: #cbd5e1; background: #111827; }
.footer-grid { display: grid; grid-template-columns: 1.55fr repeat(3, 1fr); gap: 2rem; padding: 3.25rem 0 2.35rem; }
.footer-brand { max-width: 295px; }
.footer-brand .nav-brand { color: #fff; }
.footer-brand .nav-brand-name { color: #fff; }
.footer-brand .nav-brand-tagline { color: #94a3b8; }
.footer-description { margin: 1rem 0 0; color: #94a3b8; font-size: .8rem; line-height: 2; }
.footer-badge { display: inline-flex; align-items: center; gap: .4rem; margin-top: 1rem; padding: .4rem .65rem; border: 1px solid rgba(148, 163, 184, .24); border-radius: 999px; color: #cbd5e1; font-size: .69rem; font-weight: 700; }
.footer-title { margin: .25rem 0 1rem; color: #fff; font-size: .9rem; font-weight: 850; }
.footer-links { display: grid; gap: .65rem; }
.footer-links a { color: #94a3b8; font-size: .78rem; transition: color .2s ease; }
.footer-links a:hover { color: #fef3c7; }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.2rem 0; border-top: 1px solid rgba(148, 163, 184, .16); color: #64748b; font-size: .73rem; }
.footer-bottom-links { display: flex; flex-wrap: wrap; gap: 1rem; }
.footer-bottom-links a { color: #94a3b8; }
.footer-bottom-links a:hover { color: #fef3c7; }

/* Accessibility and responsive behavior */
a:focus-visible, button:focus-visible { outline: 3px solid rgba(245, 158, 11, .8); outline-offset: 3px; }
@media (max-width: 980px) { .nav-desktop { display: none; } .mobile-menu-trigger { display: inline-grid; } .nav-mobile { display: block; } .hero-grid { grid-template-columns: 1fr; } .hero-showcase { width: min(460px, 100%); margin: 0 auto; } .course-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .feature-grid, .path-grid { grid-template-columns: 1fr; } .footer-grid { grid-template-columns: repeat(2, 1fr); } .footer-brand { grid-column: span 2; } }
@media (max-width: 640px) { .rh-container { width: min(100% - 1.25rem, 1180px); } .nav-bar { min-height: 66px; } .nav-brand img { width: 37px; height: 37px; } .nav-brand-tagline { display: none; } .nav-actions .nav-login, .nav-actions .nav-cta, .nav-actions .nav-dashboard, .nav-actions .nav-logout { display: none; } .hero-section { padding-top: 3rem; } .hero-actions .button-primary, .hero-actions .button-secondary { flex: 1; } .hero-floating-note { left: -.45rem; bottom: 1.25rem; } .stats-grid { grid-template-columns: repeat(2, 1fr); } .stat-item:nth-child(2)::after { display: none; } .stat-item:nth-child(-n+2) { border-bottom: 1px solid var(--rh-border); } .section-heading, .cta-content, .footer-bottom { align-items: flex-start; flex-direction: column; } .section-heading .section-link { margin-top: -.7rem; } .course-grid { grid-template-columns: 1fr; } .course-art { height: 168px; } .footer-grid { grid-template-columns: 1fr; gap: 1.65rem; padding: 2.65rem 0 2rem; } .footer-brand { grid-column: auto; } .footer-bottom { gap: .75rem; } }


/* Public pages */
/* صفحات عمومی، فهرست دوره‌ها، مطالب و احراز هویت */
.page-hero { position: relative; overflow: hidden; padding: clamp(2.8rem, 6vw, 4.8rem) 0 2.6rem; background: linear-gradient(125deg, #172554, #4338ca 56%, #7c3aed); color: #fff; }
.page-hero::after { content: ''; position: absolute; inset: auto -6rem -13rem auto; width: 28rem; height: 28rem; border: 44px solid rgba(255,255,255,.08); border-radius: 50%; }
.page-hero-inner { position: relative; z-index: 1; max-width: 760px; }
.page-eyebrow { display: inline-flex; align-items: center; gap: .5rem; margin-bottom: .75rem; color: #fde68a; font-size: .78rem; font-weight: 800; }
.page-eyebrow::before { content: ''; width: 1.45rem; height: 2px; border-radius: 99px; background: currentColor; }
.page-title { margin: 0; color: #fff; font-size: clamp(2rem, 4.5vw, 3.35rem); font-weight: 900; line-height: 1.35; letter-spacing: -.05em; }
.page-lead { max-width: 690px; margin: .85rem 0 0; color: #e0e7ff; font-size: .98rem; line-height: 2; }
.page-breadcrumb { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1.25rem; color: #c7d2fe; font-size: .75rem; }
.page-breadcrumb a { color: #fef3c7; font-weight: 750; }
.page-section { padding: clamp(2.6rem, 6vw, 4.7rem) 0; }
.content-narrow { width: min(840px, calc(100% - 2rem)); margin-inline: auto; }
.content-wide { width: min(1180px, calc(100% - 2rem)); margin-inline: auto; }
.surface-card { border: 1px solid var(--rh-border); border-radius: 1.15rem; background: var(--rh-surface); box-shadow: var(--rh-shadow); }
.surface-card-inner { padding: clamp(1.2rem, 3vw, 2rem); }
.text-block { color: var(--rh-muted); font-size: .91rem; line-height: 2.05; }
.text-block > *:first-child { margin-top: 0; }
.text-block h2, .text-block h3 { color: var(--rh-ink); font-weight: 900; letter-spacing: -.025em; }
.text-block h2 { margin: 2rem 0 .65rem; font-size: 1.3rem; }
.text-block h3 { margin: 1.35rem 0 .45rem; font-size: 1.04rem; }
.text-block p { margin: .55rem 0 0; }
.text-block strong { color: var(--rh-ink); }
.info-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 1.25rem; }
.info-tile { padding: 1.2rem; border: 1px solid var(--rh-border); border-radius: 1rem; background: var(--rh-surface); }
.info-tile-icon { display: grid; place-items: center; width: 2.45rem; height: 2.45rem; margin-bottom: .75rem; border-radius: .75rem; color: var(--rh-primary); background: #e0e7ff; }
.dark .info-tile-icon { color: #c7d2fe; background: rgba(99,102,241,.22); }
.info-tile h2, .info-tile h3 { margin: 0; color: var(--rh-ink); font-size: .98rem; font-weight: 850; }
.info-tile p { margin: .42rem 0 0; color: var(--rh-muted); font-size: .79rem; line-height: 1.85; }
.about-mark { display: grid; place-items: center; width: 4.5rem; height: 4.5rem; margin: 0 auto 1.1rem; overflow: hidden; border-radius: 1.25rem; background: linear-gradient(135deg, #fef3c7, #e0e7ff); box-shadow: 0 12px 24px rgba(55,48,163,.17); }
.about-mark img { width: 3.8rem; height: 3.8rem; object-fit: contain; }
.about-intro { text-align: center; }
.about-intro .text-block { max-width: 700px; margin-inline: auto; }
.timeline { position: relative; display: grid; gap: 1rem; margin-top: 1.4rem; }
.timeline-item { display: grid; grid-template-columns: 2.25rem 1fr; gap: .9rem; align-items: start; }
.timeline-index { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: .7rem; color: #fff; background: var(--rh-primary); font-size: .75rem; font-weight: 900; }
.timeline-item h3 { margin: .18rem 0 0; }
.timeline-item p { margin-top: .25rem; }
.faq-list { display: grid; gap: .8rem; }
.faq-item { overflow: hidden; border: 1px solid var(--rh-border); border-radius: .95rem; background: var(--rh-surface); transition: border-color .2s ease, box-shadow .2s ease; }
.faq-item:has([x-show="open"]) { box-shadow: 0 5px 16px rgba(15,23,42,.035); }
.faq-item button { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.1rem 1.15rem; border: 0; color: var(--rh-ink); background: transparent; font-size: .91rem; font-weight: 850; text-align: right; cursor: pointer; }
.faq-plus { display: grid; flex: 0 0 auto; place-items: center; width: 1.8rem; height: 1.8rem; border-radius: .55rem; color: var(--rh-primary); background: #e0e7ff; font-size: 1.2rem; line-height: 1; }
.dark .faq-plus { color: #c7d2fe; background: rgba(99,102,241,.22); }
.faq-answer { padding: 0 1.15rem 1.2rem; color: var(--rh-muted); font-size: .86rem; line-height: 1.95; }
.contact-grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: 1.2rem; }
.contact-list { display: grid; gap: .7rem; }
.contact-method { display: flex; align-items: center; gap: .85rem; padding: .9rem; border: 1px solid var(--rh-border); border-radius: .9rem; color: var(--rh-ink); background: var(--rh-surface); }
.contact-method:hover { color: var(--rh-primary); border-color: #a5b4fc; }
.contact-method-icon { display: grid; flex: 0 0 auto; place-items: center; width: 2.45rem; height: 2.45rem; border-radius: .75rem; color: #b45309; background: #fef3c7; }
.contact-method span { display: block; color: var(--rh-muted); font-size: .69rem; font-weight: 650; }
.contact-method strong { display: block; margin-top: .12rem; color: var(--rh-ink); font-size: .84rem; }
.contact-method:hover strong { color: var(--rh-primary); }
.contact-note { margin-top: 1rem; padding: .9rem 1rem; border-radius: .8rem; color: #334155; background: #eef2ff; font-size: .78rem; line-height: 1.8; }
.dark .contact-note { color: #c7d2fe; background: rgba(99,102,241,.16); }
.form-panel h2 { margin: 0; color: var(--rh-ink); font-size: 1.15rem; font-weight: 900; }
.form-panel p { margin: .45rem 0 1.15rem; color: var(--rh-muted); font-size: .8rem; line-height: 1.8; }
.form-grid { display: grid; gap: .85rem; }
.form-label { display: grid; gap: .35rem; color: var(--rh-ink); font-size: .76rem; font-weight: 750; }
.form-input, .form-textarea { width: 100%; border: 1px solid var(--rh-border); border-radius: .75rem; color: var(--rh-ink); background: var(--rh-surface); outline: none; transition: border-color .2s ease, box-shadow .2s ease; }
.form-input { min-height: 2.85rem; padding: .65rem .8rem; }
.form-textarea { min-height: 7.25rem; padding: .75rem .8rem; resize: vertical; }
.form-input:focus, .form-textarea:focus { border-color: #818cf8; box-shadow: 0 0 0 3px rgba(99,102,241,.14); }
.form-help { margin: 0; color: var(--rh-muted); font-size: .72rem; line-height: 1.7; }
.rules-list { display: grid; gap: .8rem; margin: 0; padding: 0; list-style: none; counter-reset: rules; }
.rules-list li { position: relative; padding: 1.05rem 1.05rem 1.05rem 1.05rem; border: 1px solid var(--rh-border); border-radius: .9rem; background: var(--rh-surface); counter-increment: rules; }
.rules-list li::before { content: counter(rules, persian); display: inline-grid; place-items: center; width: 1.8rem; height: 1.8rem; margin-left: .5rem; border-radius: .55rem; color: var(--rh-primary); background: #e0e7ff; font-size: .72rem; font-weight: 900; }
.rules-list h2 { display: inline; margin: 0; font-size: 1rem; }
.rules-list p { margin: .6rem 0 0; color: var(--rh-muted); font-size: .84rem; line-height: 1.9; }

/* Catalog and course */
.catalog-toolbar { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 1.65rem; }
.catalog-toolbar p { margin: .55rem 0 0; color: var(--rh-muted); font-size: .86rem; }
.catalog-count { padding: .45rem .7rem; border-radius: 999px; color: var(--rh-primary); background: #e0e7ff; font-size: .72rem; font-weight: 850; }
.dark .catalog-count { color: #c7d2fe; background: rgba(99,102,241,.22); }
.catalog-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1.15rem; }
.catalog-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--rh-border); border-radius: 1.08rem; color: var(--rh-ink); background: var(--rh-surface); box-shadow: 0 5px 16px rgba(15,23,42,.035); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.catalog-card:hover { color: var(--rh-ink); border-color: #c7d2fe; box-shadow: var(--rh-shadow-hover); transform: translateY(-4px); }
.catalog-cover { position: relative; height: 166px; overflow: hidden; background: linear-gradient(130deg,#d9e7fb,#f6ded0 48%,#ddc8e8); }
.catalog-card:nth-child(3n+2) .catalog-cover { background: linear-gradient(130deg,#f5d9ad,#d99a79 48%,#6b5b95); }
.catalog-card:nth-child(3n+3) .catalog-cover { background: linear-gradient(130deg,#c8dbcf,#a9b8a0 48%,#e0b0a5); }
.catalog-cover img { width: 100%; height: 100%; object-fit: cover; }
.catalog-cover-mark { position: absolute; right: 1rem; bottom: .85rem; display: grid; place-items: center; width: 2.55rem; height: 2.55rem; border: 1px solid rgba(255,255,255,.7); border-radius: .75rem; color: #312e81; background: rgba(255,255,255,.8); font-size: .72rem; font-weight: 900; }
.catalog-body { display: flex; flex: 1; flex-direction: column; padding: 1.05rem; }
.catalog-tags { display: flex; flex-wrap: wrap; gap: .35rem; }
.catalog-tag { padding: .25rem .48rem; border-radius: 999px; font-size: .65rem; font-weight: 800; }
.catalog-tag.primary { color: #5b21b6; background: #ede9fe; }.catalog-tag.secondary { color: #047857; background: #d1fae5; }.catalog-tag.free { color: #b45309; background: #fef3c7; }
.dark .catalog-tag.primary { color:#ddd6fe;background:rgba(109,40,217,.28); }.dark .catalog-tag.secondary {color:#a7f3d0;background:rgba(5,150,105,.25);}.dark .catalog-tag.free{color:#fde68a;background:rgba(245,158,11,.18);}
.catalog-title { margin: .75rem 0 .38rem; color: var(--rh-ink); font-size: 1rem; font-weight: 850; line-height: 1.72; }.catalog-card:hover .catalog-title{color:var(--rh-primary);}
.catalog-description { display: -webkit-box; overflow: hidden; margin: 0; color: var(--rh-muted); font-size: .78rem; line-height: 1.85; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.catalog-bottom { display: flex; align-items: end; justify-content: space-between; gap: .5rem; margin-top: auto; padding-top: .95rem; }.catalog-meta{color:var(--rh-muted);font-size:.7rem;font-weight:700;}.catalog-price{color:var(--rh-primary);font-size:.76rem;font-weight:900;text-align:left;}
.catalog-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: .45rem; margin-top: 2rem; }.catalog-pagination a{display:grid;place-items:center;min-width:2.35rem;height:2.35rem;border:1px solid var(--rh-border);border-radius:.65rem;color:var(--rh-ink);background:var(--rh-surface);font-size:.78rem;font-weight:800;}.catalog-pagination a.is-current{color:#fff;border-color:var(--rh-primary);background:var(--rh-primary);}
.course-detail-grid { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(295px,.65fr); gap: 1.4rem; align-items: start; }.course-poster{position:relative;height:290px;overflow:hidden;border-radius:1.15rem;background:linear-gradient(135deg,#18234b,#5b21b6 52%,#d97706);}.course-poster::after{content:'';position:absolute;width:280px;height:280px;left:-65px;bottom:-160px;border:40px solid rgba(255,255,255,.13);border-radius:50%;}.course-poster img{width:100%;height:100%;object-fit:cover;}.course-poster-mark{position:absolute;z-index:1;right:1.3rem;bottom:1.15rem;display:grid;place-items:center;width:4rem;height:4rem;border:1px solid rgba(255,255,255,.4);border-radius:1.1rem;color:#fff;background:rgba(255,255,255,.16);font-size:1rem;font-weight:900;backdrop-filter:blur(7px);}.course-title-large{margin:1.1rem 0 .5rem;color:var(--rh-ink);font-size:clamp(1.65rem,3.2vw,2.25rem);font-weight:900;line-height:1.5;letter-spacing:-.045em;}.course-intro{margin:0;color:var(--rh-muted);font-size:.88rem;line-height:2;}.course-section-title{margin:1.7rem 0 .85rem;color:var(--rh-ink);font-size:1.15rem;font-weight:900;}.curriculum{display:grid;gap:.65rem;}.curriculum-item{overflow:hidden;border:1px solid var(--rh-border);border-radius:.85rem;background:var(--rh-surface);}.curriculum-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.7rem;padding:.92rem 1rem;border:0;color:var(--rh-ink);background:transparent;font-size:.86rem;font-weight:850;text-align:right;cursor:pointer;}.curriculum-lessons{display:grid;gap:.2rem;padding:0 .75rem .75rem;}.curriculum-lesson{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.7rem .5rem;border-top:1px solid var(--rh-border);color:var(--rh-ink);font-size:.78rem}.curriculum-lesson>span{flex:1;min-width:0;display:flex;align-items:center;gap:.4rem}.curriculum-lesson a{color:inherit;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.curriculum-lesson a:hover{color:var(--rh-primary)}.lesson-index{color:var(--rh-muted);font-size:.7rem;flex-shrink:0}.lesson-state{flex-shrink:0;padding:.2rem .42rem;border-radius:999px;color:#047857;background:#d1fae5;font-size:.62rem;font-weight:800;white-space:nowrap}.course-aside{position:sticky;top:90px;}.course-purchase{padding:1.25rem;}.course-purchase h2{margin:0;color:var(--rh-ink);font-size:1.05rem;font-weight:900;}.price-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.75rem 0;border-bottom:1px solid var(--rh-border);color:var(--rh-muted);font-size:.8rem;}.price-row strong{color:var(--rh-ink);font-size:.85rem;}.price-row.is-highlight strong{color:var(--rh-primary);}.course-choice{display:flex;align-items:center;gap:.6rem;margin-top:.55rem;padding:.75rem;border:1px solid var(--rh-border);border-radius:.75rem;color:var(--rh-ink);font-size:.78rem;cursor:pointer;}.course-choice:has(input:checked){border-color:#818cf8;background:#eef2ff;}.dark .course-choice:has(input:checked){background:rgba(99,102,241,.15);}.course-facts{display:grid;gap:.55rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--rh-border);}.course-fact{display:flex;justify-content:space-between;gap:.6rem;color:var(--rh-muted);font-size:.74rem;}.course-fact strong{color:var(--rh-ink);}

/* Auth */
.auth-page { min-height: calc(100vh - 76px); display: grid; place-items: center; padding: clamp(2rem,5vw,4.5rem) 1rem; background: radial-gradient(circle at 85% 10%, rgba(129,140,248,.18), transparent 26%), radial-gradient(circle at 12% 78%, rgba(245,158,11,.14), transparent 25%), var(--rh-paper); }.auth-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(340px,.62fr);width:min(1020px,100%);overflow:hidden;border:1px solid var(--rh-border);border-radius:1.4rem;background:var(--rh-surface);box-shadow:var(--rh-shadow);}.auth-aside{position:relative;min-height:560px;padding:clamp(1.7rem,4vw,3.2rem);overflow:hidden;color:#fff;background:linear-gradient(145deg,#172554,#4c1d95);}.auth-aside::after{content:'';position:absolute;width:350px;height:350px;left:-145px;bottom:-190px;border:45px solid rgba(255,255,255,.1);border-radius:50%;}.auth-aside > *{position:relative;z-index:1;}.auth-brand{display:inline-flex;align-items:center;gap:.6rem;color:#fff;font-weight:900;}.auth-brand img{width:2.5rem;height:2.5rem;padding:3px;border-radius:.75rem;background:rgba(255,255,255,.9);}.auth-aside h1{margin:3.25rem 0 .8rem;font-size:clamp(1.7rem,3.4vw,2.55rem);font-weight:900;line-height:1.55;letter-spacing:-.04em;}.auth-aside p{max-width:420px;margin:0;color:#dbeafe;font-size:.88rem;line-height:2;}.auth-benefits{display:grid;gap:.75rem;margin-top:2rem;color:#e0e7ff;font-size:.78rem;}.auth-benefits span{display:flex;align-items:center;gap:.45rem;}.auth-benefits i{display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;color:#312e81;background:#fde68a;font-style:normal;font-weight:900;}.auth-form-panel{padding:clamp(1.5rem,4vw,3rem);}.auth-form-head{margin-bottom:1.55rem;}.auth-form-head h2{margin:0;color:var(--rh-ink);font-size:1.4rem;font-weight:900;}.auth-form-head p{margin:.38rem 0 0;color:var(--rh-muted);font-size:.8rem;line-height:1.8;}.auth-form{display:grid;gap:1rem;}.auth-alert{padding:.8rem .9rem;border:1px solid #fecaca;border-radius:.75rem;color:#b91c1c;background:#fef2f2;font-size:.77rem;line-height:1.75;}.dark .auth-alert{border-color:rgba(220,38,38,.5);color:#fecaca;background:rgba(127,29,29,.25);}.auth-action{display:flex;width:100%;align-items:center;justify-content:center;gap:.55rem;min-height:3rem;border:0;border-radius:.82rem;color:#fff;background:var(--rh-primary);box-shadow:0 9px 20px rgba(55,48,163,.22);font-size:.88rem;font-weight:850;cursor:pointer;transition:transform .2s ease,background .2s ease;}.auth-action:hover{background:var(--rh-primary-strong);transform:translateY(-1px);}.auth-back{display:inline-flex;align-items:center;gap:.35rem;margin-top:1rem;border:0;color:var(--rh-primary);background:transparent;font-size:.76rem;font-weight:750;cursor:pointer;}.auth-footnote{margin-top:1.2rem;color:var(--rh-muted);font-size:.72rem;line-height:1.8;text-align:center;}.auth-footnote a{color:var(--rh-primary);font-weight:800;}

/* Blog */
.blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:1.25rem;align-items:start;}.article-list{display:grid;gap:.9rem;}.blog-search-form{display:flex;align-items:center;gap:.45rem;margin-bottom:.15rem}.blog-search-form .form-input{min-width:0;flex:1;min-height:2.7rem}.blog-search-submit{display:grid;place-items:center;flex:0 0 auto;width:2.7rem;height:2.7rem;border:1px solid #c7d2fe;border-radius:.72rem;color:#4338ca;background:#eef2ff;cursor:pointer;transition:background .16s,color .16s,transform .16s}.blog-search-submit:hover,.blog-search-submit:focus-visible{outline:0;color:#fff;background:#4f46e5;transform:translateY(-1px)}.blog-search-submit svg{width:1.2rem;height:1.2rem}.dark .blog-search-submit{border-color:rgba(129,140,248,.35);color:#c7d2fe;background:rgba(79,70,229,.22)}.article-card{display:grid;grid-template-columns:145px 1fr;gap:1rem;padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;color:var(--rh-ink);background:var(--rh-surface);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;}.article-card:hover{color:var(--rh-ink);border-color:#c7d2fe;box-shadow:var(--rh-shadow);transform:translateY(-2px);}.article-cover{display:grid;place-items:center;min-height:120px;border-radius:.8rem;color:#312e81;background:linear-gradient(135deg,#e0e7ff,#fde68a);font-size:.72rem;font-weight:900;}.article-card h2{margin:.1rem 0 .35rem;color:var(--rh-ink);font-size:1rem;font-weight:900;line-height:1.7;}.article-card p{display:-webkit-box;overflow:hidden;margin:0;color:var(--rh-muted);font-size:.78rem;line-height:1.85;-webkit-box-orient:vertical;-webkit-line-clamp:2;}.article-meta{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.65rem;color:var(--rh-muted);font-size:.69rem;}.blog-sidebar{position:sticky;top:90px;padding:1.1rem;}.blog-sidebar h2{margin:0 0 .8rem;color:var(--rh-ink);font-size:.95rem;font-weight:900;}.category-list{display:grid;gap:.25rem;}.category-list a{padding:.6rem .65rem;border-radius:.65rem;color:var(--rh-muted);font-size:.78rem;font-weight:700;}.category-list a:hover{color:var(--rh-primary);background:#eef2ff;}.dark .category-list a:hover{background:rgba(99,102,241,.16);}.article-reading{padding:clamp(1.2rem,3vw,2.2rem);}.article-reading h1{margin:0;color:var(--rh-ink);font-size:clamp(1.65rem,3.8vw,2.5rem);font-weight:900;line-height:1.55;letter-spacing:-.04em;}.article-reading .article-content{margin-top:1.5rem;color:var(--rh-muted);font-size:.93rem;line-height:2.1;}.article-reading .article-content h2,.article-reading .article-content h3{color:var(--rh-ink);font-weight:900;}.empty-state{padding:2.8rem 1rem;border:1px dashed #cbd5e1;border-radius:1rem;color:var(--rh-muted);text-align:center;}
@media(max-width:980px){.info-grid{grid-template-columns:1fr 1fr}.catalog-grid{grid-template-columns:1fr 1fr}.course-detail-grid,.auth-layout,.contact-grid,.blog-layout{grid-template-columns:1fr}.course-aside,.blog-sidebar{position:static}.auth-aside{min-height:300px}.auth-aside h1{margin-top:1.5rem}.article-card{grid-template-columns:125px 1fr}}
@media(max-width:640px){.content-narrow,.content-wide{width:min(100% - 1.25rem,1180px)}.blog-search-form{flex-wrap:wrap}.blog-search-form .form-input{flex-basis:calc(100% - 3.2rem)}.page-hero{padding-top:2.2rem}.info-grid,.catalog-grid{grid-template-columns:1fr}.catalog-toolbar{align-items:flex-start;flex-direction:column}.course-poster{height:225px}.auth-aside{min-height:245px;padding:1.5rem}.auth-aside h1{font-size:1.55rem}.article-card{grid-template-columns:1fr}.article-cover{min-height:95px}.contact-grid{gap:.9rem}}

/* Course Category Groups */
.course-category-group{margin-bottom:2rem}.course-category-title{margin:0 0 1rem;padding-bottom:.6rem;border-bottom:2px solid var(--rh-primary);color:var(--rh-primary);font-size:1.15rem;font-weight:900;letter-spacing:-.02em}.home .course-category-group+.course-category-group,.page-section .course-category-group+.course-category-group{margin-top:1.5rem}


/* رسانه‌های تکی در متن مقاله و جلسه: جدا از گالری، همیشه خوانا، وسط‌چین و واکنش‌گرا. */
.article-content>img,.article-content>p>img,.article-content>figure:not(.rh-carousel)>img,.lesson-rich-content>img,.lesson-rich-content>p>img,.lesson-rich-content>figure:not(.rh-carousel)>img{display:block;box-sizing:border-box;width:min(100%,54rem);max-width:100%;height:auto;margin:1.45rem auto 1.75rem;padding:.34rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface-alt);box-shadow:0 .65rem 1.5rem rgba(15,23,42,.06)}.article-content>figure:not(.rh-carousel),.lesson-rich-content>figure:not(.rh-carousel){max-width:100%;margin:1.45rem auto 1.75rem}.article-content>figure:not(.rh-carousel)>img,.lesson-rich-content>figure:not(.rh-carousel)>img{margin:0}.dark .article-content>img,.dark .article-content>p>img,.dark .article-content>figure:not(.rh-carousel)>img,.dark .lesson-rich-content>img,.dark .lesson-rich-content>p>img,.dark .lesson-rich-content>figure:not(.rh-carousel)>img{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.045);box-shadow:none}@media(max-width:600px){.article-content>img,.article-content>p>img,.article-content>figure:not(.rh-carousel)>img,.lesson-rich-content>img,.lesson-rich-content>p>img,.lesson-rich-content>figure:not(.rh-carousel)>img{margin:1.15rem auto 1.4rem;padding:.22rem;border-radius:.78rem}.article-content>figure:not(.rh-carousel),.lesson-rich-content>figure:not(.rh-carousel){margin:1.15rem auto 1.4rem}}


/* حفاظت نسبت طبیعی تصاویر محتوایی: تصاویر legacy ممکن است width/height یا ratio ذخیره‌شده داشته باشند. تصویر کوچک بزرگ نمی‌شود و تصویر عریض فقط تا عرض محتوا کوچک می‌شود.
   استثنا: رسانه‌های بلوکی (آیتم گالری، اسلاید کاروسل، figure ویدیو) قاب و crop خودشان را دارند
   و نباید با !important این قانون به حالت contain/width:auto برگردند. */
.article-content img:not(.rh-gallery-item img):not(.rh-carousel-slide img),.lesson-rich-content img:not(.rh-gallery-item img):not(.rh-carousel-slide img),.course-introduction-content img:not(.rh-gallery-item img):not(.rh-carousel-slide img){display:block;align-self:center;width:auto!important;max-width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important}
.rh-gallery-item img,.rh-carousel-slide img{object-fit:cover!important;object-position:center}
.rh-gallery-item img{aspect-ratio:4/3!important;width:100%!important;height:auto!important}
.rh-carousel-slide img{width:100%!important}

/* رسانهٔ ویدیویی متن: width کامل کانتنت، block و فاصلهٔ مستقل از پاراگراف بعدی. */
.article-content video,.article-content iframe,.article-content .rh-video-embed,.lesson-rich-content video,.lesson-rich-content iframe,.lesson-rich-content .rh-video-embed,.course-introduction-content video,.course-introduction-content iframe,.course-introduction-content .rh-video-embed{display:block;box-sizing:border-box;width:100%;max-width:100%;min-height:0;margin:1.65rem auto 2.15rem;border:0;border-radius:1rem;background:#0f172a;box-shadow:0 .8rem 1.8rem rgba(15,23,42,.14)}.article-content .rh-video-embed,.lesson-rich-content .rh-video-embed,.course-introduction-content .rh-video-embed{position:relative;overflow:hidden;aspect-ratio:16/9}.article-content .rh-video-embed iframe,.lesson-rich-content .rh-video-embed iframe,.course-introduction-content .rh-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;margin:0;border-radius:0}.gallery-courses-link{display:inline-flex!important;align-items:center;justify-content:center;min-width:max-content;white-space:nowrap;word-break:keep-all}.gallery-courses-link span{display:block;white-space:nowrap}@media(max-width:600px){.article-content video,.article-content iframe,.article-content .rh-video-embed,.lesson-rich-content video,.lesson-rich-content iframe,.lesson-rich-content .rh-video-embed,.course-introduction-content video,.course-introduction-content iframe,.course-introduction-content .rh-video-embed{margin:1.2rem auto 1.65rem;border-radius:.78rem}}


/* معرفی مستقل دوره، پس از سرفصل‌ها و پیش از پیش‌نمایش رایگان. */
.course-introduction-section{margin-top:2rem;padding-top:1.55rem;border-top:1px solid var(--rh-border)}.course-introduction-content{margin-top:.9rem;color:var(--rh-muted);font-size:.94rem;line-height:2.1}.course-introduction-content>*>:first-child{margin-top:0}.course-introduction-content h2,.course-introduction-content h3{color:var(--rh-ink)}.course-introduction-content p{margin:0 0 1rem}.course-introduction-content .rh-carousel{margin:1.5rem auto 1.9rem}.dark .course-introduction-section{border-color:rgba(255,255,255,.14)}


/* Dashboards */
/* داشبوردهای نقش‌محور */
.dashboard-page { width:min(1240px, calc(100% - 2rem)); margin-inline:auto; padding:2rem 0 4rem; }.dashboard-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;}.dashboard-eyebrow{margin:0 0 .32rem;color:var(--rh-primary);font-size:.71rem;font-weight:900;}.dashboard-title{margin:0;color:var(--rh-ink);font-size:clamp(1.5rem,3vw,2.1rem);font-weight:900;letter-spacing:-.04em;}.dashboard-subtitle{margin:.4rem 0 0;color:var(--rh-muted);font-size:.8rem;}.dashboard-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;}.dashboard-actions a,.dashboard-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.55rem .82rem;border:1px solid var(--rh-border);border-radius:.7rem;color:var(--rh-ink);background:var(--rh-surface);font-family:inherit;font-size:.75rem;font-weight:800;cursor:pointer;}.dashboard-actions a:hover,.dashboard-actions button:hover{color:var(--rh-primary);border-color:#a5b4fc;}.dashboard-actions .dashboard-primary{color:#fff;border-color:var(--rh-primary);background:var(--rh-primary);}.dashboard-actions .dashboard-primary:hover{color:#fff;background:var(--rh-primary-strong);}.dashboard-actions .dashboard-danger{color:#b91c1c;border-color:#fecaca;background:#fff7f7;}.dark .dashboard-actions .dashboard-danger{color:#fecaca;border-color:rgba(220,38,38,.45);background:rgba(127,29,29,.18);}
.dashboard-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin-bottom:1.25rem}.dashboard-stat-grid.is-three{grid-template-columns:repeat(3,1fr)}.dashboard-stat-grid.is-six{grid-template-columns:repeat(6,1fr)}.dashboard-stat{display:block;min-height:120px;padding:1.1rem;border:1px solid var(--rh-border);border-radius:1rem;color:var(--rh-ink);background:var(--rh-surface);box-shadow:0 5px 14px rgba(15,23,42,.03);}.dashboard-stat:hover{color:var(--rh-ink);border-color:#c7d2fe;box-shadow:var(--rh-shadow);}.dashboard-stat-label{display:block;color:var(--rh-muted);font-size:.74rem;font-weight:700;}.dashboard-stat-value{display:block;margin-top:.5rem;color:var(--rh-primary);font-size:1.75rem;font-weight:900;letter-spacing:-.04em;}.dashboard-stat-note{display:block;margin-top:.3rem;color:var(--rh-muted);font-size:.67rem;}.dashboard-stat.is-green .dashboard-stat-value{color:#047857}.dashboard-stat.is-amber .dashboard-stat-value{color:#b45309}.dashboard-stat.is-slate .dashboard-stat-value{color:#475569}.dashboard-stat.is-rose .dashboard-stat-value{color:#be123c}.dashboard-stat.is-violet .dashboard-stat-value{color:#6d28d9}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(315px,.65fr);gap:1rem;align-items:start;}.dash-section{border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 5px 14px rgba(15,23,42,.03);}.dash-section-inner{padding:1.1rem;}.dash-section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.9rem;}.dash-section-title{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:900;}.dash-section-link{color:var(--rh-primary);font-size:.72rem;font-weight:800;}.dash-empty{padding:1.7rem .8rem;color:var(--rh-muted);font-size:.8rem;text-align:center;}.dashboard-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}.dashboard-course-card{display:block;padding:1rem;border:1px solid var(--rh-border);border-radius:.85rem;color:var(--rh-ink);background:var(--rh-surface);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;}.dashboard-course-card:hover{color:var(--rh-ink);border-color:#a5b4fc;box-shadow:var(--rh-shadow);transform:translateY(-2px);}.dashboard-course-card h3{margin:0;color:var(--rh-ink);font-size:.87rem;font-weight:900;line-height:1.75;}.dashboard-course-card p{margin:.5rem 0 0;color:var(--rh-muted);font-size:.72rem;line-height:1.75;}.dash-pill{display:inline-flex;align-items:center;margin-top:.6rem;padding:.22rem .48rem;border-radius:999px;color:#047857;background:#d1fae5;font-size:.63rem;font-weight:850;}.dash-pill.is-indigo{color:#5b21b6;background:#ede9fe;}.dash-pill.is-amber{color:#b45309;background:#fef3c7;}.dash-pill.is-red{color:#b91c1c;background:#fee2e2;}.dark .dash-pill{color:#a7f3d0;background:rgba(5,150,105,.24)}.dark .dash-pill.is-indigo{color:#ddd6fe;background:rgba(109,40,217,.25)}.dark .dash-pill.is-amber{color:#fde68a;background:rgba(245,158,11,.16)}.dark .dash-pill.is-red{color:#fca5a5;background:rgba(220,38,38,.2)}
.dash-table-wrap{overflow-x:auto}.dash-table{width:100%;border-collapse:collapse;min-width:580px}.dash-table th{padding:.65rem .55rem;border-bottom:1px solid var(--rh-border);color:var(--rh-muted);font-size:.67rem;font-weight:800;text-align:right;white-space:nowrap}.dash-table td{padding:.75rem .55rem;border-bottom:1px solid var(--rh-border);color:var(--rh-ink);font-size:.75rem;vertical-align:middle}.dash-table tbody tr:last-child td{border-bottom:0}.dash-table tbody tr:hover td{background:rgba(99,102,241,.035)}.dash-table a{color:var(--rh-primary);font-weight:750}.dash-status{display:inline-flex;align-items:center;gap:.25rem;color:#047857;font-size:.67rem;font-weight:800}.dash-status.waiting{color:#b45309}.dash-submission-list{display:grid;gap:.7rem}.dash-submission{padding:.9rem;border:1px solid var(--rh-border);border-radius:.8rem}.dash-submission-top{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.dash-submission strong{color:var(--rh-ink);font-size:.8rem}.dash-submission-meta{color:var(--rh-muted);font-size:.69rem}.dash-submission-copy{margin:.55rem 0;color:var(--rh-muted);font-size:.75rem;line-height:1.8}/* ═══ Pagination — shared across admin pages ═══ */.pagination-nav{display:flex;flex-direction:column;align-items:center;gap:.55rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--rh-border)}.pagination-list{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.3rem;list-style:none;margin:0;padding:0}.pagination-link,.pagination-list span.pagination-link{display:inline-flex;align-items:center;justify-content:center;min-width:2.2rem;height:2.2rem;padding:.3rem .5rem;border:1px solid var(--rh-border);border-radius:.55rem;color:var(--rh-ink);background:var(--rh-surface);font-family:inherit;font-size:.72rem;font-weight:850;text-decoration:none;transition:all .15s ease}.pagination-link:hover{color:var(--rh-primary);border-color:#a5b4fc;background:#f0f0ff}.pagination-link.is-active,.pagination-list span.pagination-link.is-active{color:#fff;border-color:var(--rh-primary);background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 4px 12px rgba(79,70,229,.22)}.pagination-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:1.8rem;height:2.2rem;color:var(--rh-muted);font-size:.85rem}.pagination-info{color:var(--rh-muted);font-size:.68rem;font-weight:700}.dash-feedback{margin-top:.55rem;padding:.65rem .7rem;border-radius:.65rem;color:#065f46;background:#ecfdf5;font-size:.73rem;line-height:1.75}.dark .dash-feedback{color:#a7f3d0;background:rgba(5,150,105,.18)}.dash-response-form{display:grid;grid-template-columns:1fr auto;gap:.45rem;margin-top:.65rem}.dash-response-form input{min-width:0;min-height:2.4rem;padding:.45rem .6rem;border:1px solid var(--rh-border);border-radius:.65rem;color:var(--rh-ink);background:var(--rh-surface);font-family:inherit;font-size:.72rem}.dash-response-form button{min-height:2.4rem;padding:.45rem .75rem;border:0;border-radius:.65rem;color:#fff;background:var(--rh-primary);font-family:inherit;font-size:.72rem;font-weight:800;cursor:pointer}.admin-alert{margin-bottom:1rem;padding:1rem;border:1px solid #fde68a;border-radius:1rem;background:#fffbeb}.dark .admin-alert{border-color:rgba(245,158,11,.35);background:rgba(245,158,11,.1)}.admin-alert h2{margin:0 0 .7rem;color:#92400e;font-size:.92rem;font-weight:900}.dark .admin-alert h2{color:#fde68a}.admin-order{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.75rem;border-top:1px solid rgba(180,83,9,.18);color:var(--rh-ink);font-size:.76rem}.admin-order:first-of-type{border-top:0}.admin-order-meta{color:var(--rh-muted);font-size:.69rem}.admin-order button{min-height:2.25rem;padding:.4rem .7rem;border:0;border-radius:.6rem;color:#fff;background:#059669;font-family:inherit;font-size:.7rem;font-weight:800;cursor:pointer}.admin-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.admin-shortcut{padding:.85rem;border:1px solid var(--rh-border);border-radius:.75rem;color:var(--rh-ink);background:var(--rh-surface);font-size:.75rem;font-weight:850}.admin-shortcut:hover{color:var(--rh-primary);border-color:#a5b4fc;background:#f8faff}.dark .admin-shortcut:hover{background:rgba(99,102,241,.12)}
@media(max-width:1000px){.dashboard-stat-grid,.dashboard-stat-grid.is-six{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.dashboard-course-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.dashboard-page{width:min(100% - 1.25rem,1240px);padding-top:1.25rem}.dashboard-topbar{align-items:flex-start;flex-direction:column}.dashboard-stat-grid,.dashboard-stat-grid.is-three,.dashboard-stat-grid.is-six,.dashboard-course-grid{grid-template-columns:repeat(2,1fr)}.admin-shortcuts{grid-template-columns:1fr 1fr}.dash-response-form{grid-template-columns:1fr}.admin-order{align-items:flex-start;flex-direction:column}}@media(max-width:410px){.dashboard-stat-grid,.dashboard-course-grid,.admin-shortcuts{grid-template-columns:1fr}}


/* پاک‌سازی گروهی تمرین: action مخرب فقط در پنل جدا و با تایید صریح نمایش می‌یابد. */
.homework-bulk-cleanup{display:grid;gap:.85rem;margin:1rem 0 1.15rem;padding:1rem;border:1px solid rgba(190,24,93,.25);border-radius:1rem;background:linear-gradient(135deg,rgba(255,241,242,.88),rgba(255,255,255,.96))}.homework-bulk-cleanup h3{margin:0;color:#9f1239;font-size:.92rem}.homework-bulk-cleanup>div>p,.homework-bulk-cleanup-preview p{margin:.35rem 0 0;color:var(--rh-muted);font-size:.68rem;line-height:1.9}.homework-bulk-cleanup .profile-form-grid{align-items:end;margin:0}.homework-bulk-cleanup-preview{display:grid;gap:.5rem;padding:.8rem;border:1px solid rgba(190,24,93,.2);border-radius:.78rem;background:rgba(255,255,255,.72)}.homework-bulk-cleanup-preview strong{color:#9f1239;font-size:.78rem}.dark .homework-bulk-cleanup{border-color:rgba(251,113,133,.32);background:linear-gradient(135deg,rgba(76,5,25,.32),rgba(17,24,39,.72))}.dark .homework-bulk-cleanup h3,.dark .homework-bulk-cleanup-preview strong{color:#fecdd3}.dark .homework-bulk-cleanup-preview{border-color:rgba(251,113,133,.26);background:rgba(76,5,25,.2)}@media(max-width:680px){.homework-bulk-cleanup{padding:.82rem}.homework-bulk-cleanup .profile-form-actions{align-items:stretch;flex-direction:column}.homework-bulk-cleanup .profile-form-actions button{width:100%}}

/* مرکز نگهداشت و اجرای migration در هاست اشتراکی */
.maintenance-page{--maintenance-indigo:#4f46e5;--maintenance-safe:#047857;--maintenance-danger:#b91c1c}.maintenance-hero{align-items:flex-start}.maintenance-hero-actions{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;flex-wrap:wrap}.maintenance-state{display:inline-flex;align-items:center;gap:.38rem;padding:.5rem .75rem;border:1px solid;border-radius:999px;font-size:.7rem;font-weight:900;white-space:nowrap}.maintenance-state:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:currentColor}.maintenance-state.is-idle{border-color:#86efac;color:#047857;background:#ecfdf5}.maintenance-state.is-active{border-color:#fbbf24;color:#92400e;background:#fffbeb}.maintenance-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0}.maintenance-summary-card{display:grid;gap:.34rem;min-height:7.5rem;padding:1rem;border:1px solid var(--rh-border);border-radius:.9rem;background:var(--rh-surface);box-shadow:0 10px 22px rgba(15,23,42,.04)}.maintenance-summary-card>span,.maintenance-summary-card small{color:var(--rh-muted);font-size:.68rem;font-weight:750}.maintenance-summary-card strong{overflow-wrap:anywhere;color:var(--rh-ink);font-size:1rem;font-weight:950}.maintenance-summary-card:nth-child(2) strong{color:var(--maintenance-indigo);font-size:1.55rem}.maintenance-card{margin:1rem 0;padding:clamp(1rem,2vw,1.35rem);border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 12px 28px rgba(15,23,42,.04)}.maintenance-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.maintenance-card h2{margin:0;color:var(--rh-ink);font-size:1.04rem;font-weight:950}.maintenance-card header p:not(.section-kicker){max-width:68rem;margin:.38rem 0 0;color:var(--rh-muted);font-size:.76rem;line-height:1.9}.section-kicker{margin:0 0 .28rem;color:var(--maintenance-indigo);font-size:.63rem;font-weight:950;letter-spacing:.02em}.maintenance-alert{display:flex;align-items:center;gap:.9rem;margin:1rem 0;padding:1rem 1.1rem;border:1px solid;border-radius:.95rem}.maintenance-alert-mark{display:grid;place-items:center;flex:0 0 2.1rem;width:2.1rem;height:2.1rem;border-radius:.65rem;font-size:1.05rem;font-weight:950}.maintenance-alert strong{color:var(--rh-ink);font-size:.82rem}.maintenance-alert p{margin:.22rem 0 0;color:var(--rh-muted);font-size:.73rem;line-height:1.8}.maintenance-alert.is-warning{border-color:#fcd34d;background:#fffbeb}.maintenance-alert.is-warning .maintenance-alert-mark{color:#92400e;background:#fef3c7}.maintenance-alert.is-warning .legacy-form-action{margin-inline-start:auto;white-space:nowrap}.maintenance-alert.is-active{border-color:#fbbf24;background:#fffbeb}.maintenance-alert.is-active .maintenance-alert-mark{color:#92400e;background:#fef3c7}.maintenance-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.maintenance-check{display:flex;align-items:center;gap:.45rem;padding:.7rem .76rem;border:1px solid;border-radius:.65rem;font-size:.72rem;font-weight:800}.maintenance-check.is-ok{border-color:#86efac;color:#047857;background:#ecfdf5}.maintenance-check.is-fail{border-color:#fecaca;color:#b91c1c;background:#fff1f2}.maintenance-steps{display:grid;gap:.7rem;margin:0;padding:0;list-style:none;counter-reset:maintenance-step}.maintenance-steps li{position:relative;display:grid;gap:.18rem;padding-inline-start:3rem;min-height:2.6rem;color:var(--rh-muted);font-size:.73rem;line-height:1.8}.maintenance-steps li:before{counter-increment:maintenance-step;content:counter(maintenance-step);position:absolute;inset-inline-start:0;top:.05rem;display:grid;place-items:center;width:2rem;height:2rem;border:1px solid #c7d2fe;border-radius:50%;color:#4338ca;background:#eef2ff;font-size:.75rem;font-weight:950}.maintenance-steps strong{color:var(--rh-ink);font-size:.76rem}.maintenance-steps span{display:block}.maintenance-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;align-items:end}.maintenance-form label,.maintenance-confirm-label{display:grid;gap:.36rem;color:var(--rh-ink);font-size:.7rem;font-weight:850}.maintenance-form input,.maintenance-confirm-label input{width:100%;box-sizing:border-box;min-height:2.55rem;padding:.55rem .65rem;border:1px solid var(--rh-border);border-radius:.55rem;color:var(--rh-ink);background:var(--rh-surface-alt);font:700 .75rem/1.4 inherit}.maintenance-form input:focus,.maintenance-confirm-label input:focus{border-color:#818cf8;box-shadow:0 0 0 3px rgba(99,102,241,.15);outline:0}.maintenance-form code,.maintenance-confirm-label code{display:inline-block;max-width:100%;padding:.14rem .35rem;overflow-wrap:anywhere;border:1px solid #c7d2fe;border-radius:.3rem;color:#3730a3;background:#eef2ff;font:800 .67rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.maintenance-form-actions{display:flex;align-items:center;justify-content:flex-start;gap:.7rem;grid-column:1/-1}.maintenance-form-actions small{color:var(--rh-muted);font-size:.64rem;line-height:1.65}.maintenance-form button:disabled{cursor:not-allowed;opacity:.5}.maintenance-migration-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:.2rem 0 1rem;padding:0;list-style:none}.maintenance-migration-list li{padding:.52rem .62rem;overflow-wrap:anywhere;border:1px solid #c7d2fe;border-radius:.5rem;color:#3730a3;background:#eef2ff;font:700 .68rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.maintenance-empty{margin:.2rem 0 1rem;padding:.75rem;border:1px dashed var(--rh-border);border-radius:.6rem;color:var(--rh-muted);font-size:.74rem}.maintenance-restore-card{border-color:#fecaca}.maintenance-restore-notice{margin:.1rem 0 1rem;padding:.85rem 1rem;border-inline-start:4px solid #dc2626;border-radius:.55rem;background:#fff7f7;color:#7f1d1d;font-size:.72rem;line-height:1.85}.maintenance-restore-notice ol{margin:.45rem 0 0;padding-inline-start:1.1rem}.maintenance-snapshots{display:grid;gap:.7rem}.maintenance-snapshot{display:grid;grid-template-columns:minmax(0,1fr) minmax(15rem,.72fr);gap:1rem;align-items:start;padding:1rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface-alt)}.maintenance-snapshot>div{display:grid;gap:.28rem}.maintenance-snapshot strong{color:var(--rh-ink);font-size:.76rem}.maintenance-snapshot span,.maintenance-snapshot small{color:var(--rh-muted);font-size:.67rem;line-height:1.6}.maintenance-snapshot form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:end}.maintenance-snapshot form .maintenance-confirm-label{grid-column:1/-1}.maintenance-complete-card{border-color:#86efac}.dark .maintenance-state.is-idle,.dark .maintenance-check.is-ok{border-color:#166534;color:#bbf7d0;background:rgba(6,78,59,.38)}.dark .maintenance-state.is-active,.dark .maintenance-alert.is-warning,.dark .maintenance-alert.is-active{border-color:#a16207;color:#fde68a;background:rgba(120,53,15,.32)}.dark .maintenance-alert.is-warning .maintenance-alert-mark,.dark .maintenance-alert.is-active .maintenance-alert-mark{color:#fde68a;background:rgba(146,64,14,.5)}.dark .maintenance-check.is-fail{border-color:#991b1b;color:#fecaca;background:rgba(127,29,29,.38)}.dark .maintenance-steps li:before,.dark .maintenance-migration-list li,.dark .maintenance-form code,.dark .maintenance-confirm-label code{border-color:#4f46e5;color:#c7d2fe;background:rgba(49,46,129,.4)}.dark .maintenance-restore-card{border-color:#7f1d1d}.dark .maintenance-restore-notice{color:#fecaca;background:rgba(127,29,29,.3)}@media(max-width:760px){.maintenance-hero-actions{justify-content:flex-start}.maintenance-summary-grid,.maintenance-check-grid,.maintenance-form,.maintenance-migration-list,.maintenance-snapshot{grid-template-columns:1fr}.maintenance-alert{align-items:flex-start;flex-wrap:wrap}.maintenance-alert.is-warning .legacy-form-action{margin-inline-start:0}.maintenance-form-actions{grid-column:auto}.maintenance-snapshot form{grid-template-columns:1fr}.maintenance-snapshot form button{width:100%;justify-content:center}.maintenance-card{padding:1rem}.maintenance-steps li{padding-inline-start:2.65rem}}@media(max-width:400px){.maintenance-hero-actions,.maintenance-hero-actions>*{width:100%}.maintenance-hero-actions>*{justify-content:center}.maintenance-summary-card{min-height:0}.maintenance-alert{padding:.85rem}.maintenance-card h2{font-size:.95rem}}


/* Compatibility and feature styles */
/* سازگاری رابط‌های قدیمی و کنترل کنتراست دکمه‌ها */
a.bg-primary, button.bg-primary, input[type="submit"].bg-primary,
a.bg-gray-600, button.bg-gray-600,
a.bg-green-600, button.bg-green-600,
a.bg-red-600, button.bg-red-600,
a.bg-amber-600, button.bg-amber-600 {
    display:inline-flex; align-items:center; justify-content:center; min-height:2.6rem;
    border:1px solid transparent; border-radius:.72rem; padding:.58rem .95rem;
    color:#fff !important; font-family:inherit; font-weight:850; text-decoration:none;
    cursor:pointer; box-shadow:0 7px 16px rgba(15,23,42,.12); transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
a.bg-primary, button.bg-primary, input[type="submit"].bg-primary { background:var(--rh-primary) !important; }
a.bg-gray-600, button.bg-gray-600 { background:#334155 !important; }
a.bg-green-600, button.bg-green-600 { background:#059669 !important; }
a.bg-red-600, button.bg-red-600 { background:#dc2626 !important; }
a.bg-amber-600, button.bg-amber-600 { background:#d97706 !important; }
a.bg-primary:hover, button.bg-primary:hover, a.bg-gray-600:hover, button.bg-gray-600:hover, a.bg-green-600:hover, button.bg-green-600:hover, a.bg-red-600:hover, button.bg-red-600:hover, a.bg-amber-600:hover, button.bg-amber-600:hover { color:#fff !important; filter:brightness(.94); transform:translateY(-1px); box-shadow:0 10px 22px rgba(15,23,42,.18); }

/* دکمه‌های فرم‌های قدیمی بدون وابستگی به خروجی Tailwind */
.legacy-form-action { display:inline-flex; align-items:center; justify-content:center; min-height:2.7rem; border:1px solid var(--rh-primary); border-radius:.75rem; padding:.62rem 1rem; color:#fff; background:var(--rh-primary); font-family:inherit; font-size:.78rem; font-weight:850; cursor:pointer; }
.legacy-form-action:hover { color:#fff; background:var(--rh-primary-strong); }

/* کارت‌های گالری نمونه‌آثار */
.gallery-intro { display:flex; align-items:center; justify-content:space-between; gap:1.25rem; margin-bottom:1rem; }.student-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.student-art-card{overflow:hidden;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 7px 18px rgba(15,23,42,.04)}.student-art-placeholder{display:grid;place-items:center;min-height:190px;color:#fff;background:linear-gradient(135deg,#312e81 0%,#4f46e5 46%,#c026d3 125%);position:relative;overflow:hidden}.student-art-placeholder:before,.student-art-placeholder:after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.23);border-radius:50%}.student-art-placeholder:before{right:-74px;top:-86px}.student-art-placeholder:after{left:-96px;bottom:-118px}.student-art-placeholder span{position:relative;z-index:1;display:grid;place-items:center;width:3rem;height:3rem;border:1px solid rgba(255,255,255,.65);border-radius:1rem;color:#fff;background:rgba(255,255,255,.13);font-weight:900}.student-art-meta{padding:.85rem 1rem}.student-art-meta h2{margin:0;color:var(--rh-ink);font-size:.92rem;font-weight:900}.student-art-meta p{margin:.28rem 0 0;color:var(--rh-muted);font-size:.7rem}.dark .student-art-card{box-shadow:none}.dark .student-art-placeholder{background:linear-gradient(135deg,#1e1b4b 0%,#312e81 55%,#86198f 135%)}

/* نشان‌های متنی موقت دوره‌ها نباید به عنوان برند نمایش داده شوند. */
.course-art-artmark,.catalog-cover-mark,.course-poster-mark{font-size:0 !important}.course-art-artmark:after,.catalog-cover-mark:after,.course-poster-mark:after{content:"";display:block;width:1.25rem;height:1.25rem;border:2px solid currentColor;border-radius:50%;box-shadow:inset 0 0 0 3px rgba(99,102,241,.16)}

@media(max-width:980px){.nav-desktop{gap:.35rem}.nav-link{font-size:.7rem}.student-gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.gallery-intro{align-items:flex-start;flex-direction:column}.student-gallery-grid{grid-template-columns:1fr}.student-art-placeholder{min-height:160px}}

/* کنترل نمایش/پنهان‌سازی رمز */
.password-control{position:relative}.password-control .form-input{padding-left:3rem}.password-visibility{position:absolute;left:.45rem;top:50%;display:grid;place-items:center;width:2.2rem;height:2.2rem;border:0;border-radius:.62rem;color:var(--rh-muted);background:transparent;cursor:pointer;transform:translateY(-50%);transition:background .16s ease,color .16s ease}.password-visibility:hover,.password-visibility:focus-visible{color:var(--rh-primary);background:rgba(79,70,229,.09);outline:0}.password-visibility svg{width:1.18rem;height:1.18rem}.password-visibility .eye-closed{display:none}.password-visibility.is-visible .eye-open{display:none}.password-visibility.is-visible .eye-closed{display:block}.dark .password-visibility:hover,.dark .password-visibility:focus-visible{background:rgba(165,180,252,.14)}
.auth-lock-badge{display:grid;place-items:center;flex:0 0 auto;width:3rem;height:3rem;border:1px solid rgba(79,70,229,.18);border-radius:1rem;color:var(--rh-primary);background:linear-gradient(145deg,#eef2ff,#fff)}.auth-lock-badge svg{width:1.45rem;height:1.45rem}.auth-security-note{display:flex;align-items:flex-start;gap:.55rem;margin-top:1.15rem;padding:.75rem .85rem;border:1px solid var(--rh-border);border-radius:.8rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.74rem;line-height:1.75}.auth-security-note svg{flex:0 0 auto;width:1rem;height:1rem;margin-top:.14rem;color:#059669}.dark .auth-lock-badge{background:rgba(79,70,229,.13)}

/* پنل CMS داخلی */
.cms-page{padding:2rem 0 3.5rem}.cms-notice{display:flex;align-items:flex-start;gap:.75rem;margin:1.2rem 0;padding:1rem 1.1rem;border:1px solid #c7d2fe;border-radius:1rem;color:#3730a3;background:#eef2ff;font-size:.8rem;line-height:1.85}.cms-notice strong{white-space:nowrap}.cms-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cms-page-card{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;min-height:180px;padding:1.1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 8px 22px rgba(15,23,42,.045)}.cms-page-card-top{display:flex;align-items:center;justify-content:space-between;gap:.55rem;width:100%}.cms-template-chip{overflow:hidden;max-width:68%;padding:.28rem .46rem;border-radius:.45rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-family:ui-monospace,monospace;font-size:.61rem;text-overflow:ellipsis;white-space:nowrap;direction:ltr}.cms-status{padding:.28rem .46rem;border-radius:.45rem;color:#475569;background:#e2e8f0;font-size:.61rem;font-weight:800}.cms-status.is-live{color:#047857;background:#d1fae5}.cms-page-card h2{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:900}.cms-page-card p{margin:0 0 auto;color:var(--rh-muted);font-size:.7rem}.cms-page-card .legacy-form-action{min-height:2.25rem;font-size:.7rem}.cms-editor-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:1rem;align-items:start}.cms-editor-form,.cms-revisions,.cms-media-upload{padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 8px 22px rgba(15,23,42,.04)}.cms-tabs{display:flex;gap:.4rem;margin:1.1rem 0 .75rem;border-bottom:1px solid var(--rh-border)}.cms-tabs button{padding:.6rem .8rem;border:0;border-bottom:2px solid transparent;color:var(--rh-muted);background:transparent;font-family:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.cms-tabs button.is-active{border-color:var(--rh-primary);color:var(--rh-primary)}.cms-code-area{width:100%;min-height:540px;resize:vertical;padding:.9rem;border:1px solid #cbd5e1;border-radius:.8rem;color:#dbeafe;background:#0f172a;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.74rem;line-height:1.7;tab-size:2;direction:ltr}.cms-code-area.is-css{min-height:420px}.cms-code-area:focus{outline:2px solid rgba(79,70,229,.28);outline-offset:1px}.cms-editor-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.85rem}.cms-revisions h2{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:900}.cms-revisions>p{margin:.35rem 0 .85rem;color:var(--rh-muted);font-size:.72rem}.cms-revision{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 0;border-top:1px solid var(--rh-border)}.cms-revision strong{display:block;color:var(--rh-ink);font-size:.75rem}.cms-revision span{display:block;margin-top:.2rem;color:var(--rh-muted);font-size:.62rem}.cms-revision .button-soft{min-height:2rem;padding:.4rem .55rem;font-size:.64rem}.cms-reset-form{margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--rh-border)}.cms-danger-action{width:100%;min-height:2.45rem;border:1px solid #fecaca;border-radius:.7rem;color:#b91c1c;background:#fff1f2;font-family:inherit;font-size:.7rem;font-weight:850;cursor:pointer}.cms-danger-action:hover{background:#fee2e2}.cms-original-source{margin-top:1rem;padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface)}.cms-original-source pre{max-height:560px;overflow:auto;margin:0;padding:1rem;border-radius:.8rem;color:#cbd5e1;background:#0f172a;font-size:.72rem;line-height:1.7;direction:ltr;white-space:pre}.cms-media-upload-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr auto;align-items:end;gap:.8rem;padding:1rem}.cms-upload-action{padding-bottom:.05rem}.cms-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1rem}.cms-media-card{overflow:hidden;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface)}.cms-media-card img{display:block;width:100%;height:150px;object-fit:cover;background:var(--rh-surface-alt)}.cms-media-card>div{display:grid;gap:.36rem;padding:.75rem}.cms-media-card h2{overflow:hidden;margin:0;color:var(--rh-ink);font-size:.76rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap;direction:ltr}.cms-media-card p,.cms-media-card span{margin:0;color:var(--rh-muted);font-size:.63rem}.cms-media-card code{overflow:hidden;padding:.3rem;border-radius:.35rem;color:var(--rh-primary);background:var(--rh-surface-alt);font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}
.dark .cms-notice{border-color:rgba(129,140,248,.35);color:#c7d2fe;background:rgba(49,46,129,.32)}.dark .cms-page-card,.dark .cms-editor-form,.dark .cms-revisions,.dark .cms-media-upload,.dark .cms-original-source{box-shadow:none}.dark .cms-status{color:#cbd5e1;background:#334155}.dark .cms-danger-action{border-color:rgba(248,113,113,.4);color:#fecaca;background:rgba(127,29,29,.24)}
@media(max-width:1000px){.cms-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-editor-layout{grid-template-columns:1fr}.cms-media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cms-media-upload-grid{grid-template-columns:repeat(2,1fr)}.cms-upload-action{grid-column:span 2}}@media(max-width:640px){.cms-page{padding-top:1rem}.cms-page-grid,.cms-media-grid{grid-template-columns:1fr}.cms-media-upload-grid{grid-template-columns:1fr}.cms-upload-action{grid-column:auto}.cms-notice{flex-direction:column}.cms-notice strong{white-space:normal}.cms-code-area{min-height:420px;font-size:.66rem}}

/* پنل نویسندگان وبلاگ مستقل */
.writer-post-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:1rem 0}.writer-post-search{display:flex;align-items:center;min-width:min(100%,28rem);max-width:28rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface);overflow:hidden}.writer-post-search .form-input{min-width:0;min-height:2.55rem;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important}.writer-post-search__submit{display:grid;place-items:center;flex:0 0 auto;width:2.75rem;height:2.55rem;border:0;border-inline-start:1px solid var(--rh-border);color:#4338ca;background:#eef2ff;cursor:pointer}.writer-post-search__submit:hover,.writer-post-search__submit:focus-visible{outline:0;color:#fff;background:#4f46e5}.writer-post-search__submit svg{width:1.15rem;height:1.15rem}.writer-post-list{display:grid;gap:.8rem}.writer-post-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 7px 18px rgba(15,23,42,.035)}.writer-post-main{display:grid;grid-template-columns:auto 1fr;column-gap:.7rem;align-items:center}.writer-post-main h2{grid-column:2;margin:0;color:var(--rh-ink);font-size:.95rem;font-weight:900}.writer-post-main p{grid-column:2;margin:.25rem 0 0;color:var(--rh-muted);font-size:.68rem}.writer-post-main .cms-status{grid-row:span 2}.writer-post-actions{display:flex;flex-wrap:wrap;gap:.5rem}.writer-post-actions .button-soft,.writer-post-actions .button-secondary{min-height:2.15rem;padding:.45rem .7rem;font-size:.68rem}.writer-editor{display:grid;gap:1rem}.writer-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.writer-editor .cms-code-area{min-height:500px;background:#111827}.dark .writer-post-search{border-color:rgba(148,163,184,.26);background:#172033}.dark .writer-post-search__submit{border-color:rgba(148,163,184,.26);color:#c7d2fe;background:rgba(79,70,229,.22)}.dark .writer-post-row{box-shadow:none}@media(max-width:640px){.writer-post-list-toolbar{align-items:stretch;flex-direction:column}.writer-post-search{max-width:none;width:100%}.writer-post-row{align-items:flex-start;flex-direction:column}.writer-editor-grid{grid-template-columns:1fr}.writer-post-actions{width:100%}}

/* پروفایل کاربری: اطلاعات هویتی، تحصیلی و امنیت حساب */
.field-required{color:#dc2626;font-weight:900}.profile-hero{margin-bottom:1.35rem}.profile-layout{display:grid;grid-template-columns:minmax(225px,.7fr) minmax(0,2fr);gap:1.25rem;align-items:start}.profile-avatar-card,.profile-panel{border:1px solid var(--rh-border);border-radius:1.15rem;background:var(--rh-surface);box-shadow:0 12px 28px rgba(15,23,42,.055)}.profile-avatar-card{padding:1.4rem;text-align:center;display:grid;justify-items:center;gap:.55rem;position:sticky;top:1rem}.profile-avatar{width:8.5rem;height:8.5rem;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#dbeafe,#ddd6fe);border:5px solid var(--rh-surface);box-shadow:0 0 0 1px var(--rh-border),0 10px 24px rgba(15,23,42,.13);font-size:2.8rem;font-weight:900;color:#4338ca}.profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}.profile-avatar-card strong{color:var(--rh-ink);font-size:1rem}.profile-avatar-note,.profile-file-help{color:var(--rh-muted);font-size:.7rem;line-height:1.65}.profile-avatar-form{width:100%;display:grid;gap:.65rem;margin-top:.45rem}.profile-file-label{display:block;position:relative;overflow:hidden;border:1px dashed var(--rh-border);border-radius:.75rem;padding:.65rem;color:var(--rh-ink);font-size:.73rem;font-weight:800;cursor:pointer}.profile-file-label:hover{border-color:#6366f1;background:#eef2ff}.profile-file-label input{position:absolute;inset:0;opacity:0;cursor:pointer}.profile-avatar-form .legacy-form-action{width:100%;justify-content:center}.profile-panel{overflow:hidden}.profile-tabs{display:flex;gap:.25rem;padding:.65rem;border-bottom:1px solid var(--rh-border);background:color-mix(in srgb,var(--rh-surface) 85%,#e0e7ff)}.profile-tab{border:0;background:transparent;color:var(--rh-muted);border-radius:.6rem;padding:.65rem 1rem;font-family:inherit;font-weight:800;font-size:.78rem;cursor:pointer;transition:.18s}.profile-tab:hover{color:var(--rh-ink);background:rgba(99,102,241,.08)}.profile-tab.is-active{background:var(--rh-surface);color:#4338ca;box-shadow:0 2px 8px rgba(15,23,42,.08)}.profile-form{padding:1.5rem;display:grid;gap:1.15rem}.profile-form-heading h2{margin:0;color:var(--rh-ink);font-size:1.02rem;font-weight:900}.profile-form-heading p{margin:.38rem 0 0;color:var(--rh-muted);font-size:.72rem;line-height:1.75}.profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem}.profile-form .form-label{display:grid;gap:.38rem;color:var(--rh-ink);font-size:.75rem;font-weight:800}.profile-form .form-label small,.profile-password-stack small{font-weight:500;color:var(--rh-muted);font-size:.65rem;line-height:1.5}.profile-form .form-input{min-height:2.7rem;border-color:var(--rh-border);background:var(--rh-surface);color:var(--rh-ink);font-family:inherit}.profile-form .form-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.15)}.profile-form .is-readonly{opacity:.75;background:color-mix(in srgb,var(--rh-surface) 85%,#e2e8f0);cursor:not-allowed}.profile-form-actions{padding-top:.2rem;display:flex;justify-content:flex-start}.profile-password-stack{display:grid;gap:.85rem;max-width:37rem}.profile-password-stack .form-field{display:grid;gap:.35rem}.profile-password-stack .form-label{margin:0}.password-control{position:relative}.password-control>.form-input{padding-left:3.15rem!important;padding-right:.9rem}.password-visibility{position:absolute!important;inset-inline-start:.35rem;inset-inline-end:auto;top:50%;transform:translateY(-50%);z-index:2;width:2.35rem;height:2.35rem;display:grid;place-items:center;border:0!important;border-radius:.55rem;color:#475569;background:transparent!important;box-shadow:none!important}.password-visibility:hover{background:rgba(99,102,241,.1)!important;color:#4338ca}.password-visibility .eye-open,.password-visibility .eye-closed{font-size:1.1rem;line-height:1}.password-visibility .eye-closed{display:none}.password-visibility.is-visible .eye-open{display:none}.password-visibility.is-visible .eye-closed{display:block}.dark .profile-avatar-card,.dark .profile-panel{box-shadow:none}.dark .profile-tabs{background:rgba(15,23,42,.35)}.dark .profile-tab.is-active{background:#1e293b;color:#c4b5fd}.dark .profile-file-label:hover{background:rgba(99,102,241,.16)}@media(max-width:760px){.profile-layout{grid-template-columns:1fr}.profile-avatar-card{position:static}.profile-avatar{width:7rem;height:7rem}.profile-form-grid{grid-template-columns:1fr}.profile-form{padding:1rem}.profile-hero{align-items:flex-start;gap:1rem}.profile-hero .button-soft{width:100%;justify-content:center}}

/* دکمه‌های ثانویه: جلوگیری از متن یا دکمهٔ سفید روی پس‌زمینهٔ روشن */
.button-soft,.button-secondary,.cms-editor-actions>a:not(.legacy-form-action),.cms-page-card a:not(.legacy-form-action){display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.55rem .85rem;border:1px solid var(--rh-border);border-radius:.72rem;color:var(--rh-ink)!important;background:var(--rh-surface-alt);font-family:inherit;font-size:.74rem;font-weight:850;text-decoration:none;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.button-soft:hover,.button-secondary:hover,.cms-editor-actions>a:not(.legacy-form-action):hover,.cms-page-card a:not(.legacy-form-action):hover{border-color:rgba(79,70,229,.45);color:var(--rh-primary)!important;background:#eef2ff;transform:translateY(-1px)}.dark .button-soft,.dark .button-secondary,.dark .cms-editor-actions>a:not(.legacy-form-action),.dark .cms-page-card a:not(.legacy-form-action){border-color:#475569;color:#e2e8f0!important;background:#1e293b}.dark .button-soft:hover,.dark .button-secondary:hover,.dark .cms-editor-actions>a:not(.legacy-form-action):hover,.dark .cms-page-card a:not(.legacy-form-action):hover{color:#c4b5fd!important;background:#273449}

/* سبد خرید */
.cart-page{padding:2rem 0 3.5rem}.cart-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.cart-page-header h1{margin:.25rem 0 0;color:var(--rh-ink);font-size:1.55rem;font-weight:950}.cart-page-header p{margin:.45rem 0 0;max-width:42rem;color:var(--rh-muted);font-size:.78rem;line-height:1.8}.cart-empty-state{display:grid;justify-items:center;padding:3.2rem 1rem;border:1px dashed var(--rh-border);border-radius:1.15rem;background:var(--rh-surface-alt);text-align:center}.cart-empty-icon{display:grid;place-items:center;width:3.3rem;height:3.3rem;border-radius:1rem;color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);font-size:1.1rem;font-weight:900}.cart-empty-state h2{margin:1rem 0 .35rem;color:var(--rh-ink);font-size:1.08rem}.cart-empty-state p{margin:0 0 1.15rem;color:var(--rh-muted);font-size:.76rem}.cart-content-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(265px,.7fr);align-items:start;gap:1rem}.cart-items-list{display:grid;gap:.85rem}.cart-item,.cart-summary-card{border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 8px 22px rgba(15,23,42,.045)}.cart-item{padding:1rem}.cart-item-main{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem}.cart-item h2{margin:0;color:var(--rh-ink);font-size:.95rem;font-weight:900}.cart-item h2 a{color:inherit;text-decoration:none}.cart-item h2 a:hover{color:var(--rh-primary)}.cart-item-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.cart-tag{padding:.25rem .5rem;border-radius:99px;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.63rem;font-weight:750}.cart-tag.is-teacher{color:#1d4ed8;background:#dbeafe}.cart-tag.is-self{color:#047857;background:#d1fae5}.cart-price{display:grid;gap:.2rem;text-align:left;white-space:nowrap}.cart-price del{color:var(--rh-muted);font-size:.68rem}.cart-price strong{color:var(--rh-ink);font-size:.86rem}.cart-price strong.is-discounted{color:#047857}.cart-remove{display:grid;place-items:center;width:2.35rem;height:2.35rem;border:0;border-radius:.65rem;color:#dc2626;background:#fff1f2;font-family:inherit;font-size:1.15rem;cursor:pointer}.cart-remove:hover{background:#fee2e2}.cart-coupon-area{margin-top:.85rem;padding-top:.8rem;border-top:1px solid var(--rh-border)}.cart-coupon-form,.cart-coupon-applied{display:flex;align-items:center;gap:.55rem}.cart-coupon-form .form-input{min-height:2.25rem;flex:1;background:var(--rh-surface);color:var(--rh-ink);font-size:.72rem}.cart-coupon-form .button-soft{min-height:2.25rem}.cart-coupon-applied{justify-content:space-between;color:#047857;font-size:.7rem;font-weight:750}.cart-text-action{border:0;padding:0;color:#dc2626;background:transparent;font-family:inherit;font-size:.68rem;font-weight:850;cursor:pointer}.cart-summary-card{position:sticky;top:1rem;padding:1.1rem}.cart-summary-card h2{margin:0 0 .8rem;color:var(--rh-ink);font-size:.95rem}.cart-summary-lines{display:grid;gap:.7rem}.cart-summary-lines>div{display:flex;justify-content:space-between;gap:.65rem;color:var(--rh-muted);font-size:.73rem}.cart-summary-lines strong{color:var(--rh-ink)}.cart-summary-lines .is-saving,.cart-summary-lines .is-saving strong{color:#047857}.cart-summary-total{margin-top:.15rem;padding-top:.8rem;border-top:1px solid var(--rh-border);font-size:.84rem!important;font-weight:900}.cart-summary-total strong{color:var(--rh-primary)!important;font-size:.94rem}.cart-summary-card form{margin-top:1rem}.cart-summary-card .legacy-form-action{width:100%;justify-content:center}.cart-secure-note{margin:.75rem 0 0;color:var(--rh-muted);font-size:.65rem;text-align:center}.dark .cart-item,.dark .cart-summary-card{box-shadow:none}.dark .cart-tag.is-teacher{color:#bfdbfe;background:rgba(30,64,175,.32)}.dark .cart-tag.is-self,.dark .cart-summary-lines .is-saving,.dark .cart-summary-lines .is-saving strong,.dark .cart-price strong.is-discounted,.dark .cart-coupon-applied{color:#6ee7b7;background:rgba(6,78,59,.2)}.dark .cart-remove{color:#fca5a5;background:rgba(127,29,29,.33)}.dark .cart-remove:hover{background:rgba(127,29,29,.5)}

/* ناوبری موبایل و فلش عمل ورود */
.mobile-menu-trigger{border-color:transparent!important;background:transparent!important;box-shadow:none!important}.mobile-menu-trigger:hover,.mobile-menu-trigger:focus-visible{border-color:transparent!important;background:rgba(79,70,229,.09)!important;box-shadow:none!important}.mobile-nav-link{justify-content:flex-start!important}.auth-action svg{transform:rotate(180deg)}
@media(max-width:760px){.cart-page{padding-top:1rem}.cart-page-header{align-items:flex-start;flex-direction:column}.cart-page-header .button-soft{width:100%}.cart-content-grid{grid-template-columns:1fr}.cart-summary-card{position:static}.cart-item-main{grid-template-columns:1fr auto;gap:.7rem}.cart-remove{grid-column:2;grid-row:1}.cart-price{grid-column:1;text-align:right}.cart-coupon-form,.cart-coupon-applied{align-items:stretch;flex-direction:column}.cart-coupon-form .button-soft{width:100%}}

/* ویرایشگر بصری Quill برای وبلاگ */
.blog-editor-section{margin-top:.15rem;border:1px solid var(--rh-border);border-radius:1rem;overflow:hidden;background:var(--rh-surface)}.blog-editor-tabs{display:flex;gap:.25rem;padding:.6rem .75rem;border-bottom:1px solid var(--rh-border);background:var(--rh-surface-alt)}.blog-editor-tabs button{border:0;border-radius:.58rem;padding:.58rem .78rem;color:var(--rh-muted);background:transparent;font-family:inherit;font-size:.72rem;font-weight:850;cursor:pointer}.blog-editor-tabs button.is-active{color:var(--rh-primary);background:var(--rh-surface);box-shadow:0 2px 7px rgba(15,23,42,.08)}.blog-editor-pane{padding:1rem}.blog-editor-pane[hidden]{display:none!important}#blog-editor-toolbar.ql-toolbar.ql-snow{border:1px solid var(--rh-border);border-radius:.75rem .75rem 0 0;background:var(--rh-surface-alt);font-family:inherit}#blog-editor-toolbar .editor-emoji-button{display:inline-grid;place-items:center;width:1.8rem;height:1.7rem;padding:0;border:0;border-radius:.35rem;color:var(--rh-muted);background:transparent;font-size:1rem;cursor:pointer;vertical-align:middle}#blog-editor-toolbar .editor-emoji-button:hover{color:var(--rh-primary);background:rgba(79,70,229,.09)}.blog-rich-editor.ql-container.ql-snow{min-height:420px;border:1px solid var(--rh-border);border-top:0;border-radius:0 0 .75rem .75rem;background:var(--rh-surface);color:var(--rh-ink);font-family:inherit;font-size:.9rem}.blog-rich-editor .ql-editor{min-height:420px;line-height:2;text-align:right}.blog-rich-editor .ql-editor.ql-blank:before{right:.9rem;left:auto;color:var(--rh-muted);font-family:inherit;font-style:normal;content:'متن کامل مطلب آموزشی را بنویسید…'}.blog-rich-editor .ql-editor p,.blog-rich-editor .ql-editor li{margin-bottom:.45rem}.blog-rich-editor .ql-editor img{max-width:100%;height:auto;margin:1rem auto;border-radius:.75rem}.blog-editor-help{margin:.75rem 0 0;color:var(--rh-muted);font-size:.67rem;line-height:1.8}.blog-html-area{min-height:430px!important}.blog-editor-feedback{min-height:1.15rem;color:#047857;font-size:.7rem;font-weight:750}.blog-editor-feedback.is-error{color:#b91c1c}.dark .blog-editor-section{background:#0f172a}.dark .blog-editor-tabs,.dark #blog-editor-toolbar.ql-toolbar.ql-snow{background:#172033}.dark .blog-editor-tabs button.is-active{background:#1e293b;color:#c4b5fd}.dark .blog-rich-editor.ql-container.ql-snow{background:#0f172a;color:#e2e8f0}.dark #blog-editor-toolbar .ql-stroke{stroke:#cbd5e1}.dark #blog-editor-toolbar .ql-fill{fill:#cbd5e1}.dark #blog-editor-toolbar .ql-picker{color:#cbd5e1}.dark #blog-editor-toolbar .ql-picker-options{border-color:#475569;background:#1e293b}.dark #blog-editor-toolbar .ql-picker-item{color:#e2e8f0}.dark .blog-editor-feedback.is-error{color:#fca5a5}@media(max-width:640px){.blog-editor-pane{padding:.7rem}#blog-editor-toolbar.ql-toolbar.ql-snow{display:flex;flex-wrap:wrap;gap:.1rem}.blog-rich-editor.ql-container.ql-snow,.blog-rich-editor .ql-editor{min-height:330px}}


/* مدیریت دسترسی، تخصیص دوره و حذف امن کاربر */
.admin-user-layout,.admin-access-grid{display:grid;gap:1.25rem}.admin-access-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start}.admin-user-form,.admin-control-card{background:var(--rh-surface);border:1px solid var(--rh-border);border-radius:1.15rem;padding:1.35rem;box-shadow:0 12px 32px rgba(25,32,45,.06)}.admin-control-card header{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--rh-border);padding-bottom:.85rem;margin-bottom:1rem}.admin-control-card h2{margin:0;color:var(--rh-ink);font-size:1.08rem;font-weight:900}.admin-control-card header p,.access-role-help,.access-protected-note{margin:.35rem 0 0;color:var(--rh-muted);font-size:.84rem;line-height:1.8}.admin-avatar-summary{display:flex;align-items:center;gap:.8rem;border-radius:.85rem;background:var(--rh-surface-alt);padding:.75rem 1rem;margin:1rem 0}.admin-avatar-summary img,.admin-avatar-placeholder{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;object-fit:cover;background:var(--rh-primary);color:#fff;font-weight:900}.admin-avatar-summary p{margin:0;color:var(--rh-muted);font-size:.78rem}.admin-checkbox-row{display:flex;align-items:center;gap:.55rem;margin:.8rem 0;color:var(--rh-ink);font-size:.82rem;font-weight:800}.admin-meta-list{display:flex;flex-wrap:wrap;gap:.45rem 1rem;color:var(--rh-muted);font-size:.76rem;margin:1rem 0}.admin-assignment-form{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:.55rem;align-items:end}.admin-assignment-list{display:grid;gap:.6rem;margin-top:1rem}.admin-assignment-list article{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--rh-border);border-radius:.8rem;padding:.7rem .8rem}.admin-assignment-list strong,.admin-assignment-list span{display:block}.admin-assignment-list span:not(.status-chip){margin-top:.18rem;color:var(--rh-muted);font-size:.76rem}.assignment-actions{display:flex;align-items:center;gap:.5rem}.status-chip{display:inline-flex!important;align-items:center;border-radius:999px;padding:.24rem .55rem;font-size:.7rem!important;font-weight:850}.status-chip.is-success{background:#dcfce7;color:#166534}.status-chip.is-muted{background:#e5e7eb;color:#4b5563}.teacher-course-checklist,.permission-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.55rem;max-height:23rem;overflow:auto;padding:.25rem}.teacher-course-checklist label,.permission-checklist label{display:flex;align-items:center;gap:.55rem;padding:.65rem .7rem;border:1px solid var(--rh-border);border-radius:.7rem;color:var(--rh-ink);font-size:.82rem}.teacher-course-checklist small{margin-inline-start:auto;color:var(--rh-muted)}.teacher-course-picker .legacy-form-action{margin-top:1rem}.permission-checklist label span,.permission-badges span{direction:ltr;text-align:left}.permission-badges{display:flex;flex-wrap:wrap;gap:.35rem}.permission-badges span{padding:.28rem .42rem;border-radius:.45rem;color:var(--rh-ink);background:var(--rh-surface-alt);font-size:.72rem}.danger-zone{border-color:rgba(220,38,38,.32);background:linear-gradient(135deg,rgba(254,242,242,.72),var(--rh-surface))}.danger-confirm-form{display:flex;align-items:end;gap:.75rem}.danger-confirm-form .form-label{flex:1}.button-danger,.button-danger-soft{display:inline-flex;align-items:center;justify-content:center;border-radius:.65rem;font-weight:850;cursor:pointer}.button-danger{border:1px solid #b91c1c;background:#b91c1c;color:#fff;padding:.62rem .9rem}.button-danger:hover{background:#991b1b;color:#fff}.button-danger-soft{border:1px solid #fecdd3;background:#fff1f2;color:#be123c;padding:.5rem .7rem;font-size:.75rem}.button-danger-soft:hover{background:#ffe4e6}.empty-inline{margin:0;color:var(--rh-muted);font-size:.85rem}.admin-orders-page .bg-amber-500,.admin-orders .bg-amber-500,.admin-pending-page .bg-amber-500,a.bg-amber-500{background:#d97706!important;color:#fff!important;border-color:#b45309!important}.admin-orders-page .bg-amber-500:hover,.admin-orders .bg-amber-500:hover,.admin-pending-page .bg-amber-500:hover,a.bg-amber-500:hover{background:#b45309!important;color:#fff!important}

/* تقویم شمسی، حذف آواتار و آیکون استاندارد چشم رمز */
.profile-avatar-remove{margin-top:.5rem}.jalali-date-input{cursor:pointer;background-image:linear-gradient(135deg,rgba(59,130,246,.06),transparent)}.password-control .form-input{padding-inline-end:3rem!important;padding-inline-start:.9rem!important}.password-visibility{appearance:none!important;-webkit-appearance:none!important;position:absolute!important;right:.55rem!important;left:auto!important;inset-inline-end:auto!important;inset-inline-start:auto!important;top:50%!important;transform:translateY(-50%)!important;display:grid!important;place-items:center!important;width:2.15rem!important;height:2.15rem!important;padding:0!important;border:0!important;border-radius:.55rem!important;background:transparent!important;color:var(--rh-muted)!important;box-shadow:none!important;cursor:pointer!important}.password-visibility:hover,.password-visibility:focus-visible{background:var(--rh-surface-alt)!important;color:var(--rh-primary)!important;outline:0!important}.password-visibility svg{width:1.18rem;height:1.18rem;pointer-events:none}.pdp{z-index:1000!important;border:1px solid var(--rh-border)!important;border-radius:.9rem!important;box-shadow:0 18px 48px rgba(15,23,42,.18)!important;font-family:inherit!important}.pdp .drow,.pdp .drow:hover{border-radius:.4rem}.pdp .drow:hover{background:var(--rh-primary)!important;color:#fff!important}

@media(max-width:760px){.admin-assignment-form{grid-template-columns:1fr}.admin-assignment-list article,.danger-confirm-form{align-items:stretch;flex-direction:column}.assignment-actions{justify-content:space-between}.admin-control-card{padding:1rem}.admin-access-grid{grid-template-columns:1fr}.teacher-course-checklist,.permission-checklist{grid-template-columns:1fr}.dashboard-hero-actions{flex-wrap:wrap}}
.dark .admin-user-form,.dark .admin-control-card,.dark .pdp{background:var(--rh-surface)!important;border-color:rgba(255,255,255,.14)!important}.dark .admin-avatar-summary,.dark .teacher-course-checklist label,.dark .permission-checklist label,.dark .admin-assignment-list article{background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.12)!important}.dark .button-danger-soft{background:rgba(190,24,93,.18);color:#fecdd3;border-color:rgba(251,113,133,.4)}.dark .status-chip.is-muted{background:rgba(148,163,184,.22);color:#e2e8f0}


/* ویرایشگر وبلاگ: تیترهای کامل، اندازهٔ صریح و انتخابگر ایموجی */
#blog-editor-toolbar{display:flex;flex-wrap:wrap;gap:.15rem;padding:.55rem!important;background:var(--rh-surface-alt);border-color:var(--rh-border)!important;border-radius:.8rem .8rem 0 0;direction:rtl}#blog-editor-toolbar .ql-formats{margin-inline-end:.25rem!important}.ql-snow .ql-picker.ql-header{width:8.1rem}.ql-snow .ql-picker.ql-size{width:5.25rem}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:'متن عادی'}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:'تیتر ۱'}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:'تیتر ۲'}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:'تیتر ۳'}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:'تیتر ۴'}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:'تیتر ۵'}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:'تیتر ۶'}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:'اندازه'}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="12px"]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="12px"]:before{content:'۱۲px'}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="14px"]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="14px"]:before{content:'۱۴px'}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="16px"]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="16px"]:before{content:'۱۶px'}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="18px"]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="18px"]:before{content:'۱۸px'}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="20px"]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="20px"]:before{content:'۲۰px'}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="24px"]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="24px"]:before{content:'۲۴px'}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="28px"]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="28px"]:before{content:'۲۸px'}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="32px"]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="32px"]:before{content:'۳۲px'}.blog-rich-editor .ql-size-12px{font-size:12px}.blog-rich-editor .ql-size-14px{font-size:14px}.blog-rich-editor .ql-size-16px{font-size:16px}.blog-rich-editor .ql-size-18px{font-size:18px}.blog-rich-editor .ql-size-20px{font-size:20px}.blog-rich-editor .ql-size-24px{font-size:24px}.blog-rich-editor .ql-size-28px{font-size:28px}.blog-rich-editor .ql-size-32px{font-size:32px}.blog-rich-editor h5{font-size:1.05rem}.blog-rich-editor h6{font-size:.95rem}.editor-emoji-button{display:inline-grid!important;place-items:center!important;font-size:1.08rem!important}.emoji-modal[hidden]{display:none!important}.emoji-modal{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:1rem}.emoji-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.56);backdrop-filter:blur(3px)}.emoji-modal-card{position:relative;width:min(34rem,100%);max-height:min(42rem,calc(100vh - 2rem));overflow:auto;padding:1.25rem;border:1px solid var(--rh-border);border-radius:1.15rem;background:var(--rh-surface);box-shadow:0 28px 75px rgba(2,6,23,.32)}.emoji-modal-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.emoji-modal-card h2{margin:.12rem 0 0;color:var(--rh-ink);font-size:1.12rem;font-weight:900}.emoji-modal-card>p{margin:.55rem 0 1rem;color:var(--rh-muted);font-size:.8rem}.emoji-modal-close{display:grid;place-items:center;width:2.1rem;height:2.1rem;border:0;border-radius:.65rem;background:var(--rh-surface-alt);color:var(--rh-ink);font:inherit;font-size:1.45rem;cursor:pointer}.emoji-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.48rem}.emoji-grid button{display:grid;place-items:center;min-height:2.7rem;border:1px solid var(--rh-border);border-radius:.65rem;background:var(--rh-surface);font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:1.35rem;line-height:1;cursor:pointer;transition:transform .16s ease,background .16s ease,border-color .16s ease}.emoji-grid button:hover,.emoji-grid button:focus-visible{border-color:var(--rh-primary);background:rgba(79,70,229,.09);transform:translateY(-2px);outline:0}.emoji-modal-open{overflow:hidden}.dark .emoji-modal-card{background:var(--rh-surface);border-color:rgba(255,255,255,.14)}.dark .emoji-grid button{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.04)}
@media(max-width:520px){#blog-editor-toolbar .ql-formats{margin-inline-end:0!important}.ql-snow .ql-picker.ql-header{width:6.7rem}.ql-snow .ql-picker.ql-size{width:4.8rem}.emoji-modal-card{padding:1rem}.emoji-grid{gap:.35rem}.emoji-grid button{min-height:2.45rem;font-size:1.2rem}}


/* انتخاب روش پرداخت: هماهنگ با کارت‌ها، داشبورد و حالت تیره */
.payment-method-page{padding:2rem 0 3.5rem}.payment-method-hero{margin-bottom:1.25rem}.payment-method-layout{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1.45fr);align-items:start;gap:1rem}.payment-order-summary,.payment-method-card,.payment-gateway-notice{border:1px solid var(--rh-border);border-radius:1.1rem;background:var(--rh-surface);box-shadow:0 12px 30px rgba(15,23,42,.055)}.payment-order-summary{position:sticky;top:1rem;padding:1.15rem}.payment-summary-head{display:flex;align-items:center;gap:.7rem;padding-bottom:.95rem;border-bottom:1px solid var(--rh-border)}.payment-summary-icon,.payment-method-icon{display:grid;place-items:center;flex:0 0 auto;width:2.65rem;height:2.65rem;border-radius:.85rem;color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);font-size:1.25rem;font-weight:900}.payment-summary-head h2,.payment-method-card h2{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:950}.payment-summary-head p,.payment-method-card p{margin:.25rem 0 0;color:var(--rh-muted);font-size:.7rem;line-height:1.75}.payment-summary-items{display:grid;gap:.1rem;padding:.72rem 0}.payment-summary-items article{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;padding:.65rem 0;border-bottom:1px dashed var(--rh-border)}.payment-summary-items article:last-child{border-bottom:0}.payment-summary-items strong,.payment-summary-items span{display:block}.payment-summary-items strong{color:var(--rh-ink);font-size:.76rem;font-weight:850}.payment-summary-items span{margin-top:.22rem;color:var(--rh-muted);font-size:.63rem}.payment-summary-items b{flex:0 0 auto;color:var(--rh-ink);font-size:.72rem;white-space:nowrap}.payment-summary-total{display:flex;align-items:end;justify-content:space-between;gap:.5rem;padding-top:.95rem;border-top:1px solid var(--rh-border);color:var(--rh-muted);font-size:.75rem}.payment-summary-total strong{color:var(--rh-primary);font-size:1.18rem;font-weight:950}.payment-summary-total small{font-size:.65rem}.payment-security-note{margin:.9rem 0 0;padding:.65rem .7rem;border-radius:.7rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.63rem;line-height:1.75}.payment-methods-stack{display:grid;gap:1rem}.payment-method-card{display:grid;gap:1rem;padding:1.15rem}.payment-method-card-head{display:flex;align-items:flex-start;gap:.75rem}.payment-method-icon.is-online{background:linear-gradient(135deg,#059669,#14b8a6)}.payment-method-icon.is-manual{background:linear-gradient(135deg,#d97706,#f59e0b)}.payment-method-badge{display:inline-flex;margin-bottom:.3rem;padding:.18rem .45rem;border-radius:99px;color:#047857;background:#d1fae5;font-size:.58rem;font-weight:900}.payment-method-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding-top:.9rem;border-top:1px solid var(--rh-border);color:var(--rh-muted);font-size:.67rem}.payment-method-card-footer .legacy-form-action{min-width:13.5rem;justify-content:center}.payment-gateway-notice{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem 1rem;border-color:#fde68a;color:#92400e;background:#fffbeb;box-shadow:none}.payment-gateway-notice>span{display:grid;place-items:center;flex:0 0 auto;width:1.4rem;height:1.4rem;border-radius:50%;color:#fff;background:#d97706;font-size:.75rem;font-weight:900}.payment-gateway-notice strong{display:block;font-size:.76rem}.payment-gateway-notice p{margin:.18rem 0 0;font-size:.67rem;line-height:1.75}.payment-bank-card{padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.2);border-radius:1rem;color:#fff;background:linear-gradient(135deg,#172554,#4338ca 55%,#7c3aed);box-shadow:0 14px 26px rgba(49,46,129,.2)}.payment-bank-card-top,.payment-bank-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:.7rem;font-size:.66rem}.payment-bank-card-top{color:#c7d2fe}.payment-bank-card strong{display:block;margin:1.1rem 0 1.3rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.1rem;letter-spacing:.08em;direction:ltr}.payment-bank-card-bottom{color:#eef2ff}.payment-copy-button{border:1px solid rgba(255,255,255,.28);border-radius:.5rem;padding:.35rem .55rem;color:#fff;background:rgba(255,255,255,.12);font-family:inherit;font-size:.62rem;font-weight:850;cursor:pointer}.payment-copy-button:hover,.payment-copy-button:focus-visible{background:rgba(255,255,255,.23);outline:0}.payment-copy-status{min-height:1.1rem;margin:-.65rem 0 0;color:#047857;font-size:.65rem;font-weight:750}.payment-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.72fr);gap:.85rem;align-items:stretch}.payment-method-card .form-label{display:grid;gap:.38rem;color:var(--rh-ink);font-size:.74rem;font-weight:850}.payment-method-card textarea.form-input{min-height:8.35rem;resize:vertical;background:var(--rh-surface);color:var(--rh-ink);font-family:inherit;line-height:1.8}.payment-method-card .form-label small{color:var(--rh-muted);font-size:.62rem;font-weight:500}.payment-receipt-dropzone{display:grid;place-items:center;align-content:center;gap:.38rem;min-height:100%;padding:1rem;border:1px dashed #a5b4fc;border-radius:.9rem;color:var(--rh-ink);background:linear-gradient(145deg,#eef2ff,var(--rh-surface));text-align:center;cursor:pointer;transition:border-color .16s ease,background .16s ease}.payment-receipt-dropzone:hover{border-color:var(--rh-primary);background:#e0e7ff}.payment-receipt-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.payment-receipt-icon{display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:.7rem;color:#fff;background:var(--rh-primary);font-size:1.15rem;font-weight:900}.payment-receipt-dropzone strong{font-size:.72rem}.payment-receipt-dropzone small,.payment-receipt-dropzone em{color:var(--rh-muted);font-size:.61rem;font-style:normal;line-height:1.65}.payment-receipt-dropzone em{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dark .payment-order-summary,.dark .payment-method-card{box-shadow:none}.dark .payment-gateway-notice{border-color:rgba(251,191,36,.3);color:#fde68a;background:rgba(120,53,15,.24)}.dark .payment-receipt-dropzone{border-color:rgba(165,180,252,.38);color:#e2e8f0;background:rgba(79,70,229,.12)}.dark .payment-receipt-dropzone:hover{background:rgba(79,70,229,.2)}.dark .payment-method-card textarea.form-input{background:#0f172a;color:#e2e8f0}
@media(max-width:820px){.payment-method-layout{grid-template-columns:1fr}.payment-order-summary{position:static}.payment-form-grid{grid-template-columns:1fr}}@media(max-width:520px){.payment-method-page{padding-top:1rem}.payment-method-hero .button-soft{width:100%}.payment-method-card,.payment-order-summary{padding:1rem}.payment-method-card-footer{align-items:stretch;flex-direction:column}.payment-method-card-footer .legacy-form-action{width:100%;min-width:0}.payment-bank-card strong{font-size:.92rem;letter-spacing:.04em}.payment-bank-card-bottom{align-items:flex-start;flex-direction:column}}

/* Quill در RTL: برای متن label فضای مستقل می‌گیرد و آیکون انتخاب در سمت مخالف قرار می‌گیرد. */
#blog-editor-toolbar .ql-picker-label{display:flex!important;align-items:center!important;padding-inline-start:.48rem!important;padding-inline-end:1.55rem!important;direction:rtl}#blog-editor-toolbar .ql-picker-label svg{right:auto!important;left:.38rem!important;margin-top:-9px!important}#blog-editor-toolbar .ql-picker-options{direction:rtl;text-align:right}#blog-editor-toolbar .ql-picker-item{padding-inline-start:.48rem!important;padding-inline-end:.48rem!important}


/* تنظیمات پرداخت مدیر ارشد */
.payment-settings-form{display:grid;gap:1.2rem}.payment-settings-form>section{padding-bottom:1.15rem;border-bottom:1px solid var(--rh-border)}.payment-settings-form>section:last-of-type{padding-bottom:0;border-bottom:0}.payment-settings-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.payment-settings-choice{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem;border:1px solid var(--rh-border);border-radius:.85rem;color:var(--rh-ink);background:var(--rh-surface-alt);cursor:pointer}.payment-settings-choice:hover{border-color:rgba(79,70,229,.45);background:#eef2ff}.payment-settings-choice input{margin-top:.18rem;accent-color:var(--rh-primary)}.payment-settings-choice strong,.payment-settings-choice small{display:block}.payment-settings-choice strong{font-size:.79rem}.payment-settings-choice small{margin-top:.22rem;color:var(--rh-muted);font-size:.65rem;line-height:1.65}.payment-settings-gateway{padding:1rem!important;border:1px solid rgba(79,70,229,.2)!important;border-radius:.9rem!important;background:linear-gradient(145deg,rgba(238,242,255,.7),var(--rh-surface))}.dark .payment-settings-choice{background:rgba(255,255,255,.04)}.dark .payment-settings-choice:hover{background:rgba(79,70,229,.16)}.dark .payment-settings-gateway{background:rgba(79,70,229,.1)}@media(max-width:640px){.payment-settings-choice-grid{grid-template-columns:1fr}}


/* بررسی مالی رسیدهای کارت‌به‌کارت */
.pending-payment-list{display:grid;gap:1rem}.pending-payment-card{overflow:hidden;border:1px solid var(--rh-border);border-right:4px solid #f59e0b;border-radius:1rem;background:var(--rh-surface);box-shadow:0 10px 26px rgba(15,23,42,.045)}.pending-payment-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border-bottom:1px solid var(--rh-border)}.pending-customer{display:flex;align-items:center;gap:.7rem}.pending-avatar{display:grid;place-items:center;width:2.65rem;height:2.65rem;border-radius:.85rem;color:#92400e;background:#fef3c7;font-size:1rem;font-weight:950}.pending-customer h2{margin:0;color:var(--rh-ink);font-size:.92rem;font-weight:900}.pending-customer p{margin:.22rem 0 0;color:var(--rh-muted);font-size:.66rem}.pending-amount{text-align:left}.pending-amount strong,.pending-amount span{display:block}.pending-amount strong{color:#b45309;font-size:1rem;font-weight:950}.pending-amount small{font-size:.62rem}.pending-amount span{margin-top:.2rem;color:var(--rh-muted);font-size:.62rem}.pending-payment-body{display:grid;grid-template-columns:1fr 1fr auto;gap:.75rem;padding:1rem 1.1rem}.pending-payment-body>div{min-width:0;padding:.7rem;border-radius:.7rem;background:var(--rh-surface-alt)}.pending-payment-body p{margin:.3rem 0 0;color:var(--rh-ink);font-size:.71rem;line-height:1.8;word-break:break-word}.pending-label{display:block;color:var(--rh-muted);font-size:.59rem;font-weight:850}.pending-receipt{display:grid;align-content:start;gap:.4rem;min-width:10rem}.pending-receipt .button-soft{min-height:2.15rem;padding:.42rem .6rem;font-size:.65rem}.pending-payment-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;padding:0 1.1rem 1rem}.pending-payment-actions form{margin:0}.pending-reject-form{display:flex;align-items:center;gap:.45rem}.pending-reject-form .form-input{width:14rem;min-height:2.3rem;color:var(--rh-ink);background:var(--rh-surface);font-size:.66rem}.payment-empty-state{display:grid;justify-items:center;padding:3.4rem 1rem;border:1px dashed var(--rh-border);border-radius:1rem;background:var(--rh-surface-alt);text-align:center}.payment-empty-state>span{display:grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:.8rem;color:#fff;background:#059669;font-weight:950}.payment-empty-state h2{margin:1rem 0 .3rem;color:var(--rh-ink);font-size:1rem}.payment-empty-state p{margin:0;color:var(--rh-muted);font-size:.72rem}.dark .pending-payment-card{box-shadow:none}.dark .pending-payment-body>div{background:rgba(255,255,255,.04)}.dark .pending-avatar{color:#fde68a;background:rgba(180,83,9,.26)}.dark .pending-reject-form .form-input{background:#0f172a;color:#e2e8f0}@media(max-width:820px){.pending-payment-body{grid-template-columns:1fr 1fr}.pending-receipt{grid-column:span 2}}@media(max-width:560px){.pending-payment-meta{align-items:flex-start;flex-direction:column}.pending-amount{text-align:right}.pending-payment-body{grid-template-columns:1fr;padding:.8rem}.pending-receipt{grid-column:auto}.pending-payment-actions,.pending-reject-form{align-items:stretch;flex-direction:column}.pending-payment-actions form,.pending-payment-actions .legacy-form-action,.pending-payment-actions .button-danger-soft,.pending-reject-form .form-input{width:100%}}


/* ── Shared return action for all panels ─────────────────────────── */
.panel-back-action{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.6rem;padding:.58rem 1rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface);color:var(--rh-ink)!important;font-size:.875rem;font-weight:800;line-height:1;text-decoration:none!important;box-shadow:0 1px 2px rgba(15,23,42,.05);transition:transform .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.panel-back-action:hover,.panel-back-action:focus-visible{color:var(--rh-primary)!important;border-color:var(--rh-primary);background:color-mix(in srgb,var(--rh-primary) 7%,var(--rh-surface));box-shadow:0 8px 18px rgba(66,44,135,.12);transform:translateY(-1px);outline:0}.panel-back-action__icon{display:inline-grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;background:color-mix(in srgb,var(--rh-primary) 13%,transparent);font-size:1rem;line-height:1}.dark .panel-back-action,[data-theme="dark"] .panel-back-action{border-color:rgba(226,232,240,.22);background:rgba(30,41,59,.76);color:#edf2f7!important}@media(max-width:640px){.panel-back-action{width:100%}.dashboard-hero-actions .panel-back-action{width:auto}}

/* ── Course structure controls ──────────────────────────────────── */
.course-structure-section-actions,.course-structure-lesson-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.course-structure-icon-action,.course-structure-delete-action{min-height:2.15rem;border:1px solid var(--rh-border);border-radius:.62rem;background:var(--rh-surface);color:var(--rh-ink);font-family:inherit;font-size:.72rem;font-weight:800;cursor:pointer;transition:.16s}.course-structure-icon-action{width:2.15rem;font-size:1rem}.course-structure-icon-action:hover,.course-structure-icon-action:focus-visible{border-color:var(--rh-primary);color:var(--rh-primary);background:color-mix(in srgb,var(--rh-primary) 8%,var(--rh-surface));outline:0}.course-structure-delete-action{padding:.42rem .62rem;border-color:#fecaca;color:#b91c1c;background:#fff7f7}.course-structure-delete-action:hover{background:#fee2e2}.course-structure-lesson-actions .button-soft,.course-structure-lesson-actions .button-secondary{min-height:2.15rem;padding:.42rem .6rem;font-size:.68rem}@media(max-width:640px){.course-structure-section-actions{justify-content:flex-start}.course-structure-lesson-actions{min-width:12rem}.course-structure-lesson-actions .button-soft,.course-structure-lesson-actions .button-secondary{width:auto}}

/* ── Course editor and flexible pricing ─────────────────────────── */
.admin-course-form{border:1px solid var(--rh-border)}.admin-course-section-title{margin:0 0 .85rem;color:var(--rh-ink);font-size:1rem;font-weight:900}.admin-course-pricing-section{padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;background:color-mix(in srgb,var(--rh-surface) 92%,#eef2ff)}.admin-course-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.admin-course-section-head p{margin:.3rem 0 0;color:var(--rh-muted);font-size:.7rem;line-height:1.75}.admin-course-unit-chip{flex:0 0 auto;padding:.35rem .55rem;border-radius:.5rem;color:#3730a3;background:#e0e7ff;font-size:.64rem;font-weight:850}.admin-course-pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.admin-price-field{display:grid;gap:.35rem;padding:.75rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface);color:var(--rh-ink);font-size:.73rem;font-weight:850}.admin-price-field input{width:100%;min-height:2.55rem;padding:.45rem .65rem;border:1px solid var(--rh-border);border-radius:.6rem;background:var(--rh-surface);color:var(--rh-ink);font-family:inherit;font-size:.92rem;direction:ltr;text-align:left}.admin-price-field input:focus{border-color:var(--rh-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--rh-primary) 16%,transparent);outline:0}.admin-price-field small{color:var(--rh-muted);font-size:.62rem;font-weight:500;line-height:1.55}.admin-course-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.admin-course-toggle{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem;border:1px solid var(--rh-border);border-radius:.85rem;background:var(--rh-surface);cursor:pointer}.admin-course-toggle input{width:1.1rem;height:1.1rem;margin-top:.12rem;accent-color:var(--rh-primary)}.admin-course-toggle strong,.admin-course-toggle small{display:block}.admin-course-toggle strong{color:var(--rh-ink);font-size:.75rem}.admin-course-toggle small{margin-top:.2rem;color:var(--rh-muted);font-size:.64rem;line-height:1.55}.admin-half-term-card{margin-top:.8rem;padding:.85rem;border:1px dashed color-mix(in srgb,var(--rh-primary) 30%,var(--rh-border));border-radius:.85rem;background:var(--rh-surface)}.admin-half-term-card h3{margin:0 0 .7rem;color:var(--rh-ink);font-size:.83rem;font-weight:900}.admin-course-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;padding:.8rem;border-radius:.8rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.7rem}.admin-course-meta .button-secondary{margin-inline-start:auto}.dark .admin-course-pricing-section{background:rgba(49,46,129,.13)}.dark .admin-course-unit-chip{color:#c7d2fe;background:rgba(79,70,229,.28)}@media(max-width:640px){.admin-course-pricing-grid,.admin-course-options{grid-template-columns:1fr}.admin-course-section-head{flex-direction:column}.admin-course-meta .button-secondary{margin-inline-start:0;width:100%;justify-content:center}}

/* ── Public course term and marketing pricing ───────────────────── */
.course-purchase-form{display:grid;gap:.7rem;margin-top:1rem}.course-term-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;padding:.32rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface-alt)}.course-term-switch button{min-height:2.3rem;border:0;border-radius:.58rem;background:transparent;color:var(--rh-muted);font-family:inherit;font-size:.7rem;font-weight:800;cursor:pointer;transition:.16s}.course-term-switch button.is-active{color:#fff;background:var(--rh-primary);box-shadow:0 4px 10px rgba(79,70,229,.22)}.course-term-help{margin:0;color:var(--rh-muted);font-size:.65rem;line-height:1.65}.course-method-options{display:grid;gap:.55rem}.course-choice-rich{align-items:stretch!important}.course-choice-rich>span{display:grid;grid-template-columns:1fr auto;column-gap:.6rem;align-items:center;width:100%}.course-choice-rich b{color:var(--rh-ink);font-size:.76rem}.course-choice-rich del{grid-column:2;color:var(--rh-muted);font-size:.62rem;text-decoration-thickness:1px}.course-choice-rich strong{grid-column:2;color:var(--rh-primary);font-size:.78rem}.dark .course-term-switch{background:rgba(30,41,59,.7)}.dark .course-choice-rich b{color:#edf2f7}@media(max-width:420px){.course-term-switch{grid-template-columns:1fr}.course-choice-rich>span{grid-template-columns:1fr}.course-choice-rich del,.course-choice-rich strong{grid-column:1}}

/* ── Lesson visual editor and published rich content ────────────── */
.lesson-editor-form{display:grid;gap:1rem}.lesson-editor-section .ql-toolbar.ql-snow{border-color:var(--rh-border);border-radius:.8rem .8rem 0 0;background:var(--rh-surface-alt)}.lesson-editor-section .ql-container.ql-snow{min-height:320px;border-color:var(--rh-border);border-radius:0 0 .8rem .8rem;background:var(--rh-surface);font-family:inherit;font-size:.92rem}.lesson-editor-section .ql-editor{min-height:320px;color:var(--rh-ink);direction:rtl;text-align:right;line-height:2}.lesson-access-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.lesson-rich-content{color:var(--rh-ink);line-height:2.05}.lesson-rich-content> :first-child{margin-top:0}.lesson-rich-content h1,.lesson-rich-content h2,.lesson-rich-content h3,.lesson-rich-content h4,.lesson-rich-content h5,.lesson-rich-content h6{margin:1.25rem 0 .6rem;color:var(--rh-ink);font-weight:900}.lesson-rich-content p,.lesson-rich-content ul,.lesson-rich-content ol{margin:.7rem 0}.lesson-rich-content ul,.lesson-rich-content ol{padding-inline-start:1.5rem}.lesson-rich-content blockquote{margin:1rem 0;padding:.65rem 1rem;border-inline-start:3px solid var(--rh-primary);border-radius:.55rem;background:var(--rh-surface-alt)}.lesson-rich-content pre{overflow:auto;padding:.8rem;border-radius:.7rem;color:#e2e8f0;background:#0f172a;direction:ltr;text-align:left}.lesson-rich-content img{display:block;max-width:100%;height:auto;margin:1rem auto;border-radius:.8rem}.lesson-rich-content a{color:var(--rh-primary);text-decoration:underline}.dark .lesson-editor-section .ql-toolbar.ql-snow,.dark .lesson-editor-section .ql-container.ql-snow{border-color:rgba(226,232,240,.2);background:#1e293b}.dark .lesson-editor-section .ql-editor,.dark .lesson-rich-content{color:#edf2f7}@media(max-width:760px){.lesson-access-options{grid-template-columns:1fr}}

.course-lesson-create-form{display:grid;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--rh-border)}.course-lesson-create-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.course-lesson-create-options .admin-course-toggle{padding:.65rem}.course-lesson-create-help{margin:0;color:var(--rh-muted);font-size:.65rem;line-height:1.65}@media(max-width:760px){.course-lesson-create-options{grid-template-columns:1fr}}


/* ── Visual page CMS editor ─────────────────────────────────────── */
.cms-page-editor-tabs{margin-bottom:1rem}.cms-visual-editor,.cms-preview-panel,.cms-code-editor-panel{padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 8px 22px rgba(15,23,42,.04)}.cms-visual-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.cms-visual-editor-head h2{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:900}.cms-visual-editor-head p{margin:.35rem 0 0;color:var(--rh-muted);font-size:.7rem;line-height:1.7}.cms-visual-editor form{display:grid;gap:.8rem}.cms-visual-editor .ql-toolbar.ql-snow{border-color:var(--rh-border);border-radius:.75rem .75rem 0 0;background:var(--rh-surface-alt)}.cms-visual-editor .ql-container.ql-snow{min-height:360px;border-color:var(--rh-border);border-radius:0 0 .75rem .75rem;background:var(--rh-surface);font-family:inherit}.cms-visual-editor .ql-editor{min-height:360px;color:var(--rh-ink);direction:rtl;text-align:right;line-height:2}.cms-visual-status{margin-inline-end:auto;color:var(--rh-muted);font-size:.7rem}.cms-preview-panel iframe{display:block;width:100%;height:min(70vh,850px);border:1px solid var(--rh-border);border-radius:.85rem;background:#fff}.cms-revisions-wide{margin-top:1rem}.dark .cms-visual-editor,.dark .cms-preview-panel,.dark .cms-code-editor-panel{box-shadow:none}.dark .cms-visual-editor .ql-toolbar.ql-snow,.dark .cms-visual-editor .ql-container.ql-snow{border-color:rgba(226,232,240,.2);background:#1e293b}.dark .cms-visual-editor .ql-editor{color:#edf2f7}@media(max-width:640px){.cms-visual-editor-head{flex-direction:column}.cms-preview-panel iframe{height:65vh}}

/* ── Organized media library ────────────────────────────────────── */
.cms-media-organizer-grid{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.65fr);gap:1rem;align-items:start}.cms-media-folders,.cms-media-upload{padding:1rem}.cms-media-folders header h2,.cms-media-upload header h2,.cms-media-library-head h2{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:900}.cms-media-folders header p,.cms-media-upload header p,.cms-media-library-head p{margin:.35rem 0 0;color:var(--rh-muted);font-size:.69rem;line-height:1.65}.cms-folder-create-form{display:grid;gap:.65rem;margin:1rem 0}.cms-folder-create-form .legacy-form-action{width:100%;justify-content:center}.cms-folder-list{display:grid;gap:.3rem;padding-top:.8rem;border-top:1px solid var(--rh-border)}.cms-folder-list a{display:block;border-radius:.55rem;padding:.52rem .6rem;color:var(--rh-ink);font-size:.72rem;font-weight:750;text-decoration:none}.cms-folder-list a:hover,.cms-folder-list a.is-active{color:var(--rh-primary);background:color-mix(in srgb,var(--rh-primary) 9%,var(--rh-surface))}.cms-folder-list small{color:var(--rh-muted);font-size:.61rem}.cms-media-library-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-top:1.35rem}.cms-media-library-head>span{padding:.38rem .58rem;border-radius:.5rem;color:var(--rh-primary);background:color-mix(in srgb,var(--rh-primary) 10%,var(--rh-surface));font-size:.68rem;font-weight:850}.cms-media-grid-organized{grid-template-columns:repeat(3,minmax(0,1fr))}.cms-media-card-organized>div{gap:.55rem}.cms-media-organize-form{display:grid;grid-template-columns:1fr 1fr auto;gap:.4rem;align-items:end;margin-top:.25rem;padding-top:.65rem;border-top:1px dashed var(--rh-border)}.cms-media-organize-form label{display:grid;gap:.25rem;color:var(--rh-muted);font-size:.59rem;font-weight:750}.cms-media-organize-form .form-input{min-height:2rem;padding:.3rem .4rem;font-size:.64rem}.cms-media-organize-form .button-secondary{min-height:2rem;padding:.32rem .5rem;font-size:.61rem;white-space:nowrap}.dark .cms-media-folders,.dark .cms-media-upload{box-shadow:none}@media(max-width:1000px){.cms-media-organizer-grid{grid-template-columns:1fr}.cms-media-grid-organized{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.cms-media-grid-organized{grid-template-columns:1fr}.cms-media-organize-form{grid-template-columns:1fr}.cms-media-organize-form .button-secondary{width:100%;justify-content:center}}

/* ── CMS visual editor parity and RTL Quill picker repair ─────────────── */
.cms-visual-editor .ql-toolbar .ql-toolbar,.blog-editor-section .ql-toolbar{direction:rtl;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.cms-visual-editor .ql-toolbar .ql-formats .ql-toolbar .ql-formats,.blog-editor-section .ql-toolbar .ql-formats{margin-inline:0 .4rem}.cms-visual-editor .ql-picker.ql-header .ql-picker.ql-header,.blog-editor-section .ql-picker.ql-header{width:8.8rem}.cms-visual-editor .ql-picker.ql-size .ql-picker.ql-size,.blog-editor-section .ql-picker.ql-size{width:5.6rem}.cms-visual-editor .ql-picker-label .ql-picker-label,.blog-editor-section .ql-picker-label{display:inline-flex!important;align-items:center;justify-content:space-between;gap:.35rem;min-height:2rem;padding-inline:.45rem!important}.cms-visual-editor .ql-picker-label::before .ql-picker-label::before,.blog-editor-section .ql-picker-label::before{flex:1 1 auto;min-width:0;padding:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cms-visual-editor .ql-picker-label svg .ql-picker-label svg,.blog-editor-section .ql-picker-label svg{position:static!important;inset:auto!important;flex:0 0 18px;width:18px!important;height:18px!important;margin:0!important;pointer-events:none}.cms-visual-editor .ql-picker-options .ql-picker-options,.blog-editor-section .ql-picker-options{direction:rtl;min-width:100%}.cms-visual-editor .editor-emoji-button .editor-emoji-button,.blog-editor-section .editor-emoji-button{display:inline-grid;place-items:center;width:1.8rem;height:1.8rem;border:1px solid transparent;border-radius:.35rem;color:var(--rh-ink);background:transparent;font-size:1rem;cursor:pointer}.cms-visual-editor .editor-emoji-button:hover .editor-emoji-button:hover,.blog-editor-section .editor-emoji-button:hover{background:var(--rh-surface-alt)}.cms-visual-editor .ql-editor img .ql-editor img{max-width:100%;height:auto;border-radius:.6rem}.cms-visual-status.is-error{color:var(--rh-danger,#b91c1c)}@media(max-width:640px){.cms-visual-editor .ql-toolbar .ql-formats .ql-toolbar .ql-formats,.blog-editor-section .ql-toolbar .ql-formats{margin-inline:0 .15rem}.cms-visual-editor .ql-picker.ql-header .ql-picker.ql-header,.blog-editor-section .ql-picker.ql-header{width:7.7rem}}
.cms-preview-bootstrap{position:fixed!important;inset:auto!important;inline-size:1px!important;block-size:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;border:0!important;z-index:-1!important}

/* ── Homework workflow ─────────────────────────────────────────────── */
.lesson-video{aspect-ratio:16/9;overflow:hidden;border-radius:1rem;background:#020617}.lesson-video video{display:block;width:100%;height:100%}.lesson-video-empty{display:grid;place-items:center;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.86rem}.lesson-content{margin-top:1.5rem}.homework-panel{display:grid;gap:1rem;margin-top:1.5rem;padding:1.2rem;border:1px solid #fde68a;border-radius:1rem;background:#fffbeb}.homework-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.homework-panel h2{margin:.15rem 0 0;color:#78350f;font-size:1.08rem;font-weight:900}.homework-panel-head p{margin:.45rem 0 0;color:#92400e;font-size:.76rem;line-height:1.8}.homework-quota{display:grid;min-width:10rem;gap:.16rem;padding:.72rem .82rem;border:1px solid #fde68a;border-radius:.75rem;color:#92400e;background:#fff;white-space:nowrap}.homework-quota span,.homework-quota small{font-size:.62rem}.homework-quota strong{font-size:.98rem}.homework-quota.is-teacher{border-color:#bbf7d0;color:#047857;background:#f0fdf4}.homework-submit-form{display:grid;gap:.85rem}.homework-submit-form .form-label{display:grid;gap:.35rem}.homework-submit-form .form-label small{color:var(--rh-muted);font-size:.64rem;font-weight:500}.homework-file-picker{display:grid;gap:.3rem;padding:.85rem;border:1px dashed #d6a33c;border-radius:.8rem;color:#78350f;background:rgba(255,255,255,.58);cursor:pointer}.homework-file-picker strong{font-size:.78rem}.homework-file-picker span{font-size:.65rem;line-height:1.6}.homework-file-picker input{max-width:100%;color:#78350f;font-family:inherit;font-size:.67rem}.homework-form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem}.homework-form-actions span{color:#92400e;font-size:.64rem}.homework-upgrade-note{padding:.9rem;border:1px solid #fed7aa;border-radius:.8rem;color:#9a3412;background:#fff7ed}.homework-upgrade-note strong{display:block;font-size:.8rem}.homework-upgrade-note p{margin:.35rem 0 .65rem;font-size:.7rem;line-height:1.7}.homework-thread{display:grid;gap:.7rem;padding-top:1rem;border-top:1px solid #fde68a}.homework-thread h3{margin:0;color:#78350f;font-size:.86rem;font-weight:900}.homework-submission{display:grid;gap:.7rem;padding:.9rem;border:1px solid #f5d8a3;border-radius:.8rem;background:#fff}.homework-submission>header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.homework-submission header>div{display:grid;gap:.14rem}.homework-submission header strong{color:var(--rh-ink);font-size:.74rem}.homework-submission header span{color:var(--rh-muted);font-size:.6rem}.homework-status{padding:.28rem .46rem;border-radius:.45rem;color:#92400e;background:#fef3c7;font-size:.6rem;font-weight:850}.homework-status.is-answered{color:#047857;background:#d1fae5}.homework-student-message{margin:0;color:var(--rh-ink);font-size:.74rem;line-height:1.85}.homework-image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}.homework-image-grid a{display:block;overflow:hidden;border:1px solid var(--rh-border);border-radius:.65rem;background:var(--rh-surface-alt)}.homework-image-grid img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .18s}.homework-image-grid a:hover img{transform:scale(1.04)}.homework-feedback-message{display:grid;gap:.35rem;padding:.72rem .8rem;border:1px solid #bfdbfe;border-radius:.72rem;color:#1e3a8a;background:#eff6ff}.homework-feedback-message>div{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.homework-feedback-message strong{font-size:.68rem}.homework-feedback-message span{font-size:.58rem}.homework-feedback-message p{margin:0;font-size:.72rem;line-height:1.8}.homework-feedback-message footer{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.homework-read-receipt{color:#059669!important;font-size:.61rem!important;font-weight:850}.homework-read-pending{color:#64748b;font-size:.61rem}.homework-reaction-confirmed{padding:.18rem .4rem;border-radius:.4rem;color:#be123c!important;background:#ffe4e6;font-size:.6rem!important;font-weight:800}.homework-reaction-form{display:flex;gap:.35rem}.homework-reaction-form button{min-height:1.7rem;border:1px solid #fda4af;border-radius:.45rem;padding:.2rem .42rem;color:#be123c;background:#fff;font-family:inherit;font-size:.62rem;font-weight:800;cursor:pointer}.homework-reaction-form button:hover{background:#fff1f2}.lesson-download{margin-top:1.35rem}.course-lessons-title{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:900}.lesson-navigation{margin-top:.75rem;max-height:500px;overflow:auto}.lesson-navigation a.is-current{color:var(--rh-primary);background:#eef2ff}.teacher-guide{font-size:.78rem}.homework-review-section{margin-top:1rem}.homework-review-card{gap:.75rem}.homework-image-grid-compact{max-width:390px}.teacher-feedback-history{display:grid;gap:.5rem}.dash-feedback{display:grid;gap:.32rem}.dash-feedback>div{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.dash-feedback>div span{color:var(--rh-muted);font-size:.6rem}.dash-feedback p{margin:0;font-size:.72rem;line-height:1.8}.dash-feedback footer{display:flex;gap:.45rem;align-items:center}.dash-response-form{display:grid;gap:.55rem}.dash-response-form textarea{width:100%;min-height:80px;resize:vertical;padding:.65rem;border:1px solid var(--rh-border);border-radius:.7rem;color:var(--rh-ink);background:var(--rh-surface);font-family:inherit;font-size:.72rem;line-height:1.75}.dash-response-form button{justify-self:start;min-height:2.15rem;border:1px solid var(--rh-primary);border-radius:.65rem;padding:.42rem .75rem;color:#fff;background:var(--rh-primary);font-family:inherit;font-size:.68rem;font-weight:850;cursor:pointer}.homework-settings{margin-top:1rem}.homework-settings .dash-section-head p{margin:.3rem 0 0;color:var(--rh-muted);font-size:.68rem;line-height:1.65}.homework-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.9rem}.homework-setting-card{display:grid;grid-template-columns:1fr minmax(7rem,.7fr) minmax(7rem,.7fr) auto;gap:.55rem;align-items:end;padding:.8rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface-alt)}.homework-setting-card>div{display:grid;gap:.18rem}.homework-setting-card strong{color:var(--rh-ink);font-size:.74rem}.homework-setting-card span{color:var(--rh-muted);font-size:.6rem}.homework-setting-card label{display:grid;gap:.25rem;color:var(--rh-muted);font-size:.59rem;font-weight:750}.homework-setting-card .form-input{min-height:2.1rem;padding:.35rem .45rem;font-size:.68rem}.homework-setting-card .button-soft{min-height:2.1rem;padding:.35rem .55rem;font-size:.62rem}.dark .homework-panel{border-color:rgba(251,191,36,.28);background:rgba(120,53,15,.2)}.dark .homework-panel h2,.dark .homework-panel-head p,.dark .homework-file-picker{color:#fde68a}.dark .homework-quota,.dark .homework-submission{border-color:rgba(251,191,36,.24);background:#1e293b}.dark .homework-feedback-message{border-color:rgba(96,165,250,.3);color:#dbeafe;background:rgba(30,58,138,.25)}.dark .homework-upgrade-note{border-color:rgba(251,146,60,.32);color:#fed7aa;background:rgba(124,45,18,.25)}
@media(max-width:760px){.homework-panel-head{flex-direction:column}.homework-quota{min-width:0;width:100%}.homework-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-settings-grid{grid-template-columns:1fr}.homework-setting-card{grid-template-columns:1fr 1fr}.homework-setting-card>div{grid-column:span 2}.homework-setting-card .button-soft{width:100%;justify-content:center}.homework-form-actions{align-items:flex-start;flex-direction:column}} 
.course-method-upgrade{display:grid;gap:.55rem;margin-top:1rem;padding:.85rem;border:1px solid #bbf7d0;border-radius:.8rem;color:#065f46;background:#f0fdf4}.course-method-upgrade strong{font-size:.8rem}.course-method-upgrade p{margin:0;font-size:.7rem;line-height:1.8}.course-method-upgrade form{margin:0}.course-method-upgrade .auth-action{width:100%;margin:0}.dark .course-method-upgrade{border-color:rgba(74,222,128,.32);color:#bbf7d0;background:rgba(6,78,59,.3)}

/* ── Special bundles and tier commerce ───────────────────────────── */
.special-bundles{display:grid;gap:1rem;margin-bottom:1.1rem;padding:1rem;border:1px solid #c7d2fe;border-radius:1rem;background:linear-gradient(145deg,#f5f7ff,#fbfdff)}.special-bundles-head h2{margin:.2rem 0;color:#312e81}.special-bundles-head p{max-width:55rem;margin:.3rem 0 0;color:#475569;font-size:.76rem;line-height:1.8}.special-bundle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.special-bundle-card{display:grid;align-content:start;gap:.72rem;padding:1rem;border:1px solid #dbe4ff;border-radius:.9rem;background:#fff;box-shadow:0 10px 28px rgba(49,46,129,.06)}.special-bundle-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;color:#4338ca;font-size:.65rem;font-weight:850}.special-bundle-card-head span{padding:.25rem .45rem;border-radius:.4rem;background:#eef2ff}.special-bundle-card h3{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:900}.special-bundle-card>p{margin:0;color:var(--rh-muted);font-size:.7rem;line-height:1.8}.special-bundle-card ul.special-bundle-course-list{display:grid;gap:.38rem;margin:0;padding:0;overflow:visible;color:var(--rh-ink);font-size:.68rem;line-height:1.65;list-style:none}.special-bundle-course-list li{display:flex;align-items:baseline;justify-content:flex-start;gap:.48rem;min-width:0}.special-bundle-course-title{min-width:0;color:var(--rh-ink)}.special-bundle-course-method{flex:0 0 auto;white-space:nowrap;color:#92400e;font-size:.58rem;font-weight:750}.special-bundle-card form{display:grid;gap:.65rem;padding-top:.7rem;border-top:1px solid #e5e7eb}.bundle-methods{display:flex;gap:.85rem}.bundle-methods label{display:flex;align-items:center;gap:.3rem;color:var(--rh-ink);font-size:.7rem;font-weight:750}.bundle-price{display:flex;align-items:baseline;gap:.45rem}.bundle-price del{color:var(--rh-muted);font-size:.66rem}.bundle-price strong{color:#4338ca;font-size:.93rem}.tier-discount-note{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.15rem;padding:.85rem 1rem;border:1px dashed #a5b4fc;border-radius:.85rem;color:#312e81;background:#eef2ff}.tier-discount-note h2{margin:0;font-size:.85rem}.tier-discount-note p{max-width:40rem;margin:.25rem 0 0;color:#475569;font-size:.66rem;line-height:1.75}.tier-discount-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.38rem}.tier-discount-list span{padding:.32rem .46rem;border-radius:.45rem;color:#3730a3;background:#fff;font-size:.6rem}.tier-discount-list strong{color:#4338ca}.cart-item-kind{margin-bottom:.22rem;color:var(--rh-muted);font-size:.58rem;font-weight:800}.commerce-tiers,.commerce-bundles{margin-top:1rem}.commerce-tier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.9rem}.commerce-tier-card{display:grid;grid-template-columns:1fr minmax(6rem,.55fr) auto auto;gap:.55rem;align-items:end;padding:.75rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface-alt)}.commerce-tier-card>div{display:grid;gap:.15rem}.commerce-tier-card strong{color:var(--rh-ink);font-size:.75rem}.commerce-tier-card span{color:var(--rh-muted);font-size:.6rem}.commerce-tier-card label{display:grid;gap:.25rem;color:var(--rh-muted);font-size:.6rem;font-weight:750}.commerce-tier-card .form-input{min-height:2.1rem;padding:.35rem .45rem;font-size:.68rem}.commerce-switch{display:flex!important;align-items:center;gap:.35rem;min-height:2.1rem;white-space:nowrap}.bundle-admin-form{display:grid;gap:.85rem;margin-top:.9rem;padding:1rem;border:1px solid var(--rh-border);border-radius:.85rem;background:var(--rh-surface-alt)}.bundle-admin-form h3{margin:0;color:var(--rh-ink);font-size:.9rem}.bundle-admin-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.bundle-description-field{grid-column:span 2}.bundle-publish-switch{align-self:end}.bundle-course-picker{min-width:0;margin:0;padding:.75rem;border:1px solid var(--rh-border);border-radius:.7rem}.bundle-course-picker legend{padding:0 .3rem;color:var(--rh-ink);font-size:.72rem;font-weight:850}.bundle-course-picker>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;max-height:16rem;padding-top:.35rem;overflow:auto}.bundle-course-picker label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.25rem;padding:.42rem;border:1px solid transparent;border-radius:.5rem;color:var(--rh-ink);font-size:.64rem}.bundle-course-picker label:hover{border-color:var(--rh-border);background:var(--rh-surface)}.bundle-course-picker small{grid-column:2;color:var(--rh-muted);font-size:.53rem}.existing-bundle-list{display:grid;gap:.7rem;margin-top:1rem}.existing-bundle-card{border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface)}.existing-bundle-card summary{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.8rem;cursor:pointer;list-style:none}.existing-bundle-card summary::-webkit-details-marker{display:none}.existing-bundle-card summary div{display:grid;gap:.15rem}.existing-bundle-card summary strong{color:var(--rh-ink);font-size:.78rem}.existing-bundle-card summary span{color:var(--rh-muted);font-size:.61rem}.existing-bundle-card>form{margin:0 .75rem .75rem}.dark .special-bundles{border-color:rgba(129,140,248,.3);background:rgba(49,46,129,.2)}.dark .special-bundles-head h2,.dark .tier-discount-note{color:#c7d2fe}.dark .special-bundles-head p,.dark .tier-discount-note p{color:#cbd5e1}.dark .special-bundle-card{border-color:rgba(129,140,248,.28);background:#172033}.dark .tier-discount-note{border-color:rgba(129,140,248,.38);background:rgba(49,46,129,.28)}.dark .tier-discount-list span{color:#c7d2fe;background:#1e293b}
@media(max-width:900px){.special-bundle-grid,.commerce-tier-grid{grid-template-columns:1fr}.bundle-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bundle-course-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}.tier-discount-note{align-items:flex-start;flex-direction:column}.tier-discount-list{justify-content:flex-start}}@media(max-width:600px){.special-bundle-grid{grid-template-columns:1fr}.bundle-description-field{grid-column:span 2}.bundle-course-picker>div{grid-template-columns:1fr}.commerce-tier-card{grid-template-columns:1fr 1fr}.commerce-tier-card>div{grid-column:span 2}.commerce-tier-card .button-soft{width:100%}}

/* ── Global layout repair, notifications and control sizing ───────── */
html,body{width:100%;min-width:0;margin:0!important;padding:0!important}.site-shell{width:100%;min-height:100vh;margin:0!important;padding:0!important;overflow-x:hidden}.site-nav,.site-footer{width:100%;margin:0!important;border-radius:0!important}.site-nav{position:relative;z-index:40}.site-nav>.rh-container{max-width:none!important;margin:0!important;padding-inline:clamp(1rem,4vw,4.5rem)!important}.site-footer{margin-top:auto!important}.site-footer>.rh-container{max-width:none!important;margin:0!important;padding-inline:clamp(1rem,4vw,4.5rem)!important}.home-main{width:100%;min-width:0}.page-hero,.dashboard-page,.auth-page,.cart-page{width:100%;box-sizing:border-box}

.toast-stack{position:fixed;z-index:200;top:max(1rem,env(safe-area-inset-top));left:50%;display:grid;justify-items:center;gap:.65rem;width:min(34rem,calc(100vw - 2rem));pointer-events:none;transform:translateX(-50%)}.site-toast{display:grid;grid-template-columns:2rem minmax(0,1fr) 1.9rem;align-items:center;gap:.65rem;width:100%;box-sizing:border-box;padding:.72rem .78rem;border:1px solid;border-radius:.9rem;color:#fff;background:#334155;box-shadow:0 16px 36px rgba(15,23,42,.24);pointer-events:auto;backdrop-filter:blur(10px);text-align:center}.site-toast__icon{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;color:currentColor;background:rgba(255,255,255,.16);font-size:1rem;font-weight:950;line-height:1}.site-toast__message{margin:0;color:inherit;font-size:.76rem;font-weight:760;line-height:1.75}.site-toast__close{display:grid;place-items:center;width:1.9rem;height:1.9rem;border:0;border-radius:.55rem;color:inherit;background:transparent;font-family:inherit;font-size:1.25rem;line-height:1;cursor:pointer;opacity:.88}.site-toast__close:hover,.site-toast__close:focus-visible{outline:0;background:rgba(255,255,255,.18);opacity:1}.site-toast--success{border-color:#15803d;background:linear-gradient(135deg,#047857,#16a34a)}.site-toast--error{border-color:#dc2626;background:linear-gradient(135deg,#b91c1c,#ef4444)}.site-toast--warning{border-color:#d97706;background:linear-gradient(135deg,#b45309,#f59e0b)}.site-toast--info{border-color:#2563eb;background:linear-gradient(135deg,#1d4ed8,#3b82f6)}.toast-enter{transition:opacity .2s ease,transform .2s ease}.toast-enter-start{opacity:0;transform:translateY(-.75rem) scale(.97)}.toast-enter-end{opacity:1;transform:translateY(0) scale(1)}.toast-leave{transition:opacity .16s ease,transform .16s ease}.toast-leave-start{opacity:1;transform:translateY(0) scale(1)}.toast-leave-end{opacity:0;transform:translateY(-.5rem) scale(.97)}.dark .site-toast{box-shadow:0 18px 38px rgba(0,0,0,.48)}

.auth-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.48rem!important;min-height:2.75rem!important}.auth-action svg{width:1rem!important;height:1rem!important;min-width:1rem!important;min-height:1rem!important;flex:0 0 1rem!important;transform:rotate(180deg)!important}.curriculum-toggle svg,.curriculum-toggle .w-5{width:1.1rem!important;height:1.1rem!important;min-width:1.1rem!important;min-height:1.1rem!important;flex:0 0 1.1rem!important}.curriculum-toggle{gap:.6rem!important}.profile-form-grid input.form-input[type='email'],.profile-form-grid input.form-input[type='text'],.profile-form-grid select.form-input{box-sizing:border-box!important;min-height:2.7rem!important;height:2.7rem!important;padding:.45rem .7rem!important;line-height:1.25!important}.profile-form-grid .form-label{align-content:start}.profile-form-grid .form-label>small{min-height:1.1rem}.profile-password-stack .form-input{box-sizing:border-box!important;min-height:2.7rem!important;height:2.7rem!important}

@media(max-width:640px){.site-nav>.rh-container,.site-footer>.rh-container{padding-inline:1rem!important}.toast-stack{top:max(.65rem,env(safe-area-inset-top));width:calc(100vw - 1.2rem)}.site-toast{grid-template-columns:1.8rem minmax(0,1fr) 1.75rem;padding:.65rem}.site-toast__message{font-size:.7rem}.auth-action{width:100%}.profile-form-grid input.form-input[type='email'],.profile-form-grid input.form-input[type='text'],.profile-form-grid select.form-input{min-height:2.65rem!important;height:2.65rem!important}}

/* ── Student/admin order history ─────────────────────────────────── */
.orders-hero{margin-bottom:1rem}.dashboard-hero-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.admin-pending-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.45rem;padding:.48rem .78rem;border-radius:.65rem;color:#78350f;background:#fef3c7;font-size:.69rem;font-weight:850;text-decoration:none}.admin-pending-link:hover{background:#fde68a}.student-order-list,.admin-order-list{display:grid;gap:.85rem}.student-order-card,.admin-order-card{overflow:hidden;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 10px 26px rgba(15,23,42,.045)}.student-order-card>header,.admin-order-card>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.82rem 1rem;border-bottom:1px solid var(--rh-border);background:var(--rh-surface-alt)}.student-order-id{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem}.student-order-id span,.admin-order-label{color:var(--rh-muted);font-size:.6rem;font-weight:800}.student-order-id strong{color:var(--rh-ink);font-size:.82rem}.student-order-id small,.admin-order-card time{color:var(--rh-muted);font-size:.6rem}.order-status-chip{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .52rem;border-radius:999px;font-size:.61rem;font-weight:900;white-space:nowrap}.order-status-chip.is-confirmed{color:#047857;background:#d1fae5}.order-status-chip.is-waiting{color:#92400e;background:#fef3c7}.order-status-chip.is-pending{color:#1d4ed8;background:#dbeafe}.order-status-chip.is-cancelled{color:#b91c1c;background:#fee2e2}.student-order-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem}.student-order-products,.admin-order-products{display:grid;gap:.55rem}.order-product{display:flex;align-items:flex-start;gap:.55rem}.order-product-icon{display:grid;place-items:center;flex:0 0 2rem;width:2rem;height:2rem;border-radius:.6rem;color:#475569;background:#e2e8f0;font-size:1rem}.order-product--bundle .order-product-icon{color:#4338ca;background:#e0e7ff}.order-product>div{display:grid;gap:.12rem;min-width:0}.order-product strong{color:var(--rh-ink);font-size:.72rem;font-weight:900}.order-product small,.order-product p{margin:0;color:var(--rh-muted);font-size:.6rem;line-height:1.65}.order-product p{color:#6d5f2c}.student-order-payment,.admin-order-amount{display:grid;gap:.28rem;justify-items:end;text-align:left}.student-order-payment span,.student-order-payment small,.admin-order-amount small{color:var(--rh-muted);font-size:.6rem}.student-order-payment strong,.admin-order-amount strong{color:var(--rh-primary);font-size:.88rem;font-weight:950;white-space:nowrap}.student-order-card>footer,.admin-order-card>footer{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.7rem 1rem;border-top:1px solid var(--rh-border);color:#92400e;background:#fffbeb;font-size:.64rem}.admin-order-head-main{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem}.admin-order-number{color:var(--rh-ink);font-size:.78rem;font-weight:920}.admin-order-card-grid{display:grid;grid-template-columns:minmax(9rem,.6fr) minmax(0,1.55fr) minmax(10rem,.65fr);gap:1rem;padding:1rem}.admin-order-customer,.admin-order-amount{align-content:start}.admin-order-customer{display:grid;gap:.25rem}.admin-order-customer strong{color:var(--rh-ink);font-size:.76rem}.admin-order-customer small{color:var(--rh-muted);font-size:.62rem}.orders-empty-state{display:grid;justify-items:center;gap:.55rem;padding:3.4rem 1.25rem;border:1px dashed var(--rh-border);border-radius:1rem;text-align:center;background:var(--rh-surface-alt)}.orders-empty-state>span{display:grid;place-items:center;width:3.2rem;height:3.2rem;border-radius:50%;color:var(--rh-primary);background:color-mix(in srgb,var(--rh-primary) 10%,var(--rh-surface));font-size:1.65rem}.orders-empty-state h2{margin:.1rem 0;color:var(--rh-ink);font-size:1rem}.orders-empty-state p{max-width:28rem;margin:0;color:var(--rh-muted);font-size:.7rem;line-height:1.8}.dark .student-order-card,.dark .admin-order-card{box-shadow:0 10px 28px rgba(0,0,0,.2)}.dark .admin-pending-link{color:#fde68a;background:rgba(146,64,14,.35)}.dark .order-product-icon{color:#cbd5e1;background:#334155}.dark .order-product--bundle .order-product-icon{color:#c7d2fe;background:rgba(79,70,229,.28)}.dark .student-order-card>footer,.dark .admin-order-card>footer{color:#fde68a;border-color:rgba(253,230,138,.16);background:rgba(120,53,15,.22)}
@media(max-width:760px){.dashboard-hero-actions{justify-content:flex-start}.student-order-body,.admin-order-card-grid{grid-template-columns:1fr}.student-order-payment,.admin-order-amount{justify-items:start;text-align:right}.student-order-card>header,.admin-order-card>header{align-items:flex-start;flex-direction:column}.student-order-card>footer,.admin-order-card>footer{align-items:flex-start;flex-direction:column}.student-order-card>footer .button-soft,.admin-order-card>footer .button-soft{width:100%;justify-content:center}}

/* ── Cart badge and special-bundle coupon guard ───────────────────── */
.nav-cart-link{position:relative;display:inline-flex!important;align-items:center;gap:.38rem}.nav-cart-badge{display:inline-grid;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .28rem;border:2px solid var(--rh-surface);border-radius:999px;color:#fff;background:#e11d48;font-size:.56rem;font-weight:950;line-height:1;box-shadow:0 3px 9px rgba(190,24,93,.27)}.nav-mobile .nav-cart-badge{margin-inline-start:auto;border-color:var(--rh-surface-alt)}.cart-bundle-discount-note{padding:.58rem .7rem;border:1px solid #c7d2fe;border-radius:.65rem;color:#3730a3;background:#eef2ff;font-size:.63rem;font-weight:700;line-height:1.7}.dark .nav-cart-badge{border-color:#172033}.dark .cart-bundle-discount-note{border-color:rgba(129,140,248,.35);color:#c7d2fe;background:rgba(49,46,129,.24)}

/* ── Private homework image viewer ───────────────────────────────── */
.homework-image-trigger{position:relative;display:block;min-width:0;overflow:hidden;border:1px solid var(--rh-border);border-radius:.65rem;padding:0;color:var(--rh-ink);background:var(--rh-surface-alt);font-family:inherit;cursor:zoom-in}.homework-image-trigger img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .18s}.homework-image-trigger span{position:absolute;inset-inline:0;bottom:0;padding:.3rem;color:#fff;background:linear-gradient(transparent,rgba(15,23,42,.78));font-size:.56rem;font-weight:800;opacity:0;transition:opacity .15s}.homework-image-trigger:hover img,.homework-image-trigger:focus-visible img{transform:scale(1.05)}.homework-image-trigger:hover span,.homework-image-trigger:focus-visible span{opacity:1}.homework-image-trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--rh-primary) 42%,transparent);outline-offset:2px}.homework-image-modal[hidden]{display:none!important}.homework-image-modal{position:fixed;z-index:240;inset:0;display:grid;place-items:center;padding:1rem}.homework-image-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(2,6,23,.78);backdrop-filter:blur(3px);cursor:zoom-out}.homework-image-modal-card{position:relative;z-index:1;display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1040px,100%);height:min(88vh,780px);overflow:hidden;border:1px solid rgba(226,232,240,.26);border-radius:1rem;background:#0f172a;box-shadow:0 28px 70px rgba(0,0,0,.5)}.homework-image-modal-card>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.72rem .85rem;border-bottom:1px solid rgba(226,232,240,.16);color:#f8fafc}.homework-image-modal-card header strong{font-size:.74rem}.homework-image-modal-card header>div{display:flex;align-items:center;gap:.35rem}.homework-modal-action,.homework-modal-close,.homework-modal-download{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;border:1px solid rgba(226,232,240,.22);border-radius:.52rem;color:#f8fafc;background:rgba(255,255,255,.08);font-family:inherit;cursor:pointer}.homework-modal-action,.homework-modal-close{width:2rem;font-size:1.1rem}.homework-modal-download{padding:.38rem .6rem;font-size:.64rem;font-weight:800}.homework-modal-action:hover,.homework-modal-close:hover,.homework-modal-download:hover,.homework-modal-action:focus-visible,.homework-modal-close:focus-visible,.homework-modal-download:focus-visible{outline:0;background:rgba(255,255,255,.19)}.homework-image-modal-stage{display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden;padding:1.25rem;background:radial-gradient(circle at center,#1e293b,#020617)}.homework-image-modal-stage.is-zoomed{overflow:auto}.homework-image-modal-stage img{display:block;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;object-fit:contain;transform-origin:center;transition:transform .15s ease;will-change:transform}
@media(max-width:640px){.homework-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-image-modal{padding:.5rem}.homework-image-modal-card{height:calc(100vh - 1rem);border-radius:.8rem}.homework-image-modal-card>header{align-items:flex-start;flex-direction:column;gap:.55rem}.homework-image-modal-card header>div{width:100%;justify-content:flex-end}.homework-modal-download{margin-inline-end:auto}.homework-image-modal-stage{padding:.6rem}}

/* ── Stable panel shell, subtle cart badge and legacy dark-mode bridge ── */
.dashboard-page{padding:clamp(1.35rem,3vw,2.85rem) 0 clamp(2.5rem,5vw,4.5rem);background:var(--rh-page-bg)}
.dashboard-shell{width:100%;max-width:1380px!important;margin-inline:auto!important;padding-inline:clamp(1rem,2.4vw,2rem)!important;box-sizing:border-box}
.dashboard-shell .dashboard-topbar{margin-bottom:1.15rem}.dashboard-shell .dashboard-stat-grid{margin-bottom:1rem}.dashboard-shell .dashboard-grid{align-items:start}
.nav-cart-link{display:inline-flex!important;align-items:center;gap:.28rem;white-space:nowrap}.nav-cart-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:1.05rem;height:1.05rem;padding:0 .22rem;border-radius:999px;color:#fff;background:#e11d48;font-size:.55rem;font-weight:950;line-height:1;box-shadow:0 2px 7px rgba(225,29,72,.28)}.nav-cart-badge[hidden]{display:none!important}.mobile-nav-link .nav-cart-badge{margin-inline-start:.35rem}
.profile-form .profile-label-text{display:inline-flex;align-items:center;gap:.22rem;min-height:1.05rem}.profile-form .profile-label-text .field-required{display:inline;color:#dc2626;line-height:1;vertical-align:baseline}.profile-form .form-input{height:2.7rem;min-height:2.7rem;box-sizing:border-box}.profile-form input[type="email"].form-input{height:2.7rem;min-height:2.7rem}
.dark .bg-white{background:var(--rh-surface)!important}.dark .bg-gray-50,.dark .bg-gray-100{background:var(--rh-surface-alt)!important}.dark .bg-gray-200{background:rgba(148,163,184,.16)!important}.dark .border-gray-100,.dark .border-gray-200,.dark .border-gray-300{border-color:rgba(226,232,240,.14)!important}.dark .text-gray-900,.dark .text-gray-800,.dark .text-gray-700{color:var(--rh-ink)!important}.dark .text-gray-600,.dark .text-gray-500,.dark .text-gray-400{color:var(--rh-muted)!important}.dark .hover\:bg-gray-50:hover,.dark .hover\:bg-gray-100:hover{background:rgba(148,163,184,.12)!important}.dark .shadow-sm,.dark .shadow{box-shadow:0 12px 28px rgba(0,0,0,.2)!important}
@media(max-width:760px){.dashboard-page{padding-top:1rem}.dashboard-shell{padding-inline:1rem!important}.dashboard-shell .dashboard-topbar{gap:.85rem;margin-bottom:.9rem}.dashboard-shell .dashboard-actions{width:100%}.dashboard-shell .dashboard-actions>a,.dashboard-shell .dashboard-actions form{flex:1}.dashboard-shell .dashboard-actions>a,.dashboard-shell .dashboard-actions button{width:100%;justify-content:center}}

/* جزئیات مالی سفارش، رسید خصوصی و حذف بسته */
.bundle-form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.pending-payment-body{grid-template-columns:minmax(0,1.5fr) minmax(12rem,.75fr) auto!important;align-items:start}.pending-order-items>ul,.pending-bundle-members ul,.admin-order-item-list{list-style:none;margin:.55rem 0 0;padding:0}.pending-order-item,.admin-order-item{border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface-alt);padding:.7rem .75rem}.pending-order-item+.pending-order-item,.admin-order-item+.admin-order-item{margin-top:.5rem}.pending-order-item__title,.pending-order-item__facts,.admin-order-item>div:first-child,.admin-order-item__facts{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem .7rem}.pending-order-item__title strong,.admin-order-item strong{color:var(--rh-ink);font-size:.83rem;font-weight:900}.pending-order-item__facts,.admin-order-item__facts{margin-top:.5rem;color:var(--rh-muted);font-size:.7rem;line-height:1.75}.pending-order-item__facts b,.admin-order-item__facts b{color:var(--rh-ink);font-weight:850}.pending-bundle-members{margin:.55rem 0 0;padding:.55rem .65rem;border-radius:.6rem;background:rgba(79,70,229,.07);color:var(--rh-muted);font-size:.71rem;line-height:1.8}.pending-bundle-members>span{color:var(--rh-ink);font-weight:850}.pending-bundle-members ul{display:flex;flex-wrap:wrap;gap:.3rem .45rem;margin-top:.28rem}.pending-bundle-members li{padding:.1rem .38rem;border:1px solid rgba(79,70,229,.16);border-radius:.45rem;background:var(--rh-surface);color:var(--rh-ink)}.admin-order-products{grid-column:1/-1;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--rh-border)}.admin-order-item-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:.6rem}.admin-order-item{display:block}.admin-order-item__members{margin:.55rem 0 0;color:var(--rh-muted);font-size:.71rem;line-height:1.8}.order-status-chip.is-course{background:#dbeafe;color:#1d4ed8}.order-status-chip.is-bundle{background:#ede9fe;color:#6d28d9}.order-status-chip.is-upgrade{background:#d1fae5;color:#047857}.private-image-modal[hidden]{display:none!important}.private-image-modal{position:fixed;z-index:1400;inset:0;display:grid;place-items:center;padding:1rem}.private-image-modal__backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.68);backdrop-filter:blur(4px);cursor:default}.private-image-modal__card{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);width:min(72rem,100%);height:min(49rem,calc(100vh - 2rem));overflow:hidden;border:1px solid rgba(255,255,255,.24);border-radius:1.1rem;background:var(--rh-surface);box-shadow:0 30px 90px rgba(2,6,23,.46)}.private-image-modal__card header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem .95rem;border-bottom:1px solid var(--rh-border);color:var(--rh-ink)}.private-image-modal__card header>div{display:flex;gap:.42rem}.private-image-modal__action,.private-image-modal__close{display:grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid var(--rh-border);border-radius:.6rem;background:var(--rh-surface-alt);color:var(--rh-ink);font:inherit;font-size:1.25rem;line-height:1;cursor:pointer}.private-image-modal__close{border-color:#fecdd3;background:#fff1f2;color:#be123c;font-size:1.55rem}.private-image-modal__stage{display:grid;place-items:center;min-height:0;overflow:auto;padding:1rem;background:rgba(15,23,42,.035)}.private-image-modal__stage img{display:block;max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;transition:transform .16s ease}.private-image-modal__status{margin:0;color:var(--rh-muted);font-size:.85rem}.dark .pending-order-item,.dark .admin-order-item{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.045)}.dark .pending-bundle-members{background:rgba(129,140,248,.13)}.dark .pending-bundle-members li{border-color:rgba(165,180,252,.26);background:rgba(255,255,255,.045)}.dark .order-status-chip.is-course{background:rgba(59,130,246,.2);color:#bfdbfe}.dark .order-status-chip.is-bundle{background:rgba(139,92,246,.22);color:#ddd6fe}.dark .order-status-chip.is-upgrade{background:rgba(16,185,129,.2);color:#a7f3d0}.dark .private-image-modal__card{border-color:rgba(255,255,255,.14);background:var(--rh-surface)}.dark .private-image-modal__stage{background:rgba(2,6,23,.28)}.dark .private-image-modal__action{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:var(--rh-ink)}.dark .private-image-modal__close{border-color:rgba(251,113,133,.4);background:rgba(190,24,93,.2);color:#fecdd3}@media(max-width:900px){.pending-payment-body{grid-template-columns:1fr!important}.pending-receipt,.pending-transfer-info{margin-top:.2rem}.admin-order-item-list{grid-template-columns:1fr}}@media(max-width:560px){.bundle-form-actions{align-items:stretch;flex-direction:column}.bundle-form-actions>*{width:100%}.pending-order-item__facts,.admin-order-item__facts{align-items:flex-start;flex-direction:column;gap:.15rem}.private-image-modal{padding:.45rem}.private-image-modal__card{height:calc(100vh - .9rem);border-radius:.85rem}.private-image-modal__card header{padding:.7rem}.private-image-modal__stage{padding:.55rem}}


/* ── Course, lesson and profile regressions — 2026-08-25 ───────────── */
/* هیچ display grid یا rule عمومی نباید ویژگی native hidden پنل‌های پروفایل را خنثی کند. */
[data-profile-panel][hidden]{display:none!important}

/* فهرست جلسات باید تمام جلسات را در جریان طبیعی صفحه نمایش دهد، نه در scroll داخلی. */
.lesson-navigation{max-height:none!important;overflow:visible!important}

/* کنتراست کامل فهرست و جزئیات دوره در حالت تاریک. */
.dark .catalog-card:hover .catalog-title{color:#c7d2fe!important}.dark .catalog-title,.dark .course-title-large,.dark .course-section-title,.dark .course-purchase h2,.dark .course-fact strong{color:#f8fafc!important}.dark .catalog-description,.dark .catalog-meta,.dark .course-intro,.dark .course-fact{color:#cbd5e1!important}.dark .catalog-price,.dark .price-row.is-highlight strong,.dark .course-choice-rich strong{color:#c7d2fe!important}.dark .course-category-title{border-color:#818cf8!important;color:#c7d2fe!important}.dark .course-choice{border-color:rgba(226,232,240,.2)!important;color:#f8fafc!important;background:rgba(30,41,59,.68)}.dark .course-choice:hover{border-color:rgba(165,180,252,.64)!important;background:rgba(79,70,229,.2)!important}.dark .course-choice-rich b{color:#f8fafc!important}.dark .course-choice-rich del{color:#cbd5e1!important}.dark .course-term-help{color:#cbd5e1!important}.dark .course-term-switch button:not(.is-active){color:#cbd5e1!important}

/* متن، روش و رقم قیمت در کارت‌های بستهٔ ویژه نیز باید مستقل از رنگ‌های light خوانا باشند. */
.dark .special-bundle-card-head{color:#c7d2fe!important}.dark .special-bundle-card-head span{color:#ddd6fe!important;background:rgba(79,70,229,.3)!important}.dark .special-bundle-card h3,.dark .special-bundle-course-title,.dark .bundle-methods label{color:#f8fafc!important}.dark .special-bundle-card>p{color:#cbd5e1!important}.dark .special-bundle-course-method{color:#fde68a!important}.dark .special-bundle-card form{border-color:rgba(226,232,240,.16)!important}.dark .bundle-price strong{color:#c7d2fe!important}.dark .bundle-price del{color:#cbd5e1!important}

/* حالت hover فهرست جلسات در dark mode نباید متن را تیره کند. */
.dark .lesson-navigation a:hover{color:#f8fafc!important;background:rgba(99,102,241,.17)!important}


/* Navigation, support and inline CMS controls */
/* Rich media captions, lazy image layout and animated home hero */
.rh-media-figure,.rh-video-figure,.rh-gallery{margin:1.25rem auto;max-inline-size:100%}.rh-media-figure>img,.rh-gallery-grid img{display:block;max-inline-size:100%;block-size:auto;margin-inline:auto}.rh-media-figure figcaption,.rh-video-figure figcaption,.rh-gallery>figcaption,.rh-media-caption{color:var(--rh-muted,#6b7280);font-size:.9rem;line-height:1.75;margin:.55rem auto 0;max-inline-size:70ch;text-align:center}/* گالری: سلول‌های هم‌اندازه با نسبت یکسان؛ تصویر داخل سلول crop می‌شود
   و کلیک، تصویر کامل را در lightbox نشان می‌دهد. ستون‌ها:
   2 در موبایل → 3 در تبلت → 4 در دسکتاپ (بیشتر از 4 نه، تا سلول‌ها ریز نشوند) */
.rh-gallery-grid{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.rh-gallery-grid .rh-gallery-item{margin:0}
.rh-gallery-grid .rh-gallery-item img{aspect-ratio:4/3;block-size:auto;inline-size:100%;object-fit:cover;object-position:center;border-radius:.6rem}
.rh-gallery-grid .rh-gallery-item figcaption{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:.72rem;line-height:1.5;margin-block-start:.3rem}
@media(min-width:600px){.rh-gallery-grid{gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:900px){.rh-gallery-grid{gap:1.25rem;grid-template-columns:repeat(4,minmax(0,1fr))}}.rh-gallery-grid .rh-media-figure{margin:0}.rh-video-figure .rh-video-embed{margin-block:0}.rh-video-figure video{display:block;width:100%;max-inline-size:100%;border-radius:.75rem;overflow-clip-margin:content-box;clip-path:none}.rh-video-figure .rh-video-embed video::-webkit-media-controls-panel{border-radius:.75rem}.rh-video-figure .rh-video-embed video::-webkit-media-controls-current-time-display,.rh-video-figure .rh-video-embed video::-webkit-media-controls-time-remaining-display{visibility:visible}.rh-media-details{display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-block-end:.75rem;width:100%}.rh-media-details label{display:grid;gap:.35rem;font-size:.88rem}.rh-media-details input{min-inline-size:0}.rh-media-item-captions{display:grid;gap:.55rem;width:100%;max-height:min(38vh,320px);overflow-y:auto;padding:.7rem .9rem;border-top:1px solid var(--rh-border,#dbe3ee);background:var(--rh-surface-alt,#f8fafc)}.rh-media-item-captions[hidden]{display:none}.rh-media-item-captions-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem}.rh-media-item-captions-head strong{font-size:.78rem;color:var(--rh-ink,#0f172a)}.rh-media-item-captions-head small{color:var(--rh-muted,#6b7280);font-size:.64rem}.rh-media-item-caption-list{display:grid;gap:.5rem}.rh-media-item-caption-row{display:grid;grid-template-columns:3.4rem minmax(0,1fr) auto;align-items:center;gap:.6rem;border:1px solid var(--rh-border,#dbe3ee);border-radius:.6rem;padding:.4rem .5rem;background:var(--rh-surface,#fff)}.rh-media-item-thumb{display:grid;place-items:center;width:3.4rem;height:2.6rem;overflow:hidden;border-radius:.4rem;background:#e2e8f0}.rh-media-item-thumb img,.rh-media-item-thumb video{width:100%;height:100%;object-fit:cover}.rh-media-item-caption-field{display:grid;gap:.25rem;min-width:0;font-size:.72rem;font-weight:700;color:var(--rh-ink,#0f172a)}.rh-media-item-caption-label{display:flex;align-items:baseline;gap:.35rem;overflow:hidden;white-space:nowrap}.rh-media-item-caption-label small{overflow:hidden;color:var(--rh-muted,#6b7280);font-size:.6rem;font-weight:600;text-overflow:ellipsis}.rh-media-item-caption-field input{min-inline-size:0;width:100%;padding:.42rem .55rem;border:1px solid var(--rh-border,#c7d0dd);border-radius:.45rem;background:var(--rh-surface,#fff);color:var(--rh-ink,#0f172a);font:inherit;font-size:.72rem;font-weight:600}.rh-media-item-caption-field input::placeholder{color:#94a3b8;font-weight:500}.rh-media-item-caption-field input:focus{border-color:#6366f1;outline:2px solid rgba(99,102,241,.18);outline-offset:0}.rh-media-item-remove{display:grid;place-items:center;width:1.7rem;height:1.7rem;border:1px solid var(--rh-border,#dbe3ee);border-radius:.45rem;color:#be123c;background:var(--rh-surface,#fff);font-size:.8rem;cursor:pointer}.rh-media-item-remove:hover{border-color:#be123c;background:#fff1f2}.rh-animated-hero{align-items:stretch;background:#111;border-radius:1.25rem;display:grid;gap:.18rem;grid-template-columns:repeat(auto-fit,minmax(5.5rem,1fr));max-block-size:32rem;min-block-size:22rem;overflow:hidden}.rh-animated-hero-column{animation:rh-art-stream 28s linear infinite;display:grid;grid-auto-rows:8.25rem;gap:.18rem;min-block-size:200%}.rh-animated-hero-column.is-reverse{animation-direction:reverse;animation-duration:34s}.rh-animated-hero-column a{background:#161616;display:block;overflow:hidden}.rh-animated-hero-column img{block-size:100%;display:block;inline-size:100%;object-fit:cover;transition:transform .35s ease}.rh-animated-hero-column a:hover img,.rh-animated-hero-column a:focus-visible img{transform:scale(1.06)}@keyframes rh-art-stream{from{transform:translateY(0)}to{transform:translateY(-50%)}}@media(max-width:640px){.rh-animated-hero{border-radius:.9rem;grid-template-columns:repeat(3,minmax(0,1fr));max-block-size:22rem;min-block-size:17rem}.rh-animated-hero-column{grid-auto-rows:6rem}.rh-media-details{grid-template-columns:1fr}.rh-media-item-captions{max-height:34vh;padding:.6rem}.rh-media-item-caption-row{grid-template-columns:2.6rem minmax(0,1fr) auto;gap:.45rem;padding:.35rem}.rh-media-item-thumb{width:2.6rem;height:2rem}.rh-media-item-remove{width:2.1rem;height:2.1rem}}@media(prefers-reduced-motion:reduce){.rh-animated-hero-column{animation-play-state:paused}}

/* ناوبری خلوت با drawer مشترک در دسکتاپ و موبایل */
.nav-desktop{display:none!important}.site-nav{position:sticky;z-index:500;top:0;border-bottom:1px solid var(--rh-border);background:color-mix(in srgb,var(--rh-surface) 92%,transparent);backdrop-filter:blur(14px)}.nav-bar{min-height:4.7rem}.nav-actions--compact{margin-inline-start:auto}.nav-actions--compact .nav-dashboard,.nav-actions--compact .nav-login,.nav-actions--compact .nav-cta{min-height:2.35rem;white-space:nowrap}.site-menu-trigger{border-color:var(--rh-border)!important;background:var(--rh-surface-alt)!important}.site-navigation{position:absolute;z-index:510;top:calc(100% + .55rem);inset-inline-start:max(1rem,calc((100% - 1380px)/2));width:min(31rem,calc(100vw - 2rem));padding:.45rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 20px 46px rgba(15,23,42,.18)}.site-navigation-inner{display:grid;gap:.6rem;padding:.3rem}.site-navigation-heading{display:grid;gap:.16rem;padding:.65rem .72rem;border-bottom:1px solid var(--rh-border)}.site-navigation-heading strong{color:var(--rh-ink);font-size:.86rem;font-weight:900}.site-navigation-heading span{color:var(--rh-muted);font-size:.66rem}.site-navigation-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.28rem}.site-navigation-links>a,.site-navigation-account>a{display:flex;align-items:center;min-height:2.45rem;padding:.48rem .65rem;border-radius:.65rem;color:var(--rh-ink);font-size:.76rem;font-weight:800;text-decoration:none}.site-navigation-links>a:hover,.site-navigation-account>a:hover{background:var(--rh-surface-alt);color:var(--rh-primary)}.site-navigation-account{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.28rem;padding-top:.4rem;border-top:1px solid var(--rh-border)}.site-navigation-account>a:first-child{grid-column:span 2}.site-navigation-logout{padding-top:.4rem;border-top:1px solid var(--rh-border)}.site-navigation-logout button{width:100%;min-height:2.45rem;border:1px solid #fecaca;border-radius:.65rem;color:#b91c1c;background:#fff1f2;font:inherit;font-size:.74rem;font-weight:850;cursor:pointer}.dark .site-nav{background:color-mix(in srgb,var(--rh-surface) 90%,transparent)}.dark .site-navigation{border-color:rgba(255,255,255,.13);box-shadow:0 20px 46px rgba(0,0,0,.36)}.dark .site-menu-trigger{border-color:rgba(255,255,255,.15)!important;background:rgba(255,255,255,.06)!important}.dark .site-navigation-logout button{border-color:rgba(248,113,113,.38);color:#fecaca;background:rgba(127,29,29,.24)}

/* شبکه‌های اجتماعی رسمی و پشتیبانی تلگرام */
.footer-social-links{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}.footer-social-links a{display:inline-flex;align-items:center;gap:.32rem;min-height:2rem;padding:.35rem .55rem;border:1px solid rgba(255,255,255,.18);border-radius:.55rem;color:#e0e7ff;font-size:.65rem;font-weight:800;text-decoration:none;transition:background .16s ease,transform .16s ease}.footer-social-links a:hover{color:#fff;background:rgba(255,255,255,.13);transform:translateY(-1px)}.footer-social-links span{font-size:.94rem;line-height:1}.telegram-support-float{position:fixed;z-index:450;bottom:1.15rem;left:1.15rem;display:inline-flex;align-items:center;gap:.48rem;min-height:3rem;padding:.55rem .78rem;border:1px solid rgba(255,255,255,.34);border-radius:999px;color:#fff!important;background:linear-gradient(135deg,#0284c7,#38bdf8);box-shadow:0 14px 30px rgba(2,132,199,.32);font-size:.72rem;font-weight:900;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.telegram-support-float:hover{color:#fff!important;transform:translateY(-2px);box-shadow:0 18px 35px rgba(2,132,199,.43)}.telegram-support-float svg{width:1.25rem;height:1.25rem;fill:currentColor}.site-support-settings-card{display:grid;gap:1rem;max-width:46rem;padding:1.2rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 9px 23px rgba(15,23,42,.05)}.site-support-toggle{display:flex;align-items:flex-start;gap:.7rem;padding-bottom:1rem;border-bottom:1px solid var(--rh-border);cursor:pointer}.site-support-toggle input{width:1.05rem;height:1.05rem;margin-top:.16rem;accent-color:var(--rh-primary)}.site-support-toggle span{display:grid;gap:.22rem}.site-support-toggle strong{color:var(--rh-ink);font-size:.8rem}.site-support-toggle small,.site-support-settings-card .form-label small{color:var(--rh-muted);font-size:.67rem;line-height:1.7}.site-support-preview{display:grid;gap:.25rem;padding:.75rem;border-radius:.7rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.68rem}.site-support-preview a{overflow:hidden;color:var(--rh-primary);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.dark .site-support-settings-card{box-shadow:none}


@media(max-width:720px){.nav-bar{min-height:4.25rem}.nav-brand-tagline{display:none}.nav-actions--compact{gap:.28rem}.nav-actions--compact .nav-dashboard,.nav-actions--compact .nav-login{font-size:0;min-width:2.35rem;padding:.45rem}.nav-actions--compact .nav-dashboard:before{content:'داشبورد';font-size:.64rem}.nav-actions--compact .nav-login:before{content:'سبد';font-size:.64rem}.site-navigation{inset-inline-start:1rem;width:calc(100vw - 2rem)}.site-navigation-links,.site-navigation-account{grid-template-columns:1fr}.site-navigation-account>a:first-child{grid-column:auto}.telegram-support-float{bottom:.75rem;left:.75rem;min-height:2.8rem;padding:.5rem .65rem}.telegram-support-float span{display:none}.site-support-settings-card{padding:.9rem}.footer-social-links a{font-size:.61rem}}


/* اصلاحات دسترس‌پذیری و کنترل‌های پایدار — تحویل 2026-08-21 */
/* toast باید بالاتر از header/drawer و پایین‌تر از آن، همواره در viewport دیده شود. */
.site-nav{z-index:900!important}.toast-stack{z-index:2200!important;top:max(5.35rem,calc(env(safe-area-inset-top) + 4.9rem))!important}.site-toast{isolation:isolate}

/* CTA در hero تیره: متن و پس‌زمینهٔ مستقل برای کنتراست قابل‌خواندن در mobile و desktop. */
.hero-actions .button-secondary{border:1px solid rgba(255,255,255,.48)!important;color:#fff!important;background:rgba(15,23,42,.48)!important;box-shadow:0 8px 20px rgba(2,6,23,.2)!important}.hero-actions .button-secondary:hover,.hero-actions .button-secondary:focus-visible{border-color:#fff!important;color:#111827!important;background:#fff!important;outline:0}

/* CTA احراز هویت داخل drawer نیز همان کنتراست دکمهٔ بیرونی را نگه می‌دارد. */
.site-navigation-account .nav-cta{justify-content:center;border:1px solid transparent;color:#fff!important;background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;box-shadow:0 6px 14px rgba(79,70,229,.2)}.site-navigation-account .nav-cta:hover,.site-navigation-account .nav-cta:focus-visible{color:#fff!important;background:linear-gradient(135deg,#4338ca,#6d28d9)!important}

/* در desktop drawer زیر همبرگرِ سمت چپ باز شود؛ mobile همان رفتار راست‌چین مطلوب را نگه می‌دارد. */
@media(min-width:721px){.site-navigation{inset-inline-start:auto!important;left:max(1rem,calc((100% - 1380px)/2))!important;right:auto!important;transform-origin:top left}}
@media(max-width:640px){.toast-stack{top:max(4.8rem,calc(env(safe-area-inset-top) + 4.2rem))!important}}

/* لوگوهای SVG footer */
.footer-social-links a{gap:.4rem}.footer-social-links a>svg{width:1rem;height:1rem;flex:0 0 1rem}.footer-social-links a:nth-child(1)>svg{fill:none;stroke:currentColor;stroke-width:1.8}.footer-social-links a:nth-child(2)>svg{fill:currentColor}.footer-social-links a:nth-child(3)>svg{fill:none;stroke:currentColor;stroke-width:1.35}.footer-social-links .aparat-center-dot{fill:currentColor;stroke:none}


/* مبلغ و خلاصهٔ پرداخت در dark-mode هرگز با سطح تیره یکی نشود. */
.dark .cart-summary,.dark .cart-summary-card,.dark .cart-total-card,.dark .cart-checkout-summary{border-color:rgba(165,180,252,.32)!important;background:#172033!important}.dark .cart-summary strong,.dark .cart-summary-total,.dark .cart-total,.dark .cart-total strong,.dark .cart-checkout-summary strong{color:#f8fafc!important}.dark .cart-summary small,.dark .cart-total small,.dark .cart-summary-label,.dark .cart-total-label{color:#cbd5e1!important}.dark .cart-summary [class*="amount"],.dark .cart-total [class*="amount"],.dark .cart-summary [class*="price"],.dark .cart-total [class*="price"]{color:#fde68a!important}
.dark #cart-summary.cart-summary-card{border-color:rgba(165,180,252,.32)!important;background:#172033!important}.dark #cart-summary h2,.dark #cart-summary .cart-summary-lines>div>span{color:#e2e8f0!important}.dark #cart-summary .cart-summary-lines>div>strong{color:#f8fafc!important}.dark #cart-summary .cart-summary-lines .is-saving>strong{color:#86efac!important}.dark #cart-summary .cart-summary-total{border-color:rgba(253,230,138,.28)!important;background:rgba(120,53,15,.26)!important}.dark #cart-summary .cart-summary-total span{color:#fde68a!important}.dark #cart-summary .cart-summary-total strong{color:#fff!important;text-shadow:0 1px 0 rgba(0,0,0,.25)}


/* مدیریت تمرین، moderation و پروفایل کامل هنرجو */
.homework-admin-tabs{display:flex;align-items:center;gap:.45rem;margin:0 0 1rem;padding:.4rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface-alt)}.homework-admin-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.4rem;padding:.45rem .8rem;border:1px solid transparent;border-radius:.58rem;color:var(--rh-muted);background:transparent;font:inherit;font-size:.71rem;font-weight:850;cursor:pointer}.homework-admin-tabs button:hover{color:var(--rh-primary)}.homework-admin-tabs button.is-active{border-color:rgba(79,70,229,.28);color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 6px 14px rgba(79,70,229,.18)}.homework-admin-tabs button span{display:inline-grid;place-items:center;min-width:1.2rem;height:1.2rem;border-radius:999px;color:inherit;background:rgba(255,255,255,.16);font-size:.57rem}.homework-review-section .dash-section-head p{margin:.24rem 0 0;color:var(--rh-muted);font-size:.68rem}.homework-student-heading{display:flex;align-items:center;gap:.55rem}.homework-student-heading>div{display:grid;gap:.12rem}.homework-student-heading img,.homework-student-avatar-placeholder{display:grid;place-items:center;flex:0 0 2.35rem;width:2.35rem;height:2.35rem;overflow:hidden;border:1px solid var(--rh-border);border-radius:50%;color:var(--rh-primary);background:var(--rh-surface-alt);font-size:.78rem;font-weight:900}.homework-student-heading img{object-fit:cover}.homework-student-profile{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.42rem;margin:.68rem 0;padding:.62rem;border:1px solid var(--rh-border);border-radius:.7rem;background:var(--rh-surface-alt)}.homework-student-profile>div{display:grid;gap:.12rem;min-width:0}.homework-student-profile dt{color:var(--rh-muted);font-size:.56rem;font-weight:750}.homework-student-profile dd{overflow:hidden;margin:0;color:var(--rh-ink);font-size:.65rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.homework-moderation-delete{display:flex;justify-content:flex-end;margin:.55rem 0}.dash-feedback-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}.dash-feedback-head>div:first-child{display:flex;align-items:baseline;flex-wrap:wrap;gap:.38rem}.dash-feedback-head span{color:var(--rh-muted);font-size:.57rem}.feedback-admin-actions{display:flex;align-items:flex-start;gap:.35rem}.feedback-admin-actions details{position:relative}.feedback-admin-actions summary{list-style:none;min-height:1.85rem;padding:.32rem .48rem;border:1px solid var(--rh-border);border-radius:.48rem;color:var(--rh-primary);background:var(--rh-surface);font-size:.59rem;font-weight:850;cursor:pointer}.feedback-admin-actions summary::-webkit-details-marker{display:none}.feedback-admin-actions details[open]>summary{border-color:var(--rh-primary)}.feedback-admin-actions details form{position:absolute;z-index:35;top:calc(100% + .35rem);inset-inline-end:0;display:grid;gap:.4rem;width:min(22rem,calc(100vw - 3rem));padding:.55rem;border:1px solid var(--rh-border);border-radius:.65rem;background:var(--rh-surface);box-shadow:0 14px 28px rgba(15,23,42,.18)}.feedback-admin-actions textarea{min-height:5.5rem;resize:vertical;border:1px solid var(--rh-border);border-radius:.5rem;padding:.5rem;color:var(--rh-ink);background:var(--rh-surface-alt);font:inherit;font-size:.66rem;line-height:1.75}.feedback-admin-actions .button-danger-soft,.homework-moderation-delete .button-danger-soft{min-height:1.85rem;padding:.3rem .48rem;font-size:.59rem}.dash-response-form--stacked{grid-template-columns:1fr}.dash-response-form--stacked button{justify-self:start}.teacher-name-visibility{display:flex;align-items:center;gap:.38rem;color:var(--rh-muted);font-size:.64rem;font-weight:750;cursor:pointer}.teacher-name-visibility input{accent-color:var(--rh-primary)}.admin-avatar-summary>div{display:grid;gap:.28rem}.admin-avatar-summary strong{color:var(--rh-ink);font-size:.76rem}.admin-avatar-summary .button-danger-soft{justify-self:start;margin-top:.15rem}
.dark .homework-admin-tabs,.dark .homework-student-profile{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.045)}.dark .homework-student-heading img,.dark .homework-student-avatar-placeholder{border-color:rgba(255,255,255,.14);color:#c7d2fe;background:#1e293b}.dark .feedback-admin-actions details form{border-color:rgba(255,255,255,.16);background:#172033;box-shadow:0 14px 28px rgba(0,0,0,.35)}.dark .feedback-admin-actions summary,.dark .feedback-admin-actions textarea{border-color:rgba(255,255,255,.16);color:#e2e8f0;background:#1e293b}
@media(max-width:900px){.homework-student-profile{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.homework-admin-tabs{align-items:stretch;flex-direction:column}.homework-admin-tabs button{width:100%}.homework-student-profile{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-feedback-head{align-items:stretch;flex-direction:column}.feedback-admin-actions{justify-content:flex-end}.homework-moderation-delete{justify-content:stretch}.homework-moderation-delete .button-danger-soft{width:100%}.dash-response-form--stacked button{width:100%}}


/* اصلاحات ارتباط، عضویت و تمرین */
.contact-method-icon{display:grid!important;place-items:center!important;flex:0 0 2.55rem;width:2.55rem!important;height:2.55rem!important;line-height:0!important;overflow:hidden;border-radius:.78rem}.contact-method-icon svg{display:block!important;width:1.28rem!important;height:1.28rem!important;max-width:1.28rem;max-height:1.28rem;fill:none;stroke:currentColor}.contact-method-icon--telegram{color:#fff!important;background:linear-gradient(135deg,#29a9e0,#168ac4)!important}.contact-method-icon--telegram svg{fill:currentColor!important;stroke:none!important}.register-full-name-label>.profile-label-text{display:inline-flex;align-items:center;gap:.22rem;min-height:1.05rem;line-height:1.25}.register-full-name-label .field-required{display:inline;flex:0 0 auto;line-height:1;vertical-align:baseline}.homework-image-modal{z-index:3300!important}.homework-submit-validation{display:none;margin:.1rem 0 0;color:#b91c1c;font-size:.68rem;font-weight:800;line-height:1.65}.homework-submit-form.is-file-limit-reached .homework-submit-validation{display:block}.homework-submit-form.is-file-limit-reached .legacy-form-action{opacity:.56;cursor:not-allowed}.dark .homework-submit-validation{color:#fca5a5}


/* فیلتر تاریخچهٔ مالی و جلوگیری از هم‌پوشانی سبد */
.student-orders-filter{display:grid;gap:.9rem;margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 8px 20px rgba(15,23,42,.04)}.student-orders-filter h2{margin:0;color:var(--rh-ink);font-size:.95rem}.student-orders-filter p{margin:.3rem 0 0;color:var(--rh-muted);font-size:.68rem;line-height:1.75}.student-orders-filter-form{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:.65rem}.student-orders-filter-form .form-label{display:grid;gap:.32rem;margin:0;color:var(--rh-ink);font-size:.64rem;font-weight:800}.student-orders-filter-form .form-input{min-width:0;min-height:2.45rem;padding:.42rem .58rem;border-color:var(--rh-border);color:var(--rh-ink);background:var(--rh-surface-alt);font:inherit;font-size:.68rem}.student-orders-filter-actions{display:flex;align-items:center;gap:.38rem}.student-orders-filter-actions .legacy-form-action,.student-orders-filter-actions .button-soft{flex:1;min-height:2.45rem;padding:.42rem .5rem;white-space:nowrap;font-size:.65rem}.student-orders-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding-top:.72rem;border-top:1px solid var(--rh-border);color:var(--rh-muted);font-size:.66rem}.student-orders-filter-summary strong{color:var(--rh-primary);font-size:.76rem}.student-orders-pagination{display:flex;align-items:center;justify-content:center;gap:.7rem;margin:1.15rem 0 0;color:var(--rh-muted);font-size:.7rem;font-weight:800}.student-orders-pagination .button-soft{min-height:2.25rem;padding:.4rem .68rem}.student-orders-pagination .is-disabled{pointer-events:none;opacity:.42}.course-cart-overlap-note{border-color:rgba(245,158,11,.35)!important;color:#92400e!important;background:#fffbeb!important}.course-cart-overlap-note strong{color:#78350f}.dark .student-orders-filter{border-color:rgba(255,255,255,.14);background:#172033;box-shadow:none}.dark .student-orders-filter-form .form-input{border-color:rgba(255,255,255,.14);color:#e2e8f0;background:#1e293b}.dark .student-orders-filter-summary{border-color:rgba(255,255,255,.13)}.dark .course-cart-overlap-note{border-color:rgba(251,191,36,.32)!important;color:#fde68a!important;background:rgba(120,53,15,.34)!important}.dark .course-cart-overlap-note strong{color:#fef3c7}
@media(max-width:1080px){.student-orders-filter-form{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.student-orders-filter{padding:.85rem}.student-orders-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.student-orders-filter-actions{grid-column:1/-1}.student-orders-filter-summary{align-items:flex-start;flex-direction:column}.student-orders-pagination{align-items:stretch;flex-direction:column;text-align:center}.student-orders-pagination .button-soft{width:100%}}@media(max-width:420px){.student-orders-filter-form{grid-template-columns:1fr}}


/* پاسخ چندرسانه‌ای تمرین: تصویر خصوصی، صوت بومی و PDF قابل‌دانلود */
.homework-feedback-upload-form{display:grid;gap:.65rem;margin-top:.8rem;padding:.72rem;border:1px solid var(--rh-border);border-radius:.78rem;background:var(--rh-surface-alt)}.homework-feedback-upload-form textarea{width:100%;min-height:5.8rem;resize:vertical;border:1px solid var(--rh-border);border-radius:.58rem;padding:.6rem;color:var(--rh-ink);background:var(--rh-surface);font:inherit;font-size:.7rem;line-height:1.8}.homework-feedback-upload-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.homework-feedback-upload-fields label{display:grid;gap:.25rem;min-width:0;padding:.5rem;border:1px dashed var(--rh-border);border-radius:.58rem;color:var(--rh-ink);font-size:.64rem;font-weight:850}.homework-feedback-upload-fields small{color:var(--rh-muted);font-size:.56rem;font-weight:650;line-height:1.6}.homework-feedback-upload-fields input[type=file]{width:100%;max-width:100%;color:var(--rh-muted);font:inherit;font-size:.56rem}.homework-feedback-upload-form.is-file-limit-reached [data-feedback-file-error]{display:block}.homework-feedback-upload-form.is-file-limit-reached [data-feedback-submit-button]{opacity:.55;cursor:not-allowed}.homework-feedback-media{display:flex;align-items:flex-start;flex-wrap:wrap;gap:.55rem;margin:.65rem 0}.homework-feedback-media .homework-image-trigger{width:5rem}.homework-feedback-media .homework-image-trigger img{width:100%;height:4.2rem;object-fit:cover}.homework-feedback-media .homework-image-trigger span{display:block;margin-top:.18rem;font-size:.54rem}.homework-audio-player{width:min(100%,22rem);height:2.35rem}.homework-download-link{display:inline-flex;align-items:center;min-height:2.35rem;padding:.42rem .65rem;border:1px solid rgba(79,70,229,.28);border-radius:.56rem;color:var(--rh-primary);background:color-mix(in srgb,var(--rh-surface) 80%,#eef2ff);font-size:.64rem;font-weight:850;text-decoration:none}.homework-download-link:hover{border-color:var(--rh-primary);color:#fff;background:var(--rh-primary)}.dark .homework-feedback-upload-form{border-color:rgba(255,255,255,.14);background:#172033}.dark .homework-feedback-upload-form textarea{border-color:rgba(255,255,255,.16);color:#e2e8f0;background:#1e293b}.dark .homework-feedback-upload-fields label{border-color:rgba(255,255,255,.17);color:#e2e8f0}.dark .homework-download-link{border-color:rgba(165,180,252,.34);color:#c7d2fe;background:rgba(79,70,229,.16)}.dark .homework-download-link:hover{color:#fff;background:#4f46e5}
@media(max-width:760px){.homework-feedback-upload-fields{grid-template-columns:1fr}.homework-feedback-upload-form [data-feedback-submit-button]{width:100%}.homework-feedback-media{flex-direction:column;align-items:stretch}.homework-audio-player{width:100%}}


/* پیشرفت دوره و فرم ارزیابی پایان دوره */
.course-progress-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(9rem,.65fr);align-items:center;gap:1rem;margin:1rem 0;padding:.9rem 1rem;border:1px solid rgba(79,70,229,.22);border-radius:.9rem;background:linear-gradient(135deg,#f5f3ff,#eef2ff)}.course-progress-card>div:first-child{display:grid;gap:.2rem}.course-progress-card span{color:#5b21b6;font-size:.67rem;font-weight:900}.course-progress-card strong{color:#3730a3;font-size:1.2rem}.course-progress-card small,.course-progress-card p{margin:0;color:#5b6478;font-size:.66rem;line-height:1.75}.course-progress-card p b{color:#4338ca}.course-progress-track{height:.55rem;overflow:hidden;border-radius:999px;background:rgba(79,70,229,.15)}.course-progress-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4f46e5,#8b5cf6);transition:width .3s ease}.lesson-navigation{margin-top:.75rem;max-height:500px;overflow:auto}.lesson-navigation a{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .65rem;border-inline-start:3px solid transparent;border-radius:0 .65rem .65rem 0;color:var(--rh-muted);font-size:.75rem;font-weight:600;line-height:1.6;transition:all .15s ease}.lesson-navigation a:hover{background:#f8fafc;color:var(--rh-ink)}.lesson-navigation a span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-navigation a small{flex-shrink:0;font-size:.6rem;font-weight:700;white-space:nowrap}.lesson-navigation a.is-viewed{border-inline-start-color:#16a34a!important;background:rgba(22,163,74,.07)}.lesson-navigation a.is-viewed small{color:#15803d}.lesson-navigation a.is-unviewed small{color:var(--rh-muted)}.lesson-navigation a.is-current{border-inline-start-color:var(--rh-primary)!important;background:#eef2ff}.dark .course-progress-card{border-color:rgba(165,180,252,.3);background:linear-gradient(135deg,#172033,#202554)}.dark .course-progress-card span,.dark .course-progress-card strong,.dark .course-progress-card p b{color:#c7d2fe}.dark .course-progress-card small,.dark .course-progress-card p{color:#cbd5e1}.dark .lesson-navigation a.is-viewed{background:rgba(22,163,74,.13)}.dark .lesson-navigation a.is-viewed small{color:#86efac}
.evaluation-candidate-list,.student-evaluation-list{display:grid;gap:.65rem}.evaluation-candidate-card,.student-evaluation-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem .95rem;border:1px solid var(--rh-border);border-radius:.82rem;background:var(--rh-surface)}.evaluation-candidate-card>div:first-child,.student-evaluation-card>div{display:grid;gap:.22rem;min-width:0}.evaluation-candidate-card strong,.student-evaluation-card h2{margin:0;color:var(--rh-ink);font-size:.79rem;font-weight:900}.evaluation-candidate-card span,.student-evaluation-card p{margin:0;color:var(--rh-muted);font-size:.66rem}.evaluation-candidate-card small{color:var(--rh-primary);font-size:.63rem;font-weight:800}.evaluation-candidate-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.4rem}.evaluation-ready-badge,.evaluation-pending-badge{display:inline-flex;align-items:center;min-height:2rem;padding:.32rem .54rem;border-radius:.5rem;font-size:.59rem;font-weight:900}.evaluation-ready-badge{color:#166534;background:#dcfce7}.evaluation-pending-badge{color:#92400e;background:#fef3c7}.evaluation-criteria-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.evaluation-criterion-card{display:grid;gap:.55rem;padding:.75rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface-alt)}.evaluation-criterion-card h3{margin:0;color:var(--rh-ink);font-size:.76rem}.evaluation-criterion-card>label{display:grid;gap:.27rem;color:var(--rh-ink);font-size:.63rem;font-weight:850}.evaluation-criterion-card .form-input,.evaluation-criterion-card .form-textarea{min-height:2.2rem;color:var(--rh-ink);background:var(--rh-surface);font:inherit;font-size:.67rem}.evaluation-editor-form{display:grid;gap:1rem;max-width:55rem;padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 10px 25px rgba(15,23,42,.05)}.evaluation-editor-form>label{display:grid;gap:.35rem;color:var(--rh-ink);font-size:.7rem;font-weight:900}.evaluation-score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.evaluation-score-grid>label{display:grid;grid-template-columns:minmax(0,1fr) 4.3rem auto;align-items:center;gap:.5rem;padding:.65rem;border:1px solid var(--rh-border);border-radius:.68rem;background:var(--rh-surface-alt)}.evaluation-score-grid span{display:grid;gap:.15rem}.evaluation-score-grid strong{color:var(--rh-ink);font-size:.68rem}.evaluation-score-grid small{color:var(--rh-muted);font-size:.56rem;line-height:1.55}.evaluation-score-grid .form-input{min-height:2.15rem;padding:.3rem;text-align:center;color:var(--rh-ink);background:var(--rh-surface);font:inherit;font-size:.67rem}.evaluation-score-grid em{color:var(--rh-muted);font-size:.57rem;font-style:normal;white-space:nowrap}.evaluation-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--rh-border)}.evaluation-delete-form{margin-top:.65rem}.student-evaluation-card strong{color:var(--rh-primary);font-size:.86rem}.evaluation-certificate{max-width:52rem;margin:1.4rem auto;padding:2rem;border:1px solid #c7d2fe;border-radius:1rem;color:#1f2937;background:#fff;box-shadow:0 18px 44px rgba(30,41,59,.1)}.evaluation-certificate>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:1.1rem;border-bottom:2px solid #e0e7ff}.evaluation-certificate>header>div{display:grid;gap:.22rem}.evaluation-certificate>header span{color:#4f46e5;font-size:.74rem;font-weight:900}.evaluation-certificate h1{margin:0;color:#312e81;font-size:1.35rem}.evaluation-certificate p{margin:0;color:#64748b;font-size:.72rem}.evaluation-certificate dl{display:grid;gap:.42rem;margin:0}.evaluation-certificate dl div{display:grid;gap:.1rem}.evaluation-certificate dt{color:#64748b;font-size:.59rem}.evaluation-certificate dd{margin:0;color:#1e293b;font-size:.68rem;font-weight:800}.evaluation-certificate-score{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:1.1rem 0;padding:.82rem 1rem;border-radius:.75rem;color:#312e81;background:#eef2ff}.evaluation-certificate-score span{font-size:.72rem;font-weight:850}.evaluation-certificate-score strong{font-size:1.3rem}.evaluation-certificate-score small{font-size:.72rem;font-weight:700}.evaluation-score-table{width:100%;border-collapse:collapse;font-size:.7rem}.evaluation-score-table th,.evaluation-score-table td{padding:.62rem .45rem;border-bottom:1px solid #e5e7eb;text-align:right}.evaluation-score-table th{color:#4f46e5;background:#f8fafc;font-size:.62rem}.evaluation-comment{margin-top:1rem;padding:.85rem;border-inline-start:3px solid #6366f1;background:#f8fafc}.evaluation-comment h2{margin:0 0 .4rem;color:#312e81;font-size:.8rem}.evaluation-comment p{color:#334155;font-size:.7rem;line-height:2}.evaluation-certificate>footer{display:flex;justify-content:space-between;gap:1rem;margin-top:1.4rem;padding-top:.8rem;border-top:1px solid #e5e7eb;color:#64748b;font-size:.59rem}.dark .evaluation-candidate-card,.dark .student-evaluation-card,.dark .evaluation-editor-form{border-color:rgba(255,255,255,.14);background:#172033;box-shadow:none}.dark .evaluation-criterion-card,.dark .evaluation-score-grid>label{border-color:rgba(255,255,255,.14);background:#1e293b}.dark .evaluation-criterion-card .form-input,.dark .evaluation-criterion-card .form-textarea,.dark .evaluation-score-grid .form-input{border-color:rgba(255,255,255,.16);color:#e2e8f0;background:#172033}.dark .evaluation-ready-badge{color:#bbf7d0;background:rgba(20,83,45,.5)}.dark .evaluation-pending-badge{color:#fde68a;background:rgba(120,53,15,.42)}
@media(max-width:760px){.course-progress-card{grid-template-columns:1fr}.evaluation-candidate-card,.student-evaluation-card{align-items:stretch;flex-direction:column}.evaluation-candidate-actions{justify-content:stretch}.evaluation-candidate-actions>a,.evaluation-candidate-actions form,.evaluation-candidate-actions form button{flex:1;width:100%}.evaluation-criteria-grid,.evaluation-score-grid{grid-template-columns:1fr}.evaluation-score-grid>label{grid-template-columns:minmax(0,1fr) 4rem auto}.evaluation-editor-actions{align-items:stretch;flex-direction:column}.evaluation-editor-actions>*{width:100%;text-align:center}.evaluation-certificate{margin:1rem -.15rem;padding:1.1rem}.evaluation-certificate>header,.evaluation-certificate>footer{align-items:flex-start;flex-direction:column}.evaluation-certificate-score{align-items:flex-start;flex-direction:column}}
@media print{.site-nav,.site-footer,.telegram-support-float,.no-print,.toast-stack{display:none!important}.evaluation-print-page{padding:0!important;background:#fff!important}.evaluation-certificate{max-width:none;margin:0;border:0;box-shadow:none}.evaluation-certificate-score{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

.student-course-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.student-course-progress-card{display:grid;gap:.7rem;padding:1rem;border:1px solid var(--rh-border);border-radius:.9rem;background:var(--rh-surface);box-shadow:0 8px 20px rgba(15,23,42,.04)}.student-course-progress-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}.student-course-progress-card header>div{display:grid;gap:.25rem}.student-course-progress-card h2{margin:0;color:var(--rh-ink);font-size:.82rem}.student-course-progress-card header p,.student-course-progress-meta,.student-course-progress-last{margin:0;color:var(--rh-muted);font-size:.65rem;line-height:1.7}.student-course-progress-card header>strong{color:var(--rh-primary);font-size:1.05rem}.student-course-progress-last{padding:.48rem .58rem;border-radius:.55rem;color:#4338ca;background:#eef2ff}.student-course-progress-card footer{display:flex;gap:.42rem;margin-top:.1rem}.student-course-progress-card footer>*{flex:1;justify-content:center;text-align:center}.dark .student-course-progress-card{border-color:rgba(255,255,255,.14);background:#172033;box-shadow:none}.dark .student-course-progress-last{color:#c7d2fe;background:rgba(79,70,229,.18)}.dashboard-course-progress-note{display:block;overflow:hidden;color:var(--rh-muted);font-size:.6rem;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1040px){.student-course-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.student-course-progress-grid{grid-template-columns:1fr}.student-course-progress-card footer{align-items:stretch;flex-direction:column}.student-course-progress-card footer>*{width:100%}}

.evaluation-search-form{display:flex;align-items:end;gap:.65rem;margin:0 0 1rem;padding:.8rem;border:1px solid var(--rh-border);border-radius:.85rem;background:var(--rh-surface-muted)}.evaluation-search-form label{display:grid;flex:1;gap:.35rem}.evaluation-search-form .form-input{min-height:2.55rem}.evaluation-issued-badge{display:inline-flex;align-items:center;padding:.32rem .62rem;border-radius:999px;color:#166534;background:#dcfce7;font-size:.7rem;font-weight:800}.homework-submission-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}.homework-submission-actions .homework-moderation-delete{margin:0}.homework-thread-page .dash-submission{scroll-margin-top:7rem}.homework-thread-page .is-selected-submission{border:2px solid rgba(79,70,229,.6);box-shadow:0 0 0 4px rgba(99,102,241,.11)}.homework-thread-page .dash-submission-top{gap:.75rem}.dark .evaluation-search-form{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.045)}.dark .evaluation-issued-badge{color:#bbf7d0;background:rgba(22,101,52,.28)}.dark .homework-thread-page .is-selected-submission{border-color:#a5b4fc;box-shadow:0 0 0 4px rgba(129,140,248,.16)}@media(max-width:640px){.evaluation-search-form{align-items:stretch;flex-direction:column}.evaluation-search-form>*{width:100%}.homework-submission-actions>*{width:100%}.homework-submission-actions .homework-moderation-delete button{width:100%}}

/* End-term surveys */
.end-term-survey-panel{margin:1.35rem 0;padding:1.3rem;border:1px solid rgba(79,70,229,.22);border-radius:1rem;background:linear-gradient(140deg,rgba(238,242,255,.92),rgba(255,255,255,.96));box-shadow:0 12px 30px rgba(67,56,202,.08)}.end-term-survey-panel header h2{margin:.22rem 0 .45rem;font-size:1.22rem}.end-term-survey-panel header p{margin:0;color:var(--rh-text-muted)}.end-term-survey-form{display:grid;gap:1rem;margin-top:1rem}.survey-question{margin:0;padding:1rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface);min-inline-size:0}.survey-question legend{padding:0 .25rem;font-weight:800}.survey-question legend b{color:#dc2626;margin-right:.2rem}.survey-question small{display:block;margin:.25rem 0 .65rem;color:var(--rh-text-muted)}.survey-rating-options,.survey-choice-options{display:flex;flex-wrap:wrap;gap:.55rem}.survey-rating-options label,.survey-choice-options label{display:inline-flex;align-items:center;gap:.35rem;padding:.48rem .7rem;border:1px solid var(--rh-border);border-radius:.6rem;background:var(--rh-surface-muted);cursor:pointer}.survey-rating-options input:checked+span,.survey-choice-options input:checked+span{color:#4338ca;font-weight:800}.end-term-survey-complete{margin-top:1rem;padding:.9rem;border-radius:.75rem;background:#dcfce7;color:#166534}.end-term-survey-complete p{margin:.25rem 0 0}.survey-admin-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:1rem}.survey-builder-column{display:grid;gap:1rem;align-content:start}.survey-builder-form,.survey-question-editor{display:grid;gap:.65rem}.survey-builder-form label,.survey-question-editor label{display:grid;gap:.32rem}.survey-question-editor-list{display:grid;gap:.85rem;margin-top:1rem}.survey-question-editor{padding:1rem;border:1px solid var(--rh-border);border-radius:.85rem;background:var(--rh-surface-muted)}.survey-question-editor.is-new{margin-top:1rem}.survey-score-range{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.survey-question-actions{display:flex;flex-wrap:wrap;gap:.5rem}.survey-response-list{display:grid;gap:.8rem}.survey-response-card{padding:1rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface)}.survey-response-card>header{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.65rem;border-bottom:1px solid var(--rh-border)}.survey-response-card header div{display:grid;gap:.18rem}.survey-response-card header span,.survey-response-card time{color:var(--rh-text-muted);font-size:.82rem}.survey-answer-list{display:grid;gap:.65rem;margin-top:.8rem}.survey-answer-list dl{margin:0}.survey-answer-list dt{font-weight:700}.survey-answer-list dd{margin:.22rem 0 0;color:var(--rh-text-muted);white-space:pre-wrap}.dark .end-term-survey-panel{border-color:rgba(165,180,252,.32);background:linear-gradient(140deg,rgba(49,46,129,.3),rgba(17,24,39,.82))}.dark .survey-question,.dark .survey-response-card{border-color:rgba(255,255,255,.13);background:rgba(17,24,39,.72)}.dark .survey-question-editor,.dark .survey-rating-options label,.dark .survey-choice-options label{border-color:rgba(255,255,255,.13);background:rgba(255,255,255,.055)}.dark .end-term-survey-complete{color:#bbf7d0;background:rgba(22,101,52,.28)}@media(max-width:900px){.survey-admin-layout{grid-template-columns:1fr}}@media(max-width:560px){.survey-score-range{grid-template-columns:1fr}.survey-response-card>header{align-items:flex-start;flex-direction:column}.survey-rating-options label,.survey-choice-options label{width:100%}}

/* Targeted coupons and HTMX cart feedback */
.cart-coupon-feedback{margin:0 0 .9rem;padding:.8rem 1rem;border-radius:.75rem;font-weight:700}.cart-coupon-feedback.is-success{background:#dcfce7;color:#166534;border:1px solid #86efac}.cart-coupon-feedback.is-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.coupon-admin-layout{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);gap:1rem;align-items:start}.coupon-builder-form{display:grid;gap:1rem}.coupon-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.coupon-form-grid>label,.coupon-course-targets{display:grid;gap:.35rem;font-weight:700}.coupon-form-grid small,.coupon-course-targets small{font-weight:400;color:var(--rh-text-muted)}.coupon-course-targets select{min-height:11rem}.coupon-form-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between}.coupon-admin-list{display:grid;gap:.8rem}.coupon-admin-card{padding:1rem;border:1px solid var(--rh-border);border-radius:.9rem;background:var(--rh-surface)}.coupon-admin-card>header{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding-bottom:.75rem;border-bottom:1px solid var(--rh-border)}.coupon-admin-card header>div:first-child{display:flex;gap:.55rem;align-items:center}.coupon-admin-card header strong{font-size:1.05rem;letter-spacing:.03em}.coupon-card-actions{display:flex;gap:.45rem;flex-wrap:wrap}.coupon-card-actions form{margin:0}.coupon-card-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:1rem 0 0}.coupon-card-details div{min-width:0}.coupon-card-details dt{font-size:.8rem;color:var(--rh-text-muted);margin-bottom:.2rem}.coupon-card-details dd{margin:0;font-weight:700;overflow-wrap:anywhere}.dark .cart-coupon-feedback.is-success{background:rgba(22,101,52,.3);color:#bbf7d0;border-color:rgba(134,239,172,.4)}.dark .cart-coupon-feedback.is-error{background:rgba(153,27,27,.28);color:#fecaca;border-color:rgba(252,165,165,.4)}.dark .coupon-admin-card{background:rgba(17,24,39,.72);border-color:rgba(255,255,255,.14)}@media(max-width:900px){.coupon-admin-layout{grid-template-columns:1fr}}@media(max-width:560px){.coupon-form-grid,.coupon-card-details{grid-template-columns:1fr}.coupon-admin-card>header{align-items:flex-start;flex-direction:column}.coupon-form-actions{align-items:stretch;flex-direction:column}.coupon-form-actions .legacy-form-action{width:100%}}

/* بازخورد کوپن پس از درخواست HTMX پس از پنج ثانیه با محوشدن نرم حذف می‌شود. */
.cart-coupon-feedback{transition:opacity .22s ease,transform .22s ease}.cart-coupon-feedback.is-dismissing{opacity:0;transform:translateY(-.3rem)}


/* مرکز اعلان، passkey و تنظیمات اطلاع‌رسانی */
.nav-notification-wrap{position:relative}.nav-notification-trigger{position:relative}.nav-notification-trigger svg{width:1.22rem;height:1.22rem}.nav-notification-badge{position:absolute;inset-inline-end:-.18rem;top:-.18rem;min-width:1rem;height:1rem;padding:0 .2rem;border-radius:999px;background:#dc2626;color:#fff;font-size:.62rem;line-height:1rem;font-weight:800}.nav-notification-panel{position:absolute;z-index:920;top:calc(100% + .75rem);inset-inline-end:0;width:min(23rem,calc(100vw - 2rem));max-height:31rem;overflow:auto;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 1.25rem 3rem rgba(15,23,42,.18);padding:.7rem}.nav-notification-panel[hidden]{display:none}.nav-notification-panel header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.2rem .25rem .7rem}.nav-notification-panel header button{border:0;background:none;color:var(--rh-primary);font:inherit;font-size:.76rem;cursor:pointer}.nav-notification-item{display:grid;grid-template-columns:1fr auto;gap:.45rem;padding:.75rem .35rem;border-top:1px solid var(--rh-border)}.nav-notification-item.is-unread{background:color-mix(in srgb,var(--rh-primary) 8%,transparent)}.nav-notification-item a{display:grid;gap:.25rem;color:inherit;text-decoration:none}.nav-notification-item strong{font-size:.82rem}.nav-notification-item span{font-size:.75rem;color:var(--rh-muted);line-height:1.65}.nav-notification-item time{font-size:.66rem;color:var(--rh-muted)}.nav-notification-item button{align-self:start;border:0;background:transparent;color:var(--rh-muted);font-size:1.15rem;cursor:pointer}.notification-empty{margin:.75rem 0;color:var(--rh-muted);text-align:center;font-size:.8rem}.auth-remember-choice{display:flex;align-items:center;gap:.5rem;margin:.75rem 0;color:var(--rh-muted);font-size:.78rem;cursor:pointer}.auth-remember-choice input[type=checkbox]{accent-color:var(--rh-primary)}.auth-passkey-separator{display:flex;align-items:center;gap:.7rem;margin:1rem 0;color:var(--rh-muted);font-size:.75rem}.auth-passkey-separator:before,.auth-passkey-separator:after{content:"";height:1px;flex:1;background:var(--rh-border)}.auth-passkey-action{width:100%;border:1px solid var(--rh-primary);border-radius:.75rem;background:transparent;color:var(--rh-primary);padding:.78rem 1rem;font:inherit;font-weight:700;cursor:pointer}.auth-passkey-action:hover{background:color-mix(in srgb,var(--rh-primary) 9%,transparent)}.auth-passkey-note{margin:.6rem 0 0;color:var(--rh-muted);font-size:.72rem;line-height:1.7;text-align:center}.passkey-device-list{display:grid;gap:.65rem;margin-top:1rem}.passkey-device-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--rh-border);border-radius:.75rem;padding:.8rem}.passkey-device-item strong,.passkey-device-item small{display:block}.passkey-device-item small{margin-top:.25rem;color:var(--rh-muted);font-size:.72rem}.admin-notification-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:1.25rem 0}.admin-notification-badge{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface);color:inherit;padding:.8rem;text-decoration:none}.admin-notification-badge span{font-size:.75rem;color:var(--rh-muted)}.admin-notification-badge strong{display:grid;place-items:center;min-width:1.7rem;height:1.7rem;border-radius:999px;background:var(--rh-primary);color:#fff;font-size:.8rem}.admin-notification-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.8fr);gap:1rem}.notification-preference-list{display:grid;gap:.15rem}.notification-preference-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 0;border-top:1px solid var(--rh-border)}.notification-preference-item strong,.notification-preference-item small{display:block}.notification-preference-item small{margin-top:.18rem;color:var(--rh-muted);font-size:.7rem}.switch-control{position:relative;width:2.55rem;height:1.45rem}.switch-control input{opacity:0;width:0;height:0}.switch-control span{position:absolute;inset:0;border-radius:999px;background:#94a3b8;cursor:pointer}.switch-control span:after{content:"";position:absolute;width:1.05rem;height:1.05rem;right:.2rem;top:.2rem;border-radius:50%;background:white;transition:transform .18s}.switch-control input:checked+span{background:var(--rh-primary)}.switch-control input:checked+span:after{transform:translateX(-1.1rem)}.admin-notification-history{margin-top:1rem}.admin-notification-history td small{display:block;max-width:20rem;margin-top:.25rem;color:var(--rh-muted);font-size:.7rem}@media(max-width:900px){.admin-notification-badges{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-notification-grid{grid-template-columns:1fr}}@media(max-width:520px){.admin-notification-badges{grid-template-columns:1fr}.nav-notification-panel{position:fixed;top:4.8rem;inset-inline:1rem;width:auto;max-height:calc(100dvh - 6rem)}.passkey-device-item{align-items:flex-start;flex-direction:column}}

/* تعاملات وبلاگ */
.blog-reactions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:1.35rem;padding-top:1rem;border-top:1px solid var(--rh-border)}.blog-reactions>span{margin-inline-end:auto;color:var(--rh-muted);font-size:.78rem}.blog-reactions form{margin:0}.blog-reactions button{border:1px solid var(--rh-border);border-radius:999px;color:var(--rh-ink);background:var(--rh-surface);padding:.42rem .72rem;font:inherit;font-size:.72rem;cursor:pointer}.blog-reactions button b{margin-inline-start:.25rem;color:var(--rh-primary)}.blog-reactions button.is-active{border-color:var(--rh-primary);color:#fff;background:var(--rh-primary)}.blog-reactions button.is-active b{color:#fff}.blog-comments{margin-top:1.25rem}.blog-comment-form{display:grid;gap:.7rem;padding-bottom:1.15rem;border-bottom:1px solid var(--rh-border)}.honeypot-field{position:absolute!important;overflow:hidden!important;width:1px!important;height:1px!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important}.blog-comment-list{display:grid;gap:.8rem;margin-top:1rem}.blog-comment{padding:.85rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface-alt)}.blog-comment.is-reply{margin-inline-start:2rem;border-inline-start:3px solid var(--rh-primary)}.blog-comment.is-staff{border-color:color-mix(in srgb,var(--rh-primary) 38%,var(--rh-border));background:color-mix(in srgb,var(--rh-primary) 6%,var(--rh-surface))}.blog-comment header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.blog-comment header strong{font-size:.77rem}.blog-comment time{color:var(--rh-muted);font-size:.67rem}.blog-comment p{margin:.55rem 0 0;color:var(--rh-ink);font-size:.78rem;line-height:1.85}.blog-reply-control{margin-top:.65rem}.blog-reply-control summary{color:var(--rh-primary);font-size:.7rem;cursor:pointer}.blog-reply-control form{display:grid;gap:.5rem;margin-top:.55rem}.blog-reply-control .button-soft{justify-self:start;font-size:.7rem}@media(max-width:540px){.blog-reactions>span{width:100%;margin-inline-end:0}.blog-comment.is-reply{margin-inline-start:.75rem}}

/* رسانهٔ غنی در بلاگ و CMS */
/* .article-content .rh-gallery دیگر خودِ گالری را دوباره گرید نمی‌کند؛
   قاعدهٔ قدیمی display:grid روی کل .rh-gallery (شامل کپشن) باعث می‌شد
   کپشن به‌عنوان یک «سلول» کنار تصاویر بنشیند، تصاویر در دسکتاپ خیلی ریز
   و در موبایل از کانتینر بیرون بزنند. اندازه‌بندی گالری تنها به عهدهٔ
   .rh-gallery-grid (ستون‌های ۲/۳/۴) است. */
.article-content .rh-gallery{margin:1.25rem 0}.rh-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:.8rem}.rh-carousel{position:relative;overflow:hidden;margin:1.25rem 0;border-radius:1rem;background:var(--rh-surface-alt)}.rh-carousel-slide{margin:0}.rh-carousel-slide img{display:block;width:100%;aspect-ratio:16/8;object-fit:cover}.rh-carousel>figcaption,.rh-carousel-caption{display:block;padding-block-start:.6rem;color:var(--rh-muted,#6b7280);font-size:.9rem;line-height:1.75;text-align:center}.rh-carousel-nav{position:absolute;z-index:2;top:50%;display:grid;place-items:center;width:2.2rem;height:2.2rem;border:0;border-radius:999px;color:#fff;background:rgba(15,23,42,.68);font-size:1.55rem;line-height:1;cursor:pointer;transform:translateY(-50%)}.rh-carousel-nav.is-prev{right:.75rem}.rh-carousel-nav.is-next{left:.75rem}.rh-video-embed{position:relative;overflow:hidden;aspect-ratio:16/9;margin:1.25rem 0;border-radius:1rem;background:#0f172a}.rh-video-embed iframe,.rh-video-embed video{display:block;width:100%;height:100%;border:0}.ql-toolbar button[data-rich-media]{min-width:auto!important;width:auto!important;padding-inline:.35rem!important;color:var(--rh-muted);font:inherit!important;font-size:.62rem!important;font-weight:800!important}.ql-toolbar button[data-rich-media]:hover{color:var(--rh-primary)!important}@media(max-width:600px){.article-content .rh-gallery{grid-template-columns:1fr}.rh-carousel-slide img{aspect-ratio:4/3}}

.hero-banner-carousel{box-shadow:0 18px 42px rgba(15,23,42,.16)}.hero-banner-carousel .rh-carousel-slide a{display:block;position:relative;color:#fff}.hero-banner-carousel .rh-carousel-slide img{min-height:20rem;aspect-ratio:4/3;object-fit:contain}.hero-banner-carousel figcaption{position:absolute;inset-inline:0;bottom:0;padding:1.6rem 1rem .9rem;color:#fff;background:linear-gradient(transparent,rgba(15,23,42,.82));font-size:.78rem;font-weight:800}@media(max-width:700px){.hero-banner-carousel .rh-carousel-slide img{min-height:0;aspect-ratio:16/10}}

/* رسانه‌های چندگانهٔ جلسه */
.lesson-media-manager,.lesson-managed-media{margin-top:1.1rem;padding:1rem;border:1px solid var(--rh-border);border-radius:.9rem;background:var(--rh-surface-alt)}.lesson-media-manager h2,.lesson-managed-media h2{margin:0;font-size:1rem}.lesson-media-manager p,.lesson-managed-media>p{margin:.35rem 0 .85rem;color:var(--rh-muted);font-size:.75rem;line-height:1.8}.lesson-media-list{display:grid;gap:.55rem;margin-top:1rem}.lesson-media-list h3{margin:0;color:var(--rh-ink);font-size:.82rem}.lesson-media-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}.lesson-managed-media .rh-video-embed{margin-bottom:0}.lesson-exercise-gallery .rh-gallery{margin-bottom:0}@media(max-width:520px){.lesson-media-row{grid-template-columns:1fr}.lesson-media-row .button-danger-soft{justify-self:start}}

/* مدیریت بنر ثابت/کاروسل خانه در کتابخانهٔ رسانه */
.cms-home-hero-manager { margin: 1.5rem 0; padding: 1.25rem; }
.cms-home-hero-manager > header { display: grid; gap: .35rem; margin-bottom: 1rem; }
.cms-home-hero-manager h2 { margin: 0; }
.cms-home-hero-manager p { margin: 0; color: var(--rh-muted, #64748b); }
.cms-hero-mode { display: flex; flex-wrap: wrap; gap: .8rem 1.3rem; margin: 0 0 1rem; padding: .8rem 1rem; border: 1px solid var(--rh-border, #dbe3ee); border-radius: .8rem; }
.cms-hero-mode legend { padding-inline: .35rem; font-weight: 700; }
.cms-hero-mode label { display: inline-flex; align-items: center; gap: .4rem; cursor: pointer; }
.cms-home-hero-slides { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.cms-home-hero-slide { display: grid; gap: .65rem; padding: .9rem; border: 1px solid var(--rh-border, #dbe3ee); border-radius: .8rem; background: var(--rh-surface-alt, rgba(148, 163, 184, .06)); }
.cms-home-hero-slide legend { padding-inline: .35rem; font-weight: 700; color: var(--rh-primary, #a21caf); }
.cms-home-hero-form .cms-upload-action { margin-top: 1rem; }
@media (max-width: 760px) { .cms-home-hero-slides { grid-template-columns: 1fr; } }
.dark .cms-hero-mode, .dark .cms-home-hero-slide { border-color: rgba(148, 163, 184, .34); background: rgba(15, 23, 42, .35); }

/* سه تب مستقل برای منابع رسانهٔ بنر خانه */
.cms-hero-tabs { display: flex; flex-wrap: wrap; gap: .45rem; margin: 0 0 1rem; padding: .4rem; border: 1px solid var(--rh-border, #dbe3ee); border-radius: .85rem; background: var(--rh-surface-alt, rgba(148, 163, 184, .06)); }
.cms-hero-tabs button { flex: 1 1 10rem; min-height: 2.55rem; padding: .5rem .8rem; border: 1px solid transparent; border-radius: .62rem; color: var(--rh-muted, #64748b); background: transparent; font: inherit; font-size: .8rem; font-weight: 800; cursor: pointer; transition: background .18s ease, color .18s ease, box-shadow .18s ease; }
.cms-hero-tabs button:hover, .cms-hero-tabs button:focus-visible { color: var(--rh-primary, #3730a3); background: rgba(99, 102, 241, .1); outline: 0; }
.cms-hero-tabs button.is-active { color: #fff; background: linear-gradient(135deg, #4f46e5, #7c3aed); box-shadow: 0 7px 16px rgba(79, 70, 229, .2); }
.cms-hero-tab-panel { margin-top: .35rem; }
.cms-hero-tab-heading { display: grid; gap: .3rem; margin: 0 0 .9rem; padding: .85rem .95rem; border-inline-start: 3px solid var(--rh-primary, #3730a3); border-radius: .65rem; background: var(--rh-surface-alt, rgba(148, 163, 184, .06)); }
.cms-hero-tab-heading h3, .cms-hero-tab-heading p { margin: 0; }
.cms-hero-tab-heading h3 { color: var(--rh-ink, #172033); font-size: .95rem; font-weight: 900; }
.cms-hero-tab-heading p { color: var(--rh-muted, #64748b); font-size: .76rem; line-height: 1.8; }
.cms-home-hero-slide--single { max-inline-size:34rem; }
.cms-home-hero-slides--animated { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dark .cms-hero-tabs, .dark .cms-hero-tab-heading { border-color: rgba(148, 163, 184, .34); background: rgba(15, 23, 42, .35); }
.dark .cms-hero-tab-heading h3 { color: #e2e8f0; }
@media (max-width: 760px) { .cms-hero-tabs button { flex-basis:100%; } .cms-home-hero-slides--animated { grid-template-columns: 1fr; } }


/* صندوق پیام‌های تماس مدیریت */
.admin-contact-filters { display:flex; flex-wrap:wrap; gap:.45rem; margin:1.15rem 0; }
.admin-contact-filters a { display:inline-flex; align-items:center; min-height:2.25rem; padding:.38rem .7rem; border:1px solid var(--rh-border); border-radius:.65rem; color:var(--rh-muted); background:var(--rh-surface); font-size:.7rem; font-weight:800; text-decoration:none; }
.admin-contact-filters a:hover, .admin-contact-filters a.is-active { border-color:rgba(79,70,229,.34); color:#fff; background:linear-gradient(135deg,#4f46e5,#7c3aed); }
.admin-contact-list { display:grid; gap:1rem; }
.admin-contact-card { display:grid; gap:1rem; padding:1.1rem; }
.admin-contact-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.admin-contact-card h2 { margin:.38rem 0 .15rem; color:var(--rh-ink); font-size:1rem; }
.admin-contact-card header p { margin:0; color:var(--rh-muted); font-size:.68rem; }
.admin-contact-status { display:inline-flex; padding:.2rem .46rem; border-radius:999px; font-size:.61rem; font-weight:900; }
.admin-contact-status.is-new { color:#9f1239; background:#ffe4e6; }
.admin-contact-status.is-in_progress { color:#92400e; background:#fef3c7; }
.admin-contact-status.is-closed { color:#166534; background:#dcfce7; }
.admin-contact-status-form { display:flex; align-items:center; gap:.45rem; }
.admin-contact-status-form .form-input { min-width:8.8rem; min-height:2.2rem; padding:.32rem .5rem; font-size:.68rem; }
.admin-contact-status-form .button-secondary { min-height:2.2rem; padding:.35rem .55rem; font-size:.65rem; white-space:nowrap; }
.admin-contact-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; margin:0; padding:.75rem; border-radius:.7rem; background:var(--rh-surface-alt); }
.admin-contact-meta div { display:grid; gap:.2rem; min-width:0; }
.admin-contact-meta dt { color:var(--rh-muted); font-size:.61rem; font-weight:800; }
.admin-contact-meta dd { overflow-wrap:anywhere; margin:0; color:var(--rh-ink); font-size:.7rem; }
.admin-contact-meta a { color:var(--rh-primary); }
.admin-contact-message { padding:.85rem; border:1px solid var(--rh-border); border-radius:.7rem; color:var(--rh-ink); background:var(--rh-surface); font-size:.76rem; line-height:2; white-space:normal; }
.dark .admin-contact-status.is-new { color:#fecdd3; background:rgba(159,18,57,.35); }.dark .admin-contact-status.is-in_progress { color:#fde68a; background:rgba(146,64,14,.35); }.dark .admin-contact-status.is-closed { color:#bbf7d0; background:rgba(22,101,52,.35); }
@media(max-width:720px){.admin-contact-card > header{display:grid}.admin-contact-status-form{width:100%;flex-wrap:wrap}.admin-contact-status-form .form-input{flex:1}.admin-contact-meta{grid-template-columns:1fr}.admin-contact-status-form .button-secondary{flex:1}}

/* مرکز ارسال ایمیل مدیریت */
.email-center-layout { display:grid; gap:1.15rem; }
.email-compose-card,.email-campaign-history,.email-report-content,.email-preview-card { padding:1.15rem; }
.email-campaign-form { display:grid; gap:1rem; }
.email-recipient-scope { display:flex; flex-wrap:wrap; gap:.55rem; margin:0; padding:.7rem; border:1px solid var(--rh-border); border-radius:.8rem; }
.email-recipient-scope legend { padding:0 .3rem; color:var(--rh-muted); font-size:.7rem; font-weight:800; }
.email-recipient-scope label { display:inline-flex; align-items:center; gap:.35rem; padding:.4rem .55rem; border-radius:.55rem; color:var(--rh-ink); cursor:pointer; font-size:.72rem; font-weight:800; }
.email-recipient-scope label:has(input:checked) { color:#fff; background:linear-gradient(135deg,#4f46e5,#7c3aed); }
.email-recipient-scope input { accent-color:#fff; }
.email-scope-panel { padding:.9rem; border:1px solid var(--rh-border); border-radius:.8rem; background:var(--rh-surface-alt); }
.email-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.email-campaign-form small { color:var(--rh-muted); font-size:.64rem; line-height:1.7; }
.email-all-students-note { color:var(--rh-ink); font-size:.76rem; }.email-all-students-note p{margin:.35rem 0 0;color:var(--rh-muted);line-height:1.9}
.email-student-results { display:grid; gap:.4rem; margin-top:.55rem; }
.email-student-search-result { display:grid; grid-template-columns:1fr auto auto; gap:.6rem; align-items:center; width:100%; padding:.62rem .7rem; border:1px solid var(--rh-border); border-radius:.6rem; color:var(--rh-ink); background:var(--rh-surface); text-align:right; font-family:inherit; cursor:pointer; }
.email-student-search-result:hover:not(:disabled){border-color:#6366f1;background:rgba(99,102,241,.07)} .email-student-search-result:disabled{opacity:.5;cursor:default}.email-student-search-result strong{font-size:.72rem}.email-student-search-result span,.email-student-search-result small{color:var(--rh-muted);font-size:.65rem}
.email-selected-students { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; margin-top:.7rem; }
.email-selected-student { display:flex; align-items:center; justify-content:space-between; gap:.6rem; padding:.5rem .6rem; border-radius:.6rem; color:#312e81; background:#ede9fe; font-size:.7rem; }.email-selected-student span{display:grid;gap:.1rem;min-width:0}.email-selected-student small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-selected-student button{display:grid;place-items:center;width:1.5rem;height:1.5rem;border:0;border-radius:50%;color:#fff;background:#7c3aed;font-size:1rem;cursor:pointer}.muted-copy{margin:0;color:var(--rh-muted);font-size:.7rem}
.email-dispatch-help { padding:.7rem; border-radius:.7rem; color:var(--rh-ink); background:rgba(79,70,229,.08); font-size:.68rem; }.email-dispatch-help p{margin:.25rem 0 0;color:var(--rh-muted);line-height:1.8}
.email-campaign-table-wrap,.email-recipient-table-wrap { overflow-x:auto; }.email-campaign-table,.email-recipient-table{width:100%;border-collapse:collapse;min-width:690px}.email-campaign-table th,.email-campaign-table td,.email-recipient-table th,.email-recipient-table td{padding:.7rem .5rem;border-bottom:1px solid var(--rh-border);color:var(--rh-ink);text-align:right;font-size:.68rem;vertical-align:middle}.email-campaign-table th,.email-recipient-table th{color:var(--rh-muted);font-size:.61rem;white-space:nowrap}.email-campaign-table td small{display:block;margin-top:.18rem;color:var(--rh-muted);font-size:.6rem}.email-count{display:inline-block;margin:.08rem .12rem;font-size:.6rem;white-space:nowrap}.email-count.is-sent{color:#15803d}.email-count.is-failed{color:#be123c}
.email-campaign-status,.email-recipient-status{display:inline-flex;padding:.23rem .45rem;border-radius:999px;font-size:.6rem;font-weight:900;white-space:nowrap}.email-campaign-status.is-queued,.email-recipient-status.is-pending{color:#1d4ed8;background:#dbeafe}.email-campaign-status.is-sending,.email-recipient-status.is-processing{color:#92400e;background:#fef3c7}.email-campaign-status.is-completed,.email-recipient-status.is-sent{color:#166534;background:#dcfce7}.email-campaign-status.is-cancelled,.email-recipient-status.is-skipped{color:#475569;background:#e2e8f0}.email-campaign-status.is-failed,.email-recipient-status.is-failed{color:#9f1239;background:#ffe4e6}
.email-report-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;margin:1rem 0}.email-report-summary article{display:grid;gap:.35rem;padding:.85rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface)}.email-report-summary span{color:var(--rh-muted);font-size:.62rem}.email-report-summary strong{color:var(--rh-ink);font-size:1.1rem}.email-report-summary .is-sent{color:#15803d}.email-report-summary .is-failed{color:#be123c}.email-body-preview{padding:1rem;border:1px solid var(--rh-border);border-radius:.7rem;color:var(--rh-ink);background:var(--rh-surface);line-height:2}
.dark .email-selected-student{color:#ddd6fe;background:rgba(109,40,217,.35)}.dark .email-campaign-status.is-queued,.dark .email-recipient-status.is-pending{color:#bfdbfe;background:rgba(29,78,216,.35)}.dark .email-campaign-status.is-sending,.dark .email-recipient-status.is-processing{color:#fde68a;background:rgba(146,64,14,.35)}.dark .email-campaign-status.is-completed,.dark .email-recipient-status.is-sent{color:#bbf7d0;background:rgba(22,101,52,.35)}.dark .email-campaign-status.is-cancelled,.dark .email-recipient-status.is-skipped{color:#cbd5e1;background:rgba(71,85,105,.45)}.dark .email-campaign-status.is-failed,.dark .email-recipient-status.is-failed{color:#fecdd3;background:rgba(159,18,57,.35)}
@media(max-width:800px){.email-form-grid,.email-selected-students{grid-template-columns:1fr}.email-report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.email-student-search-result{grid-template-columns:1fr}.email-recipient-scope{display:grid;grid-template-columns:1fr 1fr}}@media(max-width:440px){.email-report-summary{grid-template-columns:1fr}.email-recipient-scope{grid-template-columns:1fr}}
.email-transport-notice{display:flex;align-items:flex-start;gap:.55rem;padding:.75rem .9rem;border:1px solid var(--rh-border);border-radius:.75rem;font-size:.7rem;line-height:1.8}.email-transport-notice strong{white-space:nowrap}.email-transport-notice.is-ready{color:#166534;background:#ecfdf5;border-color:#bbf7d0}.email-transport-notice.is-error{color:#9f1239;background:#fff1f2;border-color:#fecdd3}.dark .email-transport-notice.is-ready{color:#bbf7d0;background:rgba(22,101,52,.3);border-color:rgba(34,197,94,.35)}.dark .email-transport-notice.is-error{color:#fecdd3;background:rgba(159,18,57,.3);border-color:rgba(244,63,94,.35)}@media(max-width:560px){.email-transport-notice{display:grid}.email-transport-notice strong{white-space:normal}}
.nav-notification-trigger{position:relative}.nav-push-opt-in-badge{position:absolute;top:.08rem;left:.08rem;width:.48rem;height:.48rem;border:2px solid var(--rh-surface,#fff);border-radius:999px;background:#fb923c;box-shadow:0 0 0 0 rgba(251,146,60,.56);animation:rh-push-opt-in-pulse 1.8s ease-out infinite}@keyframes rh-push-opt-in-pulse{0%{box-shadow:0 0 0 0 rgba(251,146,60,.55)}70%{box-shadow:0 0 0 .5rem rgba(251,146,60,0)}100%{box-shadow:0 0 0 0 rgba(251,146,60,0)}}@media(prefers-reduced-motion:reduce){.nav-push-opt-in-badge{animation:none}}
/* مرکز اعلان: تب‌ها و تنظیمات Push */
.admin-center-tabs{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0}.admin-center-tabs button{border:1px solid var(--rh-border);border-radius:.65rem;padding:.55rem .78rem;color:var(--rh-muted);background:var(--rh-surface);font:inherit;font-size:.72rem;font-weight:800;cursor:pointer}.admin-center-tabs button.is-active{border-color:#5b5bd6;color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 .35rem .8rem rgba(79,70,229,.22)}.notification-student-multi{min-height:11rem}.media-input-row{display:flex;gap:.45rem;align-items:stretch}.media-input-row .form-input{min-width:0;flex:1}.media-input-row .button-soft{white-space:nowrap}.push-settings-status{display:flex;gap:.55rem;align-items:center;margin:.8rem 0;padding:.72rem .8rem;border:1px solid var(--rh-border);border-radius:.7rem;font-size:.7rem}.push-settings-status span{color:var(--rh-muted)}.push-settings-status.is-ready{color:#166534;background:#ecfdf5;border-color:#bbf7d0}.push-settings-status.is-disabled{color:#92400e;background:#fffbeb;border-color:#fde68a}.notification-push-form{display:grid;gap:1rem}.notification-push-form .switch-control{width:max-content}.dark .push-settings-status.is-ready{color:#bbf7d0;background:rgba(22,101,52,.28);border-color:rgba(34,197,94,.4)}.dark .push-settings-status.is-disabled{color:#fde68a;background:rgba(146,64,14,.32);border-color:rgba(245,158,11,.4)}@media(max-width:600px){.admin-center-tabs{display:grid;grid-template-columns:1fr 1fr}.media-input-row{display:grid;grid-template-columns:1fr}.media-input-row .button-soft{width:100%}}
.push-key-generate-form{margin:.65rem 0 1rem}.push-key-generate-form .button-soft{font-size:.7rem}
/* انتخابگر رسانهٔ مشترک */
html.rh-media-modal-open{overflow:hidden}.rh-media-modal{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:1rem;background:rgba(15,23,42,.64);backdrop-filter:blur(4px)}.rh-media-dialog{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;width:min(980px,100%);max-height:min(88vh,780px);overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:1rem;color:var(--rh-ink);background:var(--rh-surface);box-shadow:0 1.5rem 5rem rgba(15,23,42,.42)}.rh-media-dialog>header,.rh-media-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.85rem 1rem;border-bottom:1px solid var(--rh-border)}.rh-media-dialog>header strong{display:block;font-size:.9rem}.rh-media-dialog>header small{color:var(--rh-muted);font-size:.64rem}.rh-media-dialog>header button{display:grid;place-items:center;width:2rem;height:2rem;border:0;border-radius:.5rem;color:var(--rh-ink);background:var(--rh-surface-alt);font-size:1.2rem;cursor:pointer}.rh-media-dialog>footer{border-top:1px solid var(--rh-border);border-bottom:0;font-size:.68rem;color:var(--rh-muted)}.rh-media-tabs{display:flex;gap:.35rem;padding:.6rem 1rem;border-bottom:1px solid var(--rh-border)}.rh-media-tabs button{border:1px solid var(--rh-border);border-radius:.5rem;padding:.38rem .6rem;color:var(--rh-muted);background:var(--rh-surface);font:inherit;font-size:.67rem;font-weight:800;cursor:pointer}.rh-media-tabs button.is-active{color:#fff;background:#5b5bd6;border-color:#5b5bd6}.rh-media-dialog section[data-rh-media-panel]{min-height:0;overflow:auto;padding:1rem}.rh-media-loading,.rh-media-empty{padding:1.5rem;color:var(--rh-muted);font-size:.75rem;text-align:center}.rh-media-empty.is-error{color:#be123c}.rh-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.65rem}.rh-media-card{display:grid;grid-template-rows:100px auto auto;gap:.35rem;min-width:0;overflow:hidden;padding:.42rem;border:1px solid var(--rh-border);border-radius:.7rem;color:var(--rh-ink);background:var(--rh-surface);font:inherit;text-align:right;cursor:pointer}.rh-media-card:hover,.rh-media-card.is-selected{border-color:#6366f1;box-shadow:0 0 0 2px rgba(99,102,241,.15)}.rh-media-card img,.rh-media-card video{width:100%;height:100%;object-fit:cover;border-radius:.42rem;background:#e2e8f0}.rh-media-card>span:not(.rh-media-file-icon){overflow:hidden;font-size:.66rem;font-weight:800;white-space:nowrap;text-overflow:ellipsis}.rh-media-card small{overflow:hidden;color:var(--rh-muted);font-size:.56rem;white-space:nowrap;text-overflow:ellipsis}.rh-media-file-icon{display:grid;place-items:center;height:100%;border-radius:.42rem;color:#4338ca;background:#eef2ff;font-size:.9rem;font-weight:900}.rh-media-upload-form,.rh-media-url-form{display:grid;gap:.75rem;max-width:550px;margin:auto}.rh-media-upload-form label,.rh-media-url-form label{display:grid;gap:.3rem;color:var(--rh-ink);font-size:.7rem;font-weight:800}.rh-media-upload-form input,.rh-media-url-form input{min-width:0;padding:.6rem .7rem;border:1px solid var(--rh-border);border-radius:.55rem;color:var(--rh-ink);background:var(--rh-surface);font:inherit}.rh-media-upload-form p,.rh-media-url-form p{margin:0;color:var(--rh-muted);font-size:.63rem;line-height:1.8}.rh-media-upload-form [data-rh-media-upload-feedback]{min-height:1.3rem;color:var(--rh-muted);font-size:.66rem}.dark .rh-media-file-icon{color:#c4b5fd;background:rgba(79,70,229,.3)}
@media(max-width:580px){.rh-media-modal{padding:0}.rh-media-dialog{height:100vh;max-height:none;border-radius:0}.rh-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rh-media-dialog>header,.rh-media-dialog>footer{padding:.75rem}.rh-media-dialog>footer{align-items:flex-start;flex-direction:column}.rh-media-dialog>footer button{width:100%}}
.cms-media-type-preview{display:grid;gap:.45rem;min-height:9rem;place-items:center;overflow:hidden;border-radius:.65rem;background:var(--rh-surface-alt)}.cms-media-type-preview img,.cms-media-type-preview video{width:100%;min-height:9rem;object-fit:cover}.cms-media-type-preview>span{display:grid;place-items:center;width:4.2rem;height:4.2rem;border-radius:1rem;color:#4338ca;background:#eef2ff;font-size:.9rem;font-weight:900}.cms-media-type-preview audio{width:calc(100% - 1rem);max-width:16rem}.dark .cms-media-type-preview>span{color:#c4b5fd;background:rgba(79,70,229,.3)}.cms-media-card-organized .button-soft{display:inline-flex;margin:.55rem 0}

/* مشاهدهٔ کامل تصویر کتابخانه با modal مشترک */
.cms-media-preview-trigger { position: relative; display: block; width: 100%; min-height: 9rem; padding: 0; overflow: hidden; border: 0; border-radius: .65rem; background: transparent; cursor: zoom-in; }
.cms-media-preview-trigger img { display: block; width: 100%; min-height: 9rem; transition: transform .22s ease, filter .22s ease; }
.cms-media-preview-trigger span { position: absolute; inset-inline: .55rem; bottom: .55rem; padding: .36rem .55rem; border-radius: .5rem; color: #fff; background: rgba(15, 23, 42, .72); font-size: .67rem; font-weight: 800; opacity: 0; transform: translateY(.25rem); transition: opacity .18s ease, transform .18s ease; }
.cms-media-preview-trigger:hover img, .cms-media-preview-trigger:focus-visible img { filter: brightness(.8); transform: scale(1.03); }
.cms-media-preview-trigger:hover span, .cms-media-preview-trigger:focus-visible span { opacity: 1; transform: translateY(0); }
.cms-media-preview-trigger:focus-visible { outline: 3px solid rgba(79, 70, 229, .75); outline-offset: 3px; }
.cms-media-pagination { display: flex; align-items: center; justify-content: center; gap: .8rem; margin: 1.35rem 0 .4rem; padding: .75rem; border: 1px solid var(--rh-border, #dbe3ee); border-radius: .85rem; color: var(--rh-muted, #64748b); font-size: .76rem; font-weight: 800; }
.cms-media-pagination .button-soft { min-width: 10rem; }
.dark .cms-media-pagination { border-color: rgba(148, 163, 184, .34); background: rgba(15, 23, 42, .35); }
@media (max-width: 560px) { .cms-media-pagination { align-items: stretch; flex-direction: column; text-align: center; } .cms-media-pagination .button-soft { width: 100%; } .cms-media-preview-trigger span { opacity: 1; transform: none; } }

/* ویرایشگر بصری ایمیل و moderation دیدگاه */
.email-rich-editor{margin-top:.4rem;overflow:hidden;border:1px solid var(--rh-border);border-radius:.7rem;background:var(--rh-surface)}.email-rich-editor .ql-toolbar.ql-snow{border:0;border-bottom:1px solid var(--rh-border);background:var(--rh-surface-alt)}.email-rich-editor .ql-container.ql-snow{min-height:15rem;border:0;font-family:Vazirmatn,Arial,sans-serif}.email-rich-editor .ql-editor{min-height:15rem;line-height:2;text-align:right}.email-rich-editor-label>small{display:block;margin-top:.45rem;color:var(--rh-muted);font-size:.65rem;line-height:1.8}.blog-comment-note{margin:.1rem 0 .7rem;padding:.55rem .65rem;border-right:3px solid #818cf8;border-radius:.45rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.68rem;line-height:1.8}.blog-comment-moderate-actions{display:flex;flex-wrap:wrap;gap:.35rem}.blog-comment-moderate-actions button{font-size:.62rem}.admin-center-tabs a{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--rh-border);border-radius:.65rem;padding:.55rem .78rem;color:var(--rh-muted);background:var(--rh-surface);font-size:.72rem;font-weight:800;text-decoration:none}.admin-center-tabs a.is-active{border-color:#5b5bd6;color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed)}
/* `hidden` باید حتی با display:grid انتخابگر رسانه، modal را قطعاً پنهان کند. */
.rh-media-modal[hidden]{display:none!important}
/* میانبر ورود امن و کنترل Push در ناوبری */
.nav-passkey-shortcut{display:inline-flex;align-items:center;gap:.34rem;min-height:2.35rem;padding:.45rem .62rem;border:1px solid rgba(124,58,237,.38);border-radius:.68rem;color:#fff!important;background:linear-gradient(135deg,#7c3aed,#4f46e5);font-size:.66rem;font-weight:900;text-decoration:none;box-shadow:0 6px 16px rgba(79,70,229,.2);transition:transform .16s ease,filter .16s ease}.nav-passkey-shortcut:hover,.nav-passkey-shortcut:focus-visible{color:#fff!important;filter:brightness(1.08);transform:translateY(-1px);outline:0}.nav-passkey-shortcut svg{width:1rem;height:1rem;flex:0 0 auto}.nav-passkey-menu-link{display:flex!important;align-items:center;gap:.5rem;border:1px solid rgba(124,58,237,.34);border-radius:.65rem;color:#6d28d9!important;background:rgba(124,58,237,.08);font-weight:900}.nav-passkey-menu-link svg{width:1.05rem;height:1.05rem}.dark .nav-passkey-menu-link{color:#ddd6fe!important;background:rgba(124,58,237,.18);border-color:rgba(196,181,253,.35)}.notification-push-enable{display:flex;align-items:center;justify-content:center;width:100%;min-height:2.5rem;margin-top:.7rem;padding:.55rem .75rem;border:1px solid #7c3aed;border-radius:.68rem;color:#fff;background:linear-gradient(135deg,#7c3aed,#4f46e5);font-family:inherit;font-size:.71rem;font-weight:900;cursor:pointer;box-shadow:0 6px 16px rgba(79,70,229,.18);transition:transform .16s ease,filter .16s ease}.notification-push-enable:hover:not(:disabled),.notification-push-enable:focus-visible:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);outline:0}.notification-push-enable.is-active,.notification-push-enable:disabled{border-color:#059669;color:#ecfdf5;background:linear-gradient(135deg,#047857,#059669);box-shadow:none;cursor:default}.notification-push-feedback{margin:.5rem 0 0;padding:.45rem .55rem;border-radius:.5rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.65rem;line-height:1.7}.notification-push-feedback[hidden]{display:none!important}
/* انتخابگرهای Quill: فضای متن و فلش از هم جدا می‌مانند. */
#blog-editor-toolbar .ql-picker-label,#email-editor-toolbar .ql-picker-label{position:relative!important;display:flex!important;align-items:center!important;min-height:1.72rem;padding-inline-start:.48rem!important;padding-inline-end:1.7rem!important;direction:rtl!important}#blog-editor-toolbar .ql-picker-label svg,#email-editor-toolbar .ql-picker-label svg{position:absolute!important;right:auto!important;left:.38rem!important;top:50%!important;margin:0!important;transform:translateY(-50%)!important;pointer-events:none}#blog-editor-toolbar .ql-picker-options,#email-editor-toolbar .ql-picker-options{direction:rtl;text-align:right}#blog-editor-toolbar .ql-picker-item,#email-editor-toolbar .ql-picker-item{padding-inline:.5rem!important}
@media(max-width:760px){.nav-passkey-shortcut span{display:none}.nav-passkey-shortcut{width:2.35rem;padding:.45rem;justify-content:center}}
/* گروه‌بندی ابزارهای مدیر و خرید تمرین افزوده */
.admin-shortcut-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-shortcut-group{padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface-alt)}.admin-shortcut-group h3{margin:0 0 .7rem;color:var(--rh-ink);font-size:.83rem;font-weight:950}.admin-shortcut-group .admin-shortcuts{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem}.admin-shortcut-group .admin-shortcut{background:var(--rh-surface)}.homework-extra-packages{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.85rem}.homework-extra-packages form{margin:0}.homework-extra-packages .button-secondary{min-height:2.5rem;border-color:#7c3aed;color:#5b21b6;background:#f5f3ff;font-size:.72rem;font-weight:900}.dark .homework-extra-packages .button-secondary{border-color:rgba(196,181,253,.38);color:#ddd6fe;background:rgba(124,58,237,.16)}.homework-extra-package-fields{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin:0;padding:.65rem;border:1px dashed var(--rh-border);border-radius:.7rem}.homework-extra-package-fields legend{padding:0 .3rem;color:var(--rh-muted);font-size:.65rem;font-weight:850}.homework-extra-package-fields label{display:grid;gap:.28rem;color:var(--rh-muted);font-size:.64rem;font-weight:800}@media(max-width:760px){.admin-shortcut-groups{grid-template-columns:1fr}.homework-extra-package-fields{grid-template-columns:1fr}.homework-extra-packages,.homework-extra-packages form,.homework-extra-packages .button-secondary{width:100%}}


/* تنظیمات بسته‌های تمرین افزوده: هر پکیج یک کارت مستقل و قابل‌خواندن است. */
.homework-setting-card{grid-template-columns:minmax(0,1fr) minmax(8rem,.7fr) minmax(8rem,.7fr) auto;align-items:start}
.homework-extra-packages{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;min-width:0}
.homework-extra-package-fields{min-width:0;margin:0;padding:.7rem;border:1px dashed var(--rh-border);border-radius:.7rem;background:var(--rh-surface)}
.homework-extra-package-fields legend{padding:0 .3rem;color:var(--rh-ink);font-size:.63rem;font-weight:850}
.homework-extra-package-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;min-width:0}
.homework-extra-package-fields label{min-width:0}
.homework-extra-package-fields .form-input{width:100%;min-width:0;text-align:center;direction:ltr}
.homework-extra-package-fields p{margin:.5rem 0 0;color:var(--rh-muted);font-size:.56rem;line-height:1.65}
.homework-setting-card>small{grid-column:1/-1;line-height:1.65}
.homework-setting-card>.button-soft{justify-self:start}
@media(max-width:1100px){.homework-settings-grid{grid-template-columns:1fr}.homework-setting-card{grid-template-columns:minmax(0,1fr) repeat(2,minmax(8rem,.7fr)) auto}}
@media(max-width:680px){.homework-setting-card{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-setting-card>div{grid-column:1/-1}.homework-extra-packages{grid-template-columns:1fr}.homework-setting-card>.button-soft{width:100%;grid-column:1/-1;justify-content:center}}


/* مرکز اعلان: ویرایشگر حرفه‌ای و انتخاب هنرجو با جست‌وجوی server-side. */
.notification-compose-form{display:grid;gap:1rem}.notification-student-search-panel{display:grid;gap:.55rem;padding:.8rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface-alt)}.notification-student-search-panel>small{color:var(--rh-muted);font-size:.64rem}.notification-student-results{display:grid;gap:.35rem;max-height:15rem;overflow:auto}.notification-student-result{display:flex;align-items:center;justify-content:space-between;gap:.7rem;width:100%;padding:.55rem .65rem;border:1px solid var(--rh-border);border-radius:.6rem;color:var(--rh-ink);background:var(--rh-surface);font:inherit;text-align:right;cursor:pointer}.notification-student-result:hover{border-color:rgba(79,70,229,.4);color:var(--rh-primary);background:rgba(79,70,229,.05)}.notification-student-result b{font-size:.7rem}.notification-student-result span{overflow:hidden;color:var(--rh-muted);font-size:.62rem;text-overflow:ellipsis;white-space:nowrap;direction:ltr}.notification-selected-students{display:flex;flex-wrap:wrap;gap:.4rem;min-height:2.2rem}.notification-student-placeholder{margin:0;color:var(--rh-muted);font-size:.64rem}.notification-student-placeholder.is-error{color:#be123c}.notification-student-chip{display:inline-flex;align-items:center;gap:.34rem;max-width:100%;min-height:2rem;padding:.32rem .42rem;border:1px solid rgba(79,70,229,.24);border-radius:.55rem;color:#312e81;background:#eef2ff}.notification-student-chip b{font-size:.64rem}.notification-student-chip small{overflow:hidden;max-width:13rem;color:#5b5b8e;font-size:.56rem;text-overflow:ellipsis;white-space:nowrap;direction:ltr}.notification-student-chip button{display:grid;place-items:center;width:1.3rem;height:1.3rem;border:0;border-radius:999px;color:#be123c;background:#ffe4e6;font:inherit;font-size:1rem;line-height:1;cursor:pointer}.notification-rich-editor-label{display:grid;gap:.4rem}.notification-rich-editor{position:relative;min-width:0}.notification-editor-toolbar.ql-toolbar.ql-snow{display:flex;align-items:center;flex-wrap:wrap;gap:.12rem;border-color:var(--rh-border);border-radius:.7rem .7rem 0 0;background:var(--rh-surface-alt)}.notification-editor-toolbar .ql-picker{position:relative;display:inline-flex;align-items:center;height:1.9rem;direction:rtl}.notification-editor-toolbar .ql-picker-label{display:inline-flex!important;position:relative!important;align-items:center!important;gap:.16rem;min-width:4.25rem;height:1.9rem;padding:0 .3rem!important;border:0!important}.notification-editor-toolbar .ql-picker-label:before{flex:1;min-width:0;line-height:1.9rem!important;text-align:right}.notification-editor-toolbar .ql-picker-label svg{position:static!important;display:block!important;flex:0 0 .9rem;width:.9rem!important;height:.9rem!important;margin:0!important;transform:none!important}.notification-editor-toolbar .ql-picker-options{z-index:40!important;max-height:13rem;overflow-y:auto}.notification-emoji-toggle{width:1.85rem!important;height:1.85rem!important;padding:0!important;border:1px solid var(--rh-border)!important;border-radius:.45rem!important;color:var(--rh-primary)!important;background:var(--rh-surface)!important;font:inherit!important;font-size:1rem!important}.notification-quill-editor.ql-container.ql-snow{border-color:var(--rh-border);border-radius:0 0 .7rem .7rem;font-family:inherit}.notification-quill-editor .ql-editor{min-height:9rem;color:var(--rh-ink);font-family:inherit;font-size:.82rem;line-height:2;text-align:right}.notification-emoji-panel{position:absolute;z-index:45;top:3rem;left:.45rem;display:grid;grid-template-columns:repeat(7,1fr);gap:.28rem;width:min(18rem,calc(100vw - 4rem));padding:.5rem;border:1px solid var(--rh-border);border-radius:.65rem;background:var(--rh-surface);box-shadow:0 14px 32px rgba(15,23,42,.18)}.notification-emoji-panel button{display:grid;place-items:center;min-width:0;height:2rem;border:0;border-radius:.45rem;background:var(--rh-surface-alt);font-size:1.05rem;cursor:pointer}.notification-emoji-panel button:hover{background:#e0e7ff}.nav-notification-rich-body{display:block;color:var(--rh-muted);font-size:.66rem;line-height:1.75}.nav-notification-rich-body p{margin:.15rem 0}.nav-notification-rich-body ol,.nav-notification-rich-body ul{margin:.15rem 0;padding-inline-start:1.1rem}.nav-notification-rich-body a{color:var(--rh-primary);text-decoration:underline}.nav-notification-rich-body .ql-align-center{text-align:center}.nav-notification-rich-body .ql-align-right{text-align:right}.nav-notification-rich-body .ql-size-small{font-size:.58rem}.nav-notification-rich-body .ql-size-large{font-size:.78rem}.nav-notification-rich-body .ql-size-huge{font-size:.9rem}.dark .notification-student-search-panel{border-color:rgba(165,180,252,.25);background:rgba(255,255,255,.035)}.dark .notification-student-result{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.03)}.dark .notification-student-chip{border-color:rgba(165,180,252,.3);color:#e0e7ff;background:rgba(79,70,229,.2)}.dark .notification-student-chip small{color:#c7d2fe}.dark .notification-editor-toolbar.ql-toolbar.ql-snow{background:rgba(255,255,255,.05)}.dark .notification-editor-toolbar .ql-stroke{stroke:var(--rh-ink)}.dark .notification-editor-toolbar .ql-fill{fill:var(--rh-ink)}.dark .notification-emoji-panel{border-color:rgba(255,255,255,.14);background:#182136}.dark .notification-emoji-panel button{background:rgba(255,255,255,.08)}
@media(max-width:620px){.notification-student-result{align-items:flex-start;flex-direction:column}.notification-student-result span{max-width:100%}.notification-emoji-panel{right:.25rem;left:auto;grid-template-columns:repeat(6,1fr)}.notification-editor-toolbar .ql-formats{margin-right:0!important}.notification-editor-toolbar .ql-picker-label{min-width:3.8rem}.notification-student-chip small{max-width:8rem}}


/* رسانهٔ بصری دوره و جلسه: انتخابگر، پیش‌نمایش و نمایش عمومی. */
.course-visual-media-section,.lesson-visual-media-section{display:grid;gap:.8rem;padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface-alt)}.course-visual-media-grid{display:grid;grid-template-columns:minmax(9rem,.55fr) minmax(0,1.45fr) minmax(0,1fr);gap:.75rem;align-items:end}.course-visual-preview{display:grid;grid-template-columns:minmax(0,16rem) 1fr;align-items:center;gap:.75rem;overflow:hidden;padding:.65rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface)}.course-visual-preview img,.course-visual-preview video{display:block;width:100%;max-height:11rem;border-radius:.55rem;object-fit:cover;background:#111827}.course-visual-preview span{color:var(--rh-muted);font-size:.66rem;line-height:1.7}.catalog-cover video,.course-poster video{display:block;width:100%;height:100%;object-fit:cover;background:#111827}.lesson-visual-banner{overflow:hidden;margin-bottom:1rem;border:1px solid var(--rh-border);border-radius:.85rem;background:#111827}.lesson-visual-banner img,.lesson-visual-banner video{display:block;width:100%;max-height:28rem;object-fit:cover;background:#111827}.dark .course-visual-media-section,.dark .lesson-visual-media-section{border-color:rgba(165,180,252,.25);background:rgba(255,255,255,.035)}.dark .course-visual-preview{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.03)}
@media(max-width:780px){.course-visual-media-grid{grid-template-columns:1fr}.course-visual-preview{grid-template-columns:1fr}.course-visual-preview span{padding-inline:.2rem}.lesson-visual-banner img,.lesson-visual-banner video{max-height:20rem}}


/* نمای مالی و گزارش‌های مدیریتی: کارت‌های داده، فیلتر خوانا و نمودارهای هم‌هویت با اپ. */
.finance-hero,.reports-hero{margin-bottom:1rem}.finance-filter-card{border-color:rgba(79,70,229,.17);box-shadow:0 14px 32px rgba(15,23,42,.05)}.finance-filter-card .surface-card-inner{display:grid;gap:1rem}.finance-filter-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.finance-filter-intro h2{margin:.22rem 0;color:var(--rh-ink);font-size:1.04rem;font-weight:900}.finance-filter-intro>div>span,.finance-table-header>div>span,.report-chart-card header>div>span,.report-insight-strip>div>span{color:var(--rh-primary);font-size:.62rem;font-weight:900;letter-spacing:.02em}.finance-filter-intro p{max-width:44rem;margin:.28rem 0 0;color:var(--rh-muted);font-size:.67rem;line-height:1.8}.finance-filter-summary{display:grid;flex:0 0 auto;gap:.22rem;min-width:11rem;padding:.65rem .75rem;border:1px solid rgba(79,70,229,.16);border-radius:.7rem;background:rgba(79,70,229,.05)}.finance-filter-summary strong{color:var(--rh-primary);font-size:.95rem;font-weight:900}.finance-filter-summary span{color:var(--rh-muted);font-size:.58rem;line-height:1.55}.finance-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:.65rem;align-items:end;padding:.8rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface-alt)}.finance-filters .form-label{min-width:0}.finance-filter-actions{display:flex;align-items:center;gap:.4rem}.finance-filter-actions>*{white-space:nowrap}.finance-export-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;padding-top:.1rem}.finance-export-actions>span{margin-left:auto;color:var(--rh-muted);font-size:.63rem}.finance-export-actions .button-soft{min-height:2.15rem}.finance-print-area{border-color:rgba(79,70,229,.14);box-shadow:0 14px 34px rgba(15,23,42,.05)}.finance-table-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1rem .8rem;border-bottom:1px solid var(--rh-border)}.finance-table-header h2{margin:.2rem 0 0;color:var(--rh-ink);font-size:1rem;font-weight:900}.finance-table-header>strong{padding:.5rem .7rem;border:1px solid rgba(5,150,105,.22);border-radius:.6rem;color:#047857;background:#ecfdf5;font-size:.7rem}.finance-data-table{overflow-x:auto}.finance-data-table table{min-width:1040px}.finance-data-table thead th{padding:.75rem .62rem;color:#4338ca;background:rgba(79,70,229,.055);font-size:.62rem;white-space:nowrap}.finance-data-table tbody td{padding:.72rem .62rem;vertical-align:top;font-size:.64rem;line-height:1.65}.finance-data-table tbody tr:hover{background:rgba(79,70,229,.035)}.finance-data-table tfoot th{padding:.8rem .62rem;border-top:2px solid rgba(79,70,229,.25);color:#312e81;background:#f5f3ff;font-size:.68rem}.finance-amount{color:#312e81;font-weight:900;white-space:nowrap;direction:ltr;text-align:left}.finance-status-chip{display:inline-flex;align-items:center;min-height:1.55rem;padding:.2rem .45rem;border-radius:999px;font-size:.57rem;font-weight:850;white-space:nowrap}.finance-status-chip.is-success{color:#047857;background:#d1fae5}.finance-status-chip.is-failed{color:#be123c;background:#ffe4e6}.dark .finance-filter-card,.dark .finance-print-area{border-color:rgba(165,180,252,.23);box-shadow:none}.dark .finance-filters{border-color:rgba(255,255,255,.11);background:rgba(255,255,255,.03)}.dark .finance-filter-summary{border-color:rgba(165,180,252,.25);background:rgba(79,70,229,.13)}.dark .finance-table-header>strong{border-color:rgba(52,211,153,.25);color:#a7f3d0;background:rgba(6,78,59,.26)}.dark .finance-data-table thead th{color:#c7d2fe;background:rgba(79,70,229,.17)}.dark .finance-data-table tfoot th{color:#ddd6fe;background:rgba(79,70,229,.18)}.dark .finance-amount{color:#ddd6fe}.dark .finance-status-chip.is-success{color:#a7f3d0;background:rgba(6,78,59,.3)}.dark .finance-status-chip.is-failed{color:#fecdd3;background:rgba(136,19,55,.28)}
.report-year-chip{display:inline-flex;align-items:center;min-height:2.2rem;padding:.4rem .65rem;border:1px solid rgba(255,255,255,.25);border-radius:.65rem;color:#fff;background:rgba(255,255,255,.12);font-size:.65rem;font-weight:900}.report-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:0 0 .9rem}.report-kpi-card{display:flex;align-items:center;gap:.75rem;min-width:0;padding:1rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 10px 24px rgba(15,23,42,.045)}.report-kpi-icon{display:grid;place-items:center;flex:0 0 auto;width:2.8rem;height:2.8rem;border-radius:.85rem;color:#fff;background:linear-gradient(135deg,#5b21b6,#8b5cf6);font-size:.72rem;font-weight:900}.report-kpi-card.is-orders .report-kpi-icon{background:linear-gradient(135deg,#047857,#10b981)}.report-kpi-card.is-revenue .report-kpi-icon{background:linear-gradient(135deg,#b45309,#f59e0b)}.report-kpi-card>div{display:grid;gap:.14rem;min-width:0}.report-kpi-card small{color:var(--rh-muted);font-size:.64rem}.report-kpi-card strong{overflow:hidden;color:var(--rh-ink);font-size:1.16rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.report-kpi-card p{margin:0;color:var(--rh-muted);font-size:.57rem;line-height:1.5}.report-insight-strip{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem;padding:.9rem 1rem;border:1px solid rgba(14,165,233,.18);border-radius:1rem;background:linear-gradient(135deg,rgba(224,231,255,.72),rgba(224,242,254,.72))}.report-insight-strip strong{display:block;margin:.15rem 0;color:#312e81;font-size:.84rem;font-weight:900}.report-insight-strip p{margin:0;color:#475569;font-size:.62rem;line-height:1.6}.report-charts-layout{display:grid;grid-template-columns:minmax(18rem,.78fr) minmax(0,1.5fr);gap:.85rem}.report-chart-card{display:grid;grid-template-rows:auto minmax(18rem,1fr);min-width:0;padding:1rem;border-color:rgba(79,70,229,.15);box-shadow:0 13px 30px rgba(15,23,42,.045)}.report-chart-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.report-chart-card h2{margin:.2rem 0;color:var(--rh-ink);font-size:.95rem;font-weight:900}.report-chart-card p{margin:0;color:var(--rh-muted);font-size:.62rem;line-height:1.7}.report-chart-canvas{position:relative;padding-top:.65rem}.report-chart-canvas canvas{width:100%!important}.report-chart-canvas--donut{max-width:20rem;margin-inline:auto;width:100%;height:22rem}.report-chart-canvas--income{height:22rem}.report-chart-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.28rem .5rem;max-width:10rem;color:var(--rh-muted);font-size:.57rem;line-height:1.5}.report-chart-legend i{display:inline-block;width:.52rem;height:.52rem;border-radius:999px;background:#5b21b6}.report-chart-legend i.is-self{background:#0ea5e9}.report-chart-badge{padding:.3rem .46rem;border-radius:.45rem;color:#047857;background:#d1fae5;font-size:.56rem;font-weight:850;white-space:nowrap}.dark .report-kpi-card,.dark .report-chart-card{border-color:rgba(165,180,252,.23);background:rgba(255,255,255,.035);box-shadow:none}.dark .report-insight-strip{border-color:rgba(56,189,248,.22);background:linear-gradient(135deg,rgba(49,46,129,.34),rgba(12,74,110,.28))}.dark .report-insight-strip strong{color:#ddd6fe}.dark .report-insight-strip p{color:#cbd5e1}.dark .report-chart-badge{color:#a7f3d0;background:rgba(6,78,59,.3)}
@media(max-width:1120px){.finance-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.report-charts-layout{grid-template-columns:1fr}.report-method-card{min-height:26rem}.report-chart-canvas--donut{max-width:24rem}}@media(max-width:740px){.finance-filter-intro,.finance-table-header,.report-insight-strip{align-items:stretch;flex-direction:column}.finance-filter-summary{min-width:0}.finance-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-filter-actions{grid-column:1/-1}.finance-filter-actions>*{flex:1;text-align:center}.finance-export-actions>span{width:100%;margin-left:0}.report-kpi-grid{grid-template-columns:1fr}.report-kpi-card strong{font-size:1.05rem}.report-chart-card{padding:.8rem}.report-chart-card header{flex-direction:column}.report-chart-canvas--income{min-height:17rem}}@media(max-width:450px){.finance-filters{grid-template-columns:1fr}.finance-filter-actions{flex-direction:column}.finance-filter-actions>*{width:100%}.report-year-chip{width:100%;justify-content:center}}


/* انتخابگر ایموجی اعلان: hidden باید از display:grid نویسندهٔ CSS اولویت بالاتر داشته باشد. */
.notification-emoji-panel[hidden]{display:none!important}.notification-emoji-panel{max-height:min(23rem,calc(100vh - 4rem));overflow-y:auto;overscroll-behavior:contain}.notification-emoji-panel button:focus-visible{outline:2px solid var(--rh-primary);outline-offset:2px}


/* استودیوی حرفه‌ای رسانه و کارت‌ها: دادهٔ ساخت‌یافته، نه جایگزینی شکنندهٔ HTML. */
.visual-studio-hero{margin-bottom:1rem}.visual-studio-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(16rem,.75fr);gap:1rem;align-items:center;margin-bottom:1rem;padding:1.05rem;border:1px solid rgba(79,70,229,.18);border-radius:1rem;background:linear-gradient(135deg,#eef2ff,#f8fafc)}.visual-studio-intro>div>span,.visual-studio-label{color:var(--rh-primary);font-size:.62rem;font-weight:900;letter-spacing:.02em}.visual-studio-intro h2{margin:.22rem 0;color:var(--rh-ink);font-size:1.05rem;font-weight:950}.visual-studio-intro p{max-width:52rem;margin:0;color:var(--rh-muted);font-size:.67rem;line-height:1.85}.visual-studio-intro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.visual-studio-intro-grid article{display:grid;gap:.12rem;padding:.65rem;border:1px solid rgba(79,70,229,.13);border-radius:.65rem;text-align:center;background:rgba(255,255,255,.65)}.visual-studio-intro-grid b{color:#312e81;font-size:1rem;font-weight:950}.visual-studio-intro-grid span{color:var(--rh-muted);font-size:.56rem}.visual-studio-tabs{margin-bottom:.8rem}.visual-studio-panel{display:grid;gap:.8rem}.visual-studio-toolbar{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid var(--rh-border);border-radius:.9rem;background:var(--rh-surface)}.visual-studio-toolbar h2{margin:0 0 .25rem;color:var(--rh-ink);font-size:1rem;font-weight:950}.visual-studio-toolbar p{margin:0;color:var(--rh-muted);font-size:.64rem;line-height:1.7}.visual-studio-search{flex:0 0 min(17rem,100%);margin:0}.visual-studio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(23rem,1fr));gap:.8rem}.visual-studio-grid--lessons{grid-template-columns:repeat(auto-fill,minmax(25rem,1fr))}.visual-studio-card{display:grid;gap:.8rem;min-width:0;padding:.85rem;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 9px 24px rgba(15,23,42,.045)}.visual-studio-card[hidden]{display:none!important}.visual-studio-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem}.visual-studio-card-head h3{margin:.2rem 0;color:var(--rh-ink);font-size:.86rem;font-weight:900;line-height:1.65}.visual-studio-card-head p{margin:0;color:var(--rh-muted);font-size:.57rem}.visual-studio-card-head .button-soft{flex:0 0 auto;font-size:.58rem}.visual-studio-form{display:grid;gap:.65rem}.visual-studio-preview{display:grid;place-items:center;overflow:hidden;min-height:11rem;border:1px dashed rgba(79,70,229,.26);border-radius:.75rem;background:linear-gradient(135deg,#f8fafc,#eef2ff)}.visual-studio-preview--lesson{min-height:9rem}.visual-studio-preview img,.visual-studio-preview video{display:block;width:100%;height:12rem;object-fit:cover;background:#111827}.visual-studio-preview--lesson img,.visual-studio-preview--lesson video{height:10rem}.visual-studio-empty{padding:1rem;color:var(--rh-muted);font-size:.65rem;text-align:center}.visual-studio-fields{display:grid;grid-template-columns:minmax(8rem,.52fr) minmax(0,1.48fr);gap:.55rem;align-items:end}.visual-studio-fields .form-label{min-width:0}.visual-studio-fields .visual-studio-wide{grid-column:span 1}.visual-studio-fields [data-visual-poster-field][hidden]{display:none!important}.visual-studio-actions{display:flex;justify-content:flex-end;gap:.45rem;padding-top:.15rem;border-top:1px solid var(--rh-border)}.visual-studio-actions .button-soft,.visual-studio-actions .legacy-form-action{min-height:2.25rem}.dark .visual-studio-intro{border-color:rgba(165,180,252,.25);background:linear-gradient(135deg,rgba(49,46,129,.35),rgba(30,41,59,.55))}.dark .visual-studio-intro-grid article{border-color:rgba(165,180,252,.2);background:rgba(255,255,255,.04)}.dark .visual-studio-intro-grid b{color:#ddd6fe}.dark .visual-studio-toolbar,.dark .visual-studio-card{border-color:rgba(165,180,252,.22);background:rgba(255,255,255,.035);box-shadow:none}.dark .visual-studio-preview{border-color:rgba(165,180,252,.3);background:rgba(15,23,42,.4)}
@media(max-width:800px){.visual-studio-intro{grid-template-columns:1fr}.visual-studio-toolbar{align-items:stretch;flex-direction:column}.visual-studio-search{flex-basis:auto}.visual-studio-grid,.visual-studio-grid--lessons{grid-template-columns:1fr}}@media(max-width:510px){.visual-studio-intro-grid{grid-template-columns:1fr}.visual-studio-fields{grid-template-columns:1fr}.visual-studio-card-head{flex-direction:column}.visual-studio-actions{flex-direction:column}.visual-studio-actions>*{width:100%;text-align:center}}


/* ── Responsive administration baseline: mobile drawer and course list ── */
.site-navigation{max-height:calc(100dvh - 5.5rem);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.site-navigation-inner{min-height:min-content}.site-navigation-logout{position:sticky;bottom:0;padding:.6rem .1rem .1rem;background:linear-gradient(to bottom,color-mix(in srgb,var(--rh-surface) 0%,transparent),var(--rh-surface) 22%)}.site-navigation-logout button{box-shadow:0 7px 18px rgba(185,28,28,.12)}

.admin-course-list-page{padding:clamp(1rem,3vw,2rem) 0 3rem}.admin-course-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.admin-course-page-header>div{min-width:0}.admin-course-page-header h1{margin:.22rem 0 .4rem;color:var(--rh-ink);font-size:clamp(1.35rem,2.4vw,1.85rem);font-weight:950;line-height:1.45}.admin-course-page-header p{max-width:44rem;margin:0;color:var(--rh-muted);font-size:.75rem;line-height:1.85}.admin-course-page-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.admin-course-page-actions .legacy-form-action,.admin-course-page-actions .panel-back-action{min-height:2.6rem;padding:.55rem .85rem;font-size:.72rem;white-space:nowrap}.admin-course-list-surface{overflow:hidden;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 12px 30px rgba(15,23,42,.045)}.admin-course-table-wrap{overflow-x:auto}.admin-course-table{width:100%;min-width:940px;border-collapse:collapse;color:var(--rh-ink);font-size:.72rem}.admin-course-table th{padding:.92rem .8rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.65rem;font-weight:900;text-align:right;white-space:nowrap}.admin-course-table td{padding:.9rem .8rem;border-top:1px solid var(--rh-border);vertical-align:middle}.admin-course-table tbody tr{transition:background .16s ease}.admin-course-table tbody tr:hover{background:color-mix(in srgb,var(--rh-primary) 4%,var(--rh-surface))}.admin-course-table small{display:inline-block;margin-top:.16rem;color:var(--rh-muted);font-size:.58rem}.admin-course-title a{color:var(--rh-primary);font-size:.78rem;font-weight:900;line-height:1.75}.admin-course-title a:hover{text-decoration:underline}.admin-course-method-chip,.admin-course-status-chip{display:inline-flex;align-items:center;min-height:1.8rem;padding:.28rem .52rem;border-radius:999px;font-size:.61rem;font-weight:900;white-space:nowrap}.admin-course-method-chip.is-both{color:#6d28d9;background:#f3e8ff}.admin-course-method-chip.is-self_study{color:#047857;background:#d1fae5}.admin-course-method-chip.is-with_teacher{color:#1d4ed8;background:#dbeafe}.admin-course-status-chip.is-published{color:#166534;background:#dcfce7}.admin-course-status-chip.is-draft{color:#475569;background:#e2e8f0}.admin-course-status-chip.is-inactive{color:#b91c1c;background:#fee2e2}.admin-course-action-list{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.admin-course-action-list .button-soft,.admin-course-action-list .button-secondary{min-height:2.15rem;padding:.4rem .62rem;border-radius:.62rem;font-size:.64rem;white-space:nowrap}.dark .admin-course-list-surface{border-color:rgba(255,255,255,.14);background:#172033;box-shadow:none}.dark .admin-course-table th{background:#1e293b}.dark .admin-course-table td{border-color:rgba(255,255,255,.12)}.dark .admin-course-table tbody tr:hover{background:rgba(79,70,229,.12)}.dark .admin-course-method-chip.is-both{color:#ddd6fe;background:rgba(109,40,217,.28)}.dark .admin-course-method-chip.is-self_study{color:#a7f3d0;background:rgba(5,150,105,.25)}.dark .admin-course-method-chip.is-with_teacher{color:#bfdbfe;background:rgba(37,99,235,.25)}.dark .admin-course-status-chip.is-published{color:#bbf7d0;background:rgba(22,101,52,.32)}.dark .admin-course-status-chip.is-draft{color:#cbd5e1;background:rgba(100,116,139,.32)}.dark .admin-course-status-chip.is-inactive{color:#fecaca;background:rgba(153,27,27,.3)}

@media(max-width:640px){.site-navigation{position:fixed!important;z-index:1250;top:calc(env(safe-area-inset-top) + 4.55rem)!important;inset-inline:0!important;width:100%!important;max-height:calc(100dvh - env(safe-area-inset-top) - 4.55rem)!important;padding:.45rem max(.65rem,env(safe-area-inset-right)) calc(.65rem + env(safe-area-inset-bottom)) max(.65rem,env(safe-area-inset-left));border-inline:0;border-bottom:1px solid var(--rh-border);border-radius:0;background:var(--rh-surface);box-shadow:0 20px 42px rgba(15,23,42,.2)}.site-navigation-inner{gap:.5rem;padding:.2rem 0 .5rem}.site-navigation-links>a,.site-navigation-account>a{min-height:2.7rem;padding:.58rem .72rem;font-size:.8rem}.site-navigation-logout button{min-height:2.75rem;font-size:.8rem}.admin-course-list-page{padding:1rem 0 2rem}.admin-course-page-header{align-items:stretch;flex-direction:column;margin-bottom:.9rem}.admin-course-page-header p{font-size:.7rem}.admin-course-page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.admin-course-page-actions .legacy-form-action,.admin-course-page-actions .panel-back-action{width:100%;min-height:2.75rem;padding:.52rem .45rem;font-size:.68rem;text-align:center}.admin-course-table-wrap{overflow:visible}.admin-course-table{min-width:0;display:block}.admin-course-table thead{display:none}.admin-course-table tbody{display:grid;gap:.7rem;padding:.7rem}.admin-course-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .65rem;padding:.75rem;border:1px solid var(--rh-border);border-radius:.85rem;background:var(--rh-surface);box-shadow:0 5px 15px rgba(15,23,42,.035)}.admin-course-table td{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:center;padding:.26rem 0;border:0;text-align:left;font-size:.68rem}.admin-course-table td::before{content:attr(data-label);color:var(--rh-muted);font-size:.58rem;font-weight:850;text-align:right}.admin-course-table td[data-label="عنوان دوره"],.admin-course-table td[data-label="عملیات"]{grid-column:1/-1}.admin-course-title a{font-size:.76rem;text-align:left}.admin-course-row-actions{padding-top:.55rem!important;margin-top:.12rem;border-top:1px dashed var(--rh-border)!important}.admin-course-action-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.admin-course-action-list .button-soft,.admin-course-action-list .button-secondary{justify-content:center;width:100%;min-height:2.5rem;padding:.45rem .35rem;font-size:.66rem}.admin-course-table tr:has(.table-empty){display:block;text-align:center}.admin-course-table .table-empty{display:block;padding:2rem .75rem!important;text-align:center}.admin-course-table .table-empty::before{display:none}.dark .admin-course-table tr{border-color:rgba(255,255,255,.13);background:#1e293b}.dark .admin-course-row-actions{border-color:rgba(255,255,255,.14)!important}}

@media(max-width:360px){.site-navigation{top:4.25rem!important;max-height:calc(100dvh - 4.25rem)!important}.nav-bar{min-height:4.25rem}.admin-course-page-actions{grid-template-columns:1fr}.admin-course-table tr{grid-template-columns:1fr}.admin-course-table td{grid-template-columns:minmax(0,1fr) auto}.admin-course-action-list{grid-template-columns:1fr}}


/* ── Course structure studio and notification history ── */
.admin-course-structure-page{padding:clamp(1rem,3vw,2rem) 0 3rem}.course-structure-create-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(22rem,.95fr);align-items:end;gap:1.2rem;margin-bottom:1rem;padding:1.15rem 1.2rem;border:1px solid rgba(79,70,229,.22);border-radius:1rem;background:linear-gradient(135deg,color-mix(in srgb,var(--rh-surface) 84%,#eef2ff),var(--rh-surface));box-shadow:0 10px 25px rgba(79,70,229,.06)}.course-structure-kicker,.notification-history-kicker{display:inline-flex;align-items:center;min-height:1.55rem;padding:.2rem .5rem;border-radius:999px;color:#4338ca;background:#e0e7ff;font-size:.57rem;font-weight:900}.course-structure-create-card h2{margin:.48rem 0 .3rem;color:var(--rh-ink);font-size:1rem;font-weight:950}.course-structure-create-card p{margin:0;color:var(--rh-muted);font-size:.68rem;line-height:1.8}.course-structure-create-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:end}.course-structure-create-form .form-input{min-height:2.75rem;color:var(--rh-ink);background:var(--rh-surface);font-size:.72rem}.course-structure-create-form .legacy-form-action{min-height:2.75rem;padding:.52rem .85rem;font-size:.69rem;white-space:nowrap}.course-structure-list{display:grid;gap:1rem}.course-structure-card{overflow:hidden;border:1px solid var(--rh-border);border-radius:1rem;background:var(--rh-surface);box-shadow:0 10px 25px rgba(15,23,42,.045)}.course-structure-card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;border-bottom:1px solid var(--rh-border);background:var(--rh-surface-alt)}.course-structure-section-title{display:flex;align-items:center;gap:.65rem;min-width:0}.course-structure-folder{display:grid;place-items:center;flex:0 0 2.35rem;width:2.35rem;height:2.35rem;border-radius:.72rem;background:#fef3c7;font-size:1.05rem}.course-structure-section-title h2{overflow:hidden;margin:0;color:var(--rh-ink);font-size:.9rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.course-structure-section-title p{margin:.2rem 0 0;color:var(--rh-muted);font-size:.63rem}.course-structure-section-actions{justify-content:flex-end}.course-structure-card-body{padding:1rem 1.1rem}.course-structure-lesson-table-wrap{overflow-x:auto}.course-structure-lesson-table{width:100%;min-width:680px;border-collapse:collapse;color:var(--rh-ink);font-size:.69rem}.course-structure-lesson-table th{padding:.68rem .55rem;color:var(--rh-muted);border-bottom:1px solid var(--rh-border);font-size:.6rem;font-weight:900;text-align:right;white-space:nowrap}.course-structure-lesson-table td{padding:.72rem .55rem;border-bottom:1px solid var(--rh-border);vertical-align:middle}.course-structure-lesson-table tbody tr:last-child td{border-bottom:0}.course-structure-lesson-table tbody tr:hover{background:color-mix(in srgb,var(--rh-primary) 3%,var(--rh-surface))}.course-structure-lesson-number{color:var(--rh-primary);font-weight:900;white-space:nowrap}.course-structure-lesson-title{font-weight:850;line-height:1.65}.course-structure-boolean{display:inline-flex;align-items:center;min-height:1.65rem;padding:.18rem .43rem;border-radius:999px;font-size:.57rem;font-weight:850;white-space:nowrap}.course-structure-boolean.is-yes{color:#166534;background:#dcfce7}.course-structure-boolean.is-no{color:var(--rh-muted);background:var(--rh-surface-alt)}.course-structure-lesson-actions{justify-content:flex-start}.course-structure-lesson-actions form{margin:0}.course-structure-empty-lessons{display:flex;align-items:center;gap:.5rem;margin-bottom:.9rem;padding:.78rem .85rem;border:1px dashed var(--rh-border);border-radius:.75rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.68rem}.course-structure-empty-lessons span{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:.5rem;color:var(--rh-primary);background:#e0e7ff}.course-structure-empty-lessons p{margin:0}.course-lesson-create-form{margin-top:1rem;padding:1rem;border:1px dashed rgba(79,70,229,.32);border-radius:.85rem;background:color-mix(in srgb,var(--rh-surface) 92%,#eef2ff)}.course-lesson-create-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem}.course-lesson-create-main .form-input{min-height:2.65rem;color:var(--rh-ink);background:var(--rh-surface);font-size:.7rem}.course-lesson-create-main .legacy-form-action{min-height:2.65rem;padding:.5rem .75rem;font-size:.67rem}.course-lesson-homework-field{display:grid;gap:.35rem;color:var(--rh-ink);font-size:.68rem;font-weight:850}.course-lesson-homework-field textarea{min-height:5.5rem;resize:vertical}.course-structure-empty-state{display:grid;justify-items:center;gap:.45rem;padding:3.2rem 1rem;border:1px dashed var(--rh-border);border-radius:1rem;background:var(--rh-surface);text-align:center}.course-structure-empty-state>span{display:grid;place-items:center;width:3rem;height:3rem;border-radius:.9rem;background:#e0e7ff;font-size:1.3rem}.course-structure-empty-state h2{margin:.35rem 0 0;color:var(--rh-ink);font-size:1rem}.course-structure-empty-state p{margin:0;color:var(--rh-muted);font-size:.7rem}.dark .course-structure-create-card{border-color:rgba(165,180,252,.28);background:linear-gradient(135deg,#172033,#202554)}.dark .course-structure-kicker,.dark .notification-history-kicker{color:#c7d2fe;background:rgba(79,70,229,.28)}.dark .course-structure-card{border-color:rgba(255,255,255,.14);background:#172033;box-shadow:none}.dark .course-structure-card-head,.dark .course-structure-empty-lessons{border-color:rgba(255,255,255,.12);background:#1e293b}.dark .course-structure-folder{background:rgba(180,83,9,.25)}.dark .course-structure-lesson-table th,.dark .course-structure-lesson-table td{border-color:rgba(255,255,255,.11)}.dark .course-structure-lesson-table tbody tr:hover{background:rgba(79,70,229,.13)}.dark .course-structure-boolean.is-yes{color:#bbf7d0;background:rgba(22,101,52,.32)}.dark .course-lesson-create-form{border-color:rgba(165,180,252,.32);background:rgba(79,70,229,.1)}.dark .course-lesson-create-main .form-input{border-color:rgba(255,255,255,.15);color:#e2e8f0;background:#172033}

.notification-history-heading{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:1rem}.notification-history-count{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .62rem;border-radius:.6rem;color:var(--rh-primary);background:color-mix(in srgb,var(--rh-primary) 9%,var(--rh-surface));font-size:.64rem;font-weight:900;white-space:nowrap}.notification-history-table-wrap{margin-top:.9rem;overflow:hidden;border:1px solid var(--rh-border);border-radius:.85rem}.notification-history-table{width:100%;border-collapse:collapse;color:var(--rh-ink);font-size:.7rem}.notification-history-table th{padding:.8rem .7rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.61rem;font-weight:900;text-align:right;white-space:nowrap}.notification-history-table td{padding:.85rem .7rem;border-top:1px solid var(--rh-border);vertical-align:middle}.notification-history-table tbody tr{transition:background .16s ease}.notification-history-table tbody tr:hover{background:color-mix(in srgb,var(--rh-primary) 4%,var(--rh-surface))}.notification-history-title{min-width:15rem}.notification-history-title strong,.notification-history-title small{display:block}.notification-history-title strong{color:var(--rh-ink);font-size:.74rem;font-weight:900}.notification-history-title small{max-width:25rem;margin-top:.25rem;color:var(--rh-muted);font-size:.62rem;line-height:1.65}.notification-audience-chip{display:inline-flex;align-items:center;min-height:1.8rem;padding:.25rem .48rem;border-radius:999px;color:#3730a3;background:#eef2ff;font-size:.59rem;font-weight:850;white-space:nowrap}.notification-history-metric{display:inline-grid;place-items:center;min-width:2rem;min-height:1.8rem;padding:.2rem .42rem;border-radius:.52rem;color:var(--rh-ink);background:var(--rh-surface-alt);font-size:.65rem}.notification-history-metric.has-unread{color:#b45309;background:#fef3c7}.notification-history-table time{color:var(--rh-muted);font-size:.63rem;white-space:nowrap}.notification-history-actions form{margin:0}.notification-history-actions .button-danger-soft{min-height:2rem;padding:.34rem .58rem;font-size:.61rem;white-space:nowrap}.dark .notification-history-table-wrap{border-color:rgba(255,255,255,.14)}.dark .notification-history-table th{background:#1e293b}.dark .notification-history-table td{border-color:rgba(255,255,255,.12)}.dark .notification-history-table tbody tr:hover{background:rgba(79,70,229,.12)}.dark .notification-audience-chip{color:#c7d2fe;background:rgba(79,70,229,.22)}.dark .notification-history-metric{color:#e2e8f0;background:rgba(255,255,255,.07)}.dark .notification-history-metric.has-unread{color:#fde68a;background:rgba(180,83,9,.28)}

@media(max-width:760px){.course-structure-create-card{grid-template-columns:1fr;gap:.8rem}.course-structure-card-head{align-items:stretch;flex-direction:column}.course-structure-section-actions{justify-content:flex-start}.course-structure-lesson-table-wrap{overflow:visible}.course-structure-lesson-table{min-width:0;display:block}.course-structure-lesson-table thead{display:none}.course-structure-lesson-table tbody{display:grid;gap:.65rem}.course-structure-lesson-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.36rem .65rem;padding:.72rem;border:1px solid var(--rh-border);border-radius:.78rem;background:var(--rh-surface)}.course-structure-lesson-table td{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;align-items:center;padding:.22rem 0;border:0;text-align:left;font-size:.67rem}.course-structure-lesson-table td::before{content:attr(data-label);color:var(--rh-muted);font-size:.57rem;font-weight:850;text-align:right}.course-structure-lesson-table td[data-label="عنوان درس"],.course-structure-lesson-table td[data-label="عملیات"]{grid-column:1/-1}.course-structure-lesson-title{text-align:left}.course-structure-lesson-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;padding-top:.45rem;border-top:1px dashed var(--rh-border)}.course-structure-lesson-actions .button-soft,.course-structure-lesson-actions .button-secondary,.course-structure-lesson-actions .course-structure-delete-action{justify-content:center;width:100%;min-height:2.4rem;padding:.38rem .25rem;font-size:.62rem;text-align:center}.course-structure-lesson-actions form{display:flex;min-width:0}.course-structure-lesson-actions form button{flex:1}.dark .course-structure-lesson-table tr{border-color:rgba(255,255,255,.14);background:#1e293b}.dark .course-structure-lesson-actions{border-color:rgba(255,255,255,.13)}.notification-history-heading{align-items:stretch!important;flex-direction:column}.notification-history-count{align-self:flex-start}.notification-history-table-wrap{overflow:visible;border:0;background:transparent}.notification-history-table{display:block}.notification-history-table thead{display:none}.notification-history-table tbody{display:grid;gap:.7rem}.notification-history-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem .72rem;padding:.85rem;border:1px solid var(--rh-border);border-radius:.85rem;background:var(--rh-surface);box-shadow:0 6px 17px rgba(15,23,42,.035)}.notification-history-table td{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:center;padding:.2rem 0;border:0;text-align:left}.notification-history-table td::before{content:attr(data-label);color:var(--rh-muted);font-size:.57rem;font-weight:850;text-align:right}.notification-history-table td[data-label="عنوان"],.notification-history-table td[data-label="عملیات"]{grid-column:1/-1}.notification-history-title strong{font-size:.75rem;text-align:left}.notification-history-title small{max-width:none;text-align:left}.notification-history-actions{padding-top:.5rem!important;margin-top:.1rem;border-top:1px dashed var(--rh-border)!important}.notification-history-actions form,.notification-history-actions .button-danger-soft{width:100%}.notification-history-actions .button-danger-soft{justify-content:center;min-height:2.45rem}.notification-history-table tr:has(.table-empty){display:block;text-align:center}.notification-history-table .table-empty{display:block;padding:2rem .75rem!important;text-align:center}.notification-history-table .table-empty::before{display:none}.dark .notification-history-table tr{border-color:rgba(255,255,255,.14);background:#1e293b}.dark .notification-history-actions{border-color:rgba(255,255,255,.13)!important}}

@media(max-width:420px){.course-structure-create-form,.course-lesson-create-main{grid-template-columns:1fr}.course-structure-create-form .legacy-form-action,.course-lesson-create-main .legacy-form-action{width:100%;justify-content:center}.course-structure-card-head,.course-structure-card-body{padding:.8rem}.course-structure-section-actions{display:grid;grid-template-columns:2.15rem 2.15rem minmax(0,1fr);width:100%}.course-structure-section-actions form{display:flex}.course-structure-section-actions button{width:100%}.course-structure-lesson-table tr,.notification-history-table tr{grid-template-columns:1fr}.course-structure-lesson-actions{grid-template-columns:1fr}.course-structure-lesson-table td,.notification-history-table td{grid-template-columns:minmax(0,1fr) auto}.course-structure-lesson-table td[data-label="عنوان درس"],.course-structure-lesson-table td[data-label="عملیات"],.notification-history-table td[data-label="عنوان"],.notification-history-table td[data-label="عملیات"]{grid-column:auto}.notification-history-title,.course-structure-lesson-title{grid-template-columns:1fr!important}.notification-history-title::before,.course-structure-lesson-title::before{margin-bottom:.16rem}.notification-history-heading{gap:.65rem}}


/* ── Action badges, comment moderation and mobile overflow containment ── */
@supports (overflow:clip){html,body{overflow-x:clip}}html,body{max-width:100%;overflow-x:hidden}.site-shell,.site-nav,.site-footer,.site-nav .rh-container,.site-footer .rh-container,.dashboard-page{max-width:100%;min-width:0}.site-nav a,.site-footer a,.site-navigation-drawer a{overflow-wrap:anywhere}/* جدول‌های واکنش‌گرا: وقتی جدول در عرض کانتینر جا نمی‌شود، اسکرول افقی — نه بریدگی. */
.responsive-table{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.responsive-table table{min-width:100%}
.admin-action-count{display:inline-grid;place-items:center;flex:0 0 auto;min-width:1.28rem;height:1.28rem;margin-inline-start:.38rem;padding:0 .28rem;border:2px solid var(--rh-surface);border-radius:999px;color:#fff;background:linear-gradient(135deg,#ef4444,#be123c);box-shadow:0 3px 9px rgba(190,24,93,.25);font-size:.56rem;font-style:normal;font-weight:950;line-height:1}.admin-shortcut{min-width:0}.admin-shortcut:has(.admin-action-count){align-items:center}.dark .admin-action-count{border-color:#172033}

.blog-comment-admin-page{padding-bottom:3rem}.blog-comment-admin-hero{align-items:center}.blog-comment-review-summary{display:flex;align-items:center;gap:.85rem;margin:1rem 0;padding:.8rem 1rem;border:1px solid rgba(245,158,11,.32);border-radius:1rem;background:linear-gradient(135deg,#fffbeb,#fff7ed);box-shadow:0 10px 25px rgba(180,83,9,.055)}.blog-comment-summary-icon{display:grid;place-items:center;flex:0 0 2.65rem;width:2.65rem;height:2.65rem;border-radius:.8rem;background:#fef3c7;font-size:1.15rem}.blog-comment-review-summary>div:nth-child(2){display:grid;gap:.18rem;min-width:0}.blog-comment-review-summary span{color:#92400e;font-size:.62rem;font-weight:800}.blog-comment-review-summary strong{color:#78350f;font-size:.82rem;font-weight:950}.blog-comment-review-summary .button-secondary{margin-inline-start:auto;min-height:2.45rem;padding:.45rem .75rem;font-size:.65rem;white-space:nowrap}.blog-comment-filter-tabs{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.5rem;margin:1rem 0}.blog-comment-filter-tabs a{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:2.4rem;padding:.42rem .76rem;border:1px solid var(--rh-border);border-radius:.68rem;color:var(--rh-muted);background:var(--rh-surface);font-size:.66rem;font-weight:850;text-decoration:none;transition:.16s ease}.blog-comment-filter-tabs a:hover{color:var(--rh-primary);border-color:rgba(79,70,229,.36);transform:translateY(-1px)}.blog-comment-filter-tabs a.is-active{color:#fff;border-color:transparent;background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 7px 15px rgba(79,70,229,.18)}.blog-comment-filter-tabs span{display:inline-grid;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .25rem;border-radius:999px;color:#9f1239;background:#ffe4e6;font-size:.55rem;font-weight:950}.blog-comment-filter-tabs .is-active span{color:#4f46e5;background:#fff}.blog-comments-admin{overflow:hidden;border-color:rgba(79,70,229,.16)!important}.blog-comments-table-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-bottom:.9rem;border-bottom:1px solid var(--rh-border)}.blog-comments-kicker{display:inline-flex;align-items:center;min-height:1.5rem;padding:.18rem .5rem;border-radius:999px;color:#4338ca;background:#e0e7ff;font-size:.55rem;font-weight:950}.blog-comments-table-heading h2{margin:.38rem 0 .22rem;color:var(--rh-ink);font-size:1rem;font-weight:950}.blog-comments-table-heading p{margin:0;color:var(--rh-muted);font-size:.65rem}.blog-comments-privacy-note{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .58rem;border:1px solid #bfdbfe;border-radius:.58rem;color:#1d4ed8;background:#eff6ff;font-size:.58rem;font-weight:850;white-space:nowrap}.blog-comments-table-wrap{overflow-x:auto;border:1px solid var(--rh-border);border-radius:.9rem}.blog-comments-table{width:100%;min-width:820px;border-collapse:collapse;color:var(--rh-ink);font-size:.69rem;table-layout:fixed}.blog-comments-table th{padding:.76rem .65rem;color:var(--rh-muted);background:var(--rh-surface-alt);font-size:.59rem;font-weight:950;text-align:right;white-space:nowrap}.blog-comments-table th:nth-child(1){width:17%}.blog-comments-table th:nth-child(2){width:29%}.blog-comments-table th:nth-child(3){width:17%}.blog-comments-table th:nth-child(4){width:12%}.blog-comments-table th:nth-child(5){width:11%}.blog-comments-table th:nth-child(6){width:14%}.blog-comments-table td{padding:.85rem .65rem;border-top:1px solid var(--rh-border);vertical-align:top}.blog-comments-table tbody tr{transition:background .16s ease}.blog-comments-table tbody tr:hover{background:color-mix(in srgb,var(--rh-primary) 3.5%,var(--rh-surface))}.blog-comment-post-cell{display:grid;gap:.35rem}.blog-comment-post-link{overflow-wrap:anywhere;color:var(--rh-primary);font-size:.7rem;font-weight:950;line-height:1.7;text-decoration:none}.blog-comment-post-link:hover{text-decoration:underline}.blog-comment-author{display:flex;flex-wrap:wrap;gap:.3rem;color:var(--rh-muted);font-size:.61rem}.blog-comment-author em{display:inline-flex;align-items:center;padding:.13rem .35rem;border-radius:999px;color:#166534;background:#dcfce7;font-size:.52rem;font-style:normal;font-weight:850}.blog-comment-body-cell p{display:-webkit-box;overflow:hidden;margin:0;color:var(--rh-ink);font-size:.68rem;line-height:1.85;text-overflow:ellipsis;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:4}.blog-comment-contact-cell{display:flex;flex-wrap:wrap;gap:.32rem}.blog-comment-contact-chip{display:inline-flex;align-items:center;max-width:100%;min-height:1.7rem;padding:.18rem .42rem;border-radius:.47rem;color:#475569;background:var(--rh-surface-alt);font-size:.57rem;font-weight:750;overflow-wrap:anywhere;text-decoration:none}.blog-comment-contact-chip:hover{color:#3730a3;background:#eef2ff}.blog-comment-contact-chip.is-account{color:#166534;background:#dcfce7}.blog-comment-status{display:inline-flex;align-items:center;min-height:1.75rem;padding:.2rem .46rem;border-radius:999px;font-size:.57rem;font-weight:900;white-space:nowrap}.blog-comment-status.is-pending{color:#92400e;background:#fef3c7}.blog-comment-status.is-visible{color:#166534;background:#dcfce7}.blog-comment-status.is-hidden{color:#475569;background:#e2e8f0}.blog-comment-date{display:block;color:var(--rh-muted);font-size:.61rem;line-height:1.7;white-space:nowrap}.blog-comment-actions-cell{vertical-align:middle!important}.blog-comment-moderate-actions{display:flex;flex-wrap:wrap;gap:.35rem}.blog-comment-moderate-actions button{min-height:2rem;padding:.33rem .48rem;font-size:.59rem;white-space:nowrap}.blog-comments-table .table-empty{padding:2.8rem 1rem!important;text-align:center}.blog-comments-table .table-empty span,.blog-comments-table .table-empty strong,.blog-comments-table .table-empty small{display:block}.blog-comments-table .table-empty span{margin-bottom:.4rem;font-size:1.35rem}.blog-comments-table .table-empty strong{color:var(--rh-ink);font-size:.76rem}.blog-comments-table .table-empty small{margin-top:.3rem;color:var(--rh-muted);font-size:.62rem}.dark .blog-comment-review-summary{border-color:rgba(251,191,36,.25);background:linear-gradient(135deg,rgba(120,53,15,.35),rgba(67,20,7,.24))}.dark .blog-comment-summary-icon{background:rgba(180,83,9,.28)}.dark .blog-comment-review-summary span{color:#fde68a}.dark .blog-comment-review-summary strong{color:#fef3c7}.dark .blog-comment-filter-tabs a{border-color:rgba(255,255,255,.14);color:#cbd5e1;background:#172033}.dark .blog-comment-filter-tabs a.is-active{color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed)}.dark .blog-comment-filter-tabs span{color:#fecdd3;background:rgba(190,24,93,.38)}.dark .blog-comment-filter-tabs .is-active span{color:#4f46e5;background:#fff}.dark .blog-comments-kicker{color:#c7d2fe;background:rgba(79,70,229,.28)}.dark .blog-comments-table-heading{border-color:rgba(255,255,255,.12)}.dark .blog-comments-privacy-note{border-color:rgba(96,165,250,.28);color:#bfdbfe;background:rgba(30,64,175,.18)}.dark .blog-comments-table-wrap{border-color:rgba(255,255,255,.14)}.dark .blog-comments-table th{background:#1e293b}.dark .blog-comments-table td{border-color:rgba(255,255,255,.11)}.dark .blog-comments-table tbody tr:hover{background:rgba(79,70,229,.12)}.dark .blog-comment-contact-chip{color:#cbd5e1;background:rgba(255,255,255,.07)}.dark .blog-comment-contact-chip:hover{color:#c7d2fe;background:rgba(79,70,229,.22)}.dark .blog-comment-author em,.dark .blog-comment-contact-chip.is-account{color:#bbf7d0;background:rgba(22,101,52,.28)}.dark .blog-comment-status.is-pending{color:#fde68a;background:rgba(180,83,9,.28)}.dark .blog-comment-status.is-visible{color:#bbf7d0;background:rgba(22,101,52,.28)}.dark .blog-comment-status.is-hidden{color:#cbd5e1;background:rgba(148,163,184,.18)}

@media(max-width:760px){.rh-container,.site-nav,.site-footer,.site-navigation-drawer,.site-navigation-drawer *{max-width:100%;min-width:0}.site-navigation-drawer{overflow-x:hidden!important}.dashboard-hero,.dashboard-hero>*{min-width:0}.dashboard-hero p,.dashboard-subtitle{overflow-wrap:anywhere}.blog-comment-admin-hero{align-items:stretch}.blog-comment-review-summary{align-items:flex-start;flex-wrap:wrap}.blog-comment-review-summary .button-secondary{width:100%;margin-inline-start:0;justify-content:center}.blog-comment-filter-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem}.blog-comment-filter-tabs a{min-width:0;padding:.45rem .4rem;text-align:center}.blog-comments-table-heading{flex-direction:column;gap:.65rem}.blog-comments-privacy-note{align-self:flex-start}.blog-comments-table-wrap{overflow:visible;border:0}.blog-comments-table{min-width:0;display:block;table-layout:auto}.blog-comments-table thead{display:none}.blog-comments-table tbody{display:grid;gap:.75rem}.blog-comments-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem .7rem;padding:.9rem;border:1px solid var(--rh-border);border-radius:.9rem;background:var(--rh-surface);box-shadow:0 7px 18px rgba(15,23,42,.04)}.blog-comments-table td{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;align-items:start;padding:.16rem 0;border:0;text-align:left}.blog-comments-table td::before{content:attr(data-label);color:var(--rh-muted);font-size:.56rem;font-weight:900;text-align:right}.blog-comments-table td[data-label="مطلب و نویسنده"],.blog-comments-table td[data-label="متن دیدگاه"],.blog-comments-table td[data-label="عملیات"]{grid-column:1/-1}.blog-comment-post-cell,.blog-comment-body-cell,.blog-comment-actions-cell{grid-template-columns:1fr!important}.blog-comment-post-cell::before,.blog-comment-body-cell::before,.blog-comment-actions-cell::before{margin-bottom:.15rem}.blog-comment-body-cell p{display:block;overflow:visible;-webkit-line-clamp:unset}.blog-comment-contact-cell{justify-content:flex-start}.blog-comment-date{white-space:normal;text-align:left}.blog-comment-moderate-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;padding-top:.55rem;border-top:1px dashed var(--rh-border)}.blog-comment-moderate-actions button{justify-content:center;width:100%;min-height:2.45rem;padding:.38rem .2rem;font-size:.62rem}.blog-comments-table tr:has(.table-empty){display:block;text-align:center}.blog-comments-table .table-empty{display:block;padding:2.4rem 1rem!important;text-align:center}.blog-comments-table .table-empty::before{display:none}.dark .blog-comments-table tr{border-color:rgba(255,255,255,.14);background:#1e293b}.dark .blog-comment-moderate-actions{border-color:rgba(255,255,255,.13)}}

@media(max-width:380px){.blog-comment-filter-tabs{grid-template-columns:1fr}.blog-comments-table tr{grid-template-columns:1fr}.blog-comments-table td[data-label="مطلب و نویسنده"],.blog-comments-table td[data-label="متن دیدگاه"],.blog-comments-table td[data-label="عملیات"]{grid-column:auto}.blog-comment-moderate-actions{grid-template-columns:1fr}.blog-comment-review-summary{padding:.75rem}.admin-action-count{margin-inline-start:.28rem}.site-nav>.rh-container,.site-footer>.rh-container{padding-inline:1rem!important}}


/* خروج در جریان طبیعی drawer می‌ماند؛ پنل نقش‌محور باید سریع قابل تشخیص باشد. */
.site-navigation-logout{position:static!important;bottom:auto!important;padding:.55rem 0 0!important;background:transparent!important}.site-navigation-logout button{box-shadow:none!important}.site-navigation-role-dashboard{grid-column:1/-1;color:#fff!important;border:1px solid transparent!important;background:linear-gradient(135deg,#4338ca,#7c3aed)!important;box-shadow:0 7px 16px rgba(79,70,229,.22)}.site-navigation-role-dashboard:hover{color:#fff!important;background:linear-gradient(135deg,#3730a3,#6d28d9)!important;transform:translateY(-1px)}.dark .site-navigation-role-dashboard{color:#fff!important;border-color:rgba(199,210,254,.25)!important;background:linear-gradient(135deg,#6366f1,#8b5cf6)!important}.dark .site-navigation-role-dashboard:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed)!important}


/* درآمد ترمی: نمودارها برای هر تعداد دوره/ترم از دادهٔ واقعی ساخته می‌شوند. */
.report-term-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin:1rem 0 .85rem;padding:1rem 1.05rem;border:1px solid rgba(109,40,217,.18);border-radius:1rem;background:linear-gradient(135deg,rgba(245,243,255,.9),rgba(240,249,255,.85))}.report-term-intro>div:first-child{min-width:0}.report-term-intro>div:first-child>span{color:#6d28d9;font-size:.62rem;font-weight:900;letter-spacing:.02em}.report-term-intro h2{margin:.2rem 0;color:var(--rh-ink);font-size:1rem;font-weight:950}.report-term-intro p{max-width:48rem;margin:0;color:var(--rh-muted);font-size:.65rem;line-height:1.8}.report-term-legend{display:flex;align-items:center;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:.28rem .55rem;max-width:15rem;color:var(--rh-muted);font-size:.58rem;line-height:1.6}.report-term-legend i{display:inline-block;width:.56rem;height:.56rem;border-radius:999px;background:#0ea5e9}.report-term-legend i.is-teacher{background:#5b21b6}.report-term-legend i.is-total{background:#6d28d9}.report-charts-layout--terms{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.report-term-total-card,.report-term-method-card{grid-template-rows:auto minmax(25rem,1fr)}.report-chart-canvas--term-total{height:25rem}.report-chart-canvas--term-method{height:max(27rem,calc(var(--rh-term-count,15) * 1.72rem))}.dark .report-term-intro{border-color:rgba(167,139,250,.25);background:linear-gradient(135deg,rgba(76,29,149,.26),rgba(12,74,110,.2))}.dark .report-term-intro>div:first-child>span{color:#c4b5fd}.dark .report-term-legend{color:#cbd5e1}@media(max-width:1120px){.report-charts-layout--terms{grid-template-columns:1fr}.report-term-total-card,.report-term-method-card{grid-template-rows:auto minmax(22rem,1fr)}.report-chart-canvas--term-total{height:23rem}.report-chart-canvas--term-method{height:30rem}}@media(max-width:740px){.report-term-intro{align-items:stretch;flex-direction:column;padding:.85rem}.report-term-legend{justify-content:flex-start;max-width:none}.report-chart-canvas--term-total{height:22rem}.report-chart-canvas--term-method{height:29rem}}


/* باشگاه امتیاز: پنل هنرجو و تب کنترل مدیریت. */
.student-points-hero{margin-bottom:1rem}.student-points-balance-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1.1rem 1.25rem;border:1px solid rgba(109,40,217,.22);border-radius:1rem;background:linear-gradient(135deg,#312e81,#6d28d9);box-shadow:0 16px 35px rgba(76,29,149,.18)}.student-points-balance-card>div{display:flex;align-items:baseline;gap:.42rem}.student-points-balance-card span,.student-points-balance-card small{color:#ddd6fe;font-size:.68rem}.student-points-balance-card strong{color:#fff;font-size:2rem;font-weight:950}.student-points-balance-card p{max-width:28rem;margin:0;color:#ede9fe;font-size:.67rem;line-height:1.8}.student-points-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(16rem,.75fr);gap:1rem}.student-points-layout--history{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}.student-reward-card,.student-score-rules,.student-issued-coupons,.student-point-history{padding:1rem}.student-reward-card header>div>span,.student-score-rules header>span,.student-issued-coupons header span,.student-point-history header span,.score-admin-intro span{color:var(--rh-primary);font-size:.62rem;font-weight:900}.student-reward-card h2,.student-score-rules h2,.student-issued-coupons h2,.student-point-history h2,.score-admin-intro h2{margin:.22rem 0;color:var(--rh-ink);font-size:1rem;font-weight:950}.student-reward-card p,.score-admin-intro p{margin:.1rem 0;color:var(--rh-muted);font-size:.64rem;line-height:1.7}.student-reward-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.6rem;margin-top:.9rem}.student-reward-tier{display:grid;gap:.45rem;padding:.75rem;border:1px solid var(--rh-border);border-radius:.8rem;background:var(--rh-surface-alt)}.student-reward-tier>div{display:flex;align-items:baseline;justify-content:space-between;gap:.3rem}.student-reward-tier strong{color:var(--rh-muted);font-size:1.12rem;font-weight:950}.student-reward-tier span,.student-reward-tier p{color:var(--rh-muted);font-size:.57rem}.student-reward-tier p{margin:0}.student-reward-tier .legacy-form-action{min-height:2.05rem;padding:.35rem .45rem;font-size:.6rem}.student-reward-tier:not(.is-available) button{opacity:.5;cursor:not-allowed}.student-reward-tier.is-available{border-color:rgba(109,40,217,.35);background:#f5f3ff}.student-reward-tier.is-available strong{color:#6d28d9}.student-score-rules ul{display:grid;gap:.5rem;margin:.8rem 0 0;padding:0;list-style:none}.student-score-rules li{display:flex;align-items:flex-start;gap:.4rem;color:var(--rh-muted);font-size:.63rem;line-height:1.75}.student-score-rules b{display:inline-grid;place-items:center;flex:0 0 auto;min-width:1.55rem;height:1.55rem;border-radius:.45rem;color:#fff;background:#6d28d9;font-size:.58rem}.student-issued-coupon-list,.student-point-log-list,.score-admin-coupon-list{display:grid;gap:.55rem;margin-top:.8rem}.student-issued-coupon,.student-point-log,.score-admin-coupon{padding:.72rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface-alt)}.student-issued-coupon>div,.score-admin-coupon>div{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.student-issued-coupon strong,.score-admin-coupon strong{color:#312e81;font-size:.72rem;font-weight:950}.student-issued-coupon span,.score-admin-coupon span{color:var(--rh-muted);font-size:.58rem}.student-issued-coupon dl,.score-admin-coupon dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;margin:.55rem 0 0}.student-issued-coupon dt,.score-admin-coupon dt{color:var(--rh-muted);font-size:.54rem}.student-issued-coupon dd,.score-admin-coupon dd{margin:.1rem 0 0;color:var(--rh-ink);font-size:.6rem}.student-point-log{display:flex;align-items:center;gap:.65rem}.student-point-log>b{display:grid;place-items:center;flex:0 0 2.6rem;height:2.25rem;border-radius:.6rem;font-size:.72rem}.student-point-log.is-credit>b{color:#047857;background:#d1fae5}.student-point-log.is-debit>b{color:#be123c;background:#ffe4e6}.student-point-log strong,.student-point-log small{display:block}.student-point-log strong{color:var(--rh-ink);font-size:.64rem;line-height:1.65}.student-point-log small{margin-top:.12rem;color:var(--rh-muted);font-size:.54rem}.coupon-admin-tabs{display:flex;gap:.45rem;margin-bottom:1rem;padding:.35rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-surface)}.coupon-admin-tabs a{padding:.48rem .75rem;border-radius:.52rem;color:var(--rh-muted);font-size:.67rem;font-weight:850}.coupon-admin-tabs a.is-active{color:#fff;background:#5b21b6}.score-admin-intro{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem}.score-admin-search{display:flex;align-items:center;gap:.45rem;flex:0 0 min(25rem,100%)}.score-admin-search .form-input{min-width:0}.score-admin-search .button-soft{white-space:nowrap}.score-admin-students,.score-admin-issued{margin-bottom:1rem}.score-admin-student-list{display:grid;gap:.55rem}.score-admin-student{display:grid;grid-template-columns:minmax(12rem,1fr) auto minmax(23rem,1.4fr);gap:.7rem;align-items:center;padding:.75rem;border:1px solid var(--rh-border);border-radius:.78rem;background:var(--rh-surface-alt)}.score-admin-student-info strong,.score-admin-student-info span{display:block}.score-admin-student-info strong{color:var(--rh-ink);font-size:.68rem}.score-admin-student-info span{margin-top:.14rem;color:var(--rh-muted);font-size:.56rem;direction:ltr;text-align:right}.score-admin-balance{display:grid;place-items:center;min-width:4rem;padding:.4rem;border-radius:.6rem;color:#5b21b6;background:#ede9fe}.score-admin-balance b{font-size:.82rem}.score-admin-balance span{font-size:.52rem}.score-admin-adjust-form{display:grid;grid-template-columns:5.5rem minmax(0,1fr) auto;gap:.4rem}.score-admin-adjust-form .form-input{min-width:0;height:2.2rem;font-size:.62rem}.score-admin-adjust-form .legacy-form-action{min-height:2.2rem;padding:.38rem .55rem;font-size:.6rem;white-space:nowrap}.dark .student-reward-tier,.dark .student-issued-coupon,.dark .student-point-log,.dark .score-admin-coupon,.dark .score-admin-student{border-color:rgba(165,180,252,.22);background:rgba(255,255,255,.035)}.dark .student-reward-tier.is-available{background:rgba(109,40,217,.22)}.dark .student-reward-tier.is-available strong,.dark .student-issued-coupon strong,.dark .score-admin-coupon strong{color:#ddd6fe}.dark .coupon-admin-tabs{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.035)}.dark .score-admin-balance{color:#ddd6fe;background:rgba(109,40,217,.26)}@media(max-width:940px){.student-points-layout,.student-points-layout--history{grid-template-columns:1fr}.score-admin-student{grid-template-columns:1fr auto}.score-admin-adjust-form{grid-column:1/-1}}@media(max-width:620px){.student-points-balance-card,.score-admin-intro{align-items:stretch;flex-direction:column}.student-reward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.score-admin-search{flex-basis:auto;width:100%}.score-admin-student{grid-template-columns:1fr}.score-admin-balance{justify-self:start}.score-admin-adjust-form{grid-template-columns:1fr}.coupon-admin-tabs{overflow-x:auto}.coupon-admin-tabs a{white-space:nowrap}.student-issued-coupon dl,.score-admin-coupon dl{grid-template-columns:1fr}}


/* ناوبری موبایل بدون وابستگی به Alpine: حالت باز با JavaScript کنترل می‌شود. */
.site-menu-icon--close{display:none}.site-menu-trigger.is-open .site-menu-icon--open{display:none}.site-menu-trigger.is-open .site-menu-icon--close{display:block}.site-navigation[hidden]{display:none!important}.site-navigation.is-open{animation:site-navigation-reveal .18s ease-out}@keyframes site-navigation-reveal{from{opacity:0;transform:translateY(-.35rem)}to{opacity:1;transform:translateY(0)}}


/* انتخابگر جلالی یکپارچه: پوستهٔ مدرن، لمس‌پذیر و خوانا در موبایل. */
.jalali-date-input{cursor:pointer;background-image:linear-gradient(135deg,rgba(99,102,241,.05),rgba(124,58,237,.09))!important}.jalali-date-input:focus{border-color:#6366f1!important;box-shadow:0 0 0 3px rgba(99,102,241,.16)!important}.pwt-datepicker,.datepicker-plot-area{z-index:2500!important;border:1px solid rgba(99,102,241,.22)!important;border-radius:1rem!important;background:#fff!important;box-shadow:0 22px 50px rgba(30,41,59,.22)!important;font-family:Vazirmatn,system-ui,sans-serif!important}.datepicker-plot-area .datepicker-navigator .pwt-btn-switch,.datepicker-plot-area .datepicker-navigator .pwt-btn-prev,.datepicker-plot-area .datepicker-navigator .pwt-btn-next{min-width:2.5rem!important;min-height:2.5rem!important;border-radius:.65rem!important;color:#4338ca!important}.datepicker-plot-area .datepicker-day-view .table-days td span{min-width:2.35rem!important;height:2.35rem!important;line-height:2.35rem!important;border-radius:.65rem!important}.datepicker-plot-area .datepicker-day-view .table-days td.selected span{background:#5b21b6!important;box-shadow:0 5px 12px rgba(91,33,182,.25)!important}.datepicker-plot-area .toolbox{padding:.65rem!important;border-top:1px solid #e2e8f0!important}.datepicker-plot-area .toolbox .btn-today,.datepicker-plot-area .toolbox .btn-submit{min-height:2.25rem!important;border-radius:.55rem!important;font-family:inherit!important}.dark .pwt-datepicker,.dark .datepicker-plot-area{border-color:rgba(165,180,252,.24)!important;background:#1e293b!important;box-shadow:0 22px 50px rgba(0,0,0,.42)!important}.dark .datepicker-plot-area *{color:#e2e8f0!important}.dark .datepicker-plot-area .datepicker-day-view .table-days td.selected span{background:#818cf8!important;color:#111827!important}@media(max-width:640px){.pwt-datepicker,.datepicker-plot-area{position:fixed!important;inset:auto .75rem .75rem!important;width:auto!important;max-width:none!important}.datepicker-plot-area .datepicker-day-view .table-days td span{min-width:2.7rem!important;height:2.7rem!important;line-height:2.7rem!important}}

/* ناوبری جلسات: عنوان کوتاه و وضعیت مستقل، بدون overflow افقی. */
.lesson-navigation{overflow-x:hidden}.lesson-navigation>a{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:.45rem!important;min-width:0!important}.lesson-navigation-title{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.lesson-navigation>a small{white-space:nowrap!important;justify-self:start!important;font-size:.61rem!important}@media(max-width:640px){.lesson-navigation>a{padding-inline:.55rem!important;gap:.32rem!important}.lesson-navigation-title{font-size:.72rem!important}.lesson-navigation>a small{font-size:.55rem!important}}

/* نمودارهای گزارش: نمایش توضیح به‌جای فضای سفید در نبود داده یا خطای بارگذاری. */
.report-chart-canvas{display:flex;align-items:center;justify-content:center}.report-chart-canvas>canvas:not([hidden]){display:block}.report-chart-empty{max-width:18rem;margin:auto;padding:1rem;border:1px dashed rgba(100,116,139,.32);border-radius:.8rem;color:var(--rh-muted);background:rgba(248,250,252,.78);font-size:.68rem;line-height:1.9;text-align:center}.dark .report-chart-empty{border-color:rgba(165,180,252,.28);color:#cbd5e1;background:rgba(15,23,42,.28)}

/* انتخابگر جلالی افزونهٔ محلی باید بالاتر از کارت‌ها، sticky header و modalهای پنل دیده شود. */
.pdp-default,
.datepicker-plot-area,
.persianDatepicker,
.ui-datepicker {
  z-index: 5000 !important;
  direction: rtl;
  font-family: 'Vazirmatn', sans-serif;
}
.pdp-default,
.datepicker-plot-area {
  max-width: min(22rem, calc(100vw - 2rem));
  box-shadow: 0 18px 46px rgba(20, 23, 57, .26);
  border-radius: 1rem;
}
@media (max-width: 640px) {
  .pdp-default, .datepicker-plot-area { position: fixed !important; inset: auto 1rem 1rem !important; width: auto !important; margin: 0 !important; }
}

.footer-bottom-links a { display: inline-flex; align-items: center; gap: .32rem; }
.footer-bottom-links a svg { width: 1rem; height: 1rem; flex: 0 0 auto; }
.seo-control-fieldset { margin: 1rem 0; padding: 1rem; border: 1px solid var(--rh-border, #d8dbea); border-radius: .9rem; display: grid; gap: .7rem; }
.seo-control-fieldset legend { padding: 0 .4rem; font-weight: 800; }
.point-rule-tier-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); gap: .8rem; }

/* انتخابگر جلالی مستقل: بدون jQuery و بدون تداخل با modalهای دیگر پنل. */
.rh-jalali-open { overflow: hidden; }
.rh-jalali-modal[hidden] { display: none !important; }
.rh-jalali-modal { position: fixed; z-index: 100000; inset: 0; display: grid; place-items: center; padding: 1rem; direction: rtl; font-family: 'Vazirmatn', sans-serif; }
.rh-jalali-modal__backdrop { position: absolute; inset: 0; background: rgba(15, 23, 42, .58); backdrop-filter: blur(3px); }
.rh-jalali-modal__dialog { position: relative; width: min(25.5rem, calc(100vw - 2rem)); max-height: calc(100vh - 2rem); overflow: auto; border: 1px solid rgba(129, 140, 248, .24); border-radius: 1.15rem; background: #fff; box-shadow: 0 28px 78px rgba(15, 23, 42, .42); padding: 1rem; }
.dark .rh-jalali-modal__dialog { background: #172033; color: #f8fafc; border-color: rgba(165, 180, 252, .3); }
.rh-jalali-modal__header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: .8rem; color: #312e81; }
.dark .rh-jalali-modal__header { color: #c7d2fe; }
.rh-jalali-modal__close, .rh-jalali-modal__controls > button { display: inline-grid; place-items: center; border: 0; border-radius: .65rem; color: #3730a3; background: #eef2ff; cursor: pointer; }
.rh-jalali-modal__close { width: 2rem; height: 2rem; font-size: 1.5rem; line-height: 1; }
.rh-jalali-modal__controls { display: grid; grid-template-columns: 2.3rem minmax(0, 1fr) 5.2rem 2.3rem; gap: .45rem; align-items: center; margin-bottom: .85rem; }
.rh-jalali-modal__controls > button { height: 2.45rem; font-size: 1.45rem; }
.rh-jalali-modal__controls select, .rh-jalali-modal__controls input { width: 100%; min-height: 2.45rem; border: 1px solid rgba(99, 102, 241, .26); border-radius: .65rem; background: #fff; color: #1e293b; padding: .35rem .55rem; font: inherit; text-align: center; }
.dark .rh-jalali-modal__controls select, .dark .rh-jalali-modal__controls input { color: #f8fafc; background: #0f172a; border-color: rgba(165, 180, 252, .28); }
.rh-jalali-modal__weekdays, .rh-jalali-modal__days { display: grid; grid-template-columns: repeat(7, 1fr); gap: .28rem; text-align: center; }
.rh-jalali-modal__weekdays { margin-bottom: .35rem; color: #64748b; font-size: .78rem; }
.rh-jalali-modal__days button, .rh-jalali-modal__blank { min-height: 2.35rem; border-radius: .65rem; }
.rh-jalali-modal__days button { border: 1px solid transparent; background: transparent; color: #334155; cursor: pointer; font: inherit; }
.dark .rh-jalali-modal__days button { color: #e2e8f0; }
.rh-jalali-modal__days button:hover, .rh-jalali-modal__days button:focus-visible { outline: none; border-color: #818cf8; background: #eef2ff; }
.dark .rh-jalali-modal__days button:hover, .dark .rh-jalali-modal__days button:focus-visible { background: rgba(99, 102, 241, .24); }
.rh-jalali-modal__days button.is-today { border-color: #93c5fd; color: #2563eb; font-weight: 700; }
.rh-jalali-modal__days button.is-selected { border-color: #4f46e5; background: #4f46e5; color: #fff; font-weight: 700; }
.rh-jalali-modal__footer { display: flex; justify-content: flex-end; gap: .55rem; margin-top: 1rem; }
@media (max-width: 520px) { .rh-jalali-modal { align-items: end; } .rh-jalali-modal__dialog { width: 100%; border-radius: 1.15rem 1.15rem .4rem .4rem; } }

/* پاک‌سازی گروهی محافظت‌شدهٔ کوپن‌های قدیمی. */
.coupon-cleanup-card{margin:0 0 1rem;border-color:#fbbf24;background:linear-gradient(145deg,#fffdf2,#fff)}
.coupon-cleanup-preview{display:grid;gap:.45rem;margin-top:.85rem;padding:.85rem 1rem;border:1px solid #fcd34d;border-radius:.75rem;background:#fffbeb;color:#78350f}
.coupon-cleanup-preview strong{font-size:.88rem}.coupon-cleanup-preview p{margin:0;font-size:.7rem;line-height:1.8}
.dark .coupon-cleanup-card{border-color:rgba(251,191,36,.32);background:rgba(120,53,15,.14)}
.dark .coupon-cleanup-preview{border-color:rgba(251,191,36,.36);background:rgba(120,53,15,.26);color:#fde68a}

/* ── Report date range and exact horizontal term charts ─────────────── */
.report-date-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:.65rem;align-items:end;margin:0 0 .9rem;padding:.8rem;border:1px solid rgba(79,70,229,.2);border-radius:1rem;background:var(--rh-surface);box-shadow:0 10px 24px rgba(15,23,42,.04)}.report-date-filter .form-label{display:grid;gap:.3rem;color:var(--rh-muted);font-size:.64rem;font-weight:800}.report-date-filter .form-input{min-height:2.55rem}.report-date-filter-actions{display:flex;align-items:center;gap:.42rem}.report-date-filter-actions .auth-action,.report-date-filter-actions .button-soft{min-height:2.55rem;width:auto;margin:0;white-space:nowrap}.report-chart-canvas--term-total{height:max(27rem,calc(var(--rh-term-count,15) * 1.72rem))}.dark .report-date-filter{border-color:rgba(165,180,252,.26);background:rgba(255,255,255,.035)}@media(max-width:740px){.report-date-filter{grid-template-columns:1fr}.report-date-filter-actions{display:grid;grid-template-columns:1fr 1fr}.report-date-filter-actions .auth-action,.report-date-filter-actions .button-soft{width:100%;justify-content:center}.report-chart-canvas--term-total{height:max(25rem,calc(var(--rh-term-count,15) * 1.62rem))}}

/* نمای آیکونی ده دورهٔ اصلی تمرین‌های بااستاد. */
.homework-course-groups{display:grid;grid-template-columns:minmax(9rem,.72fr) minmax(0,2fr) minmax(0,1.45fr);gap:.8rem;align-items:stretch;margin:1rem 0}.homework-course-category{display:grid;gap:.5rem;min-width:0;padding:.72rem;border:1px solid var(--rh-border);border-radius:.9rem;background:var(--rh-surface-alt)}.homework-course-category h3{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0;padding:0 .12rem;color:var(--rh-ink);font-size:.74rem;font-weight:900}.homework-course-category h3 span{color:var(--rh-muted);font-size:.6rem;font-weight:750}.homework-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.48rem}.homework-course-category:last-child .homework-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-course-card{position:relative;display:grid;grid-template-rows:auto auto auto auto;justify-items:center;align-content:start;min-width:0;gap:.2rem;padding:.58rem .42rem;border:1px solid var(--rh-border);border-radius:.72rem;color:var(--rh-ink);background:var(--rh-surface);text-align:center;text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.homework-course-card:hover,.homework-course-card:focus-visible{border-color:rgba(79,70,229,.6);color:var(--rh-primary);outline:0;transform:translateY(-2px);box-shadow:0 .48rem 1rem rgba(79,70,229,.12)}.homework-course-card.is-active{border-color:var(--rh-primary);color:var(--rh-primary);background:color-mix(in srgb,var(--rh-primary) 8%,var(--rh-surface));box-shadow:0 0 0 3px color-mix(in srgb,var(--rh-primary) 13%,transparent)}.homework-course-card--all{min-height:100%;padding:.8rem .55rem;background:linear-gradient(145deg,color-mix(in srgb,var(--rh-primary) 11%,var(--rh-surface)),var(--rh-surface))}.homework-course-icon{position:relative;display:grid;place-items:center;width:2.55rem;height:2.55rem;margin-bottom:.08rem;border-radius:.82rem;color:#4338ca;background:#eef2ff}.homework-course-icon svg{width:1.38rem;height:1.38rem}.homework-course-card strong{overflow:hidden;max-width:100%;color:inherit;font-size:.65rem;font-weight:900;line-height:1.55;text-overflow:ellipsis;white-space:nowrap}.homework-course-card small{color:var(--rh-muted);font-size:.54rem;line-height:1.55}.homework-course-card em{color:#b91c1c;font-size:.52rem;font-style:normal;font-weight:850}.homework-course-badge{position:absolute;z-index:1;top:-.45rem;inset-inline-end:-.5rem;display:grid;place-items:center;min-width:1.2rem;height:1.2rem;padding:0 .22rem;border:2px solid var(--rh-surface);border-radius:999px;color:#fff;background:#dc2626;box-shadow:0 .2rem .45rem rgba(185,28,28,.32);font-size:.52rem;font-weight:900;line-height:1}.homework-list-controls{display:flex;align-items:end;justify-content:flex-end;gap:.5rem;margin:.2rem 0 1rem}.homework-list-controls .form-label{display:grid;gap:.25rem;color:var(--rh-muted);font-size:.61rem;font-weight:800}.homework-list-controls .form-input{min-height:2.25rem;min-width:7.4rem;padding:.35rem .5rem;font-size:.65rem}.homework-list-controls .button-soft{min-height:2.25rem;font-size:.65rem}.dark .homework-course-category{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.04)}.dark .homework-course-card{border-color:rgba(255,255,255,.14);color:#e2e8f0;background:#172033}.dark .homework-course-card:hover,.dark .homework-course-card:focus-visible,.dark .homework-course-card.is-active{border-color:#a5b4fc;color:#c7d2fe;background:rgba(79,70,229,.22)}.dark .homework-course-icon{color:#c7d2fe;background:rgba(79,70,229,.3)}.dark .homework-course-badge{border-color:#172033}.dark .homework-course-card em{color:#fca5a5}@media(max-width:1050px){.homework-course-groups{grid-template-columns:1fr 1fr}.homework-course-card--all{grid-column:span 2;min-height:0;grid-template-columns:auto 1fr;justify-items:start;text-align:right}.homework-course-card--all .homework-course-icon{grid-row:span 3;margin:0}.homework-course-card--all strong,.homework-course-card--all small,.homework-course-card--all em{grid-column:2}}@media(max-width:660px){.homework-course-groups{grid-template-columns:1fr;gap:.65rem}.homework-course-card--all{grid-column:auto}.homework-course-grid,.homework-course-category:last-child .homework-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-course-card{padding:.62rem .35rem}.homework-list-controls{align-items:stretch;flex-direction:column}.homework-list-controls .form-label,.homework-list-controls .form-input,.homework-list-controls .button-soft{width:100%}}

/* کنترل‌های SEO: label نباید به ابعاد کوچک switch محدود شود. */
.seo-control-fieldset{min-width:0;margin:1rem 0;padding:1rem;border:1px solid var(--rh-border,#d8dbea);border-radius:.9rem;background:var(--rh-surface-alt)}.seo-control-fieldset legend{padding:0 .4rem;color:var(--rh-ink);font-size:.82rem;font-weight:850}.seo-control-fieldset .switch-control{position:relative;display:grid;grid-template-columns:2.55rem minmax(0,1fr);align-items:center;gap:.7rem;width:100%;height:auto;min-height:2.2rem;color:var(--rh-ink);cursor:pointer}.seo-control-fieldset .switch-control input[type=hidden]{display:none}.seo-control-fieldset .switch-control input[type=checkbox]{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.seo-control-fieldset .switch-control span{position:relative;display:block;grid-column:1;grid-row:1;inline-size:2.55rem;block-size:1.45rem;border-radius:999px;background:#94a3b8;cursor:pointer;transition:background .18s ease}.seo-control-fieldset .switch-control span:after{content:"";position:absolute;inset-block-start:.2rem;inset-inline-end:.2rem;inline-size:1.05rem;block-size:1.05rem;border-radius:50%;background:#fff;box-shadow:0 .08rem .22rem rgba(15,23,42,.2);transition:transform .18s ease}.seo-control-fieldset .switch-control input[type=checkbox]:checked+span{background:var(--rh-primary)}.seo-control-fieldset .switch-control input[type=checkbox]:checked+span:after{transform:translateX(-1.1rem)}.seo-control-fieldset .switch-control input[type=checkbox]:focus-visible+span{outline:3px solid color-mix(in srgb,var(--rh-primary) 35%,transparent);outline-offset:3px}.seo-control-fieldset .switch-control b{display:block;grid-column:2;grid-row:1;min-width:0;color:inherit;font-size:.73rem;font-weight:750;line-height:1.75}.dark .seo-control-fieldset{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.045)}.dark .seo-control-fieldset .switch-control{color:#e2e8f0}@media(max-width:520px){.seo-control-fieldset{padding:.8rem}.seo-control-fieldset .switch-control{gap:.58rem}.seo-control-fieldset .switch-control b{font-size:.69rem}}


/* انتخابگر حرفه‌ای رنگ و آیکون برای ویرایشگرهای Quill */
.rh-fa-icon{display:inline-block;vertical-align:-.125em;margin-inline:.08em;line-height:1}.blog-rich-editor .rh-fa-icon{font-size:1.05em}.rh-editor-enhancement-tools{display:inline-flex!important;align-items:center;gap:.18rem;margin-inline:0!important;padding-inline:.34rem;border-inline:1px solid var(--rh-border)}.rh-editor-toolbar-button{position:relative;display:inline-grid!important;place-items:center;width:1.9rem!important;height:1.9rem!important;margin:0!important;padding:0!important;border:1px solid transparent!important;border-radius:.45rem!important;color:var(--rh-ink)!important;background:transparent!important;font:800 .9rem/1 var(--rh-font,inherit)!important;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.rh-editor-toolbar-button:hover,.rh-editor-toolbar-button:focus-visible{border-color:rgba(79,70,229,.45)!important;color:var(--rh-primary)!important;background:#eef2ff!important;outline:0}.rh-editor-toolbar-button--text-color>span{padding-bottom:.12rem;border-bottom:3px solid #dc2626}.rh-editor-toolbar-button--background-color>span{padding:.08rem .16rem;border-radius:.16rem;color:#111827;background:#fde68a}.rh-editor-toolbar-button--icon i{font-size:1rem}.rh-editor-picker-modal{position:fixed;z-index:3600;inset:0;display:grid;place-items:center;padding:max(1rem,env(safe-area-inset-top)) 1rem;isolation:isolate}.rh-editor-picker-modal[hidden]{display:none}.rh-editor-picker-backdrop{position:absolute;z-index:-1;inset:0;width:100%;height:100%;border:0;background:rgba(15,23,42,.63);backdrop-filter:blur(3px);cursor:default}.rh-editor-picker-card{width:min(38rem,100%);max-height:min(44rem,calc(100dvh - 2rem));overflow:auto;padding:1rem;border:1px solid rgba(129,140,248,.42);border-radius:1rem;color:var(--rh-ink);background:var(--rh-surface);box-shadow:0 24px 70px rgba(15,23,42,.35)}.rh-editor-picker-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:.85rem;border-bottom:1px solid var(--rh-border)}.rh-editor-picker-kicker{display:block;margin-bottom:.14rem;color:var(--rh-primary);font-size:.63rem;font-weight:900;letter-spacing:.02em}.rh-editor-picker-card h2{margin:0;color:var(--rh-ink);font-size:1rem;font-weight:950}.rh-editor-picker-close{display:grid;place-items:center;flex:0 0 2rem;width:2rem;height:2rem;border:1px solid var(--rh-border);border-radius:.52rem;color:var(--rh-muted);background:var(--rh-surface-alt);font:400 1.35rem/1 inherit;cursor:pointer}.rh-editor-picker-close:hover,.rh-editor-picker-close:focus-visible{border-color:rgba(220,38,38,.36);color:#b91c1c;background:#fff1f2;outline:0}.rh-editor-color-preview{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.9rem 0;padding:.65rem .75rem;border:1px solid var(--rh-border);border-radius:.66rem;background:var(--rh-surface-alt)}.rh-editor-color-preview span{display:grid;place-items:center;min-width:4rem;min-height:2.4rem;border:1px solid rgba(15,23,42,.1);border-radius:.42rem;font-size:1.2rem;font-weight:900}.rh-editor-color-preview code{direction:ltr;color:var(--rh-muted);font-size:.76rem}.rh-editor-color-native-label,.rh-editor-color-hex-label{display:grid;grid-template-columns:minmax(0,1fr) 4.8rem;align-items:center;gap:.7rem;margin:.7rem 0;color:var(--rh-ink);font-size:.72rem;font-weight:850}.rh-editor-color-native-label input[type=color]{width:4.8rem;height:2.3rem;padding:.16rem;border:1px solid var(--rh-border);border-radius:.44rem;background:var(--rh-surface-alt);cursor:pointer}.rh-editor-color-hex-label input,.rh-editor-icon-controls input,.rh-editor-icon-controls select{width:100%;min-height:2.35rem;border:1px solid var(--rh-border);border-radius:.48rem;padding:.42rem .58rem;color:var(--rh-ink);background:var(--rh-surface-alt);font:700 .72rem/1.4 inherit}.rh-editor-color-hex-label input{direction:ltr;text-align:center;text-transform:uppercase}.rh-editor-color-hex-label input[aria-invalid=true]{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.12)}.rh-editor-picker-help{margin:.65rem 0;color:var(--rh-muted);font-size:.66rem;line-height:1.75}.rh-editor-color-swatches{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:.42rem;margin:.8rem 0}.rh-editor-color-swatch{width:100%;aspect-ratio:1;border:2px solid color-mix(in srgb,var(--rh-swatch-color) 65%,var(--rh-border));border-radius:.48rem;background:var(--rh-swatch-color);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.rh-editor-color-swatch:hover,.rh-editor-color-swatch:focus-visible{transform:translateY(-2px) scale(1.05);box-shadow:0 5px 12px rgba(15,23,42,.2);outline:2px solid var(--rh-primary);outline-offset:2px}.rh-editor-picker-card>footer{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--rh-border)}.rh-editor-picker-card>footer .button-soft,.rh-editor-picker-card>footer .legacy-form-action{min-height:2.3rem;padding:.43rem .78rem;font-size:.67rem}.rh-editor-icon-card{width:min(60rem,100%)}.rh-editor-icon-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(9rem,.28fr);gap:.65rem;margin-top:.85rem}.rh-editor-icon-controls label{display:grid;gap:.28rem;color:var(--rh-ink);font-size:.66rem;font-weight:850}.rh-editor-icon-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.42rem;min-height:7.5rem;max-height:min(24rem,46dvh);overflow:auto;padding:.18rem}.rh-editor-icon-option{display:grid;place-items:center;gap:.28rem;min-height:4.9rem;padding:.35rem .25rem;overflow:hidden;border:1px solid var(--rh-border);border-radius:.58rem;color:var(--rh-ink);background:var(--rh-surface-alt);font:700 .56rem/1.25 inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.rh-editor-icon-option:hover,.rh-editor-icon-option:focus-visible{border-color:rgba(79,70,229,.5);color:var(--rh-primary);background:#eef2ff;transform:translateY(-1px);outline:0}.rh-editor-icon-option i{font-size:1.35rem}.rh-editor-icon-option span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dark .rh-editor-enhancement-tools{border-color:rgba(255,255,255,.16)}.dark .rh-editor-toolbar-button{color:#e2e8f0!important}.dark .rh-editor-toolbar-button:hover,.dark .rh-editor-toolbar-button:focus-visible{border-color:rgba(165,180,252,.5)!important;color:#c7d2fe!important;background:rgba(79,70,229,.22)!important}.dark .rh-editor-picker-card{border-color:rgba(165,180,252,.38);color:#e2e8f0;background:#172033;box-shadow:0 24px 70px rgba(0,0,0,.5)}.dark .rh-editor-picker-card>header,.dark .rh-editor-picker-card>footer{border-color:rgba(255,255,255,.13)}.dark .rh-editor-picker-card h2,.dark .rh-editor-icon-controls label,.dark .rh-editor-color-native-label,.dark .rh-editor-color-hex-label{color:#e2e8f0}.dark .rh-editor-picker-close,.dark .rh-editor-color-preview,.dark .rh-editor-color-native-label input[type=color],.dark .rh-editor-color-hex-label input,.dark .rh-editor-icon-controls input,.dark .rh-editor-icon-controls select,.dark .rh-editor-icon-option{border-color:rgba(255,255,255,.16);color:#e2e8f0;background:#1e293b}.dark .rh-editor-icon-option:hover,.dark .rh-editor-icon-option:focus-visible{color:#c7d2fe;background:rgba(79,70,229,.28)}.dark .rh-editor-picker-close:hover,.dark .rh-editor-picker-close:focus-visible{color:#fecaca;background:rgba(127,29,29,.35)}@media(max-width:680px){.rh-editor-enhancement-tools{width:100%;justify-content:flex-start;margin:.25rem 0!important;padding:.34rem 0;border-inline:0;border-block:1px solid var(--rh-border)}.rh-editor-picker-modal{align-items:end;padding:.5rem}.rh-editor-picker-card{max-height:calc(100dvh - 1rem);padding:.82rem;border-radius:.9rem}.rh-editor-icon-controls{grid-template-columns:1fr}.rh-editor-icon-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:42dvh}.rh-editor-color-swatches{grid-template-columns:repeat(6,minmax(0,1fr))}.rh-editor-picker-card>footer>*{flex:1}.rh-editor-picker-card>footer .button-soft,.rh-editor-picker-card>footer .legacy-form-action{justify-content:center}}


/* انتخاب رنگ و اندازهٔ استاندارد برای آیکون‌های Font Awesome در ویرایشگر Quill. */
.rh-editor-icon-controls{grid-template-columns:minmax(12rem,1fr) minmax(8rem,.25fr) minmax(7rem,.2fr) minmax(7rem,.2fr)}.rh-editor-icon-controls input[type=color]{width:100%;min-height:2.35rem;padding:.16rem;border:1px solid var(--rh-border);border-radius:.48rem;background:var(--rh-surface-alt);cursor:pointer}.rh-editor-icon-preview{display:flex;align-items:center;justify-content:center;gap:.7rem;min-height:4.35rem;margin:.8rem 0;padding:.65rem .8rem;border:1px dashed rgba(79,70,229,.32);border-radius:.72rem;color:var(--rh-ink);background:linear-gradient(135deg,#f8fafc,#eef2ff)}.rh-editor-icon-preview>span{display:inline-grid;place-items:center;min-width:2.6rem;min-height:2.6rem}.rh-editor-icon-preview code{direction:ltr;color:var(--rh-muted);font:800 .69rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.rh-fa-icon{display:inline-block;vertical-align:-.125em;line-height:1;cursor:pointer}.ql-editor .rh-fa-icon{margin-inline:.08em}.rh-fa-icon:focus-visible{outline:2px solid var(--rh-primary);outline-offset:3px;border-radius:.15rem}.rh-fa-size-16{font-size:16px}.rh-fa-size-20{font-size:20px}.rh-fa-size-24{font-size:24px}.rh-fa-size-32{font-size:32px}.rh-fa-size-40{font-size:40px}.rh-fa-size-48{font-size:48px}.dark .rh-editor-icon-controls input[type=color]{border-color:rgba(255,255,255,.16);background:#1e293b}.dark .rh-editor-icon-preview{border-color:rgba(165,180,252,.34);color:#e2e8f0;background:linear-gradient(135deg,rgba(49,46,129,.28),rgba(30,41,59,.62))}.dark .rh-editor-icon-preview code{color:#cbd5e1}@media(max-width:860px){.rh-editor-icon-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.rh-editor-icon-controls{grid-template-columns:1fr}.rh-editor-icon-preview{justify-content:flex-start}.rh-editor-icon-preview>span{min-width:3rem;min-height:3rem}}

/* ── RTL Quill picker: label و فلش هرگز روی هم نیفتند ───────────── */
.cms-visual-editor .ql-toolbar,.blog-editor-section .ql-toolbar{direction:rtl;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.cms-visual-editor .ql-toolbar .ql-formats,.blog-editor-section .ql-toolbar .ql-formats{margin-inline:0 .4rem}.cms-visual-editor .ql-picker.ql-header,.blog-editor-section .ql-picker.ql-header{width:8.8rem}.cms-visual-editor .ql-picker.ql-size,.blog-editor-section .ql-picker.ql-size{width:5.6rem}.cms-visual-editor .ql-picker-label,.blog-editor-section .ql-picker-label{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:.35rem;min-height:2rem;padding-inline:.45rem!important}.cms-visual-editor .ql-picker-label::before,.blog-editor-section .ql-picker-label::before{position:static!important;flex:1 1 auto;min-width:0;padding:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cms-visual-editor .ql-picker-label svg,.blog-editor-section .ql-picker-label svg{position:static!important;inset:auto!important;display:block!important;flex:0 0 18px!important;width:18px!important;height:18px!important;margin:0!important;pointer-events:none}.cms-visual-editor .ql-picker-options,.blog-editor-section .ql-picker-options{direction:rtl;min-width:100%}.cms-visual-editor .editor-emoji-button,.blog-editor-section .editor-emoji-button{display:inline-grid;place-items:center;width:1.8rem;height:1.8rem;border:1px solid transparent;border-radius:.35rem;color:var(--rh-ink);background:transparent;font-size:1rem;cursor:pointer}.cms-visual-editor .editor-emoji-button:hover,.blog-editor-section .editor-emoji-button:hover{background:var(--rh-surface-alt)}.cms-visual-editor .ql-editor img{max-width:100%;height:auto;border-radius:.6rem}@media(max-width:640px){.cms-visual-editor .ql-toolbar .ql-formats,.blog-editor-section .ql-toolbar .ql-formats{margin-inline:0 .15rem}.cms-visual-editor .ql-picker.ql-header,.blog-editor-section .ql-picker.ql-header{width:7.7rem}}

/* ── سه حالت مستقل بنر اصلی صفحهٔ خانه ─────────────────────────── */
.hero-section--managed{isolation:isolate;overflow:hidden;position:relative;min-block-size:32rem}.hero-section--managed:has(.hero-banner-carousel){overflow:visible}.hero-section--managed .hero-managed-backdrop,.hero-section--managed .hero-managed-scrim{inset:0;position:absolute}.hero-section--managed .hero-managed-backdrop{z-index:-2;background:#111}.hero-section--managed .hero-managed-scrim{z-index:-1;background:linear-gradient(90deg,rgba(7,12,28,.9) 0%,rgba(7,12,28,.7) 46%,rgba(7,12,28,.35) 100%)}.hero-section--managed .hero-grid{grid-template-columns:minmax(0,1fr);position:relative}.hero-section--managed .hero-grid>div:first-child{max-inline-size:45rem}.rh-animated-hero--full{block-size:100%;border-radius:0;grid-template-columns:repeat(3,minmax(0,1fr));max-block-size:none;min-block-size:100%}.rh-animated-hero--full .rh-animated-hero-column{animation-duration:48s;grid-auto-rows:9rem}.hero-banner-carousel--full{position:absolute!important;inset:0!important;block-size:100%!important;inline-size:100%!important;overflow:hidden;background:#111}.hero-banner-carousel--full .rh-carousel-viewport{position:absolute!important;inset:0!important;block-size:100%!important;inline-size:100%!important}.hero-banner-carousel--full .rh-carousel-track{block-size:100%!important;min-block-size:100%!important}.hero-banner-carousel--full .rh-carousel-slide{position:relative;overflow:hidden;block-size:100%!important;min-block-size:100%!important;align-self:stretch!important}.hero-banner-carousel--full .rh-carousel-slide[hidden]{display:none!important}.hero-banner-carousel--full .rh-carousel-slide img{display:block!important;position:absolute!important;inset:0!important;block-size:100%!important;inline-size:100%!important;max-inline-size:none!important;max-block-size:none!important;min-height:0!important;min-width:0!important;aspect-ratio:unset!important;object-fit:cover!important;margin:0!important}.hero-banner-carousel--full .rh-carousel-nav{z-index:10;width:3rem;height:3rem;font-size:1.8rem;background:rgba(0,0,0,.55);border:2px solid rgba(255,255,255,.3);position:absolute;top:50%;transform:translateY(-50%)}.hero-banner-carousel--full .rh-carousel-nav.is-prev{right:1rem}.hero-banner-carousel--full .rh-carousel-nav.is-next{left:1rem}.hero-banner-carousel--full .rh-carousel-nav:hover{background:rgba(0,0,0,.8);border-color:rgba(255,255,255,.6)}.hero-banner-carousel--full .rh-carousel-pagination{display:none!important}@media(max-width:600px){.hero-section--managed{min-block-size:22rem}.hero-banner-carousel--full .rh-carousel-nav{width:2.4rem;height:2.4rem;font-size:1.3rem}}[dir=rtl] .rh-carousel-nav.is-prev svg,[dir=rtl] .rh-carousel-nav.is-next svg{transform:scaleX(-1)}.hero-section--managed .hero-overline,.hero-section--managed .hero-title,.hero-section--managed .hero-copy,.hero-section--managed .hero-points{color:#fff}.hero-section--managed .hero-copy{color:rgba(255,255,255,.88)}.hero-section--managed .hero-points span{border-color:rgba(255,255,255,.25);background:rgba(15,23,42,.32)}@media(max-width:760px){.hero-section--managed .hero-managed-scrim{background:linear-gradient(90deg,rgba(7,12,28,.88),rgba(7,12,28,.56))}.rh-animated-hero--full{grid-template-columns:repeat(3,minmax(0,1fr))}.rh-animated-hero--full .rh-animated-hero-column{grid-auto-rows:7rem}.hero-section--managed .hero-grid>div:first-child{max-inline-size:100%}}
.hero-static-image{display:block;block-size:100%;inline-size:100%;object-fit:cover}

/* ── بنر متحرک خانه: mosaic هشت‌ستونه با loop پیوسته ───────────── */
.hero-section--managed .hero-managed-backdrop { z-index: 0; }
.hero-section--managed .hero-managed-scrim { z-index: 1; }
.hero-section--managed .hero-grid { z-index: 2; }
.hero-section--managed:has(.hero-banner-carousel) .hero-managed-backdrop { z-index: 3; }
.hero-section--managed:has(.hero-banner-carousel) .hero-managed-scrim { z-index: 4; display: none; }
.hero-section--managed:has(.hero-banner-carousel) .hero-grid { z-index: 5; pointer-events: none; }
.hero-section--managed:has(.hero-banner-carousel) .hero-grid > * { opacity: 0; }
.hero-section--animated-only { padding: 0; background: #111; }
.hero-section--animated-only::before,
.hero-section--animated-only::after { display: none; }
.hero-section--animated-only .hero-managed-backdrop { position: relative; inset: auto; width: min(100%, 1440px); margin-inline: auto; overflow: hidden; }
.hero-section--animated-only .rh-animated-hero--full { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 0; inline-size: 100%; aspect-ratio: 8 / 5; min-block-size: 0; block-size: auto; max-block-size: none; overflow: hidden; background: #111; }
.hero-section--animated-only .rh-animated-hero--full .rh-animated-hero-column { display: grid; grid-template-rows: repeat(10, minmax(0, 1fr)); grid-auto-rows: auto; gap: 0; block-size: 200%; min-block-size: 200%; animation: rh-hero-stream-up 16s linear infinite !important; animation-play-state: running !important; will-change: transform; }
.hero-section--animated-only .rh-animated-hero--full .rh-animated-hero-column:nth-child(even) { animation-name: rh-hero-stream-down !important; }
.hero-section--animated-only .rh-animated-hero--full img { display: block; inline-size: 100%; block-size: 100%; aspect-ratio: 1; object-fit: cover; }
@keyframes rh-hero-stream-up { from { transform: translate3d(0, 0, 0); } to { transform: translate3d(0, -50%, 0); } }
@keyframes rh-hero-stream-down { from { transform: translate3d(0, -50%, 0); } to { transform: translate3d(0, 0, 0); } }
@media (max-width: 760px) { .hero-section--animated-only .rh-animated-hero--full { grid-template-columns: repeat(8, minmax(0, 1fr)); } }

/* ── Embla Carousel: viewport, track, pagination ─────────────── */
.rh-carousel-viewport{overflow:hidden;width:100%}
.rh-carousel-track{display:flex}
.rh-carousel-slide{flex:0 0 100%;min-inline-size:0}
.rh-carousel-slide img{display:block;inline-size:100%;block-size:auto;object-fit:cover}
.rh-carousel-pagination{display:flex;justify-content:center;gap:.45rem;padding-block:.75rem}
.rh-carousel-dot{width:.55rem;height:.55rem;border:2px solid var(--rh-border);border-radius:999px;background:transparent;cursor:pointer;padding:0;transition:background .2s,transform .2s}
.rh-carousel-dot:hover{background:var(--rh-muted);transform:scale(1.2)}
.rh-carousel-dot.is-active{background:var(--rh-primary,#6366f1);border-color:var(--rh-primary,#6366f1);transform:scale(1.3)}
.rh-carousel-dot:focus-visible{outline:2px solid var(--rh-primary,#6366f1);outline-offset:2px}
.rh-carousel-nav:focus-visible{outline:2px solid var(--rh-primary,#6366f1);outline-offset:2px}
.rh-carousel:focus-visible{outline:none}

/* ── Gallery lightbox ───────────────────────────────────────── */
.rh-lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.92);opacity:1;transition:opacity .2s}
.rh-lightbox[hidden]{display:none!important}
.rh-lightbox-backdrop{position:absolute;inset:0}
.rh-lightbox-close{position:absolute;top:1rem;inset-inline-end:1rem;z-index:2;width:3rem;height:3rem;display:grid;place-items:center;border:0;border-radius:999px;color:#fff;background:rgba(255,255,255,.12);cursor:pointer;transition:background .15s}
.rh-lightbox-close:hover{background:rgba(255,255,255,.25)}
.rh-lightbox-nav{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:3rem;height:3rem;border:0;border-radius:999px;color:#fff;background:rgba(255,255,255,.12);cursor:pointer;transform:translateY(-50%);transition:background .15s}
.rh-lightbox-nav:hover{background:rgba(255,255,255,.25)}
.rh-lightbox-nav.is-prev{inset-inline-start:1rem}
.rh-lightbox-nav.is-next{inset-inline-end:1rem}
.rh-lightbox-stage{position:relative;max-inline-size:90vw;max-block-size:85vh;display:flex;align-items:center;justify-content:center}
.rh-lightbox-image{max-inline-size:90vw;max-block-size:85vh;object-fit:contain;border-radius:.5rem}
.rh-lightbox-caption{position:absolute;bottom:2rem;inset-inline:0;text-align:center;color:rgba(255,255,255,.85);font-size:.88rem;padding-inline:1rem}
.rh-lightbox-counter{position:absolute;top:1rem;inset-inline-start:1rem;color:rgba(255,255,255,.65);font-size:.78rem;font-weight:800}

/* ── Gallery items: hover & focus ───────────────────────────── */
.rh-gallery-item{position:relative;overflow:hidden;border-radius:.8rem;transition:transform .2s,box-shadow .2s}
.rh-gallery-item:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(15,23,42,.12)}
.rh-gallery-item:focus-visible{outline:3px solid var(--rh-primary,#6366f1);outline-offset:2px}
.rh-gallery-item img{transition:transform .3s}
.rh-gallery-item:hover img{transform:scale(1.04)}
.rh-gallery-item figcaption{padding-block-start:.35rem;font-size:.82rem;color:var(--rh-muted)}
.dark .rh-lightbox{background:rgba(0,0,0,.96)}
.dark .rh-carousel-dot{border-color:rgba(255,255,255,.2)}
.dark .rh-gallery-item:hover{box-shadow:0 8px 24px rgba(0,0,0,.3)}
@media(max-width:600px){.rh-lightbox-nav{width:2.4rem;height:2.4rem}.rh-lightbox-close{width:2.4rem;height:2.4rem}}[dir=rtl] .rh-lightbox-nav.is-prev svg,[dir=rtl] .rh-lightbox-nav.is-next svg{transform:scaleX(-1)}


/* ============================================================
   Quill 2 lists in an RTL document + align/format public view
   ============================================================
   Quill 2 renders every list marker as <li data-list="..."><span
   class="ql-ui">…</span> and positions that marker with PHYSICAL
   left margins (`.ql-editor li{padding-left:1.5em}` /
   `> .ql-ui:before{margin-left:-1.5em}`). quill.snow loads AFTER
   app.css on editor pages, so same-specificity overrides lose the
   cascade — the -1.5em would land on the wrong side in RTL and the
   marker would sit ON the first word. These overrides are prefixed
   with [dir=rtl] (higher specificity, order-independent) and use
   explicit physical sides so they always win. Public containers
   (blog/lesson/email bodies) never load quill.snow at all, so the
   same rules cover them. */
[dir=rtl] .ql-editor ol{padding-left:0;padding-inline-start:1.5em}
[dir=rtl] .ql-editor li{padding-left:0;padding-inline-start:1.5em}
[dir=rtl] .ql-editor li>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:right}
/* Release .26 — larger list markers. Quill sizes the bullet glyph (\2022)
   and the checkbox ticks (\2610/\2611) at the li font size, which reads far
   too small next to the site's Vazirmatn text. Scale the marker glyph up
   (line-height:1 + a slight negative vertical-align keeps it optically
   centred on the line; the span keeps its 1.2em geometry and the RTL
   margins above, so the marker never lands on the first word). */
[dir=rtl] .ql-editor li[data-list="bullet"]>.ql-ui:before{font-size:1.45em;line-height:1;vertical-align:-.1em}
[dir=rtl] .ql-editor li[data-list="checked"]>.ql-ui:before,
[dir=rtl] .ql-editor li[data-list="unchecked"]>.ql-ui:before{font-size:1.3em;line-height:1;vertical-align:-.1em}
/* Release .26 — Persian digits for ordered lists. Quill hard-codes
   counter(list-N, decimal|lower-alpha|lower-roman) per indent level. The
   counter-increment/reset machinery stays Quill's own; only the CONTENT of
   the marker is re-declared with the `persian` counter style (built into
   every modern browser), so ۱. ۲. ۳. … replaces 1. 2. 3. in the editor.
   Each selector below mirrors one Quill rule one-to-one (specificity is
   one class higher via [dir=rtl], so these always win the cascade). */
[dir=rtl] .ql-editor li[data-list="ordered"]>.ql-ui:before{content:counter(list-0,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-1>.ql-ui:before{content:counter(list-1,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-2>.ql-ui:before{content:counter(list-2,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-3>.ql-ui:before{content:counter(list-3,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-4>.ql-ui:before{content:counter(list-4,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-5>.ql-ui:before{content:counter(list-5,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-6>.ql-ui:before{content:counter(list-6,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-7>.ql-ui:before{content:counter(list-7,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-8>.ql-ui:before{content:counter(list-8,persian) '. '}
[dir=rtl] .ql-editor li[data-list="ordered"].ql-indent-9>.ql-ui:before{content:counter(list-9,persian) '. '}
[dir=rtl] .ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:0;padding-inline-start:3em}
[dir=rtl] .ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:0;padding-inline-start:4.5em}
[dir=rtl] .ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:0;padding-inline-start:6em}
[dir=rtl] .ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:0;padding-inline-start:7.5em}
[dir=rtl] .ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:0;padding-inline-start:9em}
[dir=rtl] .ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:0;padding-inline-start:10.5em}
[dir=rtl] .ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:0;padding-inline-start:12em}
[dir=rtl] .ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:0;padding-inline-start:13.5em}
[dir=rtl] .ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:0;padding-inline-start:15em}
[dir=rtl] .ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:0;padding-inline-start:16.5em}
[dir=rtl] .ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:0;padding-inline-start:18em}
[dir=rtl] .ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:0;padding-inline-start:19.5em}
[dir=rtl] .ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:0;padding-inline-start:21em}
[dir=rtl] .ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:0;padding-inline-start:22.5em}
[dir=rtl] .ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:0;padding-inline-start:24em}
[dir=rtl] .ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:0;padding-inline-start:25.5em}
[dir=rtl] .ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:0;padding-inline-start:27em}
[dir=rtl] .ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:0;padding-inline-start:28.5em}
/* "چپ‌چین": Quill never shipped a .ql-align-left rule. Note it must
   carry !important: editors set text-align:right on .ql-editor and
   public containers inherit RTL text-align:right from the document. */
.ql-editor .ql-align-left,.ql-align-left{text-align:left!important}
.ql-editor .ql-align-center,.ql-align-center{text-align:center!important}
.ql-editor .ql-align-right,.ql-align-right{text-align:right!important}
.ql-editor .ql-align-justify,.ql-align-justify{text-align:justify!important}
/* Public containers keep a readable indent between list items */
.article-content li,.lesson-rich-content li,.course-introduction-content li,.email-body-preview li{margin-block:.3em}
/* Public view of saved Quill lists: public pages never load
   quill.snow and Tailwind's preflight resets list-style:none, so the
   saved <ul>/<ol><li data-list> markup would render with NO bullets
   or numbers at all. The marker span (.ql-ui) is empty there — native
   markers are the faithful mirror of what the editor showed. */
.article-content ul,.lesson-rich-content ul,.course-introduction-content ul,.email-body-preview ul{list-style:disc outside;padding-inline-start:1.5em}
.article-content ol,.lesson-rich-content ol,.course-introduction-content ol,.email-body-preview ol{list-style:decimal outside;padding-inline-start:1.5em}
.article-content li[data-list],.lesson-rich-content li[data-list],.course-introduction-content li[data-list],.email-body-preview li[data-list]{display:list-item}
.article-content li[data-list="checked"],.lesson-rich-content li[data-list="checked"],.course-introduction-content li[data-list="checked"],.email-body-preview li[data-list="checked"],.article-content li[data-list="unchecked"],.lesson-rich-content li[data-list="unchecked"],.course-introduction-content li[data-list="unchecked"],.email-body-preview li[data-list="unchecked"]{list-style:none}
.article-content li[data-list="checked"]>.ql-ui:before,.lesson-rich-content li[data-list="checked"]>.ql-ui:before,.course-introduction-content li[data-list="checked"]>.ql-ui:before,.email-body-preview li[data-list="checked"]>.ql-ui:before{content:'\2611'}
.article-content li[data-list="unchecked"]>.ql-ui:before,.lesson-rich-content li[data-list="unchecked"]>.ql-ui:before,.course-introduction-content li[data-list="unchecked"]>.ql-ui:before,.email-body-preview li[data-list="unchecked"]>.ql-ui:before{content:'\2610'}
/* Release .26 — the public view mirrors the editor's list styling: native
   ordered lists count in Persian digits (`persian` list-style type) and
   bullet/checkbox markers are enlarged like the editor's markers. */
.article-content ol,.lesson-rich-content ol,.course-introduction-content ol,.email-body-preview ol{list-style:persian outside}
.article-content li[data-list="bullet"]>.ql-ui:before,.lesson-rich-content li[data-list="bullet"]>.ql-ui:before,.course-introduction-content li[data-list="bullet"]>.ql-ui:before,.email-body-preview li[data-list="bullet"]>.ql-ui:before{font-size:1.45em;line-height:1;vertical-align:-.1em}
.article-content li::marker,.lesson-rich-content li::marker,.course-introduction-content li::marker,.email-body-preview li::marker{font-size:1.45em}
.article-content li[data-list="checked"]>.ql-ui:before,.lesson-rich-content li[data-list="checked"]>.ql-ui:before,.course-introduction-content li[data-list="checked"]>.ql-ui:before,.email-body-preview li[data-list="checked"]>.ql-ui:before{font-size:1.3em;line-height:1}

/* ── Release .30 — Financial record edit/delete operations ────────── */
/* Finance table: operations column (screen-only; hidden in print/export). */
.finance-ops-col{white-space:nowrap;width:1%}
.finance-ops-actions{display:flex;align-items:center;gap:.35rem}
.finance-ops-btn{padding:.3rem .75rem;font-size:.8rem}
.finance-data-table tbody tr:hover{background:rgba(125,120,240,.06)}
/* Orders page: header actions (edit record / delete record). */
.admin-order-head-side{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap;justify-content:flex-end}
.admin-order-record-actions{display:flex;align-items:center;gap:.35rem}
.admin-order-record-actions button,.admin-order-record-actions a{padding:.3rem .75rem;font-size:.8rem}
/* Order edit page. */
.admin-order-edit-buyer .surface-card-inner{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.admin-order-edit-card{margin-bottom:1rem}
.admin-order-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.admin-order-edit-grid small{display:block;margin-top:.3rem;color:var(--rh-text-muted,#8b8b9e);font-size:.75rem}
.admin-order-edit-actions .surface-card-inner{display:flex;align-items:center;gap:.6rem}

