@import "https://fonts.googleapis.com/css2?family=Fredoka+One&family=Nunito:wght@400;600;800&family=Titan+One&family=Space+Grotesk:wght@700&display=swap";:root{--tz-green:#1eb53a;--tz-yellow:#fcd116;--tz-blue:#00a3dd;--tz-black:#121212;--primary-color:var(--tz-green);--secondary-color:var(--tz-blue);--accent-color:var(--tz-yellow);--background-color:#08140a;--surface-color:#122418;--text-primary:#fff;--text-secondary:#cbd5e0;--font-display:"Titan One", cursive;--font-body:"Nunito", sans-serif;--font-accent:"Space Grotesk", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body:after{content:"";opacity:.08;z-index:1000;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");width:100%;height:100%;position:fixed;top:0;left:0}body{background-color:var(--background-color);color:var(--text-primary);font-family:var(--font-body);background-color:#0000;background-image:radial-gradient(circle at 10% 10%,#1eb53a33 0%,#0000 40%),radial-gradient(circle at 90% 90%,#00a3dd33 0%,#0000 40%),linear-gradient(135deg,#08140a 0%,#000 100%);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;justify-content:center;align-items:center;min-height:100vh;display:flex;overflow-x:hidden}@keyframes patternScroll{0%{background-position:0 0}to{background-position:120px 120px}}body:before{content:"";opacity:.06;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg width='120' height='120' viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fcd116' fill-opacity='1' fill-rule='evenodd'%3E%3Cpath d='M60 105L50 120h20L60 105zM15 60L0 50v20l15-10zm90 0l15 10V50l-15 10zM60 15L70 0H50l10 15zM30 30l-10 5 5 10 5-10-5-5zm60 0l-5 5 5 10 5-10-10-5zM30 90l-5-5-5 10 10 5 5-10zm60 0l5-5-10-5-5 10 10 5z'/%3E%3Ccircle cx='60' cy='60' r='10'/%3E%3Cpath d='M60 85c-13.8 0-25-11.2-25-25s11.2-25 25-25 25 11.2 25 25-11.2 25-25 25zm0-5c11 0 20-9 20-20s-9-20-20-20-20 9-20 20 9 20 20 20z'/%3E%3C/g%3E%3C/svg%3E");animation:20s linear infinite patternScroll;position:fixed;inset:0}@media (width<=600px){body{align-items:flex-start}}@keyframes mainFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}main{background:linear-gradient(var(--surface-color), var(--surface-color)) padding-box, linear-gradient(135deg, var(--tz-green) 0%, var(--tz-yellow) 33%, var(--tz-blue) 66%, var(--tz-black) 100%) border-box;text-align:center;border:8px solid #0000;border-radius:48px;width:100%;max-width:680px;margin:2rem;padding:4rem 3rem;animation:.8s cubic-bezier(.175,.885,.32,1.275) forwards popIn;position:relative;overflow:hidden;box-shadow:0 50px 100px #000000b3,inset 0 2px 10px #ffffff0d}.swahili-tag{font-family:var(--font-accent);color:var(--tz-yellow);text-transform:uppercase;letter-spacing:4px;opacity:.8;margin-bottom:.5rem;font-size:.9rem}h1{color:#fff;text-shadow:4px 4px 0 var(--tz-green), 8px 8px 0 #0006;margin-bottom:2rem;font-size:3.8rem;line-height:.9}h2{font-family:var(--font-display);color:var(--tz-yellow);margin-bottom:1.5rem;font-size:2rem}button{font-family:var(--font-display);background:var(--tz-green);color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:3px;border:none;border-radius:24px;padding:1.4rem 3.5rem;font-size:1.4rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;box-shadow:0 10px #147a26,0 20px 40px #00000080}button:hover{background:#24d148;transform:translateY(-6px)scale(1.02);box-shadow:0 16px #147a26,0 25px 50px #0009}button:active{transform:translateY(6px);box-shadow:0 4px #147a26,0 5px 15px #0006}.options button{letter-spacing:0;text-transform:none;font-size:1.2rem;font-family:var(--font-body);background:#ffffff0a;border:3px solid #ffffff1a;border-radius:28px;padding:1.6rem 2rem;font-weight:800;box-shadow:0 8px #0006}.options button:hover{border-color:var(--tz-blue);background:#00a3dd26;box-shadow:0 12px #007bb080}.match-badge{background:var(--tz-yellow);color:#000;box-shadow:4px 4px 0 var(--tz-blue), 0 8px 20px #0006;font-size:1.3rem;font-family:var(--font-display);border-radius:60px;padding:8px 24px;display:inline-block;transform:rotate(-3deg)translateY(-10px)}.stats-section{border:2px solid var(--tz-green);background:#0006;border-radius:32px;margin-top:2rem;padding:2.5rem}.trait-row{margin-bottom:2rem}.trait-labels{font-family:var(--font-accent);text-transform:uppercase;letter-spacing:1px;justify-content:space-between;margin-bottom:.8rem;font-size:.85rem;display:flex}.progress-bar-container{background:#000;border:2px solid #ffffff1a;border-radius:16px;height:32px;position:relative;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--tz-green), var(--tz-yellow));height:100%;transition:width 1s cubic-bezier(.175,.885,.32,1.275)}.progress-marker{z-index:2;background:#ffffff4d;width:2px;position:absolute;top:0;bottom:0}.trait-result{font-family:var(--font-display);color:var(--accent-color);margin-top:.8rem;font-size:1.1rem}.compass-grid span{text-shadow:0 0 10px #00a3dd80;font-family:var(--font-accent)!important;letter-spacing:3px!important;color:var(--tz-blue)!important;font-size:11px!important}.runner-up-item{border-left:4px solid var(--tz-blue);background:#ffffff05;border-radius:16px;flex-direction:column;gap:12px;margin-bottom:12px;padding:15px 20px;transition:all .3s;display:flex}.runner-up-item:hover{background:#ffffff14;transform:translate(5px)}@media (width<=600px){main{border-width:4px;border-radius:24px;margin:.5rem auto;padding:1.5rem 1rem}h1{font-size:2.2rem}h2{font-size:1.4rem}button{border-radius:18px;padding:1rem 2rem;font-size:1.1rem}.options button{border-radius:20px;padding:1rem 1.2rem;font-size:1rem}.runner-up-item:hover{transform:none}.compass-grid span{letter-spacing:1px!important;font-size:9px!important}.stats-section{padding:1.5rem 1rem}.match-badge{font-size:1rem}}
