@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:800;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:800;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_b83fcb44-module__p4ZNRq__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_b83fcb44-module__p4ZNRq__variable{--font-outfit:"Outfit", "Outfit Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_1ec0685a-module__ODW2ua__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_1ec0685a-module__ODW2ua__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--font-heading:var(--font-outfit), sans-serif;--font-body:var(--font-inter), sans-serif;--bg-dark-base:#060913;--bg-dark-card:#0f172a73;--border-glow-color:#58e6dd40;--accent-teal:#58e6dd;--accent-teal-glow:#58e6dd26;--accent-teal-hover:#7efff8;--text-white:#f8fafc;--text-slate:#94a3b8;--text-muted:#64748b;--card-border:#ffffff0f;--card-border-hover:#58e6dd4d;--card-radius:16px;--transition-smooth:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-dark-base);width:100%;min-height:100vh;color:var(--text-white);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 0 0,#0d948814 0,#0000 50%),radial-gradient(at 100% 100%,#58e6dd0d 0,#0000 50%);background-attachment:fixed}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.025em;font-weight:700}h1{background:linear-gradient(135deg, #fff 30%, var(--accent-teal) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:clamp(2rem,5vw,3rem)}h2{color:var(--text-white);border-bottom:1px solid #ffffff14;margin-bottom:1.5rem;padding-bottom:.75rem;font-size:clamp(1.25rem,3vw,1.75rem)}p{color:var(--text-slate);font-size:1rem;line-height:1.6}a{color:var(--accent-teal);transition:var(--transition-smooth);text-decoration:none}a:hover{color:var(--accent-teal-hover);text-shadow:0 0 8px #58e6dd80}.container{flex:1;max-width:900px;margin:0 auto;padding:2rem 1.5rem}.layout-wrapper{flex-direction:column;min-height:100vh;display:flex}header{border-bottom:1px solid var(--card-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background-color:#060913b3;position:sticky;top:0}.header-container{justify-content:space-between;align-items:center;max-width:900px;margin:0 auto;padding:1rem 1.5rem;display:flex}.logo-link{font-family:var(--font-heading);color:var(--text-white);transition:var(--transition-smooth);font-size:1.25rem;font-weight:800}.logo-link span{color:var(--accent-teal)}.logo-link:hover{text-shadow:0 0 10px var(--accent-teal-glow);color:var(--text-white)}nav{gap:1.5rem;display:flex}.nav-link{color:var(--text-slate);transition:var(--transition-smooth);font-size:.95rem;font-weight:500}.nav-link:hover,.nav-link.active{color:var(--accent-teal)}footer{border-top:1px solid var(--card-border);background-color:#06091380;justify-content:center;gap:1.5rem;margin-top:auto;padding:2rem 0;display:flex}.footer-icon{color:var(--text-slate);transition:var(--transition-smooth);border:1px solid var(--card-border);background:#ffffff05;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.footer-icon:hover{color:var(--accent-teal);background:var(--accent-teal-glow);border-color:var(--accent-teal);box-shadow:0 0 15px var(--accent-teal-glow);transform:translateY(-3px)}.glass-card{background:var(--bg-dark-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--card-border);border-radius:var(--card-radius);transition:var(--transition-smooth);margin-bottom:1.25rem;padding:1.75rem;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000004d}.glass-card:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-teal), transparent);width:100%;height:2px;transition:transform .6s;position:absolute;top:0;left:0;transform:translate(-100%)}.glass-card:hover{border-color:var(--card-border-hover);transform:translateY(-2px);box-shadow:0 12px 40px #58e6dd0f}.glass-card:hover:before{transform:translate(100%)}.project-card-layout{align-items:center;gap:1.5rem;display:flex}.project-img-container{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:60px;min-width:60px;height:60px;padding:8px;display:flex;overflow:hidden}.project-img-container.png-bg{background:#fff}.project-icon{object-fit:contain;width:100%;height:100%}.project-info{flex:1}.project-title-row{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.25rem;display:flex}.project-link-group{align-items:center;gap:.5rem;display:flex}.project-link{font-family:var(--font-heading);color:var(--text-white);transition:var(--transition-smooth);font-size:1.15rem;font-weight:600}.project-link:hover{color:var(--accent-teal);text-shadow:0 0 8px var(--accent-teal-glow)}.project-separator{color:var(--text-muted);font-size:.9rem;font-style:normal}.project-meta-row{color:var(--text-slate);flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.5rem;font-size:.85rem;display:flex}.project-position{color:var(--text-slate);background:#ffffff0a;border:1px solid #ffffff0a;border-radius:6px;padding:2px 8px;font-weight:500}.tech-icons{color:var(--text-slate);align-items:center;gap:.6rem;font-size:1.1rem;display:flex}.tech-icons svg{transition:var(--transition-smooth)}.tech-icons svg:hover{color:var(--accent-teal);transform:scale(1.15)}.tools-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.tool-card{flex-direction:column;justify-content:space-between;min-height:160px;display:flex}.tool-card h3{color:var(--text-white);margin-bottom:.5rem;font-size:1.35rem}.tool-card p{margin-bottom:1.5rem;font-size:.9rem}.tool-button{border:1px solid var(--border-glow-color);color:var(--accent-teal);border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition-smooth);text-align:center;background:#58e6dd14;justify-content:center;align-items:center;width:fit-content;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;display:inline-flex}.tool-button:hover{background:var(--accent-teal);color:var(--bg-dark-base);box-shadow:0 0 15px var(--accent-teal-glow);transform:translateY(-1px)}.calc-container{flex-direction:column;gap:1.5rem;width:100%;display:flex}.calc-result-box{text-align:center;background:#0003;border:1px dashed #58e6dd4d;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex}.calc-result-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.25rem;font-size:.8rem}.calc-result-value{font-family:var(--font-heading);color:var(--accent-teal);text-shadow:0 0 20px #58e6dd59;font-size:2.75rem;font-weight:800}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-slate);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.calc-select,.calc-input{color:var(--text-white);font-size:1rem;font-family:var(--font-body);transition:var(--transition-smooth);background:#0f172a99;border:1px solid #ffffff1a;border-radius:8px;outline:none;padding:.75rem}.calc-select:focus,.calc-input:focus{border-color:var(--accent-teal);box-shadow:0 0 10px #58e6dd26}.calc-slider-container{flex-direction:column;gap:.25rem;display:flex}.calc-slider{appearance:none;width:100%;height:6px;transition:var(--transition-smooth);background:#ffffff1a;border-radius:3px;outline:none;margin:10px 0}.calc-slider::-webkit-slider-thumb{appearance:none;background:var(--accent-teal);cursor:pointer;width:20px;height:20px;transition:var(--transition-smooth);border-radius:50%;box-shadow:0 0 10px #58e6dd80}.calc-slider::-webkit-slider-thumb:hover{background:var(--text-white);box-shadow:0 0 15px var(--accent-teal);transform:scale(1.2)}.calc-slider::-moz-range-thumb{background:var(--accent-teal);cursor:pointer;width:20px;height:20px;transition:var(--transition-smooth);border:none;border-radius:50%;box-shadow:0 0 10px #58e6dd80}.calc-slider::-moz-range-thumb:hover{background:var(--text-white);box-shadow:0 0 15px var(--accent-teal);transform:scale(1.2)}.quick-grid{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}@media (max-width:480px){.quick-grid{grid-template-columns:repeat(3,1fr)}}.quick-btn{color:var(--text-slate);cursor:pointer;transition:var(--transition-smooth);background:#ffffff08;border:1px solid #ffffff0f;border-radius:6px;padding:.5rem;font-size:.85rem;font-weight:500}.quick-btn:hover{background:var(--accent-teal-glow);color:var(--accent-teal);border-color:var(--accent-teal)}.action-row{gap:.75rem;margin-top:.5rem;display:flex}.action-btn{color:var(--text-slate);cursor:pointer;transition:var(--transition-smooth);background:#ffffff05;border:1px solid #ffffff0f;border-radius:8px;flex:1;padding:.65rem;font-weight:600}.action-btn.primary{border-color:var(--border-glow-color);color:var(--accent-teal);background:#58e6dd14}.action-btn.primary:hover{background:var(--accent-teal);color:var(--bg-dark-base);box-shadow:0 0 15px var(--accent-teal-glow)}.action-btn:not(.primary):hover{color:#ef4444;background:#ef444414;border-color:#ef44444d}.toast-alert{z-index:1000;border:1px solid var(--accent-teal);box-shadow:0 10px 25px -5px #00000080, 0 0 15px var(--accent-teal-glow);background:#0f172a;border-radius:8px;align-items:center;gap:.75rem;padding:1rem 1.5rem;animation:.3s cubic-bezier(.16,1,.3,1) slideInUp;display:flex;position:fixed;bottom:24px;right:24px}.toast-alert p{color:var(--text-white);font-size:.9rem;font-weight:500}.formula-credit{text-align:center;color:var(--text-muted);margin-top:1rem;font-size:.8rem}.formula-credit a{font-weight:500}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.6s cubic-bezier(.16,1,.3,1) forwards slideInUp}@media (max-width:768px){.project-card-layout{flex-direction:column;align-items:flex-start;gap:1rem}.project-img-container{width:50px;min-width:50px;height:50px}.project-title-row{flex-direction:column;align-items:flex-start;gap:.15rem}.project-separator{display:none}}.level-container{flex-direction:column;gap:1.5rem;max-width:680px;margin:0 auto;display:flex}.level-permission-card{border-color:var(--accent-teal);background:#58e6dd0d;justify-content:space-between;align-items:center;gap:1rem;display:flex}.level-permission-content{align-items:center;gap:1rem;display:flex}.level-icon-pulse{color:var(--accent-teal);animation:2s ease-in-out infinite pulseGlow}@keyframes pulseGlow{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;filter:drop-shadow(0 0 8px var(--accent-teal));transform:scale(1.1)}}.level-alert-banner{color:#f87171;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;justify-content:space-between;align-items:center;padding:.75rem 1rem;font-size:.9rem;display:flex}.level-hud{flex-direction:column;gap:1rem;display:flex}.level-hud-header{border-bottom:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-bottom:.75rem;display:flex}.level-hud-title{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.level-status-pill{letter-spacing:.03em;border-radius:9999px;justify-content:center;align-items:center;gap:.4rem;min-width:105px;height:28px;padding:.35rem .75rem;font-size:.8rem;font-weight:700;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.level-status-perfect{color:#4ade80;background:#22c55e26;border:1px solid #22c55e;box-shadow:0 0 15px #22c55e4d}.level-status-near{color:#fde047;background:#eab30826;border:1px solid #eab308;box-shadow:0 0 12px #eab30833}.level-status-off{color:#fca5a5;background:#ef44441f;border:1px solid #ef444466}.level-hold-pill,.level-cal-pill{border:1px solid var(--accent-teal);height:28px;color:var(--accent-teal);background:#58e6dd1f;border-radius:9999px;justify-content:center;align-items:center;gap:.3rem;padding:.3rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.level-sensor-active-pill{color:#4ade80;background:#22c55e1f;border:1px solid #22c55e66;border-radius:9999px;justify-content:center;align-items:center;gap:.3rem;height:28px;padding:.3rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.level-mode-switchers{background:#0000004d;border:1px solid #ffffff0f;border-radius:8px;gap:.2rem;padding:.2rem;display:flex}.mode-btn{color:var(--text-slate);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:6px;align-items:center;gap:.3rem;padding:.35rem .7rem;font-size:.8rem;font-weight:500;display:inline-flex}.mode-btn:hover{color:var(--text-white)}.mode-btn.active{color:var(--accent-teal);background:#58e6dd26;font-weight:600}.level-readouts-grid{grid-template-columns:1.4fr 1fr 1fr;gap:.75rem;display:grid}@media (max-width:580px){.level-readouts-grid{grid-template-columns:1fr}}.level-readout-item{text-align:center;background:#00000040;border:1px solid #ffffff0d;border-radius:10px;padding:.75rem}.level-readout-item.main{background:#58e6dd08;border-color:#58e6dd26}.readout-label{letter-spacing:.05em;color:var(--text-muted);margin-bottom:.25rem;font-size:.72rem;font-weight:600}.readout-value{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:800;font-family:var(--font-heading);color:var(--text-white);line-height:1.1}.readout-value.sub{color:var(--text-slate);font-size:1.35rem}.level-guidance-bar{text-align:center;background:#ffffff05;border:1px solid #ffffff0d;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:.6rem 1rem;display:flex}.guidance-text{color:var(--text-white);font-size:.9rem;font-weight:500}.level-visual-wrapper{flex-direction:column;align-items:center;gap:2rem;padding:2rem 1.5rem;display:flex}.bullseye-section,.tubes-section{flex-direction:column;align-items:center;width:100%;display:flex}.bullseye-title,.tubes-title{text-align:center;flex-direction:column;gap:.2rem;margin-bottom:1.25rem;display:flex}.bullseye-title span:first-child,.tubes-title span:first-child{color:var(--text-white);font-size:1.15rem;font-weight:700}.bullseye-subtitle,.tubes-subtitle{color:var(--text-muted);font-size:.8rem}.bullseye-housing{background:radial-gradient(circle at 35% 35%,#131d33 0%,#080d1a 75%,#03060c 100%);border:3px solid #ffffff1f;border-radius:50%;width:260px;height:260px;transition:border-color .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:inset 0 0 30px #000c,inset 0 0 10px #58e6dd14,0 10px 30px #0009,0 0 20px #0006}.bullseye-housing.perfect-level{border-color:#22c55e;box-shadow:inset 0 0 30px #000c,inset 0 0 15px #22c55e33,0 0 30px #22c55e59}.bullseye-housing.near-level{border-color:#eab308;box-shadow:inset 0 0 30px #000c,0 0 20px #eab30833}.bullseye-ring{pointer-events:none;border:1px dashed #ffffff26;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ring-10deg{width:190px;height:190px}.ring-5deg{width:120px;height:120px}.ring-2deg{width:68px;height:68px}.ring-target{border:1.5px solid var(--accent-teal);background:#58e6dd0a;width:32px;height:32px;box-shadow:0 0 10px #58e6dd33}.ring-label{color:var(--text-muted);font-size:.65rem;font-weight:600;position:absolute;top:2px;right:18px}.bullseye-crosshair-h{pointer-events:none;background:#ffffff1f;height:1px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.bullseye-crosshair-v{pointer-events:none;background:#ffffff1f;width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.bullseye-center-dot{background:var(--accent-teal);width:6px;height:6px;box-shadow:0 0 8px var(--accent-teal);pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bullseye-bubble{will-change:transform;pointer-events:none;background:radial-gradient(circle at 35% 30%,#a7f3d0 0%,#10b981 45%,#047857 85%,#064e3b 100%);border:1px solid #fff6;border-radius:50%;width:44px;height:44px;transition:transform 50ms linear;position:absolute;top:50%;left:50%;box-shadow:0 0 16px #10b98199,inset 0 2px 4px #fff9,inset 0 -2px 6px #0006}.bullseye-bubble.bubble-perfect{background:radial-gradient(circle at 35% 30%,#ecfdf5 0%,#34d399 45%,#059669 85%,#065f46 100%);box-shadow:0 0 24px #34d399e6,0 0 10px #34d399,inset 0 2px 6px #fff}.bubble-highlight{filter:blur(1px);background:#ffffffb3;border-radius:50%;width:35%;height:30%;position:absolute;top:15%;left:20%}.tube-container{width:100%;max-width:400px;margin-bottom:1.25rem}.tube-header{color:var(--text-slate);justify-content:space-between;align-items:center;margin-bottom:.4rem;font-size:.85rem;display:flex}.tube-angle{color:var(--text-white);font-variant-numeric:tabular-nums;font-weight:700}.tube-vial{background:linear-gradient(#090e1a 0%,#152238 50%,#090e1a 100%);border:2px solid #ffffff1a;border-radius:20px;width:100%;height:40px;position:relative;overflow:hidden;box-shadow:inset 0 2px 6px #000c,inset 0 -2px 6px #ffffff0d}.tube-vial.perfect{border-color:#22c55e;box-shadow:inset 0 0 12px #22c55e33,0 0 15px #22c55e40}.tube-graduations{pointer-events:none;justify-content:space-between;align-items:center;width:60px;display:flex;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.tube-line{background:#ffffff59;width:2px;height:100%}.tube-target-zone{background:#58e6dd14;border-left:1px dashed #58e6dd80;border-right:1px dashed #58e6dd80;width:24px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.tube-bubble{pointer-events:none;will-change:transform;background:radial-gradient(at 35% 30%,#a7f3d0 0%,#10b981 45%,#047857 85%,#064e3b 100%);border:1px solid #fff6;border-radius:15px;width:48px;height:30px;transition:transform 50ms linear;position:absolute;top:50%;left:50%;box-shadow:0 0 12px #10b98199}.level-controls-card{flex-direction:column;gap:1rem;display:flex}.level-controls-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}@media (max-width:580px){.level-controls-grid{grid-template-columns:1fr}}.level-controls-grid .action-btn{justify-content:center;align-items:center;gap:.5rem;font-size:.85rem;display:inline-flex}
