@import url("https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,400&display=swap");:root{--color-primary:#56D4D4;--color-primary-dark:#3AAFAF;--color-primary-light:#A8E8E8;--color-primary-ultra-light:#E8F8F8;--color-primary-gradient:linear-gradient(135deg,#56D4D4,#3AAFAF);--color-bg:#F0F4FA;--color-bg-gradient:linear-gradient(160deg,#F0F8FF,#F5F0FF 30%,#FFF5F5 60%,#F0FFF4);--color-surface:rgba(255,255,255,0.72);--color-surface-solid:#FFFFFF;--color-surface-hover:rgba(240,244,248,0.8);--color-text:#2D3436;--color-text-secondary:#636E72;--color-text-tertiary:#B2BEC3;--color-text-on-primary:#FFFFFF;--color-accent-pink:#FF6B81;--color-accent-gold:#FECA57;--color-accent-purple:#A29BFE;--color-accent-orange:#FDCB6E;--color-success:#00D2A0;--color-error:#FF4757;--color-warning:#FECA57;--color-border:#E8ECF0;--color-border-light:#F0F3F6;--font-primary:"Nunito",-apple-system,BlinkMacSystemFont,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.8125rem;--font-size-base:0.9375rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.375rem;--font-size-2xl:1.75rem;--font-size-3xl:2.25rem;--font-size-4xl:3rem;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-base:16px;--space-lg:20px;--space-xl:24px;--space-2xl:32px;--space-3xl:40px;--space-4xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-3xl:32px;--radius-pill:50px;--radius-circle:50%;--shadow-xs:0 1px 3px rgba(0,0,0,0.04);--shadow-sm:0 2px 8px rgba(0,0,0,0.06);--shadow-md:0 4px 16px rgba(0,0,0,0.08);--shadow-lg:0 8px 32px rgba(0,0,0,0.10);--shadow-xl:0 12px 48px rgba(0,0,0,0.12);--shadow-primary:0 4px 20px rgba(86,212,212,0.3);--shadow-card:0 2px 12px rgba(0,0,0,0.06);--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:400ms cubic-bezier(0.4,0,0.2,1);--transition-spring:500ms cubic-bezier(0.175,0.885,0.32,1.275);--max-width:430px;--nav-height:64px;--header-height:56px;--bottom-safe:env(safe-area-inset-bottom,0px)}[data-theme=dark]{--color-bg:#0F1419;--color-bg-gradient:linear-gradient(160deg,#0F1419,#141826 30%,#1A1420 60%,#0F1419);--color-surface:rgba(26,31,46,0.72);--color-surface-solid:#1A1F2E;--color-surface-hover:rgba(36,43,61,0.8);--color-text:#E8ECF0;--color-text-secondary:#A0ADB8;--color-text-tertiary:#636E72;--color-border:#2A3040;--color-border-light:#1F2535;--shadow-xs:0 1px 3px rgba(0,0,0,0.2);--shadow-sm:0 2px 8px rgba(0,0,0,0.25);--shadow-md:0 4px 16px rgba(0,0,0,0.3);--shadow-lg:0 8px 32px rgba(0,0,0,0.35);--shadow-card:0 2px 12px rgba(0,0,0,0.2)}html{transition:background-color .3s ease,color .3s ease}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-primary);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg-gradient);background-attachment:fixed;line-height:1.6;overflow-x:hidden;min-height:100dvh}#__next,main{max-width:var(--max-width);margin:0 auto;position:relative}a{color:inherit;text-decoration:none}button{cursor:pointer;background:none;font-size:inherit}button,input,select,textarea{font-family:var(--font-primary);border:none}input,select,textarea{font-size:var(--font-size-base);outline:none}img{max-width:100%;display:block}ol,ul{list-style:none}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-md{font-size:var(--font-size-md)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-primary{color:var(--color-primary)}.text-center{text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:14px 28px;border-radius:var(--radius-pill);font-weight:700;font-size:var(--font-size-base);transition:all var(--transition-base);position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn-primary{background:var(--color-primary-gradient);color:var(--color-text-on-primary);box-shadow:var(--shadow-primary)}.btn-primary:hover{box-shadow:0 6px 28px rgba(86,212,212,.4);transform:translateY(-1px)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border)}.btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary)}.btn-outline{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover{background:var(--color-surface-hover);color:var(--color-text)}.btn-google{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border);font-weight:600;box-shadow:var(--shadow-xs)}.btn-google:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-sm)}.btn-block{width:100%}.btn-lg{padding:16px 32px;font-size:var(--font-size-md)}.btn-sm{padding:10px 20px;font-size:var(--font-size-sm)}.btn-icon{width:44px;height:44px;padding:0;border-radius:var(--radius-circle)}.input-group{display:flex;flex-direction:column;gap:var(--space-sm)}.input-label{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.input-field{width:100%;padding:14px 18px;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-xl);font-size:var(--font-size-base);color:var(--color-text);transition:all var(--transition-base)}.input-field:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(86,212,212,.15)}.input-field::-moz-placeholder{color:var(--color-text-tertiary)}.input-field::placeholder{color:var(--color-text-tertiary)}.input-error{border-color:var(--color-error)!important}.input-error-text{font-size:var(--font-size-xs);color:var(--color-error);font-weight:600}.card{background:var(--color-surface);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-radius:var(--radius-2xl);padding:var(--space-xl);box-shadow:var(--shadow-card);border:1px solid rgba(255,255,255,.5)}.card-elevated{box-shadow:var(--shadow-md)}.badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:6px 14px;border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:700}.badge-primary{background:var(--color-primary-ultra-light);color:var(--color-primary-dark)}.badge-pink{background:#FFF0F3;color:var(--color-accent-pink)}.tag{display:inline-flex;align-items:center;gap:var(--space-xs);padding:8px 16px;border-radius:var(--radius-pill);font-size:var(--font-size-sm);font-weight:600;background:var(--color-surface);border:2px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);-webkit-user-select:none;-moz-user-select:none;user-select:none}.tag:hover{border-color:var(--color-primary-light)}.tag.selected{border-color:var(--color-primary);color:var(--color-primary-dark)}.avatar,.tag.selected{background:var(--color-primary-ultra-light)}.avatar{width:48px;height:48px;border-radius:var(--radius-circle);-o-object-fit:cover;object-fit:cover;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.avatar-sm{width:36px;height:36px}.avatar-lg{width:64px;height:64px}.avatar-xl{width:80px;height:80px}.avatar-2xl{width:96px;height:96px}.avatar-ring{border:3px solid var(--color-primary);padding:2px}.progress-bar{width:100%;height:8px;background:var(--color-border-light);border-radius:var(--radius-pill);overflow:hidden}.progress-bar-fill{height:100%;background:var(--color-primary-gradient);border-radius:var(--radius-pill);transition:width var(--transition-slow)}.divider{display:flex;align-items:center;gap:var(--space-base);color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.divider:after,.divider:before{content:"";flex:1;height:1px;background:var(--color-border)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease-out}.animate-fade-in-down{animation:fadeInDown var(--transition-slow) ease-out}.animate-scale-in{animation:scaleIn var(--transition-spring) ease-out}.animate-bounce-in{animation:bounceIn .6s cubic-bezier(.175,.885,.32,1.275)}.animate-float{animation:float 3s ease-in-out infinite}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:60ms}.stagger-children>:nth-child(3){animation-delay:.12s}.stagger-children>:nth-child(4){animation-delay:.18s}.stagger-children>:nth-child(5){animation-delay:.24s}.stagger-children>:nth-child(6){animation-delay:.3s}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-base{gap:var(--space-base)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.w-full{width:100%}.h-full{height:100%}.spinner{width:24px;height:24px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:var(--radius-circle);animation:spin .6s linear infinite}::-webkit-scrollbar{width:0;height:0}.page-enter{animation:fadeInUp .4s cubic-bezier(.175,.885,.32,1.275)}