*{box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#333;margin:0;padding:0}.container{max-width:1200px;margin:0 auto;padding:0 20px}.container-fluid{width:100%;padding:0 20px}.text-primary{color:#333!important}.text-secondary{color:#666!important}.text-muted{color:#999!important}.text-light{color:#fff!important}.text-success{color:#28a745!important}.text-danger{color:#dc3545!important}.text-warning{color:#ffc107!important}.text-info{color:#17a2b8!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.font-xs{font-size:.75rem!important}.font-sm{font-size:.875rem!important}.font-base{font-size:1rem!important}.font-lg{font-size:1.125rem!important}.font-xl{font-size:1.25rem!important}.font-xxl{font-size:1.5rem!important}.font-light{font-weight:300!important}.font-normal{font-weight:400!important}.font-medium{font-weight:500!important}.font-semibold{font-weight:600!important}.font-bold{font-weight:700!important}.bg-primary{background-color:#007bff!important}.bg-secondary{background-color:#6c757d!important}.bg-light{background-color:#f8f9fa!important}.bg-dark{background-color:#343a40!important}.bg-success{background-color:#28a745!important}.bg-danger{background-color:#dc3545!important}.bg-warning{background-color:#ffc107!important}.bg-info{background-color:#17a2b8!important}.m-0{margin:0!important}.m-sm{margin:.5rem!important}.m-base{margin:1rem!important}.m-lg{margin:1.5rem!important}.m-xl{margin:3rem!important}.p-0{padding:0!important}.p-sm{padding:.5rem!important}.p-base{padding:1rem!important}.p-lg{padding:1.5rem!important}.p-xl{padding:3rem!important}.mt-0{margin-top:0!important}.mt-sm{margin-top:.5rem!important}.mt-base{margin-top:1rem!important}.mt-lg{margin-top:1.5rem!important}.mt-xl{margin-top:3rem!important}.mb-0{margin-bottom:0!important}.mb-sm{margin-bottom:.5rem!important}.mb-base{margin-bottom:1rem!important}.mb-lg{margin-bottom:1.5rem!important}.mb-xl{margin-bottom:3rem!important}.ml-0{margin-left:0!important}.ml-sm{margin-left:.5rem!important}.ml-base{margin-left:1rem!important}.ml-lg{margin-left:1.5rem!important}.ml-xl{margin-left:3rem!important}.mr-0{margin-right:0!important}.mr-sm{margin-right:.5rem!important}.mr-base{margin-right:1rem!important}.mr-lg{margin-right:1.5rem!important}.mr-xl{margin-right:3rem!important}.pt-0{padding-top:0!important}.pt-sm{padding-top:.5rem!important}.pt-base{padding-top:1rem!important}.pt-lg{padding-top:1.5rem!important}.pt-xl{padding-top:3rem!important}.pb-0{padding-bottom:0!important}.pb-sm{padding-bottom:.5rem!important}.pb-base{padding-bottom:1rem!important}.pb-lg{padding-bottom:1.5rem!important}.pb-xl{padding-bottom:3rem!important}.pl-0{padding-left:0!important}.pl-sm{padding-left:.5rem!important}.pl-base{padding-left:1rem!important}.pl-lg{padding-left:1.5rem!important}.pl-xl{padding-left:3rem!important}.pr-0{padding-right:0!important}.pr-sm{padding-right:.5rem!important}.pr-base{padding-right:1rem!important}.pr-lg{padding-right:1.5rem!important}.pr-xl{padding-right:3rem!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.flex-column{flex-direction:column!important}.flex-row{flex-direction:row!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.btn{display:inline-block;padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;text-align:center;vertical-align:middle;line-height:1.5}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#1e7e34}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-warning{background-color:#ffc107;color:#212529}.btn-warning:hover{background-color:#e0a800}.btn-info{background-color:#17a2b8;color:#fff}.btn-info:hover{background-color:#138496}.btn-light{background-color:#f8f9fa;color:#212529;border:1px solid #dee2e6}.btn-light:hover{background-color:#e2e6ea}.card{background:#fff;border-radius:8px;box-shadow:0 4px 8px rgba(0,0,0,.15);padding:1.5rem;transition:all .3s ease;border:1px solid rgba(0,0,0,.125)}.card:hover{box-shadow:0 8px 16px rgba(0,0,0,.2)}.card-header{padding:1rem 1.5rem;margin:-1.5rem -1.5rem 1rem -1.5rem;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;border-radius:8px 8px 0 0}.card-body{padding:0}.card-footer{padding:1rem 1.5rem;margin:1rem -1.5rem -1.5rem -1.5rem;background-color:#f8f9fa;border-top:1px solid #dee2e6;border-radius:0 0 8px 8px}.card-title{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:#333}.card-text{color:#666;line-height:1.6}.table{width:100%;border-collapse:collapse;margin-bottom:1rem}.table td,.table th{padding:.75rem;text-align:left;border-bottom:1px solid #dee2e6}.table th{font-weight:600;color:#333}.table tbody tr:hover,.table th{background-color:#f8f9fa}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis-2{-webkit-line-clamp:2}.text-ellipsis-2,.text-ellipsis-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.text-ellipsis-3{-webkit-line-clamp:3}.d-none{display:none!important}.d-block{display:block!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.shadow-sm{box-shadow:0 2px 4px rgba(0,0,0,.1)!important}.shadow-md{box-shadow:0 4px 8px rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 8px 16px rgba(0,0,0,.2)!important}.rounded-sm{border-radius:4px!important}.rounded{border-radius:6px!important}.rounded-lg{border-radius:8px!important}.rounded-circle{border-radius:50%!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}.clearfix:after{content:"";display:table;clear:both}.transition-fast{transition:all .15s ease!important}.transition-base{transition:all .3s ease!important}.transition-slow{transition:all .5s ease!important}.cursor-pointer{cursor:pointer!important}.cursor-default{cursor:default!important}.cursor-not-allowed{cursor:not-allowed!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.user-select-text{-webkit-user-select:text!important;-moz-user-select:text!important;user-select:text!important}.overflow-hidden{overflow:hidden!important}.overflow-scroll{overflow:scroll!important}.overflow-auto{overflow:auto!important}@media (max-width:767px){.d-sm-none{display:none!important}.d-sm-block{display:block!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.text-sm-left{text-align:left!important}.text-sm-center{text-align:center!important}.text-sm-right{text-align:right!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row{flex-direction:row!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-end{justify-content:flex-end!important}}@media (max-width:991px){.d-md-none{display:none!important}.d-md-block{display:block!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.text-md-left{text-align:left!important}.text-md-center{text-align:center!important}.text-md-right{text-align:right!important}.flex-md-column{flex-direction:column!important}.flex-md-row{flex-direction:row!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-end{justify-content:flex-end!important}}.hero-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4rem 0;text-align:center}.hero-title{font-size:3rem;font-weight:700;margin-bottom:1rem}.hero-subtitle{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.section-title{font-size:2.5rem;font-weight:700;color:#333;text-align:center;margin-bottom:1rem}.section-subtitle{font-size:1.2rem;color:#666;text-align:center;margin-bottom:3rem}.grid{display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.section-title{font-size:2rem}}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}.scrollbar-thin::-webkit-scrollbar{width:6px;height:6px}.scrollbar-thin::-webkit-scrollbar-track{background:transparent}.scrollbar-thin::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);border-radius:3px}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background-color:rgba(0,0,0,.4)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}.slide-in-up{animation:slideInUp .5s ease-out}.slide-in-down{animation:slideInDown .5s ease-out}