:root{--bg-color: #0c0c14;--panel-color: rgba(255, 255, 255, .05);--accent-color: #7c4dff;--accent-glow: rgba(124, 77, 255, .35);--text-primary: #ffffff;--text-secondary: #b0b0bc;--glass-border: rgba(255, 255, 255, .1);--font-family: "Outfit", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-family);overflow-x:hidden;min-height:100%}.page-layout{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;width:100%;gap:2rem;padding:0 1rem}#app{width:100%;max-width:500px;min-height:100svh;padding:.75rem .75rem .5rem;text-align:center;display:flex;flex-direction:column;gap:.6rem;flex-shrink:0}header{display:flex;flex-direction:column;gap:.35rem;flex-shrink:0}h1{font-size:clamp(1.4rem,5vw,2rem);font-weight:800;line-height:1.15;background:linear-gradient(135deg,#fff,#7c4dff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}#subtitle{color:var(--text-secondary);font-weight:300;font-size:clamp(.78rem,3vw,.95rem);letter-spacing:.5px}.lang-toggle{display:flex;justify-content:center;gap:.5rem;margin-bottom:.25rem}.lang-toggle button{background:transparent;border:1px solid var(--glass-border);color:var(--text-secondary);padding:3px 12px;border-radius:20px;cursor:pointer;font-size:.8rem;font-family:var(--font-family);transition:all .3s ease}.lang-toggle button.active{background:var(--accent-color);border-color:var(--accent-color);color:#fff}main{display:flex;flex-direction:column;gap:.6rem;flex:1}.camera-container{position:relative;width:100%;height:clamp(220px,48svh,420px);background:#000;border-radius:20px;overflow:hidden;box-shadow:0 20px 50px #00000080,0 0 20px var(--accent-glow);border:1px solid var(--glass-border);flex-shrink:1;transition:opacity .4s ease,transform .4s ease}#app.result-active .camera-container{opacity:0;pointer-events:none;position:absolute;transform:translateY(-12px)}#video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.scan-overlay{position:absolute;inset:0;display:none;pointer-events:none}.scanner-line{position:absolute;width:100%;height:4px;background:var(--accent-color);box-shadow:0 0 15px var(--accent-color),0 0 30px var(--accent-color);top:0;animation:scan 2s linear infinite}@keyframes scan{0%{top:0}to{top:100%}}.result-panel{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%;opacity:0;visibility:hidden;transform:translateY(18px) scale(.97);transition:opacity .45s cubic-bezier(.4,0,.2,1),visibility .45s,transform .45s cubic-bezier(.4,0,.2,1);max-height:0;overflow:hidden;pointer-events:none}#app.result-active .result-panel{opacity:1;visibility:visible;transform:translateY(0) scale(1);max-height:600px;overflow:visible;pointer-events:auto}#result-prefix{font-size:clamp(.8rem,3vw,.95rem);color:var(--text-secondary);letter-spacing:.5px;margin-bottom:.25rem}.animal-showcase{position:relative;width:clamp(180px,45vw,240px);height:clamp(180px,45vw,240px);display:flex;align-items:center;justify-content:center}.animal-glow{position:absolute;inset:-20px;border-radius:50%;background:radial-gradient(circle,rgba(124,77,255,.4) 0%,transparent 70%);animation:pulse-glow 2.5s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.animal-image-container{width:100%;height:100%;border-radius:50%;overflow:hidden;border:3px solid var(--accent-color);box-shadow:0 0 0 6px #7c4dff26,0 20px 40px #00000080;background:#111;position:relative;z-index:1}#animal-image{width:100%;height:100%;object-fit:cover;transition:opacity .3s ease;opacity:0}#animal-image.loaded{opacity:1}.image-loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0003;z-index:2}.image-loader:after{content:"";width:40px;height:40px;border:3px solid rgba(124,77,255,.2);border-top-color:var(--accent-color);border-radius:50%;animation:loading-spinner .8s linear infinite}@keyframes loading-spinner{to{transform:rotate(360deg)}}#animal-name{font-size:clamp(2rem,8vw,3rem);font-weight:800;color:var(--accent-color);text-transform:uppercase;letter-spacing:3px;text-shadow:0 0 30px rgba(124,77,255,.5);margin-top:.25rem}.result-buttons{display:flex;justify-content:center;gap:1.25rem;margin-top:.5rem}.icon-btn{display:flex;flex-direction:column;align-items:center;gap:.4rem;background:#ffffff12;border:1px solid var(--glass-border);color:var(--text-primary);padding:.85rem 1.6rem;border-radius:16px;cursor:pointer;font-family:var(--font-family);font-size:.78rem;font-weight:600;letter-spacing:.5px;transition:all .25s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:90px}.icon-btn svg{width:22px;height:22px;stroke:currentColor}.icon-btn:hover{background:#ffffff21;border-color:#ffffff40;transform:translateY(-2px)}.icon-btn:active{transform:scale(.94)}.icon-btn--accent{background:var(--accent-color);border-color:transparent;box-shadow:0 8px 20px var(--accent-glow)}.icon-btn--accent:hover{background:#9166ff;border-color:transparent;box-shadow:0 12px 28px #7c4dff80}.interaction{display:flex;flex-direction:column;gap:.6rem;flex-shrink:0;transition:opacity .3s ease,transform .3s ease}#app.result-active .interaction{opacity:0;pointer-events:none;transform:translateY(6px)}#question{color:var(--text-secondary);font-size:clamp(.85rem,3.5vw,1.05rem);line-height:1.4}.primary-btn{background:var(--accent-color);color:#fff;border:none;padding:.9rem 2rem;border-radius:50px;font-size:clamp(.95rem,3.5vw,1.1rem);font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 8px 20px var(--accent-glow);width:100%}.primary-btn:hover{transform:scale(1.04);box-shadow:0 14px 28px #7c4dff66}.primary-btn:active{transform:scale(.96)}.primary-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.ad-banner{width:100%;min-height:90px;border-radius:12px;overflow:hidden;background:#ffffff08;border:1px dashed rgba(255,255,255,.08);flex-shrink:0;margin-top:auto}.side-ad{display:none;width:300px;min-height:600px;height:auto;align-self:flex-start;margin-top:4rem;background:#ffffff08;border:1px dashed rgba(255,255,255,.08);border-radius:16px;overflow:hidden;position:sticky;top:4rem;flex-shrink:0}footer{margin-top:auto;padding-top:.5rem;font-size:.75rem;color:#fff3;flex-shrink:0}@media(max-width:390px){#app{padding:.5rem .5rem .4rem;gap:.45rem}h1{font-size:1.35rem}.camera-container{height:clamp(180px,44svh,260px)}.animal-showcase{width:160px;height:160px}#animal-name{font-size:1.75rem}.icon-btn{padding:.75rem 1.25rem;min-width:80px;font-size:.72rem}.icon-btn svg{width:20px;height:20px}}@media(min-width:481px){.result-buttons{flex-direction:row}}@media(min-width:1200px){.side-ad{display:block}}@media(min-width:768px){.page-layout{align-items:center}#app{max-width:480px;height:100vh;justify-content:center}.camera-container{height:clamp(300px,55vh,440px)}}
