*,: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.19 | 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:Cairo,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,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}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.static{position:static}.\!fixed{position:fixed!important}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-end-1{inset-inline-end:-.25rem}.-top-1{top:-.25rem}.bottom-5{bottom:1.25rem}.end-4{inset-inline-end:1rem}.end-5{inset-inline-end:1.25rem}.start-3{inset-inline-start:.75rem}.start-3\.5{inset-inline-start:.875rem}.top-0{top:0}.top-1\/2{top:50%}.top-2\.5{top:.625rem}.top-4{top:1rem}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[110\]{z-index:110}.z-\[55\]{z-index:55}.z-\[60\]{z-index:60}.z-\[70\]{z-index:70}.z-\[80\]{z-index:80}.col-span-2{grid-column:span 2/span 2}.mx-auto{margin-left:auto;margin-right:auto}.-mt-2{margin-top:-.5rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.me-1{margin-inline-end:.25rem}.ms-auto{margin-inline-start:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.block{display:block}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-32{height:8rem}.h-4{height:1rem}.h-52{height:13rem}.h-56{height:14rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-fit{height:-moz-fit-content;height:fit-content}.h-full{height:100%}.max-h-48{max-height:12rem}.max-h-72{max-height:18rem}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-4{width:1rem}.w-40{width:10rem}.w-7{width:1.75rem}.w-9{width:2.25rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[6rem\]{min-width:6rem}.min-w-\[9rem\]{min-width:9rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[200px\]{max-width:200px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.translate-y-2{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))}.translate-y-2{--tw-translate-y:0.5rem}.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))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-decimal{list-style-type:decimal}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-1\.5{row-gap:.375rem}.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-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(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))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-slate-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(241 245 249/var(--tw-divide-opacity,1))}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-t-3xl{border-top-left-radius:1.5rem;border-top-right-radius:1.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.border-emerald-200{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.border-emerald-500\/20{border-color:rgba(16,185,129,.2)}.border-fuchsia-300{--tw-border-opacity:1;border-color:rgb(240 171 252/var(--tw-border-opacity,1))}.border-indigo-200{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-indigo-300\/60{border-color:rgba(165,180,252,.6)}.border-rose-200{--tw-border-opacity:1;border-color:rgb(254 205 211/var(--tw-border-opacity,1))}.border-rose-300{--tw-border-opacity:1;border-color:rgb(253 164 175/var(--tw-border-opacity,1))}.border-rose-500\/20{border-color:rgba(244,63,94,.2)}.border-sky-200{--tw-border-opacity:1;border-color:rgb(186 230 253/var(--tw-border-opacity,1))}.border-sky-300{--tw-border-opacity:1;border-color:rgb(125 211 252/var(--tw-border-opacity,1))}.border-sky-600{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity,1))}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-slate-200\/60{border-color:rgba(226,232,240,.6)}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.border-slate-700{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.border-teal-200{--tw-border-opacity:1;border-color:rgb(153 246 228/var(--tw-border-opacity,1))}.border-teal-600{--tw-border-opacity:1;border-color:rgb(13 148 136/var(--tw-border-opacity,1))}.border-violet-200{--tw-border-opacity:1;border-color:rgb(221 214 254/var(--tw-border-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-500\/10{background-color:rgba(245,158,11,.1)}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-emerald-500\/10{background-color:rgba(16,185,129,.1)}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-emerald-600\/10{background-color:rgba(5,150,105,.1)}.bg-fuchsia-50{--tw-bg-opacity:1;background-color:rgb(253 244 255/var(--tw-bg-opacity,1))}.bg-fuchsia-500{--tw-bg-opacity:1;background-color:rgb(217 70 239/var(--tw-bg-opacity,1))}.bg-fuchsia-500\/10{background-color:rgba(217,70,239,.1)}.bg-indigo-50{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.bg-indigo-50\/70{background-color:rgba(238,242,255,.7)}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.bg-indigo-500\/10{background-color:rgba(99,102,241,.1)}.bg-indigo-600{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.bg-rose-50{--tw-bg-opacity:1;background-color:rgb(255 241 242/var(--tw-bg-opacity,1))}.bg-rose-500{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity,1))}.bg-rose-500\/10{background-color:rgba(244,63,94,.1)}.bg-rose-600{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity,1))}.bg-sky-50{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity,1))}.bg-sky-500{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1))}.bg-sky-500\/10{background-color:rgba(14,165,233,.1)}.bg-sky-600{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.bg-slate-400\/10{background-color:rgba(148,163,184,.1)}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-500\/10{background-color:rgba(100,116,139,.1)}.bg-slate-700{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-slate-950\/70{background-color:rgba(2,6,23,.7)}.bg-slate-950\/75{background-color:rgba(2,6,23,.75)}.bg-slate-950\/80{background-color:rgba(2,6,23,.8)}.bg-teal-50{--tw-bg-opacity:1;background-color:rgb(240 253 250/var(--tw-bg-opacity,1))}.bg-teal-500\/10{background-color:rgba(20,184,166,.1)}.bg-teal-600{--tw-bg-opacity:1;background-color:rgb(13 148 136/var(--tw-bg-opacity,1))}.bg-violet-50{--tw-bg-opacity:1;background-color:rgb(245 243 255/var(--tw-bg-opacity,1))}.bg-violet-500\/10{background-color:rgba(139,92,246,.1)}.bg-violet-600{--tw-bg-opacity:1;background-color:rgb(124 58 237/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/60{background-color:hsla(0,0%,100%,.6)}.bg-white\/95{background-color:hsla(0,0%,100%,.95)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-amber-500{--tw-gradient-from:#f59e0b var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-fuchsia-600{--tw-gradient-from:#c026d3 var(--tw-gradient-from-position);--tw-gradient-to:rgba(192,38,211,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-indigo-50{--tw-gradient-from:#eef2ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(238,242,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from:#4f46e5 var(--tw-gradient-from-position);--tw-gradient-to:rgba(79,70,229,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-rose-600{--tw-gradient-from:#e11d48 var(--tw-gradient-from-position);--tw-gradient-to:rgba(225,29,72,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-600{--tw-gradient-from:#0284c7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,132,199,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-indigo-600{--tw-gradient-to:rgba(79,70,229,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#4f46e5 var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-400{--tw-gradient-to:#fbbf24 var(--tw-gradient-to-position)}.to-amber-500{--tw-gradient-to:#f59e0b var(--tw-gradient-to-position)}.to-emerald-500{--tw-gradient-to:#10b981 var(--tw-gradient-to-position)}.to-fuchsia-500{--tw-gradient-to:#d946ef var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to:#6366f1 var(--tw-gradient-to-position)}.to-rose-500{--tw-gradient-to:#f43f5e var(--tw-gradient-to-position)}.to-sky-500{--tw-gradient-to:#0ea5e9 var(--tw-gradient-to-position)}.to-sky-700{--tw-gradient-to:#0369a1 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pe-3{padding-inline-end:.75rem}.ps-4{padding-inline-start:1rem}.ps-8{padding-inline-start:2rem}.ps-9{padding-inline-start:2.25rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-center{text-align:center}.text-start{text-align:start}.text-end{text-align:end}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[6px\]{font-size:6px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.uppercase{text-transform:uppercase}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-\[0\.5em\]{letter-spacing:.5em}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-600\/80{color:rgba(217,119,6,.8)}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-fuchsia-500{--tw-text-opacity:1;color:rgb(217 70 239/var(--tw-text-opacity,1))}.text-fuchsia-600{--tw-text-opacity:1;color:rgb(192 38 211/var(--tw-text-opacity,1))}.text-fuchsia-800{--tw-text-opacity:1;color:rgb(134 25 143/var(--tw-text-opacity,1))}.text-indigo-500{--tw-text-opacity:1;color:rgb(99 102 241/var(--tw-text-opacity,1))}.text-indigo-700{--tw-text-opacity:1;color:rgb(67 56 202/var(--tw-text-opacity,1))}.text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity,1))}.text-rose-400{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity,1))}.text-rose-500{--tw-text-opacity:1;color:rgb(244 63 94/var(--tw-text-opacity,1))}.text-rose-600{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity,1))}.text-sky-400{--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity,1))}.text-sky-500{--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity,1))}.text-sky-600{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity,1))}.text-sky-700{--tw-text-opacity:1;color:rgb(3 105 161/var(--tw-text-opacity,1))}.text-sky-800{--tw-text-opacity:1;color:rgb(7 89 133/var(--tw-text-opacity,1))}.text-sky-900{--tw-text-opacity:1;color:rgb(12 74 110/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-slate-950{--tw-text-opacity:1;color:rgb(2 6 23/var(--tw-text-opacity,1))}.text-teal-500{--tw-text-opacity:1;color:rgb(20 184 166/var(--tw-text-opacity,1))}.text-teal-600{--tw-text-opacity:1;color:rgb(13 148 136/var(--tw-text-opacity,1))}.text-teal-700{--tw-text-opacity:1;color:rgb(15 118 110/var(--tw-text-opacity,1))}.text-violet-400{--tw-text-opacity:1;color:rgb(167 139 250/var(--tw-text-opacity,1))}.text-violet-500{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity,1))}.text-violet-600{--tw-text-opacity:1;color:rgb(124 58 237/var(--tw-text-opacity,1))}.text-violet-800{--tw-text-opacity:1;color:rgb(91 33 182/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.accent-sky-500{accent-color:#0ea5e9}.accent-violet-500{accent-color:#8b5cf6}.opacity-0{opacity:0}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px 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)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-amber-500\/20{--tw-shadow-color:rgba(245,158,11,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-600\/20{--tw-shadow-color:rgba(5,150,105,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-indigo-600\/20{--tw-shadow-color:rgba(79,70,229,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-rose-600\/20{--tw-shadow-color:rgba(225,29,72,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-sky-600\/20{--tw-shadow-color:rgba(2,132,199,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-teal-600\/20{--tw-shadow-color:rgba(13,148,136,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-violet-600\/20{--tw-shadow-color:rgba(124,58,237,.2);--tw-shadow:var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.selection\:bg-sky-500 ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1))}.selection\:bg-sky-500 ::selection{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1))}.selection\:text-white ::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-white ::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:bg-sky-500::-moz-selection{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1))}.selection\:bg-sky-500::selection{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1))}.selection\:text-white::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-white::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.last\:border-0:last-child{border-width:0}.hover\:bg-amber-400:hover{--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.hover\:bg-amber-500\/20:hover{background-color:rgba(245,158,11,.2)}.hover\:bg-emerald-500:hover{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.hover\:bg-emerald-500\/20:hover{background-color:rgba(16,185,129,.2)}.hover\:bg-fuchsia-500\/20:hover{background-color:rgba(217,70,239,.2)}.hover\:bg-indigo-100:hover{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.hover\:bg-indigo-500:hover{--tw-bg-opacity:1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.hover\:bg-indigo-500\/10:hover{background-color:rgba(99,102,241,.1)}.hover\:bg-indigo-500\/20:hover{background-color:rgba(99,102,241,.2)}.hover\:bg-indigo-600:hover{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.hover\:bg-rose-100:hover{--tw-bg-opacity:1;background-color:rgb(255 228 230/var(--tw-bg-opacity,1))}.hover\:bg-rose-500:hover{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity,1))}.hover\:bg-rose-500\/20:hover{background-color:rgba(244,63,94,.2)}.hover\:bg-sky-500:hover{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1))}.hover\:bg-sky-500\/20:hover{background-color:rgba(14,165,233,.2)}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:bg-slate-300:hover{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.hover\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.hover\:bg-slate-600:hover{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.hover\:bg-slate-700:hover{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.hover\:bg-teal-100:hover{--tw-bg-opacity:1;background-color:rgb(204 251 241/var(--tw-bg-opacity,1))}.hover\:bg-teal-500:hover{--tw-bg-opacity:1;background-color:rgb(20 184 166/var(--tw-bg-opacity,1))}.hover\:bg-violet-500:hover{--tw-bg-opacity:1;background-color:rgb(139 92 246/var(--tw-bg-opacity,1))}.hover\:bg-violet-500\/20:hover{background-color:rgba(139,92,246,.2)}.hover\:from-amber-400:hover{--tw-gradient-from:#fbbf24 var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,191,36,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-fuchsia-500:hover{--tw-gradient-from:#d946ef var(--tw-gradient-from-position);--tw-gradient-to:rgba(217,70,239,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-indigo-500:hover{--tw-gradient-from:#6366f1 var(--tw-gradient-from-position);--tw-gradient-to:rgba(99,102,241,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-rose-500:hover{--tw-gradient-from:#f43f5e var(--tw-gradient-from-position);--tw-gradient-to:rgba(244,63,94,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-sky-500:hover{--tw-gradient-from:#0ea5e9 var(--tw-gradient-from-position);--tw-gradient-to:rgba(14,165,233,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-amber-300:hover{--tw-gradient-to:#fcd34d var(--tw-gradient-to-position)}.hover\:to-fuchsia-400:hover{--tw-gradient-to:#e879f9 var(--tw-gradient-to-position)}.hover\:to-indigo-400:hover{--tw-gradient-to:#818cf8 var(--tw-gradient-to-position)}.hover\:to-rose-400:hover{--tw-gradient-to:#fb7185 var(--tw-gradient-to-position)}.hover\:to-sky-400:hover{--tw-gradient-to:#38bdf8 var(--tw-gradient-to-position)}.hover\:text-indigo-500:hover{--tw-text-opacity:1;color:rgb(99 102 241/var(--tw-text-opacity,1))}.hover\:text-rose-500:hover{--tw-text-opacity:1;color:rgb(244 63 94/var(--tw-text-opacity,1))}.hover\:text-rose-600:hover{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity,1))}.hover\:text-sky-600:hover{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity,1))}.hover\:text-slate-300:hover{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.hover\:text-slate-600:hover{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.focus\:border-amber-500:focus{--tw-border-opacity:1;border-color:rgb(245 158 11/var(--tw-border-opacity,1))}.focus\:border-emerald-500:focus{--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.focus\:border-fuchsia-500:focus{--tw-border-opacity:1;border-color:rgb(217 70 239/var(--tw-border-opacity,1))}.focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:rgb(99 102 241/var(--tw-border-opacity,1))}.focus\:border-rose-500:focus{--tw-border-opacity:1;border-color:rgb(244 63 94/var(--tw-border-opacity,1))}.focus\:border-sky-500:focus{--tw-border-opacity:1;border-color:rgb(14 165 233/var(--tw-border-opacity,1))}.focus\:border-teal-500:focus{--tw-border-opacity:1;border-color:rgb(20 184 166/var(--tw-border-opacity,1))}.focus\:border-violet-500:focus{--tw-border-opacity:1;border-color:rgb(139 92 246/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-0: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(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)}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;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))}.active\:bg-indigo-700:active{--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.dark\:divide-slate-800:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(30 41 59/var(--tw-divide-opacity,1))}.dark\:border-amber-500\/20:is(.dark *){border-color:rgba(245,158,11,.2)}.dark\:border-amber-500\/30:is(.dark *){border-color:rgba(245,158,11,.3)}.dark\:border-emerald-500\/20:is(.dark *){border-color:rgba(16,185,129,.2)}.dark\:border-emerald-500\/30:is(.dark *){border-color:rgba(16,185,129,.3)}.dark\:border-fuchsia-500\/30:is(.dark *){border-color:rgba(217,70,239,.3)}.dark\:border-indigo-500\/30:is(.dark *){border-color:rgba(99,102,241,.3)}.dark\:border-rose-500\/20:is(.dark *){border-color:rgba(244,63,94,.2)}.dark\:border-rose-500\/25:is(.dark *){border-color:rgba(244,63,94,.25)}.dark\:border-rose-500\/30:is(.dark *){border-color:rgba(244,63,94,.3)}.dark\:border-sky-500\/20:is(.dark *){border-color:rgba(14,165,233,.2)}.dark\:border-sky-500\/30:is(.dark *){border-color:rgba(14,165,233,.3)}.dark\:border-slate-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.dark\:border-slate-700\/50:is(.dark *){border-color:rgba(51,65,85,.5)}.dark\:border-slate-700\/60:is(.dark *){border-color:rgba(51,65,85,.6)}.dark\:border-slate-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 41 59/var(--tw-border-opacity,1))}.dark\:border-slate-800\/60:is(.dark *){border-color:rgba(30,41,59,.6)}.dark\:border-teal-500\/20:is(.dark *){border-color:rgba(20,184,166,.2)}.dark\:border-teal-500\/25:is(.dark *){border-color:rgba(20,184,166,.25)}.dark\:border-teal-500\/30:is(.dark *){border-color:rgba(20,184,166,.3)}.dark\:border-violet-500\/20:is(.dark *){border-color:rgba(139,92,246,.2)}.dark\:bg-amber-500\/10:is(.dark *){background-color:rgba(245,158,11,.1)}.dark\:bg-emerald-500\/10:is(.dark *){background-color:rgba(16,185,129,.1)}.dark\:bg-fuchsia-500\/10:is(.dark *){background-color:rgba(217,70,239,.1)}.dark\:bg-indigo-500\/10:is(.dark *){background-color:rgba(99,102,241,.1)}.dark\:bg-rose-500\/10:is(.dark *){background-color:rgba(244,63,94,.1)}.dark\:bg-sky-500\/10:is(.dark *){background-color:rgba(14,165,233,.1)}.dark\:bg-slate-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\:bg-slate-800\/40:is(.dark *){background-color:rgba(30,41,59,.4)}.dark\:bg-slate-800\/60:is(.dark *){background-color:rgba(30,41,59,.6)}.dark\:bg-slate-800\/80:is(.dark *){background-color:rgba(30,41,59,.8)}.dark\:bg-slate-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.dark\:bg-slate-900\/40:is(.dark *){background-color:rgba(15,23,42,.4)}.dark\:bg-slate-900\/50:is(.dark *){background-color:rgba(15,23,42,.5)}.dark\:bg-slate-900\/60:is(.dark *){background-color:rgba(15,23,42,.6)}.dark\:bg-slate-900\/95:is(.dark *){background-color:rgba(15,23,42,.95)}.dark\:bg-slate-950\/50:is(.dark *){background-color:rgba(2,6,23,.5)}.dark\:bg-slate-950\/80:is(.dark *){background-color:rgba(2,6,23,.8)}.dark\:bg-teal-500\/10:is(.dark *){background-color:rgba(20,184,166,.1)}.dark\:bg-violet-500\/10:is(.dark *){background-color:rgba(139,92,246,.1)}.dark\:from-indigo-950\/40:is(.dark *){--tw-gradient-from:rgba(30,27,75,.4) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,27,75,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:text-amber-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.dark\:text-amber-400\/70:is(.dark *){color:rgba(251,191,36,.7)}.dark\:text-emerald-400:is(.dark *){--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.dark\:text-fuchsia-300:is(.dark *){--tw-text-opacity:1;color:rgb(240 171 252/var(--tw-text-opacity,1))}.dark\:text-fuchsia-400:is(.dark *){--tw-text-opacity:1;color:rgb(232 121 249/var(--tw-text-opacity,1))}.dark\:text-indigo-300:is(.dark *){--tw-text-opacity:1;color:rgb(165 180 252/var(--tw-text-opacity,1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.dark\:text-rose-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity,1))}.dark\:text-sky-300:is(.dark *){--tw-text-opacity:1;color:rgb(125 211 252/var(--tw-text-opacity,1))}.dark\:text-sky-400:is(.dark *){--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity,1))}.dark\:text-slate-100:is(.dark *){--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.dark\:text-slate-200:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.dark\:text-slate-300:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.dark\:text-slate-400:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.dark\:text-slate-500:is(.dark *){--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.dark\:text-teal-400:is(.dark *){--tw-text-opacity:1;color:rgb(45 212 191/var(--tw-text-opacity,1))}.dark\:text-violet-300:is(.dark *){--tw-text-opacity:1;color:rgb(196 181 253/var(--tw-text-opacity,1))}.dark\:text-violet-400:is(.dark *){--tw-text-opacity:1;color:rgb(167 139 250/var(--tw-text-opacity,1))}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:hover\:bg-indigo-500\/20:hover:is(.dark *){background-color:rgba(99,102,241,.2)}.dark\:hover\:bg-slate-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-800\/40:hover:is(.dark *){background-color:rgba(30,41,59,.4)}.dark\:hover\:bg-slate-800\/50:hover:is(.dark *){background-color:rgba(30,41,59,.5)}.dark\:hover\:bg-slate-800\/60:hover:is(.dark *){background-color:rgba(30,41,59,.6)}.dark\:hover\:bg-teal-500\/20:hover:is(.dark *){background-color:rgba(20,184,166,.2)}.dark\:hover\:text-sky-400:hover:is(.dark *){--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity,1))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:inline{display:inline}.sm\:h-auto{height:auto}.sm\:max-h-\[92vh\]{max-height:92vh}.sm\:w-32{width:8rem}.sm\:w-48{width:12rem}.sm\:w-auto{width:auto}.sm\:max-w-4xl{max-width:56rem}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:rounded-3xl{border-radius:1.5rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}}@media (min-width:768px){.md\:col-span-2{grid-column:span 2/span 2}.md\:block{display:block}.md\:hidden{display:none}.md\:max-w-md{max-width:28rem}.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))}.md\:items-center{align-items:center}.md\:rounded-2xl{border-radius:1rem}.md\:p-4{padding:1rem}}@media (min-width:1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}
        body {
            font-family: 'Cairo', sans-serif;
            transition: background-color 0.3s ease, color 0.3s ease;
        }
        
        /* Custom Scrollbar */
        ::-webkit-scrollbar {
            width: 8px;
            height: 8px;
        }
        .dark ::-webkit-scrollbar-track {
            background: #0f172a;
        }
        ::-webkit-scrollbar-track {
            background: #f1f5f9;
        }
        .dark ::-webkit-scrollbar-thumb {
            background: #334155;
            border-radius: 4px;
        }
        ::-webkit-scrollbar-thumb {
            background: #cbd5e1;
            border-radius: 4px;
        }

        /* Glass Panel Dynamic Styles */
        .glass-panel {
            transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .dark .glass-panel {
            background: rgba(30, 41, 59, 0.75);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.08);
            box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.3);
        }
        .glass-panel {
            background: rgba(255, 255, 255, 0.85);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(226, 232, 240, 0.8);
            box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05);
        }

        .tab-btn.active {
            border-bottom: 3px solid #0369a1;
            color: #0369a1;
            background-color: rgba(2, 132, 199, 0.08);
        }
        .dark .tab-btn.active {
            color: #38bdf8;
            background-color: rgba(56, 189, 248, 0.1);
        }

        /* Horizontal top navigation bar (replaces the vertical sidebar) */
        .top-nav-bar {
            position: sticky;
            top: var(--header-height, 88px);
            z-index: 20;
        }
        .top-tab-btn {
            position: relative;
            border-bottom: 3px solid transparent;
        }
        .top-tab-btn.active {
            background: rgba(2, 132, 199, 0.08);
            color: #0369a1;
            border-bottom-color: #0369a1;
        }
        .dark .top-tab-btn.active {
            background: rgba(56, 189, 248, 0.10);
            color: #38bdf8;
            border-bottom-color: #38bdf8;
        }

        /* Grouped navigation categories (المحفظة / التحليل / السجلات / الأدوات) */
        .nav-category-btn {
            font-weight: 800;
            font-size: 0.8125rem;
            padding: 0.5rem 1rem;
            border-radius: 0.625rem;
            color: var(--v2-muted);
            border: 1px solid transparent;
            transition: all 0.2s ease;
            white-space: nowrap;
        }
        .nav-category-btn.nav-cat-active {
            color: #0369a1;
            background: rgba(2, 132, 199, 0.08);
            border-color: rgba(2, 132, 199, 0.2);
        }
        .dark .nav-category-btn { color: #94a3b8; }
        .dark .nav-category-btn.nav-cat-active {
            color: #38bdf8;
            background: rgba(56, 189, 248, 0.12);
            border-color: rgba(56, 189, 248, 0.25);
        }
        .nav-group.hidden { display: none; }

        /* Hero dashboard card */
        .hero-stat-divider { border-color: rgba(148,163,184,0.18); }
        #app-topnav {
            scrollbar-width: thin;
        }
        @media (max-width: 767px) {
            #app-topnav {
                flex-wrap: nowrap !important;
                overflow-x: auto;
            }
            .top-tab-btn span { display: none; }
            .top-tab-btn { padding: 0.75rem !important; }
        }

        /* Header quick-actions strip: on narrow phone screens there isn't
           room for the logo AND every action button on one line. Without
           this, the buttons force the whole page wider than the screen
           (a classic flexbox overflow bug — a flex child's default
           min-width:auto refuses to shrink below its content, which pushes
           the parent, and therefore the whole page, wider than the
           viewport). Constraining this one row to scroll horizontally on
           its own — the same treatment #app-topnav already gets above —
           keeps every button reachable without ever stretching the page. */
        #header-actions {
            min-width: 0;
        }

        /* Mobile bottom action bar + "more" sheet (see #mobile-action-bar). On
           phones the primary actions live at the bottom within thumb reach and
           the secondary ones in the "المزيد" sheet, so the header only keeps
           the portfolio switcher, privacy toggle and alerts bell. */
        .mab-btn {
            display: flex; flex-direction: column; align-items: center; justify-content: center;
            gap: 3px; font-size: 10px; font-weight: 800; padding: 6px 0 4px; border-radius: 12px;
            color: #475569;
        }
        .dark .mab-btn { color: #94a3b8; }
        .mab-btn:active { transform: scale(0.95); }
        .mab-btn i { font-size: 16px; }
        .mab-primary { color: #0369a1 !important; }
        .dark .mab-primary { color: #38bdf8 !important; }
        .mab-primary .mab-icon {
            width: 34px; height: 34px; margin-top: -14px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            background: linear-gradient(135deg, #075985, #0369a1); color: #fff;
            box-shadow: 0 6px 16px -4px rgba(2,132,199,0.55);
        }
        .more-tile {
            display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
            padding: 12px 6px; border-radius: 14px; font-size: 11px; font-weight: 700; text-align: center;
            background: rgba(148,163,184,0.10); border: 1px solid rgba(148,163,184,0.18);
            position: relative;
        }
        .more-tile i { font-size: 17px; }
        .more-tile:hover { background: rgba(148,163,184,0.18); }
        @media (max-width: 767px) {
            .hdr-mobile-hide { display: none !important; }
            body { padding-bottom: calc(70px + env(safe-area-inset-bottom, 0px)); }
            #toast-container { bottom: calc(84px + env(safe-area-inset-bottom, 0px)) !important; }
        }
        #mobile-action-bar { padding-bottom: env(safe-area-inset-bottom, 0px); }
        @media (max-width: 767px) {
            #header-actions {
                overflow-x: auto;
                flex-wrap: nowrap !important;
                scrollbar-width: none;
            }
            #header-actions::-webkit-scrollbar { display: none; }
            #header-actions > * { flex-shrink: 0; }
        }

        @keyframes pulse-ring {
            0% { transform: scale(0.95); opacity: 0.8; }
            50% { transform: scale(1.15); opacity: 1; }
            100% { transform: scale(0.95); opacity: 0.8; }
        }
        .pulse-live {
            animation: pulse-ring 2s infinite;
        }

        /* Analysis Tab */
        .analysis-section-card {
            background: rgba(148, 163, 184, 0.06);
            border: 1px solid rgba(148, 163, 184, 0.15);
            border-radius: 1rem;
            padding: 1.1rem;
        }
        .freshness-fresh {
            background-color: color-mix(in srgb, var(--v2-gain) 12%, transparent);
            color: var(--v2-gain);
            border: 1px solid color-mix(in srgb, var(--v2-gain) 35%, transparent);
        }
        .freshness-stale {
            background-color: color-mix(in srgb, var(--v2-warn) 12%, transparent);
            color: var(--v2-warn);
            border: 1px solid color-mix(in srgb, var(--v2-warn) 35%, transparent);
        }
        .analysis-spinner {
            border: 3px solid rgba(2, 132, 199, 0.15);
            border-top-color: #0369a1;
            border-radius: 50%;
            width: 2.5rem;
            height: 2.5rem;
            animation: spin 0.8s linear infinite;
        }
        @keyframes spin { to { transform: rotate(360deg); } }

        /* ===== TradingView widget mount (shared: ticker tape + analysis charts) ===== */
        .tv-wrap { position: relative; }
        .tv-wrap iframe, .tv-wrap .tradingview-widget-container { width: 100%; height: 100%; border: 0; display: block; }
        .tv-fallback-badge {
            position: absolute; inset-inline-end: 8px; bottom: 6px; z-index: 2;
            font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 6px;
            background: rgba(180,120,10,.12); color: #7a4f00;
        }
        .dark .tv-fallback-badge { background: rgba(224,174,60,.15); color: #e0ae3c; }
        .tv-wrap.tv-loading::before {
            content: ''; position: absolute; inset: 0; border-radius: inherit;
            background: linear-gradient(90deg, transparent, rgba(148,163,184,.15), transparent);
            background-size: 200% 100%; animation: tv-shimmer 1.4s infinite;
        }
        @keyframes tv-shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }
        @media (prefers-reduced-motion: reduce) { .tv-wrap.tv-loading::before { animation: none; } }

        /* ===== Ctrl+K command palette ===== */
        #command-palette-modal .cp-box { width: min(560px, 92vw); max-height: 72vh; }
        .cp-result { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; cursor: pointer; }
        .cp-result[aria-selected="true"] { background: rgba(2,132,199,.10); }
        .dark .cp-result[aria-selected="true"] { background: rgba(56,189,248,.14); }
        .cp-kbd { font-family: ui-monospace, monospace; font-size: 11px; border: 1px solid var(--v2-border); border-radius: 5px; padding: 1px 6px; color: var(--v2-muted); }

        /* =====================================================================
           SmartBorsa V2 — نظام التصميم (Design Tokens + Components)
           القاعدة: اللون للدلالة لا للزخرفة —
           أزرق = تنقل/إجراء رئيسي · أخضر/أحمر = ربح/خسارة (مع ▲▼) ·
           عنبري = تحذير · نيلي = ذكاء اصطناعي/تحليل.
           ===================================================================== */
        :root {
            --v2-bg: #F8FAFC;
            --v2-surface: #FFFFFF;
            --v2-raised: #F1F5F9;
            --v2-border: rgba(15, 23, 42, 0.09);
            --v2-primary: #0369A1;
            --v2-primary-deep: #0C1E3E;
            --v2-on-primary: #FFFFFF;
            --v2-gain: #0B5E3F;
            --v2-loss: #C62222;
            --v2-warn: #B45309;
            --v2-ai: #4F46E5;
            --v2-muted: #56667D;
            --v2-tint: #8EC1E0;
            --v2-radius-card: 12px;
            --v2-radius-btn: 10px;
        }
        .dark {
            --v2-bg: #0B1120;
            --v2-surface: #131C31;
            --v2-raised: #1B2640;
            --v2-border: rgba(255, 255, 255, 0.08);
            --v2-primary: #8EC1E0;
            --v2-primary-deep: #0C1E3E;
            --v2-on-primary: #062A3F;
            --v2-gain: #4ADE80;
            --v2-loss: #F87171;
            --v2-warn: #FBBF24;
            --v2-ai: #818CF8;
            --v2-muted: #94A3B8;
            --v2-tint: #38BDF8;
        }

        html { overscroll-behavior-y: contain; scroll-padding-top: 140px; }
        body { font-variant-numeric: tabular-nums; }
        html.dark body { background-color: var(--v2-bg) !important; }
        html:not(.dark) body { background-color: var(--v2-bg) !important; }

        /* بطاقات: سطح صلب بحد رفيع — بلا blur (أخف على الأجهزة المتوسطة) */
        .glass-panel {
            background: var(--v2-surface) !important;
            border: 1px solid var(--v2-border) !important;
            box-shadow: none !important;
            backdrop-filter: none !important;
            -webkit-backdrop-filter: none !important;
            border-radius: var(--v2-radius-card) !important;
        }
        html.dark header { background-color: rgba(11, 17, 32, 0.92) !important; }

        /* ===== وصول: تركيز مرئي + تخفيف الحركة ===== */
        :focus-visible { outline: 2px solid var(--v2-primary); outline-offset: 2px; border-radius: 8px; }
        .v2-skip {
            position: absolute; inset-inline-start: 8px; top: -60px; z-index: 200;
            background: var(--v2-primary); color: var(--v2-on-primary);
            padding: 10px 16px; border-radius: 10px; font-weight: 800; font-size: 13px;
        }
        .v2-skip:focus { top: 8px; }
        @media (prefers-reduced-motion: reduce) {
            /* حركة بديلة لا حذف كامل: تنقلات لون/شفافية قصيرة تُبقي ملاحظة تغيّر الحالة، وتُلغى الحركة المكانية والتكرار.
               مؤشرات التحميل الدوّارة تبقى (تدل على عملية جارية، ولا تُسبّب حركة مكانية واسعة). */
            *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: .14s !important; transition-property: opacity, color, background-color, border-color, fill, stroke !important; scroll-behavior: auto !important; }
            .fa-spin, .fa-spinner, .spinner { animation-duration: 1.4s !important; animation-iteration-count: infinite !important; }
        }

        /* ===== ربح / خسارة: اللون + الرمز معًا (لا اعتماد على اللون وحده) ===== */
        .v2-gain { color: var(--v2-gain); }
        .v2-loss { color: var(--v2-loss); }
        .v2-warn { color: var(--v2-warn); }
        .v2-muted { color: var(--v2-muted); }
        .v2-num { font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; }

        /* ===== Button ===== */
        .v2-btn {
            min-height: 44px; padding: 0 16px; border-radius: var(--v2-radius-btn);
            display: inline-flex; align-items: center; justify-content: center; gap: 8px;
            font-weight: 800; font-size: 13px; line-height: 1; white-space: nowrap;
            transition: transform .15s ease, background-color .15s ease, opacity .15s ease;
            cursor: pointer; border: 1px solid transparent;
        }
        .v2-btn:active { transform: scale(0.97); }
        .v2-btn:disabled { opacity: .45; cursor: not-allowed; }
        .v2-btn-primary { background: var(--v2-primary); color: var(--v2-on-primary); }
        .v2-btn-primary:hover:not(:disabled) { filter: brightness(1.08); }
        .v2-btn-secondary { background: var(--v2-raised); color: inherit; border-color: var(--v2-border); }
        .v2-btn-secondary:hover { filter: brightness(1.06); }
        .v2-btn-ghost { background: transparent; color: var(--v2-primary); }
        .v2-btn-danger { background: #E11D48; color: #fff; }
        .v2-btn-sm { min-height: 40px; padding: 0 12px; font-size: 12px; }
        .v2-icon-btn {
            position: relative; width: 44px; height: 44px; flex-shrink: 0;
            display: inline-flex; align-items: center; justify-content: center;
            border-radius: var(--v2-radius-btn); background: var(--v2-raised);
            border: 1px solid var(--v2-border); color: inherit; cursor: pointer;
            transition: transform .15s ease, filter .15s ease;
        }
        .v2-icon-btn:hover { filter: brightness(1.08); }
        .v2-icon-btn:active { transform: scale(0.94); }

        /* ===== Chip (فلاتر + تبويبات فرعية) ===== */
        .v2-chip {
            min-height: 40px; padding: 0 14px; border-radius: 999px; flex-shrink: 0;
            display: inline-flex; align-items: center; gap: 7px; white-space: nowrap;
            font-size: 13px; font-weight: 800; color: var(--v2-muted);
            background: var(--v2-raised); border: 1px solid transparent; cursor: pointer;
            transition: background-color .15s ease, color .15s ease;
        }
        .v2-chip:hover { color: inherit; }
        .v2-chip.active {
            color: var(--v2-primary); border-color: var(--v2-primary);
            background: color-mix(in srgb, var(--v2-primary) 12%, transparent);
        }

        /* ===== التنقل (شريط الأقسام + التبويبات الفرعية) ===== */
        .v2-nav {
            padding: 8px 0 6px; margin: 0 -4px;
            background: var(--v2-bg);
            background: color-mix(in srgb, var(--v2-bg) 94%, transparent);
            backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
        }
        .v2-sec-row { display: flex; align-items: center; gap: 4px; }
        .v2-sec-btn {
            min-height: 44px; padding: 0 16px; border-radius: var(--v2-radius-btn);
            display: inline-flex; align-items: center; gap: 8px;
            font-weight: 800; font-size: 14px; color: var(--v2-muted);
            border-bottom: 3px solid transparent; transition: color .15s ease, background-color .15s ease;
        }
        .v2-sec-btn:hover { background: var(--v2-raised); color: inherit; }
        .v2-sec-btn.active { color: var(--v2-primary); border-bottom-color: var(--v2-primary); background: color-mix(in srgb, var(--v2-primary) 8%, transparent); border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
        .v2-subtabs { display: flex; gap: 8px; overflow-x: auto; padding: 8px 4px 2px; scrollbar-width: none; }
        .v2-subtabs::-webkit-scrollbar { display: none; }
        .v2-mobile-title { display: none; }
        @media (max-width: 767px) {
            .v2-mobile-title {
                display: flex; align-items: center; gap: 8px; padding: 2px 4px 0;
                font-weight: 900; font-size: 15px;
            }
            .v2-nav { padding-top: 6px; }
            html { scroll-padding-top: 120px; }
        }

        /* ===== الشريط السفلي (موبايل): 5 خانات ===== */
        #mobile-action-bar { z-index: 40; }
        .mab-btn { min-height: 52px; position: relative; }
        .mab-btn.active { color: var(--v2-primary) !important; }
        .mab-btn.active::after {
            content: ''; position: absolute; top: 0; left: 30%; right: 30%; height: 3px;
            border-radius: 0 0 4px 4px; background: var(--v2-primary);
        }
        .mab-btn.mab-primary::after { display: none; }
        .mab-btn span { font-size: 11px; }

        /* ===== زر الإجراء السريع العائم (ديسكتوب) ===== */
        #fab-add {
            position: fixed; bottom: 24px; inset-inline-start: 24px; z-index: 35;
            height: 56px; padding: 0 22px 0 20px; border-radius: 28px; gap: 10px;
            background: var(--v2-primary); color: var(--v2-on-primary);
            font-weight: 900; font-size: 14px; align-items: center;
            box-shadow: 0 10px 24px -8px color-mix(in srgb, var(--v2-primary) 70%, transparent);
            transition: transform .15s ease;
        }
        #fab-add:hover { transform: translateY(-2px); }
        #fab-add:active { transform: scale(0.96); }
        @media (min-width: 768px) { #toast-container { bottom: 96px !important; } }

        /* ===== StatTile / صفوف الإعدادات / حالة فارغة ===== */
        .v2-tile { padding: 14px; border-radius: var(--v2-radius-card); background: var(--v2-raised); border: 1px solid var(--v2-border); }
        .v2-tile-label { font-size: 11px; font-weight: 800; color: var(--v2-muted); }
        .v2-tile-value { font-size: 20px; font-weight: 900; margin-top: 4px; line-height: 1.2; }
        .v2-sec-title { display: flex; align-items: center; gap: 8px; font-weight: 900; font-size: 15px; }
        .v2-sec-title i { color: var(--v2-primary); }
        .v2-row {
            width: 100%; min-height: 56px; padding: 8px 12px; border-radius: var(--v2-radius-btn);
            display: flex; align-items: center; gap: 12px; text-align: start;
            background: var(--v2-raised); border: 1px solid var(--v2-border); cursor: pointer;
            transition: filter .15s ease;
        }
        .v2-row:hover { filter: brightness(1.06); }
        .v2-row-ico { width: 36px; height: 36px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; background: color-mix(in srgb, var(--v2-primary) 12%, transparent); color: var(--v2-primary); }
        .v2-row-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; }
        .v2-row-txt b { font-size: 13px; font-weight: 800; }
        .v2-row-txt small { font-size: 11px; color: var(--v2-muted); font-weight: 600; }
        .v2-empty { text-align: center; padding: 36px 16px; }
        .v2-empty .v2-empty-ico { width: 56px; height: 56px; margin: 0 auto 12px; border-radius: 16px; display: flex; align-items: center; justify-content: center; font-size: 24px; background: color-mix(in srgb, var(--v2-primary) 12%, transparent); color: var(--v2-primary); }
        .v2-empty h3 { font-weight: 900; font-size: 15px; }
        .v2-empty p { font-size: 12px; color: var(--v2-muted); margin: 6px auto 16px; max-width: 320px; line-height: 1.7; }
        .v2-danger-zone { border: 1px solid #E11D48 !important; border-color: color-mix(in srgb, #E11D48 55%, transparent) !important; }

        /* ===== نبض المحفظة (Health Score) ===== */
        .v2-ring { position: relative; width: 96px; height: 96px; flex-shrink: 0; }
        .v2-ring svg { transform: rotate(-90deg); }
        .v2-ring .v2-ring-num { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1; }
        .v2-ring .v2-ring-num b { font-size: 26px; font-weight: 900; }
        .v2-ring .v2-ring-num small { font-size: 10px; font-weight: 800; color: var(--v2-muted); margin-top: 3px; }
        .v2-bar { height: 6px; border-radius: 999px; background: var(--v2-raised); overflow: hidden; }
        .v2-bar > i { display: block; height: 100%; border-radius: inherit; }

        /* ===== بطاقات الأسهم (موبايل) ===== */
        .v2-stock-card { padding: 14px; border-radius: var(--v2-radius-card); background: var(--v2-raised); border: 1px solid var(--v2-border); }
        .v2-stock-actions { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; margin-top: 12px; }
        .v2-stock-actions button {
            min-height: 44px; border-radius: 10px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
            font-size: 10.5px; font-weight: 800; background: var(--v2-surface); border: 1px solid var(--v2-border); color: inherit;
        }
        .v2-stock-actions button:active { transform: scale(0.95); }
        .v2-movers { display: flex; gap: 10px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
        .v2-movers::-webkit-scrollbar { display: none; }
        .v2-mover { min-width: 150px; padding: 12px; border-radius: var(--v2-radius-card); background: var(--v2-raised); border: 1px solid var(--v2-border); cursor: pointer; text-align: right; }

        /* ===== نوافذ منبثقة → Bottom Sheet على الموبايل ===== */
        @keyframes v2-sheet-up { from { transform: translateY(28px); opacity: .4; } to { transform: none; opacity: 1; } }
        @media (max-width: 767px) {
            [id$="-modal"].fixed:not(#stock-details-modal):not(#command-palette-modal) { align-items: flex-end !important; padding: 0 !important; }
            [id$="-modal"].fixed:not(#stock-details-modal):not(#command-palette-modal) > div:first-of-type {
                width: 100% !important; max-width: 100% !important; margin: 0 !important;
                border-radius: 20px 20px 0 0 !important; max-height: 92vh !important; overflow-y: auto !important;
                padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px)) !important;
                animation: v2-sheet-up .22s ease-out;
            }
            [id$="-modal"].fixed:not(#stock-details-modal):not(#command-palette-modal) > div:first-of-type::before {
                content: ''; display: block; width: 40px; height: 5px; border-radius: 4px;
                background: rgba(148, 163, 184, .45); margin: -8px auto 14px;
            }
            [id$="-modal"] button[type="submit"], [id$="-modal"] .flex.gap-2 > button { min-height: 44px; }
            [id$="-modal"] input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), [id$="-modal"] select { min-height: 44px; font-size: 16px; }
        }

        /* ===== سحب للتحديث + شريط التحديث ===== */
        #ptr {
            position: fixed; top: 0; left: 50%; z-index: 90; width: 40px; height: 40px; margin-left: -20px;
            border-radius: 50%; display: flex; align-items: center; justify-content: center;
            background: var(--v2-surface); border: 1px solid var(--v2-border); color: var(--v2-primary);
            box-shadow: 0 6px 18px -6px rgba(0,0,0,.35); transform: translateY(-60px); opacity: 0; pointer-events: none;
        }
        #update-banner {
            position: fixed; inset-inline: 12px; bottom: calc(72px + env(safe-area-inset-bottom, 0px)); z-index: 80;
            display: none; align-items: center; gap: 12px; padding: 12px 14px;
            border-radius: var(--v2-radius-card); background: var(--v2-surface); border: 1px solid var(--v2-primary);
            box-shadow: 0 12px 28px -10px rgba(0,0,0,.45);
        }
        #update-banner.show { display: flex; }
        @media (min-width: 768px) { #update-banner { inset-inline-start: auto; max-width: 420px; bottom: 24px; inset-inline-end: 24px; } }

        /* أرقام الشيبس في القوائم على الشاشات الصغيرة لا تتكسر */
        @media (max-width: 767px) {
            main { padding-left: 12px; padding-right: 12px; }
        }
    
/* =====================================================================
   SmartBorsa — إضافات واجهة (V4): شارات "جديد"، مصغّر أرشيف، مؤشر آخر أرشفة،
   وضع التباين العالي، طبقة اختصارات، بطاقة مشاركة الأداء.
   كل ما هنا إضافي بحت — لا يعدّل ولا يحذف أي قاعدة CSS سابقة.
   ===================================================================== */

/* ---------- 1) شارات "جديد" لاكتشاف الميزات ---------- */
.v4-new-badge {
    position: absolute; top: -4px; inset-inline-end: -4px; width: 9px; height: 9px;
    border-radius: 50%; background: #F43F5E; box-shadow: 0 0 0 2px var(--v2-surface, #fff);
    animation: v4-pulse 1.8s ease-in-out infinite; pointer-events: none; z-index: 5;
}
@keyframes v4-pulse { 0%,100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.35); opacity: .65; } }
.v4-badge-anchor { position: relative; }
@media (prefers-reduced-motion: reduce) { .v4-new-badge { animation: none; } }

/* ---------- 2) مصغّر أرشيف الأسعار (Sparkline) ---------- */
.v4-archive-spark { display: block; margin-top: 4px; }
.v4-archive-spark-mobile { width: 100%; height: 28px; margin-top: 8px; }
.v4-spark-label { font-size: 9px; font-weight: 800; color: var(--v2-muted, #64748B); margin-top: 1px; text-align: center; }

/* ---------- 3) مؤشر آخر أرشفة ---------- */
.v4-archive-status { font-size: 10.5px; font-weight: 800; color: var(--v2-muted, #64748B); display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.v4-archive-status i { color: var(--v2-gain, #16A34A); }
.v4-archive-status.v4-stale i { color: var(--v2-warn, #D97706); }

/* ---------- 4) وضع التباين العالي (يعمل فوق الداكن أو الفاتح) ---------- */
html.hc {
    --v2-border: rgba(15, 23, 42, 0.45) !important;
    --v2-muted: #334155 !important;
}
html.hc.dark {
    --v2-border: rgba(255, 255, 255, 0.55) !important;
    --v2-muted: #CBD5E1 !important;
}
html.hc body { text-shadow: none; }
html.hc .glass-panel, html.hc .v2-tile, html.hc .v2-row, html.hc .v2-stock-card, html.hc [id$="-modal"] > div:first-of-type {
    border-width: 2px !important;
}
html.hc :focus-visible { outline: 3px solid var(--v2-primary) !important; outline-offset: 2px !important; }
html.hc .v2-gain { color: #0E7A34 !important; }
html.hc.dark .v2-gain { color: #4ADE80 !important; }
html.hc .v2-loss { color: #B91C1C !important; }
html.hc.dark .v2-loss { color: #FCA5A5 !important; }

/* ---------- 5) طبقة اختصارات لوحة المفاتيح + بطاقة مشاركة الأداء (عناصر عامة) ---------- */
.v4ov { position: fixed; inset: 0; z-index: 200; background: rgba(2,6,23,.8); backdrop-filter: blur(4px); display: flex; align-items: center; justify-content: center; padding: 16px; }
.v4card { background: var(--v2-surface, #131C31); color: inherit; border: 1px solid var(--v2-border, rgba(255,255,255,.08)); border-radius: 16px; max-width: 440px; width: 100%; padding: 22px; max-height: 85vh; overflow-y: auto; }
.v4btn { min-height: 44px; padding: 0 16px; border-radius: 10px; font-weight: 800; font-size: 13px; cursor: pointer; border: 1px solid transparent; }
.v4btn-primary { background: var(--v2-primary, #0369A1); color: var(--v2-on-primary, #fff); }
.v4btn-secondary { background: var(--v2-raised, #1B2640); border-color: var(--v2-border, rgba(255,255,255,.08)); color: inherit; }
.v4-kbd-row { display: flex; align-items: center; justify-content: space-between; padding: 9px 0; border-bottom: 1px solid var(--v2-border, rgba(255,255,255,.08)); font-size: 12.5px; font-weight: 700; }
.v4-kbd-row:last-child { border-bottom: none; }
.v4-kbd { font-family: ui-monospace, monospace; font-size: 11px; font-weight: 800; border: 1px solid var(--v2-border, rgba(255,255,255,.15)); border-radius: 6px; padding: 2px 7px; background: var(--v2-raised, #1B2640); }

/* =====================================================================
   إصلاح: النوافذ المنبثقة تكبر بلا حد أقصى بلا سكرول (خاصة نافذة الشراء
   بعد ظهور "ماذا لو؟" والتحليل). كانت القاعدة السابقة تُطبَّق على الموبايل
   فقط (max-width: 767px) — هذه تنطبق على كل الأحجام، ولا تصطدم بأي نافذة
   ضبطت ارتفاعها بنفسها مسبقًا (نستثني ما يحمل بالفعل صنف max-h-*).
   ===================================================================== */
[id$="-modal"].fixed > div:first-of-type:not([class*="max-h-"]) {
    max-height: min(92vh, 100%);
    overflow-y: auto;
}

/* =====================================================================
   إصلاح: نوافذ منبثقة بلا سقف ارتفاع ولا تمرير على الديسكتوب (مثل نافذة
   الشراء عند امتلاء التحليل والمعاينة) كانت تتجاوز ارتفاع الشاشة بلا أي
   طريقة للتمرير إليها. هذه القاعدة شبكة أمان عامة تُضاف فوق أي نافذة لم
   تُحدِّد سقفًا خاصًا بها من قبل — لا تبطل أي سلوك تمرير مخصص موجود أصلًا
   (القيم هنا أقل تحديدًا من أي تصميم مخصص سابق بفضل ترتيب الملف).
   ===================================================================== */
@media (min-width: 768px) {
    [id$="-modal"].fixed > div:first-of-type {
        max-height: 90vh;
        overflow-y: auto;
    }
}

/* =====================================================================
   إصلاح: شريط أدوات الهيدر العلوي كان يفيض أفقيًا على الشاشات الصغيرة جدًا
   (أقل من ~375px)، فيحتاج تمرير الصفحة كلها أفقيًا للوصول لآخر أيقونة. الآن
   الفيض، إن حدث على أصغر الشاشات فقط، محصور داخل #header-actions نفسها
   (تمرير أفقي سلس بشريط مخفي)، لا يكسر تخطيط الصفحة كاملة.
   ===================================================================== */
#header-actions.no-scrollbar::-webkit-scrollbar { display: none; }

/* ===== E2E dialogs (e2e-ui.js) — in the stylesheet because CSP style-src 'self' blocks runtime <style> ===== */
.e2eov{position:fixed;inset:0;z-index:200;background:rgba(2,6,23,.8);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto}
.e2ecard{background:var(--v2-surface,#131C31);color:inherit;border:1px solid var(--v2-border,rgba(255,255,255,.08));border-radius:16px;max-width:430px;width:100%;padding:22px;box-shadow:0 20px 50px -12px rgba(0,0,0,.6)}
.e2ecard h3{font-weight:900;font-size:16px;margin-bottom:6px}
.e2ecard p,.e2ecard li{font-size:12px;opacity:.8;line-height:1.9}
.e2ecode{font:800 17px/1.7 monospace;letter-spacing:1px;text-align:center;background:var(--v2-raised,#1B2640);border:1px dashed var(--v2-primary,#38BDF8);border-radius:12px;padding:14px;margin:14px 0;user-select:all;direction:ltr}
.e2einput{width:100%;min-height:44px;border-radius:10px;padding:0 12px;background:var(--v2-raised,#1B2640);border:1px solid var(--v2-border,rgba(255,255,255,.08));color:inherit;font-weight:700;font-size:14px;margin-bottom:10px}
.e2elabel{font-size:12px;font-weight:800;display:block;margin-bottom:6px}
.e2ebtn{min-height:44px;padding:0 16px;border-radius:10px;font-weight:800;font-size:13px;cursor:pointer;border:1px solid transparent}
.e2ebtn:disabled{opacity:.5;cursor:not-allowed}
.e2ebtn-primary{background:var(--v2-primary,#38BDF8);color:#062A3F}
.e2ebtn-secondary{background:var(--v2-raised,#1B2640);border-color:var(--v2-border,rgba(255,255,255,.08));color:inherit}
.e2eerr{color:#FB7185;font-size:12px;font-weight:700;margin:4px 0 8px}
.e2erow{display:flex;gap:8px}

/* ===== السوق الافتراضي (paper.js): هوية بصرية بنفسجية مميّزة كي لا يُخلط بالحساب الحقيقي ===== */
#paper-tab { --paper: #8B5CF6; --paper-soft: rgba(139, 92, 246, .12); --paper-line: rgba(139, 92, 246, .45); }
.paper-ribbon {
    display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; padding: 10px 14px; border-radius: 14px;
    border: 1px dashed var(--paper-line);
    background: repeating-linear-gradient(135deg, var(--paper-soft) 0 14px, transparent 14px 28px), var(--v2-surface);
}
.paper-ribbon-badge { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 999px; background: var(--paper); color: #fff; font-weight: 900; font-size: 12px; letter-spacing: .2px; }
.paper-ribbon-text { flex: 1; min-width: 200px; font-size: 12px; font-weight: 700; color: var(--v2-muted); }
.paper-card { padding: 18px; border-radius: 18px; background: var(--v2-surface); border: 1px solid var(--v2-border); border-top: 3px solid var(--paper); }
.paper-card-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 10px; }
.paper-h { font-weight: 900; font-size: 14px; display: flex; align-items: center; gap: 8px; margin-bottom: 12px; }
.paper-card-head .paper-h { margin-bottom: 0; }
.paper-h i { color: var(--paper); }
.paper-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 1024px) { .paper-grid { grid-template-columns: minmax(300px, 380px) 1fr; align-items: start; } }
.paper-hero { display: grid; gap: 14px; }
.paper-hero-main { display: grid; gap: 4px; }
.paper-total { font-size: clamp(28px, 6vw, 42px); font-weight: 900; line-height: 1.15; letter-spacing: -.5px; }
.paper-pnl { font-weight: 900; font-size: 15px; display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 10px; }
.paper-pnl small { font-size: 11px; font-weight: 700; color: var(--v2-muted); }
.paper-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; }
.paper-tile { padding: 12px 14px; border-radius: 14px; background: var(--v2-raised); border: 1px solid var(--v2-border); display: grid; gap: 4px; }
.paper-tile b { font-size: 18px; font-weight: 900; }
.paper-label { display: block; font-size: 11px; font-weight: 800; color: var(--v2-muted); margin: 10px 0 5px; }
.paper-hero-main .paper-label, .paper-tile .paper-label { margin: 0; }
.paper-muted { color: var(--v2-muted); font-size: 12px; font-weight: 700; }
.paper-where { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.paper-input { width: 100%; min-height: 44px; border-radius: 12px; padding: 0 12px; background: var(--v2-raised); border: 1px solid var(--v2-border); color: inherit; font-weight: 800; font-size: 14px; }
.paper-input:focus { outline: 2px solid var(--paper); outline-offset: 1px; }
.paper-qty-row { display: flex; gap: 8px; }
.paper-seg { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; border-radius: 14px; background: var(--v2-raised); border: 1px solid var(--v2-border); }
.paper-seg button { min-height: 42px; border-radius: 10px; font-weight: 900; font-size: 13px; color: var(--v2-muted); transition: background-color .15s ease, color .15s ease; }
.paper-seg button[aria-pressed="true"]#paper-side-buy { background: var(--v2-buy); color: #fff; }
.paper-seg button[aria-pressed="true"]#paper-side-sell { background: var(--v2-sell); color: #fff; }
.paper-preview { display: grid; gap: 6px; margin: 14px 0 6px; padding: 12px; border-radius: 12px; background: var(--paper-soft); font-size: 12.5px; font-weight: 700; }
.paper-preview > div { display: flex; justify-content: space-between; gap: 10px; }
.paper-preview dt { color: var(--v2-muted); }
.paper-preview dd { font-weight: 900; margin: 0; }
.paper-preview-total { padding-top: 6px; border-top: 1px dashed var(--paper-line); font-size: 13.5px; }
.paper-msg { min-height: 18px; font-size: 12px; font-weight: 800; color: #FB7185; margin: 4px 0 8px; }
.paper-msg-err { color: #FB7185; }
.paper-submit { width: 100%; min-height: 48px; border-radius: 14px; font-weight: 900; font-size: 14px; color: #fff; background: var(--v2-buy); transition: transform .15s ease, opacity .15s ease, filter .15s ease; }
.paper-submit.paper-submit-sell { background: #E11D48; }
.paper-submit:hover:not(:disabled) { filter: brightness(1.08); }
.paper-submit:active:not(:disabled) { transform: scale(.98); }
.paper-submit:disabled { opacity: .45; cursor: not-allowed; }
.paper-ghost-btn { min-height: 38px; padding: 0 12px; border-radius: 10px; font-weight: 800; font-size: 12px; border: 1px solid var(--paper-line); color: var(--paper); background: transparent; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.paper-ghost-btn:hover { background: var(--paper-soft); }
.paper-mini-btn { min-height: 32px; padding: 0 12px; border-radius: 9px; font-weight: 800; font-size: 12px; background: rgba(225, 29, 72, .14); color: #E11D48; }
.paper-table-wrap { overflow-x: auto; border-radius: 12px; border: 1px solid var(--v2-border); }
.paper-table { width: 100%; font-size: 12px; text-align: start; border-collapse: collapse; }
.paper-table th { padding: 10px 12px; color: var(--v2-muted); font-weight: 800; background: var(--v2-raised); white-space: nowrap; text-align: start; }
.paper-table td { padding: 10px 12px; border-top: 1px solid var(--v2-border); font-weight: 700; white-space: nowrap; }
.paper-table td small { display: block; font-size: 10.5px; opacity: .85; }
.paper-pill { display: inline-block; padding: 2px 10px; border-radius: 999px; font-size: 11px; font-weight: 900; }
.paper-pill-buy { background: color-mix(in srgb, var(--v2-buy) 14%, transparent); color: var(--v2-gain-ink); }
.paper-pill-sell { background: rgba(225, 29, 72, .16); color: #E11D48; }
.paper-empty { display: grid; place-items: center; gap: 8px; padding: 28px 12px; text-align: center; color: var(--v2-muted); font-weight: 700; font-size: 13px; }
.paper-empty i { font-size: 26px; color: var(--paper); opacity: .8; }

/* ===== عمق ثلاثي الأبعاد (Elevation): ظلال متعددة الطبقات + حافة ضوء علوية على كل البطاقات والجداول والنوافذ =====
   فكرة الطبقات: (1) حافة ضوء داخلية من الأعلى، (2) ظل تلامس قصير حاد، (3) ظل محيطي متوسط، (4) ظل بعيد ناعم.
   مستويان: --elev-1 للبطاقات والجداول، --elev-2 عند التمرير على العناصر القابلة للنقر، --elev-3 للنوافذ المنبثقة.
   بلا transform (حتى لا يتعارض مع GSAP)، وبلا backdrop-filter (أداء). */
:root {
    --elev-1: 0 1px 0 rgba(255, 255, 255, .95) inset, 0 1px 2px rgba(15, 23, 42, .07), 0 6px 14px -4px rgba(15, 23, 42, .10), 0 18px 32px -14px rgba(15, 23, 42, .14);
    --elev-2: 0 1px 0 rgba(255, 255, 255, 1) inset, 0 2px 4px rgba(15, 23, 42, .09), 0 12px 24px -6px rgba(15, 23, 42, .16), 0 28px 44px -16px rgba(15, 23, 42, .20);
    --elev-3: 0 1px 0 rgba(255, 255, 255, .9) inset, 0 4px 8px rgba(15, 23, 42, .10), 0 24px 48px -12px rgba(15, 23, 42, .30), 0 48px 80px -24px rgba(15, 23, 42, .28);
    --elev-in: 0 1px 0 rgba(255, 255, 255, .8) inset, 0 1px 2px rgba(15, 23, 42, .06);
    --elev-sheen: linear-gradient(180deg, rgba(255, 255, 255, .85), rgba(255, 255, 255, 0) 55%);
}
.dark {
    --elev-1: 0 1px 0 rgba(255, 255, 255, .07) inset, 0 1px 2px rgba(0, 0, 0, .45), 0 8px 16px -4px rgba(0, 0, 0, .50), 0 20px 36px -14px rgba(0, 0, 0, .55);
    --elev-2: 0 1px 0 rgba(255, 255, 255, .10) inset, 0 2px 4px rgba(0, 0, 0, .50), 0 14px 26px -6px rgba(0, 0, 0, .58), 0 30px 48px -16px rgba(0, 0, 0, .60);
    --elev-3: 0 1px 0 rgba(255, 255, 255, .10) inset, 0 4px 8px rgba(0, 0, 0, .55), 0 26px 52px -12px rgba(0, 0, 0, .70), 0 52px 90px -24px rgba(0, 0, 0, .65);
    --elev-in: 0 1px 0 rgba(255, 255, 255, .06) inset, 0 1px 2px rgba(0, 0, 0, .35);
    --elev-sheen: linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, 0) 55%);
}

/* البطاقات الرئيسية والجداول */
.glass-panel, .paper-card, .v3card, .v4card, .e2ecard,
div.overflow-x-auto.rounded-xl, .paper-table-wrap {
    box-shadow: var(--elev-1) !important;
}
.glass-panel, .paper-card { background-image: var(--elev-sheen) !important; }

/* بطاقات داخل بطاقات (بلاطات): عمق أخف كي لا يزدحم المشهد */
.v2-tile, .paper-tile, .glass-panel .v2-row, .v2-mover {
    box-shadow: var(--elev-in);
    transition: box-shadow .2s ease, border-color .2s ease;
}
/* العناصر القابلة للنقر ترتفع قليلًا عند التمرير */
.v2-mover:hover, .v2-row:hover, button.v2-tile:hover { box-shadow: var(--elev-2); }

/* النوافذ المنبثقة: أعلى مستوى */
[id$="-modal"].fixed > div:first-of-type { box-shadow: var(--elev-3) !important; }

/* الجداول: رأس الجدول يبدو مرتفعًا قليلًا عن الصفوف */
.paper-table th { box-shadow: 0 1px 0 var(--v2-border), 0 6px 8px -8px rgba(15, 23, 42, .25); }
.dark .paper-table th { box-shadow: 0 1px 0 var(--v2-border), 0 6px 8px -8px rgba(0, 0, 0, .6); }

/* شريط التنقل السفلي والرأس يطفوان فوق المحتوى */
#mobile-action-bar { box-shadow: 0 -8px 24px -8px rgba(15, 23, 42, .25); }
.dark #mobile-action-bar { box-shadow: 0 -10px 28px -8px rgba(0, 0, 0, .7); }

/* التباين العالي: حدود واضحة أهم من الظلال */
html.hc .glass-panel, html.hc .paper-card, html.hc div.overflow-x-auto.rounded-xl { box-shadow: none !important; background-image: none !important; }
@media print { .glass-panel, .paper-card, div.overflow-x-auto.rounded-xl { box-shadow: none !important; background-image: none !important; } }

/* ===== تباين الألوان (WCAG AA ≥ 4.5:1) =====
   النص الأبيض على أزرار Tailwind الملوّنة (درجات 500/600) كان يفشل (2.1–4.1:1). تُغمَّق خلفيات الأزرار فقط (لا النصوص)
   ويبقى لون الإجراء الواحد sky؛ الألوان الأخرى دلالية (نجاح/خطر/تحذير). حالات hover أغمق من الأساس دائمًا. */
.bg-sky-500, .bg-sky-600 { background-color: #0369a1; }
.hover\:bg-sky-500:hover, .hover\:bg-sky-600:hover, .hover\:bg-sky-700:hover { background-color: #075985; }
.bg-emerald-500, .bg-emerald-600 { background-color: #047857; }
.hover\:bg-emerald-500:hover, .hover\:bg-emerald-600:hover, .hover\:bg-emerald-700:hover { background-color: #065f46; }
.bg-teal-500, .bg-teal-600 { background-color: #0f766e; }
.hover\:bg-teal-500:hover, .hover\:bg-teal-600:hover, .hover\:bg-teal-700:hover { background-color: #115e59; }
.bg-amber-500.text-white { background-color: #b45309; }
.bg-rose-500 { background-color: #e11d48; }
.bg-rose-600 { background-color: #be123c; }
.hover\:bg-rose-500:hover, .hover\:bg-rose-600:hover { background-color: #be123c; }
.bg-fuchsia-500 { background-color: #a21caf; }
.hover\:bg-fuchsia-500:hover, .hover\:bg-fuchsia-600:hover { background-color: #86198f; }
.bg-indigo-500 { background-color: #4f46e5; }
.hover\:bg-indigo-500:hover, .hover\:bg-indigo-600:hover { background-color: #4338ca; }
/* التدرجات خلف نص أبيض (أزرار وبطاقات رأس) — نفس الدرجات الأغمق */
.from-sky-500, .from-sky-600 { --tw-gradient-from: #0369a1 var(--tw-gradient-from-position); --tw-gradient-to: rgb(3 105 161 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-sky-500, .to-sky-600 { --tw-gradient-to: #0369a1 var(--tw-gradient-to-position); }
.from-emerald-500, .from-emerald-600 { --tw-gradient-from: #047857 var(--tw-gradient-from-position); --tw-gradient-to: rgb(4 120 87 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-emerald-500, .to-emerald-600 { --tw-gradient-to: #047857 var(--tw-gradient-to-position); }
.from-teal-500, .from-teal-600 { --tw-gradient-from: #0f766e var(--tw-gradient-from-position); --tw-gradient-to: rgb(15 118 110 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-teal-500, .to-teal-600 { --tw-gradient-to: #0f766e var(--tw-gradient-to-position); }
.from-rose-500 { --tw-gradient-from: #e11d48 var(--tw-gradient-from-position); --tw-gradient-to: rgb(225 29 72 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-rose-500 { --tw-gradient-to: #e11d48 var(--tw-gradient-to-position); }
.from-fuchsia-500 { --tw-gradient-from: #a21caf var(--tw-gradient-from-position); --tw-gradient-to: rgb(162 28 175 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-fuchsia-500 { --tw-gradient-to: #a21caf var(--tw-gradient-to-position); }
.from-amber-500 { --tw-gradient-from: #b45309 var(--tw-gradient-from-position); --tw-gradient-to: rgb(180 83 9 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-amber-500 { --tw-gradient-to: #b45309 var(--tw-gradient-to-position); }
.from-indigo-500 { --tw-gradient-from: #4f46e5 var(--tw-gradient-from-position); --tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-indigo-500 { --tw-gradient-to: #4f46e5 var(--tw-gradient-to-position); }
/* نصوص ثانوية على الخلفية الداكنة: الرمادي 500 يفشل (3.6:1) ⇒ يتبع توكن muted الداكن. :where يُبقي الأولوية منخفضة فلا يكسر dark:text-* */
:where(.dark) .text-slate-500 { color: var(--v2-muted); }
:where(.dark) .text-violet-500 { color: #a78bfa; }
:where(.dark) .text-indigo-500 { color: #818cf8; }

/* ===== مقروئية: حد أدنى لحجم الخط =====
   فئات Tailwind الاعتباطية 9/10/11px كانت تُنتج 80+ موضع نص وظيفي أصغر من 12px (صعب على الهاتف وبالعربية). */
.text-\[9px\] { font-size: 11px; line-height: 1.4; }
.text-\[10px\], .text-\[11px\] { font-size: 12px; line-height: 1.45; }

/* ===== أداء: بلا تمويه خلفي =====
   backdrop-filter على 30 طبقة/نافذة مع هيدر ثابت يُكلّف رسمًا على الأجهزة المتوسطة؛ التعتيم (bg-slate-950/70) يؤدي الغرض. */
.backdrop-blur-sm, .backdrop-blur-md, .backdrop-blur, .v4ov, .e2eov, .v2-nav { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }

/* ===== بطاقة داخل بطاقة ⇒ سطح مسطّح لوني، لا بطاقة ثانية بظل =====
   العمق الظلّي للمستوى الأعلى فقط (قاعدة Light-From-Above)؛ ما بداخله يتمايز باللون والحد. */
.glass-panel .glass-panel, .paper-card .glass-panel, .glass-panel .paper-card { box-shadow: none !important; background: var(--v2-raised) !important; }
.dark .dark\:text-slate-500 { color: var(--v2-muted); }

/* ===== الشعار: ب (وعاء الحرف) يصعد إلى شمعة خضراء، ونقطة الحرف تحته =====
   حركة واحدة عند التحميل: النقطة تهبط في مكانها كأنها سعر يُسجَّل. تحت prefers-reduced-motion تُختصر آليًا (القاعدة العامة أعلاه). */
.sb-logo { display: inline-flex; border-radius: 9px; box-shadow: var(--elev-1); }
.sb-logo-dot { transform-box: fill-box; transform-origin: center; animation: sb-drop .7s cubic-bezier(.16, 1, .3, 1) .25s both; }
.sb-logo-candle { transform-box: fill-box; transform-origin: bottom; animation: sb-rise .6s cubic-bezier(.2, .9, .3, 1) .45s both; }
@keyframes sb-drop { from { transform: translateY(-70px); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes sb-rise { from { transform: scaleY(.05); opacity: 0; } to { transform: none; opacity: 1; } }

/* ===== تخطيط الرئيسية: «كيف حالي الآن؟» أولًا =====
   الجوال: عمود واحد بترتيب الأهمية — إجمالي المحفظة، ثم ملخصك اليومي (حين يتوفر)، ثم ما يحتاج انتباهك، فالأكثر حركة؛
   وخطوات البدء/الإدخال السريع/الشريط بعدها، وإعدادات البطاقات في الذيل. (كانت خطوات البدء بارتفاع 446px فوق الرقم.)
   الديسكتوب (≥1024): عمود رئيسي للأرقام وعمود جانبي للإجراءات والملخص؛ شريط الأسعار بعرض الصفحة. المحتوى كله كما هو (نفس المعرّفات). */
#home-tab:not(.hidden) { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-items: start; }
#home-tab > * { margin: 0; }
.ha-main, .ha-rail { display: contents; }
.ha-hero { order: 1; }
#daily-briefing-card { order: 2; }
#weekly-card { order: 3; }
.ha-pulse { order: 4; }
#movers-card { order: 5; }
#onb-card { order: 6; }
.ha-nl { order: 7; }
.ha-ticker { order: 8; }
.ha-market { order: 9; }
.ha-links { order: 10; }
#home-toggles { order: 11; }
@media (min-width: 1024px) {
    #home-tab:not(.hidden) { grid-template-columns: minmax(0, 1fr) 22rem; gap: 20px; }
    .ha-main, .ha-rail { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
    .ha-ticker { grid-column: 1 / -1; order: -1; }
    #home-toggles { grid-column: 1 / -1; }
}
/* بطاقات الرئيسية الجانبية أخف: لا حاجة لبطاقة كاملة العرض لخطوات البدء */
.ha-rail #onb-card { padding: 14px; }
.ha-rail #onb-card ol > li { padding: 10px; }

/* شريحة حالة الجلسة: نقطة ثابتة (لا نبض) بلون الحالة */
.ha-session { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 800; padding: 3px 10px; border-radius: 999px; border: 1px solid var(--v2-border); background: var(--v2-raised); color: var(--v2-muted); }
.ha-session[data-state="open"] { color: var(--v2-gain); border-color: color-mix(in srgb, var(--v2-gain) 40%, transparent); background: color-mix(in srgb, var(--v2-gain) 10%, transparent); }
.ha-session[data-state="closed"] { color: var(--v2-primary); }
.ha-session-dot { width: 7px; height: 7px; border-radius: 50%; background: currentColor; display: inline-block; }

/* ترويسة الهاتف (≤479px): 7 عناصر لا تتسع في 375px فكانت أزرار اللغة والإعدادات تخرج خارج الشاشة. كلاهما متاح من «المزيد ← الإعدادات». */
@media (max-width: 479px) {
    header .js-lang-toggle-btn, header [data-h-click="goToSettings"] { display: none; }
}

/* ===== نظام الصفحات الموحّد (كل ما عدا الرئيسية والسوق الافتراضي) =====
   1) ترويسة موحّدة #pg-head: أيقونة + عنوان + سطر غرض + أرقام تخصّ الصفحة (على الجوال شريط أرقام قابل للتمرير).
   2) إيقاع واحد: شبكة بفاصل 16px (20px على الديسكتوب) بدل space-y متفاوتة، وحشوة بطاقات أصغر على الجوال.
   3) الديسكتوب: صفحات بطاقاتها مستقلة (السيولة، الأداء، التوزيعات) في عمودين؛ الإعدادات في عمودين متدفقين.
   4) الجوال: عمود الرمز الأول في الجداول ثابت أثناء التمرير الأفقي. */
#v2-mobile-title { display: none !important; }
#pg-head { display: grid; gap: 14px; padding: 16px; border-radius: var(--v2-radius-card); background: var(--v2-surface); border: 1px solid var(--v2-border); box-shadow: var(--elev-1); }
#pg-head.hidden { display: none; }
.pg-head-main { display: flex; gap: 12px; align-items: center; min-width: 0; }
.pg-ico { width: 44px; height: 44px; flex: none; border-radius: 12px; display: grid; place-items: center; font-size: 18px; color: var(--v2-primary); background: color-mix(in srgb, var(--v2-primary) 14%, transparent); }
.pg-txt { min-width: 0; }
.pg-crumb { font-size: 12px; font-weight: 800; color: var(--v2-muted); }
.pg-title { font-size: 20px; font-weight: 900; line-height: 1.25; }
.pg-desc { font-size: 13px; font-weight: 600; color: var(--v2-muted); max-width: 62ch; margin-top: 2px; line-height: 1.55; }
.pg-kpis { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x proximity; padding-bottom: 2px; }
.pg-kpi { flex: 1 0 auto; min-width: 136px; padding: 10px 14px; border-radius: 12px; background: var(--v2-raised); border: 1px solid var(--v2-border); scroll-snap-align: start; display: flex; flex-direction: column; gap: 2px; }
.pg-kpi-l { font-size: 12px; font-weight: 700; color: var(--v2-muted); }
.pg-kpi-v { font-size: 18px; font-weight: 900; }

.tab-content:not(#home-tab):not(#paper-tab):not(.hidden) { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-items: start; }
.tab-content:not(#home-tab):not(#paper-tab) > * { margin: 0 !important; }
.tab-content .glass-panel h2 { font-size: 15px; font-weight: 900; }

@media (max-width: 639px) {
    .tab-content .glass-panel.p-5, .tab-content .glass-panel.p-6 { padding: 16px; }
    .overflow-x-auto > table :is(th, td):first-child { position: sticky; inset-inline-start: 0; z-index: 1; background: var(--v2-surface); box-shadow: 1px 0 0 var(--v2-border); }
    .overflow-x-auto > table thead th:first-child { background: var(--v2-raised); }
}
@media (min-width: 1024px) {
    #pg-head { grid-template-columns: minmax(0, 1fr) auto; align-items: center; padding: 18px 22px; }
    .pg-kpis { overflow: visible; }
    .pg-kpi { min-width: 150px; }
    .tab-content:not(#home-tab):not(#paper-tab):not(.hidden) { gap: 20px; }
    .tab-content#liquidity-tab:not(#home-tab):not(#paper-tab):not(.hidden), .tab-content#perf-tab:not(#home-tab):not(#paper-tab):not(.hidden), .tab-content#dividends-tab:not(#home-tab):not(#paper-tab):not(.hidden) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #dividends-tab > :first-child { grid-column: 1 / -1; }
    .tab-content#settings-tab:not(#home-tab):not(#paper-tab):not(.hidden) { display: block; columns: 2; column-gap: 20px; }
    #settings-tab > * { margin: 0 0 16px !important; }
    #settings-tab > section { break-inside: avoid; }
    #settings-tab > :not(section) { column-span: all; }
}
.pg-kpis { scrollbar-width: none; }
.pg-kpis::-webkit-scrollbar { display: none; }
@media (max-width: 639px) {
    .pg-desc { display: none; }
    .pg-kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
    .pg-kpi { min-width: 0; padding: 8px 12px; }
    .pg-kpi-v { font-size: 16px; }
    #pg-head { gap: 12px; }
}

/* ===== «الأداء» (تحليل الصفقات المغلقة) ===== */
#tp-root { display: grid; gap: 16px; }
.tp-bar { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.tp-bar-l { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 12px; font-weight: 800; color: var(--v2-muted); }
.tp-card { background: var(--v2-surface); border: 1px solid var(--v2-border); border-radius: var(--v2-radius-card); box-shadow: var(--elev-1); padding: 16px; min-width: 0; }
.tp-card-h { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.tp-card h3 { font-size: 15px; font-weight: 900; }
.tp-tools { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.tp-seg { display: inline-flex; padding: 3px; gap: 2px; border-radius: 12px; background: var(--v2-raised); border: 1px solid var(--v2-border); max-width: 100%; overflow-x: auto; scrollbar-width: none; }
.tp-seg button { min-height: 36px; padding: 0 12px; border-radius: 9px; font-size: 12px; font-weight: 800; color: var(--v2-muted); white-space: nowrap; }
.tp-seg button.on { background: var(--v2-primary); color: var(--v2-on-primary); }
.tp-hero { display: grid; gap: 14px; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--v2-border); }
.tp-hero-l { font-size: 12px; font-weight: 800; color: var(--v2-muted); }
.tp-hero-v { font-size: 34px; font-weight: 900; line-height: 1.15; margin-top: 4px; }
.tp-hero-v small { font-size: 14px; font-weight: 800; color: var(--v2-muted); }
.tp-hero-sub { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; font-size: 13px; font-weight: 800; color: var(--v2-muted); margin-top: 4px; }
.tp-hero-chart { position: relative; height: 150px; min-width: 0; }
.tp-groups { display: grid; gap: 12px; }
.tp-groups .tp-card { box-shadow: none; background: var(--v2-raised); }
.tp-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--v2-border); }
.tp-row:last-child { border-bottom: 0; }
.tp-l { display: flex; flex-direction: column; font-size: 13px; font-weight: 700; min-width: 0; }
.tp-l small { font-size: 12px; font-weight: 600; color: var(--v2-muted); }
.tp-v { font-size: 15px; font-weight: 900; text-align: end; }
.tp-wl { display: flex; height: 8px; border-radius: 999px; overflow: hidden; margin: 2px 0 8px; background: var(--v2-border); }
.tp-wl .g { background: var(--v2-gain); } .tp-wl .r { background: var(--v2-loss); opacity: .75; }
.tp-navbar { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 12px; }
.tp-nav-t { font-size: 17px; font-weight: 900; min-width: 120px; text-align: center; }
.tp-cal { display: grid; gap: 8px; }
.tp-cal-m { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tp-cal-w { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tp-cal-d { grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; }
.tp-dow { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; margin-bottom: 4px; text-align: center; font-size: 11px; font-weight: 800; color: var(--v2-muted); }
.tp-tile { display: flex; flex-direction: column; justify-content: space-between; gap: 6px; min-height: 84px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--v2-border); background: var(--v2-surface); text-align: start; font-size: 14px; }
.tp-tile.empty, .tp-tile.blank { opacity: .55; background: transparent; }
.tp-tile.blank { border: 0; }
.tp-tile.gain { background: color-mix(in srgb, var(--v2-gain) 11%, var(--v2-surface)); border-color: color-mix(in srgb, var(--v2-gain) 45%, transparent); }
.tp-tile.loss { background: color-mix(in srgb, var(--v2-loss) 10%, var(--v2-surface)); border-color: color-mix(in srgb, var(--v2-loss) 45%, transparent); }
.tp-tile.gain strong { color: var(--v2-gain); } .tp-tile.loss strong { color: var(--v2-loss); }
.tp-tile strong { font-size: 14px; font-weight: 900; }
.tp-tl { font-size: 12px; font-weight: 800; color: var(--v2-muted); }
.tp-tn { font-size: 12px; font-weight: 700; color: var(--v2-muted); }
.tp-day { min-height: 62px; padding: 6px 7px; gap: 2px; }
.tp-day strong { font-size: 11px; } .tp-day .tp-tn { font-size: 11px; }
.tp-detail { margin-top: 14px; padding: 12px 14px; border-radius: 12px; background: var(--v2-raised); border: 1px solid var(--v2-border); }
.tp-detail-h { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.tp-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.tp-table th, .tp-table td { padding: 10px 12px; text-align: start; white-space: nowrap; border-bottom: 1px solid var(--v2-border); }
.tp-table th { font-size: 12px; font-weight: 800; color: var(--v2-muted); background: var(--v2-raised); }
.tp-table th button { font-weight: 800; color: inherit; }
.tp-sym { font-weight: 900; } .tp-sym small { display: block; font-size: 11px; font-weight: 600; color: var(--v2-muted); max-width: 16ch; overflow: hidden; text-overflow: ellipsis; }
.tp-bars { position: relative; height: calc(var(--rows, 4) * 38px + 40px); min-height: 180px; }
.tp-note { font-size: 13px; font-weight: 700; color: var(--v2-muted); padding: 12px 0; }
.tp-defs { padding: 12px 16px; border-radius: var(--v2-radius-card); border: 1px solid var(--v2-border); font-size: 13px; color: var(--v2-muted); }
.tp-defs summary { font-weight: 800; cursor: pointer; color: inherit; }
.tp-defs ul { margin-top: 10px; display: grid; gap: 8px; list-style: disc; padding-inline-start: 20px; line-height: 1.7; }
.tp-empty { padding: 40px 16px; text-align: center; display: grid; gap: 10px; justify-items: center; }
.tp-empty p { max-width: 46ch; color: var(--v2-muted); font-weight: 600; line-height: 1.7; }
@media (min-width: 640px) {
    .tp-cal-m { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .tp-cal-w { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .tp-day { min-height: 74px; } .tp-day strong { font-size: 12px; }
}
@media (min-width: 1024px) {
    .tp-card { padding: 20px; }
    .tp-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); align-items: center; }
    .tp-groups { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .tp-cal-w { grid-template-columns: repeat(8, minmax(0, 1fr)); }
    .tp-hero-chart { height: 170px; }
}

/* ===== بطاقات الصفوف (.v2-row): العنوان بجانب الأيقونة والحالة، والوصف بعرض البطاقة كله =====
   كانت الأيقونة والوصف وشارة الحالة في صف أفقي واحد، فعلى بطاقات ثلاثية الأعمدة يُحشَر الوصف في عمود ضيق (كلمة في كل سطر).
   الآن: صف علوي (أيقونة · عنوان · حالة/سهم) وتحته الوصف ممتدًا على العرض كله. */
.v2-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "ico ttl chip" "dsc dsc dsc"; align-items: center; column-gap: 10px; row-gap: 6px; align-content: start; }
.v2-row-ico { grid-area: ico; }
.v2-row-txt { display: contents; }
.v2-row-txt b { grid-area: ttl; line-height: 1.35; }
.v2-row-txt small { grid-area: dsc; line-height: 1.6; font-size: 12px; }
.v2-row > :not(.v2-row-ico):not(.v2-row-txt) { grid-area: chip; justify-self: end; }
/* الإعدادات: شبكات البطاقات حتى عمودين فقط (ثلاثة أعمدة تُنتج بطاقات بعرض ~150px يلتفّ فيها العنوان والوصف سطرًا بعد سطر) */
#settings-tab .grid.sm\:grid-cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 479px) { #settings-tab .grid.sm\:grid-cols-3, #settings-tab .grid.sm\:grid-cols-2 { grid-template-columns: minmax(0, 1fr); } }

/* ===== بطاقات داخل بطاقات: الأسطح المظلّلة داخل اللوحة «آبار» لونية بلا حد ثانٍ (العمق لمستوى اللوحة وحده) =====
   التنبيهات الملوّنة (كهرمان/وردي) تبقى بحدّها لأنها رسائل لا مربعات أرقام. */
.glass-panel div.rounded-xl.border[class*="bg-slate-"], .glass-panel div.rounded-2xl.border[class*="bg-slate-"] { border-color: transparent; }

/* تقويم الأداء على الجوال: 7 أعمدة يجب ألا تقل الخلية عن 44px — الشبكة تمتد لحافة البطاقة وفواصلها 2px */
@media (max-width: 639px) {
    .tp-cal-d, .tp-dow { margin-inline: -10px; gap: 2px; }
    .tp-day { min-height: 56px; padding: 5px 4px; }
    .tp-day .tp-tl { font-size: 11px; }
}

/* ===== تباين الثيم الفاتح (WCAG AA): ألوان النصوص الملوّنة في Tailwind (500/600) تفشل على الأبيض والأسطح الفاتحة (2–4.4:1).
   الثيم الداكن نظيف (فحص حيّ على 16 صفحة)، فالتعديل هنا للفاتح فقط. الدرجات الأغمق تبقى في عائلة اللون نفسها. ===== */
html:not(.dark) .text-sky-500, html:not(.dark) .text-sky-600 { color: #0369a1; }
html:not(.dark) .text-emerald-500, html:not(.dark) .text-emerald-600 { color: #047857; }
html:not(.dark) .text-rose-500, html:not(.dark) .text-rose-600 { color: #be123c; }
html:not(.dark) .text-amber-500, html:not(.dark) .text-amber-600, html:not(.dark) .text-amber-600\/80 { color: #92400e; }
html:not(.dark) .text-teal-500, html:not(.dark) .text-teal-600 { color: #0f766e; }
html:not(.dark) .text-violet-500, html:not(.dark) .text-violet-600 { color: #6d28d9; }
html:not(.dark) .text-slate-400 { color: var(--v2-muted); }
html:not(.dark) .text-slate-500 { color: #50607a; }

/* ===== التهيئة: بطاقة «ابدأ في 3 خطوات» ===== */
.onb-step details > summary { list-style: none; }
.onb-step details > summary::-webkit-details-marker { display: none; }
.onb-chev { transition: transform .2s ease; font-size: 11px; }
.onb-step details[open] .onb-chev { transform: rotate(180deg); }
/* أول استخدام (بيانات تجريبية، لا خطوة منجزة): البطاقة تلي رقم المحفظة مباشرة على الجوال بدل أن تُدفن تحت الرسوم */
#onb-card.onb-first { order: 2; }
.v2-empty p { max-width: 42ch; margin-inline: auto; font-size: 13px; font-weight: 600; color: var(--v2-muted); line-height: 1.7; margin-bottom: 12px; }

/* ===== شاشة الافتتاح (التطبيق المثبَّت فقط) =====
   شاشة النظام تعرض أيقونة ثابتة ولا يمكن تحريكها؛ فهذه الطبقة تبدأ بنفس لونها وتكمل الحركة: الوعاء يُرسم، الشمعة تصعد، النقطة تهبط،
   ثم تتلاشى (CSS فقط، بلا سكربت). في المتصفح العادي لا تظهر. */
.sb-splash { display: none; }
@media (display-mode: standalone), (display-mode: fullscreen), (display-mode: minimal-ui) {
    .sb-splash { position: fixed; inset: 0; z-index: 100000; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px;
        background: #0f172a; animation: sp-out .45s ease 1.5s both; }
    .sb-splash-logo { border-radius: 30px; box-shadow: 0 18px 48px rgba(0,0,0,.45); animation: sp-pop .6s cubic-bezier(.16,1,.3,1) both; }
    .sb-splash-name { color: #F8FAFC; font-weight: 900; font-size: 22px; letter-spacing: .02em; animation: sp-fade .5s ease .9s both; }
    .sp-bowl { stroke-dasharray: 1; stroke-dashoffset: 1; animation: sp-draw .7s cubic-bezier(.4,0,.2,1) .15s forwards; }
    .sp-candle { transform-box: fill-box; transform-origin: bottom; animation: sb-rise .55s cubic-bezier(.2,.9,.3,1) .7s both; }
    .sp-dot { transform-box: fill-box; transform-origin: center; animation: sb-drop .6s cubic-bezier(.16,1,.3,1) .45s both; }
}
@keyframes sp-draw { to { stroke-dashoffset: 0; } }
@keyframes sp-pop { from { transform: scale(.82); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes sp-fade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@keyframes sp-out { to { opacity: 0; visibility: hidden; pointer-events: none; } }

/* =====================================================================
   دفتر الأفق (Horizon Ledger) — الهوية البصرية الحالية. تعلو كل ما سبق.
   ورقة دافئة بدل الرمادي البارد، حبر كحلي، لون فعل واحد (sky)، الأخضر/الأحمر للمال فقط، البنفسجي للسوق الافتراضي.
   الهدوء بالمسافة والترتيب: سطح واحد لكل غرض، بلا بطاقات متداخلة، ظل ناعم واحد بدل أربع طبقات.
   ===================================================================== */
:root {
    --v2-bg: #F4F1EA; --v2-surface: #FFFFFF; --v2-raised: #EFEBE2; --v2-border: rgba(58, 48, 28, .12);
    --v2-muted: #5B6577; --v2-gain: #0B7A55; --v2-radius-card: 22px; --v2-radius-btn: 14px;
    --v2-ink: #0D1626;
    --elev-1: 0 1px 2px rgba(13, 22, 38, .06), 0 10px 26px -14px rgba(13, 22, 38, .16);
    --elev-2: 0 2px 4px rgba(13, 22, 38, .08), 0 16px 32px -14px rgba(13, 22, 38, .22);
    --elev-3: 0 6px 14px rgba(13, 22, 38, .10), 0 30px 60px -20px rgba(13, 22, 38, .34);
    --elev-in: none; --elev-sheen: none;
}
.dark {
    --v2-bg: #0A101C; --v2-surface: #111A2B; --v2-raised: #17223A; --v2-border: rgba(255, 255, 255, .08);
    --v2-muted: #94A0B4; --v2-gain: #4FD3A0; --v2-loss: #FF8A80; --v2-ink: #EEF2F8;
    --elev-1: 0 1px 0 rgba(255, 255, 255, .03) inset, 0 12px 30px -16px rgba(0, 0, 0, .65);
    --elev-2: 0 1px 0 rgba(255, 255, 255, .05) inset, 0 18px 36px -16px rgba(0, 0, 0, .75);
    --elev-3: 0 8px 16px rgba(0, 0, 0, .5), 0 34px 70px -22px rgba(0, 0, 0, .8);
}
.glass-panel, .paper-card { background-image: none !important; }
html:not(.dark) .bg-slate-50 { background-color: var(--v2-bg); }
html:not(.dark) .bg-slate-100, html:not(.dark) .bg-slate-200 { background-color: var(--v2-raised); }
html:not(.dark) .bg-white { background-color: var(--v2-surface); }
html:not(.dark) .border-slate-200, html:not(.dark) .border-slate-300 { border-color: var(--v2-border); }
html:not(.dark) .divide-slate-200 > * + * { border-color: var(--v2-border); }
html:not(.dark) header { background-color: color-mix(in srgb, var(--v2-bg) 92%, transparent) !important; border-color: var(--v2-border) !important; }
html.dark header { background-color: color-mix(in srgb, var(--v2-bg) 94%, transparent) !important; }
body { background-image: none; }

/* الأقسام: كبسولة مقسّمة بدل خط سفلي */
.v2-nav { background: color-mix(in srgb, var(--v2-bg) 96%, transparent); backdrop-filter: none; -webkit-backdrop-filter: none; padding-top: 6px; }
.v2-sec-row { background: var(--v2-raised); border: 1px solid var(--v2-border); border-radius: 999px; padding: 4px; gap: 2px; width: max-content; max-width: 100%; overflow-x: auto; scrollbar-width: none; }
.v2-sec-btn { min-height: 40px; border-radius: 999px; border-bottom: 0 !important; padding: 0 16px; transition: background-color .25s ease, color .25s ease, box-shadow .25s ease; }
.v2-sec-btn.active { background: var(--v2-surface); color: var(--v2-primary); box-shadow: var(--elev-1); border-radius: 999px; }
.v2-sec-btn.active i { animation: hz-pop .45s cubic-bezier(.2, .9, .3, 1); }
@keyframes hz-pop { from { transform: scale(.6); } to { transform: none; } }
/* التبويبات الفرعية: نص بخط سفلي ينزلق، لا أقراص ملونة */
.v2-subtabs { gap: 4px; padding: 10px 2px 0; border-bottom: 1px solid var(--v2-border); }
.v2-chip { background: transparent; border: 0; border-radius: 0; min-height: 44px; padding: 0 12px; position: relative; color: var(--v2-muted); }
.v2-chip::after { content: ""; position: absolute; inset-inline: 10px; bottom: -1px; height: 3px; border-radius: 3px 3px 0 0; background: var(--v2-primary); transform: scaleX(0); transition: transform .3s cubic-bezier(.16, 1, .3, 1); }
.v2-chip.active { background: transparent; border: 0; color: var(--v2-primary); }
.v2-chip.active::after { transform: scaleX(1); }
/* شريط الجوال: يطفو بدل أن يلتصق بالحافة */
#mobile-action-bar { inset-inline: 10px; bottom: calc(10px + env(safe-area-inset-bottom, 0px)); border: 1px solid var(--v2-border) !important; border-radius: 24px; background: var(--v2-surface) !important; box-shadow: var(--elev-2); padding-bottom: 0; }
.dark #mobile-action-bar { box-shadow: var(--elev-2); }
#mobile-action-bar .grid { padding-bottom: 4px; }
.mab-btn.active { color: var(--v2-primary) !important; background: color-mix(in srgb, var(--v2-primary) 10%, transparent); border-radius: 18px; }
.mab-btn.active::after { display: none; }
@media (max-width: 767px) { #main-content { padding-bottom: 112px; } }

/* بطاقة = «ورقة» ذات مسافة أوسع */
.glass-panel { border-radius: var(--v2-radius-card) !important; }
.glass-panel .glass-panel, .glass-panel .v2-tile { border-radius: 16px !important; }

/* أزرار ومدخلات */
.v2-btn { border-radius: var(--v2-radius-btn); transition: transform .15s ease, filter .2s ease, box-shadow .2s ease; }
.v2-btn:active { transform: scale(.97); }
input:not([type=checkbox]):not([type=radio]), select, textarea { border-radius: 14px !important; }

/* سمة الأفق للأرقام الكبرى */
.v2-num, .tabnum { font-variant-numeric: tabular-nums lining-nums; }

/* ===== مكوّنات الأفق (horizon.js) ===== */
.v2-link { color: var(--v2-primary); }
.ha-alloc { order: 4; }
.ha-hero { padding: 26px 24px 20px !important; }
#metric-total-val { font-size: clamp(36px, 9vw, 58px); letter-spacing: -.015em; line-height: 1.05; font-variant-numeric: tabular-nums lining-nums; }
.hz-hero-chart { margin-inline: -24px; padding-inline: 24px; }
.hz-chart-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 6px; }
.hz-ranges { display: inline-flex; gap: 2px; background: var(--v2-raised); border: 1px solid var(--v2-border); border-radius: 999px; padding: 3px; }
.hz-range { min-height: 32px; padding: 0 12px; border-radius: 999px; font-size: 12px; font-weight: 800; color: var(--v2-muted); transition: background-color .2s ease, color .2s ease; }
.hz-range[aria-pressed="true"] { background: var(--v2-ink); color: var(--v2-bg); }
.hz-chg { display: inline-flex; align-items: center; gap: 6px; border-radius: 999px; padding: 5px 12px; font-size: 12px; font-weight: 900; font-variant-numeric: tabular-nums; }
.hz-chg.up { color: var(--v2-gain); background: color-mix(in srgb, var(--v2-gain) 13%, transparent); }
.hz-chg.dn { color: var(--v2-loss); background: color-mix(in srgb, var(--v2-loss) 13%, transparent); }
.hz-chart { position: relative; height: 150px; margin-inline: -24px; direction: ltr; touch-action: pan-y; }
.hz-chart svg { width: 100%; height: 100%; display: block; overflow: visible; }
.hz-line { fill: none; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 1; animation: hz-draw 1.4s cubic-bezier(.4, 0, .2, 1) .15s forwards; }
.hz-area { opacity: 0; animation: hz-fadein .9s ease 1s forwards; }
.hz-base { stroke: var(--v2-border); stroke-width: 1; vector-effect: non-scaling-stroke; }
.hz-xh { stroke: var(--v2-muted); stroke-dasharray: 3 4; opacity: 0; transition: opacity .15s; vector-effect: non-scaling-stroke; }
.hz-dot { fill: var(--v2-surface); stroke-width: 3; opacity: 0; transition: opacity .15s; vector-effect: non-scaling-stroke; }
.hz-hover .hz-xh, .hz-hover .hz-dot { opacity: 1; }
.hz-tip { position: absolute; top: -6px; transform: translateX(-50%); background: var(--v2-ink); color: var(--v2-bg); border-radius: 10px; padding: 5px 10px; font-size: 12px; font-weight: 800; white-space: nowrap; pointer-events: none; opacity: 0; transition: opacity .15s; z-index: 2; }
.hz-hover .hz-tip { opacity: 1; }
.hz-axis { display: flex; justify-content: space-between; font-size: 11px; font-weight: 700; color: var(--v2-muted); margin-top: 2px; }
.hz-note { font-size: 12.5px; font-weight: 700; color: var(--v2-muted); line-height: 1.8; padding: 10px 0; }
@keyframes hz-draw { to { stroke-dashoffset: 0; } }
@keyframes hz-drawp { to { stroke-dashoffset: calc(1 - var(--p)); } }
@keyframes hz-fadein { to { opacity: 1; } }
@keyframes hz-grow { from { transform: scaleX(0); } to { transform: none; } }
@keyframes hz-up { from { transform: scaleY(.05); opacity: 0; } to { transform: none; opacity: 1; } }

/* شريط الجلسة */
.hz-session { padding-top: 14px; border-top: 1px solid var(--v2-border); }
.hz-sess-row { display: flex; justify-content: space-between; font-size: 12px; font-weight: 800; margin-bottom: 8px; }
.hz-sess-lbl { color: var(--v2-ink); } .hz-sess-left { color: var(--v2-muted); }
.hz-track { height: 8px; border-radius: 6px; background: var(--v2-raised); border: 1px solid var(--v2-border); overflow: hidden; }
.hz-track i { display: block; height: 100%; border-radius: 6px; background: var(--v2-primary); transform-origin: right; animation: hz-grow 1.2s cubic-bezier(.16, 1, .3, 1) .3s both; }
.hz-session[data-state="open"] .hz-track i { background: var(--v2-gain); }
.hz-session[data-state="closed"] .hz-track i { background: var(--v2-muted); opacity: .55; }
.hz-ticks { display: flex; justify-content: space-between; font-size: 11px; font-weight: 700; color: var(--v2-muted); margin-top: 6px; }

/* شريط التوزيع */
.hz-alloc { display: flex; height: 14px; gap: 3px; border-radius: 8px; overflow: hidden; }
.hz-alloc i { display: block; height: 100%; border-radius: 4px; transform-origin: right; animation: hz-grow 1s cubic-bezier(.16, 1, .3, 1) calc(.2s + var(--k) * 80ms) both; transition: opacity .2s ease, transform .2s ease; }
.hz-alloc:hover i { opacity: .35; } .hz-alloc i:hover { opacity: 1; transform: scaleY(1.5); }
.hz-legend { display: flex; flex-wrap: wrap; gap: 6px 16px; margin-top: 12px; font-size: 12px; font-weight: 700; color: var(--v2-muted); list-style: none; padding: 0; }
.hz-legend b { display: inline-block; width: 9px; height: 9px; border-radius: 3px; margin-inline-end: 6px; }
.hz-n { font-variant-numeric: tabular-nums; }

/* الحلقة والأعمدة */
.hz-ring { width: 128px; height: 128px; position: relative; flex: 0 0 auto; }
.hz-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.hz-ring circle { fill: none; stroke-width: 12; stroke-linecap: round; }
.hz-ring .bg { stroke: var(--v2-raised); }
.hz-ring .fg { stroke: var(--v2-gain); stroke-dasharray: 1; stroke-dashoffset: 1; animation: hz-drawp 1.3s cubic-bezier(.16, 1, .3, 1) .3s forwards; }
.hz-ring .fg.dn { stroke: var(--v2-loss); } .hz-ring .fg.pr { stroke: var(--v2-primary); }
.hz-ring .c { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; font-weight: 900; font-size: 24px; line-height: 1.1; }
.hz-ring .c small { display: block; font-size: 11px; font-weight: 800; color: var(--v2-muted); }
.hz-bars { display: flex; align-items: flex-end; gap: 8px; height: 130px; }
.hz-bars > div { flex: 1; min-width: 0; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 6px; font-size: 10px; font-weight: 800; color: var(--v2-muted); }
.hz-bars i { display: block; width: 100%; max-width: 38px; border-radius: 8px 8px 3px 3px; transform-origin: bottom; animation: hz-up .6s cubic-bezier(.16, 1, .3, 1) calc(.2s + var(--k) * 60ms) both; }
.hz-bars i.w { background: var(--v2-gain); } .hz-bars i.x { background: var(--v2-loss); }

/* دفتر السهم */
.hz-sec { margin-top: 18px; } .hz-sec h3 { font-size: 14px; font-weight: 900; margin-bottom: 6px; display: flex; align-items: center; gap: 8px; }
.hz-sec h3 em { font-style: normal; font-size: 11px; font-weight: 800; color: var(--v2-muted); background: var(--v2-raised); border-radius: 999px; padding: 1px 9px; }
.hz-list { list-style: none; padding: 0; margin: 0; }
.hz-list li { display: flex; align-items: center; gap: 12px; padding: 11px 0; border-top: 1px solid var(--v2-border); }
.hz-list li:first-child { border-top: 0; }
.hz-ico { width: 34px; height: 34px; border-radius: 12px; background: var(--v2-raised); display: grid; place-items: center; color: var(--v2-primary); font-size: 13px; flex: 0 0 auto; }
.hz-li-t { flex: 1; min-width: 0; } .hz-li-t b { display: block; font-size: 13px; font-weight: 900; } .hz-li-t small { font-size: 12px; font-weight: 700; color: var(--v2-muted); }
.hz-li-v { font-size: 13px; font-weight: 900; text-align: end; font-variant-numeric: tabular-nums; }
.hz-g { color: var(--v2-gain); } .hz-l { color: var(--v2-loss); }
.hz-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 4px; }
.hz-kpis > div { background: var(--v2-raised); border-radius: 16px; padding: 12px; } .hz-kpis small { display: block; font-size: 11px; font-weight: 800; color: var(--v2-muted); } .hz-kpis b { font-size: 15px; font-weight: 900; font-variant-numeric: tabular-nums; }
@media (max-width: 520px) { .hz-kpis { grid-template-columns: 1fr; gap: 8px; } .hz-kpis > div { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 14px; } .hz-hero-chart, .hz-chart { margin-inline: -16px; } .ha-hero { padding: 22px 16px 16px !important; } }

/* ===== صفحة السهم ===== */
#stock-details-modal > div { background: var(--v2-bg) !important; }
.sd-badge { background: var(--v2-ink); color: var(--v2-bg); direction: ltr; }
.sd-price { font-size: 20px; font-weight: 900; line-height: 1.1; }
.sd-day { font-size: 12px; font-weight: 900; margin-top: 2px; }
.sd-tabs { display: flex; gap: 4px; padding: 0 16px; border-bottom: 1px solid var(--v2-border); background: var(--v2-bg); position: sticky; top: 73px; z-index: 9; }
.sd-tab { flex: 1; min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; font-size: 13px; font-weight: 800; color: var(--v2-muted); position: relative; transition: color .2s ease; }
.sd-tab::after { content: ""; position: absolute; inset-inline: 14px; bottom: -1px; height: 3px; border-radius: 3px 3px 0 0; background: var(--v2-primary); transform: scaleX(0); transition: transform .3s cubic-bezier(.16, 1, .3, 1); }
.sd-tab.active { color: var(--v2-primary); } .sd-tab.active::after { transform: scaleX(1); }
@media (min-width: 640px) { .sd-tab { flex: 0 0 auto; padding: 0 22px; } }

.tp-ring { display: flex; justify-content: center; padding: 6px 0 10px; }
.tp-ring + .tp-wl { display: none; }

/* ===== تدقيق: أهداف اللمس 44px، تباين، وتقليل الحركة في الافتتاح ===== */
.hz-range { position: relative; }
.hz-range::before { content: ""; position: absolute; inset: -6px -2px; }          /* منطقة لمس 44px دون تضخيم الكبسولة */
.v2-link { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 767px) {
    #tab-content-area select, #tab-content-area input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
    #tab-content-area button:not(.hz-range):not(.tp-tile) { min-height: 44px; }
    #tab-content-area input[type="range"] { min-height: 44px; }
}
:root { --v2-gain-ink: #08694A; --v2-loss-ink: #B11F1F; }
.dark { --v2-gain-ink: var(--v2-gain); --v2-loss-ink: var(--v2-loss); }
.hz-chg.up { color: var(--v2-gain-ink); } .hz-chg.dn { color: var(--v2-loss-ink); }
.dark .text-slate-500, .dark .dark\:text-slate-500 { color: var(--v2-muted); }
@media (prefers-reduced-motion: reduce) { .sb-splash { animation-delay: .2s !important; } }

/* =====================================================================
   مطابقة التصميم المقترح (docs/archive/design-samples/src/concept.html): الشريط الجانبي، رأس التحية، بطل الرئيسية، عمودا الرئيسية، رأس الصفحات
   ===================================================================== */

/* ---- الشريط الجانبي (ديسكتوب ≥1024): الأقسام عمودية بأيقونة وتسمية، الشعار في الأعلى، التحديث في الأسفل ---- */
@media (min-width: 1024px) {
    body { padding-inline-start: 84px; }
    #hz-rail { position: fixed; inset-block: 0; inset-inline-start: 0; width: 84px; z-index: 36; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 6px; padding: 18px 0; background: var(--v2-bg); border-inline-end: 1px solid var(--v2-border); }
    #hz-rail::before { content: ""; flex: none; width: 44px; height: 44px; margin-bottom: 14px; border-radius: 13px; background: url("icon.svg") center / cover no-repeat; box-shadow: var(--elev-1); }
    #hz-rail .v2-sec-row { flex-direction: column; width: 100%; align-items: center; gap: 6px; background: none; border: 0; border-radius: 0; padding: 0; overflow: visible; }
    #hz-rail .v2-sec-btn { flex-direction: column; justify-content: center; gap: 5px; width: 66px; min-height: 64px; padding: 10px 4px; font-size: 11px; line-height: 1.25; text-align: center; white-space: normal; border-radius: 16px; }
    #hz-rail .v2-sec-btn i { font-size: 20px; }
    #hz-rail .v2-sec-btn.active { background: color-mix(in srgb, var(--v2-primary) 11%, transparent); box-shadow: none; color: var(--v2-primary); }
    #hz-rail > div:last-child { margin-top: auto; flex-direction: column; }
    #hz-rail #price-stamp { display: none; }
    header .sb-logo { display: none; }
}

/* ---- رأس الرئيسية: تاريخ + تحية + شريحة الجلسة ---- */
.hz-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; order: 0; }
.hz-hello small { display: block; font-size: 12px; font-weight: 700; color: var(--v2-muted); }
.hz-greet { display: block; font-size: 22px; font-weight: 900; line-height: 1.3; }
#home-tab > .hz-top { grid-column: 1 / -1; }

/* ---- ترتيب الجوال (عمود واحد) ثم عمودان على الديسكتوب بنسبة 1.7 : 1 ---- */
.ha-hero { order: 1; }
.ha-session-sheet { order: 2; }
#daily-briefing-card { order: 3; }
#weekly-card { order: 4; }
#attention-card { order: 5; }
.ha-alloc { order: 6; }
#movers-card { order: 7; }
.ha-pulse { order: 8; }
#onb-card, #onb-card.onb-first { order: 9; }
#onb-card.onb-first { order: 3; }
.ha-nl { order: 10; }
.ha-ticker { order: 11; }
.ha-market { order: 12; }
.ha-links { order: 13; }
#home-toggles { order: 14; }
@media (min-width: 1024px) {
    #home-tab:not(.hidden) { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 20px; }
    .ha-ticker { order: 20; }
}

/* ---- البطل ---- */
.hz-hero { padding: 26px 24px 20px !important; }
.hz-eyebrow { display: flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 800; color: var(--v2-muted); }
.hz-total { font-size: clamp(36px, 9vw, 56px); font-weight: 900; letter-spacing: -.015em; line-height: 1.05; margin: 6px 0 10px; font-variant-numeric: tabular-nums lining-nums; }
.hz-subline { min-height: 28px; }
.hz-split { font-size: 12px; font-weight: 700; color: var(--v2-muted); margin-top: 8px; }
.hz-split strong { color: var(--v2-ink); font-weight: 800; }
.hz-sep { margin-inline: 4px; }
.hz-hero .hz-hero-chart { margin: 14px -24px 0; padding-inline: 24px; }
.hz-stamp { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; font-size: 11px; font-weight: 700; color: var(--v2-muted); margin-top: 6px; }
.hz-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--v2-border); }
.hz-hero { container-type: inline-size; }
@container (min-width: 620px) { .hz-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.hz-stat-l { display: flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 800; color: var(--v2-muted); }
.hz-pnl-ico { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 7px; background: var(--v2-raised); font-size: 10px; }
.hz-stat-v { font-size: 17px; font-weight: 900; margin-top: 3px; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.hz-stat-s { font-size: 11.5px; font-weight: 700; color: var(--v2-muted); margin-top: 1px; }
@media (max-width: 520px) { .hz-hero { padding: 22px 16px 16px !important; } .hz-hero .hz-hero-chart { margin-inline: -16px; padding-inline: 16px; } }

/* ---- جلسة اليوم: ورقة مستقلة ---- */
.ha-session-sheet .hz-session { border-top: 0; padding-top: 0; }
.hz-sess-lbl { font-size: 15px; font-weight: 900; }
.hz-sess-row { align-items: baseline; margin-bottom: 12px; }

/* ---- الملخص الذكي: ورقة نيلية هادئة ---- */
#daily-briefing-card { background: color-mix(in srgb, var(--v2-ai) 9%, var(--v2-surface)) !important; background-image: none !important; border-color: color-mix(in srgb, var(--v2-ai) 24%, transparent) !important; padding: 20px !important; }

/* ---- رأس الصفحات الداخلية: عنوان كبير + أرقام كبطاقات (بدل بطاقة الرأس) ---- */
#pg-head { background: none; border: 0; box-shadow: none; padding: 2px 0 0; gap: 16px; }
.pg-ico { display: none; }
.pg-crumb { font-size: 12px; font-weight: 700; }
.pg-title { font-size: 24px; }
.pg-kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; overflow: visible; }
@media (min-width: 1024px) { .pg-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.pg-kpi { min-width: 0; padding: 16px; border-radius: 18px; background: var(--v2-surface); border: 1px solid var(--v2-border); box-shadow: var(--elev-1); }
.pg-kpi-v { font-size: 22px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }

/* ===== أسطر الأسهم: سطر هادئ لكل سهم، يتفتّح بالتفاصيل والإجراءات (بدل الجدول وبطاقات الجوال) ===== */
#holdings-cards, #hz-holdings ~ div.overflow-x-auto { display: none !important; }
.hz-hold-sheet { padding: 6px 18px !important; }
.hz-holds { list-style: none; margin: 0; padding: 0; }
.hz-hold { border-top: 1px solid var(--v2-border); } .hz-hold:first-child { border-top: 0; }
.hz-hold-main { display: flex; align-items: center; gap: 12px; width: 100%; padding: 14px 0; text-align: start; min-height: 64px; }
.hz-sym { width: 44px; height: 44px; flex: none; border-radius: 14px; display: grid; place-items: center; background: var(--v2-raised); font-size: 11px; font-weight: 900; letter-spacing: .02em; color: var(--v2-ink); }
.hz-hold-nm { flex: 1; min-width: 0; } .hz-hold-nm b { display: block; font-size: 14px; font-weight: 900; } .hz-hold-nm small { display: block; font-size: 12px; font-weight: 700; color: var(--v2-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hz-chip { font-style: normal; font-size: 10px; font-weight: 800; padding: 1px 7px; border-radius: 999px; background: var(--v2-raised); color: var(--v2-muted); margin-inline-start: 6px; }
.hz-spark { width: 68px; height: 28px; flex: none; direction: ltr; } .hz-spark path { fill: none; stroke-width: 2; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; animation: hz-draw 1.1s ease .3s forwards; }
@media (max-width: 460px) { .hz-spark { display: none; } }
.hz-hold-vl { text-align: end; font-size: 14px; font-weight: 900; flex: none; } .hz-hold-vl small { display: block; font-size: 12px; font-weight: 800; }
.hz-chev { font-size: 11px; color: var(--v2-muted); transition: transform .3s ease; } .hz-hold.open .hz-chev { transform: rotate(180deg); }
.hz-det { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .35s cubic-bezier(.16, 1, .3, 1); } .hz-hold.open .hz-det { grid-template-rows: 1fr; }
.hz-det > div { overflow: hidden; min-height: 0; }
.hz-wbar { height: 6px; border-radius: 4px; background: var(--v2-raised); overflow: hidden; margin: 2px 0 14px; } .hz-wbar i { display: block; height: 100%; background: var(--v2-primary); border-radius: 4px; }
.hz-dg { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; margin: 0 0 12px; }
@media (min-width: 640px) { .hz-dg { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.hz-dg dt { font-size: 11px; font-weight: 800; color: var(--v2-muted); } .hz-dg dd { margin: 0; font-size: 14px; font-weight: 900; font-variant-numeric: tabular-nums; } .hz-dg small { font-size: 11px; font-weight: 700; color: var(--v2-muted); }
.hz-lv { display: flex; flex-wrap: wrap; gap: 12px; font-size: 12px; font-weight: 800; margin-bottom: 12px; }
.hz-acts { display: flex; flex-wrap: wrap; gap: 8px; padding-bottom: 16px; }
.hz-danger { color: var(--v2-loss-ink); }

/* ===== السوق الافتراضي: عالم بنفسجي هادئ (شريط «لا أموال حقيقية» + بطل بنفسجي) ===== */
:root { --paper-bg: #ECE6FB; } .dark { --paper-bg: #221A3E; }
#paper-tab { --paper: #6A3FD8; --paper-soft: #ECE6FB; --paper-line: rgba(106, 63, 216, .55); }
.dark #paper-tab { --paper: #B79CFF; --paper-soft: #221A3E; --paper-line: rgba(183, 156, 255, .5); }
.paper-ribbon { background: var(--paper-bg) !important; border-radius: 16px !important; }
.paper-ribbon-badge { background: transparent; color: var(--paper); padding: 0; }
.dark .paper-ribbon-badge { color: var(--paper); }
.paper-card { border-top: 1px solid var(--v2-border); border-radius: var(--v2-radius-card); padding: 20px; }
.paper-hero { background: var(--paper-bg) !important; border-color: color-mix(in srgb, var(--paper) 25%, transparent) !important; }
.paper-total { font-size: clamp(34px, 9vw, 54px); font-weight: 900; color: var(--paper); letter-spacing: -.015em; line-height: 1.05; }
.paper-submit { border-radius: 16px; }

/* ===== المزيد: بلاطات بدل صفوف مزدحمة ===== */
#more-sheet-modal .more-tile, #more-sheet-modal .v2-row { background: var(--v2-surface); border: 1px solid var(--v2-border); border-radius: 18px; box-shadow: var(--elev-1); transition: transform .2s ease, border-color .2s ease; }
#more-sheet-modal .more-tile:hover, #more-sheet-modal .v2-row:hover { transform: translateY(-2px); border-color: var(--v2-primary); }
#more-sheet-modal .more-tile { min-height: 76px; gap: 8px; font-weight: 800; }
#more-sheet-modal > div { background: var(--v2-bg) !important; border-radius: 28px 28px 0 0; }

/* ===== الأداء: ورقة واحدة هادئة ===== */
.tp-card { border-radius: var(--v2-radius-card); }
.tp-month { margin-top: 16px; }
.tp-month .hz-bars { padding: 4px 4px 0; }

/* ===== تعديلات بعد التجربة ===== */
.hz-name-add { margin-inline-start: 10px; font-size: 12px; font-weight: 800; color: var(--v2-primary); text-decoration: underline; text-underline-offset: 3px; min-height: 32px; }

/* الأكثر حركة: كل الأسهم في شبكة، بلا تمرير جانبي */
.v2-movers { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(138px, 1fr)); gap: 10px; overflow: visible !important; scroll-snap-type: none; }
.v2-movers > .v2-mover { width: auto !important; min-width: 0; flex: none; }

/* شريط الأسعار: شريط هادئ داخل بطاقة البطل */

/* توصيات الأسهم: كل توصية بطاقة بثلاثة أسطر (الهوية والأرقام / الحكم والإجراء / السبب) */
#signals-table-wrapper { border: 0 !important; overflow: visible !important; border-radius: 0; }
#signals-table-wrapper table, #signals-table-wrapper tbody { display: block; width: 100%; }
#signals-table-wrapper thead { display: none; }
#signals-table-body { display: block; }
#signals-table-body > tr { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 14px 16px; padding: 18px; margin-bottom: 12px; background: var(--v2-surface); border: 1px solid var(--v2-border); border-radius: 18px; box-shadow: var(--elev-1); align-items: start; }
#signals-table-body > tr > td { padding: 0 !important; border: 0 !important; min-width: 0; max-width: none !important; text-align: start; }
.sg-l { display: block; font-size: 11px; font-weight: 800; color: var(--v2-muted); margin-bottom: 4px; white-space: normal; }
#signals-table-body td:nth-child(1) { grid-column: span 4; }
#signals-table-body td:nth-child(2), #signals-table-body td:nth-child(3), #signals-table-body td:nth-child(4), #signals-table-body td:nth-child(5) { grid-column: span 2; }
#signals-table-body td:nth-child(6) { grid-column: span 2; }
#signals-table-body td:nth-child(7) { grid-column: span 3; }
#signals-table-body td:nth-child(8) { grid-column: span 2; }
#signals-table-body td:nth-child(9) { grid-column: span 3; }
#signals-table-body td:nth-child(11) { grid-row: 2; grid-column: 11 / span 2; justify-self: end; align-self: end; }
#signals-table-body td:nth-child(10) { grid-column: 1 / -1; grid-row: 3; font-size: 12px !important; line-height: 1.8; padding-top: 12px !important; border-top: 1px solid var(--v2-border) !important; }
@media (max-width: 900px) {
    #signals-table-body > tr { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #signals-table-body td:nth-child(n) { grid-column: span 1; grid-row: auto; justify-self: stretch; }
    #signals-table-body td:nth-child(1), #signals-table-body td:nth-child(10), #signals-table-body td:nth-child(11) { grid-column: 1 / -1; }
    #signals-table-body td:nth-child(11) .flex { justify-content: flex-start; }
}

/* ===== توصيات الأسهم: بطاقات تُطوى إلى سطر بيانات السهم ===== */
#signals-table-body > tr { position: relative; padding-inline-end: 62px; }
.sg-tog { position: absolute; inset-block-start: 14px; inset-inline-end: 14px; width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--v2-raised); color: var(--v2-muted); border: 1px solid var(--v2-border); transition: background-color .2s ease, color .2s ease; }
.sg-tog:hover { color: var(--v2-primary); }
.sg-tog i { transition: transform .3s cubic-bezier(.16, 1, .3, 1); font-size: 13px; }
#signals-table-body > tr.sg-open .sg-tog { background: color-mix(in srgb, var(--v2-primary) 12%, transparent); color: var(--v2-primary); }
#signals-table-body > tr.sg-open .sg-tog i { transform: rotate(180deg); }
#signals-table-body > tr:not(.sg-open) > td:nth-child(n+6) { display: none; }
#signals-table-body > tr.sg-open > td:nth-child(n+6) { animation: sg-in .35s cubic-bezier(.16, 1, .3, 1) both; }
@keyframes sg-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
#signals-table-body > tr:not(.sg-open) { row-gap: 0; }

/* شريط الأسعار الحي: ورقة رفيعة بين البطل وجلسة اليوم */
.ha-ticker { order: 2; border-radius: var(--v2-radius-card) !important; }
.ha-session-sheet { order: 2; }
@media (min-width: 1024px) { .ha-ticker { order: 2; grid-column: auto; } }

/* ===== إلهام لوحة التحكم (محاور المنحنى، قائمة الأكثر حركة، تنبيهات بأيقونات) — بهويتنا ===== */
.hz-chart { height: 190px; }
.hz-grid { stroke: var(--v2-border); stroke-width: 1; stroke-dasharray: 2 5; vector-effect: non-scaling-stroke; }
.hz-yaxis { position: absolute; inset: 0; pointer-events: none; }
.hz-yaxis span { position: absolute; inset-inline-start: 10px; transform: translateY(-115%); font-size: 10.5px; font-weight: 800; color: var(--v2-muted); font-variant-numeric: tabular-nums; background: color-mix(in srgb, var(--v2-surface) 80%, transparent); padding: 0 4px; border-radius: 4px; }
.hz-axis { padding-inline: 10px; margin-top: 4px; }

.hz-mv { list-style: none; margin: 0; padding: 0; }
.hz-mv li { border-top: 1px solid var(--v2-border); } .hz-mv li:first-child { border-top: 0; }
.hz-mv-row { display: flex; align-items: center; gap: 10px; width: 100%; padding: 11px 0; text-align: start; min-height: 56px; border-radius: 12px; transition: background-color .2s ease; }
.hz-mv-row:hover { background: var(--v2-raised); }
.hz-mv-row .hz-sym { width: 38px; height: 38px; border-radius: 12px; font-size: 10px; }
.hz-mv-nm { flex: 1; min-width: 0; } .hz-mv-nm b { display: block; font-size: 13px; font-weight: 900; } .hz-mv-nm small { display: block; font-size: 11.5px; font-weight: 700; color: var(--v2-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hz-mv-row .hz-spark { width: 52px; }
.hz-mv-v { text-align: end; flex: none; } .hz-mv-v b { display: block; font-size: 13px; font-weight: 900; } .hz-mv-v small { display: block; font-size: 10.5px; font-weight: 800; }

#attention-card ul { display: block; margin: 0; padding: 0; list-style: none; }
#attention-card ul > li { background: none !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important; border-top: 1px solid var(--v2-border) !important; padding: 12px 0 !important; gap: 12px !important; }
#attention-card ul > li:first-child { border-top: 0 !important; }
#attention-card ul > li > i:first-child { flex: none; width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; font-size: 15px; background: color-mix(in srgb, currentColor 13%, transparent); }

/* ===== تدقيق 3: تباين، أهداف لمس، وحجم الخط الثانوي ===== */
/* أزرار المال بخلفية صلبة ونص أبيض: درجة 700 تحقق ≥ 4.5:1 (كانت 600 = 3.8:1) */
:root { --v2-buy: #047857; --v2-sell: #BE123C; }
.dark { --v2-buy: #047857; --v2-sell: #BE123C; }
.bg-emerald-500, .bg-emerald-600 { background-color: var(--v2-buy); }
.bg-rose-500, .bg-rose-600 { background-color: var(--v2-sell); }
/* الربح داخل بطل السوق الافتراضي (خلفية بنفسجية فاتحة) */
.paper-hero .v2-gain, .paper-hero [class*="text-emerald"] { color: var(--v2-gain-ink); }
.paper-hero .v2-loss, .paper-hero [class*="text-rose"] { color: var(--v2-loss-ink); }
/* نصوص ثانوية على الأسطح المرفوعة: لون الحبر الثانوي الموحّد (≥ 4.9:1 على الورق والمرفوع) */
html:not(.dark) .text-slate-500 { color: var(--v2-muted); }
html:not(.dark) .text-indigo-500 { color: #4338CA; }
html:not(.dark) .text-violet-500, html:not(.dark) .text-fuchsia-500 { color: #6D28D9; }
/* شارة «متصل» بمتغيرات النظام */
.sb-pill2.hidden { display:none; }
.sb-profile .sb-wells .v { font-size:12.5px; }
#sync-badge { color: var(--v2-gain-ink) !important; background: color-mix(in srgb, var(--v2-gain) 10%, transparent) !important; border-color: color-mix(in srgb, var(--v2-gain) 28%, transparent) !important; }
#sync-badge i { color: var(--v2-gain); }
/* لا توهّج ملوّن على الداكن: ظل محايد بدل ظلال Tailwind الملونة */
.dark [class*="shadow-sky-600/"], .dark [class*="shadow-emerald-600/"], .dark [class*="shadow-amber-500/"], .dark [class*="shadow-indigo-600/"], .dark [class*="shadow-rose-600/"], .dark [class*="shadow-teal-600/"], .dark [class*="shadow-violet-600/"], .dark #fab-add { box-shadow: var(--elev-2) !important; }

/* هدف لمس 44px لرابط «أضف اسمك» */
.hz-name-add { display: inline-flex; align-items: center; min-height: 44px; padding-inline: 4px; }

/* الخط الثانوي: لا شيء مقروء تحت 11px، والنص الوصفي 12px */
.text-\[9px\] { font-size: 10.5px; }
.text-\[10px\] { font-size: 12px; }
.text-\[11px\] { font-size: 12px; }
.hz-stat-l, .hz-stat-s, .hz-dg dt, .hz-dg small, .hz-mv-nm small, .hz-kpis small, .hz-legend, .hz-ticks, .hz-axis, .sg-l, .hz-hold-nm small, .hz-li-t small, .hz-sess-left { font-size: 12px; }
.hz-mv-v small, .hz-yaxis span, .hz-chip { font-size: 11px; }
/* تكملة التدقيق: أخضر/أحمر المال بدرجة الحبر على الأسطح الفاتحة، ولا نص تحت 11px */
.hz-g { color: var(--v2-gain-ink); } .hz-l { color: var(--v2-loss-ink); }
.text-\[9px\] { font-size: 11px; }
.hz-mv-row .hz-sym { font-size: 11px; }
.v2-ring small { font-size: 11px !important; }

/* =====================================================================
   الرئيسية = لوحة «نظرة عامة» من Horizon Ledger كما صُممت (sb.css منقول ومحصور في .sb):
   الشريط الأفقي، ثم الأقسام، ثم خمس بطاقات. الاتجاهات منطقية (RTL/LTR)، والرسوم LTR داخل SVG.
   ===================================================================== */
#home-tab:not(.hidden) { display: block !important; }

.sb {
  --sb-canvas:#ECE8E0; --sb-sheet:#F4F1EA; --sb-sunk:#EAE5DA; --sb-sunk2:#E6E1D6; --sb-line:rgba(58,48,28,.08);
  --sb-ink:#0D1626; --sb-ink2:#3A4658; --sb-muted:#525C6E;
  --sb-sky:#0369A1; --sb-sky-tint:color-mix(in srgb,#0369A1 10%,transparent);
  --sb-gain:#0A6F4E; --sb-gain-bg:#DDF1E8; --sb-loss:#C62222; --sb-loss-bg:#F9E2E0;
  --sb-warn:#9A4A07; --sb-brand:#0E2A52;
  --sb-elev1:0 1px 1px rgba(58,48,28,.03),0 8px 24px -16px rgba(58,48,28,.18);
  --sb-elev2:0 2px 3px rgba(58,48,28,.04),0 14px 32px -16px rgba(58,48,28,.24);
  --viz-banks:#0B6BA8; --viz-realestate:#0F766E; --viz-goods:#C98A12; --viz-telecom:#2F6F5E; --viz-tech:#C4437B; --viz-industry:#6B7A90; --viz-cash:#B9B2A0;
  --bd-bg:#F4F1EA; --bd-ink:#0D1626; --bd-ink2:#3A4658; --bd-muted:#5B6577; --bd-line:rgba(58,48,28,.08); --bd-well:#FAF8F3;
  --bd-grid:rgba(58,48,28,.09); --bd-track:#E6E1D6;
  --bd-sky:#0B7A55; --bd-glow:rgba(11,122,85,.35); --bd-gain:#0B7A55; --bd-loss:#C62222;
  font-weight:600; font-size:14px; line-height:1.5; color:var(--sb-ink);
}
.dark .sb {
  --sb-canvas:#0A101C; --sb-sheet:#111A2B; --sb-sunk:#17223A; --sb-sunk2:#1F2B40; --sb-line:rgba(255,255,255,.08);
  --sb-ink:#EEF2F8; --sb-ink2:#C3CCDA; --sb-muted:#94A0B4;
  --sb-sky:#8EC1E0; --sb-sky-tint:color-mix(in srgb,#8EC1E0 12%,transparent);
  --sb-gain:#4FD3A0; --sb-gain-bg:#0E2D25; --sb-loss:#FF8A80; --sb-loss-bg:#341A1C; --sb-warn:#FBBF24;
  --sb-elev1:0 1px 2px rgba(0,0,0,.4),0 12px 30px -14px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.03);
  --sb-elev2:0 2px 4px rgba(0,0,0,.45),0 18px 40px -14px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.03);
  --bd-bg:#111A2B; --bd-ink:#EEF2F8; --bd-ink2:#D5DEEA; --bd-muted:#9FB3CF; --bd-line:rgba(255,255,255,.08); --bd-well:rgba(255,255,255,.06);
  --bd-grid:rgba(255,255,255,.06); --bd-track:rgba(255,255,255,.1);
  --bd-sky:#4FD3A0; --bd-glow:rgba(79,211,160,.55); --bd-gain:#4FD3A0; --bd-loss:#FF8A80;
}
.sb * { box-sizing:border-box; }
.sb .n { font-variant-numeric:tabular-nums lining-nums; unicode-bidi:isolate; direction:ltr; }
.sb .muted { color:var(--sb-muted); }
.sb .gain { color:var(--sb-gain); } .sb .loss { color:var(--sb-loss); }
.sb button { font:inherit; }
.sb button:focus-visible { outline:2px solid var(--sb-sky); outline-offset:2px; }
.sb svg { display:block; overflow:visible; direction:ltr; }
.sb svg text { font-family:inherit; fill:var(--sb-muted); font-size:11px; font-weight:700; }

/* ---------- الشريط ---------- */
.sb-band { background:var(--bd-bg); color:var(--bd-ink); border-radius:24px; position:relative; overflow:hidden; box-shadow:var(--sb-elev1); border:1px solid var(--bd-line); }
.sb-band-top { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; padding:22px 24px 0; align-items:start; }
.sb-brandline { display:flex; align-items:center; gap:10px; margin-bottom:14px; flex-wrap:wrap; }
.sb-mark { width:34px; height:34px; border-radius:11px; background:#0E2A52; border:1px solid var(--bd-line); display:grid; place-items:center; flex:none; }
.sb-brandline .nm { font-weight:900; font-size:14px; }
.sb-pill { display:inline-flex; align-items:center; gap:6px; padding:2px 10px; border-radius:999px; background:var(--bd-well); color:var(--bd-muted); font-size:11px; font-weight:800; }
.sb-pill.hidden { display:none; }
.sb-pill i { width:6px; height:6px; border-radius:50%; background:#FBBF24; display:inline-block; }
.sb-greet { font-size:13px; color:var(--bd-muted); font-weight:700; margin:0; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.sb-total { font-size:clamp(38px,8vw,64px); font-weight:900; line-height:1.02; letter-spacing:-.015em; margin:4px 0 8px; display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; }
.sb-chip { display:inline-flex; align-items:center; gap:4px; padding:3px 10px; border-radius:999px; font-size:12px; font-weight:800; white-space:pre; }
.sb-chip[hidden] { display:none; }
.sb-band .sb-chip.gain { background:color-mix(in srgb,var(--bd-gain) 14%,transparent); color:var(--bd-gain); }
.sb-band .sb-chip.loss { background:color-mix(in srgb,var(--bd-loss) 14%,transparent); color:var(--bd-loss); }
.sb-band-meta { display:flex; flex-wrap:wrap; gap:6px 18px; align-items:center; font-size:12px; color:var(--bd-muted); font-weight:700; }
.sb-band-meta b { color:var(--bd-ink); font-weight:800; }
.sb-take { margin:12px 0 0; color:var(--bd-ink2); font-size:14px; max-width:60ch; }
.sb-take:empty { display:none; }
.sb-band-side { display:grid; grid-template-columns:auto minmax(220px,1fr); grid-template-areas:'ctrl ctrl' 'ring sess'; gap:10px; width:min(100%,440px); align-items:stretch; }
.sb-band-side .sb-band-ctrl { grid-area:ctrl; }
.sb-band-side .sb-ring { grid-area:ring; }
.sb-band-side .sb-session { grid-area:sess; }
.sb-ring { display:flex; align-items:center; gap:12px; background:var(--bd-well); border:1px solid var(--bd-line); border-radius:16px; padding-block:10px; padding-inline:10px 14px; }
.sb-ring svg text { fill:var(--bd-ink); }
.sb-ring .k { font-size:11px; color:var(--bd-muted); font-weight:800; }
.sb-ring .v { font-size:13px; font-weight:900; }
.sb-session { background:var(--bd-well); border:1px solid var(--bd-line); border-radius:16px; padding:10px 14px; min-width:0; display:flex; flex-direction:column; justify-content:center; }
.sb-session .row { display:flex; justify-content:space-between; gap:12px; font-size:11px; font-weight:800; color:var(--bd-muted); }
.sb-session .row b { color:var(--bd-ink); }
.sb-session .track { height:6px; border-radius:99px; background:var(--bd-track); margin:8px 0 4px; position:relative; overflow:hidden; }
.sb-session .track i { position:absolute; inset-block:0; inset-inline-start:0; background:var(--bd-sky); border-radius:99px; }
.sb-session .dot { width:7px; height:7px; border-radius:50%; display:inline-block; margin-inline-end:6px; background:var(--bd-muted); }
.sb-session .dot.live { background:var(--bd-gain); box-shadow:0 0 0 4px var(--bd-glow); }
.sb-band-chart { position:relative; height:200px; margin-top:6px; }
.sb-band-chart svg text { fill:var(--bd-muted); }
.sb-band-chart > .sb-note { padding:72px 24px 0; text-align:center; margin:0; }
.sb-band-ctrl { display:flex; gap:10px; align-items:center; justify-content:space-between; background:var(--bd-well); border:1px solid var(--bd-line); border-radius:16px; padding-block:6px; padding-inline:8px 6px; }
.sb-band-ctrl .lbl2 { font-size:11px; font-weight:800; color:var(--bd-muted); margin-inline-end:auto; }
.sb-band .sb-tabs-s { display:inline-flex; gap:2px; padding:3px; background:var(--bd-bg); border-radius:999px; }
.sb-band .sb-tabs-s button { border:0; background:transparent; color:var(--bd-muted); font-size:11px; font-weight:800; padding:3px 11px; border-radius:999px; cursor:pointer; }
.sb-band .sb-tabs-s button[aria-pressed=true] { background:var(--bd-ink); color:var(--bd-bg); }
.sb-eye { border:1px solid var(--bd-line); background:var(--bd-well); color:var(--bd-ink); border-radius:12px; padding:6px 10px; font-size:11px; font-weight:800; display:inline-flex; gap:6px; align-items:center; cursor:pointer; }
.sb-eye[aria-pressed=true] { background:var(--bd-ink); color:var(--bd-bg); }
@media (max-width: 760px) {
  .sb-band-top { grid-template-columns:minmax(0,1fr); padding:18px 18px 0; }
  .sb-band-side { width:100%; grid-template-columns:auto minmax(0,1fr); }
}

/* ---------- الأقسام ---------- */

/* ---------- البطاقات ---------- */
.sb-bento { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:16px; }
.sb-bento > * { grid-column:span 12; min-width:0; }
.sb-card { background:var(--sb-sheet); border:1px solid var(--sb-line); border-radius:22px; box-shadow:var(--sb-elev1); padding:20px; min-width:0; container-type:inline-size; }
@media (min-width: 900px) { .sb-bento > .c8 { grid-column:span 8; } .sb-bento > .c4 { grid-column:span 4; } }
.sb-ch { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:2px; }
.sb h2 { font-size:15px; font-weight:900; margin:0; letter-spacing:0; }
.sb-note { font-size:12px; color:var(--sb-muted); margin:0 0 14px; }
.sb-seg { display:inline-flex; gap:2px; padding:3px; background:var(--sb-sunk); border-radius:999px; }
.sb-seg button { border:0; background:transparent; color:var(--sb-muted); font-size:11px; font-weight:800; padding:3px 11px; border-radius:999px; cursor:pointer; }
.sb-seg button[aria-pressed=true] { background:var(--sb-sheet); color:var(--sb-sky); box-shadow:var(--sb-elev1); }
.sb-box { position:relative; }
.sb-tip { position:absolute; pointer-events:none; background:var(--sb-sheet); color:var(--sb-ink); border:1px solid var(--sb-line); border-radius:10px; box-shadow:var(--sb-elev2); padding:6px 10px; font-size:12px; white-space:nowrap; opacity:0; transition:opacity .12s; z-index:5; }
.sb-tip .d { color:var(--sb-muted); font-weight:800; font-size:11px; }
.sb-tip .r { display:flex; gap:12px; align-items:center; justify-content:space-between; }
.sb-tip b { font-weight:900; }

/* خريطة المحفظة */
.sb-map { min-height:300px; }
.sb-map .cell { cursor:default; transition:opacity .2s; }
.sb-map svg:hover .cell { opacity:.55; } .sb-map svg .cell:hover { opacity:1; }
.sb-scale { display:flex; align-items:center; gap:8px; font-size:11px; color:var(--sb-muted); font-weight:800; margin-top:12px; }
.sb-scale .bar { flex:0 1 210px; height:10px; border-radius:5px; background:linear-gradient(90deg,#7F1D1D 0 14.29%,#B42828 14.29% 28.57%,#E06A6A 28.57% 42.86%,#6B7A90 42.86% 57.14%,#5FB98E 57.14% 71.43%,#1E8A5C 71.43% 85.71%,#0B5E3F 85.71% 100%); }

/* من حرّك محفظتك اليوم */
.sb-movers { display:grid; gap:9px; }
.sb-mv { display:grid; grid-template-columns:44px minmax(0,1fr) auto; gap:10px; align-items:center; font-size:12px; }
.sb-mv .s { font-weight:900; }
.sb-mv .track { height:10px; position:relative; }
.sb-mv .track::before { content:""; position:absolute; left:50%; top:-4px; bottom:-4px; width:1px; background:var(--sb-line); }
.sb-mv .track i { position:absolute; top:0; bottom:0; border-radius:99px; }
.sb-mv .track i.up { background:var(--sb-gain); } .sb-mv .track i.dn { background:var(--sb-loss); }
.sb-mv .v { font-weight:800; min-width:72px; text-align:end; }
#movers-card .v2-btn { margin-top:-4px; }

/* يحتاج انتباهك */
.sb-att { list-style:none; margin:0; padding:0; }
.sb-att li { border-top:1px solid var(--sb-line); }
.sb-att li:first-child { border-top:0; }
.sb-att li.x { padding:2px 0; font-size:12px; color:var(--sb-muted); }
.sb-att button { width:100%; display:flex; gap:12px; align-items:flex-start; padding:11px 0; border:0; background:transparent; color:inherit; text-align:start; cursor:pointer; }
.sb-att li:first-child button { padding-top:2px; }
.sb-att-t { min-width:0; }
.sb-well { width:34px; height:34px; border-radius:12px; background:var(--sb-sunk); display:grid; place-items:center; flex:none; color:var(--sb-ink2); }
.sb-well svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.sb-att .t { font-weight:800; font-size:13px; } .sb-att .t b { font-weight:900; }
.sb-att .x { font-size:12px; color:var(--sb-muted); }
.sb-att .when { margin-inline-start:auto; font-size:11px; font-weight:800; color:var(--sb-ink2); white-space:nowrap; background:var(--sb-sunk); padding:2px 8px; border-radius:999px; }

/* أهدافك السعرية */
.sb-tg { display:grid; gap:16px; }
.sb-tg .top { display:flex; justify-content:space-between; font-size:12px; font-weight:800; gap:8px; }
.sb-tg .top b { font-weight:900; font-size:13px; }
.sb-tg .rail { position:relative; height:26px; margin-top:4px; }
.sb-tg .rail .bg { position:absolute; left:0; right:0; top:10px; height:6px; border-radius:99px; background:var(--sb-sunk); }
.sb-tg .rail .fill { position:absolute; top:10px; height:6px; border-radius:99px; background:var(--sb-sky); opacity:.35; }
.sb-tg .rail .last { position:absolute; top:6px; width:14px; height:14px; border-radius:50%; background:var(--sb-sky); border:3px solid var(--sb-sheet); transform:translateX(-50%); box-shadow:var(--sb-elev1); }
.sb-tg .rail .cost { position:absolute; top:5px; width:2px; height:16px; background:var(--sb-muted); transform:translateX(-50%); border-radius:2px; }
.sb-tg .rail .tgt { position:absolute; top:2px; transform:translateX(-50%); }
.sb-tg .leg { display:flex; justify-content:space-between; font-size:11px; color:var(--sb-muted); font-weight:700; }

/* أين أموالك؟ */
.sb-donut { display:grid; grid-template-columns:auto minmax(0,1fr); gap:18px; align-items:center; }
@container (max-width: 380px) { .sb-donut { grid-template-columns:1fr; justify-items:center; } }
.sb-donut svg path { transition:opacity .2s; cursor:pointer; }
.sb-donut svg text.c1 { font-size:11px; fill:var(--sb-muted); font-weight:800; }
.sb-donut svg text.c2 { font-size:18px; fill:var(--sb-ink); font-weight:900; }
.sb-dleg { display:grid; gap:6px; width:100%; }
.sb-dleg div { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; min-width:0; }
.sb-dleg i { width:10px; height:10px; border-radius:4px; flex:none; }
.sb-dleg .nm { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sb-dleg .pc { margin-inline-start:auto; font-weight:900; }
.sb-dleg div { transition:opacity .2s; }
.sb-dleg div.dim { opacity:.45; }
.sb-dleg div.on { opacity:1; }
.sb-sector-donut .sb-donut { grid-template-columns:auto minmax(0,1fr); justify-content:center; gap:28px; max-width:560px; margin-inline:auto; }
.sb-sector-donut .sb-dleg { gap:10px; }
.sb-sector-donut .sb-dleg div { font-size:13px; padding:4px 0; border-bottom:1px solid var(--sb-line); }
.sb-sector-donut .sb-dleg div:last-child { border-bottom:0; }
.sb-sector-donut svg text.c1 { font-size:12px; }
.sb-sector-donut svg text.c2 { font-size:22px; }
.sb-sector-donut .sb-tip { z-index:5; }

/* الخصوصية: الرسوم تختفي (المبالغ نفسها تُحجب من formatEGP) */
.sb.private [data-chart] { visibility:hidden; }

@media (prefers-reduced-motion: no-preference) {
  .sb .rise { animation:sbRise .34s cubic-bezier(.16,1,.3,1) both; }
  .sb .draw { stroke-dasharray:var(--len); stroke-dashoffset:var(--len); animation:sbDraw 1.4s cubic-bezier(.4,0,.2,1) forwards; }
  .sb .fade { animation:sbFade 1s ease both; }
  .sb .pop { animation:sbFade .5s ease both; }
  .sb .sb-session .track i { animation:sbGrowX 1s cubic-bezier(.16,1,.3,1) both; transform-origin:left; }
  [dir=rtl] .sb .sb-session .track i { transform-origin:right; }
}
@keyframes sbRise { from { opacity:.55; transform:translateY(6px); } to { opacity:1; transform:none; } }
@keyframes sbDraw { to { stroke-dashoffset:0; } }
@keyframes sbFade { from { opacity:0; } to { opacity:1; } }
@keyframes sbGrowX { from { transform:scaleX(0); } to { transform:scaleX(1); } }
.sb-band .glow { filter:drop-shadow(0 0 6px var(--bd-glow)) drop-shadow(0 0 2px var(--bd-glow)); }

/* ما خرج من الرئيسية: شريط الأسعار ومؤشرات EGX أعلى «المراقبة»، والملخص ومراجعة الأسبوع بعرض «الأداء» كاملًا */
#watchlist-tab > .ha-ticker, #watchlist-tab > .ha-market { order:0 !important; }
#perf-tab > #daily-briefing-card, #perf-tab > #weekly-card { grid-column:1 / -1; }

/* ---------- صفحات اللوحة: الأسهم، المحفظة النقدية، التقويم ---------- */
.sb-page[hidden] { display:none; }
.sb-bento > .c7, .sb-bento > .c5, .sb-bento > .c6 { grid-column:span 12; }
@media (min-width: 900px) { .sb-bento > .c7 { grid-column:span 7; } .sb-bento > .c5 { grid-column:span 5; } .sb-bento > .c6 { grid-column:span 6; } }

/* بطاقات الأسهم */
.sb-sortbar { display:flex; gap:10px; justify-content:space-between; align-items:center; flex-wrap:wrap; margin-bottom:14px; }
.sb-hgrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr)); gap:14px; }
.sb-hc { background:var(--sb-sheet); border:1px solid var(--sb-line); border-radius:22px; box-shadow:var(--sb-elev1); padding:16px 16px 14px; min-width:0; transition:transform .2s,border-color .2s,box-shadow .2s; position:relative; overflow:hidden; cursor:pointer; }
.sb-hc:hover, .sb-hc:focus-visible { transform:translateY(-2px); border-color:var(--sb-sky); box-shadow:var(--sb-elev2); outline:none; }
.sb-hc .hd { display:flex; gap:10px; align-items:center; }
.sb-badge { width:40px; height:40px; border-radius:14px; display:grid; place-items:center; font-size:10px; font-weight:900; color:#fff; flex:none; }
.sb-hc .sy { font-weight:900; font-size:15px; line-height:1.2; }
.sb-hc .nm { font-size:11px; color:var(--sb-muted); font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb-hc .day { margin-inline-start:auto; }
.sb-hc .day.gain { background:var(--sb-gain-bg); } .sb-hc .day.loss { background:var(--sb-loss-bg); }
.sb-hc .val { font-size:22px; font-weight:900; margin-top:12px; line-height:1.1; }
.sb-hc .pl { font-size:12px; font-weight:800; }
.sb-hc .spark { height:64px; margin:10px -16px 0; }
.sb-hc .spark .sb-note { padding:20px 16px 0; margin:0; }
.sb-hc .ft > span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; flex:none; }
.sb-hc .ft > span:last-child { flex:1 1 auto; text-align:end; }
.sb-hc .ft { display:flex; justify-content:space-between; font-size:11px; color:var(--sb-muted); font-weight:700; margin-top:8px; gap:8px; }
.sb-hc .wt { height:4px; background:var(--sb-sunk); border-radius:99px; margin-top:8px; overflow:hidden; }
.sb-hc .wt i { display:block; height:100%; background:var(--sb-sky); border-radius:99px; }

/* المحفظة النقدية */
.sb-wcard { background:var(--sb-brand); color:#EEF2F8; border-radius:22px; padding:22px; position:relative; overflow:hidden; min-height:210px; display:flex; flex-direction:column; justify-content:space-between; box-shadow:var(--sb-elev2); border:1px solid rgba(255,255,255,.1); }
.dark .sb-wcard { background:#17223A; }
.sb-wcard .row { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.sb-wcard .chipico { width:40px; height:30px; border-radius:8px; background:#C9A86A; position:relative; opacity:.9; }
.sb-wcard .chipico::before { content:""; position:absolute; inset:7px 0; border-top:1px solid rgba(0,0,0,.25); border-bottom:1px solid rgba(0,0,0,.25); }
.sb-wcard .chipico::after { content:""; position:absolute; inset:0 14px; border-inline:1px solid rgba(0,0,0,.25); }
.sb-wcard .k { font-size:11px; color:#9FB3CF; font-weight:800; }
.sb-wcard .cash { font-size:clamp(28px,6vw,40px); font-weight:900; line-height:1.05; }
.sb-wcard .arc { position:absolute; inset-inline-end:-60px; top:-60px; width:220px; height:220px; border-radius:50%; border:28px solid rgba(255,255,255,.04); pointer-events:none; }
.sb-wcard .arc.b { inset-inline-end:-20px; top:60px; width:160px; height:160px; border-width:18px; border-color:rgba(74,222,128,.07); }
.sb-wells { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:12px; }
.sb-wells > div { background:var(--sb-sunk); border-radius:16px; padding:10px 12px; min-width:0; }
.sb-wells .k { font-size:11px; color:var(--sb-muted); font-weight:800; }
.sb-wells .v { font-size:14px; font-weight:900; overflow-wrap:anywhere; }
.sb-wf { min-height:260px; }
.sb-chips { display:flex; gap:6px; flex-wrap:wrap; margin:0 0 10px; }
.sb-chips button { font-size:11px; font-weight:800; border:1px solid var(--sb-line); background:transparent; color:var(--sb-ink2); padding:4px 12px; border-radius:999px; cursor:pointer; }
.sb-chips button[aria-pressed=true] { background:var(--sb-sky-tint); color:var(--sb-sky); border-color:transparent; }
.sb-tl { max-height:520px; overflow:auto; padding-inline-end:4px; }
.sb-tl .mo { position:sticky; top:0; background:var(--sb-sheet); z-index:1; font-size:11px; font-weight:900; color:var(--sb-muted); padding:10px 0 6px; display:flex; justify-content:space-between; }
.sb-tl .it { display:grid; grid-template-columns:34px minmax(0,1fr) auto; gap:12px; align-items:center; padding:8px 0; border-top:1px solid var(--sb-line); }
.sb-tl .it .ti { font-weight:800; font-size:13px; }
.sb-tl .it .no { font-size:11px; color:var(--sb-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb-tl .it .am { text-align:end; font-weight:900; font-size:13px; }
.sb-tl .it .bl { font-size:11px; color:var(--sb-muted); font-weight:700; }

/* التقويم */
.sb-cal { min-height:160px; overflow-x:auto; }
.sb-cal rect.d { transition:opacity .15s; }
.sb-cal svg:hover rect.d { opacity:.5; } .sb-cal svg rect.d:hover { opacity:1; stroke:var(--sb-ink); stroke-width:1.5; }
.sb-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:10px; margin-top:16px; }
.sb-stats[hidden] { display:none; }
.sb-stat { background:var(--sb-sunk); border-radius:16px; padding:12px 14px; min-width:0; }
.sb-stat .k { font-size:11px; color:var(--sb-muted); font-weight:800; }
.sb-stat .v { font-size:20px; font-weight:900; line-height:1.2; margin-top:2px; }
.sb-stat .s { font-size:11px; color:var(--sb-muted); font-weight:700; }
.sb-mbars { min-height:220px; }

/* =====================================================================
   هيكل Horizon Ledger للتطبيق كله: شريط جانبي، شريط علوي بالعنوان والبحث، صفحات أقسام تفتح صفحاتها الفرعية،
   وشريط سفلي على الموبايل. كل الصفحات القديمة تأخذ نفس الورق والحدود والظل (رموز --v2-* تُعاد إلى ألوان التصميم).
   ===================================================================== */
:root { --v2-bg:#ECE8E0; --v2-surface:#F4F1EA; --v2-raised:#EAE5DA; --v2-border:rgba(58,48,28,.10); }
.dark { --v2-bg:#0A101C; --v2-surface:#111A2B; --v2-raised:#17223A; --v2-border:rgba(255,255,255,.08); }
body { background:var(--v2-bg) !important; }
.sb-app { max-width:1480px; margin:0 auto; padding:clamp(12px,2.2vw,24px); width:100%; }
.sb-app .glass-panel { background:var(--sb-sheet) !important; border:1px solid var(--sb-line) !important; border-radius:22px !important; box-shadow:var(--sb-elev1) !important; }
.sb-app .glass-panel .glass-panel { background:var(--sb-sunk) !important; box-shadow:none !important; border-color:transparent !important; }
#main-content { display:block; min-width:0; }
#main-content > * + * { margin-top:16px; }
#tab-content-area > .tab-content:not(.hidden) { display:block; }
#tab-content-area > .tab-content:not(#home-tab):not(.hidden) > * + * { margin-top:16px; }
#tab-content-area > .tab-content:not(#home-tab):not(.hidden):is(#perf-tab, #dividends-tab, #holdings-tab, #sales-tab, #cashflow-tab, #tax-tab, #riskan-tab, #watchlist-tab, #explore-tab, #signals-tab, #dca-tab, #risk-tab, #sectors-tab, #rebalance-tab, #tperf-tab, #paper-tab) { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
#tab-content-area > .tab-content:not(.hidden) > * + * { margin-top:0; }
@media (min-width:1024px) { #perf-tab:not(.hidden) { grid-template-columns:repeat(2,minmax(0,1fr)) !important; } #perf-tab > #daily-briefing-card, #perf-tab > #weekly-card { grid-column:1 / -1; } }
#sbh-tab > * + *, #sbw-tab > * + *, #sbc-tab > * + *, #mk-tab > * + *, #an-tab > * + *, #acc-tab > * + *, #settings-tab > * + * { margin-top:16px; }
#settings-tab .sb-setnote + .sb-bento { margin-top:0; }

/* ---------- الهيكل ---------- */
.sb-shell { display:grid; grid-template-columns:84px minmax(0,1fr); gap:20px; align-items:start; }
.sb-main { min-width:0; }
.sb-rail { position:sticky; top:12px; display:flex; flex-direction:column; gap:4px; background:var(--sb-sheet); border:1px solid var(--sb-line); border-radius:24px; padding:10px 8px; box-shadow:var(--sb-elev1); min-height:min(680px, calc(100vh - 24px)); }
.sb-rail-logo { width:48px; height:48px; margin:0 auto 10px; border-radius:15px; background:#0E2A52; border:0; display:grid; place-items:center; cursor:pointer; transition:transform .2s; }
.sb-rail-logo:hover { transform:scale(1.05); }
.sb-rail-sp { flex:1; }
.sb-ri { position:relative; display:flex; flex-direction:column; align-items:center; gap:3px; border:0; background:transparent; color:var(--sb-muted); font-size:11px; font-weight:800; padding:9px 2px 8px; border-radius:14px; cursor:pointer; transition:background .2s, color .2s; min-height:44px; }
.sb-ri svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.sb-ri:hover { background:var(--sb-sunk); color:var(--sb-ink); }
.sb-ri[aria-current=page] { background:var(--sb-sky-tint); color:var(--sb-sky); }
.sb-rail .sb-ri[aria-current=page]::before { content:""; position:absolute; inset-inline-start:-8px; top:12px; bottom:12px; width:3px; border-start-end-radius:3px; border-end-end-radius:3px; background:var(--sb-sky); }
.sb-ri .bdg { position:absolute; top:4px; inset-inline-end:12px; min-width:16px; height:16px; border-radius:99px; background:var(--sb-sky); color:var(--sb-sheet); font-size:9px; font-weight:900; display:grid; place-items:center; padding:0 4px; }
.sb-ri .bdg:empty { display:none; }
.sb-av { width:28px; height:28px; border-radius:10px; background:#0E2A52; color:#fff; font-size:13px; font-weight:900; display:inline-grid; place-items:center; flex:none; }
.sb-av.sm { width:20px; height:20px; border-radius:7px; font-size:11px; }
.sb-av.xl { width:64px; height:64px; border-radius:20px; font-size:28px; }
.sb-ri-me[aria-current=page] .sb-av { box-shadow:0 0 0 2px var(--sb-sheet), 0 0 0 4px var(--sb-sky); }

/* الشريط العلوي */
.sb-top { position:sticky; top:0; z-index:40; display:flex; align-items:center; gap:10px; padding:4px 0 14px; background:var(--v2-bg); }
.sb-top-title { margin-inline-end:auto; min-width:0; }
.sb-crumb { font-size:11px; font-weight:800; color:var(--sb-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb h1 { font-size:22px; font-weight:900; margin:0; line-height:1.2; letter-spacing:0; }
.sb-back { display:inline-flex; align-items:center; gap:4px; height:40px; padding-inline:8px 12px; border-radius:14px; border:1px solid var(--sb-line); background:var(--sb-sheet); color:var(--sb-ink2); font-size:12px; font-weight:800; cursor:pointer; box-shadow:var(--sb-elev1); flex:none; }
.sb-back[hidden] { display:none; }
.sb-back svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
[dir=ltr] .sb-back svg { transform:scaleX(-1); }
.sb-back:hover { border-color:var(--sb-sky); color:var(--sb-sky); }
.sb-search { display:inline-flex; align-items:center; gap:10px; min-width:260px; padding-block:9px; padding-inline:14px 10px; border-radius:14px; border:1px solid var(--sb-line); background:var(--sb-sheet); color:var(--sb-muted); font-size:13px; font-weight:700; cursor:pointer; box-shadow:var(--sb-elev1); transition:border-color .2s; }
.sb-search:hover, .sb-search[aria-expanded=true] { border-color:var(--sb-sky); color:var(--sb-ink); }
.sb-search svg, .sb-iconbtn svg, .sb-pal-in svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; flex:none; }
.sb-search .tx { margin-inline-end:auto; }
.sb-iconbtn, .sb-avbtn { position:relative; width:40px; height:40px; border-radius:14px; border:1px solid var(--sb-line); background:var(--sb-sheet); color:var(--sb-ink2); display:grid; place-items:center; cursor:pointer; box-shadow:var(--sb-elev1); flex:none; }
.sb-iconbtn:hover, .sb-avbtn:hover { border-color:var(--sb-sky); color:var(--sb-sky); }
.sb-addbtn { background:var(--sb-sky); border-color:transparent; color:var(--sb-sheet); }
.sb-addbtn:hover { color:var(--sb-sheet); filter:brightness(1.08); }
.sb-avbtn { padding:0; } .sb-avbtn .sb-av { width:30px; height:30px; }
#alerts-count-badge { top:-4px; inset-inline-end:-4px; }
.sb kbd { font:inherit; font-size:11px; font-weight:800; color:var(--sb-ink2); background:var(--sb-sunk); border:1px solid var(--sb-line); border-bottom-width:2px; border-radius:6px; padding:0 6px; line-height:18px; display:inline-block; }

/* قائمة البحث */
.sb-pal { position:absolute; top:calc(100% - 6px); inset-inline-end:0; width:min(560px, 100%); background:var(--sb-sheet); border:1px solid var(--sb-line); border-radius:20px; box-shadow:var(--sb-elev2), 0 30px 60px -20px rgba(13,22,38,.35); padding:8px; z-index:50; }
.sb-pal[hidden] { display:none; }
.sb-pal-in { display:flex; align-items:center; gap:10px; padding:6px 10px 10px; border-bottom:1px solid var(--sb-line); color:var(--sb-muted); }
.sb-pal-in input { flex:1; min-width:0; border:0; background:transparent; font:inherit; font-size:15px; font-weight:700; color:var(--sb-ink); outline:none; padding:4px 0; }
.sb-pal-list { max-height:min(400px, 60vh); overflow:auto; padding:4px 0; }
.sb-pal .grp { font-size:11px; font-weight:900; color:var(--sb-muted); padding:10px 10px 4px; }
.sb-pal .it { width:100%; display:flex; align-items:center; gap:12px; border:0; background:transparent; text-align:start; padding:8px 10px; border-radius:12px; cursor:pointer; color:var(--sb-ink); }
.sb-pal .it[aria-selected=true] { background:var(--sb-sky-tint); }
.sb-pal .it[aria-selected=true] .l { color:var(--sb-sky); }
.sb-pal .tx { display:flex; flex-direction:column; min-width:0; margin-inline-end:auto; }
.sb-pal .l { font-size:13px; font-weight:800; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb-pal .s { font-size:11px; color:var(--sb-muted); font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb-pal .empty { padding:18px 10px; color:var(--sb-muted); font-size:13px; text-align:center; }
.sb-pal-ft { display:flex; gap:14px; padding:8px 10px 2px; border-top:1px solid var(--sb-line); font-size:11px; color:var(--sb-muted); font-weight:700; flex-wrap:wrap; }
.sb-well.sm { width:30px; height:30px; border-radius:10px; }
.sb-well.sm svg { width:16px; height:16px; }
.sb-well i.fa-solid { font-size:14px; }
.sb-badge.sm { width:30px; height:30px; border-radius:10px; font-size:8px; }

/* «انتقل إلى» وروابط صفحات القسم */
.sb-jump { margin:16px 0; }
/* قاعدة #home-tab > * تصفّر الهوامش وتغلب .sb-jump بالأسبقية، فكانت أبواب «انتقل إلى» ملاصقة لما تحتها */
#home-tab > .sb-jump { margin:16px 0 20px; }
.sb-jump-h { display:flex; align-items:baseline; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:10px; }
.sb-doors { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:12px; }
.sb-door { text-align:start; display:flex; flex-direction:column; gap:2px; padding:14px; min-width:0; border-radius:20px; border:1px solid var(--sb-line); background:var(--sb-sheet); box-shadow:var(--sb-elev1); color:var(--sb-ink); cursor:pointer; transition:transform .25s cubic-bezier(.16,1,.3,1), border-color .2s, box-shadow .2s; font:inherit; }
.sb-door:hover { transform:translateY(-3px); border-color:var(--sb-sky); box-shadow:var(--sb-elev2); }
.sb-door:active { transform:scale(.97); }
.sb-door .top { display:flex; align-items:center; gap:8px; margin-bottom:8px; }
.sb-door .top .sb-well { width:30px; height:30px; border-radius:10px; }
.sb-door .top .sb-well svg { width:16px; height:16px; }
.sb-door .t { font-size:12px; font-weight:800; color:var(--sb-muted); margin-inline-end:auto; }
.sb-subdoors .sb-door .t { font-size:13px; color:var(--sb-ink); }
.sb-door .go { width:16px; height:16px; fill:none; stroke:var(--sb-muted); stroke-width:2; stroke-linecap:round; transition:transform .25s, stroke .2s; }
[dir=rtl] .sb-door .go { transform:scaleX(-1); }
.sb-door:hover .go { stroke:var(--sb-sky); }
.sb-door .v { font-size:17px; font-weight:900; line-height:1.25; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb-door .s { font-size:11px; color:var(--sb-muted); font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb-door .s2 { font-size:12px; color:var(--sb-muted); font-weight:700; line-height:1.5; }
.sb-door .viz { display:flex; height:8px; margin-top:10px; gap:2px; border-radius:99px; overflow:hidden; }
.sb-door .viz.strip i { display:block; height:100%; }
.sb-door .viz.bar { background:var(--sb-sunk); } .sb-door .viz.bar i { display:block; height:100%; width:0; background:var(--sb-sky); border-radius:99px; }
.sb-door .viz.heat { gap:2px; border-radius:2px; } .sb-door .viz.heat i { flex:1; height:100%; border-radius:2px; }
.sb-door .viz.who { height:auto; align-items:center; gap:6px; font-size:11px; font-weight:800; color:var(--sb-ink2); overflow:visible; }
.sb-door .viz.dots { gap:5px; overflow:visible; } .sb-door .viz.dots i { width:8px; height:8px; border-radius:50%; background:var(--sb-sunk2); } .sb-door .viz.dots i:first-child { background:var(--sb-sky); }

/* الشريط السفلي (الموبايل) */
.sb-tabbar { display:none; position:sticky; bottom:10px; z-index:40; margin-top:16px; background:var(--sb-sheet); border:1px solid var(--sb-line); border-radius:24px; box-shadow:var(--sb-elev2), 0 18px 40px -18px rgba(13,22,38,.35); padding:6px; gap:2px; align-items:center; }
.sb-tabbar .sb-ri { flex:1; }
.sb-fab { flex:0 0 52px !important; height:52px; margin:-18px 2px 0; border-radius:18px !important; background:var(--sb-sky) !important; color:var(--sb-sheet) !important; box-shadow:var(--sb-elev2); justify-content:center; }

/* أزرار عامة */
.sb-btn { display:inline-flex; align-items:center; gap:6px; height:36px; padding:0 14px; border-radius:12px; border:0; background:var(--sb-sky); color:var(--sb-sheet); font-size:12.5px; font-weight:800; cursor:pointer; box-shadow:var(--sb-elev1); }
.sb-btn svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; }
.sb-btn:hover { filter:brightness(1.08); }
.sb-btn.ghost { background:var(--sb-sheet); color:var(--sb-ink); border:1px solid var(--sb-line); }
.sb-sortbar-r { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.sb-wacts { display:flex; gap:8px; margin-top:12px; }
.sb-pillbtn { border:1px solid var(--sb-line); background:var(--sb-sunk); color:var(--sb-ink); border-radius:99px; padding:5px 12px; font-size:12px; font-weight:900; cursor:pointer; flex:none; }
.sb-pillbtn:hover { border-color:var(--sb-sky); color:var(--sb-sky); }
.sb-toggles { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.sb-toggles > span { display:none; }
.sb-toggles .v2-chip { min-height:32px; font-size:11px; }

/* الحساب */
.sb-profile .hd { display:flex; align-items:center; gap:14px; }
.sb-profile .nm { font-size:22px; font-weight:900; line-height:1.2; }
.sb-profile .since { font-size:12px; color:var(--sb-muted); font-weight:700; }
.sb-profile .pills { display:flex; gap:6px; flex-wrap:wrap; margin:14px 0 4px; align-items:center; }
.sb-pill2 { display:inline-flex; align-items:center; gap:4px; padding:3px 10px; border-radius:99px; background:var(--sb-sunk); color:var(--sb-ink2); font-size:11px; font-weight:800; white-space:nowrap; }
#sync-badge { background:var(--sb-gain-bg) !important; color:var(--sb-gain) !important; border:0 !important; font-size:11px !important; padding:3px 10px !important; }
#sync-badge .hidden { display:inline !important; }
.sb-brs { display:grid; gap:10px; }
.sb-br { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:4px 12px; align-items:center; padding:12px; background:var(--sb-sunk); border-radius:16px; border:1px solid transparent; text-align:start; cursor:pointer; color:inherit; font:inherit; }
.sb-br:hover { border-color:var(--sb-sky); }
.sb-br.on { border-color:var(--sb-sky); background:var(--sb-sky-tint); }
.sb-br .sb-badge { background:#0E2A52; }
.sb-br .nm { font-weight:900; font-size:14px; }
.sb-br .sub { font-size:11px; color:var(--sb-muted); font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb-br .rt { text-align:end; } .sb-br .rt .v { font-weight:900; } .sb-br .rt .pc { font-size:11px; color:var(--sb-sky); font-weight:800; }
.sb-br .bar { grid-column:1 / -1; height:5px; border-radius:99px; background:var(--sb-sheet); overflow:hidden; margin-top:6px; }
.sb-br .bar i { display:block; height:100%; background:var(--sb-sky); border-radius:99px; }
.sb-link { display:inline-flex; align-items:center; gap:6px; margin-top:12px; border:0; background:none; color:var(--sb-sky); font-size:13px; font-weight:800; cursor:pointer; padding:4px 0; }
.sb-link svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
.sb-keys { display:grid; gap:2px; }
.sb-keys > div { display:flex; justify-content:space-between; gap:12px; padding:10px 0; border-top:1px solid var(--sb-line); font-size:12px; font-weight:700; color:var(--sb-ink2); }
.sb-keys > div:first-child { border-top:0; }
.sb-keys > div span:first-child { white-space:nowrap; color:var(--sb-ink); font-weight:800; }
.sb-keys > div span:last-child { text-align:end; color:var(--sb-muted); }

/* الإعدادات */
.sb-setnote { margin:0 0 12px; }
.sb-set { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 0; border-top:1px solid var(--sb-line); width:100%; }
.sb-card h2 + .sb-set, .sb-ch + .sb-set, .sb-card h2 + .sb-set-btn, .sb-ch + p + .sb-set { border-top:0; }
.sb-set .l { font-size:13px; font-weight:800; display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.sb-set .d { font-size:12px; color:var(--sb-muted); max-width:46ch; }
.sb-set .sb-seg { flex:none; }
.sb-set-btn { background:transparent; border-inline:0; border-bottom:0; color:inherit; font:inherit; text-align:start; cursor:pointer; text-decoration:none; }
.sb-set-btn:hover .l { color:var(--sb-sky); }
.sb-chev { color:var(--sb-muted); font-size:12px; flex:none; }
[dir=ltr] .sb-chev { transform:scaleX(-1); }
.sb-ok { color:var(--sb-gain); }
.sb-switch { flex:none; width:46px; height:28px; border-radius:99px; border:0; background:var(--sb-sunk2); position:relative; cursor:pointer; transition:background .2s; padding:0; }
.sb-switch i { position:absolute; top:3px; inset-inline-start:3px; width:22px; height:22px; border-radius:50%; background:var(--sb-sheet); box-shadow:0 1px 3px rgba(0,0,0,.25); transition:transform .25s cubic-bezier(.16,1,.3,1); }
.sb-switch[aria-checked=true] { background:var(--sb-sky); }
.sb-switch[aria-checked=true] i { transform:translateX(18px); }
[dir=rtl] .sb-switch[aria-checked=true] i { transform:translateX(-18px); }
.sb-danger h2 { color:var(--sb-loss); }
.sb-danger .sb-set-btn .l { color:var(--sb-loss); }
.sb-foot { text-align:center; margin-top:20px; }

/* ترويسة الصفحة الفرعية: سطر الغرض والأرقام */
#pg-head { display:flex; align-items:center; justify-content:space-between; gap:12px 20px; flex-wrap:wrap; background:var(--sb-sheet); border:1px solid var(--sb-line); border-radius:22px; box-shadow:var(--sb-elev1); padding:14px 18px; }
#pg-head.hidden { display:none; }
#pg-head .pg-desc { margin:0; font-size:13px; color:var(--sb-ink2); font-weight:700; max-width:70ch; }
#pg-head .pg-kpis { display:flex; gap:8px; flex-wrap:wrap; }
#pg-head .pg-kpi { background:var(--sb-sunk); border-radius:14px; padding:8px 12px; min-width:120px; }
#v2-mini-summary { border-radius:16px !important; }

/* السوق */
#mk-tab .ha-ticker { border-radius:16px !important; margin-bottom:12px; background:var(--sb-sunk) !important; box-shadow:none !important; border-color:transparent !important; }
#mk-tab .ha-market { background:transparent !important; box-shadow:none !important; border:0 !important; padding:0 !important; }

/* ألوان أزرق · برتقالي */
.pal-bo .sb-scale .bar { background:linear-gradient(90deg,#7A2E0B 0 14.29%,#C2571A 14.29% 28.57%,#F0A35E 28.57% 42.86%,#6B7A90 42.86% 57.14%,#7FB2E0 57.14% 71.43%,#2F6FB0 71.43% 85.71%,#163E6E 85.71% 100%); }

/* الحركة متوقفة */
.sb.nomotion *, .sb.nomotion *::before, .sb.nomotion *::after { animation:none !important; transition:none !important; }
@media (prefers-reduced-motion: no-preference) { .tab-content.sb-enter { animation:sbRise .3s cubic-bezier(.16,1,.3,1) both; } }

/* الشاشات الضيقة */
@media (max-width: 1100px) { .sb-search { min-width:200px; } }
@media (max-width: 760px) {
  .sb-app { padding:12px 12px 0; }
  .sb-shell { grid-template-columns:minmax(0,1fr); }
  .sb-rail { display:none; }
  .sb-tabbar { display:flex; }
  .sb-search { min-width:0; width:40px; height:40px; padding:0; justify-content:center; border-radius:14px; flex:none; }
  .sb-top-title { flex:1 1 auto; }
  .sb-crumb { display:none; }
  .sb-search .tx, .sb-search kbd { display:none; }
  .sb-pal { inset-inline-start:0; width:auto; }
  .sb-pal-ft { display:none; }
  .sb h1 { font-size:19px; }
  .sb-top { gap:6px; }
  .sb-back span { display:none; }
  .sb-back { padding:0; width:40px; justify-content:center; }
  #refresh-prices-btn { display:none; }
  .sb-doors:not(.sb-subdoors) { grid-auto-flow:column; grid-template-columns:none; grid-auto-columns:minmax(170px,62%); overflow-x:auto; scroll-snap-type:x mandatory; padding:2px 2px 10px; margin:0 -2px; scrollbar-width:none; }
  .sb-doors:not(.sb-subdoors) .sb-door { scroll-snap-align:start; }
  .sb-subdoors { grid-template-columns:minmax(0,1fr); }
  .sb-set { flex-wrap:wrap; }
  #toast-container { bottom:96px !important; }
}
@media (max-width: 560px) {
  .sb-band { border-radius:20px; }
  .sb-band-top { padding:16px 16px 0; }
  .sb-total { font-size:40px; margin:2px 0 8px; }
  .sb-take { font-size:13px; margin-top:10px; }
  .sb-band-meta { gap:6px 12px; font-size:11px; }
  .sb-band-chart { height:170px; }
  .sb-band-ctrl .lbl2 { display:none; }
  .sb-bento { gap:12px; }
  .sb-card { padding:16px; border-radius:18px; }
  .sb h2 { font-size:14px; }
  .sb-sortbar { flex-direction:column; align-items:stretch; }
  .sb-sortbar-r .sb-seg { overflow-x:auto; }
  .sb-hgrid { gap:10px; }
  .sb-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .sb-stat .v { font-size:17px; }
  .sb-chips { overflow-x:auto; flex-wrap:nowrap; padding-bottom:2px; }
  .sb-chips button { white-space:nowrap; padding:6px 12px; }
  .sb-tl { max-height:460px; }
}
@media (max-width: 380px) {
  .sb-band-side { grid-template-columns:minmax(0,1fr); grid-template-areas:'ctrl' 'ring' 'sess'; }
  .sb-total { font-size:34px; }
  .sb-wells { grid-template-columns:minmax(0,1fr); }
}

/* ---------- الشريط الجانبي: صفحات القسم الحالي تحت أيقونته ---------- */
.sb-rail { min-height:min(680px, calc(100vh - 24px)); max-height:calc(100vh - 24px); overflow-y:auto; scrollbar-width:thin; }
.sb-rsub { display:flex; flex-direction:column; gap:2px; overflow:hidden; max-height:0; padding:0 4px; margin:0 2px; border-radius:14px; visibility:hidden; transition:max-height .35s cubic-bezier(.16,1,.3,1), padding .35s, margin .35s, visibility 0s .35s; }
.sb-rsub.open { max-height:420px; padding:6px 4px; margin:2px 2px 8px; background:var(--sb-sunk); visibility:visible; transition:max-height .35s cubic-bezier(.16,1,.3,1), padding .35s, margin .35s; }
.sb-rs { display:flex; flex-direction:column; align-items:center; gap:2px; border:0; background:transparent; color:var(--sb-muted); font:inherit; font-size:10px; font-weight:800; line-height:1.25; padding:7px 2px; border-radius:10px; cursor:pointer; text-align:center; min-height:40px; justify-content:center; }
.sb-rs i { font-size:13px; }
.sb-rs:hover { color:var(--sb-ink); background:var(--sb-sheet); }
.sb-rs[aria-current=page] { color:var(--sb-sky); background:var(--sb-sheet); box-shadow:var(--sb-elev1); }
.sb-ri[aria-expanded=true] { border-end-start-radius:6px; border-end-end-radius:6px; }
@media (min-width: 761px) { .sb-jump:has(.sb-subdoors) { display:none; } }

/* =====================================================================
   الصفحات الفرعية (جدول المراكز، القطاعات، المبيعات، التوزيعات، حركة السيولة، الضريبة، الأداء، الصفقات، المراقبة،
   الاستكشاف، الإشارات، المخاطر، المحاكيات): نفس لغة Horizon Ledger — ورق واحد، عناوين بلا أيقونات ملوّنة، بلاطات غائرة،
   جداول بخطوط شعرية، حقول غائرة، وأزرار الإجراء بالأزرق والمال بالأخضر/الأحمر.
   ===================================================================== */
.sb-lg { font-size:13px; color:var(--sb-ink); }
/* البطاقات */
.sb-lg > .glass-panel, .sb-lg > div > .glass-panel, .sb-lg .glass-panel { padding:20px !important; border-radius:22px !important; }
.sb-lg .glass-panel .glass-panel, .sb-lg .analysis-section-card { padding:16px !important; border-radius:16px !important; background:var(--sb-sunk) !important; border:0 !important; box-shadow:none !important; }
.sb-lg [class*="grid-cols"] { gap:12px; }
/* العناوين: حجم التصميم، والأيقونة في بئر صغير هادئ بدل الألوان */
.sb-lg h2, .sb-lg h3 { color:var(--sb-ink) !important; letter-spacing:0; }
.sb-lg h2 { font-size:15px !important; font-weight:900 !important; }
.sb-lg h3 { font-size:13.5px !important; font-weight:900 !important; }
.sb-lg h2 > i.fa-solid, .sb-lg h3 > i.fa-solid, .sb-lg h2 > i.fa-brands { width:28px; height:28px; border-radius:10px; background:var(--sb-sunk); color:var(--sb-ink2) !important; display:inline-grid; place-items:center; font-size:12px !important; flex:none; }
.sb-lg .glass-panel .glass-panel h2 > i.fa-solid, .sb-lg .glass-panel .glass-panel h3 > i.fa-solid { background:var(--sb-sheet); }
/* النصوص */
.sb-lg [class*="text-slate-900"], .sb-lg [class*="dark:text-white"], .sb-lg [class*="text-slate-800"] { color:var(--sb-ink) !important; }
.sb-lg [class*="text-slate-700"], .sb-lg [class*="text-slate-600"], .sb-lg [class*="dark:text-slate-300"], .sb-lg [class*="dark:text-slate-200"] { color:var(--sb-ink2) !important; }
.sb-lg [class*="text-slate-500"], .sb-lg [class*="text-slate-400"] { color:var(--sb-muted) !important; }
.sb-lg [class*="text-emerald-"], .sb-lg [class*="text-green-"] { color:var(--sb-gain) !important; }
.sb-lg [class*="text-rose-"], .sb-lg [class*="text-red-"] { color:var(--sb-loss) !important; }
.sb-lg [class*="text-amber-"], .sb-lg [class*="text-yellow-"], .sb-lg [class*="text-orange-"] { color:var(--sb-warn) !important; }
.sb-lg [class*="text-indigo-"], .sb-lg [class*="text-sky-"], .sb-lg [class*="text-blue-"], .sb-lg [class*="text-violet-"], .sb-lg [class*="text-purple-"], .sb-lg [class*="text-teal-"], .sb-lg [class*="text-cyan-"] { color:var(--sb-sky) !important; }
/* البلاطات الغائرة (أرقام داخل البطاقات) */
.sb-lg div[class*="bg-slate-50"], .sb-lg div[class*="bg-slate-100"], .sb-lg div[class*="bg-slate-800"], .sb-lg div[class*="bg-slate-900"], .sb-lg div[class*="bg-white"],
.sb-lg div[class*="-500/10"], .sb-lg div[class*="-50 "], .sb-lg div[class*="from-"] { background:var(--sb-sunk) !important; background-image:none !important; border-color:transparent !important; box-shadow:none !important; }
.sb-lg div.rounded-xl, .sb-lg div.rounded-2xl, .sb-lg div.rounded-lg { border-radius:16px; }
.sb-lg [class*="border-slate-"], .sb-lg [class*="dark:border-slate-"], .sb-lg [class*="divide-slate-"] > * { border-color:var(--sb-line) !important; }
/* الجداول */
.sb-lg div.overflow-x-auto { border:1px solid var(--sb-line) !important; border-radius:16px !important; background:var(--sb-sheet) !important; box-shadow:none !important; }
.sb-lg table { font-size:12.5px; border-collapse:collapse; width:100%; }
.sb-lg thead, .sb-lg thead tr, .sb-lg thead th { background:var(--sb-sunk) !important; }
.sb-lg th { color:var(--sb-muted) !important; font-size:11px !important; font-weight:800 !important; border-color:var(--sb-line) !important; white-space:nowrap; }
.sb-lg td { border-color:var(--sb-line) !important; }
.sb-lg tbody tr { border-top:1px solid var(--sb-line); background:transparent !important; }
.sb-lg tbody tr:first-child { border-top:0; }
.sb-lg tbody tr:hover { background:var(--sb-sunk) !important; }
.sb-lg tbody td { font-variant-numeric:tabular-nums; }
/* الحقول */
.sb-lg input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]), .sb-lg select, .sb-lg textarea {
  background:var(--sb-sunk) !important; border:1px solid var(--sb-line) !important; border-radius:12px !important; color:var(--sb-ink) !important; font-weight:700; min-height:40px; box-shadow:none !important; }
.sb-lg .glass-panel .glass-panel input:not([type=checkbox]):not([type=radio]):not([type=range]), .sb-lg .glass-panel .glass-panel select { background:var(--sb-sheet) !important; }
.sb-lg input:focus, .sb-lg select:focus, .sb-lg textarea:focus { border-color:var(--sb-sky) !important; outline:2px solid var(--sb-sky-tint); outline-offset:0; }
.sb-lg input::placeholder { color:var(--sb-muted); opacity:.8; }
.sb-lg label { color:var(--sb-muted) !important; font-weight:800 !important; }
.sb-lg input[type=range] { accent-color:var(--sb-sky); }
/* الأزرار: الإجراء أزرق، الشراء أخضر، البيع/الحذف أحمر، الثانوي ورقي */
.sb-lg button[class*="bg-indigo-"], .sb-lg button[class*="bg-sky-"], .sb-lg button[class*="bg-blue-"], .sb-lg button[class*="bg-violet-"], .sb-lg button[class*="bg-teal-"], .sb-lg button[class*="bg-amber-"], .sb-lg button[class*="bg-purple-"], .sb-lg button[class*="bg-cyan-"], .sb-lg label[class*="bg-indigo-"], .sb-lg a[class*="bg-indigo-"] {
  background:var(--sb-sky) !important; color:var(--sb-sheet) !important; border-color:transparent !important; box-shadow:var(--sb-elev1) !important; background-image:none !important; }
.sb-lg button[class*="bg-emerald-"]:not([class*="/10"]):not([class*="/15"]), .sb-lg button[class*="bg-green-"] { background:var(--sb-buy, #047857) !important; color:#fff !important; background-image:none !important; }
.sb-lg button[class*="bg-rose-"]:not([class*="/10"]):not([class*="/15"]), .sb-lg button[class*="bg-red-"] { background:var(--sb-sell, #BE123C) !important; color:#fff !important; background-image:none !important; }
.sb-lg button[class*="/10"], .sb-lg button[class*="/15"], .sb-lg button[class*="/20"] { background:var(--sb-sky-tint) !important; color:var(--sb-sky) !important; border-color:transparent !important; }
.sb-lg button[class*="bg-slate-"], .sb-lg button[class*="bg-white"] { background:var(--sb-sheet) !important; color:var(--sb-ink) !important; border:1px solid var(--sb-line) !important; box-shadow:var(--sb-elev1) !important; }
.sb-lg .glass-panel button[class*="bg-slate-"] { background:var(--sb-sunk) !important; box-shadow:none !important; }
.sb-lg button { border-radius:12px; font-weight:800; }
.sb-lg button:focus-visible { outline:2px solid var(--sb-sky); outline-offset:2px; }
/* أزرار الفترات (أسبوع/شهر/سنة…) مثل مقطّع التصميم */
.sb-lg .perf-period-btn, .sb-lg .analysis-range-btn, .sb-lg .v2-chip { background:var(--sb-sunk) !important; color:var(--sb-muted) !important; border:0 !important; border-radius:999px !important; font-size:11px !important; font-weight:800 !important; box-shadow:none !important; }
.sb-lg .perf-period-btn[class*="bg-indigo"], .sb-lg .perf-period-btn.active, .sb-lg .analysis-range-btn[class*="bg-indigo"], .sb-lg .analysis-range-btn.active, .sb-lg .v2-chip.active, .sb-lg .v2-chip[aria-pressed=true] { background:var(--sb-sheet) !important; color:var(--sb-sky) !important; box-shadow:var(--sb-elev1) !important; }
/* الشارات الملوّنة */
.sb-lg span[class*="bg-emerald-500/"], .sb-lg span[class*="bg-green-500/"] { background:var(--sb-gain-bg) !important; color:var(--sb-gain) !important; border-color:transparent !important; }
.sb-lg span[class*="bg-rose-500/"], .sb-lg span[class*="bg-red-500/"] { background:var(--sb-loss-bg) !important; color:var(--sb-loss) !important; border-color:transparent !important; }
.sb-lg span[class*="bg-indigo-500/"], .sb-lg span[class*="bg-sky-500/"], .sb-lg span[class*="bg-violet-500/"], .sb-lg span[class*="bg-teal-500/"], .sb-lg span[class*="bg-amber-500/"] { background:var(--sb-sunk) !important; color:var(--sb-ink2) !important; border-color:transparent !important; }
/* الأرقام الكبيرة */
.sb-lg .text-2xl, .sb-lg .text-xl, .sb-lg .text-lg.font-black { font-weight:900 !important; letter-spacing:-.01em; font-variant-numeric:tabular-nums; }
/* حالات فارغة */
.sb-lg .v2-empty { background:var(--sb-sunk); border-radius:16px; border:0; }
.sb-lg .v2-empty-ico { background:var(--sb-sheet) !important; color:var(--sb-ink2) !important; }
/* بطاقات الأسهم القديمة (جدول المراكز على الموبايل) */
.sb-lg .v2-stock-card { background:var(--sb-sheet) !important; border:1px solid var(--sb-line) !important; border-radius:20px !important; box-shadow:var(--sb-elev1) !important; }
.sb-lg .v2-stock-actions { border-color:var(--sb-line) !important; }
.sb-lg .v2-bar { background:var(--sb-sunk) !important; }
/* أشرطة التقدم */
.sb-lg div[class*="h-2"][class*="rounded-full"][class*="bg-slate-"], .sb-lg div[class*="h-1.5"][class*="rounded-full"][class*="bg-slate-"] { background:var(--sb-sunk) !important; }

/* ---------- عائدك الحقيقي، ملخص الأسهم ---------- */
.sb-ret { grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); margin-top:4px; }
.sb-ret .sb-stat { display:flex; flex-direction:column; gap:2px; }
.sb-ret .sb-stat .v { font-size:22px; }
.sb-cd { display:flex; align-items:center; gap:6px; margin-top:8px; font-size:11px; font-weight:800; color:var(--sb-muted); }
.sb-cd input { width:70px; min-height:30px; border-radius:10px; border:1px solid var(--sb-line); background:var(--sb-sheet); color:var(--sb-ink); font:inherit; font-weight:900; text-align:center; padding:2px 6px; }
.sb-cd input:focus { outline:2px solid var(--sb-sky-tint); border-color:var(--sb-sky); }
.sb-hsum { margin-top:0; margin-bottom:16px; }
.sb-hsum .sb-stat { background:var(--sb-sheet); border:1px solid var(--sb-line); box-shadow:var(--sb-elev1); }

/* ---------- الصورة الشخصية ---------- */
.sb-av.has-photo { background-size:cover; background-position:center; background-repeat:no-repeat; font-size:0; }
.sb-avedit { position:relative; border:0; background:none; padding:0; cursor:pointer; border-radius:20px; flex:none; }
.sb-avedit .cam { position:absolute; inset-inline-end:-4px; inset-block-end:-4px; width:24px; height:24px; border-radius:50%; background:var(--sb-sheet); border:1px solid var(--sb-line); display:grid; place-items:center; box-shadow:var(--sb-elev1); color:var(--sb-ink2); }
.sb-avedit .cam svg { width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.sb-avedit:hover .cam { color:var(--sb-sky); border-color:var(--sb-sky); }
.sb-avedit:focus-visible { outline:2px solid var(--sb-sky); outline-offset:3px; }

/* ---------- مراجعة الأسبوع (صفحة التحليل) ---------- */
.sb-weekly .sb-wells { margin-top:0; }
.sb-weekly .sb-wk > div { padding:12px 14px; }
.sb-weekly .sb-wk .sub { font-size:11px; color:var(--sb-muted); font-weight:700; margin-top:2px; }
.sb-weekly .sb-wk .v { font-size:17px; }
.sb-weekly .sb-wk-foot { margin:12px 0 0; }
.sb-weekly #weekly-ai-section > div { display:flex; align-items:center; justify-content:space-between; margin-bottom:6px; }
.sb-weekly .sb-ai-h { margin:0; font-size:12.5px; font-weight:900; color:var(--sb-ink); display:flex; align-items:center; gap:8px; }
.sb-weekly .sb-ai-h i { color:var(--sb-sky); font-size:12px; }
.sb-weekly .sb-ai-text { white-space:pre-line; margin:0; color:var(--sb-ink2); line-height:1.8; }
.sb-weekly #weekly-ai-refresh-btn { width:40px; height:40px; display:grid; place-items:center; border-radius:12px; border:0; background:transparent; color:var(--sb-muted); cursor:pointer; }
.sb-weekly #weekly-ai-refresh-btn:hover { background:var(--sb-sunk); color:var(--sb-ink); }
@media (max-width: 760px) { .sb-weekly .sb-wk { grid-template-columns:1fr; } }

/* ---------- إصلاحات التدقيق: تباين، أهداف لمس، أحجام نص ---------- */
/* بلاطة القيمة النهائية (كانت تدرّجًا بنصّ أبيض): خلفية سماوية هادئة ونص داكن */
.sb-lg div[class*="from-"][class*="text-white"] { background:var(--sb-sky-tint) !important; color:var(--sb-ink) !important; }
.sb-lg div[class*="from-"][class*="text-white"] * { color:inherit !important; }
/* أزرار التدرّج القديمة = لون الإجراء الوحيد */
button[class*="bg-gradient-to"] { background:var(--sb-sky, #0369A1) !important; background-image:none !important; color:var(--sb-sheet, #F4F1EA) !important; }
/* نص حمراء قديمة: درجة الخسارة المعتمدة بدل rose-500 (3.6 / 4.3) */
html:not(.dark) .text-rose-500 { color:#C62222; }
.dark .text-rose-500 { color:#FF8A80; }
/* النص الوظيفي لا ينزل عن 11px */
.sb-lg [class*="text-[10px]"], .sb-lg [class*="text-[10.5px]"], .sb-lg [class*="text-[9px]"] { font-size:11px !important; }
.sb-rs, .sb-badge { font-size:11px; }
/* أهداف اللمس: المظهر مدمج، والمساحة القابلة للنقر 44px بامتداد غير مرئي */
.sb-seg button, .sb-tabs-s button, .sb-chips button, .sb-link, .sb-switch, .perf-period-btn, .sb-lg button[class*="p-1"], .sb-lg button[class*="py-1"] { position:relative; min-height:28px; }
.sb-seg button::after, .sb-tabs-s button::after, .sb-chips button::after, .sb-link::after, .sb-switch::after, .perf-period-btn::after, .sb-lg button[class*="p-1"]::after, .sb-lg button[class*="py-1"]::after { content:""; position:absolute; inset:-8px -2px; }
@media (pointer: fine) { .sb-seg button, .sb-tabs-s button, .sb-chips button, .perf-period-btn { min-height:32px; } }
.sb-lg button[class*="p-2"] { min-width:36px; min-height:36px; }
.sb-cd input, .sb-lg input[type=number] { min-height:36px; }
/* جدول ضبط الإشارات وأي جدول عريض: التمرير داخل الحاوية لا في الصفحة */
.sb-lg { min-width:0; max-width:100%; }
.sb-lg div.overflow-x-auto { max-width:100%; }
.sb-lg .glass-panel { min-width:0; }
/* رأس صفحة الإشارات: أزرار الإجراء تلتفّ بدل أن توسّع الصفحة على الموبايل */
#signals-tab .flex.items-center.gap-2 { flex-wrap:wrap; max-width:100%; }

/* ---------- بطاقة السهم: شعار الشركة، والتذييل (العدد يمينًا والمتوسط يسارًا) ---------- */
.sb-badge.has-logo { background:var(--sb-sunk) !important; padding:0; overflow:hidden; color:transparent; }
.sb-badge.has-logo img { width:100%; height:100%; object-fit:cover; display:block; border-radius:inherit; }
.sb-hc .ft > span:last-child { flex:none; text-align:start; }

/* ---------- بطاقة السهم: الشعار يملأ مربعه والاسم يلتف على سطرين ---------- */
.sb-badge.has-logo { position:relative; display:block; }
.sb-badge.has-logo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.sb-hc .hd { align-items:center; }
.sb-hc .nm { white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.35; }
/* ---------- النوافذ بتصميم التطبيق: رموز + ورقة ---------- */
.sb-modal { background:rgba(10,16,28,.62); }
.sb-sheetmodal { background:var(--sb-sheet) !important; color:var(--sb-ink); border:1px solid var(--sb-line) !important; border-radius:22px !important; box-shadow:var(--sb-elev2), 0 30px 60px -20px rgba(13,22,38,.4); padding:22px; }
.sb-sheetmodal h2 { font-size:16px !important; padding-inline-end:36px; }
.sb-sheetmodal > button[data-h-click^="close"] { position:absolute; top:12px; inset-inline-end:12px; width:36px; height:36px; display:grid; place-items:center; border-radius:12px; color:var(--sb-muted) !important; }
.sb-sheetmodal > button[data-h-click^="close"]:hover { background:var(--sb-sunk); color:var(--sb-ink) !important; }
.sb-sheetmodal #archive-lookup-tool { background:var(--sb-sunk) !important; border-radius:18px !important; padding:14px !important; }
.sb-sheetmodal #archive-lookup-tool input, .sb-sheetmodal .flex.gap-2.mb-4 input { background:var(--sb-sheet) !important; }
.sb-sheetmodal .flex.gap-2.mb-4 { background:var(--sb-sunk) !important; border-radius:18px !important; }
.sb-sheetmodal .archive-range-chip { background:var(--sb-sheet) !important; color:var(--sb-ink2) !important; border:1px solid var(--sb-line) !important; border-radius:999px !important; min-height:36px; }
.sb-sheetmodal .archive-range-chip.archive-range-chip-active { background:var(--sb-sky-tint) !important; color:var(--sb-sky) !important; border-color:transparent !important; }
.sb-sheetmodal #stock-archive-entries-list > div { background:var(--sb-sunk) !important; border-radius:12px !important; }

/* نوافذ التصميم: زر الإغلاق بحجم لمس كافٍ، وأخضر الربح القديم بدرجة التصميم في الفاتح */
.sb-modal [data-h-click^="close"] { min-width:40px; min-height:40px; }
html:not(.dark) .text-emerald-600, html:not(.dark) .text-emerald-700 { color:#0A6F4E; }

/* تواريخ المحاور بالعربية: رقم اليوم عن يمين اسم الشهر (اتجاه النص من أول حرف قوي) */
.sb svg text { unicode-bidi:plaintext; }
/* بطاقة السهم: الرمز بجوار الشعار من أول السطر، والنسبة في أعلى الطرف المقابل */
.sb-hc .hd { align-items:flex-start; }
.sb-hc .sy { direction:inherit; unicode-bidi:isolate; text-align:start; }
.sb-hc .day { align-self:flex-start; }

/* ========== مراجعة النقد: العائد في التحليل، «المزيد» في الشريط السفلي، الأسهم أخفّ، دفتر الأستاذ في الداكن ========== */
.sb-returns .sb-ret-act { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; margin-top:12px; padding:10px 14px; border-radius:14px; background:var(--sb-sky-tint); color:var(--sb-ink2); font-size:12.5px; font-weight:700; }
.sb-returns .sb-ret-act[hidden] { display:none; }
.sb-returns .sb-ret-act .sb-link { margin:0; font-weight:900; }
.sb-returns .sb-ret-h { margin:18px 0 0; font-size:13px; font-weight:900; color:var(--sb-ink); }
.sb-returns .sb-brk { grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:8px; }
.sb-stat .k, .sb-stat .s, .sb-wells .k, .sb-door .s { font-size:12px; }
@media (max-width:767px) {
  .sb-returns .sb-brk { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sb-hsum .sb-stat:nth-child(n+3) { display:none; }
}
.sb-eye::after, .sb-more-i::after { content:""; position:absolute; inset:-6px -2px; }
.sb-eye { position:relative; min-height:32px; }

/* الشريط السفلي: ورقة «المزيد» */
.sb-tabbar { position:sticky; }
.sb-more { position:absolute; inset-inline-end:6px; bottom:calc(100% + 10px); z-index:41; min-width:210px; display:grid; gap:2px; padding:6px; background:var(--sb-sheet); border:1px solid var(--sb-line); border-radius:20px; box-shadow:var(--sb-elev2), 0 18px 40px -18px rgba(13,22,38,.4); }
.sb-more[hidden] { display:none; }
.sb-more-i { position:relative; display:flex; align-items:center; gap:12px; min-height:44px; padding:0 14px; border:0; border-radius:14px; background:transparent; color:var(--sb-ink); font-size:13.5px; font-weight:800; cursor:pointer; text-align:start; }
.sb-more-i svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; color:var(--sb-muted); }
.sb-more-i:hover { background:var(--sb-sunk); }
.sb-more-i[aria-current=page] { background:var(--sb-sky-tint); color:var(--sb-sky); }
.sb-more-i[aria-current=page] svg { color:var(--sb-sky); }
@media (prefers-reduced-motion: no-preference) { .sb-more:not([hidden]) { animation:sbRise .22s cubic-bezier(.16,1,.3,1) both; } }

/* الأسهم: بطاقة الإعداد سطر واحد بعد أول سهم حقيقي */
.onb-fold { border-radius:16px; }
.onb-fold > summary { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; cursor:pointer; list-style:none; font-size:13px; font-weight:900; color:var(--sb-ink); }
.onb-fold > summary::-webkit-details-marker { display:none; }
.onb-fold > summary::after { content:""; width:8px; height:8px; border-inline-end:2px solid var(--sb-muted); border-bottom:2px solid var(--sb-muted); transform:rotate(45deg); transition:transform .2s; margin-inline-start:auto; }
.onb-fold[open] > summary::after { transform:rotate(225deg); }
.onb-fold > summary .n { color:var(--sb-muted); font-weight:800; }
.onb-fold-b { padding-top:10px; }
.sb-hc .spark.empty { display:none; }

/* الداكن: صفحة دفتر، سطور أفقية خافتة وخطّ مزدوج تحت عناوين البطاقات */
.dark .sb { background-image:repeating-linear-gradient(to bottom, transparent 0, transparent 31px, rgba(238,242,248,.028) 31px, rgba(238,242,248,.028) 32px); }
.dark .sb-card > h2:first-child, .dark .sb-card > .sb-ch:first-child { padding-bottom:10px; margin-bottom:10px; border-bottom:3px double rgba(238,242,248,.14); }
.dark .sb-card > .sb-ch:first-child h2 { margin:0; }
.dark .sb-card { box-shadow:inset 0 1px 0 rgba(238,242,248,.05), var(--sb-elev1); }
.dark .sb-stat, .dark .sb-wells > div { border:1px solid rgba(238,242,248,.06); }

/* الإعدادات: ما نادرًا ما يُغيَّر يُطوى تحت سطر واحد */
.sb-fold { margin-top:6px; border-top:1px solid var(--sb-line); }
.sb-fold > summary { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; cursor:pointer; list-style:none; font-size:12.5px; font-weight:800; color:var(--sb-ink2); }
.sb-fold > summary::-webkit-details-marker { display:none; }
.sb-fold > summary::after { content:""; width:7px; height:7px; border-inline-end:2px solid var(--sb-muted); border-bottom:2px solid var(--sb-muted); transform:rotate(45deg); transition:transform .2s; }
.sb-fold[open] > summary::after { transform:rotate(225deg); }
.sb-fold > summary:hover { color:var(--sb-ink); }

/* مراجعة التدقيق: هدف حذف التوزيع، ونصوص الصفحات القديمة لا تقل عن 11–12px */
button[data-h-click="deleteDividend"] { min-width:36px; min-height:36px; }
.sb-lg .text-\[9px\], .sb-lg .text-\[10px\] { font-size:11px; }
.sb-lg .text-\[11px\] { font-size:12px; }

/* بطاقات داخل بطاقات (الصفحات القديمة): المربعات الداخلية تُميَّز بخلفية غائرة فقط، بلا إطار ولا ظل */
.sb-lg :is(.glass-panel, .sb-card, [class*="rounded-2xl"]) div[class*="rounded-xl"][class*="border"]:not([class*="rounded-2xl"]),
.sb-lg :is(.glass-panel, .sb-card) :is(.paper-tile, .v2-tile) { border:0; box-shadow:none; }
.sb-lg :is(.glass-panel, .sb-card, [class*="rounded-2xl"]) div[class*="rounded-xl"][class*="border"]:not([class*="rounded-2xl"]):not([class*="bg-"]) { background:var(--sb-sunk); }
.sb-lg :is(.glass-panel, .sb-card) div.overflow-x-auto { border:0 !important; background:transparent !important; box-shadow:none !important; border-radius:0 !important; }
.sb-card :is(.v2-tile, .paper-tile), .paper-card .paper-tile { border:0; box-shadow:none; }
.sb-card .glass-panel, .sb-lg .glass-panel .glass-panel { border:0 !important; background:var(--sb-sunk) !important; }
.sb-lg .glass-panel [class*="rounded-2xl"][class*="bg-rose-50"], .sb-lg .glass-panel [class*="rounded-2xl"][class*="bg-amber-50"] { border:0 !important; }
