*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#eff6ff,#dbeafe);min-height:100vh}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.login-card{background:#fff;padding:1.5rem;border-radius:.5rem;box-shadow:0 10px 25px #0000001a;width:100%;max-width:400px;margin:0 1rem}@media (min-width: 640px){.login-card{padding:2rem;margin:0}}.logo{text-align:center;margin-bottom:6rem;margin-top:-1rem}.logo h1{color:#1f2937;font-size:1.875rem;font-weight:700;margin:.5rem 0}.logo p{color:#6b7280;margin:0}.logo-icon{width:64px;height:64px;background:#2563eb;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:1rem;font-size:2rem}.dashboard-container{min-height:100vh;background:#f9fafb}.dashboard-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:1rem}@media (min-width: 768px){.dashboard-header{padding:1rem 2rem}}.header-content{display:flex;flex-direction:column;gap:1rem;max-width:1200px;margin:0 auto}@media (min-width: 768px){.header-content{flex-direction:row;justify-content:space-between;align-items:center;gap:0}}.header-content h1{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0 0 .25rem}.header-content p{color:#6b7280;margin:0}.header-actions{display:flex;flex-direction:column;gap:.75rem;width:100%}@media (min-width: 768px){.header-actions{flex-direction:row;width:auto}}.dashboard-main{max-width:1200px;margin:0 auto;padding:1rem}@media (min-width: 768px){.dashboard-main{padding:2rem}}.stats-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}@media (min-width: 640px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}.stat-card h3{font-size:.875rem;color:#6b7280;margin-bottom:.5rem;font-weight:500}.stat-number{font-size:2rem;font-weight:700;color:#2563eb;margin:0}.table-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin-bottom:1.5rem}.table-header{display:flex;flex-direction:column;gap:1rem;padding:1rem;border-bottom:1px solid #e5e7eb}@media (min-width: 640px){.table-header{flex-direction:row;justify-content:space-between;align-items:center;gap:0;padding:1.5rem}}.table-header h2{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}@media (min-width: 640px){.table-header h2{font-size:1.25rem}}.jobs-table{padding:1rem}.job-card{border:1px solid #e5e7eb;border-radius:.375rem;padding:.75rem;margin-bottom:1rem;background:#fafafa}@media (min-width: 640px){.job-card{padding:1rem}}.job-card:last-child{margin-bottom:0}.job-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}@media (min-width: 640px){.job-header{flex-direction:row;justify-content:space-between;align-items:center;gap:0}}.job-header h3{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.job-details{display:grid;grid-template-columns:1fr;gap:.75rem;margin-bottom:1rem}@media (min-width: 640px){.job-details{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.job-details{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.job-detail{display:flex;flex-direction:column;gap:.25rem}.job-detail .label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.job-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}@media (min-width: 480px){.job-actions{display:flex;flex-wrap:wrap}}.empty-state,.loading-state{text-align:center;padding:3rem 1rem;color:#6b7280}.empty-state p:first-child{font-size:1.125rem;margin-bottom:.5rem}.form-group{margin-bottom:1rem}.form-label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.875rem}.form-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.btn-primary{background:#2563eb;color:#fff;padding:.75rem 1rem;border:none;border-radius:.375rem;font-weight:500;cursor:pointer;transition:background-color .2s;font-size:.875rem;text-decoration:none;display:inline-block;text-align:center;width:100%}@media (min-width: 640px){.btn-primary{width:auto}}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{background:#f3f4f6;color:#374151;padding:.75rem 1rem;border:none;border-radius:.375rem;font-weight:500;cursor:pointer;transition:background-color .2s;font-size:.875rem;width:100%}@media (min-width: 640px){.btn-secondary{width:auto}}.btn-secondary:hover{background:#e5e7eb}.btn-outline{background:transparent;color:#6b7280;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s;font-size:.875rem;width:100%}@media (min-width: 640px){.btn-outline{width:auto}}.btn-outline:hover{background:#f9fafb;border-color:#9ca3af}.btn-small{background:#2563eb;color:#fff;padding:.375rem .5rem;border:none;border-radius:.25rem;font-size:.625rem;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}@media (min-width: 480px){.btn-small{padding:.5rem .75rem;font-size:.75rem}}.btn-small:hover{background:#1d4ed8}.btn-small-outline{background:transparent;color:#6b7280;padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:.25rem;font-size:.625rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}@media (min-width: 480px){.btn-small-outline{padding:.5rem .75rem;font-size:.75rem}}.btn-small-outline:hover{background:#f9fafb}.btn-small-danger{background:#dc2626;color:#fff;padding:.375rem .5rem;border:none;border-radius:.25rem;font-size:.625rem;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}@media (min-width: 480px){.btn-small-danger{padding:.5rem .75rem;font-size:.75rem}}.btn-small-danger:hover{background:#b91c1c}.status-badge{padding:.25rem .375rem;border-radius:9999px;font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}@media (min-width: 640px){.status-badge{padding:.25rem .5rem;font-size:.75rem}}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#f3f4f6;color:#6b7280}.status-badge.pending{background:#fef3c7;color:#92400e}.error-message{color:#dc2626;font-size:.875rem;margin-top:.25rem}.search-form{padding:1rem;max-width:800px;margin:0 auto}@media (min-width: 640px){.search-form{padding:2rem}}.form-section{margin:1rem 0;padding:1rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fafafa}@media (min-width: 640px){.form-section{margin:2rem 0;padding:1.5rem}}.form-section h3{margin:0 0 1rem;color:#374151;font-size:1.125rem;font-weight:600}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem;border-top:1px solid #e5e7eb}.checkbox-group{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#374151;cursor:pointer}.checkbox-input{width:auto;margin:0}.results-section{margin-top:2rem;padding:2rem;border-top:1px solid #e5e7eb}.results-section h3{margin:0 0 1.5rem;color:#1f2937;font-size:1.25rem;font-weight:600}.results-grid{display:grid;gap:1rem}.result-card{padding:1.5rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;box-shadow:0 1px 3px #0000001a;transition:all .3s ease;position:relative;overflow:hidden}.result-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:3px;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:left .3s ease}.result-card:hover{box-shadow:0 10px 20px #0000001a;transform:translateY(-2px)}.result-card:hover:before{left:0}.result-card h4{margin:0 0 .75rem;font-size:1.125rem;line-height:1.4}.result-card h4 a{color:#2563eb;text-decoration:none;font-weight:600}.result-card h4 a:hover{text-decoration:underline}.result-content{color:#4b5563;line-height:1.6;margin:0 0 1rem}.result-meta{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid #f3f4f6;font-size:.875rem}.result-date{color:#6b7280}.result-link{color:#2563eb;text-decoration:none;font-weight:500}.result-link:hover{text-decoration:underline}.alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;padding:.75rem;border-radius:.375rem;margin-bottom:1rem;font-size:.875rem}html,body{overflow-x:hidden;width:100%}@media (max-width: 640px){body{font-size:14px}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}.table-container,.stat-card{margin-left:-.25rem;margin-right:-.25rem}button,.btn-primary,.btn-secondary,.btn-outline{min-height:44px}.btn-small,.btn-small-outline,.btn-small-danger{min-height:36px}.form-input,select,textarea{font-size:16px;min-height:44px}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 0;border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.25rem;color:#6b7280;border-radius:6px;transition:all .2s}.modal-close:hover{background-color:#f3f4f6;color:#374151}.modal-body{padding:0 1.5rem 1.5rem}.job-info{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.job-info h3{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#111827}.job-info p{margin:0;font-size:.875rem;color:#6b7280}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 640px){.form-row{grid-template-columns:1fr}}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}@media (max-width: 640px){.modal-actions{flex-direction:column-reverse}}.btn-danger{background-color:#dc2626;color:#fff;border:1px solid #dc2626;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.modal-content .form-group{margin-bottom:1rem}.modal-content .form-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.25rem}.modal-content .form-input{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s}.modal-content .form-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.modal-content .error-message{color:#dc2626;font-size:.75rem;margin-top:.25rem;margin-bottom:0}.modal-content .alert-error{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b;padding:.75rem;border-radius:6px;font-size:.875rem;margin-bottom:1rem}@media (max-width: 640px){.modal-content{margin:1rem;width:calc(100% - 2rem)}.modal-header,.modal-body{padding-left:1rem;padding-right:1rem}}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:#1f2937}.text-secondary{color:#4b5563}.text-muted{color:#6b7280}.text-light{color:#9ca3af}.text-brand{color:#2563eb}.text-success{color:#059669}.text-warning{color:#d97706}.text-danger{color:#dc2626}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.leading-none{line-height:1}.leading-tight{line-height:1.25}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.heading-1{font-size:1.875rem;line-height:2.25rem;font-weight:700;color:#1f2937}.heading-2{font-size:1.5rem;line-height:2rem;font-weight:600;color:#1f2937}.heading-3{font-size:1.25rem;line-height:1.75rem;font-weight:600;color:#1f2937}.heading-4{font-size:1.125rem;line-height:1.75rem;font-weight:600;color:#1f2937}.body-large{font-size:1.125rem;line-height:1.75rem;color:#4b5563}.body-normal{font-size:1rem;line-height:1.5rem;color:#4b5563}.body-small{font-size:.875rem;line-height:1.25rem;color:#6b7280}.caption{font-size:.75rem;line-height:1rem;color:#6b7280}.label{font-size:.875rem;line-height:1.25rem;font-weight:500;color:#374151}.scheduler-status-section{text-align:center;margin:.5rem 0 1.5rem;padding:1rem;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}@media (min-width: 640px){.scheduler-status-section{padding:2rem}}.scheduler-status{display:inline-flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:500;color:#374151}.scheduler-indicator{font-size:1.25rem}.scheduler-indicator.running{color:#10b981}.scheduler-indicator.stopped{color:#ef4444}.stats-section{margin-bottom:1.5rem}.stats-header{margin-bottom:1rem}.stats-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.stats-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 480px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 768px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.stat-card{background:#fff;padding:1.5rem;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;text-align:center}.stat-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem;font-weight:500}.stat-value{font-size:2rem;font-weight:700;color:#2563eb;margin:0}.stat-value.scheduled{color:#10b981}.token-balance{display:flex;align-items:center;justify-content:center;gap:.25rem;background:#fef3c7;padding:.5rem .75rem;border-radius:9999px;border:1px solid #fcd34d;font-weight:500;font-size:.875rem}@media (min-width: 640px){.token-balance{padding:.5rem 1rem;font-size:1rem}}.token-icon{font-size:1.125rem}.token-amount{font-size:1rem;font-weight:700;color:#92400e}.token-label{font-size:.875rem;color:#78350f}.job-info-card{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem;margin-bottom:2rem}.job-info-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f3f4f6}.job-info-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.job-info-details{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 640px){.job-info-details{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.job-info-details{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item .label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.info-item span:not(.label){font-size:.875rem;color:#1f2937;font-weight:500}.results-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f3f4f6}.results-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.result-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.result-header h3{margin:0;flex:1;font-size:1.125rem;line-height:1.5}.result-title-link{color:#2563eb;text-decoration:none;font-weight:600;transition:color .2s}.result-title-link:hover{color:#1d4ed8;text-decoration:underline}.result-number{background:#eff6ff;color:#2563eb;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;margin-left:1rem;flex-shrink:0}.result-actions{display:flex;align-items:center;gap:.5rem}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.skeleton-text{background:#f0f0f0;background-image:linear-gradient(to right,#f0f0f0,#e0e0e0 20%,#f0f0f0 40% 100%);background-repeat:no-repeat;background-size:800px 100%;animation:shimmer 1.2s ease-in-out infinite;border-radius:.25rem;height:1rem;margin-bottom:.5rem}.skeleton-title{width:200px;height:2rem;margin-bottom:.75rem}.skeleton-subtitle{width:150px;height:1rem}.skeleton-heading{width:150px;height:1.5rem;margin-bottom:1rem}.skeleton-button{background:#f0f0f0;background-image:linear-gradient(to right,#f0f0f0,#e0e0e0 20%,#f0f0f0 40% 100%);background-repeat:no-repeat;background-size:800px 100%;animation:shimmer 1.2s ease-in-out infinite;border-radius:.375rem;width:100px;height:40px}.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.skeleton-card{padding:1.5rem;background:#fafafa}.skeleton-result-title{width:80%;height:1.25rem;margin-bottom:1rem}.skeleton-result-content{width:100%;height:.875rem;margin-bottom:.5rem}.skeleton-result-content:last-of-type{width:70%}.skeleton-result-meta{width:40%;height:.75rem;margin-top:1rem}.skeleton-section{margin-bottom:2rem}#root{min-height:100vh;display:flex;flex-direction:column}.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}}.card{padding:2em}.read-the-docs{color:#888}.auth-layout{min-height:100vh;display:flex;flex-direction:column}.auth-header{background:#1e293b;color:#fff;box-shadow:0 2px 4px #0000001a}.header-content{max-width:1280px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo-section h1{font-size:1.5rem;font-weight:600}.user-section{display:flex;align-items:center;gap:1rem}.user-email{font-size:.875rem;color:#cbd5e1}.logout-button{background:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;font-size:.875rem;transition:background-color .2s}.logout-button:hover{background:#dc2626}.auth-main{flex:1;padding:2rem;background:#f8fafc}.public-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f8fafc}.public-main{width:100%;max-width:1280px;padding:2rem}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:.5rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:28rem;width:100%;max-height:90vh;overflow-y:auto}.confirmation-modal{max-width:24rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.5rem 0}.modal-title{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937;display:flex;align-items:center;gap:.5rem}.danger-icon{color:#ef4444;font-size:1.25rem}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.25rem;color:#6b7280;border-radius:.25rem;line-height:1;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.modal-close:hover:not(:disabled){background-color:#f3f4f6;color:#374151}.modal-close:disabled{opacity:.5;cursor:not-allowed}.modal-body{padding:1rem 1.5rem}.modal-message{margin:0;color:#6b7280;line-height:1.5}.modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:0 1.5rem 1.5rem}.modal-footer .btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.modal-footer .btn-secondary:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.modal-footer .btn-primary{background:#3b82f6;color:#fff;border:1px solid #3b82f6;padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.modal-footer .btn-primary:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.modal-footer .btn-danger{background:#ef4444;border-color:#ef4444}.modal-footer .btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.modal-footer button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){.modal-overlay{padding:.5rem}.modal-footer{flex-direction:column-reverse}.modal-footer button{width:100%}}
