:root{--font-mystical:"Cinzel", Georgia, serif;--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--bg-deep-space:#030404;--bg-nebula-start:#050d0a;--bg-nebula-end:#0a1b15;--color-gold-light:#f7e3af;--color-gold:#d4af37;--color-gold-dark:#b89327;--color-indigo:#14b8a6;--color-violet:#0d9488;--color-purple:#10b981;--color-rose:#f59e0b;--color-text-primary:#f1f5f9;--color-text-secondary:#cbd5e1;--color-text-muted:#8492a6;--glass-bg:#06100da6;--glass-border:#d4af3733;--glass-border-focus:#d4af3773;--glass-shadow:0 12px 40px 0 #000000d9}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-deep-space);background-image:radial-gradient(circle at 50% -20%, #10b9811f 0%, transparent 60%), radial-gradient(circle at 15% 35%, #d4af370a 0%, transparent 40%), radial-gradient(circle at 85% 75%, #10b98108 0%, transparent 40%), linear-gradient(135deg, var(--bg-nebula-start) 0%, var(--bg-nebula-end) 100%);color:var(--color-text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;min-height:100vh;line-height:1.6;overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-deep-space)}::-webkit-scrollbar-thumb{background:var(--color-gold-dark);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-gold)}h1,h2,h3,h4,.font-cinzel{font-family:var(--font-mystical);letter-spacing:.05em;color:var(--color-gold-light);text-shadow:0 2px 10px #d4af3733}p{color:var(--color-text-secondary)}.app-container{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}.main-content{flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem;display:flex}.stars-overlay{pointer-events:none;opacity:.45;z-index:0;background-image:radial-gradient(1px 1px at 10% 10%,#fff,#0000),radial-gradient(1.5px 1.5px at 20% 40%,#ffffffb3,#0000),radial-gradient(1px 1px at 30% 70%,#fff,#0000),radial-gradient(2px 2px at 50% 20%,#ffffffe6,#0000),radial-gradient(1px 1px at 60% 80%,#fff,#0000),radial-gradient(1.5px 1.5px at 80% 30%,#fffc,#0000),radial-gradient(2px 2px at 90% 60%,#fff,#0000);background-size:550px 550px;width:100%;height:100%;animation:120s linear infinite starsSlowMove;position:fixed;top:0;left:0}@keyframes starsSlowMove{0%{background-position:0 0}to{background-position:550px 1100px}}.cosmic-card{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(16px);border-radius:24px;width:100%;max-width:600px;padding:2.5rem;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.cosmic-card:hover{border-color:var(--glass-border-focus);box-shadow:0 12px 40px #000000d9,0 0 25px #d4af3726}.btn-cosmic{font-family:var(--font-mystical);letter-spacing:.08em;background:linear-gradient(135deg, var(--color-gold-dark) 0%, var(--color-gold) 50%, var(--color-gold-dark) 100%);color:#07050d;cursor:pointer;text-transform:uppercase;background-size:200%;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;padding:.9rem 2rem;font-size:1rem;font-weight:700;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 15px #d4af374d}.btn-cosmic:hover:not(:disabled){background-position:100%;transform:translateY(-2px);box-shadow:0 6px 20px #d4af3780,0 0 15px #d4af374d}.btn-cosmic:active:not(:disabled){transform:translateY(0)}.btn-cosmic:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-cosmic-secondary{font-family:var(--font-mystical);letter-spacing:.08em;color:var(--color-gold-light);border:1px solid var(--color-gold);cursor:pointer;text-transform:uppercase;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;padding:.85rem 2rem;font-size:1rem;transition:all .3s;display:inline-flex}.btn-cosmic-secondary:hover:not(:disabled){color:#fff;background:#d4af371a;border-color:#fff;box-shadow:0 0 15px #d4af3726}.scanner-viewport{aspect-ratio:3/4;border:1px dashed var(--color-gold);background:#050c09;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;width:100%;margin-bottom:1.5rem;display:flex;position:relative;overflow:hidden}.scanner-video{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.hand-guide-overlay{pointer-events:none;opacity:.5;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:absolute;top:0;left:0}.hand-guide-overlay.active{opacity:.85}.hand-guide-svg{width:75%;height:75%;stroke:var(--color-gold-light);stroke-width:1.5px;stroke-dasharray:6 6;fill:none;filter:drop-shadow(0 0 8px #d4af3780);animation:2s ease-in-out infinite svgPulse}@keyframes svgPulse{0%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}to{opacity:.7;transform:scale(1)}}.scanner-laser{background:linear-gradient(90deg, transparent, var(--color-gold), transparent);width:100%;height:4px;box-shadow:0 0 15px 2px var(--color-gold);pointer-events:none;z-index:10;animation:2.5s ease-in-out infinite laserScan;position:absolute;top:0;left:0}@keyframes laserScan{0%{top:5%}50%{top:95%}to{top:5%}}.cosmic-input-group{text-align:left;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.cosmic-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-gold-light);font-size:.8rem;font-weight:600}.cosmic-input{border:1px solid var(--glass-border);color:#fff;font-family:var(--font-sans);background:#040a08b3;border-radius:8px;width:100%;padding:.8rem 1rem;font-size:.95rem;transition:all .3s}.cosmic-input:focus{border-color:var(--color-gold);background:#081410d9;outline:none;box-shadow:0 0 10px #d4af3740}.tabs-container{border-bottom:1px solid var(--glass-border);-ms-overflow-style:none;scrollbar-width:none;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.tabs-container::-webkit-scrollbar{display:none}.tab-btn{color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;font-family:var(--font-mystical);background:0 0;border:none;border-bottom:2px solid #0000;padding:.5rem 1rem;font-size:.9rem;transition:all .3s}.tab-btn.active{color:var(--color-gold-light);border-bottom-color:var(--color-gold);text-shadow:0 0 8px #d4af3766}.tab-btn:hover:not(.active){color:#fff}.logs-container{font-family:var(--font-sans);color:var(--color-text-secondary);text-align:left;background:#030806a6;border:1px solid #d4af3714;border-radius:12px;flex-direction:column;gap:.5rem;width:100%;height:140px;margin-top:1.5rem;padding:1.25rem;font-size:.85rem;display:flex;overflow-y:auto}.log-entry{opacity:0;border-left:2px solid #d4af3740;padding-left:.75rem;line-height:1.45;animation:.4s forwards fadeIn}.fadeIn{opacity:1}@keyframes fadeIn{to{opacity:1}}.loader-orb{background:radial-gradient(circle at 30% 30%, var(--color-gold-light), var(--color-gold-dark));border-radius:50%;width:80px;height:80px;margin:2rem auto;animation:3s ease-in-out infinite orbPulse;box-shadow:0 0 30px 10px #d4af3766,inset -5px -5px 15px #00000080}@keyframes orbPulse{0%{transform:scale(1);box-shadow:0 0 30px 10px #d4af3766}50%{transform:scale(1.1);box-shadow:0 0 45px 20px #10b98199}to{transform:scale(1);box-shadow:0 0 30px 10px #d4af3766}}@media (width<=640px){.cosmic-card{padding:1.5rem}.btn-cosmic,.btn-cosmic-secondary{padding:.8rem 1.5rem;font-size:.9rem}.main-content{padding:1rem .75rem}}@media (width<=480px){.cosmic-card{border-radius:16px;padding:1.25rem 1rem}.btn-cosmic,.btn-cosmic-secondary{padding:.75rem 1.25rem;font-size:.85rem}h1{font-size:1.3rem!important}h2{font-size:1.7rem!important}header{padding:1rem!important}.tab-btn{padding:.4rem .8rem;font-size:.8rem}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media print{body{font-size:12pt;color:#000!important;background:#fff!important}.no-print,header,.tabs-container,.btn-row,.loader-orb,.logs-container{display:none!important}.cosmic-card{box-shadow:none!important;background:0 0!important;border:none!important;max-width:100%!important;padding:0!important}.print-only{display:block!important}h1,h2,h3,h4{color:#000!important;text-shadow:none!important}}.print-only{display:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1.2s linear infinite spin}.spinner{border:3px solid #ffffff0d;border-top:3px solid var(--color-gold);border-radius:50%;width:50px;height:50px;animation:1.5s linear infinite spin}
