.header{position:sticky;background-color:#fff;top:0;z-index:200;width:100%;overflow-x:hidden}.header__content{width:100%;max-width:1400px;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem;box-sizing:border-box}@media(max-width:768px){.header__content{padding-left:1rem;padding-right:1rem}}.header__content{justify-content:space-between;height:50px;min-width:0}.header__content,.header__logo{display:flex;align-items:center}.header__logo{text-decoration:none;transition:transform .2s;flex-shrink:0}.header__logo:hover{transform:scale(1.03)}.header__logo-mark{width:32px;height:32px;margin-inline-end:8px}.header__logo-text{font-size:1.5rem;background:linear-gradient(135deg,#6366f1,#4f46e5);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text;font-weight:800;white-space:nowrap}@media(max-width:768px){.header__logo-text{font-size:1.125rem}}.header__nav{display:flex;align-items:center;gap:.5rem;flex-shrink:0}@media(max-width:768px){.header__nav{gap:.25rem}}.header__nav-link{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.5rem;color:#4b5563;font-size:.875rem;font-weight:500;transition:all .2s}.header__nav-link:hover{color:#6366f1;background:#f9fafb}@media(max-width:768px){.header__nav-link{padding:.5rem}.header__nav-link span{display:none}}.header__divider{width:1px;height:20px;background:#e5e7eb;flex-shrink:0}@media(max-width:768px){.header__divider{display:none}}.header__user{display:flex;align-items:center;gap:.5rem;flex-shrink:0}@media(max-width:768px){.header__user{gap:.25rem}}.header__username{font-size:.875rem;color:#111827;font-weight:500;padding:.375rem .75rem;background:#f9fafb;border-radius:.375rem;white-space:nowrap}@media(max-width:768px){.header__username{display:none}}.header__signout{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:rgba(0,0,0,0);border:1px solid #e5e7eb;border-radius:.5rem;color:#4b5563;font-size:.875rem;font-weight:500;transition:all .2s}.header__signout:hover{background:#ef4444;color:#fff;border-color:#ef4444}@media(max-width:768px){.header__signout{padding:.5rem;gap:0}.header__signout span{display:none}}.card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);transition:all .2s cubic-bezier(.4,0,.2,1)}.card--interactive{cursor:pointer;transition:all .2s}.card--interactive:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}.card--interactive:active{transform:translateY(0)}.input-wrapper{display:flex;flex-direction:column;gap:.25rem;width:100%;box-sizing:border-box}.input-wrapper--full{width:100%}.input-wrapper__label{font-size:.875rem;font-weight:400;line-height:1.5;color:#4b5563;font-weight:500;color:#111827}.input-wrapper__error{color:#6b7280;color:#ef4444}.input-wrapper__error,.input-wrapper__helper{font-size:.75rem;font-weight:500;line-height:1.5;text-transform:uppercase;letter-spacing:.05em;text-transform:none}.input-wrapper__helper{color:#6b7280}.input{padding:.5rem 1rem;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .15s cubic-bezier(.4,0,.2,1)}.input::-moz-placeholder{color:#6b7280}.input::placeholder{color:#6b7280}.input:hover{border-color:#d1d5db}.input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.1)}.input:disabled{background:#f9fafb;cursor:not-allowed;opacity:.6}.input.error{border-color:#ef4444}.input.error:focus{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.input{width:100%;box-sizing:border-box}.input--error,.input--error:focus{border-color:#ef4444}.input--error:focus{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.select-wrapper{display:flex;flex-direction:column;gap:.25rem;width:100%}.select-wrapper__label{font-size:.875rem;font-weight:500;color:#111827}.select-wrapper__error{font-size:.75rem;color:#ef4444}.select{padding:.5rem 1rem;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .15s cubic-bezier(.4,0,.2,1)}.select::-moz-placeholder{color:#6b7280}.select::placeholder{color:#6b7280}.select:hover{border-color:#d1d5db}.select:disabled{background:#f9fafb;cursor:not-allowed;opacity:.6}.select.error{border-color:#ef4444}.select.error:focus{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.select{width:100%;cursor:pointer;padding-right:2.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%236B7280'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px;font-size:13px}.select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.1)}.select--error{border-color:#ef4444}.select--error:focus{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInLeft{0%{transform:translateX(-20px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInRight{0%{transform:translateX(20px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes scaleOut{0%{transform:scale(1);opacity:1}to{transform:scale(.95);opacity:0}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes modalContentIn{0%{transform:scale(.95) translateY(-20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.animate-fade-in{animation:fadeIn .2s cubic-bezier(.4,0,.2,1) forwards}.animate-fade-out{animation:fadeOut .2s cubic-bezier(.4,0,.2,1) forwards}.animate-slide-in-up{animation:slideInUp ease-out .2s cubic-bezier(.4,0,.2,1) forwards}.animate-slide-in-down{animation:slideInDown ease-out .2s cubic-bezier(.4,0,.2,1) forwards}.animate-slide-in-left{animation:slideInLeft ease-out .2s cubic-bezier(.4,0,.2,1) forwards}.animate-slide-in-right{animation:slideInRight ease-out .2s cubic-bezier(.4,0,.2,1) forwards}.animate-scale-in{animation:scaleIn ease-out .15s cubic-bezier(.4,0,.2,1) forwards}.animate-scale-out{animation:scaleOut ease-in .15s cubic-bezier(.4,0,.2,1) forwards}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-bounce{animation:bounce 1s infinite}.stagger-children>*{opacity:0;animation:slideInUp ease-out .3s cubic-bezier(.4,0,.2,1) forwards}.stagger-children>:first-child{animation-delay:.05s}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.15s}.stagger-children>:nth-child(4){animation-delay:.2s}.stagger-children>:nth-child(5){animation-delay:.25s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.35s}.stagger-children>:nth-child(8){animation-delay:.4s}.stagger-children>:nth-child(9){animation-delay:.45s}.stagger-children>:nth-child(10){animation-delay:.5s}.stagger-children>:nth-child(11){animation-delay:.55s}.stagger-children>:nth-child(12){animation-delay:.6s}.stagger-children>:nth-child(13){animation-delay:.65s}.stagger-children>:nth-child(14){animation-delay:.7s}.stagger-children>:nth-child(15){animation-delay:.75s}.stagger-children>:nth-child(16){animation-delay:.8s}.stagger-children>:nth-child(17){animation-delay:.85s}.stagger-children>:nth-child(18){animation-delay:.9s}.stagger-children>:nth-child(19){animation-delay:.95s}.stagger-children>:nth-child(20){animation-delay:1s}.hover-lift{transition:transform .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}.hover-scale{transition:transform .15s cubic-bezier(.4,0,.2,1)}.hover-scale:hover{transform:scale(1.05)}.hover-glow{position:relative;transition:box-shadow .2s cubic-bezier(.4,0,.2,1)}.hover-glow:hover{box-shadow:0 0 20px rgba(99,102,241,.3)}.hover-shine{position:relative;overflow:hidden}.hover-shine:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.hover-shine:hover:before{left:100%}.skeleton{background:linear-gradient(90deg,#e5e7eb,#f3f4f6 50%,#e5e7eb);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:.5rem}.loading-dots{display:inline-flex;gap:4px}.loading-dots span{width:8px;height:8px;border-radius:50%;background:currentColor;animation:bounce 1.4s ease-in-out infinite both}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}.transition-all{transition:all .2s cubic-bezier(.4,0,.2,1)}.transition-colors{transition:background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1)}.transition-transform{transition:transform .2s cubic-bezier(.4,0,.2,1)}.transition-opacity{transition:opacity .2s cubic-bezier(.4,0,.2,1)}.spinner-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:200px;gap:1rem}.spinner{display:flex;gap:.5rem}.spinner--sm{gap:.25rem}.spinner--lg{gap:.75rem}.spinner__circle{border-radius:50%;background:#6366f1;animation:bounce 1.4s ease-in-out infinite both}.spinner--sm .spinner__circle{width:8px;height:8px}.spinner--md .spinner__circle{width:12px;height:12px}.spinner--lg .spinner__circle{width:16px;height:16px}.spinner__circle:first-child{animation-delay:-.32s}.spinner__circle:nth-child(2){animation-delay:-.16s}.spinner__text{font-size:.875rem;color:#4b5563}@keyframes bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}