:root,[data-theme=light]{--bg: #f4f4f5;--surface: #ffffff;--border: #e4e4e7;--text: #18181b;--muted: #71717a;--accent: #0891b2;--success: #16a34a;--error: #dc2626}[data-theme=dark]{--bg: #0f0f12;--surface: #18181c;--border: #2a2a30;--text: #e4e4e7;--muted: #71717a;--accent: #22d3ee;--success: #4ade80;--error: #f87171}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:DM Sans,sans-serif;min-height:100vh}#app{min-height:100vh}.app{max-width:960px;margin:0 auto;padding:1.5rem}.header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border);flex-wrap:wrap}.logo{font-size:1.5rem;font-weight:700;margin:0;color:var(--accent)}.header-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.api-key-wrap{display:flex;align-items:center;gap:.5rem}.api-key-wrap label{font-size:.875rem;color:var(--muted)}.api-key-wrap input{padding:.5rem .75rem;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);width:180px}.theme-wrap{display:flex;gap:.25rem}.btn-icon{padding:.4rem .6rem;border-radius:6px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:1rem;opacity:.7}.btn-icon.active{opacity:1;background:var(--accent);color:var(--bg);border-color:var(--accent)}.lang-wrap select{padding:.5rem .75rem;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:inherit}.main{display:flex;flex-direction:column;gap:2rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.card h2{margin:0 0 1rem;font-size:1.25rem}.card h3{margin:1rem 0 .5rem;font-size:1rem}.form-block{margin-bottom:1.5rem;padding:1rem;border-radius:8px;border:1px solid var(--border);background:var(--bg)}.form-block.seller-block{border-left:3px solid var(--accent)}.form-block.buyer-block{border-left:3px solid var(--muted)}.block-title{margin:0 0 .75rem;font-size:1rem;color:var(--muted);font-weight:600}.line-header{margin-bottom:.35rem;padding-bottom:.25rem;border-bottom:1px solid var(--border)}.cell-label{font-size:.75rem;font-weight:600;color:var(--muted)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem}.span2{grid-column:span 2}.field{display:flex;flex-direction:column;gap:.25rem}.field label{font-size:.8rem;color:var(--muted)}.field input{padding:.5rem .75rem;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text)}.field input[type=number]{width:100%}.lines{margin-top:1rem}.lines-scroll{width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;margin-bottom:.5rem}.line-row{display:grid;grid-template-columns:minmax(100px,2fr) minmax(50px,.6fr) minmax(44px,.6fr) minmax(70px,.8fr) minmax(50px,.6fr) minmax(70px,.8fr) minmax(50px,.6fr) minmax(70px,.8fr) 36px;gap:.5rem;margin-bottom:.5rem;align-items:end}.line-row.line-header{align-items:center}.line-row .cell-label{padding:0 .25rem}.line-row .cell-actions{min-width:36px}.line-row input,.line-row select{padding:.4rem .5rem;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.875rem;min-width:0}.line-row select{cursor:pointer}.btn-remove{width:28px;height:28px;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--muted);font-size:1.25rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-remove:hover{color:var(--error);border-color:var(--error);background:transparent}.lines-inner{min-width:720px}.actions{margin-top:1rem}.btn{padding:.6rem 1.2rem;border-radius:8px;border:none;font-weight:600;cursor:pointer;font-family:inherit}.btn.primary{background:var(--accent);color:#fff}.btn.primary:disabled{opacity:.6;cursor:not-allowed}.btn.secondary{background:var(--border);color:var(--text)}.result{margin-top:1rem;font-size:.9rem;color:var(--muted)}.result code{background:var(--bg);padding:.2rem .4rem;border-radius:4px}.error{color:var(--error);font-size:.9rem;margin-top:.5rem}.toolbar{margin-bottom:1rem}.empty{color:var(--muted);font-size:.9rem}.job-list{list-style:none;padding:0;margin:0}.job-item{padding:.75rem;border:1px solid var(--border);border-radius:8px;margin-bottom:.5rem;background:var(--bg)}.job-item.success{border-color:var(--success)}.job-item.error{border-color:var(--error)}.job-id{font-family:monospace;font-size:.85rem;margin-bottom:.35rem}.job-meta{display:flex;gap:.75rem;flex-wrap:wrap;font-size:.85rem;color:var(--muted)}.badge{padding:.2rem .5rem;border-radius:4px;background:var(--border);color:var(--text);font-weight:500}.job-item.success .badge{background:var(--success);color:#fff}.job-item.error .badge{background:var(--error);color:#fff}.job-error{margin:.35rem 0 0;font-size:.85rem;color:var(--error)}@media (max-width: 700px){.grid{grid-template-columns:1fr}.span2{grid-column:span 1}.line-row{grid-template-columns:1fr 1fr}}
