:root{--grain-50: #fffbeb;--grain-100: #fef3c7;--grain-200: #fde68a;--grain-300: #fcd34d;--grain-400: #fbbf24;--grain-500: #f59e0b;--grain-600: #d97706;--grain-700: #b45309;--grain-800: #92400e;--grain-900: #78350f;--paddy-50: #f0fdf4;--paddy-500: #22c55e;--paddy-600: #16a34a;--paddy-700: #15803d;--straw-50: #fafaf9;--straw-100: #f5f5f4;--straw-200: #e7e5e4;--straw-600: #57534e;--straw-800: #292524;--glass-blur: 20px;--glass-bg: rgba(255, 255, 255, .72);--glass-border: rgba(255, 255, 255, .4);--shadow-soft: 0 2px 16px rgba(0, 0, 0, .04);--shadow-medium: 0 8px 32px rgba(0, 0, 0, .08);--shadow-strong: 0 16px 48px rgba(0, 0, 0, .1);--shadow-glow: 0 0 30px rgba(210, 170, 80, .1);--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 24px;--transition-fast: .2s cubic-bezier(.25, .46, .45, .94);--transition-smooth: .35s cubic-bezier(.25, .46, .45, .94);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--apple-gold: #c8a84e;--apple-gold-light: #f5e6b8;--apple-gold-muted: #a8935a;--mesh-gradient-1: rgba(255, 248, 230, .6);--mesh-gradient-2: rgba(240, 253, 244, .35);--mesh-gradient-3: rgba(254, 243, 199, .45);--mesh-gradient-4: rgba(248, 240, 220, .3);--aurora-1: rgba(245, 158, 11, .15);--aurora-2: rgba(34, 197, 94, .08);--aurora-3: rgba(200, 168, 78, .12);--aurora-4: rgba(251, 191, 36, .1);--scrollbar-width: 6px;--scrollbar-track: rgba(0, 0, 0, .02);--scrollbar-thumb: rgba(0, 0, 0, .12);--scrollbar-thumb-hover: rgba(0, 0, 0, .2)}*{box-sizing:border-box}body{margin:0;padding:0;background-color:#faf9f6;background-image:radial-gradient(ellipse 80% 60% at 10% 20%,var(--mesh-gradient-1) 0%,transparent 70%),radial-gradient(ellipse 60% 80% at 85% 15%,var(--mesh-gradient-3) 0%,transparent 60%),radial-gradient(ellipse 70% 70% at 50% 80%,var(--mesh-gradient-2) 0%,transparent 65%),radial-gradient(ellipse 50% 50% at 90% 90%,var(--mesh-gradient-4) 0%,transparent 50%);background-attachment:fixed;min-height:100vh}.aurora-bg{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.aurora-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;animation:auroraDrift 20s ease-in-out infinite alternate}.aurora-orb-1{width:500px;height:500px;background:radial-gradient(circle,var(--aurora-1),transparent 70%);top:-10%;left:-5%;animation-duration:25s}.aurora-orb-2{width:400px;height:400px;background:radial-gradient(circle,var(--aurora-2),transparent 70%);bottom:-10%;right:-5%;animation-duration:30s;animation-delay:-5s}.aurora-orb-3{width:350px;height:350px;background:radial-gradient(circle,var(--aurora-3),transparent 70%);top:40%;left:30%;animation-duration:22s;animation-delay:-10s}.aurora-orb-4{width:300px;height:300px;background:radial-gradient(circle,var(--aurora-4),transparent 70%);top:20%;right:20%;animation-duration:28s;animation-delay:-15s}@keyframes auroraDrift{0%{transform:translate(0) scale(1)}33%{transform:translate(60px,-40px) scale(1.1)}66%{transform:translate(-30px,50px) scale(.95)}to{transform:translate(40px,20px) scale(1.05)}}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn,.animate-fade-in{animation:fadeIn .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .4s ease-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes bounce{0%,to{transform:translateY(-5%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{background:linear-gradient(90deg,var(--grain-100) 0%,var(--grain-200) 50%,var(--grain-100) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 20px #f59e0b33}50%{box-shadow:0 0 40px #f59e0b66}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-float{animation:float 4s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-slide-in{animation:slideIn .4s ease-out forwards}.animate-scale-in{animation:scaleIn .3s ease-out forwards}.animate-gradient{background-size:200% 200%;animation:gradient-shift 3s ease infinite}.text-gradient-gold{background:linear-gradient(135deg,var(--grain-600),var(--apple-gold),var(--grain-500));background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradient-shift 4s ease infinite}.text-gradient-hero{background:linear-gradient(135deg,var(--grain-800) 0%,var(--apple-gold) 40%,var(--grain-600) 70%,var(--paddy-600) 100%);background-size:300% 300%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradient-shift 6s ease infinite}.card-shine{position:relative;background:#fff;border-radius:var(--radius-lg);overflow:hidden}.card-shine:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:conic-gradient(from 0deg,transparent 0%,var(--grain-300) 10%,transparent 20%,transparent 80%,var(--apple-gold-light) 90%,transparent 100%);border-radius:inherit;animation:spin 8s linear infinite;opacity:0;transition:opacity .4s ease;z-index:-1}.card-shine:hover:before{opacity:.6}.card-shine:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:#fff;border-radius:calc(var(--radius-lg) - 1px);z-index:-1}@keyframes pulseGlow{0%,to{box-shadow:0 0 #f59e0b4d}50%{box-shadow:0 0 20px 4px #f59e0b26}}.animate-pulse-glow{animation:pulseGlow 3s ease-in-out infinite}@keyframes dashRotate{to{stroke-dashoffset:-100}}.btn-sweep{position:relative;overflow:hidden}.btn-sweep:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.15) 45%,rgba(255,255,255,.3) 50%,rgba(255,255,255,.15) 55%,transparent 100%);transform:rotate(25deg) translate(-150%);transition:none}.btn-sweep:hover:after{transform:rotate(25deg) translate(150%);transition:transform .6s ease}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.spotlight{position:relative;overflow:hidden}.spotlight:before{content:"";position:absolute;width:200px;height:200px;background:radial-gradient(circle,rgba(245,158,11,.08),transparent 70%);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease}.spotlight:hover:before{opacity:1}.tilt-card{transition:transform .3s ease;transform-style:preserve-3d;perspective:1000px}.tilt-card:hover{transform:perspective(1000px) rotateX(2deg) rotateY(-2deg) translateY(-4px);box-shadow:0 20px 40px #0000001a}@keyframes typewriter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stagger-text>*{opacity:0;animation:typewriter .5s ease-out forwards}@keyframes particleFloat{0%,to{transform:translateY(0) translate(0) scale(1);opacity:.3}25%{transform:translateY(-30px) translate(10px) scale(1.1);opacity:.6}50%{transform:translateY(-15px) translate(-5px) scale(.95);opacity:.4}75%{transform:translateY(-40px) translate(15px) scale(1.05);opacity:.5}}.particle{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--grain-300);pointer-events:none;animation:particleFloat 8s ease-in-out infinite}.card-hover-glow{transition:all .4s cubic-bezier(.25,.46,.45,.94)}.card-hover-glow:hover{box-shadow:0 8px 30px #f59e0b1f,0 2px 8px #0000000f;border-color:var(--grain-200)}@keyframes progressSweep{0%{transform:translate(-100%)}to{transform:translate(300%)}}@keyframes lineExpand{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.line-expand{transform-origin:left;animation:lineExpand .6s ease-out forwards}::-webkit-scrollbar{width:var(--scrollbar-width);height:var(--scrollbar-width)}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:3px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}input[type=range]::-webkit-slider-track{height:6px;background:var(--grain-200);border-radius:3px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;background:var(--grain-500);border-radius:50%;cursor:pointer;margin-top:-5px;box-shadow:0 2px 4px #0000001a;transition:transform .15s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);background:var(--grain-600)}input[type=checkbox]{accent-color:var(--grain-600)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--grain-400);box-shadow:0 0 0 3px #fbbf2433}.btn-primary{background:linear-gradient(135deg,var(--apple-gold),var(--grain-600));color:#fff;border:none;border-radius:14px;padding:14px 28px;font-weight:600;cursor:pointer;transition:all var(--transition-bounce);box-shadow:0 4px 16px #c8a84e40;position:relative;overflow:hidden}.btn-primary: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}.btn-primary:hover:before{left:100%}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #c8a84e59}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 8px #c8a84e33}.btn-secondary{background:#fff9;color:var(--grain-800);border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:12px 24px;font-weight:600;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all var(--transition-smooth)}.btn-secondary:hover{background:#ffffffd9;border-color:#0000001f;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--grain-700);border:1.5px solid rgba(0,0,0,.1);border-radius:14px;padding:10px 22px;font-weight:600;cursor:pointer;transition:all var(--transition-smooth)}.btn-ghost:hover{background:#fff9;border-color:var(--apple-gold);color:var(--grain-800)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border-radius:50%;background:#fff9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);color:var(--straw-600);cursor:pointer;transition:all var(--transition-smooth)}.btn-icon:hover{background:#ffffffe6;border-color:var(--apple-gold);color:var(--grain-700);transform:scale(1.05)}.btn-3d{background:linear-gradient(180deg,var(--grain-400) 0%,var(--grain-500) 100%);color:#fff;border:none;border-radius:14px;padding:14px 28px;font-weight:700;cursor:pointer;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001f,0 2px 4px #0000000f,inset 0 1px #fff3;transition:all var(--transition-bounce);transform:translateY(0)}.btn-3d:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.1) 45%,rgba(255,255,255,.25) 50%,rgba(255,255,255,.1) 55%,transparent 100%);transform:rotate(25deg) translate(-150%);transition:none}.btn-3d:hover{transform:translateY(-3px);box-shadow:0 10px 30px #0000002e,0 4px 8px #00000014,inset 0 1px #ffffff4d}.btn-3d:hover:after{transform:rotate(25deg) translate(150%);transition:transform .7s ease}.btn-3d:active{transform:translateY(1px);box-shadow:0 2px 6px #0000001a}.card{background:#ffffffbf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:20px;box-shadow:0 8px 32px #0000000f;border:1px solid rgba(255,255,255,.5);transition:all var(--transition-smooth)}.card:hover{box-shadow:0 12px 40px #0000001a;transform:translateY(-2px)}.card-grain{background:linear-gradient(135deg,var(--grain-50),white);border-color:var(--grain-100)}.card-glass{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:20px;box-shadow:0 4px 24px #0000000d}.card-elevated{background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:24px;box-shadow:0 8px 32px #00000014;border:1px solid rgba(255,255,255,.4);transition:all .4s cubic-bezier(.25,.46,.45,.94)}.card-elevated:hover{transform:translateY(-3px);box-shadow:0 16px 48px #0000001f,0 0 0 1px #f59e0b14}.card-glow{position:relative;background:#fff;border-radius:var(--radius-lg);overflow:hidden}.card-glow:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg,transparent,var(--grain-200),transparent 30%);animation:spin 4s linear infinite;opacity:0;transition:opacity var(--transition-smooth)}.card-glow:hover:before{opacity:1}.card-glow>*{position:relative;z-index:1;background:#fff;border-radius:calc(var(--radius-lg) - 2px)}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:600;letter-spacing:.025em;transition:all var(--transition-fast)}.badge-grain{background:var(--grain-500);color:#fff}.badge-paddy{background:var(--paddy-500);color:#fff}.badge-soft-grain{background:var(--grain-100);color:var(--grain-700);border:1px solid var(--grain-200)}.badge-soft-paddy{background:var(--paddy-50);color:var(--paddy-700);border:1px solid rgba(34,197,94,.2)}.badge-live{position:relative}.badge-live:before{content:"";position:absolute;left:8px;width:6px;height:6px;background:currentColor;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}.tooltip{position:relative}.tooltip:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);padding:8px 14px;background:var(--straw-800);color:#fff;font-size:12px;border-radius:var(--radius-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:all var(--transition-fast);box-shadow:var(--shadow-medium)}.tooltip:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.input-modern{width:100%;padding:16px 20px;background:#fffc;border:1.5px solid rgba(0,0,0,.08);border-radius:14px;font-size:15px;transition:all var(--transition-smooth);outline:none}.input-modern:hover{border-color:#00000026}.input-modern:focus{border-color:var(--apple-gold);box-shadow:0 0 0 4px #c8a84e1f}.input-modern::placeholder{color:var(--straw-600);opacity:.6}.input-floating{position:relative}.input-floating input{width:100%;padding:20px 16px 8px;border:2px solid var(--straw-200);border-radius:var(--radius-md);font-size:15px;background:#fff;outline:none;transition:all var(--transition-smooth)}.input-floating label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--straw-600);font-size:15px;pointer-events:none;transition:all var(--transition-fast)}.input-floating input:focus,.input-floating input:not(:placeholder-shown){border-color:var(--grain-500)}.input-floating input:focus+label,.input-floating input:not(:placeholder-shown)+label{top:8px;transform:translateY(0);font-size:11px;color:var(--grain-600);font-weight:600}.progress-bar{width:100%;height:8px;background:var(--straw-200);border-radius:9999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--grain-400),var(--grain-500));border-radius:9999px;transition:width var(--transition-smooth);position:relative}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}.progress-circle{position:relative;width:60px;height:60px}.progress-circle svg{transform:rotate(-90deg)}.progress-circle-bg{fill:none;stroke:var(--straw-200);stroke-width:4}.progress-circle-fill{fill:none;stroke:var(--grain-500);stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset var(--transition-smooth)}.skeleton{background:linear-gradient(90deg,var(--straw-100) 25%,var(--straw-200) 50%,var(--straw-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-title{height:24px;width:60%;margin-bottom:12px}.skeleton-avatar{width:48px;height:48px;border-radius:50%}.skeleton-card{height:120px;border-radius:var(--radius-lg)}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--straw-100);border:1px solid var(--straw-200);border-radius:9999px;font-size:13px;font-weight:500;color:var(--straw-800);transition:all var(--transition-fast);cursor:pointer}.chip:hover{background:var(--grain-100);border-color:var(--grain-300);color:var(--grain-800)}.chip-active{background:var(--grain-500);border-color:var(--grain-500);color:#fff}.chip-active:hover{background:var(--grain-600)}.divider{display:flex;align-items:center;gap:16px;color:var(--straw-600);font-size:13px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--straw-200),transparent)}.fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--grain-500),var(--grain-600));color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #f59e0b4d,0 8px 24px #00000026;transition:all var(--transition-bounce);z-index:1000}.fab:hover{transform:scale(1.1);box-shadow:0 6px 16px #f59e0b66,0 12px 32px #0003}.fab:active{transform:scale(.95)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(100px);padding:14px 24px;background:var(--straw-800);color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-strong);font-weight:500;opacity:0;transition:all var(--transition-bounce);z-index:9999}.toast.show{transform:translate(-50%) translateY(0);opacity:1}.toast-success{background:linear-gradient(135deg,var(--paddy-500),var(--paddy-600))}.toast-warning{background:linear-gradient(135deg,var(--grain-500),var(--grain-600))}.toast-error{background:linear-gradient(135deg,#ef4444,#dc2626)}.scroll-fade-top{position:relative}.scroll-fade-top:before{content:"";position:absolute;top:0;left:0;right:0;height:40px;background:linear-gradient(to bottom,var(--straw-50),transparent);pointer-events:none;z-index:10}.scroll-fade-bottom:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(to top,var(--straw-50),transparent);pointer-events:none;z-index:10}@media(max-width:768px){.hide-mobile{display:none!important}}@media(min-width:769px){.hide-desktop{display:none!important}}@media(prefers-color-scheme:dark){.dark-mode-support{--glass-bg: rgba(30, 30, 30, .8);--straw-50: #1a1a1a;--straw-100: #2a2a2a;--straw-200: #3a3a3a}}h1{font-weight:600;letter-spacing:-.02em}h2{font-weight:600;letter-spacing:-.01em}h3{font-weight:600}p{font-weight:300;line-height:1.7}[data-reveal]{opacity:.6;transform:translateY(8px);transition:opacity .4s ease-out,transform .4s ease-out}[data-reveal].revealed{opacity:1;transform:translateY(0)}
