.hidden{display:none}:root{--animate-duration:.8s}[data-viewport-animation]{opacity:0;&.in-view{opacity:1}}.animate{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-duration:var(--animate-duration);animation-duration:var(--animate-duration);-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-backface-visibility:hidden;backface-visibility:hidden;will-change:transform,opacity}.fadeIn{animation-name:fadeIn}.fadeInLeft{animation-name:fadeInLeft}.fadeInRight{animation-name:fadeInRight}.fadeInTop{animation-name:fadeInTop}.fadeInBottom{animation-name:fadeInBottom}@keyframes fadeIn{0%{opacity:0;transform:scale(0.95)}100%{opacity:1;transform:scale(1)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-100%) scale(0.9)}100%{opacity:1;transform:translateX(0) scale(1)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(100%) scale(0.9)}100%{opacity:1;transform:translateX(0) scale(1)}}@keyframes fadeInTop{0%{opacity:0;transform:translateY(-100%) scale(0.9)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeInBottom{0%{opacity:0;transform:translateY(100%) scale(0.9)}100%{opacity:1;transform:translateY(0) scale(1)}}:root{--btn-height:40px;--btn-font-size:16px;--btn-font-weight:600;--btn-padding-x:20px;--btn-radius:5px;--btn-sm-height:32px;--btn-sm-font-size:14px;--btn-sm-padding-x:16px;--btn-lg-height:48px;--btn-lg-font-size:18px;--btn-lg-padding-x:24px;--btn-default-bg:#e2e8f0;--btn-default-color:#0f172a;--btn-default-hover-bg:#cbd5e1;--btn-primary-bg:#0f172a;--btn-primary-color:#f8fafc;--btn-primary-hover:#1e293b;--btn-secondary-bg:#f1f5f9;--btn-secondary-color:#0f172a;--btn-secondary-hover:#e2e8f0;--btn-danger-bg:#ef4444;--btn-danger-color:#ffffff;--btn-danger-hover:#dc2626;--btn-outline-border:#e2e8f0;--btn-outline-bg:#ffffff;--btn-outline-color:#0f172a;--btn-outline-hover-bg:#f1f5f9}:root[data-theme='dark']{--btn-primary-bg:#f8fafc;--btn-primary-color:#0f172a;--btn-primary-hover:#e2e8f0;--btn-secondary-bg:#1e293b;--btn-secondary-color:#f8fafc;--btn-secondary-hover:#334155;--btn-danger-bg:#dc2626;--btn-danger-color:#ffffff;--btn-danger-hover:#b91c1c;--btn-outline-border:#334155;--btn-outline-bg:#0f172a;--btn-outline-color:#f8fafc;--btn-outline-hover-bg:#1e293b}.btn{height:var(--btn-height);font-size:var(--btn-font-size);padding:0 var(--btn-padding-x);border-radius:var(--btn-radius);font-weight:var(--btn-font-weight);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:background-color 200ms ease,color 200ms ease,border-color 200ms ease;border:none}.btn-sm{height:var(--btn-sm-height);font-size:var(--btn-sm-font-size);padding:0 var(--btn-sm-padding-x)}.btn-lg{height:var(--btn-lg-height);font-size:var(--btn-lg-font-size);padding:0 var(--btn-lg-padding-x)}.btn-default{background-color:var(--btn-default-bg);color:var(--btn-default-color);&:hover{background-color:var(--btn-default-hover-bg)}}.btn-primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-color);&:hover{background-color:var(--btn-primary-hover)}}.btn-secondary{background-color:var(--btn-secondary-bg);color:var(--btn-secondary-color);&:hover{background-color:var(--btn-secondary-hover)}}.btn-danger{background-color:var(--btn-danger-bg);color:var(--btn-danger-color);&:hover{background-color:var(--btn-danger-hover)}}.btn-outline{background-color:var(--btn-outline-bg);color:var(--btn-outline-color);border:2px solid var(--btn-outline-border);&:hover{background-color:var(--btn-outline-hover-bg)}}.btn-rounded{border-radius:calc(var(--btn-height) / 2 + 10px)}:root{--dropdown-bg:#ffffff;--dropdown-border:rgba(0,0,0,0.1);--dropdown-border-radius:5px;--dropdown-padding:10px;--dropdown-margin-top:10px;--dropdown-nav-width:200px;--dropdown-nav-item-color:#231818;--dropdown-nav-item-hover-bg:#f5f5f5;--dropdown-nav-item-padding:5px 12px}.dropdown{position:relative;display:inline-block;ul{list-style:none;margin:0;padding:0}span + div,button + div,a + div{display:none;background:var(--dropdown-bg);border:1px solid var(--dropdown-border);padding:var(--dropdown-padding);margin-top:var(--dropdown-margin-top) !important;border-radius:var(--dropdown-border-radius);z-index:99}ul > li > a{display:block;padding:var(--dropdown-nav-item-padding);color:var(--dropdown-nav-item-color);text-decoration:none;color:var(--dropdown-nav-item-color);&:hover{background:var(--dropdown-nav-item-hover-bg)}}.dropdown-nav{width:var(--dropdown-nav-width)}}:root{--accordion-font-size:20px;--accordion-padding:15px;--accordion-border-radius:5px;--accordion-border-color:#ccc;--accordion-icon-size:20px;--accordion-transition-duration:0.3s;--accordion-content-margin-top:10px;--accordion-items-gap:10px}:root[data-theme='dark']{--accordion-border-color:#334155}.accordion{.accordion-item{& + .accordion-item{margin-top:var(--accordion-items-gap)}}.accordion-title{position:relative;font-size:var(--accordion-font-size);padding:var(--accordion-padding);cursor:pointer;border:1px solid var(--accordion-border-color);border-radius:var(--accordion-border-radius);svg{position:absolute;right:var(--accordion-padding);top:50%;transform:translateY(-50%) rotate(45deg);width:var(--accordion-icon-size);height:var(--accordion-icon-size);transition:transform var(--accordion-transition-duration) ease}}.accordion-content{max-height:0;overflow:hidden;margin-top:0px !important;& > div{padding:var(--accordion-padding);border:1px solid var(--accordion-border-color);margin-top:var(--accordion-content-margin-top);border-radius:var(--accordion-border-radius)}}.open{.accordion-title{svg{transform:translateY(-50%) rotate(0deg)}}}}:root{--drawer-bg:#ffffff;--drawer-border:rgba(0,0,0,0.1);--drawer-width:400px;--drawer-padding:20px;--drawer-shadow:2px 0 10px rgba(0,0,0,0.1)}.drawer{display:none;position:fixed;top:0;left:0;width:var(--drawer-width);height:100%;background-color:var(--drawer-bg);box-shadow:var(--drawer-shadow);border-right:1px solid var(--drawer-border);transform:translateX(-100%);z-index:1000;.drawer-content{padding:var(--drawer-padding)}}:root{--navbar-height:60px;--navbar-bg:#ffffff;--navbar-logo-width:25%;--navbar-actions-width:25%;--navbar-menu-gap:30px}.navbar{display:flex;justify-content:space-between;align-items:center;background-color:var(--navbar-bg);.navbar-logo{width:var(--navbar-logo-width);display:flex;align-items:center}.navbar-menu{flex:1;width:100%;display:flex;justify-content:center;gap:var(--navbar-menu-gap)}.navbar-menu > li > a{line-height:var(--navbar-height)}.navbar-actions{width:var(--navbar-actions-width);display:flex;justify-content:flex-end}}a + .submenu{display:none}