:root{--breakpoint-xs:320px;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px}@media (max-width:480px){.container-responsive{padding:.75rem}}@media (min-width:481px){.container-responsive{padding:1.5rem}}.text-fluid-sm{font-size:clamp(.875rem,2vw,1rem)}.text-fluid-base{font-size:clamp(1rem,2.5vw,1.125rem)}.text-fluid-lg{font-size:clamp(1.125rem,3vw,1.25rem)}.text-fluid-xl{font-size:clamp(1.25rem,4vw,1.5rem)}.text-fluid-2xl{font-size:clamp(1.5rem,5vw,2rem)}.text-fluid-3xl{font-size:clamp(1.875rem,6vw,2.5rem)}.space-responsive-x>*+*{margin-left:clamp(.5rem,2vw,1rem)}.space-responsive-y>*+*{margin-top:clamp(.5rem,2vh,1rem)}.grid-adaptive{display:grid;gap:clamp(1rem,3vw,2rem);grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}.grid-adaptive-sm{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))}.grid-adaptive-lg{grid-template-columns:repeat(auto-fit,minmax(min(350px,100%),1fr))}.card-professional{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:clamp(.5rem,2vw,1rem);padding:clamp(1rem,3vw,2rem);box-shadow:0 1px 3px 0 hsl(var(--foreground)/.1);transition:all .2s ease-in-out}.card-professional:hover{box-shadow:0 4px 12px 0 hsl(var(--foreground)/.15);transform:translateY(-1px)}.btn-responsive-sm{padding:clamp(.5rem,2vw,.75rem) clamp(.75rem,3vw,1rem);font-size:clamp(.875rem,2vw,1rem);min-height:clamp(2.25rem,8vw,2.5rem)}.btn-responsive-md{padding:clamp(.625rem,2.5vw,.875rem) clamp(1rem,4vw,1.5rem);font-size:clamp(1rem,2.5vw,1.125rem);min-height:clamp(2.5rem,10vw,3rem)}.btn-responsive-lg{padding:clamp(.75rem,3vw,1rem) clamp(1.25rem,5vw,2rem);font-size:clamp(1.125rem,3vw,1.25rem);min-height:clamp(2.75rem,12vw,3.5rem)}.touch-optimized{min-height:44px;min-width:44px;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent}.touch-optimized:active{transform:scale(.98);transition:transform .1s ease-out}.nav-responsive{display:flex;flex-direction:column;gap:.5rem}@media (min-width:768px){.nav-responsive{flex-direction:row;gap:1rem}}.sidebar-adaptive{width:100%;max-width:320px;transform:translateX(-100%);transition:transform .3s ease-in-out}.sidebar-adaptive.open{transform:translateX(0)}@media (min-width:1024px){.sidebar-adaptive{position:relative;transform:translateX(0);width:clamp(280px,25vw,400px)}}.content-responsive{padding:clamp(1rem,4vw,2rem);max-width:100%;overflow-x:hidden}.form-responsive{display:grid;gap:clamp(1rem,3vw,1.5rem);grid-template-columns:1fr}@media (min-width:768px){.form-responsive{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive table{min-width:600px}.text-responsive-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.text-responsive-truncate-sm{max-width:clamp(120px,25vw,200px)}.text-responsive-truncate-md{max-width:clamp(200px,40vw,300px)}.text-responsive-truncate-lg{max-width:clamp(300px,60vw,500px)}.text-responsive-truncate-xl{max-width:clamp(400px,80vw,700px)}.topic-title-responsive{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:clamp(150px,30vw,400px);display:block}@media (min-width:640px){.topic-title-responsive{max-width:clamp(200px,40vw,500px)}}@media (min-width:768px){.topic-title-responsive{max-width:clamp(250px,50vw,600px)}}@media (min-width:1024px){.topic-title-responsive{max-width:clamp(300px,60vw,700px)}}@media (min-width:1280px){.topic-title-responsive{max-width:clamp(400px,70vw,800px)}}.sidebar-topic-title{max-width:100%;display:block}.sidebar-topic-title,.topic-title-professional{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.topic-title-professional{font-weight:500;letter-spacing:-.01em;transition:all .2s ease-in-out}.topic-title-professional:hover{color:rgb(59 130 246)}.sidebar-item-professional{transition:all .2s cubic-bezier(.4,0,.2,1);min-width:0;position:relative}.sidebar-item-professional:hover{transform:translateX(1px)}.sidebar-item-professional:active{transform:scale(.99)}.course-expand-enter{animation:courseExpand .25s cubic-bezier(.4,0,.2,1) forwards}@keyframes courseExpand{0%{opacity:0;max-height:0;transform:translateY(-8px)}to{opacity:1;max-height:2000px;transform:translateY(0)}}.topic-list-expand{animation:topicListExpand .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes topicListExpand{0%{opacity:0;max-height:0;transform:translateY(-8px)}to{opacity:1;max-height:3000px;transform:translateY(0)}}.topic-content-expand{animation:topicContentExpand .25s cubic-bezier(.4,0,.2,1) forwards}@keyframes topicContentExpand{0%{opacity:0;max-height:0;transform:translateY(-6px)}to{opacity:1;max-height:2000px;transform:translateY(0)}}.topic-content-enter-active{animation:slideDown .25s cubic-bezier(.4,0,.2,1) forwards;min-width:0;overflow:visible}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px);max-height:0}to{opacity:1;transform:translateY(0);max-height:2000px}}.topic-list-expand>*{animation:topicItemFadeIn .2s cubic-bezier(.4,0,.2,1) forwards;opacity:0}.topic-list-expand>:first-child{animation-delay:.03s}.topic-list-expand>:nth-child(2){animation-delay:.06s}.topic-list-expand>:nth-child(3){animation-delay:.09s}.topic-list-expand>:nth-child(4){animation-delay:.12s}.topic-list-expand>:nth-child(n+5){animation-delay:.15s}@keyframes topicItemFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.topic-content-expand>*{animation:contentItemFadeIn .15s cubic-bezier(.4,0,.2,1) forwards;opacity:0}.topic-content-expand>:first-child{animation-delay:.02s}.topic-content-expand>:nth-child(2){animation-delay:.04s}.topic-content-expand>:nth-child(3){animation-delay:.06s}.topic-content-expand>:nth-child(n+4){animation-delay:.08s}@keyframes contentItemFadeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.topic-content-enter-active>*{animation:fadeIn .2s ease-out forwards;opacity:0}.topic-content-enter-active>:first-child{animation-delay:.05s}.topic-content-enter-active>:nth-child(2){animation-delay:.08s}.topic-content-enter-active>:nth-child(3){animation-delay:.11s}.topic-content-enter-active>:nth-child(4){animation-delay:.14s}.topic-content-enter-active>:nth-child(n+5){animation-delay:.17s}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (min-width:768px){.topic-content-enter-active{margin-top:.25rem}.sidebar-item-professional{margin-bottom:.125rem}}.topic-content-enter-active>*{min-width:0;max-width:100%}.topic-content-enter-active button span{display:block;word-break:break-word;overflow-wrap:anywhere;line-height:1.5}.sidebar-item-professional svg,.topic-content-enter-active button svg{transition:all .25s cubic-bezier(.4,0,.2,1)}.sidebar-item-professional[aria-expanded=true]>button>div>svg:first-child,button[aria-expanded=true] svg{transform:rotate(0deg);color:rgb(59 130 246)}.sidebar-item-professional:hover>button>div>svg:first-child{transform:scale(1.15);color:rgb(59 130 246)}.topic-item-container{transition:all .2s cubic-bezier(.4,0,.2,1);border-radius:.5rem;overflow:hidden}.topic-item-expanded{background:linear-gradient(135deg,rgba(59,130,246,.08),rgba(99,102,241,.06));border:1px solid rgba(59,130,246,.2);box-shadow:0 3px 10px -2px rgba(59,130,246,.15),inset 0 1px 0 0 rgba(255,255,255,.1)}.content-section{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:.5rem;backdrop-filter:blur(10px)}.content-section-header{background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(99,102,241,.05));border-bottom:1px solid rgba(59,130,246,.1)}.content-item{transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.content-item:hover{transform:translateX(2px)}.content-item:active{transform:scale(.99)}.sidebar-item-professional{transition:all .15s ease}.topic-content-enter-active{position:relative}.line-clamp-1{-webkit-line-clamp:1;line-clamp:1}.line-clamp-1,.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;line-clamp:2}.badge-professional{font-size:.75rem;font-weight:600;padding:.125rem .5rem;border-radius:9999px;background:linear-gradient(135deg,rgb(99 102 241),rgb(139 92 246));color:white;border:none;box-shadow:0 1px 2px rgba(0,0,0,.1)}.table-professional{border-collapse:separate;border-spacing:0}.table-professional th{background:linear-gradient(135deg,rgb(248 250 252),rgb(241 245 249));font-weight:600;font-size:.875rem;letter-spacing:.025em;color:rgb(51 65 85);border-bottom:2px solid rgb(226 232 240)}.table-professional td{border-bottom:1px solid rgb(241 245 249);transition:background-color .15s ease-in-out}.table-professional tr:hover td{background-color:rgb(248 250 252)}.text-truncate-fade{position:relative;overflow:hidden;white-space:nowrap}.text-truncate-fade:after{content:"";position:absolute;right:0;top:0;bottom:0;width:20px;background:linear-gradient(90deg,transparent,currentColor);opacity:0;transition:opacity .2s ease-in-out}.text-truncate-fade.truncated:after{opacity:.1}.loading-professional{background:linear-gradient(90deg,rgba(226,232,240,.3) 25%,rgba(226,232,240,.5) 50%,rgba(226,232,240,.3) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (max-width:767px){.touch-optimized-button{min-height:44px;min-width:44px;padding:.75rem;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent}.mobile-sidebar{overflow-x:hidden;-webkit-overflow-scrolling:touch}.mobile-course-item{border-radius:.75rem;padding:.75rem;margin-bottom:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:all .2s ease-in-out}.mobile-course-item:active{transform:scale(.98);box-shadow:0 2px 8px rgba(0,0,0,.15)}.mobile-topic-item{padding:.625rem;border-radius:.5rem;margin:.25rem 0;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05)}.mobile-topic-item:active{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.2)}.mobile-content-item{padding:.5rem;border-radius:.375rem;margin:.125rem 0;min-height:40px;display:flex;align-items:center}.mobile-content-item:active{background:rgba(59,130,246,.08)}.mobile-title{font-size:.875rem;font-weight:600;line-height:1.25}.mobile-subtitle{font-size:.75rem;font-weight:500;line-height:1.2}.mobile-content-text{font-size:.875rem;font-weight:500;line-height:1.3}.mobile-badge{font-size:.75rem;padding:.125rem .375rem;border-radius:.375rem;font-weight:600}.mobile-spacing-tight{gap:.375rem}.mobile-spacing-normal{gap:.5rem}.mobile-spacing-loose{gap:.75rem}}@media (max-width:767px) and (orientation:landscape){.mobile-landscape-compact{padding:.5rem}.mobile-landscape-content,.mobile-landscape-title{font-size:.8125rem}}@media (max-width:767px) and (-webkit-min-device-pixel-ratio:2){.mobile-high-dpi{font-weight:500}.mobile-high-dpi-icon{stroke-width:1.5}}@media (max-width:767px){.content-item,.sidebar-item-professional,.topic-content-enter-active button{-webkit-tap-highlight-color:rgba(59,130,246,.15)}.sidebar-item-professional:active,.topic-content-enter-active button:active{transform:scale(.98);background:rgba(59,130,246,.12)}.sidebar-item-professional button,.topic-content-enter-active button{min-height:44px}.mobile-content-viewer{touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.pt-safe-top{padding-top:max(1rem,env(safe-area-inset-top))}.pb-safe-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.pl-safe-left{padding-left:max(.5rem,env(safe-area-inset-left))}.pr-safe-right{padding-right:max(.5rem,env(safe-area-inset-right))}.mobile-content-viewer iframe{touch-action:manipulation;-webkit-overflow-scrolling:touch;-webkit-user-select:none;user-select:none}.mobile-content-viewer.fixed{top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.mobile-content-viewer .touch-manipulation{min-height:44px;min-width:44px;-webkit-tap-highlight-color:rgba(255,255,255,.1)}.mobile-content-viewer .mobile-bottom-controls{z-index:25;padding-bottom:max(.75rem,env(safe-area-inset-bottom))}}@media (max-width:1024px){.sidebar-topic-title{font-size:.75rem;max-width:calc(100% - 2rem)}}@media (min-width:1024px) and (max-width:1280px){.sidebar-topic-title{font-size:.875rem;max-width:calc(100% - 2.5rem)}}@media (min-width:1280px){.sidebar-topic-title{font-size:.875rem;max-width:calc(100% - 3rem)}}.img-responsive{width:100%;height:auto;object-fit:cover;border-radius:clamp(.25rem,1vw,.5rem)}.video-responsive{position:relative;width:100%;height:0;padding-bottom:56.25%;overflow:hidden;border-radius:clamp(.5rem,2vw,1rem)}.video-responsive iframe,.video-responsive video{position:absolute;top:0;left:0;width:100%;height:100%;border:0}.loading-responsive{display:flex;align-items:center;justify-content:center;min-height:clamp(200px,30vh,400px);padding:clamp(1rem,4vw,2rem)}@media (max-width:767px){.content-responsive{padding:clamp(.5rem,2vw,1rem)}.mobile-text-responsive{font-size:clamp(.875rem,3.5vw,1rem);line-height:1.4}.mobile-title-responsive{font-size:clamp(1rem,4vw,1.25rem);line-height:1.3}.mobile-card-responsive{border-radius:.5rem;padding:.75rem;margin-bottom:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1)}.mobile-btn-responsive{padding:.75rem 1rem;font-size:.875rem;min-height:44px;border-radius:.5rem;font-weight:500}.mobile-gap-tight{gap:.25rem}.mobile-gap-normal{gap:.5rem}.mobile-gap-loose{gap:.75rem}.mobile-grid-responsive{display:grid;grid-template-columns:1fr;gap:.75rem}.mobile-flex-responsive{display:flex;flex-direction:column;gap:.5rem}.mobile-overflow-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.mobile-overflow-responsive::-webkit-scrollbar{height:4px}.mobile-overflow-responsive::-webkit-scrollbar-track{background:transparent}.mobile-overflow-responsive::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:2px}}.error-responsive{text-align:center;padding:clamp(2rem,6vw,4rem);max-width:500px;margin:0 auto}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:high){.btn-responsive-lg,.btn-responsive-md,.btn-responsive-sm,.card-professional{border-width:2px}}@media print{.no-print{display:none!important}.print-break-before{page-break-before:always}.print-break-after{page-break-after:always}}@media (max-width:768px){.topic-content-enter-active{width:100%;overflow-x:hidden}.topic-content-enter-active button{width:100%;padding-left:.5rem;padding-right:.5rem;min-height:40px;align-items:flex-start}.topic-content-enter-active button>div{width:100%;min-width:0;max-width:100%}.topic-content-enter-active button span{font-size:.875rem;line-height:1.6;max-width:100%;overflow:visible;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.sidebar-item-professional{width:100%;overflow:visible}.sidebar-item-professional button{width:100%;overflow:visible;align-items:flex-start}.sidebar-item-professional button>div{width:100%;min-width:0}}@media (min-width:769px){.topic-content-enter-active button{padding:.5rem}.topic-content-enter-active button span{font-size:.875rem;line-height:1.5}}@media (max-width:480px){.topic-content-enter-active{margin-left:.75rem}.topic-content-enter-active button{padding:.5rem .375rem;min-height:36px}.topic-content-enter-active button span{font-size:.8125rem;line-height:1.5}.sidebar-item-professional button{padding:.5rem .375rem}}