@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;700;800;900&family=JetBrains+Mono:wght@400;700&display=swap";:root{--bg: #04040A;--white: #F0F4FF;--cyan: #00F5FF;--gold: #FFB800;--purple: #9D00FF;--magenta: #FF006E;--lime: #39FF14;--grey: #8892A4;--grey2: #4A5568;--card-bg: rgba(255,255,255,.025);--card-border: rgba(255,255,255,.08);--glass-blur: blur(12px)}*,*:before,*:after{box-sizing:border-box}body{font-family:Inter,sans-serif;background-color:var(--bg);color:var(--white);margin:0;display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding:20px;font-size:.95rem;line-height:1.8}.card-container{width:100%;max-width:800px;margin:0 auto}.card{background:var(--card-bg);padding:40px;border:1px solid var(--card-border);border-radius:12px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.header{text-align:center;margin-bottom:40px}.logo-area{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:8px}h1{font-size:clamp(1.8rem,5vw,2.4rem);font-weight:900;color:var(--white);letter-spacing:-.03em;margin:0}.subtitle{color:var(--cyan);font-size:.85rem;font-weight:700;letter-spacing:.1em;font-family:JetBrains Mono,monospace}.step-indicator{display:flex;justify-content:space-between;margin-bottom:40px;position:relative;max-width:400px;margin-left:auto;margin-right:auto}.step-indicator:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--card-border);z-index:0}.step-dot{width:40px;height:40px;background:#ffffff08;border:1px solid var(--card-border);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;z-index:1;transition:all .25s cubic-bezier(.4,0,.2,1);color:var(--grey2);font-family:JetBrains Mono,monospace;font-size:.85rem}.step-dot.active{border-color:var(--cyan);background:var(--cyan);color:#04040a;box-shadow:0 0 15px #00f5ff4d}.step-dot.completed{border-color:var(--gold);background:var(--gold);color:#04040a;box-shadow:0 0 15px #ffb8004d}.form-group{margin-bottom:32px}label{display:block;font-size:1rem;font-weight:700;margin-bottom:8px;color:var(--white);letter-spacing:.02em}.hint{color:var(--grey);font-size:.85rem;margin-bottom:16px;margin-top:-4px}input,textarea{width:100%;padding:16px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;font-size:1rem;color:var(--white);transition:border-color .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1);box-sizing:border-box;font-family:Inter,sans-serif}textarea{min-height:150px;resize:vertical}input:focus,textarea:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 10px #00f5ff33}input::placeholder,textarea::placeholder{color:var(--grey2)}.button-group{display:flex;gap:16px;margin-top:32px}button{flex:1;padding:.65rem 1.4rem;font-weight:700;font-size:1rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px;font-family:Inter,sans-serif;border:none;border-radius:6px}.btn-primary{background:var(--cyan);color:#04040a;box-shadow:0 0 20px #00f5ff66}.btn-primary:hover{box-shadow:0 0 30px #00f5ff99;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 0 15px #00f5ff4d}.btn-secondary{background:transparent;border:1px solid var(--card-border);color:var(--white);border-radius:6px}.btn-secondary:hover{border-color:#ffffff26;background:#ffffff08}.btn-secondary.active{border-color:#00f5ff33;background:#00f5ff14}.processing-state{text-align:center;padding:60px 0}.spinner{width:50px;height:50px;border:2px solid var(--card-border);border-top:2px solid var(--cyan);border-radius:50%;margin:0 auto 24px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-header{text-align:center;margin-bottom:32px}.success-header h2{color:var(--cyan);margin:16px 0 8px;font-size:1.6rem;font-weight:800}.output-area{padding:24px;background:#04040acc;color:var(--lime);font-family:JetBrains Mono,monospace;font-size:.85rem;white-space:pre-wrap;border:1px solid rgba(0,245,255,.15);border-radius:8px;max-height:400px;overflow-y:auto}.fade-in{animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
