:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.6;font-weight:400;--color-background: #f5f5f7;--color-surface: #ffffff;--color-text-primary: #1d1d1f;--color-text-secondary: #6e6e73;--color-text-tertiary: #86868b;--color-accent: #0071e3;--color-accent-hover: #0077ed;--color-success: #30d158;--color-warning: #ff9f0a;--color-error: #ff3b30;--color-border: rgba(0, 0, 0, .08);--color-border-hover: rgba(0, 0, 0, .12);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .16);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);color:var(--color-text-primary);background-color:var(--color-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--color-background)}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);font-weight:600;letter-spacing:-.015em;margin:0}h1{font-size:2.5rem;line-height:1.1;font-weight:700}h2{font-size:2rem;line-height:1.2}h3{font-size:1.5rem;line-height:1.3}h4{font-size:1.25rem;line-height:1.4}p{color:var(--color-text-secondary);line-height:1.6;margin:0}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}button{font-family:inherit;cursor:pointer;border:none;transition:all var(--transition-base)}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font-family:inherit;transition:all var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent)!important;box-shadow:0 0 0 4px #0071e31a}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0003;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0000004d}#root{width:100%;min-height:100vh;background:var(--color-background)}.app{max-width:1400px;margin:0 auto;min-height:100vh;background:var(--color-background)}.notification{position:fixed;top:24px;right:24px;padding:16px 24px;border-radius:var(--radius-lg);color:#fff;font-weight:500;font-size:15px;box-shadow:var(--shadow-lg);z-index:9999;animation:slideInFromRight .4s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);max-width:400px}.notification.success{background:linear-gradient(135deg,var(--color-success) 0%,#28a745 100%)}.notification.error{background:linear-gradient(135deg,var(--color-error) 0%,#dc3545 100%)}@keyframes slideInFromRight{0%{transform:translate(120%) scale(.95);opacity:0}to{transform:translate(0) scale(1);opacity:1}}header{position:sticky;top:0;z-index:100;background:#fffc;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--color-border);padding:20px 32px;display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}header h1{font-size:1.75rem;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;gap:12px;margin:0}.header-actions{display:flex;align-items:center;gap:16px}.status{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;font-size:14px;font-weight:500;color:var(--color-text-secondary);transition:all var(--transition-base)}.status.connected{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:var(--color-success);color:#2e7d32}.status.connected:before{content:"";width:8px;height:8px;background:var(--color-success);border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.container{padding:0 32px 32px;display:grid;gap:24px}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);padding:28px;overflow:hidden;transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card h2{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin:0 0 20px;letter-spacing:-.02em}.card h3{color:var(--color-text-primary);font-size:1.125rem;font-weight:600;margin:0 0 16px}.card h4{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin:0 0 12px}.card label{display:block;margin-bottom:8px;font-weight:500;font-size:14px;color:var(--color-text-primary)}.card input,.card select,.card textarea{width:100%;padding:12px 16px;margin-bottom:16px;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-size:15px;background:var(--color-surface);color:var(--color-text-primary);transition:all var(--transition-fast);font-family:inherit}.card input:hover,.card select:hover,.card textarea:hover{border-color:var(--color-border-hover)}.card button{transition:all var(--transition-base)}.card small{display:block;color:var(--color-text-tertiary);font-size:13px;margin-top:-12px;margin-bottom:12px;line-height:1.5}.section{padding:24px;background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);margin-bottom:20px;transition:all var(--transition-base)}.section:hover{border-color:var(--color-border-hover)}.section h3{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin:0 0 16px}.section h4{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin:0 0 12px}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:8px;transition:all var(--transition-base)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--color-border-hover)}.stat-icon{font-size:32px;margin-bottom:4px}.stat-value{font-size:2rem;font-weight:700;color:var(--color-text-primary);line-height:1;letter-spacing:-.02em}.stat-label{font-size:14px;color:var(--color-text-secondary);font-weight:500}.stat-content{display:flex;flex-direction:column;gap:4px}.btn-primary{padding:12px 24px;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-md);font-size:15px;font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{padding:10px 20px;background:var(--color-surface);color:var(--color-text-primary);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-base)}.btn-secondary:hover{border-color:var(--color-border-hover);background:var(--color-background)}.btn-create-job{width:100%;padding:16px 24px;background:linear-gradient(135deg,var(--color-accent) 0%,#005bb5 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:17px;font-weight:600;cursor:pointer;margin-bottom:24px;transition:all var(--transition-base);box-shadow:var(--shadow-md)}.btn-create-job:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-create-job:active{transform:translateY(0)}.btn-create{width:100%;padding:16px 24px;background:linear-gradient(135deg,var(--color-accent) 0%,#005bb5 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:17px;font-weight:600;cursor:pointer;margin-top:24px;transition:all var(--transition-base);box-shadow:var(--shadow-md)}.btn-create:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-create:active{transform:translateY(0)}.btn-logout{padding:8px 16px;background:linear-gradient(135deg,var(--color-error) 0%,#c62828 100%);color:#fff;border:none;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-base)}.btn-logout:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-remove{width:32px;height:32px;background:linear-gradient(135deg,var(--color-error) 0%,#c62828 100%);color:#fff;border:none;border-radius:50%;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);flex-shrink:0}.btn-remove:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.btn-toggle{width:100%;padding:16px 20px;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-weight:600;font-size:15px;cursor:pointer;text-align:left;margin:16px 0;transition:all var(--transition-base);display:flex;align-items:center;justify-content:space-between}.btn-toggle:hover{background:var(--color-background);border-color:var(--color-border-hover)}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;font-size:14px;color:var(--color-text-primary);padding:8px 0;transition:color var(--transition-fast)}.checkbox-label:hover{color:var(--color-accent)}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-accent)}.actions-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.action-item{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:16px;transition:all var(--transition-base)}.action-item:hover{border-color:var(--color-accent);box-shadow:var(--shadow-sm)}.action-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.action-number{width:32px;height:32px;background:linear-gradient(135deg,var(--color-accent) 0%,#005bb5 100%);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;box-shadow:var(--shadow-sm)}.action-type-select{flex:1;padding:10px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-weight:600;font-size:14px;color:var(--color-text-primary);background:var(--color-surface);transition:all var(--transition-fast)}.action-type-select:hover{border-color:var(--color-border-hover)}.action-config{display:flex;flex-direction:column;gap:12px}.action-config input,.action-config select,.action-config textarea{padding:10px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;background:var(--color-surface);color:var(--color-text-primary);transition:all var(--transition-fast)}.action-config input:hover,.action-config select:hover,.action-config textarea:hover{border-color:var(--color-border-hover)}.description-input{font-style:italic;color:var(--color-text-secondary);background:var(--color-background)}.job-item{padding:16px;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:12px;transition:all var(--transition-base);text-align:left}.job-item:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}.job-item strong{color:var(--color-accent);font-weight:600}.workers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.worker-card{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:20px;transition:all var(--transition-base)}.worker-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.worker-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.worker-status{width:10px;height:10px;border-radius:50%;flex-shrink:0}.worker-status.active{background:var(--color-success);box-shadow:0 0 12px var(--color-success)}.worker-status.idle{background:var(--color-warning);box-shadow:0 0 12px var(--color-warning)}.worker-status.offline{background:var(--color-error)}.modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--color-surface);border-radius:var(--radius-xl);max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-surface);z-index:10}.modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text-primary)}.modal-close{background:var(--color-background);border:none;width:36px;height:36px;border-radius:50%;font-size:24px;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base)}.modal-close:hover{background:var(--color-border);color:var(--color-text-primary);transform:rotate(90deg)}.modal-body{padding:28px}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:24px}.auth-card{background:var(--color-surface);padding:48px;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:420px;width:100%;animation:slideUp .4s cubic-bezier(.16,1,.3,1)}.auth-card h1{margin:0 0 12px;text-align:center;font-size:2rem;font-weight:700;color:var(--color-text-primary)}.auth-card p{text-align:center;margin-bottom:32px;font-size:15px;color:var(--color-text-secondary)}.auth-card form{display:flex;flex-direction:column;gap:16px}.auth-card input{padding:14px 16px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:15px;background:var(--color-surface);color:var(--color-text-primary);transition:all var(--transition-fast)}.auth-card input:hover{border-color:var(--color-border-hover)}.platform-config{background:var(--color-background);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:20px;margin-bottom:12px;transition:all var(--transition-base)}.platform-config:hover{border-color:var(--color-accent);box-shadow:var(--shadow-sm)}.info-box{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:1px solid #90caf9;border-radius:var(--radius-md);padding:16px 20px;margin-bottom:20px;font-size:13px;color:#1565c0;line-height:1.6}.info-box strong{font-weight:600;color:#0d47a1}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.read-the-docs{color:var(--color-text-tertiary)}.text-center{text-align:center}.mb-0{margin-bottom:0}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.mt-0{margin-top:0}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}@media(max-width:768px){.container{padding:0 16px 16px}header{padding:16px 20px}header h1{font-size:1.25rem}.grid-2,.stats-grid{grid-template-columns:1fr}.modal-content{max-width:100%}.auth-card{padding:32px 24px}.card{padding:20px}.section{padding:16px}}@media(max-width:480px){header{flex-direction:column;gap:12px;text-align:center}.header-actions{flex-direction:column;width:100%}.status{width:100%;justify-content:center}}
