*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f5f5;color:#333}a{color:#4a90d9;text-decoration:none}a:hover{text-decoration:underline}.app-container{max-width:900px;margin:0 auto;padding:20px}nav{background:#fff;padding:12px 24px;border-bottom:1px solid #e0e0e0;display:flex;align-items:center;gap:20px}nav .brand{font-weight:700;font-size:18px;color:#333}nav a{color:#666;font-size:14px}nav a:hover{color:#4a90d9}nav .credits{margin-left:auto;background:#e8f4fd;padding:4px 12px;border-radius:12px;font-size:13px;color:#2196f3}nav .logout{color:#999;cursor:pointer;font-size:13px}.card{background:#fff;border-radius:8px;padding:24px;margin-bottom:16px;box-shadow:0 1px 3px #00000014}.card h2{font-size:18px;margin-bottom:16px;color:#333}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:13px;color:#666;margin-bottom:4px}.form-group input,.form-group select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4a90d9}.btn{padding:8px 20px;border:none;border-radius:6px;font-size:14px;cursor:pointer}.btn-primary{background:#4a90d9;color:#fff}.btn-primary:hover{background:#3a7bc8}.btn-primary:disabled{background:#b0c4de;cursor:not-allowed}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b}.btn-sm{padding:4px 12px;font-size:12px}.msg{padding:8px 12px;border-radius:6px;margin-bottom:12px;font-size:13px}.msg-success{background:#d4edda;color:#155724}.msg-error{background:#f8d7da;color:#721c24}.msg-info{background:#d1ecf1;color:#0c5460}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:8px 12px;text-align:left;border-bottom:1px solid #eee}th{background:#fafafa;color:#666;font-weight:600}tr:hover{background:#f8f9fa}.status{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.status-running{background:#fff3cd;color:#856404}.status-completed{background:#d4edda;color:#155724}.status-cancelled{background:#f8d7da;color:#721c24}.status-pending{background:#e2e3e5;color:#383d41}.progress{height:6px;background:#e9ecef;border-radius:3px;overflow:hidden}.progress-bar{height:100%;background:#4a90d9;transition:width .3s}.announcement{background:#fffbea;border-left:3px solid #f0ad4e;padding:12px 16px;margin-bottom:16px;font-size:13px}.auth-page{display:flex;justify-content:center;align-items:center;min-height:100vh}.auth-card{width:360px}.auth-card h1{text-align:center;font-size:22px;margin-bottom:24px}.auth-card .links{text-align:center;margin-top:16px;font-size:13px}.mode-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.mode-card{border:2px solid #e0e0e0;border-radius:8px;padding:16px;cursor:pointer;text-align:center;transition:all .2s}.mode-card:hover{border-color:#4a90d9}.mode-card.active{border-color:#4a90d9;background:#e8f4fd}.mode-card h3{font-size:14px;margin-bottom:4px}.mode-card .cost{font-size:20px;font-weight:700;color:#4a90d9}.mode-card .desc{font-size:11px;color:#999;margin-top:4px}.token-list{background:#f8f9fa;padding:12px;border-radius:6px;max-height:200px;overflow-y:auto;font-family:monospace;font-size:12px;word-break:break-all}.token-list div{margin-bottom:4px}.flex{display:flex;gap:8px;align-items:center}.mt-8{margin-top:8px}.mb-8{margin-bottom:8px}
