@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/dashboard/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/dashboard/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/dashboard/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/dashboard/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/dashboard/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/dashboard/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/dashboard/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-0-400-normal-tbXEaEG7.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-0-400-normal-5aPNcibp.woff) format("woff");unicode-range:U+1f1e6-1f1ff}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-1-400-normal-DPwJRBUT.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-1-400-normal-CFbKscMj.woff) format("woff");unicode-range:U+200d,U+2620,U+26a7,U+fe0f,U+1f308,U+1f38c,U+1f3c1,U+1f3f3-1f3f4,U+1f6a9,U+e0062-e0063,U+e0065,U+e0067,U+e006c,U+e006e,U+e0073-e0074,U+e0077,U+e007f}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-2-400-normal-DvwkPMI6.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-2-400-normal-BzKWahE8.woff) format("woff");unicode-range:U+23,U+2a,U+30-39,U+a9,U+ae,U+200d,U+203c,U+2049,U+20e3,U+2122,U+2139,U+2194-2199,U+21a9-21aa,U+23cf,U+23e9-23ef,U+23f8-23fa,U+24c2,U+25aa-25ab,U+25b6,U+25c0,U+25fb-25fe,U+2611,U+2622-2623,U+2626,U+262a,U+262e-262f,U+2638,U+2640,U+2642,U+2648-2653,U+2660,U+2663,U+2665-2666,U+2668,U+267b,U+267e-267f,U+2695,U+269b-269c,U+26a0,U+26a7,U+26aa-26ab,U+26ce,U+26d4,U+2705,U+2714,U+2716,U+271d,U+2721,U+2733-2734,U+2747,U+274c,U+274e,U+2753-2755,U+2757,U+2764,U+2795-2797,U+27a1,U+27b0,U+27bf,U+2934-2935,U+2b05-2b07,U+2b1b-2b1c,U+2b55,U+3030,U+303d,U+3297,U+3299,U+fe0f,U+1f170-1f171,U+1f17e-1f17f,U+1f18e,U+1f191-1f19a,U+1f201-1f202,U+1f21a,U+1f22f,U+1f232-1f23a,U+1f250-1f251,U+1f310,U+1f3a6,U+1f3b5-1f3b6,U+1f3bc,U+1f3e7,U+1f441,U+1f499-1f49c,U+1f49f-1f4a0,U+1f4ac-1f4ad,U+1f4b1-1f4b2,U+1f4b9,U+1f4db,U+1f4f2-1f4f6,U+1f500-1f507,U+1f515,U+1f518-1f524,U+1f52f-1f53d,U+1f549,U+1f54e,U+1f5a4,U+1f5e8,U+1f5ef,U+1f6ab,U+1f6ad-1f6b1,U+1f6b3,U+1f6b7-1f6bc,U+1f6be,U+1f6c2-1f6c5,U+1f6d0-1f6d1,U+1f6d7,U+1f6dc,U+1f7e0-1f7eb,U+1f7f0,U+1f90d-1f90e,U+1f9d1-1f9d2,U+1f9e1,U+1fa75-1fa77,U+1faaf}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-3-400-normal-BWhiraWo.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-3-400-normal-CNpuOb5M.woff) format("woff");unicode-range:U+200d,U+231a-231b,U+2328,U+23f0-23f3,U+2602,U+260e,U+2692,U+2694,U+2696-2697,U+2699,U+26b0-26b1,U+26cf,U+26d1,U+26d3,U+2702,U+2709,U+270f,U+2712,U+fe0f,U+1f302,U+1f321,U+1f392-1f393,U+1f3a9,U+1f3bd,U+1f3ee,U+1f3f7,U+1f3fa,U+1f451-1f462,U+1f484,U+1f489-1f48a,U+1f48c-1f48e,U+1f4a1,U+1f4a3,U+1f4a5,U+1f4b0,U+1f4b3-1f4b8,U+1f4bb-1f4da,U+1f4dc-1f4f1,U+1f4ff,U+1f508-1f514,U+1f516-1f517,U+1f526-1f529,U+1f52c-1f52e,U+1f550-1f567,U+1f56f-1f570,U+1f576,U+1f587,U+1f58a-1f58d,U+1f5a5,U+1f5a8,U+1f5b1-1f5b2,U+1f5c2-1f5c4,U+1f5d1-1f5d3,U+1f5dc-1f5de,U+1f5e1,U+1f5f3,U+1f6aa,U+1f6ac,U+1f6bd,U+1f6bf,U+1f6c1,U+1f6cb,U+1f6cd-1f6cf,U+1f6d2,U+1f6e0-1f6e1,U+1f6f0,U+1f97b-1f97f,U+1f9af,U+1f9ba,U+1f9e2-1f9e6,U+1f9ea-1f9ec,U+1f9ee-1f9f4,U+1f9f7-1f9ff,U+1fa71-1fa74,U+1fa79-1fa7b,U+1fa86,U+1fa8e-1fa8f,U+1fa91-1fa93,U+1fa96,U+1fa99-1faa0,U+1faa2-1faa7,U+1faaa-1faae}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-4-400-normal-D5xvrXFD.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-4-400-normal-D1xLHzFe.woff) format("woff");unicode-range:U+265f,U+26bd-26be,U+26f3,U+26f8,U+fe0f,U+1f004,U+1f0cf,U+1f380-1f384,U+1f386-1f38b,U+1f38d-1f391,U+1f396-1f397,U+1f399-1f39b,U+1f39e-1f39f,U+1f3a3-1f3a5,U+1f3a7-1f3a9,U+1f3ab-1f3b4,U+1f3b7-1f3bb,U+1f3bd-1f3c0,U+1f3c5-1f3c6,U+1f3c8-1f3c9,U+1f3cf-1f3d3,U+1f3f8-1f3f9,U+1f47e,U+1f4e2,U+1f4f7-1f4fd,U+1f52b,U+1f579,U+1f58c-1f58d,U+1f5bc,U+1f6f7,U+1f6f9,U+1f6fc,U+1f93f,U+1f941,U+1f945,U+1f947-1f94f,U+1f9e7-1f9e9,U+1f9f5-1f9f6,U+1fa70-1fa71,U+1fa80-1fa81,U+1fa83-1fa85,U+1fa87-1fa8a,U+1fa94-1fa95,U+1fa97-1fa98,U+1faa1,U+1faa9,U+1fadf}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-5-400-normal-DUH4Uty8.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-5-400-normal-D85AwhWP.woff) format("woff");unicode-range:U+2693,U+26e9-26ea,U+26f1-26f2,U+26f4-26f5,U+26fa,U+26fd,U+2708,U+fe0f,U+1f301,U+1f303,U+1f306-1f307,U+1f309,U+1f310,U+1f3a0-1f3a2,U+1f3aa,U+1f3cd-1f3ce,U+1f3d5,U+1f3d7-1f3db,U+1f3df-1f3e6,U+1f3e8-1f3ed,U+1f3ef-1f3f0,U+1f488,U+1f492,U+1f4ba,U+1f54b-1f54d,U+1f5fa-1f5ff,U+1f680-1f6a2,U+1f6a4-1f6a8,U+1f6b2,U+1f6d1,U+1f6d5-1f6d6,U+1f6dd-1f6df,U+1f6e2-1f6e5,U+1f6e9,U+1f6eb-1f6ec,U+1f6f3-1f6f6,U+1f6f8,U+1f6fa-1f6fb,U+1f9bc-1f9bd,U+1f9ed,U+1f9f3,U+1fa7c}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-6-400-normal-Ct8APc17.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-6-400-normal-Cd02m80r.woff) format("woff");unicode-range:U+200d,U+2615,U+fe0f,U+1f32d-1f330,U+1f336,U+1f33d,U+1f344-1f37f,U+1f382,U+1f52a,U+1f7e9,U+1f7eb,U+1f942-1f944,U+1f950-1f96f,U+1f99e,U+1f9aa,U+1f9c0-1f9cb,U+1fad0-1fadc}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-7-400-normal-b5Sk21m2.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-7-400-normal-CqXRJ-vN.woff) format("woff");unicode-range:U+200d,U+2600-2601,U+2603-2604,U+2614,U+2618,U+26a1,U+26c4-26c5,U+26c8,U+26f0,U+2728,U+2744,U+2b1b,U+2b50,U+fe0f,U+1f300,U+1f304-1f305,U+1f308,U+1f30a-1f30f,U+1f311-1f321,U+1f324-1f32c,U+1f331-1f335,U+1f337-1f33c,U+1f33e-1f344,U+1f3d4,U+1f3d6,U+1f3dc-1f3de,U+1f3f5,U+1f400-1f43f,U+1f490,U+1f4a7,U+1f4ae,U+1f525,U+1f54a,U+1f573,U+1f577-1f578,U+1f648-1f64a,U+1f6d8,U+1f940,U+1f980-1f9ae,U+1f9ba,U+1fa90,U+1faa8,U+1fab0-1fabf,U+1facd-1facf,U+1fae7}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-8-400-normal-D4dsBzUI.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-8-400-normal-BG9Fi5DC.woff) format("woff");unicode-range:U+200d,U+2640,U+2642,U+2695-2696,U+26f7,U+26f9,U+2708,U+2764,U+27a1,U+fe0f,U+1f33e,U+1f373,U+1f37c,U+1f384-1f385,U+1f393,U+1f3a4,U+1f3a8,U+1f3c2-1f3c4,U+1f3c7,U+1f3ca-1f3cc,U+1f3eb,U+1f3ed,U+1f3fb-1f3ff,U+1f430,U+1f466-1f469,U+1f46b-1f478,U+1f47c,U+1f481-1f483,U+1f486-1f487,U+1f48b,U+1f48f,U+1f491,U+1f4bb-1f4bc,U+1f527,U+1f52c,U+1f574-1f575,U+1f57a,U+1f645-1f647,U+1f64b,U+1f64d-1f64e,U+1f680,U+1f692,U+1f6a3,U+1f6b4-1f6b6,U+1f6c0,U+1f6cc,U+1f91d,U+1f926,U+1f930-1f931,U+1f934-1f93a,U+1f93c-1f93e,U+1f977,U+1f9af-1f9b3,U+1f9b8-1f9b9,U+1f9bc-1f9bd,U+1f9cc-1f9cf,U+1f9d1-1f9df,U+1fa70,U+1fa82,U+1fac3-1fac5,U+1fac8,U+1faef}@font-face{font-family:"Noto Color Emoji";font-style:normal;font-display:swap;font-weight:400;src:url(/dashboard/assets/noto-color-emoji-9-400-normal-cxWfJXDF.woff2) format("woff2"),url(/dashboard/assets/noto-color-emoji-9-400-normal-DftGkmnu.woff) format("woff");unicode-range:U+200d,U+2194-2195,U+2603,U+261d,U+2620,U+2639-263a,U+2665,U+26a1,U+26c4,U+270a-270d,U+2728,U+2763-2764,U+2b50,U+fe0f,U+1f31a-1f31f,U+1f32b,U+1f389-1f38a,U+1f3fb-1f3ff,U+1f440-1f450,U+1f463-1f465,U+1f479-1f47b,U+1f47d-1f480,U+1f485,U+1f48b-1f48c,U+1f493-1f49f,U+1f4a2,U+1f4a4-1f4a6,U+1f4a8-1f4ab,U+1f4af,U+1f525,U+1f573,U+1f590,U+1f595-1f596,U+1f5a4,U+1f5e3,U+1f600-1f644,U+1f648-1f64a,U+1f64c,U+1f64f,U+1f90c-1f925,U+1f927-1f92f,U+1f932-1f933,U+1f970-1f976,U+1f978-1f97a,U+1f9a0,U+1f9b4-1f9b7,U+1f9bb,U+1f9be-1f9bf,U+1f9d0,U+1f9e0-1f9e1,U+1fa75-1fa79,U+1fac0-1fac2,U+1fac6,U+1fae0-1fae6,U+1fae8-1faea,U+1faef-1faf8}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0f0f1a;--surface: #1a1a2e;--surface2: #16213e;--border: #2a2a4a;--text: #e0e0e0;--text2: #888;--green: #49cc90;--red: #e74c3c;--blue: #61affe;--yellow: #f0ad4e;--orange: #e67e22}body{font-family:Inter Variable,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,"Noto Color Emoji","Apple Color Emoji","Segoe UI Emoji",sans-serif;background:var(--bg);color:var(--text);min-height:100vh}.header{background:var(--surface2);padding:12px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}.header h1{font-size:18px;font-weight:700}.header .status{font-size:12px;color:var(--text2)}.nav-tabs{display:flex;gap:2px}.nav-tab{padding:6px 14px;font-size:13px;font-weight:500;color:var(--text2);background:none;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all .15s}.nav-tab:hover{color:var(--text);background:#ffffff0a}.nav-tab.active{color:var(--blue);background:#61affe14;border-color:#61affe33}.block-section{padding:0 24px 16px}.block-title{font-size:15px;font-weight:600;color:var(--text);margin-bottom:12px;padding-bottom:6px;border-bottom:1px solid var(--border)}.block-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:6px;border-bottom:1px solid var(--border)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;padding:20px 24px 12px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px}.stat-card .label{font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.stat-card .value{font-size:28px;font-weight:700}.stat-card .value.green{color:var(--green)}.stat-card .value.red{color:var(--red)}.stat-card .value.blue{color:var(--blue)}.stat-card .sub{font-size:12px;color:var(--text2);margin-top:4px}.run-panel{padding:0 24px 16px}.section-title{font-size:14px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.run-buttons{display:flex;gap:8px;margin-bottom:12px}.run-btn{padding:8px 18px;font-size:13px;font-weight:500;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all .15s}.run-btn:hover{border-color:var(--blue)}.run-btn.active{border-color:var(--blue);background:#61affe14;color:var(--blue)}.run-form{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:12px}.form-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.form-row label{font-size:13px;color:var(--text2);min-width:80px}.form-row input{flex:1;padding:7px 12px;font-size:13px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);outline:none}.form-row input:focus{border-color:var(--blue)}.btn-go{background:var(--green)!important;color:#000!important;border:none!important;font-weight:600;padding:8px 24px!important}.btn-go:hover{opacity:.9}.btn-go:disabled{opacity:.4;cursor:not-allowed}.run-result{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px 16px;max-height:300px;overflow:auto}.run-result.success{border-color:var(--green)}.run-result.error{border-color:var(--red)}.run-result pre{font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;white-space:pre-wrap;color:var(--text)}.logs-section{padding:0 24px 24px}.tabs-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);margin-bottom:12px}.tabs{display:flex;gap:2px;overflow-x:auto}.tabs-actions{display:flex;gap:6px;padding-bottom:6px}.tab{padding:10px 14px;font-size:12px;font-weight:500;color:var(--text2);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:all .15s}.tab:hover{color:var(--text)}.tab.active{color:var(--blue);border-bottom-color:var(--blue)}.tab .badge{display:inline-block;background:var(--surface2);color:var(--text2);font-size:10px;padding:1px 5px;border-radius:10px;margin-left:4px}.tab.active .badge{background:#61affe26;color:var(--blue)}.filters{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px 16px;margin-bottom:12px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.filter-row select,.filter-row input{padding:6px 10px;font-size:12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);outline:none}.filter-row select:focus,.filter-row input:focus{border-color:var(--blue)}.filter-row input[type=date]{width:140px}.filter-row input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.7)}.log-table{width:100%;border-collapse:collapse;font-size:13px}.log-table th{text-align:left;padding:8px 12px;color:var(--text2);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);position:sticky;top:48px;background:var(--bg);z-index:10}.log-table td{padding:7px 12px;border-bottom:1px solid rgba(42,42,74,.4);vertical-align:top}.log-row{cursor:pointer;transition:background .1s}.log-row:hover td{background:#61affe0a}.type-label{font-size:12px;color:var(--text2)}.status-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}.status-badge.open{background:#61affe26;color:var(--blue)}.status-badge.close{background:#49cc9026;color:var(--green)}.status-badge.error{background:#e74c3c26;color:var(--red)}.details-text{color:var(--text2);max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.time-text{color:var(--text2);white-space:nowrap;font-size:12px}.expanded-row td{background:var(--surface)!important;padding:0 12px 12px!important;border-bottom:2px solid var(--blue)!important}.expanded-content{padding:12px}.expanded-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;font-size:13px;margin-bottom:8px}.exp-label{color:var(--text2);font-size:12px}.exp-details{margin-top:8px}.exp-details-text{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px 14px;font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;white-space:pre-wrap;word-break:break-word;margin-top:4px;max-height:200px;overflow:auto}.btn{padding:6px 14px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px;cursor:pointer;transition:all .15s;text-decoration:none;display:inline-block}.btn:hover{background:var(--surface2);border-color:var(--blue)}.btn-sm{font-size:12px;padding:4px 10px}.btn-active{border-color:var(--blue);color:var(--blue)}.btn-filtered{border-color:var(--yellow);color:var(--yellow)}.btn-danger{border-color:var(--red);color:var(--red)}.btn-danger:hover{background:#e74c3c1a}.btn-refresh{font-size:12px}.pagination{display:flex;justify-content:center;align-items:center;gap:10px;padding-top:12px}.page-info{font-size:12px;color:var(--text2)}.loading{text-align:center;padding:40px;color:var(--text2)}.empty{text-align:center;padding:40px;color:var(--text2);font-size:13px}.proxies-page{padding:20px 24px}.proxies-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.busy-count{display:inline-block;background:#e74c3c26;color:var(--red);font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;margin-left:8px;text-transform:none;letter-spacing:0}.proxy-table td{font-size:13px}.row-busy td{background:#e74c3c08}.proxy-status-select{padding:4px 8px;font-size:12px;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;outline:none}.proxy-status-select:focus{border-color:var(--blue)}.limit-input{padding:5px 10px;font-size:13px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);outline:none;width:110px}.limit-input:focus{border-color:var(--blue)}.limit-input::placeholder{color:var(--text2)}.run-form textarea{flex:1;padding:8px 12px;font-size:13px;font-family:SF Mono,Monaco,Consolas,monospace;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);outline:none;resize:vertical;min-height:80px}.run-form textarea:focus{border-color:var(--blue)}.form-row-top{align-items:flex-start}.form-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.item-count{font-size:12px;color:var(--text2)}.thread-picker{display:flex;gap:4px}.thread-btn{width:36px;height:32px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text2);font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.thread-btn:hover{border-color:var(--blue);color:var(--text)}.thread-btn.active{border-color:var(--blue);background:#61affe1f;color:var(--blue)}.batch-progress{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px 16px;margin-top:12px}.batch-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.batch-title{font-size:13px;font-weight:600}.batch-stats{font-size:12px}.progress-bar{display:flex;height:6px;background:var(--bg);border-radius:3px;overflow:hidden;margin-bottom:12px}.progress-fill{height:100%;transition:width .3s}.progress-fill.success{background:var(--green)}.progress-fill.error{background:var(--red)}.progress-fill.running{background:var(--blue)}.batch-items{display:flex;flex-direction:column;gap:2px}.batch-item{border-radius:4px}.batch-item-row{display:flex;align-items:center;gap:8px;padding:6px 10px;cursor:pointer;border-radius:4px;transition:background .1s;font-size:13px}.batch-item-row:hover{background:#ffffff08}.batch-item-num{color:var(--text2);font-size:11px;min-width:20px}.batch-item-label{font-weight:500;min-width:120px}.batch-item-msg{color:var(--text2);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.batch-item.pending .batch-item-label{color:var(--text2)}.batch-item.running .batch-item-label{color:var(--blue)}.batch-item.open .batch-item-label{color:var(--yellow, #e5c07b)}.batch-item.success .batch-item-label{color:var(--green)}.batch-item.error .batch-item-label{color:var(--red)}.batch-item-details{padding:4px 10px 10px 38px}.batch-item-details pre{font-size:11px;font-family:SF Mono,Monaco,Consolas,monospace;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow:auto;color:var(--text)}.status-badge.pending{background:#ffffff0f;color:var(--text2)}.status-badge.running{background:#61affe26;color:var(--blue)}.status-badge.cancelled{background:#ffffff0f;color:var(--text2);text-decoration:line-through}.active-tasks{display:flex;flex-direction:column;gap:10px}.task-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.task-card.active{border-color:var(--blue)}.task-card.finished{opacity:.7}.task-card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;cursor:pointer;transition:background .1s}.task-card-header:hover{background:#ffffff05}.task-card-left,.task-card-right{display:flex;align-items:center;gap:10px}.task-type-badge{font-size:12px;font-weight:600;padding:3px 10px;border-radius:4px;background:#ffffff0f;color:var(--text2)}.task-type-badge.running{background:#61affe1f;color:var(--blue)}.task-card-arrow{color:var(--text2);font-size:10px}.task-card-body{padding:0 14px 14px}.task-add-form{padding:10px 14px;border-top:1px solid var(--border);background:#f0ad4e08}.task-add-form textarea{flex:1;padding:6px 10px;font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);outline:none;resize:vertical;min-height:60px}.task-add-form input{flex:1;padding:6px 10px;font-size:12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);outline:none}.run-btn-avail{display:block;font-size:10px;color:var(--text2);font-weight:400;margin-top:2px}.run-btn.active .run-btn-avail{color:var(--blue)}.no-proxies{font-size:12px;color:var(--red);padding:6px 0}.batch-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-wrap:wrap;gap:8px}.batch-header-left{display:flex;align-items:center;gap:12px}.batch-controls{display:flex;align-items:center;gap:6px}.batch-threads-info{font-size:12px;color:var(--blue);padding:3px 8px;background:#61affe14;border-radius:4px}.btn-thread-add{border-color:var(--green)!important;color:var(--green)!important}.btn-thread-add:hover{background:#49cc901a!important}.progress-fill.cancelled{background:#555}.batch-item-phone{font-size:11px;color:var(--text2)}.btn-xs{padding:1px 6px;font-size:14px;line-height:1;border-radius:4px}.btn-cancel-item{border-color:var(--red)!important;color:var(--red)!important;background:transparent!important;margin-left:auto;flex-shrink:0}.btn-cancel-item:hover{background:#e74c3c1a!important}.btn-retry-item{border-color:var(--green)!important;color:var(--green)!important;background:transparent!important;font-size:15px!important}.btn-retry-item:hover{background:#49cc901a!important}.batch-item-actions{display:flex;gap:4px;margin-left:auto;flex-shrink:0}.btn-pause{border-color:var(--yellow)!important;color:var(--yellow)!important}.btn-pause:hover{background:#f0ad4e1a!important}.btn-resume{border-color:var(--green)!important;color:var(--green)!important}.btn-resume:hover{background:#49cc901a!important}.btn-restart{border-color:var(--blue)!important;color:var(--blue)!important}.btn-restart:hover{background:#61affe1a!important}.task-card.paused{border-color:var(--yellow)}.task-type-badge.paused{background:#f0ad4e1f;color:var(--yellow)}.btn-close-task{font-size:18px!important;line-height:1;padding:2px 8px!important;color:var(--text2)!important;border-color:transparent!important;background:transparent!important}.btn-close-task:hover{color:var(--red)!important;background:#e74c3c1a!important}.paused-badge{background:#f0ad4e26!important;color:var(--yellow)!important;font-size:10px!important}.batch-item.cancelled .batch-item-label{color:var(--text2);text-decoration:line-through}.text2{color:var(--text2)}.proxy-filters{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.proxy-filter-group{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.proxy-filter-label{font-size:12px;color:var(--text2);min-width:75px}.proxy-filter-btn{padding:4px 10px;font-size:12px;color:var(--text2);background:var(--surface);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:all .15s}.proxy-filter-btn:hover{border-color:var(--blue);color:var(--text)}.proxy-filter-btn.active{border-color:var(--blue);background:#61affe1a;color:var(--blue)}.proxy-filter-count{font-size:10px;color:var(--text2);margin-left:2px}.proxy-filter-btn.active .proxy-filter-count{color:var(--blue)}.dropdown-header{display:flex;align-items:center;cursor:pointer;padding-bottom:8px;border-bottom:1px solid var(--border);margin-bottom:12px}.dropdown-header:hover .block-title{color:var(--blue)}.dropdown-arrow{font-size:10px;color:var(--text2);margin-left:8px}.assign-result{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px 16px}.assign-summary{font-size:14px;font-weight:600;margin-bottom:10px}.assign-items{display:flex;flex-direction:column;gap:4px}.assign-item{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:4px;font-size:13px}.assign-item.success{background:#49cc900d}.assign-item.error{background:#e74c3c0d}.assign-item-id{font-weight:600;min-width:80px}.assign-item-phone{color:var(--blue);min-width:160px}.assign-item-pvz{color:var(--text2);font-size:12px}.assign-item-error{color:var(--red);font-size:12px}.assign-error{color:var(--red);font-size:13px}.item-filters{display:flex;gap:4px;margin-bottom:8px;flex-wrap:wrap}.item-filter-btn{padding:3px 8px;font-size:11px;color:var(--text2);background:var(--bg);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:all .15s}.item-filter-btn:hover{border-color:var(--blue);color:var(--text)}.item-filter-btn.active{border-color:var(--blue);background:#61affe1a;color:var(--blue)}.item-filter-count{font-size:10px;opacity:.7;margin-left:2px}.spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.step-running-info{display:flex;align-items:center;gap:8px;padding:8px 0;font-size:13px;color:var(--blue)}.step-log{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.step-line{display:flex;align-items:center;gap:6px;font-size:12px;padding:2px 0}.step-line.done{color:var(--green)}.step-line.failed{color:var(--red)}.step-line.current{color:var(--blue)}.step-icon{font-size:11px;width:14px;text-align:center}.step-name{flex:1}.step-time{color:var(--text2);font-size:11px;margin-left:auto;min-width:30px;text-align:right}.step-message{font-size:12px;padding:6px 10px;background:var(--bg);border-radius:4px;border-left:3px solid var(--green);margin-bottom:6px}.step-message.error{border-left-color:var(--red);color:var(--red)}.step-extra{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--text2)}.step-extra-item b{color:var(--text)}.toggle-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;color:var(--text2);-webkit-user-select:none;user-select:none}.toggle-label input{accent-color:var(--blue)}.toggle-text{white-space:nowrap}.grouped-logs{display:flex;flex-direction:column;gap:4px}.group-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;overflow:hidden}.group-card.error{border-left:3px solid var(--red)}.group-card.close{border-left:3px solid var(--green)}.group-card.open{border-left:3px solid var(--blue)}.group-header{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;font-size:13px;transition:background .1s}.group-header:hover{background:#ffffff05}.group-details{color:var(--text2);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.group-count{color:var(--text2);font-size:11px;white-space:nowrap;margin-left:auto}.group-body{padding:0 12px 10px}.group-log-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:12px;border-bottom:1px solid rgba(42,42,74,.3)}.group-log-item:last-child{border-bottom:none}.group-log-item .step-icon{font-size:10px}.group-log-item.open .step-icon{color:var(--blue)}.group-log-item.close .step-icon{color:var(--green)}.group-log-item.error .step-icon{color:var(--red)}.group-log-details{color:var(--text2);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.ag-cell-green{color:var(--green)!important;font-weight:600}.ag-cell-red{color:var(--red)!important;font-weight:600}.ag-cell-blue{color:var(--blue)!important}
