@import"https://fonts.googleapis.com/css2?family=Rajdhani:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--bg-0: #dce2e9;--bg-1: #ccd5df;--bg-2: #bac6d2;--ink: #11263a;--ink-soft: #4d6278;--panel: #f7f9fc;--panel-line: #c7d1dd;--panel-soft: #eef3f9;--steel-950: #111920;--steel-900: #16212c;--steel-850: #1b2a37;--steel-800: #243548;--steel-700: #2f465e;--steel-200: #9fb0c3;--accent: #f97316;--accent-strong: #db620d;--accent-soft: #ffeddc;--ok: #1f9d77;--warn: #e24a3b;--busy: #e09b16;--glow: 0 16px 30px rgba(16, 39, 62, .12)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:IBM Plex Sans,Avenir Next,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at 8% -8%,#f2f6fb 0%,transparent 32%),radial-gradient(circle at 95% 112%,#b7c7d9 0%,transparent 34%),linear-gradient(155deg,var(--bg-0) 0%,var(--bg-1) 54%,var(--bg-2) 100%)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(26,46,66,.02) 0,rgba(26,46,66,.02) 1px,transparent 1px,transparent 32px),repeating-linear-gradient(90deg,rgba(26,46,66,.02) 0,rgba(26,46,66,.02) 1px,transparent 1px,transparent 32px)}button,input,textarea,select{font:inherit}.login-shell{position:relative;z-index:1;height:100%;display:grid;place-items:center;padding:24px}.login-card{width:min(460px,96vw);background:linear-gradient(180deg,#f8fbff,#edf3fa);border:1px solid #bdcedf;border-radius:16px;padding:24px;box-shadow:0 24px 48px #10273e38}.login-brand{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;border:1px solid #c4d4e6;background:#f0f6fe;color:#2b4f6f;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.login-card h1{margin:14px 0 6px;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:34px;letter-spacing:.02em;color:#173651}.login-card p{margin:0 0 14px;color:#4a6178}.login-form{display:flex;flex-direction:column;gap:10px}.login-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;color:#274867}.login-error{margin:2px 0 0;color:#b23818;font-size:13px;font-weight:600}.app-shell{position:relative;z-index:1;display:grid;grid-template-columns:320px 1fr;height:100%;overflow:hidden}.sidebar{position:relative;background:linear-gradient(180deg,var(--steel-900) 0%,var(--steel-850) 52%,#122130 100%);color:#e6f0fb;border-right:1px solid #2e4560;display:flex;flex-direction:column;min-height:0;overflow:hidden}.sidebar:after{content:"";position:absolute;top:0;right:0;width:2px;height:100%;background:linear-gradient(180deg,transparent 0%,rgba(249,115,22,.7) 46%,transparent 100%)}.sidebar-logo-strip{background:#fff;border-bottom:1px solid #d2deea;padding:5px 12px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.sidebar-logo-image{display:block;width:min(100%,125px);height:auto;object-fit:contain}.sidebar-header{padding:16px;border-bottom:1px solid #2b4560;display:flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto}.sidebar-header h2{margin:0;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:30px;letter-spacing:.03em}.project-list{flex:1 1 auto;min-height:0;max-height:100%;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(139,172,204,.72) rgba(217,232,248,.14);overscroll-behavior:contain;padding:10px;display:flex;flex-direction:column;gap:8px}.project-list::-webkit-scrollbar{width:10px}.project-list::-webkit-scrollbar-track{background:#d9e8f824;border-radius:999px}.project-list::-webkit-scrollbar-thumb{background:#8bacccb8;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.project-list::-webkit-scrollbar-thumb:hover{background:#aac9e8e6;background-clip:padding-box}.project-list-item{background:linear-gradient(165deg,#ecf6ff14,#d0e0f508);border:1px solid rgba(173,198,225,.22);border-radius:12px;color:#ebf4ff;text-align:left;padding:12px;cursor:pointer;transition:transform .16s ease,border-color .2s ease,background .2s ease}.project-list-item:hover,.project-list-item.active{border-color:#f97316b3;background:linear-gradient(165deg,#f3faff38,#d4e5f81f);transform:translate(2px)}.project-list-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-list-row.muted{margin-top:6px;font-size:13px;color:#c4d7ec}.sidebar-footer{border-top:1px solid #2b4560;padding:12px 16px;font-size:12px;color:#bdd0e7;flex:0 0 auto}.sidebar-footer p{margin:6px 0}.status-inline{display:flex;align-items:center;gap:8px}.status-led{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 4px #ffffff14}.status-led.ok{background:var(--ok)}.status-led.warn{background:var(--warn)}.status-led.busy{background:var(--busy)}.main-panel{display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:10px;gap:6px}.menu-bar{position:relative;z-index:20;background:linear-gradient(180deg,#f8fbff,#edf3fa);border:1px solid var(--panel-line);border-radius:12px;padding:6px 8px;display:flex;align-items:center;gap:6px;box-shadow:inset 0 1px #ffffffb3}.menu-group{position:relative}.menu-btn{border:1px solid #becfe2;background:linear-gradient(180deg,#f2f7fd,#e4edf9);color:#1a3f62;border-radius:8px;padding:7px 12px;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-weight:700;letter-spacing:.04em;cursor:pointer;text-transform:uppercase}.menu-btn.open,.menu-btn:hover{border-color:#95afcc;background:linear-gradient(180deg,#eaf2fb,#d8e5f4)}.menu-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:230px;background:#fff;border:1px solid #b8cee6;border-radius:10px;box-shadow:0 12px 28px #11294533;padding:6px;display:flex;flex-direction:column;gap:4px;z-index:80}.menu-item{border:1px solid transparent;background:#f6faff;color:#1a3f61;border-radius:8px;text-align:left;padding:8px 10px;cursor:pointer;font-weight:600}.menu-item:hover:not(:disabled){background:#e9f2ff;border-color:#c7daf0}.menu-item:disabled{opacity:.52;cursor:not-allowed}.menu-inline-btn{border:1px solid #1d4f79;background:linear-gradient(180deg,#255e92,#1c4b75);color:#fff;border-radius:8px;padding:7px 12px;cursor:pointer;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.menu-inline-btn:disabled{opacity:.6;cursor:not-allowed}.menu-inline-btn:hover:not(:disabled){background:linear-gradient(180deg,#1f5688,#163e62)}.menu-inline-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.menu-inline-btn-danger{border-color:#852a1f;background:linear-gradient(180deg,#bf4638,#9f2f24)}.menu-inline-btn-danger:hover:not(:disabled){background:linear-gradient(180deg,#ad3f32,#8c281f)}.hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#102433,#173e61,#20567a),linear-gradient(180deg,rgba(255,255,255,.06) 0%,transparent 100%);border:1px solid #32587d;border-radius:16px;padding:14px 16px;color:#eef7ff;display:flex;justify-content:space-between;gap:14px;align-items:stretch;box-shadow:var(--glow);animation:rise-in .35s ease}.hero:after{content:"";position:absolute;right:-60px;top:-70px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle at center,#82bbee52,#82bbee05 66%)}.hero-title-block{position:relative;z-index:2}.hero-kicker{display:inline-block;margin-bottom:8px;padding:2px 8px;border:1px solid rgba(255,255,255,.2);border-radius:999px;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#c6def5}.hero h1{margin:0;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:38px;line-height:1;letter-spacing:.02em}.hero p{margin:8px 0 0;color:#d2e6f8;font-size:14px;max-width:720px}.hero-right{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-width:340px}.hero-chips{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.chip{padding:6px 10px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.28);font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:500}.chip-live{background:#f9731638;border-color:#ffba84bf;color:#ffeddf}.hero-metrics{display:grid;grid-template-columns:repeat(4,minmax(64px,1fr));gap:6px}.hero-metric{border:1px solid rgba(145,185,220,.45);background:#0b182561;border-radius:10px;padding:7px 8px;text-align:right}.hero-metric span{display:block;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#bed7ee}.hero-metric strong{display:block;margin-top:4px;font-size:18px;color:#f4fbff}.tabs{display:grid;grid-template-columns:repeat(7,minmax(118px,1fr));gap:8px}.tab-btn{background:linear-gradient(180deg,#e7eef7,#d9e4f2);border:1px solid #a8bbcf;border-radius:10px;color:#223f5f;display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-weight:700;letter-spacing:.025em;min-height:44px;justify-content:center;transition:transform .16s ease,border-color .18s ease,background .18s ease}.tab-btn:hover{transform:translateY(-1px);border-color:#8ba6c1}.tab-btn.active{background:linear-gradient(180deg,#fff,#edf3fa);border-color:#7f97af;box-shadow:inset 0 2px #f9731699;color:#10293f}.tab-icon{width:24px;height:24px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#295176,#1a3550);color:#dcecff}.tab-icon svg{width:15px;height:15px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.tab-label{white-space:nowrap}.status-bar{background:linear-gradient(180deg,#f8fbff,#eef4fb);border:1px solid var(--panel-line);border-radius:10px;padding:8px 12px;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--ink-soft);font-weight:700;box-shadow:inset 0 1px #ffffffd9}.job-progress-panel{background:linear-gradient(180deg,#f8fbff,#edf3fa);border:1px solid var(--panel-line);border-radius:10px;padding:8px 10px}.job-progress-head,.job-progress-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:#3d5872}.job-progress-head{font-weight:700}.job-progress-foot{margin-top:6px}.job-progress-track{margin-top:7px;width:100%;height:11px;border-radius:999px;border:1px solid #c1d1e2;background:linear-gradient(180deg,#e3ebf5,#d9e4f0);overflow:hidden}.job-progress-fill{height:100%;width:0%;border-radius:999px;transition:width .35s ease;background:linear-gradient(90deg,#ec9a29,#f97316)}.job-progress-fill.completed{background:linear-gradient(90deg,#249474,#1f9d77)}.job-progress-fill.failed{background:linear-gradient(90deg,#ce4c3e,#b53a2d)}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid #c8d7e7;border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-bar{background:#fff2ed;border:1px solid #f1c7b6;color:#a33814;border-radius:10px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.link-btn{border:0;background:transparent;color:inherit;cursor:pointer;font-weight:700;text-decoration:underline}.workspace{background:linear-gradient(180deg,#fbfdff,#f4f8fc);border:1px solid var(--panel-line);border-radius:14px;padding:12px;overflow:auto;min-height:0;box-shadow:var(--glow);animation:rise-in .26s ease}.workspace.two-col{display:grid;grid-template-columns:minmax(320px,1fr) minmax(460px,1.6fr);gap:12px}.api-workspace{overflow-x:hidden}.api-workspace .card{min-width:0;overflow-x:hidden}.api-workspace .form-grid{grid-template-columns:minmax(0,1fr)}.api-workspace .check-field{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;column-gap:8px;min-width:0;white-space:normal}.api-workspace .check-field input[type=checkbox]{grid-column:1;grid-row:1;align-self:start;margin:2px 0 0}.card{background:linear-gradient(180deg,#f4f8fd,#edf3fa);border:1px solid #d3deeb;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px;min-height:0}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid #dae4f0}.card-head h3,.card h3{margin:0;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:24px;letter-spacing:.02em}.card-head p{margin:4px 0 0;color:var(--ink-soft);font-size:13px}.card-head.compact h3{font-size:21px}.button-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.button-row.small{gap:6px}.btn{border:1px solid transparent;border-radius:10px;padding:9px 12px;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:15px;letter-spacing:.03em;font-weight:700;text-transform:uppercase;cursor:pointer;transition:transform .12s ease,opacity .2s ease,background .2s ease,border-color .2s ease}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn-primary{background:linear-gradient(180deg,#fb8a35 0%,var(--accent) 100%);border-color:#c95a10;color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#ef7d2a 0%,var(--accent-strong) 100%)}.btn-secondary{background:linear-gradient(180deg,#2a557b,#1e3f5f);border-color:#163652;color:#fff}.btn-secondary:hover:not(:disabled){background:linear-gradient(180deg,#244b6f,#17334d)}.btn-ghost{background:linear-gradient(180deg,#dfe9f5,#cedcec);border-color:#aac0d8;color:#1f4669}.btn-danger{background:linear-gradient(180deg,#d14a3d,#b8382d);border-color:#8b251d;color:#fff}.btn-danger:hover:not(:disabled){background:linear-gradient(180deg,#be4337,#a62f25)}.btn-active{background:linear-gradient(180deg,#c7d9ec,#b8cde4);border-color:#8da7c2;color:#132f4d}.field-label{font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:16px;font-weight:700;color:#1f425f;letter-spacing:.03em}.prompt-area,.report-view,textarea,input{width:100%;border:1px solid #b7c8db;border-radius:10px;padding:10px;background:#fff;color:var(--ink)}input:focus,textarea:focus{outline:2px solid rgba(249,115,22,.2);border-color:#d6a67f}.prompt-area{min-height:190px}.report-view{min-height:420px;resize:none;font-family:IBM Plex Mono,Menlo,monospace}.api-endpoint-box{border:1px solid #c7d8ea;border-radius:10px;background:linear-gradient(180deg,#f7fbff,#edf4fd);padding:10px;display:flex;flex-direction:column;gap:6px}.api-endpoint-box span{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:#3d5872}.api-endpoint-box strong{font-family:IBM Plex Mono,monospace;font-size:13px;color:#173d62;word-break:break-all}.api-endpoint-box p{margin:0;color:#47607a;font-size:13px;line-height:1.4}.api-curl-view{min-width:0;max-width:100%;min-height:140px;overflow:auto;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word;resize:none;font-family:IBM Plex Mono,Menlo,monospace;font-size:12px;background:#f5f9ff}.api-response-view{min-width:0;min-height:0;height:clamp(190px,42vh,330px);max-height:46vh;overflow:auto;overflow-wrap:anywhere;white-space:pre-wrap;resize:none;font-family:IBM Plex Mono,Menlo,monospace;font-size:12px;background:#f7fbff}.metric-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(130px,1fr))}.metric-tile{border-radius:10px;background:linear-gradient(180deg,#e7f0fb,#dae8f8);border:1px solid #bacde2;padding:10px;display:flex;flex-direction:column;gap:4px}.metric-tile span{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:#335472}.metric-tile strong{font-size:24px}.metric-tile.pass{background:linear-gradient(180deg,#e3f6f0,#d4eee6);border-color:#95d2c1;color:#0f5f56}.metric-tile.fail{background:linear-gradient(180deg,#fff0e7,#ffe2d2);border-color:#e8b494;color:#9b3612}.table-wrap{overflow:auto;border:1px solid #c5d4e6;border-radius:10px;background:#f5f9fe}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{padding:10px;border-bottom:1px solid #d8e4f2;text-align:left;vertical-align:top}.data-table th{position:sticky;top:0;background:linear-gradient(180deg,#d7e4f4,#c8d9ec);color:#1e4061;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:16px;letter-spacing:.02em}.data-table tbody tr{cursor:pointer}.data-table tbody tr:nth-child(2n){background:#f9fcff}.data-table tbody tr.active-row{background:#e8f1fd}.empty-cell{text-align:center;color:var(--ink-soft)}.history-list{display:flex;flex-direction:column;gap:8px;overflow:auto;max-height:560px;padding-right:2px}.history-item{border:1px solid #c3d5ea;background:linear-gradient(180deg,#fff,#f7fbff);border-radius:10px;padding:8px;display:grid;grid-template-columns:56px 1fr;gap:10px;align-items:center;text-align:left;cursor:pointer;min-height:62px}.history-item:hover{border-color:#97b3cf}.history-item.active{border-color:#5985b2;background:linear-gradient(180deg,#edf5ff,#dceaf9)}.history-item img{width:52px;height:52px;min-width:52px;min-height:52px;max-width:52px;max-height:52px;object-fit:contain;object-position:center;background:linear-gradient(180deg,#0f1b2b,#15263b);padding:2px;border-radius:6px;border:1px solid #c6d7ea}.history-item strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-item p{margin:4px 0 0;color:var(--ink-soft);font-size:12px}.preview-shell{position:relative;flex:1;height:clamp(320px,calc(100vh - 360px),760px);min-height:320px;max-height:760px;display:grid;place-items:center;padding:8px;background:radial-gradient(circle at 20% 15%,rgba(64,102,143,.28),transparent 36%),linear-gradient(165deg,#101a2a,#0f2236 52%,#18314a);border:1px solid #264666;border-radius:12px;overflow:hidden}.preview-shell.tool-pan{cursor:grab}.preview-shell.tool-pan.is-panning{cursor:grabbing}.preview-image{display:block;width:auto;height:auto;object-fit:contain;object-position:center;max-width:100%;max-height:100%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transition:transform .14s ease}.preview-shell.is-panning .preview-image{transition:none}.preview-shell .empty-hint{color:#d1e2f5}.preview-tools{position:absolute;top:10px;left:10px;z-index:6;display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid rgba(178,203,228,.48);border-radius:10px;background:#07101c57;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:.3;transition:opacity .2s ease,border-color .2s ease}.preview-shell:hover .preview-tools,.preview-shell.is-fullscreen .preview-tools{opacity:1}.preview-tool-btn{min-width:96px;border:1px solid rgba(174,199,224,.46);border-radius:8px;background:#0e1d2c8a;color:#e8f4ff;padding:6px 8px;text-align:left;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}.preview-tool-btn:hover{background:#10273edb;border-color:#e2efffc2}.preview-tool-btn.active{background:#f973164d;border-color:#ffbd8be6}.preview-zoom-indicator{border:1px solid rgba(174,199,224,.38);border-radius:8px;background:#0a172580;color:#d8eafb;padding:5px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;text-align:center}.preview-fullscreen-btn{position:absolute;top:10px;right:10px;z-index:5;border:1px solid rgba(198,219,240,.55);background:#07101c57;color:#e8f4ff;border-radius:999px;padding:6px 11px;font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:.24;transition:opacity .2s ease,background .2s ease,border-color .2s ease}.preview-shell:hover .preview-fullscreen-btn,.preview-shell.is-fullscreen .preview-fullscreen-btn{opacity:1}.preview-fullscreen-btn:hover{background:#0814229e;border-color:#fff9}.preview-shell:fullscreen,.preview-shell:-webkit-full-screen{width:100vw;height:100vh;max-height:none;padding:0;border:0;border-radius:0;background:radial-gradient(circle at 20% 15%,rgba(64,102,143,.2),transparent 36%),linear-gradient(165deg,#040a13,#0a1625 52%,#112337)}.preview-shell:fullscreen .preview-image,.preview-shell:-webkit-full-screen .preview-image{width:auto;height:auto;max-width:100vw;max-height:100vh;object-fit:contain}.preview-shell:fullscreen .preview-tools,.preview-shell:-webkit-full-screen .preview-tools{top:14px;left:14px;opacity:1}.preview-shell:fullscreen .preview-fullscreen-btn,.preview-shell:-webkit-full-screen .preview-fullscreen-btn{top:14px;right:14px;opacity:1}.badge{border-radius:999px;padding:4px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;font-weight:600}.sev-high{background:#ffe7e9;color:#a61d24}.sev-medium{background:#fff3e4;color:#a9590e}.sev-low{background:#ecfcf8;color:#0f766e}.form-card label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;color:#274867}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(200px,1fr));gap:10px}.check-field{flex-direction:row!important;align-items:center;gap:8px;background:#edf5ff;border:1px solid #cadef3;border-radius:10px;padding:9px}.muted-note{color:var(--ink-soft);font-size:13px}.empty-workspace{background:linear-gradient(180deg,#f9fcff,#f2f7fd);border:1px dashed #aac1d9;border-radius:12px;padding:22px;text-align:center;color:var(--ink-soft)}.empty-hint{color:var(--ink-soft);margin:0}.hidden-input{display:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a142294;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:20px;z-index:1000}.modal-card{width:min(1080px,96vw);max-height:90vh;overflow:auto;background:linear-gradient(180deg,#f8fbff,#eef4fb);border:1px solid #bdd2e8;border-radius:14px;padding:14px;box-shadow:0 24px 48px #00000040;animation:rise-in .2s ease}.alert-card{width:min(540px,94vw)}.alert-body{margin:10px 0 0;color:#1e3d5e;line-height:1.45}.about-panel{margin-top:10px;border:1px solid #c8d9eb;border-radius:12px;background:linear-gradient(180deg,#f8fbff,#eef4fb);padding:12px;display:flex;gap:14px;align-items:flex-start}.about-logo{width:180px;height:auto;object-fit:contain;background:#fff;border:1px solid #d3e0ee;border-radius:10px;padding:8px;flex:0 0 auto}.about-content{min-width:0}.about-company-name{margin:0;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:24px;letter-spacing:.02em;color:#173b5e}.about-meta{margin:8px 0 0;color:#284866;font-size:14px}.about-meta a{color:#0f4f86;font-weight:700;text-decoration:none}.about-meta a:hover{text-decoration:underline}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-family:Rajdhani,IBM Plex Sans,sans-serif;font-size:25px;letter-spacing:.02em}.launcher-grid{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:14px;min-height:0}.launcher-open-panel{display:flex;flex-direction:column;min-height:0}.launcher-open-panel h4{margin:0 0 8px}.launcher-list{flex:1 1 auto;min-height:0;max-height:clamp(180px,calc(90vh - 250px),58vh);overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#9db8d4 #e8f1fc;overscroll-behavior:contain;padding-right:4px;display:flex;flex-direction:column;gap:8px}.launcher-list::-webkit-scrollbar{width:10px}.launcher-list::-webkit-scrollbar-track{background:#e8f1fc;border-radius:999px}.launcher-list::-webkit-scrollbar-thumb{background:#9db8d4;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.launcher-list::-webkit-scrollbar-thumb:hover{background:#7e9dbd;background-clip:padding-box}.launcher-item{border:1px solid #c6d7ea;border-radius:10px;background:linear-gradient(180deg,#fff,#f7fbff);text-align:left;padding:10px;cursor:pointer;display:flex;flex-direction:column;gap:6px}.launcher-item:hover{background:linear-gradient(180deg,#eef5ff,#e5effb)}.launcher-request-input{height:190px;min-height:190px;max-height:190px;resize:none;overflow-y:auto}@keyframes rise-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1360px){.hero{flex-direction:column;align-items:flex-start}.hero-right{width:100%;min-width:0}.hero-chips{justify-content:flex-start}}@media (max-width: 1240px){.app-shell{grid-template-columns:270px 1fr}.workspace.two-col{grid-template-columns:1fr}.tabs{grid-template-columns:repeat(4,minmax(120px,1fr))}}@media (max-width: 960px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.menu-bar,.tabs{overflow-x:auto;display:flex;min-height:48px}.tab-btn{min-width:148px;flex:0 0 auto}.preview-shell{height:min(62vh,480px);min-height:280px}.preview-tools{gap:4px;padding:6px}.preview-tool-btn{min-width:78px;font-size:10px;padding:5px 6px}.form-grid,.launcher-grid,.metric-grid,.hero-metrics{grid-template-columns:1fr}.about-panel{flex-direction:column}.about-logo{width:100%;max-width:220px}.api-response-view{height:clamp(180px,36vh,300px);max-height:52vh}}
