:root{--bg: #080d14;--surface: #111820;--surface-2: #161f2a;--border: rgba(168, 216, 234, .15);--border-hover: rgba(168, 216, 234, .35);--ice: #a8d8ea;--ice-light: #c8eaf7;--ice-dark: #6eb5d0;--frost: #e0f7ff;--snow: #f0f8ff;--muted: #6b8fa3;--accent: #a8d8ea;--accent-light: #c8eaf7;--accent-dark: #6eb5d0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg);color:var(--snow);font-family:Inter,sans-serif;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Outfit,Space Grotesk,sans-serif}.gradient-text{background:linear-gradient(135deg,var(--frost) 0%,var(--ice) 50%,var(--ice-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-card{background:#111820bf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:16px}.glass-card-hover{transition:border-color .3s ease,box-shadow .3s ease}.glass-card-hover:hover{border-color:var(--border-hover);box-shadow:0 0 30px #a8d8ea14}.btn-ice{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--ice) 0%,var(--ice-dark) 100%);color:#080d14;font-family:Outfit,sans-serif;font-weight:700;font-size:1rem;letter-spacing:.04em;border:none;border-radius:8px;padding:14px 36px;cursor:pointer;text-decoration:none;transition:box-shadow .3s ease,transform .2s ease}.btn-ice:hover{box-shadow:0 0 20px #a8d8ea66,0 0 50px #a8d8ea22;transform:translateY(-2px)}.btn-ice:active{transform:translateY(0)}.btn-outline{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--ice);font-family:Outfit,sans-serif;font-weight:600;font-size:1rem;letter-spacing:.04em;border:1px solid var(--border);border-radius:8px;padding:14px 36px;cursor:pointer;text-decoration:none;transition:border-color .3s ease,background .3s ease,box-shadow .3s ease}.btn-outline:hover{border-color:var(--ice);background:#a8d8ea14;box-shadow:0 0 20px #a8d8ea33}.pill-btn{padding:8px 22px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--muted);font-family:Inter,sans-serif;font-weight:500;cursor:pointer;transition:all .25s ease}.pill-btn:hover,.pill-btn.active{border-color:var(--ice);color:var(--ice);background:#a8d8ea1a;box-shadow:0 0 14px #a8d8ea33}.drop-zone{border:2px dashed var(--border);border-radius:12px;padding:28px 20px;text-align:center;color:var(--muted);cursor:pointer;transition:border-color .3s ease,background .3s ease,color .3s ease}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--ice);background:#a8d8ea0d;color:var(--ice)}.color-swatch{width:34px;height:34px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;flex-shrink:0}.color-swatch:hover{transform:scale(1.18)}.color-swatch.selected{border-color:var(--ice);box-shadow:0 0 14px var(--ice)}.frost-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent 0%,var(--ice) 30%,var(--frost) 50%,var(--ice) 70%,transparent 100%);opacity:.25}.mesh-grid{background-image:linear-gradient(rgba(168,216,234,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(168,216,234,.04) 1px,transparent 1px);background-size:60px 60px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes shimmer{0%{background-position:200%}to{background-position:-200%}}@keyframes accentPulse{0%,to{box-shadow:0 0 20px var(--accent)}50%{box-shadow:0 0 40px var(--accent)}}@keyframes bounceY{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes snowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.animate-float{animation:float 4s ease-in-out infinite}.animate-pulse-glow{animation:accentPulse 2.5s ease-in-out infinite}.animate-fade-up{animation:fadeInUp .8s ease-out forwards}.animate-spin-slow{animation:spinSlow 20s linear infinite}.animate-spin-slow-reverse{animation:spinSlow 28s linear infinite reverse}.animate-spin-medium{animation:spinSlow 12s linear infinite}.animate-bounce-y{animation:bounceY 2s ease-in-out infinite}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--surface-2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ice-dark)}canvas{display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}
