:root{--font-family-sans: "Outfit", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--color-bg: #07080c;--color-bg-card: rgba(22, 24, 37, .7);--color-bg-card-hover: rgba(30, 33, 50, .85);--color-border: rgba(255, 255, 255, .08);--color-border-glow: rgba(127, 0, 255, .3);--color-text-primary: #f3f4f6;--color-text-secondary: #9ca3af;--color-text-muted: #6b7280;--grad-primary: linear-gradient(135deg, #8b5cf6, #ec4899);--grad-success: linear-gradient(135deg, #10b981, #059669);--grad-warning: linear-gradient(135deg, #f59e0b, #d97706);--grad-danger: linear-gradient(135deg, #ef4444, #dc2626);--grad-cyan: linear-gradient(135deg, #06b6d4, #3b82f6);--grad-neon: linear-gradient(135deg, #39ff14, #00f3ff);--grad-sunset: linear-gradient(135deg, #ff416c, #ff4b2b);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-neon-pink: 0 0 20px rgba(236, 72, 153, .4);--shadow-neon-violet: 0 0 25px rgba(139, 92, 246, .5);--shadow-neon-green: 0 0 20px rgba(16, 185, 129, .4);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-bouncy: .4s cubic-bezier(.175, .885, .32, 1.275)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}body{background-color:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-family-sans);min-height:100vh;min-height:-webkit-fill-available;overflow-x:hidden;display:flex;flex-direction:column}html{height:-webkit-fill-available}input,button,textarea{font-family:inherit;-webkit-user-select:auto;user-select:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#fff3}.app-container{display:flex;flex-direction:column;min-height:100vh;width:100%;position:relative;background-color:var(--color-bg);background-image:var(--bg-radial, radial-gradient(at 0% 0%, rgba(139, 92, 246, .15) 0px, transparent 50%), radial-gradient(at 100% 100%, rgba(236, 72, 153, .12) 0px, transparent 50%), radial-gradient(at 50% 50%, rgba(6, 182, 212, .08) 0px, transparent 50%));background-attachment:fixed;transition:background-color var(--transition-normal)}.kiosk-wrapper{flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem;width:100%;max-width:1024px;margin:0 auto}@media (max-width: 640px){.kiosk-wrapper{padding:.75rem}}.glass-card{background:var(--color-bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:24px;box-shadow:var(--shadow-lg),inset 0 1px 1px #ffffff0d;transition:transform var(--transition-normal),border var(--transition-normal),box-shadow var(--transition-normal);width:100%;overflow:hidden;position:relative}.glass-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad-primary);opacity:.7}.glass-card-interactive:hover{transform:translateY(-4px);border-color:#8b5cf666;box-shadow:var(--shadow-lg),var(--shadow-neon-violet);background:var(--color-bg-card-hover)}.heading-gradient{background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:800;letter-spacing:-.03em;text-shadow:0 0 40px rgba(139,92,246,.2)}.heading-success{background:var(--grad-success);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.heading-neon{background:var(--grad-neon);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:800}.custom-input-wrapper{position:relative;width:100%}.custom-input{width:100%;padding:1.2rem 1.5rem;background:#0000004d;border:2px solid var(--color-border);border-radius:16px;color:var(--color-text-primary);font-size:1.15rem;font-weight:600;letter-spacing:.05em;text-align:center;transition:border-color var(--transition-normal),box-shadow var(--transition-normal);outline:none}.custom-input:focus{border-color:#ec4899;box-shadow:0 0 15px #ec48994d}.btn-primary{background:var(--grad-primary);color:#fff;border:none;padding:1.1rem 2rem;font-size:1.1rem;font-weight:700;border-radius:16px;cursor:pointer;box-shadow:var(--shadow-md),0 4px 14px #8b5cf666;transition:transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%}.btn-primary:hover{transform:scale(1.02);box-shadow:var(--shadow-lg),var(--shadow-neon-pink)}.btn-primary:active{transform:scale(.98);opacity:.9}.btn-primary:disabled{background:#27272a;color:var(--color-text-muted);box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{background:#ffffff0d;border:1px solid var(--color-border);color:var(--color-text-primary);padding:1rem 1.75rem;font-size:1rem;font-weight:600;border-radius:16px;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-secondary:hover{background:#ffffff1a;transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.btn-skip{background:#ffffff0d;border:1.5px solid rgba(255,255,255,.15);color:#d1d5db;padding:.85rem 1.4rem;font-size:.92rem;font-weight:700;border-radius:16px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 2px 10px #00000040;width:100%;letter-spacing:.01em;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.btn-skip:hover{background:#ffffff1f;border-color:#ffffff59;color:#fff;transform:translateY(-2px);box-shadow:0 4px 16px #00000059,0 0 14px #ffffff1a}.btn-skip:active{transform:translateY(0) scale(.98);opacity:.9}.btn-back{background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.95rem;transition:color var(--transition-fast)}.btn-back:hover{color:#f43f5e}.progress-bar-container{height:8px;background:#ffffff0d;border-radius:9999px;overflow:hidden;width:100%;position:relative}.progress-bar-fill{height:100%;background:var(--grad-primary);border-radius:9999px;transition:width .4s cubic-bezier(.4,0,.2,1)}@keyframes pulseGlow{0%{box-shadow:0 0 10px #8b5cf633}50%{box-shadow:0 0 25px #8b5cf680}to{box-shadow:0 0 10px #8b5cf633}}@keyframes slideInUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05);opacity:.8}70%{transform:scale(.9);opacity:.9}to{transform:scale(1);opacity:1}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-1.5deg)}75%{transform:rotate(1.5deg)}}.anim-pulse-glow{animation:pulseGlow 2s infinite ease-in-out}.anim-slide-up{animation:slideInUp .5s cubic-bezier(.16,1,.3,1) forwards}.anim-bounce-in{animation:bounceIn .5s cubic-bezier(.175,.885,.32,1.275) forwards}.anim-wiggle-hover:hover{animation:wiggle .3s infinite ease-in-out}.particle-emitter{position:absolute;pointer-events:none;width:100%;height:100%;top:0;left:0;overflow:hidden;z-index:10}.avatar-emoji-option{width:60px;height:60px;display:flex;align-items:center;justify-content:center;font-size:2.2rem;border-radius:18px;background:#ffffff08;border:2px solid var(--color-border);cursor:pointer;transition:transform var(--transition-bouncy),border var(--transition-fast),background var(--transition-fast)}.avatar-emoji-option:hover{transform:scale(1.2) rotate(8deg);background:#ffffff14;border-color:#ec4899}.avatar-emoji-option.selected{transform:scale(1.15) rotate(-5deg);background:var(--grad-primary);border-color:transparent;box-shadow:var(--shadow-neon-pink)}.survey-card-container{padding:2.5rem;display:flex;flex-direction:column;gap:2rem;min-height:520px;justify-content:space-between}@media (max-width: 640px){.survey-card-container{padding:1.5rem 1.25rem;min-height:480px;gap:1.5rem}}.tablet-layout-split{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media (max-width: 768px){.tablet-layout-split{grid-template-columns:1fr;gap:1.5rem}}.theme-cyberpunk{--color-bg: #07080c;--color-bg-card: rgba(22, 24, 37, .7);--color-bg-card-hover: rgba(30, 33, 50, .85);--color-border: rgba(255, 255, 255, .08);--color-border-glow: rgba(127, 0, 255, .3);--grad-primary: linear-gradient(135deg, #8b5cf6, #ec4899);--color-text-primary: #f3f4f6;--color-text-secondary: #9ca3af;--shadow-neon-pink: 0 0 20px rgba(236, 72, 153, .4);--shadow-neon-violet: 0 0 25px rgba(139, 92, 246, .5);--bg-radial: radial-gradient(at 0% 0%, rgba(139, 92, 246, .15) 0px, transparent 50%), radial-gradient(at 100% 100%, rgba(236, 72, 153, .12) 0px, transparent 50%), radial-gradient(at 50% 50%, rgba(6, 182, 212, .08) 0px, transparent 50%)}.theme-sunset{--color-bg: #0b060f;--color-bg-card: rgba(35, 14, 34, .6);--color-bg-card-hover: rgba(50, 20, 48, .8);--color-border: rgba(255, 120, 150, .1);--grad-primary: linear-gradient(135deg, #ff416c, #ff4b2b);--color-border-glow: rgba(255, 75, 43, .3);--color-text-primary: #fff5f6;--color-text-secondary: #fca5a5;--shadow-neon-pink: 0 0 20px rgba(255, 65, 108, .4);--shadow-neon-violet: 0 0 25px rgba(255, 75, 43, .4);--bg-radial: radial-gradient(at 0% 0%, rgba(255, 65, 108, .15) 0px, transparent 55%), radial-gradient(at 100% 100%, rgba(255, 75, 43, .15) 0px, transparent 55%), radial-gradient(at 50% 50%, rgba(251, 146, 60, .08) 0px, transparent 50%)}.theme-minimal{--color-bg: #0b0c0d;--color-bg-card: rgba(25, 26, 27, .55);--color-bg-card-hover: rgba(40, 41, 42, .7);--color-border: rgba(255, 255, 255, .08);--grad-primary: linear-gradient(135deg, #ffffff, #888888);--color-border-glow: rgba(255, 255, 255, .15);--color-text-primary: #ffffff;--color-text-secondary: #d1d5db;--shadow-neon-pink: 0 0 20px rgba(255, 255, 255, .1);--shadow-neon-violet: 0 0 25px rgba(255, 255, 255, .15);--bg-radial: radial-gradient(at 50% 50%, rgba(255, 255, 255, .05) 0px, transparent 60%)}.theme-electric{--color-bg: #030a10;--color-bg-card: rgba(6, 28, 41, .6);--color-bg-card-hover: rgba(10, 45, 66, .85);--color-border: rgba(57, 255, 20, .12);--grad-primary: linear-gradient(135deg, #39ff14, #00f3ff);--color-border-glow: rgba(0, 243, 255, .35);--color-text-primary: #f0fff4;--color-text-secondary: #86efac;--shadow-neon-pink: 0 0 20px rgba(57, 255, 20, .35);--shadow-neon-violet: 0 0 25px rgba(0, 243, 255, .4);--bg-radial: radial-gradient(at 0% 0%, rgba(57, 255, 20, .1) 0px, transparent 50%), radial-gradient(at 100% 100%, rgba(0, 243, 255, .1) 0px, transparent 50%)}.floating-lang-pill{position:fixed;top:20px;right:20px;background:#090a1066;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(255,255,255,.08);padding:4px;border-radius:50px;display:flex;gap:4px;z-index:10000;box-shadow:var(--shadow-sm)}.lang-btn{background:transparent;border:none;color:var(--color-text-muted);padding:6px 14px;border-radius:50px;font-family:Outfit,sans-serif;font-size:.75rem;font-weight:800;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:4px}.lang-btn:hover{color:#fff;background:#ffffff05}.lang-btn.active{background:var(--grad-primary);color:#fff;box-shadow:0 2px 10px #ec48994d}.ranking-container{display:flex;flex-direction:row;gap:1.5rem;width:100%;margin-top:.5rem}@media (max-width: 640px){.ranking-container{flex-direction:column;gap:1rem}}.ranking-column{flex:1;display:flex;flex-direction:column;gap:.75rem}.ranking-column-title{font-size:.9rem;font-weight:800;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--color-border);padding-bottom:.5rem;margin-bottom:.25rem}.ranking-item-pills-list{display:flex;flex-direction:column;gap:.5rem;min-height:180px}.ranking-item-pill{background:#ffffff08;border:1px solid var(--color-border);border-radius:12px;padding:.9rem 1.2rem;font-weight:700;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-bouncy);display:flex;align-items:center;justify-content:space-between}.ranking-item-pill:hover{background:#ffffff14;border-color:#8b5cf666;transform:translateY(-2px)}.ranking-item-pill.selected{opacity:.3;cursor:not-allowed;transform:none;background:transparent}.ranking-slot-board{display:flex;flex-direction:column;gap:.5rem;min-height:180px}.ranking-slot{border:2px dashed var(--color-border);border-radius:12px;min-height:52px;display:flex;align-items:center;padding:0 1.2rem;font-weight:600;color:var(--color-text-muted);transition:all var(--transition-normal);position:relative}.ranking-slot.filled{border-style:solid;border-color:#ec489966;background:#ec48990a;color:var(--color-text-primary);font-weight:800;cursor:pointer}.ranking-slot.filled:hover{background:#ec489914;border-color:#ec4899b3;transform:translateY(-2px)}.ranking-badge{position:absolute;right:1.2rem;background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:1.1rem;font-weight:900}.textarea-glass{width:100%;min-height:180px;background:#00000040;border:2px solid var(--color-border);border-radius:18px;padding:1.25rem;color:var(--color-text-primary);font-size:1.1rem;font-weight:600;line-height:1.5;outline:none;resize:none;transition:all var(--transition-normal)}.textarea-glass:focus{border-color:#ec4899;box-shadow:0 0 20px #ec489940;background:#00000059}.char-counter{align-self:flex-end;font-size:.8rem;font-weight:700;color:var(--color-text-muted);margin-top:.25rem;letter-spacing:.05em}.photo-slot-box{width:100%;height:280px;border:2px dashed var(--color-border);border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:#00000026;transition:all var(--transition-normal);overflow:hidden;position:relative}.photo-slot-box.has-preview{border-style:solid;border-color:var(--color-border)}.photo-preview-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.photo-glow-ring{padding:1.25rem;background:#ffffff08;border-radius:50%;border:1px solid var(--color-border);color:var(--color-text-secondary);transition:all var(--transition-bouncy)}.photo-slot-box:hover .photo-glow-ring{transform:scale(1.1) rotate(5deg);border-color:#8b5cf666;color:#fff}
