@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--orange: #E8440A;--orange-dim: rgba(232, 68, 10, .08);--black: #090909;--surface: #101010;--surface2: #161616;--surface3: #1c1c1c;--border: rgba(255,255,255,.07);--border-bright: rgba(255,255,255,.12);--white: #f8f8f8;--text: #e0e0e0;--text-muted: #888;--text-dim: #555;--green: #22c55e;--red: #ef4444;--font-display: "Plus Jakarta Sans", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--radius: 6px;--radius-lg: 10px}html,body,#root{height:100%;background:var(--black);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border);background:var(--surface2);color:var(--text);font-family:var(--font-body);font-size:13px;font-weight:500;padding:8px 16px;border-radius:var(--radius);cursor:pointer;transition:all .14s;white-space:nowrap;text-decoration:none}.btn:hover{border-color:var(--border-bright);background:var(--surface3);color:var(--white)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--orange);border-color:var(--orange);color:#fff}.btn-primary:hover{background:#d63b08;border-color:#d63b08}.btn-primary:disabled{background:var(--orange)}.btn-ghost{background:transparent;border-color:var(--border)}.btn-ghost:hover{background:var(--surface2);border-color:var(--border-bright)}.btn-danger{background:#ef444414;border-color:#ef444440;color:var(--red);font-size:11px;padding:3px 8px}.btn-danger:hover{background:#ef444426;border-color:var(--red)}.btn-sm{font-size:12px;padding:6px 12px}.btn-xs{font-size:10.5px;padding:3px 8px;border-radius:4px}.btn-full{width:100%}input,textarea,select{background:var(--surface2);border:1px solid var(--border-bright);border-radius:var(--radius);color:var(--text);font-family:var(--font-body);font-size:13px;padding:8px 11px;width:100%;outline:none;transition:border-color .12s}input:focus,textarea:focus,select:focus{border-color:var(--orange)}input::placeholder,textarea::placeholder{color:var(--text-dim)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23888' d='M4.5 6l3.5 4 3.5-4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;padding-right:28px}textarea{resize:vertical}.field{display:flex;flex-direction:column;gap:5px}.field label{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.7px;text-transform:uppercase;color:var(--text-muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .span2{grid-column:1 / -1}.section-divider{border:none;border-top:1px solid var(--border);margin:18px 0}.checkbox-row{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:12.5px;color:var(--text-muted);padding:7px 11px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);transition:all .12s}.checkbox-row:hover{border-color:var(--border-bright)}.checkbox-row input{width:auto}.panel-header{padding:28px 36px 20px;border-bottom:1px solid var(--border)}.panel-title{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--white);margin-bottom:4px}.panel-subtitle{font-size:12.5px;color:var(--text-muted)}.panel-body{padding:24px 36px}.fade-in{animation:fadeIn .18s ease}.add-row-btn{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;color:var(--text-muted);background:var(--surface2);border:1px dashed var(--border-bright);padding:6px 12px;border-radius:var(--radius);cursor:pointer;transition:all .12s}.add-row-btn:hover{border-color:var(--orange);color:var(--orange)}.copy-btn{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:10px;font-weight:500;color:var(--text-muted);background:var(--surface2);border:1px solid var(--border);padding:4px 9px;border-radius:4px;cursor:pointer;transition:all .12s;white-space:nowrap}.copy-btn:hover{border-color:var(--border-bright);color:var(--white)}.download-all-btn{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--orange);background:var(--orange-dim);border:1px solid rgba(232,68,10,.3);padding:6px 13px;border-radius:var(--radius);cursor:pointer;transition:all .12s}.download-all-btn:hover{background:#e8440a24}.preview-code{font-family:var(--font-mono);font-size:11.5px;line-height:1.75;color:var(--text-muted);white-space:pre;overflow-x:auto;word-break:normal}.rl-com{color:#6a9955}.rl-key{color:#9cdcfe}.rl-method{color:#4ec9b0;font-weight:600}.rl-type{color:#c586c0}.rl-str{color:#ce9178}.rl-url{color:#dcdcaa}.rl-num{color:#b5cea8}.rl-kw{color:#569cd6}.gen-status{display:flex;align-items:center;gap:9px;padding:10px 14px;border-radius:var(--radius);font-size:12.5px;font-family:var(--font-mono);border:1px solid var(--border);background:var(--surface2);color:var(--text-muted);margin-bottom:14px}.gen-status.loading{border-color:#e8440a40;color:var(--orange)}.gen-status.done{border-color:#22c55e40;color:var(--green);background:#22c55e0d}.gen-status.error{border-color:#ef444440;color:var(--red);background:#ef44440d}.raml-output-file{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:12px}.raml-output-file-header{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid var(--border);background:var(--surface2)}.raml-output-filename{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--orange)}.raml-output-file-body{max-height:280px;overflow-y:auto;padding:13px 16px}.raml-output-file-body pre{font-family:var(--font-mono);font-size:11px;line-height:1.7;color:var(--text-muted);white-space:pre}.dropzone{border:2px dashed var(--border-bright);border-radius:var(--radius-lg);padding:28px;text-align:center;cursor:pointer;transition:all .18s;background:var(--surface2)}.dropzone:hover,.dropzone.drag-over{border-color:var(--orange);background:var(--orange-dim)}.dropzone.has-file{border-style:solid;border-color:var(--green);cursor:default}.dropzone-title{font-size:13.5px;font-weight:600;color:var(--text);margin-bottom:5px}.dropzone-sub{font-size:12px;color:var(--text-muted)}.gen-card{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:14px;cursor:pointer;transition:all .14s;text-align:left}.gen-card:hover{border-color:var(--border-bright);background:var(--surface3)}.gen-card-icon{font-size:20px;margin-bottom:8px}.gen-card-title{font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:var(--white);margin-bottom:3px}.gen-card-desc{font-size:11px;color:var(--text-muted)}.spinner{width:12px;height:12px;flex-shrink:0;border:1.5px solid rgba(255,255,255,.15);border-top-color:var(--orange);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}
