*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#eef3f6;color:#0c1524;font-family:DM Sans,Segoe UI,sans-serif;margin:0;min-height:100vh}code{font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}#root{min-height:100vh}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--ink:#0c1524;--ink-soft:#3d4f63;--ink-muted:#6b7c8f;--mist:#eef3f6;--mist-2:#f7fafc;--paper:#fff;--line:#0c15241a;--line-strong:#0c15242e;--accent:#0d7377;--accent-bright:#14919b;--accent-soft:#0d73771f;--accent-glow:#14919b47;--panel:#111827;--panel-2:#0b1220;--panel-line:#ffffff14;--good:#0f9f6e;--warn:#c27803;--bad:#d64545;--info:#2f6fed;--radius:14px;--radius-sm:10px;--shadow:0 18px 50px #0c15241a;--font-display:"Sora","DM Sans",sans-serif;--font-body:"DM Sans","Segoe UI",sans-serif;--font-mono:"JetBrains Mono","SF Mono",Menlo,Consolas,monospace}.brand-mark{font-weight:800;letter-spacing:-.04em;line-height:.95}.brand-mark,.btn{font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display)}.btn{align-items:center;border:none;border-radius:999px;display:inline-flex;font-size:.95rem;font-weight:700;gap:.55rem;justify-content:center;letter-spacing:-.01em;padding:.95rem 1.6rem;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:#0c1524;background:var(--ink);box-shadow:0 12px 30px #0c15242e;color:#fff}.btn-primary:hover{background:#162338}.btn-accent{background:#0d7377;background:var(--accent);box-shadow:0 12px 28px #14919b47;box-shadow:0 12px 28px var(--accent-glow);color:#fff}.btn-accent:hover{background:#14919b;background:var(--accent-bright)}.btn-ghost{background:#0000;border:1px solid #0c15242e;border:1px solid var(--line-strong);color:#0c1524;color:var(--ink)}.btn-ghost:hover{border-color:#0c1524;border-color:var(--ink)}.btn:disabled{cursor:not-allowed;opacity:.55;transform:none}.fade-up{animation:fadeUp .7s cubic-bezier(.22,1,.36,1) both}.fade-up-delay-1{animation-delay:.08s}.fade-up-delay-2{animation-delay:.16s}.fade-up-delay-3{animation-delay:.24s}.fade-up-delay-4{animation-delay:.32s}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes drift{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(2%,-1.5%,0) scale(1.03)}}@keyframes sheen{0%{background-position:0 50%}to{background-position:100% 50%}}@keyframes pulseLine{0%,to{opacity:.35}50%{opacity:.9}}.landing{background:radial-gradient(1200px 700px at 80% -10%,#14919b2e,#0000 55%),radial-gradient(900px 600px at -10% 20%,#0c152414,#0000 50%),linear-gradient(180deg,#e8eef3,#f5f8fa 45%,#eef3f6);color:#0c1524;color:var(--ink);min-height:100vh;overflow:hidden}.landing-nav{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1120px;padding:1.25rem 1.5rem;position:relative;z-index:2}.landing-nav .brand-mark{color:#0c1524;color:var(--ink);font-size:1.05rem}.landing-nav .brand-mark span{color:#0d7377;color:var(--accent)}.hero{display:grid;min-height:calc(100vh - 72px);padding:2rem 1.5rem 4rem;place-items:center;position:relative}.hero-atmosphere{inset:0;overflow:hidden;pointer-events:none;position:absolute}.hero-grid{background-image:linear-gradient(rgba(12,21,36,.045) 1px,#0000 0),linear-gradient(90deg,rgba(12,21,36,.045) 1px,#0000 0);background-size:48px 48px;inset:0;-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 20%,#0000 75%);mask-image:radial-gradient(ellipse at 50% 40%,#000 20%,#0000 75%);position:absolute}.hero-orb{animation:drift 12s ease-in-out infinite;border-radius:50%;filter:blur(40px);position:absolute}.hero-orb-a{background:#14919b38;height:420px;right:8%;top:8%;width:420px}.hero-orb-b{animation-delay:-4s;background:#0c152414;bottom:5%;height:360px;left:5%;width:360px}.hero-codeplane{border-radius:0;height:70%;inset:12% 4% auto;-webkit-mask-image:linear-gradient(180deg,#0000,#000 18%,#000 70%,#0000);mask-image:linear-gradient(180deg,#0000,#000 18%,#000 70%,#0000);opacity:.22;overflow:hidden;position:absolute}.hero-codeplane pre{-webkit-text-fill-color:#0000;animation:sheen 18s linear infinite;background:linear-gradient(90deg,#0c15248c,#0d7377bf,#0c15248c);-webkit-background-clip:text;background-clip:text;background-size:200% 100%;color:#0c1524;color:var(--ink);font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:clamp(11px,1.2vw,13px);line-height:1.7;margin:0;padding:2rem;white-space:pre}.hero-content{max-width:820px;position:relative;text-align:center;z-index:1}.hero-brand{font-size:clamp(3.4rem,11vw,7.2rem);margin:0 0 1.25rem}.hero-brand span{color:#0d7377;color:var(--accent)}.hero-headline{color:#0c1524;color:var(--ink);font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:clamp(1.35rem,3.2vw,2rem);font-weight:600;letter-spacing:-.03em;line-height:1.2;margin:0 auto 1rem;max-width:18ch}.hero-support{color:#3d4f63;color:var(--ink-soft);font-size:1.05rem;line-height:1.55;margin:0 auto 2rem;max-width:38ch}.hero-cta{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.landing-section{margin:0 auto;max-width:1120px;padding:4.5rem 1.5rem 5rem;position:relative;z-index:1}.section-kicker{color:#0d7377;color:var(--accent);font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.14em;margin:0 0 .75rem;text-transform:uppercase}.section-title{font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:700;letter-spacing:-.03em;margin:0 0 .75rem}.section-copy{color:#3d4f63;color:var(--ink-soft);font-size:1.05rem;line-height:1.6;margin:0 0 2.5rem;max-width:48ch}.tools-rail{grid-gap:1px;background:#0c15241a;background:var(--line);border:1px solid #0c15241a;border:1px solid var(--line);border-radius:14px;border-radius:var(--radius);display:grid;gap:1px;grid-template-columns:repeat(5,minmax(0,1fr));overflow:hidden}.tool-cell{background:#ffffffb8;min-height:150px;padding:1.4rem 1.1rem;transition:background .2s ease}.tool-cell:hover{background:#fff}.tool-cell h3{font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:1rem;letter-spacing:-.02em;margin:0 0 .45rem}.tool-cell p{color:#6b7c8f;color:var(--ink-muted);font-size:.9rem;line-height:1.45;margin:0}.tool-icon{color:#0d7377;color:var(--accent);height:28px;margin-bottom:1rem;width:28px}.feature-split{grid-gap:2.5rem;align-items:center;display:grid;gap:2.5rem;grid-template-columns:1.1fr .9fr}.feature-visual{background:#111827;background:var(--panel);border-radius:14px;border-radius:var(--radius);box-shadow:0 18px 50px #0c15241a;box-shadow:var(--shadow);color:#d7e0ea;min-height:280px;overflow:hidden;padding:1.25rem;position:relative}.feature-visual:after{background:linear-gradient(180deg,#0000,#0d737740);content:"";height:40%;inset:auto 0 0;pointer-events:none;position:absolute}.feature-visual-top{align-items:center;color:#ffffff73;display:flex;font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.72rem;gap:.45rem;margin-bottom:1rem}.dot{background:#fff3;border-radius:50%;height:8px;width:8px}.dot.live{animation:pulseLine 1.8s ease-in-out infinite;background:#14919b;background:var(--accent-bright)}.feature-visual pre{font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.78rem;line-height:1.65;margin:0;white-space:pre-wrap}.landing-footer{border-top:1px solid #0c15241a;border-top:1px solid var(--line);color:#6b7c8f;color:var(--ink-muted);font-size:.85rem;padding:1.5rem;text-align:center}@media (max-width:900px){.tools-rail{grid-template-columns:1fr 1fr}.feature-split{grid-template-columns:1fr}}@media (max-width:560px){.tools-rail{grid-template-columns:1fr}.hero-codeplane{inset:18% -20% auto}}.signin{background:#eef3f6;background:var(--mist);display:grid;grid-template-columns:1.05fr .95fr;min-height:100vh}.signin-visual{background:radial-gradient(800px 500px at 20% 20%,#14919b47,#0000 55%),linear-gradient(160deg,#0b1220,#122033 55%,#0d7377 140%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:2.5rem;position:relative}.signin-visual .brand-mark{font-size:1.2rem}.signin-visual .brand-mark span{color:#7ee0e4}.signin-visual-copy h2{font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;line-height:1.1;margin:0 0 1rem;max-width:12ch}.signin-visual-copy p{color:#ffffffb8;font-size:1.05rem;line-height:1.6;margin:0;max-width:34ch}.signin-code{color:#ffffff8c;font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.78rem;line-height:1.7;opacity:.85;white-space:pre-wrap}.signin-panel{align-items:center;background:radial-gradient(600px 400px at 100% 0,#14919b14,#0000 50%),#f7fafc;background:radial-gradient(600px 400px at 100% 0,#14919b14,#0000 50%),var(--mist-2);display:flex;justify-content:center;padding:2rem 1.5rem}.signin-card{width:min(420px,100%)}.signin-card h1{font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:2rem;letter-spacing:-.04em;margin:0 0 .5rem}.signin-card>p{color:#3d4f63;color:var(--ink-soft);line-height:1.55;margin:0 0 2rem}.signin-benefits{display:flex;flex-direction:column;gap:.65rem;margin-bottom:2rem}.signin-benefit{align-items:center;color:#3d4f63;color:var(--ink-soft);display:flex;font-size:.95rem;gap:.75rem}.signin-benefit svg{color:#0d7377;color:var(--accent);flex-shrink:0;height:18px;width:18px}.signin-google{display:flex;justify-content:flex-start;margin-bottom:1.25rem}.signin-note{color:#6b7c8f;color:var(--ink-muted);font-size:.8rem;line-height:1.5;margin:0}.signin-back{background:none;border:none;color:#0d7377;color:var(--accent);font-weight:600;margin-top:1.75rem;padding:0}.signin-back:hover{color:#0c1524;color:var(--ink)}@media (max-width:860px){.signin{grid-template-columns:1fr}.signin-visual{min-height:280px}.signin-code{display:none}}.dashboard{background:radial-gradient(900px 500px at 100% 0,#14919b14,#0000 50%),#eef3f6;background:radial-gradient(900px 500px at 100% 0,#14919b14,#0000 50%),var(--mist);color:#0c1524;color:var(--ink);min-height:100vh}.dash-header{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7fafcd9;border-bottom:1px solid #0c15241a;border-bottom:1px solid var(--line);display:flex;gap:1rem;justify-content:space-between;padding:.9rem 1.25rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.dash-brand{background:none;border:none;color:#0c1524;color:var(--ink);font-size:1.05rem;padding:0}.dash-brand span{color:#0d7377;color:var(--accent)}.dash-user{align-items:center;display:flex;gap:.75rem}.dash-user img{border:2px solid #0d737759;border-radius:50%;height:34px;width:34px}.dash-user span{font-size:.9rem}.btn-signout,.dash-user span{color:#3d4f63;color:var(--ink-soft)}.btn-signout{background:#0000;border:1px solid #0c15242e;border:1px solid var(--line-strong);border-radius:999px;font-size:.82rem;font-weight:600;padding:.45rem .9rem}.btn-signout:hover{border-color:#d6454573;color:#d64545;color:var(--bad)}.dash-body{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 65px)}.dash-sidebar{background:#ffffff73;border-right:1px solid #0c15241a;border-right:1px solid var(--line);padding:1.25rem .9rem}.sidebar-label{color:#6b7c8f;color:var(--ink-muted);font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.16em;margin:0 .5rem .85rem;text-transform:uppercase}.tool-btn{background:#0000;border:1px solid #0000;border-radius:12px;color:#0c1524;color:var(--ink);margin-bottom:.35rem;padding:.85rem .9rem;text-align:left;transition:background .15s ease,border-color .15s ease;width:100%}.tool-btn:hover{background:#ffffffb3}.tool-btn.active{background:#fff;border-color:#0c15242e;border-color:var(--line-strong);box-shadow:0 8px 20px #0c15240d}.tool-btn-title{align-items:center;display:flex;font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:.92rem;font-weight:700;gap:.55rem;letter-spacing:-.02em;margin-bottom:.2rem}.tool-btn-title svg{color:#0d7377;color:var(--accent);height:16px;width:16px}.tool-btn.active .tool-btn-title svg{color:#0d7377;color:var(--tool-color,var(--accent))}.tool-btn p{color:#6b7c8f;color:var(--ink-muted);font-size:.78rem;line-height:1.4;margin:0;padding-left:1.55rem}.dash-main{max-width:980px;padding:1.5rem}.workspace-title{align-items:baseline;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.workspace-title h2{font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:1.45rem;letter-spacing:-.03em;margin:0}.workspace-title p{color:#6b7c8f;color:var(--ink-muted);font-size:.9rem;margin:.2rem 0 0}.field{margin-bottom:1rem}.field label{color:#6b7c8f;color:var(--ink-muted);display:block;font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;margin-bottom:.4rem;text-transform:uppercase}.field input,.field select,.field textarea,.upload-btn{background:#fff;border:1px solid #0c15242e;border:1px solid var(--line-strong);border-radius:10px;border-radius:var(--radius-sm);color:#0c1524;color:var(--ink);outline:none;padding:.8rem .95rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.field input:focus,.field select:focus,.field textarea:focus{border-color:#0d7377;border-color:var(--accent);box-shadow:0 0 0 3px #0d73771f;box-shadow:0 0 0 3px var(--accent-soft)}.field textarea{background:#111827;background:var(--panel);border-color:#1f2937;color:#d7e0ea;font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.85rem;line-height:1.65;min-height:240px;resize:vertical}.field textarea:focus{border-color:#14919b;border-color:var(--accent-bright);box-shadow:0 0 0 3px #14919b33}.field-error input{background:#fff7f7;border-color:#d6454573;color:#8f1f1f}.inline-row{display:flex;gap:.5rem}.inline-row input{flex:1 1}.btn-secondary{background:#fff;border:1px solid #0c15242e;border:1px solid var(--line-strong);border-radius:10px;border-radius:var(--radius-sm);color:#0c1524;color:var(--ink);font-size:.85rem;font-weight:600;padding:.8rem 1rem;white-space:nowrap}.btn-secondary:hover{border-color:#0d7377;border-color:var(--accent);color:#0d7377;color:var(--accent)}.field-hint{font-size:.8rem;margin:.4rem 0 0}.field-hint.ok{color:#0f9f6e;color:var(--good)}.field-hint.err{color:#d64545;color:var(--bad)}.controls{align-items:end;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.controls .field{margin:0;min-width:140px}.controls .upload-btn{align-items:center;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;justify-content:center;width:auto}.controls .action{margin-left:auto}.results-wrap{border-top:1px solid #0c15241a;border-top:1px solid var(--line);padding-top:1.25rem}.results-label{color:#6b7c8f;color:var(--ink-muted);font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.14em;margin-bottom:1rem;text-transform:uppercase}.result-stack{display:flex;flex-direction:column;gap:.9rem}.result-block{background:#fff;border:1px solid #0c15241a;border:1px solid var(--line);border-radius:14px;border-radius:var(--radius);padding:1.25rem}.result-block h3{font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:1rem;letter-spacing:-.02em;margin:0 0 .75rem}.result-block .md{color:#3d4f63;color:var(--ink-soft);font-size:.92rem;line-height:1.65}.result-block .md p{margin:0 0 .65rem}.result-block .md p:last-child{margin-bottom:0}.result-block .md ul{margin:0 0 .65rem;padding-left:1.2rem}.score-block{background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--score-color) 8%,#fff));border-color:color-mix(in srgb,var(--score-color) 45%,#fff);text-align:center}.score-block .label{color:#6b7c8f;color:var(--ink-muted);font-family:JetBrains Mono,SF Mono,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;margin:0 0 .35rem}.score-block .value{color:var(--score-color);font-family:Sora,DM Sans,sans-serif;font-family:var(--font-display);font-size:3.5rem;font-weight:800;letter-spacing:-.04em;line-height:1;margin:0}.score-block .value span{color:#6b7c8f;color:var(--ink-muted);font-size:1.2rem}.code-result-head{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.code-result-head h3{margin:0}.copy-btn{background:#0d7377;background:var(--accent);border:none;border-radius:999px;color:#fff;font-size:.78rem;font-weight:700;padding:.4rem .9rem}.copy-btn:hover{background:#14919b;background:var(--accent-bright)}.result-bugs{border-left:3px solid #d64545;border-left:3px solid var(--bad)}.result-security{border-left:3px solid #c27803;border-left:3px solid var(--warn)}.result-recommendations{border-left:3px solid #2f6fed;border-left:3px solid var(--info)}.result-code{border-left:3px solid #0f9f6e;border-left:3px solid var(--good)}.mobile-tools{display:none}@media (max-width:860px){.dash-body{grid-template-columns:1fr}.dash-sidebar{display:none}.mobile-tools{display:flex;gap:.45rem;margin-bottom:1rem;overflow-x:auto;padding-bottom:.25rem}.mobile-tool{background:#fff;border:1px solid #0c15242e;border:1px solid var(--line-strong);border-radius:999px;color:#3d4f63;color:var(--ink-soft);flex:0 0 auto;font-size:.82rem;font-weight:600;padding:.5rem .9rem}.mobile-tool.active{background:#0c1524;background:var(--ink);border-color:#0c1524;border-color:var(--ink);color:#fff}.dash-user span{display:none}.controls .action{margin-left:0;width:100%}.controls .action .btn{width:100%}}
/*# sourceMappingURL=main.d94aed80.css.map*/