@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vazirmatn-arabic-400-normal-DMZFCm7K.woff2) format("woff2"),url(/assets/vazirmatn-arabic-400-normal-C4W5XURk.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vazirmatn-latin-ext-400-normal-BdGhO0lm.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-400-normal-DPxMaNjI.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vazirmatn-latin-400-normal-BT_DHTc7.woff2) format("woff2"),url(/assets/vazirmatn-latin-400-normal-GKyMcI03.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/vazirmatn-arabic-500-normal-C_lbnnKa.woff2) format("woff2"),url(/assets/vazirmatn-arabic-500-normal-Dqq3-xo3.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/vazirmatn-latin-ext-500-normal-CgxvvVrG.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-500-normal-4XgegWYb.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/vazirmatn-latin-500-normal-6zZzgpg4.woff2) format("woff2"),url(/assets/vazirmatn-latin-500-normal-Bg_BALlD.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/vazirmatn-arabic-600-normal-CPKvAnd1.woff2) format("woff2"),url(/assets/vazirmatn-arabic-600-normal-CWYTfCgi.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/vazirmatn-latin-ext-600-normal-CyxCUfFz.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-600-normal-Di8rk35l.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/vazirmatn-latin-600-normal-D-zF-Oec.woff2) format("woff2"),url(/assets/vazirmatn-latin-600-normal-BxJiDPKT.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/vazirmatn-arabic-700-normal-Dge_DOjm.woff2) format("woff2"),url(/assets/vazirmatn-arabic-700-normal-B5nPuCFv.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/vazirmatn-latin-ext-700-normal-BfoXmNMx.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-700-normal-DMYLqBto.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/vazirmatn-latin-700-normal-9BlbvDRV.woff2) format("woff2"),url(/assets/vazirmatn-latin-700-normal-DrB0PBU6.woff) format("woff");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}:root{font-family:Vazirmatn,Tahoma,Arial,sans-serif;color:#123b57;background:#f5f8fa;font-synthesis:none;--blue-950: #063b5c;--blue-900: #064c70;--blue-800: #00658c;--blue-700: #087dad;--blue-600: #0f91cb;--blue-100: #e8f5fb;--green: #159447;--green-soft: #eaf7ed;--orange: #f28c16;--red: #e52d36;--border: #d6dfe6;--border-strong: #c4d0da;--surface: #ffffff;--muted: #687b89;--shadow: 0 1px 3px rgb(31 61 82 / 5%)}.open-contract-designer{width:calc(100% - 32px);margin:14px 16px 0;padding:12px 14px;display:grid;grid-template-columns:40px 1fr 22px;align-items:center;gap:10px;text-align:right;border:1px solid #9ed7e8;border-radius:12px;background:linear-gradient(135deg,#eefaff,#f8fcfd);color:#14536c}.open-contract-designer>span{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#139bc7;color:#fff}.open-contract-designer strong,.open-contract-designer small{display:block}.open-contract-designer small{margin-top:3px;color:#56737f}.open-contract-designer>svg{width:18px}.contract-designer-backdrop{z-index:140}.contract-designer-dialog{width:min(1480px,calc(100vw - 34px));height:min(920px,calc(100vh - 34px));max-width:none;display:flex;flex-direction:column;overflow:hidden}.contract-designer-body{min-height:0;flex:1;display:grid;grid-template-columns:280px minmax(0,1fr);overflow:hidden}.contract-list-pane{min-height:0;padding:16px;border-left:1px solid #dce8ed;background:#f7fafb;overflow-y:auto}.contract-definition-list{display:grid;gap:8px;margin-top:12px}.contract-definition-list>button{padding:11px;display:grid;gap:4px;text-align:right;border:1px solid #d8e5ea;border-radius:10px;background:#fff;color:#294d5c}.contract-definition-list>button.active{border-color:#139bc7;box-shadow:0 0 0 2px #dff5fb}.contract-definition-list span,.contract-definition-list small{color:#69808a;font-size:10px;direction:ltr;text-align:left}.empty-contracts{padding:30px 12px;display:grid;justify-items:center;gap:8px;text-align:center;color:#70838c}.empty-contracts svg{width:34px;color:#38a8cb}.contract-editor-pane{min-width:0;min-height:0;padding:18px;overflow-y:auto;background:#fff}.contract-section{padding:16px;margin-bottom:14px;border:1px solid #dce7eb;border-radius:14px;background:#fbfdfe}.contract-section-title{display:flex;align-items:center;gap:10px;margin-bottom:14px}.contract-section-title>b{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#119bc8;color:#fff}.contract-section-title h3,.contract-section-title p{margin:0}.contract-section-title p{margin-top:2px;color:#6f838c;font-size:10px}.contract-section-title .text-button{margin-right:auto}.contract-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.contract-meta-grid label,.contract-test-grid label{display:grid;gap:6px;color:#405d68;font-size:10px;font-weight:700}.contract-meta-grid input,.contract-test-grid input,.dynamic-field-row input,.dynamic-field-row select,.contract-test-grid textarea{border:1px solid #ccdce2;border-radius:8px;background:#fff;color:#203f4b}.contract-meta-grid input,.contract-test-grid input,.dynamic-field-row input,.dynamic-field-row select{height:38px;padding:0 9px}.dynamic-field-table{min-width:980px;overflow-x:auto}.dynamic-field-head,.dynamic-field-row{display:grid;grid-template-columns:1fr 1.2fr 1.2fr 125px 170px 55px 36px;gap:7px;align-items:center}.dynamic-field-head{padding:0 4px 6px;color:#687e88;font-size:9px}.dynamic-field-row{padding:8px 0;border-top:1px solid #e4ecef}.dynamic-field-row .field-required-check{width:17px;height:17px;justify-self:center;accent-color:#119bc8}.dynamic-field-row .field-default{grid-column:1 / 4}.dynamic-field-row .field-enum{grid-column:4 / 8}.dynamic-field-row .danger-icon svg{width:16px}.contract-test-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(360px,1.2fr);gap:12px}.contract-test-grid>label:first-child{grid-row:span 2}.contract-test-grid textarea{min-height:250px;padding:12px;resize:vertical;font-family:ui-monospace,monospace;font-size:11px}.contract-preview{min-height:190px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:7px;border:1px dashed #bfd2d9;border-radius:10px;background:#f6fafb;color:#66808a;text-align:center;overflow:hidden}.contract-preview.valid{border-color:#65b995;background:#f0fbf5;color:#237452}.contract-preview.invalid{border-color:#d89b9f;background:#fff5f5;color:#a53a43}.contract-preview>svg{width:28px}.contract-preview pre{width:100%;max-height:240px;margin:5px 0 0;padding:10px;overflow:auto;border-radius:8px;background:#17313b;color:#dff5fb;text-align:left;font-size:9px}.contract-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;position:sticky;bottom:-18px;margin:0 -18px -18px;padding:12px 18px;border-top:1px solid #dce8ed;background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.contract-actions button{display:inline-flex;align-items:center;gap:6px}.contract-actions button svg{width:16px}.generated-contract-form{padding:16px;border:1px solid #dce8ed;border-radius:12px;background:#f8fbfc}.generated-form-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.generated-form-heading h4{margin:0 0 4px;font-size:15px}.generated-form-heading p{margin:0;color:#69808a;font-size:11px}.generated-form-heading>span{align-self:flex-start;padding:5px 9px;border-radius:999px;background:#e2f4f9;color:#087da3;font-size:10px;white-space:nowrap}.generated-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.generated-form-grid label,.generated-idempotency{display:flex;flex-direction:column;gap:6px;color:#405a64;font-size:11px}.generated-form-grid label.wide{grid-column:1 / -1}.generated-form-grid label>span b{margin-right:5px;color:#b13a43;font-size:9px}.generated-form-grid input:not([type=checkbox]),.generated-form-grid select,.generated-form-grid textarea,.generated-idempotency input{width:100%;border:1px solid #ccdce2;border-radius:8px;background:#fff;color:#17313b}.generated-form-grid input:not([type=checkbox]),.generated-form-grid select,.generated-idempotency input{height:40px;padding:0 10px}.generated-form-grid input[type=checkbox]{width:20px;height:20px;accent-color:#119bc8}.generated-form-grid textarea{min-height:100px;padding:10px;resize:vertical;font-family:ui-monospace,monospace}.generated-form-grid small{color:#7b9098}.generated-idempotency{margin-top:13px}.generated-receipt{display:flex;gap:10px;margin-top:13px;padding:13px;border:1px solid #67b894;border-radius:10px;background:#effaf4;color:#226e50}.generated-receipt>svg{flex:0 0 26px}.generated-receipt>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 10px;align-items:center;min-width:0}.generated-receipt strong{grid-column:1 / -1}.generated-receipt span{font-size:10px}.generated-receipt code{overflow:hidden;text-overflow:ellipsis;font-size:10px}.generated-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.generated-form-actions button{display:inline-flex;align-items:center;gap:6px}.generated-form-actions svg{width:16px}.operational-forms-dialog{width:min(1120px,calc(100vw - 34px));height:min(780px,calc(100vh - 34px));overflow:hidden}.operational-forms-body{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:0;height:calc(100% - 72px)}.operational-form-list{padding:14px;overflow-y:auto;border-left:1px solid #dce8ed;background:#f5f9fa}.operational-form-list>div:first-child{display:flex;justify-content:space-between;margin-bottom:10px;color:#45616b;font-size:11px}.operational-form-list>button{width:100%;display:flex;align-items:center;gap:9px;margin-bottom:7px;padding:11px;border:1px solid transparent;border-radius:9px;background:transparent;color:#48616b;text-align:right}.operational-form-list>button:hover,.operational-form-list>button.active{border-color:#9ed5e5;background:#e9f7fb;color:#087da3}.operational-form-list>button>svg{width:20px;flex:0 0 20px}.operational-form-list>button>span{display:flex;flex-direction:column;gap:3px;min-width:0}.operational-form-list>button strong{font-size:11px}.operational-form-list>button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;direction:ltr}.operational-form-stage{padding:18px;overflow-y:auto}.operational-form-empty{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#718992;text-align:center}.operational-form-empty svg{width:34px}.operational-form-empty span{font-size:10px}.input-gateway-card{padding:15px;border:1px solid #dce8ed;border-radius:12px;background:#f8fbfc}.input-gateway-status{display:flex;align-items:center;gap:10px;margin-bottom:13px}.input-gateway-status>svg{width:25px;color:#1596bd}.input-gateway-status>div{display:flex;flex:1;flex-direction:column;gap:3px}.input-gateway-status span{color:#708790;font-size:10px}.input-gateway-status>i{width:10px;height:10px;border-radius:50%;background:#a9b8bd}.input-gateway-status>i.active{background:#2dab74;box-shadow:0 0 0 4px #dff6eb}.input-gateway-card>label{display:flex;flex-direction:column;gap:6px;color:#47616b;font-size:11px}.input-gateway-card>label input{height:40px;padding:0 10px;border:1px solid #ccdce2;border-radius:8px;background:#fff;color:#17313b}.gateway-facts{display:flex;gap:20px;margin-top:9px;color:#667f88;font-size:10px}.one-time-key{display:flex;align-items:flex-start;gap:10px;margin-top:13px;padding:12px;border:1px solid #e6b765;border-radius:9px;background:#fff9ec;color:#7f5917}.one-time-key>svg{width:22px;flex:0 0 22px}.one-time-key>div{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.one-time-key span{font-size:10px}.one-time-key code{padding:7px;overflow:auto;border-radius:6px;background:#fff;color:#523500;font-size:10px}.gateway-example{margin-top:12px;color:#4f6973;font-size:11px}.gateway-example summary{cursor:pointer}.gateway-example pre{max-height:210px;padding:10px;overflow:auto;border-radius:8px;background:#17313b;color:#dff5fb;font-size:9px}.gateway-actions{display:flex;gap:8px;margin-top:12px}.gateway-actions button{display:inline-flex;align-items:center;gap:6px}.gateway-actions svg{width:16px}.real-empty-state,.telemetry-empty{margin:10px 0;padding:14px;border:1px dashed #c9d9df;border-radius:9px;color:#6c838c;background:#f8fbfc;text-align:center;font-size:11px}.telemetry-empty{width:100%;min-height:90px;display:grid;place-items:center}.notification-popover{position:absolute;inset-inline-start:76px;top:58px;z-index:80;width:min(360px,calc(100vw - 32px));padding:14px;border:1px solid var(--line, #d9e0e8);border-radius:14px;background:var(--surface, #fff);box-shadow:0 18px 45px #18273a29}.notification-popover header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.notification-popover header button{width:30px;height:30px;border:0;background:transparent;cursor:pointer}.notification-popover header svg{width:17px}.notification-popover ul{margin:0;padding:0 20px 0 0}.notification-popover li{margin:7px 0;color:#a83333}.notification-popover p{margin:0;color:var(--muted, #687386)}.dashboard-home,.received-files-home{width:100%;min-width:0;padding:20px;overflow:auto}.dashboard-heading{display:flex;align-items:center;justify-content:space-between}.dashboard-heading>span{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#edf8f3;color:#227b59}.dashboard-heading>span.degraded{background:#fff3e5;color:#9a5b13}.dashboard-real-kpis{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;margin:16px 0}.dashboard-real-kpis article{min-width:0;padding:15px;border:1px solid #dce4e9;border-radius:13px;background:#fff}.dashboard-real-kpis span,.dashboard-real-kpis small{display:block;color:#667987}.dashboard-real-kpis strong{display:block;margin:7px 0 4px;font-size:22px;color:#17333e}.dashboard-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:14px;margin-top:14px}.dashboard-detail-grid>article{padding:16px;overflow:auto}.dashboard-detail-grid h2{display:flex;align-items:center;gap:8px;margin:0 0 13px;font-size:14px}.dashboard-detail-grid h2 svg{width:18px}.dashboard-detail-grid table{width:100%;border-collapse:collapse}.dashboard-detail-grid th,.dashboard-detail-grid td{padding:9px;border-bottom:1px solid #e9eef1;text-align:right;white-space:nowrap}.dashboard-health-list dl{margin:0}.dashboard-health-list dl div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #e9eef1}.dashboard-health-list dd{margin:0;font-weight:700}.dashboard-health-list>small{display:block;margin-top:12px;color:#71828d}.received-files-content{max-width:1100px;margin:16px auto;padding:18px}@media(max-width:1250px){.dashboard-real-kpis{grid-template-columns:repeat(3,minmax(150px,1fr))}}@media(max-width:780px){.dashboard-real-kpis,.dashboard-detail-grid{grid-template-columns:1fr}}.contract-enabled{display:inline-flex;align-items:center;gap:7px;margin-left:auto;font-size:10px;color:#49636e}.contract-enabled input{accent-color:#119bc8}.contract-enqueue{background:#167b57!important}.contract-version-note{display:block;margin-top:10px;color:#71858d}html[data-theme=dark] .open-contract-designer,html[data-theme=dark] .contract-list-pane,html[data-theme=dark] .contract-section,html[data-theme=dark] .contract-preview{background:#19313b;border-color:#36515c;color:#dceaf0}html[data-theme=dark] .generated-contract-form{background:#132b34;border-color:#36515c}html[data-theme=dark] .generated-form-grid input:not([type=checkbox]),html[data-theme=dark] .generated-form-grid select,html[data-theme=dark] .generated-form-grid textarea,html[data-theme=dark] .generated-idempotency input{background:#102730;color:#dceaf0;border-color:#36515c}html[data-theme=dark] .generated-receipt{background:#15382d}html[data-theme=dark] .operational-form-list{background:#102730;border-color:#36515c}html[data-theme=dark] .operational-form-list>button{color:#ccdde3}html[data-theme=dark] .operational-form-list>button:hover,html[data-theme=dark] .operational-form-list>button.active{background:#183844}html[data-theme=dark] .input-gateway-card{background:#132b34;border-color:#36515c}html[data-theme=dark] .input-gateway-card>label input{background:#102730;color:#dceaf0;border-color:#36515c}html[data-theme=dark] .one-time-key{background:#3a311d}html[data-theme=dark] .real-empty-state,html[data-theme=dark] .telemetry-empty{background:#132b34;border-color:#36515c;color:#b7cbd2}html[data-theme=dark] .contract-editor-pane,html[data-theme=dark] .contract-definition-list>button,html[data-theme=dark] .contract-actions,html[data-theme=dark] .contract-meta-grid input,html[data-theme=dark] .contract-test-grid input,html[data-theme=dark] .dynamic-field-row input,html[data-theme=dark] .dynamic-field-row select,html[data-theme=dark] .contract-test-grid textarea{background:#102730;color:#dceaf0;border-color:#36515c}@media(max-width:980px){.contract-designer-body{grid-template-columns:1fr;overflow-y:auto}.contract-list-pane{max-height:230px;border-left:0;border-bottom:1px solid #dce8ed}.contract-editor-pane{overflow:visible}.contract-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-test-grid,.generated-form-grid{grid-template-columns:1fr}.generated-form-grid label.wide{grid-column:auto}.operational-forms-body{grid-template-columns:1fr}.operational-form-list{max-height:190px;border-left:0;border-bottom:1px solid #dce8ed}.contract-test-grid>label:first-child{grid-row:auto}}@media(max-width:620px){.contract-designer-dialog{width:100vw;height:100vh;border-radius:0}.contract-meta-grid{grid-template-columns:1fr}.contract-editor-pane{padding:10px}}.settings-wide-field{grid-column:1 / -1}.settings-wide-field small{color:var(--muted, #64748b);font-size:11px;margin-top:4px}.delivery-success-backdrop{z-index:1200}.delivery-success-dialog{width:min(680px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;border-radius:16px;border:1px solid #b7dfcb;background:#fff;box-shadow:0 24px 70px #0f172a47;padding:22px;direction:rtl}.delivery-success-dialog>header{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e2e8f0;padding-bottom:14px}.delivery-success-dialog>header>svg{width:38px;height:38px;color:#07884b}.delivery-success-dialog h3,.delivery-success-dialog p{margin:0}.delivery-success-dialog p{margin-top:4px;color:#64748b}.delivery-success-dialog dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.delivery-success-dialog dl>div{min-width:0;border:1px solid #e2e8f0;border-radius:10px;padding:10px}.delivery-success-dialog dt{color:#64748b;font-size:11px}.delivery-success-dialog dd{margin:5px 0 0;font-weight:600;overflow-wrap:anywhere}.delivery-success-dialog dd svg{width:16px;vertical-align:middle}.delivery-success-dialog .delivery-path-row{grid-column:1 / -1}.delivery-success-dialog code{font-size:11px;word-break:break-all}.delivery-success-dialog footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.delivery-success-dialog footer button,.delivery-success-dialog footer a{display:inline-flex;align-items:center;gap:6px}.delivery-success-dialog footer svg{width:16px}@media(max-width:640px){.delivery-success-dialog dl{grid-template-columns:1fr}.delivery-success-dialog .delivery-path-row{grid-column:auto}}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;background:#f5f8fa}button,select,input{font:inherit}button{color:inherit}svg{flex:0 0 auto}.app-shell{height:100vh;min-height:100vh;display:grid;grid-template-rows:65px minmax(0,1fr) 65px 30px;background:#f7f9fb;overflow:hidden}.topbar{position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 20px;direction:ltr;border-bottom:1px solid var(--border);background:#fff}.brand{position:absolute;left:50%;top:0;height:64px;transform:translate(-50%);display:flex;align-items:center;gap:12px;direction:rtl}.brand h1{margin:0;color:var(--blue-950);font-size:25px;font-weight:700;white-space:nowrap;letter-spacing:0}.brand-mark{width:40px;height:40px;position:relative;display:none}.mode-laser .brand-mark{display:block}.brand-mark i{position:absolute;left:18px;top:2px;width:5px;height:10px;border-radius:3px;background:#0bb5d2;transform-origin:2px 18px}.brand-mark i:nth-child(2){transform:rotate(45deg)}.brand-mark i:nth-child(3){transform:rotate(90deg)}.brand-mark i:nth-child(4){transform:rotate(135deg)}.brand-mark i:nth-child(5){transform:rotate(180deg)}.brand-mark i:nth-child(6){transform:rotate(225deg)}.brand-mark i:nth-child(7){transform:rotate(270deg)}.brand-mark i:nth-child(8){transform:rotate(315deg)}.window-buttons,.top-actions{display:flex;align-items:center;gap:9px}.window-buttons button,.top-actions>button{width:36px;height:36px;display:grid;place-items:center;padding:0;border:0;background:transparent;cursor:pointer}.window-buttons svg{width:18px}.top-actions{direction:rtl}.top-actions svg{width:21px;height:21px}.session-chip{min-height:39px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;border:1px solid var(--border);border-radius:7px;background:#f8fafb;color:#183a51;font-size:14px;font-weight:600;white-space:nowrap}.session-chip i,.camera-state i,.device-state i,.source-card b i,.qr-settings p i,.server-status span i,.status-bar span i,.safety-alert>i,.route-label i{width:10px;height:10px;display:inline-block;border-radius:50%;background:var(--green)}.workspace{min-height:0;display:grid;grid-template-areas:"receiver center controls";grid-template-columns:minmax(300px,24vw) minmax(0,1fr) minmax(300px,20vw);gap:9px;padding:13px 14px 12px;direction:ltr}.mode-infrared .workspace{grid-template-columns:minmax(300px,23vw) minmax(0,1fr) minmax(300px,19vw)}.mode-laser .workspace{grid-template-columns:minmax(300px,22vw) minmax(0,1fr) minmax(250px,16vw)}.surface,.queue-section,.live-section,.source-section{border:1px solid var(--border);border-radius:7px;background:var(--surface);box-shadow:var(--shadow)}.receiver-panel{grid-area:receiver;min-width:0;min-height:0;padding:9px;direction:rtl;overflow:hidden}.receiver-panel.role-receiver{overflow-y:auto}.receiver-panel.role-receiver .separated-data{display:none}.center-panel{grid-area:center;min-width:0;min-height:0;display:grid;grid-template-rows:minmax(300px,.95fr) minmax(285px,1.05fr);gap:9px;direction:rtl}.mode-infrared .center-panel{grid-template-rows:minmax(300px,.9fr) minmax(320px,1.1fr)}.mode-laser .center-panel{grid-template-rows:minmax(310px,.95fr) minmax(310px,1.05fr)}.controls-panel{grid-area:controls;min-width:0;min-height:0;display:flex;flex-direction:column;gap:9px;direction:rtl;overflow-y:auto;padding-inline-start:2px}.section-title{min-height:29px;display:flex;align-items:center;gap:8px;margin:0 0 8px;padding:0 6px 7px;border-bottom:1px solid #edf1f4;color:var(--blue-950);font-size:16px;font-weight:700}.section-title svg{width:20px;height:20px;color:var(--blue-800)}.reference-crop{position:relative;width:100%;overflow:hidden;border:1px solid var(--border-strong);border-radius:6px;background:#0e1a22}.reference-crop img{position:absolute;max-width:none;-webkit-user-select:none;user-select:none;pointer-events:none}.crop-qr{aspect-ratio:430 / 229}.crop-qr img{width:388.84%;left:-6.05%;top:-55%}.crop-infrared{aspect-ratio:413 / 143;border-color:#252d33}.crop-infrared img{width:404.84%;left:-5.08%;top:-112%}.crop-laser{height:145px;aspect-ratio:150 / 128;border:0;background:#fff}.crop-laser img{width:1114.67%;left:-28.67%;top:-128%}.camera-state{height:28px;display:flex;align-items:center;gap:8px;padding:0 6px;color:#435463;font-size:13px}.camera-state i{width:9px;height:9px}.qr-camera-preview{position:relative;aspect-ratio:430 / 229;display:grid;place-items:center;overflow:hidden;border:1px solid #252d33;background:#10171c}.qr-camera-preview video{width:100%;height:100%;display:block;object-fit:cover}.qr-camera-preview>span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:16px;color:#dfe9ef;background:linear-gradient(#08131ab8,#08131ab8),repeating-linear-gradient(0deg,transparent 0 23px,rgb(255 255 255 / 5%) 24px);text-align:center;font-size:12px}.qr-camera-preview>span b{font-size:12px;font-weight:600}.qr-camera-preview>span small{max-width:370px;color:#b9ccd5;line-height:1.8}.qr-camera-preview>span :is(a,button){min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid #63b9d5;border-radius:5px;color:#e8f8ff;background:#0a6685;text-decoration:none;font:inherit;cursor:pointer}.qr-camera-preview>span :is(a,button) svg{width:15px}.qr-camera-preview>span svg{width:24px}.qr-camera-preview.camera-scanning:after{content:"";position:absolute;left:8%;right:8%;top:50%;height:1px;background:#42e28b;box-shadow:0 0 8px #42e28b;animation:qr-scan-line 2.2s ease-in-out infinite}.qr-inline-error{margin:5px 0 0;padding:6px 8px;border-right:3px solid #dd3038;color:#a91c24;background:#fff3f4;font-size:10px}@keyframes qr-scan-line{0%,to{transform:translateY(-72px)}50%{transform:translateY(72px)}}.receiver-progress-list{display:grid;gap:8px}.source-progress-card{height:67px;display:grid;grid-template-columns:36px minmax(0,1fr) 30px;align-items:center;gap:9px;padding:7px 11px;border:1px solid var(--border);border-radius:7px}.source-progress-card>svg:first-child{width:30px;height:30px;color:var(--blue-800)}.source-progress-card>div{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:10px}.source-progress-card strong{grid-column:2;font-size:13px}.source-progress-card>div>span{grid-column:1;height:9px;overflow:hidden;border-radius:5px;background:#e4e9ed}.source-progress-card>div>span i{height:100%;display:block;border-radius:inherit;background:#1585d2}.source-progress-card small{grid-column:1 / 3;color:#536573;font-size:11px}.complete-icon{width:25px;color:var(--green)}.separated-data{margin-top:9px;border-top:1px solid #edf1f3}.separated-data h3,.source-receive h3,.laser-quality h3,.sensor-table h3{margin:0;padding:6px 7px;text-align:center;color:var(--blue-950);font-size:15px}.separated-data table,.queue-table{width:100%;border-collapse:collapse;table-layout:fixed}.separated-data th,.separated-data td{height:30px;border:1px solid #dce4ea;text-align:center;font-size:11px;font-weight:400}.separated-data th{background:#fbfcfd;color:#314b5d;font-weight:500}.separated-data footer{height:28px;display:flex;align-items:center;justify-content:center;border:1px solid #dce4ea;border-top:0;color:#4b6070;font-size:11px}.delivery-panel{margin-top:10px;padding-top:9px;border-top:1px solid #dce6eb}.delivery-panel>header,.delivery-panel>header>div{display:flex;align-items:center}.delivery-panel>header{min-height:34px;justify-content:space-between;gap:8px}.delivery-panel>header>div{min-width:0;gap:7px}.delivery-panel>header svg{width:17px;color:var(--blue-900)}.delivery-panel h3{margin:0;color:var(--blue-950);font-size:13px}.delivery-panel header span{padding-right:7px;border-right:1px solid #d9e3e8;color:#617682;font-size:9px}.icon-command{width:30px;height:30px;flex:0 0 30px;display:inline-grid;place-items:center;padding:0;border:1px solid #a9c5d4;border-radius:5px;color:var(--blue-900);background:#f7fbfd;cursor:pointer}.icon-command:hover{border-color:#1685b4;background:#eaf7fc}.icon-command:disabled{cursor:wait;opacity:.55}.icon-command svg{width:15px;height:15px}.delivery-list{display:grid;gap:5px;margin-top:5px}.delivery-row{min-height:46px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:5px 7px;border:1px solid #dce6eb;border-radius:5px;background:#fff}.delivery-row-actions{display:inline-flex;align-items:center;gap:5px}a.icon-command{text-decoration:none}.delivery-download-button{min-height:34px;padding:6px 12px;color:#fff;border:1px solid #07884b;border-radius:5px;background:#07884b;font-size:11px;font-weight:600;text-decoration:none}.delivery-download-button:hover{background:#06733f}.delivery-row>div{min-width:0;display:grid;gap:3px}.delivery-row strong,.delivery-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delivery-row strong{color:#263f4d;font-size:10px}.delivery-row small{color:#72838c;font-size:8px}.delivery-status{display:inline-flex;align-items:center;gap:4px;color:#586e79;font-size:8px;white-space:nowrap}.delivery-status svg{width:12px;height:12px}.status-delivered{border-color:#a9d7b2;background:#f4fbf5}.status-delivered .delivery-status{color:#187331}.status-import_failed,.status-conflict{border-color:#e7b2b2;background:#fff7f7}.status-import_failed .delivery-status,.status-conflict .delivery-status{color:#b3262d}.delivery-action-spacer{width:30px}.delivery-empty{min-height:48px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px dashed #cbd9e0;border-radius:5px;color:#607680;font-size:9px}.delivery-empty svg{width:15px}.delivery-error{margin:6px 0 0;padding:6px;border-right:3px solid #d7353d;color:#a51e25;background:#fff3f3;font-size:9px}.spin{animation:delivery-spin .8s linear infinite}@keyframes delivery-spin{to{transform:rotate(360deg)}}.done{display:inline-flex;align-items:center;gap:5px}.done svg{width:17px;color:var(--green)}.device-state{height:28px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;font-size:13px}.device-state b{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:12px;font-weight:500}.signal-box,.source-receive,.laser-quality,.sensor-table{margin-top:9px;padding:7px 10px;border:1px solid var(--border);border-radius:7px}.signal-box>div:first-child{display:grid;grid-template-columns:22px 1fr auto;align-items:center}.signal-box strong{font-size:14px}.signal-box b{color:var(--green)}.spectrum{height:11px;margin-top:6px;overflow:hidden;border-radius:6px;background:linear-gradient(90deg,#ea121c,#ff6d00 25%,#ffc800 55%,#18a339 80%,#e2e6e8 80%)}.spectrum i{display:none}.source-receive{padding-top:2px}.mini-progress{height:34px;display:grid;grid-template-columns:24px 70px 1fr 42px;align-items:center;gap:6px;border-top:1px solid #edf1f3}.mini-progress svg{width:17px;color:var(--blue-800)}.mini-progress strong,.mini-progress b{font-size:12px}.mini-progress>span{height:8px;border-radius:5px;background:#e3e7ea;overflow:hidden}.mini-progress>span i{display:block;height:100%;border-radius:inherit;background:#1088d4}.laser-device{min-height:165px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;direction:ltr}.alignment{display:grid;justify-items:center}.reticle{position:relative;width:100px;height:100px;display:block;border:1px solid #41a9d2;border-radius:50%;background:radial-gradient(circle,#e8fbff 0 7%,#16c8e8 8% 11%,transparent 12%)}.reticle:before,.reticle:after{content:"";position:absolute;background:#297796}.reticle:before{width:130px;height:1px;left:-15px;top:49px}.reticle:after{height:130px;width:1px;left:49px;top:-15px}.alignment p{display:flex;align-items:center;gap:7px;margin:13px 0 0;color:var(--green);font-size:12px}.alignment p svg{width:18px}.laser-quality h3,.sensor-table h3{display:flex;align-items:center;gap:7px;justify-content:flex-start}.laser-quality h3 svg,.sensor-table h3 svg{width:18px}.mini-bar{height:30px;display:grid;grid-template-columns:75px 1fr 50px;align-items:center;gap:8px;font-size:12px}.mini-bar>i{height:8px;border-radius:5px;overflow:hidden;background:#e3e6e8}.mini-bar>i b{height:100%;display:block;border-radius:inherit;background:var(--green)}.mini-bar>i b.warning{background:#f1a00d}.safety-alert{min-height:43px;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:9px;border:1px solid #ffc5c8;border-radius:7px;color:#d7242d;background:#fff1f1;font-size:13px}.safety-alert svg{width:22px}.safety-alert>i{width:8px;height:8px;background:#f0262f}.sensor-table{padding-bottom:5px}.sensor-table dl{margin:0}.sensor-table dl div{height:23px;display:grid;grid-template-columns:1fr 1fr;border:1px solid #dfe5e9;border-bottom:0}.sensor-table dl div:last-child{border-bottom:1px solid #dfe5e9}.sensor-table dt,.sensor-table dd{margin:0;padding:3px 8px;font-size:10px}.sensor-table dt{border-left:1px solid #dfe5e9}.sensor-table dd:first-letter{color:var(--green)}.source-section{padding:10px 11px 12px;overflow:hidden}.source-section>h2,.queue-title h2,.live-section>h2{min-height:28px;display:flex;align-items:center;gap:8px;margin:0;color:var(--blue-950);font-size:16px;font-weight:700}.source-section>h2{justify-content:flex-start;padding:0 5px 8px}.source-section>h2 svg{width:21px;color:var(--blue-600)}.source-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;direction:rtl}.source-card{position:relative;min-width:0;height:103px;display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid var(--border);border-radius:7px;background:#fff}.mode-laser .source-card{height:100px;border-right:4px solid #18a446}.source-icon{width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#08769f;background:#e5f5fb}.mode-laser .source-icon{width:54px;height:58px;border-radius:8px;color:#fff;background:linear-gradient(#1693cc,#0875a7)}.source-icon svg{width:30px;height:30px}.source-card>div{min-width:0;display:flex;flex-direction:column;gap:5px}.source-card strong{overflow:hidden;color:#1a3548;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.source-card b{width:fit-content;display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:5px;color:var(--green);background:var(--green-soft);font-size:11px;font-weight:500}.source-card b i{width:7px;height:7px}.source-card small{overflow:hidden;color:#5e6d78;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.source-card>button{position:absolute;left:7px;top:4px;border:0;background:transparent;font-size:20px}.queue-section{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) 35px;overflow:hidden}.queue-title{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px 6px}.queue-title>div{display:flex;align-items:center;gap:8px;direction:ltr}.outline-button{height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 13px;border:1px solid #6f9db9;border-radius:6px;color:var(--blue-950);background:#fff;cursor:pointer}.outline-button svg{width:18px}.select-control{position:relative;min-width:155px;display:inline-flex;align-items:center}.select-control select{width:100%;height:36px;padding:0 12px 0 34px;border:1px solid var(--border-strong);border-radius:6px;color:#273e4e;background:#fff;appearance:none;outline:none}.select-control svg{position:absolute;left:10px;width:17px;pointer-events:none}.table-scroll{min-height:0;overflow:auto;scrollbar-width:thin}.queue-table{direction:rtl}.queue-table th,.queue-table td{height:39px;padding:4px 8px;border:1px solid #dce3e8;color:#263f50;text-align:center;font-size:11px;font-weight:400;white-space:nowrap}.queue-table th{height:34px;color:#17374b;background:#fafcfd;font-weight:600}.queue-table th:nth-child(1){width:65px}.queue-table th:nth-child(2){width:105px}.queue-table th:nth-child(3){width:130px}.queue-table th:nth-child(4){width:170px}.priority{display:inline-flex;align-items:center;gap:5px}.priority i{font-style:normal}.priority-1 i{color:#ff7c00}.priority-2{color:#ed8a00}.priority-3 i,.priority-4 i,.priority-5 i{color:var(--green)}.status-badge{min-width:112px;height:28px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:5px;font-size:11px}.status-badge svg{width:16px}.status-badge.sending{color:#1379cb;background:#eaf4fd}.status-badge.queued{color:#de850d;background:#fff4e6}.status-badge.complete{color:var(--green);background:#e8f5e9}.plain-status{display:inline-flex;align-items:center;gap:7px}.plain-status i{width:8px;height:8px;border-radius:50%;background:#1188cf}.plain-status i.orange{background:#ff9100}.queue-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 13px;border-top:1px solid var(--border);color:#465966;font-size:10px}.queue-footer span{display:inline-flex;align-items:center;gap:7px}.queue-footer svg{width:15px}.queue-actions{display:inline-grid;grid-template-columns:repeat(4,24px);gap:3px;direction:rtl}.queue-actions button{width:24px;height:24px;display:grid;place-items:center;padding:0;border:1px solid #c8d5dd;border-radius:4px;color:#426173;background:#fff;cursor:pointer}.queue-actions button:hover:not(:disabled),.queue-actions button.active{color:#0879aa;border-color:#79b8d4;background:#edf8fc}.queue-actions button:nth-child(3):hover:not(:disabled){color:#c22d38;border-color:#e6aeb3;background:#fff3f4}.queue-actions button:disabled{opacity:.35;cursor:default}.queue-actions svg{width:13px;height:13px}.queue-error{max-width:220px;overflow:hidden;color:#b42029;text-overflow:ellipsis;white-space:nowrap}.live-section{min-height:0;padding:9px 11px;overflow:hidden}.live-section>h2{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 4px 7px}.simulation-badge{min-width:118px;height:23px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 8px;border:1px solid #b9cad4;border-radius:5px;color:#526673;background:#f5f8fa;font-size:9px;font-weight:500}.simulation-badge i{width:7px;height:7px;border-radius:50%;background:#7e929f}.simulation-badge.running i{background:#e39c12}.simulation-badge.verified{color:#168149;border-color:#a9d7bd;background:#eef9f2}.simulation-badge.verified i{background:#1ca55b}.simulation-badge.error{color:#b42029;border-color:#edb8bd;background:#fff3f4}.simulation-badge.error i{background:#d52f3c}.qr-live-content{height:calc(100% - 35px);display:grid;grid-template-columns:minmax(420px,1.25fr) minmax(210px,.75fr);gap:11px;direction:ltr}.qr-matrix{position:relative;min-height:0;overflow:hidden;border:1px solid #c7d3da;background:#f4f7f9}.qr-matrix img{position:absolute;width:509.76%;max-width:none;left:-228.05%;top:-347%;-webkit-user-select:none;user-select:none;pointer-events:none}.real-qr-grid{width:100%;height:100%;display:grid;grid-template-columns:repeat(var(--qr-columns, 3),minmax(0,1fr));grid-template-rows:repeat(var(--qr-rows, 2),minmax(0,1fr));gap:5px;padding:5px;direction:ltr}.real-qr-tile{position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 13px;overflow:hidden;border:1px solid #c8d2d8;background:#fff}.real-qr-tile canvas{width:100%!important;height:100%!important;min-height:0;display:block;object-fit:contain}.real-qr-tile span{overflow:hidden;color:#526673;background:#f5f7f8;text-align:center;font:8px/13px monospace}.real-qr-tile[data-empty=true] canvas{visibility:hidden}.real-qr-tile[data-empty=true]:before{content:"";position:absolute;inset:12%;border:1px dashed #cbd5da;background:linear-gradient(90deg,#dbe3e7 25%,transparent 25% 75%,#dbe3e7 75%) 0 0 / 16px 16px,linear-gradient(#dbe3e7 25%,transparent 25% 75%,#dbe3e7 75%) 0 0 / 16px 16px;opacity:.45}.real-qr-tile[data-verified=true]{border-color:#29a967;box-shadow:inset 0 0 0 1px #29a967}.packet-summary{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:12px 15px;border:1px solid var(--border);border-radius:6px;direction:rtl}.packet-summary p{display:flex;justify-content:space-between;gap:12px;margin:0;color:#526673;font-size:11px}.packet-summary b{color:#1f3a4c}.packet-summary>div{height:9px;overflow:hidden;border-radius:5px;background:#e5e9ec}.packet-summary>div i{width:77%;height:100%;display:block;border-radius:inherit;background:#1689d4}.packet-summary small{color:#79909f;text-align:left;font-size:9px}.packet-summary em{overflow:hidden;color:#b42029;font-size:9px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.infrared-chart{height:calc(100% - 128px);min-height:125px;display:grid;grid-template-columns:145px 1fr;gap:10px;direction:ltr}.ir-emitter-art{position:relative;display:grid;place-items:center}.ir-emitter-art span{width:82px;height:82px;border:8px solid #252b31;border-radius:50%;background:radial-gradient(circle,#fff 0 7%,#ff5b49 8% 14%,#be140e 15% 44%,#4b1010 45% 53%,#12191f 54%);box-shadow:0 6px 10px #0003}.ir-emitter-art i{position:absolute;left:102px;width:28px;height:52px;border:2px solid #ff6767;border-left:0;border-top-color:transparent;border-bottom-color:transparent;border-radius:0 50% 50% 0}.ir-emitter-art i:nth-of-type(2){width:42px;height:72px}.ir-emitter-art i:nth-of-type(3){width:56px;height:92px}.pulse-area{min-width:0;display:flex;flex-direction:column;direction:rtl}.pulse-area strong{height:28px;font-size:11px}.pulse-wave{min-height:80px;display:flex;align-items:flex-end;direction:ltr;border-right:1px solid #d5dce1;border-bottom:1px solid #bfcbd3;background:linear-gradient(#edf1f3 1px,transparent 1px) 0 0 / 100% 33%}.pulse-wave i{width:3.7%;height:4px;display:block;border-top:2px solid currentColor}.pulse-wave i.high{height:74%;border-right:2px solid currentColor;border-top:2px solid currentColor}.live-controls{min-height:91px;display:grid;grid-template-columns:.75fr 1.25fr 1fr 1.35fr;gap:10px;margin-top:9px}.metric-box,.power-box,.safety-ok{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px;border:1px solid var(--border);border-radius:6px}.metric-box span,.power-box>span{color:#344c5b;font-size:10px}.metric-box strong{color:var(--blue-700);font-size:20px}.live-controls .metric-box:nth-child(2) strong{color:#273e4e;font-size:12px}.power-box{align-items:stretch}.power-box>strong{color:var(--blue-800);font-size:17px}.power-box>div{position:relative;height:6px;border-radius:4px;background:#dfe4e7}.power-box>div i{height:100%;display:block;border-radius:inherit;background:var(--blue-800)}.power-box>div b{position:absolute;top:-5px;left:29%;width:16px;height:16px;border:1px solid #b9c4cb;border-radius:50%;background:#fff}.power-box small{display:flex;justify-content:space-between;font-size:9px}.laser-route{position:relative;height:80px;display:flex;align-items:center;direction:ltr}.laser-module,.laser-camera{position:relative;z-index:2;width:115px;height:60px;border:8px solid #343b40;border-radius:8px;background:linear-gradient(90deg,#15191d,#555e63,#20262a)}.laser-module span{width:34px;height:34px;display:grid;place-items:center;margin:10px auto;border:3px solid #282200;border-radius:5px;color:#202000;background:#ffd926;font-weight:700}.laser-camera{width:105px;border-radius:12px}.laser-camera i{width:42px;height:42px;display:block;margin:1px auto;border:7px solid #0f2630;border-radius:50%;background:radial-gradient(circle,#bdfbff,#03bce4 23%,#06475f 45%,#030b0e 58%)}.laser-route .beam{height:4px;flex:1;background:#10d3e9;box-shadow:0 0 8px #0dd7f0}.route-label{position:absolute;left:50%;top:5px;display:flex;align-items:center;gap:8px;transform:translate(-50%);font-size:11px}.route-label i{width:8px;height:8px}.laser-chart-row{height:70px;display:grid;grid-template-columns:1fr 245px;gap:20px;direction:ltr}.laser-counter{display:grid;place-items:center;padding:5px;border:1px solid var(--border);border-radius:6px;direction:rtl}.laser-counter span{font-size:10px}.laser-counter strong{color:var(--blue-700);font-size:20px}.laser-counter button{display:flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:4px;background:#fff;font-size:9px}.laser-counter svg{width:12px}.laser-controls{min-height:52px;grid-template-columns:1.2fr 1fr 1.25fr 1.05fr}.safety-ok{flex-direction:row;color:#176c2b;border-color:#acd9b4;background:#eff9ef}.safety-ok svg{color:#0e941f}.safety-ok div{display:flex;flex-direction:column}.safety-ok small{font-size:8px}.safety-ok>i{width:9px;height:9px;border-radius:50%;background:var(--green)}.role-panel,.transport-panel,.hardware-settings,.qr-settings,.server-status{padding:10px 12px}.role-toggle{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border-strong);border-radius:6px;overflow:hidden}.role-toggle button{height:55px;display:flex;align-items:center;justify-content:center;gap:11px;border:0;background:#fff;cursor:pointer;font-weight:600}.role-toggle button+button{border-right:1px solid var(--border)}.role-toggle button.active{color:#fff;background:linear-gradient(#087ba4,#068)}.role-toggle svg{width:26px}.transport-options{display:grid;gap:10px}.transport-options button{height:65px;display:grid;grid-template-columns:28px 1fr 38px;align-items:center;gap:8px;padding:0 13px;border:1px solid var(--border);border-radius:7px;background:#fff;cursor:pointer}.mode-laser .transport-options button{height:58px}.transport-options button.active{color:var(--blue-900);border-color:#1889c5;background:#f0f9fd}.mode-infrared .transport-options button.active{color:#fff;background:linear-gradient(#087aa4,#00698e)}.transport-options strong{font-size:15px}.transport-options svg{width:28px;height:28px}.radio-dot{width:22px;height:22px;display:block;border:2px solid #b3c1cb;border-radius:50%}.transport-options button.active .radio-dot{border:6px solid #178cc5;background:#fff}.mode-infrared .transport-options button.active .radio-dot{border-color:#fff;background:#087aa4}.inline-policy{display:grid;gap:8px;margin-top:13px;padding-top:12px;border-top:1px solid #edf0f2}.inline-policy>label{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600}.inline-policy label svg{width:16px}.inline-policy .select-control{width:100%}.qr-settings{display:grid;gap:8px}.qr-settings p{display:grid;grid-template-columns:11px 1fr auto;gap:7px;margin:0;color:#445965;font-size:11px}.qr-settings p:nth-child(n+3){grid-template-columns:1fr auto}.qr-settings p b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-file-button{height:34px;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:2px;border:1px solid #87b5cd;border-radius:6px;color:var(--blue-950);background:#eef8fd;cursor:pointer;font-size:11px;font-weight:600}.qr-file-button svg{width:17px}.qr-file-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.hardware-settings{display:grid;gap:0}.hardware-settings>label{min-height:52px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;border-bottom:1px solid #e8edef;color:#3b505d;font-size:11px}.hardware-settings>label .select-control{min-width:150px}.hardware-settings>label strong{font-weight:500}.range-row{display:flex;align-items:center;gap:7px;direction:ltr}.range-row input{width:125px;accent-color:var(--blue-700)}.range-row output{min-width:45px;padding:4px;border:1px solid var(--border);border-radius:5px;text-align:center}.calibration-button{min-height:50px;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:12px;border:1px solid #87b5cd;border-radius:6px;color:var(--blue-950);background:#eef8fd;cursor:pointer;font-weight:600}.calibration-button svg{width:25px}.server-status{min-height:61px;display:flex;align-items:center;gap:11px;margin-top:auto}.server-status>svg{width:27px;color:var(--blue-900)}.server-status>div{display:flex;flex:1;flex-direction:column;gap:4px}.server-status strong{font-size:11px}.server-status span{display:flex;align-items:center;gap:6px;color:var(--green);font-size:9px}.server-status span i{width:7px;height:7px}.server-status>svg:last-child{color:var(--green)}.action-bar{display:flex;align-items:center;justify-content:center;gap:15px;padding:8px 18px;border-top:1px solid var(--border);background:#fff;direction:rtl}.action-bar button{width:min(280px,20vw);height:49px;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid #a9bfce;border-radius:7px;color:var(--blue-950);background:#fff;cursor:pointer;font-size:16px;font-weight:600}.action-bar button svg{width:24px}.action-bar .primary-action{color:#fff;border-color:#00698f;background:linear-gradient(#087da6,#00698f)}.action-bar .stop-action{color:#e5222c;border-color:#f08b91}.action-bar .pause-action{color:#805a00;border-color:#d5ac45;background:#fff9e8}.action-bar .stop-action svg{fill:currentColor}.status-bar{display:flex;align-items:center;justify-content:space-between;padding:0 19px;border-top:1px solid #e4e9ed;background:#fff;direction:rtl}.status-bar span{display:flex;align-items:center;gap:8px;font-size:10px}.status-bar span svg{width:18px;color:var(--green)}.status-bar .status-degraded,.status-bar .status-degraded svg{color:#b3262d}.status-bar .status-degraded i{background:#d7353d}.status-bar span i{width:8px;height:8px}.status-bar small{color:#566b79;font-size:9px}.mode-infrared .status-bar,.mode-laser .status-bar{display:none}.mode-infrared,.mode-laser{grid-template-rows:62px minmax(0,1fr) 99px}.mode-infrared .source-section,.mode-laser .source-section{padding-top:9px}.mode-infrared .receiver-panel{padding:8px 10px}.mode-infrared .transport-options button{height:42px}.mode-infrared .transport-options{gap:7px}.mode-infrared .hardware-settings>label{min-height:46px}.mode-infrared .calibration-button{min-height:47px;margin-top:8px}.mode-infrared .separated-data{margin-top:8px}.mode-laser .receiver-panel{padding:9px}.mode-laser .laser-device{min-height:145px}.mode-laser .mini-bar{height:24px}.mode-laser .sensor-table dl div{height:20px}.mode-laser .transport-panel{padding-bottom:12px}@media(max-height:860px)and (min-width:1201px){.app-shell{grid-template-rows:58px minmax(0,1fr) 58px 25px}.mode-infrared,.mode-laser{grid-template-rows:58px minmax(0,1fr) 72px}.workspace{padding-top:8px;padding-bottom:8px}.center-panel{grid-template-rows:minmax(240px,.95fr) minmax(235px,1.05fr)}.mode-infrared .center-panel{grid-template-rows:minmax(250px,.9fr) minmax(270px,1.1fr)}.mode-laser .center-panel{grid-template-rows:minmax(255px,.95fr) minmax(270px,1.05fr)}.source-card{height:82px}.mode-laser .source-card{height:78px}.source-progress-card{height:57px}.action-bar button{height:44px}}@media(max-width:1200px){.app-shell,.mode-infrared,.mode-laser{height:auto;min-height:100vh;display:block;overflow:visible}.topbar{height:64px}.window-buttons{display:none}.brand{position:static;transform:none}.brand h1{font-size:19px}.top-actions>button{display:none}.workspace,.mode-infrared .workspace,.mode-laser .workspace{display:grid;grid-template-areas:"controls" "center" "receiver";grid-template-columns:1fr;padding:10px;overflow:visible}.controls-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.server-status{margin-top:0}.center-panel,.mode-infrared .center-panel,.mode-laser .center-panel{display:flex;flex-direction:column}.source-section,.queue-section,.live-section{min-height:260px}.receiver-panel{overflow:visible}.action-bar{position:sticky;bottom:0;z-index:10}.status-bar{display:none}}@media(max-width:720px){.topbar{padding:0 10px}.brand h1{font-size:16px}.session-chip{min-width:12px;width:12px;height:12px;min-height:12px;padding:0;overflow:hidden;color:transparent;border:0;background:var(--green)}.session-chip i{display:none}.controls-panel{display:flex;padding-bottom:112px}.source-cards{grid-template-columns:1fr}.source-card{height:85px}.queue-title{align-items:stretch;flex-direction:column}.queue-title>div{flex-direction:column}.queue-title .select-control,.queue-title .outline-button{width:100%}.table-scroll{min-height:260px}.qr-live-content,.infrared-chart,.laser-chart-row{height:auto;grid-template-columns:1fr}.qr-matrix{min-height:280px}.live-controls,.laser-controls{grid-template-columns:1fr 1fr}.laser-route{min-width:560px}.laser-live-section{overflow-x:auto}.action-bar{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:8px}.action-bar button{width:100%;height:44px;font-size:12px}}.settings-dialog{width:min(100%,940px);min-height:560px}.settings-loading{min-height:300px;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--blue-800);font-weight:600}.settings-loading svg{width:28px}.settings-layout{min-height:0;flex:1;display:grid;grid-template-columns:180px minmax(0,1fr);overflow:hidden}.settings-nav{display:flex;flex-direction:column;gap:4px;padding:16px 10px;border-left:1px solid #dfe7eb;background:#f7f9fa}.settings-nav button{min-height:43px;display:flex;align-items:center;gap:10px;padding:0 12px;border:0;border-radius:6px;color:#4c6573;background:transparent;font-weight:600;cursor:pointer}.settings-nav button:hover{background:#eaf2f6}.settings-nav button.active{color:#fff;background:var(--blue-800)}.settings-nav svg{width:19px}.settings-content{min-width:0;overflow:auto}.settings-section{padding:24px 28px}.settings-section>header{display:flex;align-items:center;gap:11px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #e0e7eb}.settings-section>header>svg{width:24px;color:var(--blue-700)}.settings-section h3,.settings-section header span{margin:0}.settings-section h3{color:#23485b;font-size:17px;letter-spacing:0}.settings-section header span{color:var(--muted);font-size:12px}.setting-row,.toggle-row{min-height:78px;display:grid;grid-template-columns:minmax(150px,.55fr) minmax(320px,1fr);align-items:center;gap:20px;border-bottom:1px solid #e5ebee}.setting-row>strong,.toggle-row>strong{color:#355668;font-size:14px}.visual-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.visual-segments.two{grid-template-columns:repeat(2,minmax(0,1fr))}.visual-segments button{height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 10px;border:1px solid #ccd8df;border-radius:7px;color:#496575;background:#fff;cursor:pointer}.visual-segments button:hover{border-color:#8bb4c7}.visual-segments button.active{border-color:var(--blue-700);color:var(--blue-800);background:#edf8fc;box-shadow:inset 0 0 0 1px var(--blue-700)}.visual-segments svg{width:18px}.settings-select,.system-settings input,.system-settings select{width:100%;height:42px;padding:0 11px;border:1px solid #cbd7de;border-radius:6px;outline:0;color:#17394b;background:#fff}.settings-select:focus,.system-settings input:focus,.system-settings select:focus{border-color:var(--blue-700);box-shadow:0 0 0 3px #087dad1a}.toggle-row{display:flex;justify-content:space-between}.settings-switch{position:relative;width:46px;height:25px;flex:0 0 auto}.settings-switch input{position:absolute;width:1px;height:1px;opacity:0}.settings-switch i{position:absolute;inset:0;border-radius:13px;background:#b5c3ca;cursor:pointer;transition:background .18s}.settings-switch i:after{content:"";position:absolute;top:3px;right:3px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #1e374440;transition:transform .18s}.settings-switch input:checked+i{background:var(--blue-700)}.settings-switch input:checked+i:after{transform:translate(-21px)}.settings-switch input:focus-visible+i{outline:3px solid rgb(8 125 173 / 18%)}.settings-policy-notice{margin:0 0 15px;padding:12px;border-right:3px solid #d99b1b;color:#785b1a;background:#fff8e9;font-size:13px}.settings-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:13px}.settings-form-grid label{display:grid;gap:7px;color:#355668;font-size:13px;font-weight:600}.number-field{position:relative}.number-field input{padding-left:58px}.number-field>span{position:absolute;left:11px;top:11px;color:var(--muted);font-size:12px;font-weight:400}.qr-count-setting{height:42px;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:10px;padding:0 10px;border:1px solid #cbd8df;border-radius:6px;background:#fff}.qr-count-setting input{width:100%;padding:0;accent-color:#087da6}.qr-count-setting output{height:27px;display:grid;place-items:center;border-radius:4px;color:#fff;background:#087da6;font-size:13px;font-weight:700}html[data-theme=dark] .qr-count-setting{border-color:#40535c;background:#17262e}.settings-footer{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 20px;border-top:1px solid #dce4e9;background:#f8fafb}.settings-footer>div{min-width:0;display:flex;align-items:center;gap:12px}.reset-settings{display:inline-flex;align-items:center;gap:7px}.reset-settings svg,.settings-saved svg{width:17px}.settings-saved{display:inline-flex;align-items:center;gap:5px;color:#167b41;font-size:13px}.settings-save-error{max-width:360px;overflow:hidden;color:#a72b34;font-size:12px;text-overflow:ellipsis;white-space:nowrap}html[data-theme=dark]{color-scheme:dark;color:#d9e5ea;background:#0e171c;--blue-950: #d9f0f7;--blue-900: #61bedc;--blue-800: #24a2cf;--blue-700: #43b4d7;--blue-600: #4ebee1;--blue-100: #17333e;--green: #4fca7c;--green-soft: #173426;--orange: #ffad45;--red: #ff6870;--border: #34444d;--border-strong: #465861;--surface: #17242b;--muted: #9eb0b9;--shadow: 0 1px 3px rgb(0 0 0 / 25%)}html[data-theme=dark] body,html[data-theme=dark] .app-shell,html[data-theme=dark] .workspace,html[data-theme=dark] .auth-form-pane,html[data-theme=dark] .auth-loading,html[data-theme=dark] .dialog-forced{color:#d9e5ea;background:#0e171c}html[data-theme=dark] .topbar,html[data-theme=dark] .surface,html[data-theme=dark] .source-card,html[data-theme=dark] .queue-section,html[data-theme=dark] .live-section,html[data-theme=dark] .action-bar,html[data-theme=dark] .status-bar,html[data-theme=dark] .account-menu,html[data-theme=dark] .identity-dialog,html[data-theme=dark] .dialog-header,html[data-theme=dark] .settings-footer,html[data-theme=dark] .settings-nav,html[data-theme=dark] .auth-input,html[data-theme=dark] .users-table-wrap,html[data-theme=dark] .reset-password-row{color:#d9e5ea;border-color:var(--border);background:#17242b}html[data-theme=dark] .settings-nav,html[data-theme=dark] .dialog-header,html[data-theme=dark] .settings-footer,html[data-theme=dark] .users-table th,html[data-theme=dark] .reset-password-row{background:#131f25}html[data-theme=dark] :is(.brand h1,.section-title h2,.settings-section h3,.dialog-header h2,.password-form h3,.session-section h3,.users-heading h3,.source-card strong,.queue-title h2,.settings-section strong,.auth-form header h2){color:#dceaf0}html[data-theme=dark] :is(input,select,.settings-select,.system-settings input,.system-settings select,.password-form input,.create-user-fields input,.create-user-fields select,.users-table select,.reset-password-row input){color:#e1ebef;border-color:#40515a;background:#101b21}html[data-theme=dark] .visual-segments button,html[data-theme=dark] .icon-button,html[data-theme=dark] .create-user-trigger{color:#bed1da;border-color:#40515a;background:#152229}html[data-theme=dark] .visual-segments button.active{color:#7ed5ef;border-color:#3aaccf;background:#15333e}html[data-theme=dark] .session-chip,html[data-theme=dark] .select-control select,html[data-theme=dark] .outline-button,html[data-theme=dark] .role-toggle,html[data-theme=dark] .transport-options button,html[data-theme=dark] .queue-table th{color:#cfdee5;border-color:var(--border);background:#142128}html[data-theme=dark] .queue-table td,html[data-theme=dark] .users-table td,html[data-theme=dark] .session-row,html[data-theme=dark] .settings-section>header,html[data-theme=dark] .setting-row,html[data-theme=dark] .toggle-row,html[data-theme=dark] .account-menu header{border-color:#2e3e46}html[data-theme=dark] .account-menu>button:hover,html[data-theme=dark] .settings-nav button:hover{background:#20333c}html[data-theme=dark] .auth-form header>span:not(.auth-mobile-mark),html[data-theme=dark] .auth-form footer,html[data-theme=dark] .source-card small,html[data-theme=dark] .dialog-header p{color:#93a8b2}html[data-theme=dark] .settings-policy-notice,html[data-theme=dark] .identity-notice{color:#e3c477;background:#312a18}html[data-theme=dark] .form-error,html[data-theme=dark] .auth-error{color:#ff9da3;background:#351c20}html[data-theme=dark] .qr-camera-preview,html[data-theme=dark] .laser-receiver-visual,html[data-theme=dark] .infrared-receiver-visual{background:#0a1115}html[data-density=compact] .app-shell{grid-template-rows:56px minmax(0,1fr) 56px 26px}html[data-density=compact] .workspace{gap:8px;padding:8px}html[data-density=compact] .source-card{height:74px}html[data-density=compact] .queue-table th,html[data-density=compact] .queue-table td,html[data-density=compact] .users-table th,html[data-density=compact] .users-table td{padding-top:7px;padding-bottom:7px}html[data-density=compact] .controls-panel,html[data-density=compact] .receiver-panel{gap:7px}html[data-density=compact] .action-bar button{height:40px}html[data-reduced-motion=true] *,html[data-reduced-motion=true] *:before,html[data-reduced-motion=true] *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}@media(max-width:720px){.top-actions>.settings-button{display:grid}.settings-dialog{min-height:0}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.settings-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:8px;overflow:hidden;border-bottom:1px solid #dfe7eb;border-left:0}.settings-nav button{min-width:0;justify-content:center;gap:6px;padding:0 6px;white-space:nowrap}.settings-nav button svg{flex:0 0 auto}.settings-section{padding:18px 15px}.setting-row{grid-template-columns:1fr;gap:10px;padding:14px 0}.settings-form-grid{grid-template-columns:1fr}.visual-segments button{min-width:0;padding:0 6px;font-size:12px}.settings-footer{align-items:stretch;flex-direction:column-reverse}.settings-footer .primary-button{width:100%}.settings-footer>div{justify-content:space-between}}.auth-loading{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:14px;background:#f4f7f8;color:var(--blue-900);font-weight:600}.auth-loading svg{width:42px;height:42px}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(430px,42%) minmax(500px,58%);direction:ltr;background:#f4f7f8}.auth-identity{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(48px,7vw,110px);overflow:hidden;direction:rtl;color:#fff;background:#073d5c}.auth-identity:after{content:"";position:absolute;inset:auto 0 0;height:8px;background:#13b3bf}.auth-emblem{position:relative;width:112px;height:112px;display:grid;place-items:center;margin-bottom:40px;border:1px solid rgb(255 255 255 / 25%);border-radius:50%}.auth-emblem span{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;color:#073d5c;background:#fff}.auth-emblem svg{width:34px;height:34px}.auth-emblem i{position:absolute;right:102px;width:min(22vw,250px);height:1px;background:#ffffff38}.auth-emblem i:nth-child(2){top:36px}.auth-emblem i:nth-child(3){top:56px;width:min(28vw,320px)}.auth-emblem i:nth-child(4){top:76px;width:min(17vw,190px)}.auth-kicker{margin:0 0 12px;color:#68e1e4;font-size:16px;font-weight:600}.auth-identity h1{max-width:520px;margin:0;font-size:clamp(36px,4vw,62px);line-height:1.35;letter-spacing:0}.auth-summary{max-width:500px;margin:24px 0 0;color:#d6e8ef;font-size:18px;line-height:2}.auth-trust{display:flex;align-items:center;gap:10px;margin-top:52px;color:#c8dce5;font-size:13px}.auth-trust svg{width:19px;color:#55d6a8}.auth-form-pane{min-height:100vh;display:grid;place-items:center;padding:48px;direction:rtl}.auth-form{width:min(100%,430px)}.auth-form header{margin-bottom:38px}.auth-form header p{margin:0 0 8px;color:var(--blue-700);font-size:14px;font-weight:700}.auth-form header h2{margin:0 0 12px;color:#183849;font-size:29px;letter-spacing:0}.auth-form header>span:not(.auth-mobile-mark){color:#6b7e88;font-size:14px}.auth-mobile-mark{display:none}.auth-form>label,.password-form label,.create-user-fields label{display:grid;gap:8px;margin-bottom:20px;color:#27485a;font-size:14px;font-weight:600}.auth-input{height:52px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid #cbd8df;border-radius:7px;background:#fff;transition:border-color .15s,box-shadow .15s}.auth-input:focus-within{border-color:var(--blue-700);box-shadow:0 0 0 3px #087dad1c}.auth-input>svg{width:19px;color:#6b8796}.auth-input input{min-width:0;flex:1;height:100%;border:0;outline:0;direction:ltr;color:#17394b;background:transparent}.auth-input button{width:32px;height:32px;display:grid;place-items:center;padding:0;border:0;background:transparent;color:#708893;cursor:pointer}.auth-input button svg{width:18px}.auth-error,.form-error{margin:-4px 0 16px;padding:10px 12px;border-right:3px solid var(--red);color:#9f2029;background:#fff0f1;font-size:13px;line-height:1.7}.auth-submit,.primary-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;border:0;border-radius:7px;color:#fff;background:var(--blue-800);font-weight:700;cursor:pointer}.auth-submit{width:100%;height:52px;margin-top:7px}.auth-submit:hover,.primary-button:hover{background:var(--blue-900)}.auth-submit:disabled,.primary-button:disabled{opacity:.65;cursor:wait}.auth-submit svg,.primary-button svg{width:18px}.auth-form footer{margin-top:28px;text-align:center;direction:ltr;color:#8a9aa2;font-size:12px}.spin{animation:identity-spin .8s linear infinite}@keyframes identity-spin{to{transform:rotate(360deg)}}.account-menu{position:absolute;z-index:60;top:56px;left:136px;width:235px;padding:6px;direction:rtl;border:1px solid var(--border);border-radius:7px;box-shadow:0 12px 32px #16334329;background:#fff}.account-menu header{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #e5ebef;margin-bottom:5px}.account-menu header>span{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--blue-800)}.account-menu header svg{width:18px}.account-menu header div{min-width:0;display:grid}.account-menu header strong,.account-menu header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu header small{color:var(--muted)}.account-menu>button{width:100%;height:38px;display:flex;align-items:center;gap:10px;padding:0 10px;border:0;border-radius:5px;background:transparent;cursor:pointer}.account-menu>button:hover{background:#eef6fa}.account-menu>button svg{width:18px}.account-menu .logout-action{margin-top:4px;border-top:1px solid #e5ebef;border-radius:0 0 5px 5px;color:#b32730}.dialog-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:24px;background:#0f232e94;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog-forced{background:#edf3f5;-webkit-backdrop-filter:none;backdrop-filter:none}.dialog-forced .account-dialog{width:min(100%,680px)}.dialog-forced .account-sections{display:block}.identity-dialog{width:min(100%,820px);max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #ccd8df;border-radius:8px;box-shadow:0 20px 60px #122e3e33;background:#fff}.user-dialog{width:min(100%,1100px)}.dialog-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #dce4e9;background:#f8fafb}.dialog-header>div,.dialog-header>div:first-child{display:flex;align-items:center;gap:11px}.dialog-header>div:first-child>span{width:40px;height:40px;display:grid;place-items:center;border-radius:7px;color:#fff;background:var(--blue-800)}.dialog-header svg{width:20px}.dialog-header h2,.dialog-header p{margin:0}.dialog-header h2{color:#183a4d;font-size:19px;letter-spacing:0}.dialog-header p{margin-top:3px;color:var(--muted);font-size:12px}.dialog-body{min-height:0;padding:20px;overflow:auto}.icon-button{width:36px;height:36px;display:inline-grid;place-items:center;padding:0;border:1px solid #d4dfe5;border-radius:6px;color:#496675;background:#fff;cursor:pointer}.icon-button:hover{border-color:#9cb2be;color:var(--blue-800)}.icon-button:disabled{opacity:.4;cursor:default}.icon-button svg{width:17px}.icon-button.danger{color:#b62b33}.account-sections{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:28px}.password-form h3,.session-section h3,.users-heading h3,.create-user-form h3{margin:0 0 17px;color:#26495c;font-size:16px;letter-spacing:0}.password-form input,.create-user-fields input,.create-user-fields select,.users-table select,.reset-password-row input{width:100%;height:42px;padding:0 11px;border:1px solid #cbd7de;border-radius:6px;outline:0;color:#17394b;background:#fff}.password-form input:focus,.create-user-fields input:focus,.create-user-fields select:focus,.users-table select:focus,.reset-password-row input:focus{border-color:var(--blue-700);box-shadow:0 0 0 3px #087dad1a}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.identity-notice{margin:0 0 18px;padding:11px 13px;border-right:3px solid #e4a11b;color:#725515;background:#fff8e8;font-size:13px;line-height:1.8}.form-success{display:flex;align-items:center;gap:7px;color:#137a3c;font-size:13px}.form-success svg{width:17px}.session-section{padding-right:26px;border-right:1px solid #e1e8ec}.session-section h3,.users-heading h3{display:flex;align-items:center;gap:8px}.session-section h3 svg,.users-heading h3 svg{width:19px}.session-list{display:grid}.session-row{min-height:78px;display:grid;grid-template-columns:30px minmax(0,1fr) 36px;align-items:center;gap:9px;border-bottom:1px solid #e5ebee}.session-row>svg{width:21px;color:var(--blue-700)}.session-row div{min-width:0;display:grid}.session-row span,.session-row small{color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{margin:20px 0;color:var(--muted);text-align:center;font-size:13px}.create-user-trigger{min-height:42px;display:inline-flex;align-items:center;gap:8px;padding:0 15px;border:1px solid var(--blue-700);border-radius:7px;color:var(--blue-800);background:#fff;font-weight:700;cursor:pointer}.create-user-trigger svg{width:18px}.create-user-form{padding-bottom:20px;border-bottom:1px solid #dfe7eb}.form-section-title{display:flex;gap:10px;margin-bottom:17px}.form-section-title>svg{width:23px;color:var(--blue-700)}.form-section-title h3{margin-bottom:2px}.form-section-title span{color:var(--muted);font-size:12px}.create-user-fields{display:grid;grid-template-columns:1fr 1fr .8fr 1fr;gap:12px}.create-user-fields label{margin:0}.form-actions{display:flex;align-items:center;gap:10px}.text-button{min-height:40px;padding:0 12px;border:0;color:var(--muted);background:transparent;cursor:pointer}.identity-wide-error{margin:15px 0 0}.users-section{margin-top:20px}.users-heading{display:flex;align-items:center;justify-content:space-between}.users-heading h3{margin:0}.users-heading>span{color:var(--muted);font-size:12px}.users-table-wrap{margin-top:12px;overflow-x:auto;border:1px solid #d9e2e7;border-radius:7px}.users-table{width:100%;min-width:790px;border-collapse:collapse;text-align:right}.users-table th,.users-table td{padding:11px 12px;border-bottom:1px solid #e5ebef;font-size:13px;vertical-align:middle}.users-table th{color:#4f6876;background:#f5f8fa;font-size:12px}.users-table tbody tr:last-child td{border-bottom:0}.users-table td:first-child{min-width:190px}.users-table td:first-child strong,.users-table td:first-child span{display:block}.users-table td:first-child span{color:var(--muted);font-size:11px;text-align:right}.users-table select{width:145px;height:36px}.status-toggle{min-width:88px;height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #e4b9bd;border-radius:6px;color:#a8323a;background:#fff4f4;cursor:pointer}.status-toggle.active{border-color:#acd7bc;color:#197b41;background:#eff9f2}.status-toggle svg{width:16px}.reset-password-row{display:grid;grid-template-columns:minmax(230px,1fr) minmax(220px,1fr) auto 36px;align-items:center;gap:10px;margin-top:16px;padding:13px;border:1px solid #d7e2e8;border-radius:7px;background:#f7fafb}.reset-password-row>div{display:flex;align-items:center;gap:8px;font-size:13px}.reset-password-row>div svg{width:19px;color:var(--blue-700)}@media(max-width:900px){.auth-page{grid-template-columns:minmax(280px,36%) minmax(430px,64%)}.auth-identity{padding:38px}.auth-identity h1{font-size:36px}.account-sections{grid-template-columns:1fr}.session-section{padding:22px 0 0;border-top:1px solid #e1e8ec;border-right:0}.create-user-fields{grid-template-columns:1fr 1fr}.reset-password-row{grid-template-columns:1fr 1fr auto 36px}}@media(max-width:720px){.auth-page{display:block;background:#fff}.auth-identity{min-height:170px;justify-content:flex-end;padding:28px 24px}.auth-identity h1{font-size:25px}.auth-kicker,.auth-summary,.auth-trust,.auth-emblem{display:none}.auth-form-pane{min-height:calc(100vh - 170px);padding:32px 24px;align-items:start}.auth-form header{margin-bottom:26px}.auth-form header h2{font-size:24px}.auth-mobile-mark{display:none}.top-actions>.account-button{display:grid}.account-menu{top:56px;left:10px}.dialog-backdrop{padding:8px}.identity-dialog{max-height:calc(100vh - 16px)}.dialog-header{padding:12px}.dialog-body{padding:15px}.form-grid,.create-user-fields{grid-template-columns:1fr}.reset-password-row{grid-template-columns:1fr 36px}.reset-password-row input,.reset-password-row .primary-button{grid-column:1 / -1}}html[data-theme=dark]{scrollbar-color:#52656f #10191e}html[data-theme=dark] :is(.section-title,.queue-title,.live-title,.inline-policy,.hardware-settings>label,.separated-data,.separated-data th,.separated-data td,.separated-data footer,.pulse-wave,.create-user-form,.users-table th,.users-table td,.users-table-wrap,.account-menu .logout-action){border-color:#34444d}html[data-theme=dark] :is(.section-title,.separated-data h3,.source-receive h3,.laser-quality h3,.sensor-table h3,.source-card strong,.queue-title h2,.live-title h2,.packet-summary b,.pulse-area strong,.metric-box strong,.power-box>strong,.laser-counter strong,.server-status strong,.password-form h3,.session-section h3,.users-heading h3,.create-user-form h3,.form-section-title h3){color:#dceaf0}html[data-theme=dark] :is(.camera-state,.device-state,.signal-box,.source-receive,.laser-quality,.sensor-table,.metric-box,.power-box,.packet-summary,.laser-counter){color:#cbd9df;border-color:#34444d;background:#142128}html[data-theme=dark] .separated-data th{color:#b9cad2;background:#101b21}html[data-theme=dark] .separated-data td{color:#d1dee4;background:#17242b}html[data-theme=dark] .separated-data footer{color:#a9bbc4;background:#131f25}html[data-theme=dark] :is(.mini-progress,.mini-bar){border-color:#2f414a;color:#cbd9df}html[data-theme=dark] :is(.mini-progress>span,.mini-bar>i){background:#2b3b43}html[data-theme=dark] .source-progress-card>div>span{background:#2b3b43}html[data-theme=dark] .source-progress-card small{color:#9eb1ba}html[data-theme=dark] .source-icon{color:#72d1ed;background:#173845}html[data-theme=dark] .mode-laser .source-icon{color:#fff;background:linear-gradient(#1388b8,#096386)}html[data-theme=dark] :is(.source-card small,.source-card>div>span){color:#9eb1ba}html[data-theme=dark] .queue-table th{color:#b9cad2;border-color:#34444d;background:#101b21}html[data-theme=dark] .queue-table td{color:#d1dee4;border-color:#34444d;background:#17242b}html[data-theme=dark] .queue-table tbody tr:hover td{background:#1d2d35}html[data-theme=dark] :is(.plain-status,.queue-footer){color:#aebfc7}html[data-theme=dark] .queue-actions button{color:#aec3cd;border-color:#40535d;background:#101b21}html[data-theme=dark] :is(.queue-actions button:hover:not(:disabled),.queue-actions button.active){color:#78d3ef;border-color:#398eaa;background:#17333e}html[data-theme=dark] .queue-actions button:nth-child(3):hover:not(:disabled){color:#ff969d;border-color:#87474e;background:#3b2025}html[data-theme=dark] .status-badge.sending{color:#76cef2;background:#123044}html[data-theme=dark] .status-badge.queued{color:#ffc36e;background:#382a18}html[data-theme=dark] .status-badge.complete{color:#72dc9b;background:#173728}html[data-theme=dark] .simulation-badge{color:#b4c6ce;border-color:#40515a;background:#101b21}html[data-theme=dark] .simulation-badge.verified{color:#72dc9b;border-color:#376e50;background:#173728}html[data-theme=dark] .simulation-badge.error{color:#ff959c;border-color:#87474e;background:#3b2025}html[data-theme=dark] .qr-matrix{border-color:#40515a;background:#10191e}html[data-theme=dark] .real-qr-grid{background:#10191e}html[data-theme=dark] .real-qr-tile{border-color:#566871}html[data-theme=dark] .real-qr-tile span{color:#324b58;background:#e8eef1}html[data-theme=dark] .packet-summary p{color:#aebfc7}html[data-theme=dark] .packet-summary>div,html[data-theme=dark] .power-box>div{background:#2b3b43}html[data-theme=dark] .packet-summary small{color:#90a5af}html[data-theme=dark] .pulse-wave{border-color:#40515a;background:linear-gradient(rgb(126 153 165 / 16%) 1px,transparent 1px) 0 0 / 100% 33%}html[data-theme=dark] :is(.metric-box span,.power-box>span){color:#aebfc7}html[data-theme=dark] .live-controls .metric-box:nth-child(2) strong{color:#dceaf0}html[data-theme=dark] .power-box>div b{border-color:#63808d;background:#dceaf0}html[data-theme=dark] .laser-counter button{color:#bfd0d8;border-color:#40515a;background:#101b21}html[data-theme=dark] .safety-ok{color:#8de5ac;border-color:#376e50;background:#173728}html[data-theme=dark] .safety-ok :is(strong,small){color:inherit}html[data-theme=dark] .safety-alert{color:#ff969d;border-color:#87474e;background:#3b2025}html[data-theme=dark] .safety-alert span{color:inherit}html[data-theme=dark] .role-toggle button{color:#c9d8df;background:#101b21}html[data-theme=dark] .role-toggle button+button{border-color:#34444d}html[data-theme=dark] .role-toggle button.active{color:#fff;background:linear-gradient(#1087b0,#076789)}html[data-theme=dark] .transport-options button{color:#c9d8df;border-color:#40515a;background:#142128}html[data-theme=dark] .transport-options button:hover{border-color:#5b879a;background:#1b2c34}html[data-theme=dark] .transport-options button.active{color:#eaf8fc;border-color:#4cb6d8;background:#173845}html[data-theme=dark] .mode-infrared .transport-options button.active{color:#fff;background:linear-gradient(#1087b0,#076789)}html[data-theme=dark] .radio-dot{border-color:#78909b;background:transparent}html[data-theme=dark] .transport-options button.active .radio-dot{border-color:#55c4e6;background:#173845}html[data-theme=dark] .mode-infrared .transport-options button.active .radio-dot{border-color:#fff;background:#087aa4}html[data-theme=dark] :is(.qr-settings p,.hardware-settings>label,.range-row b,.range-row output,.inline-policy>label){color:#b7c8d0}html[data-theme=dark] .range-row output{border-color:#40515a;background:#101b21}html[data-theme=dark] :is(.qr-file-button,.calibration-button){color:#8edcf2;border-color:#3f7990;background:#15313c}html[data-theme=dark] :is(.qr-file-button,.calibration-button):hover{color:#c7f1fc;border-color:#55b4d2;background:#1a3d49}html[data-theme=dark] .action-bar button{color:#c9d8df;border-color:#40515a;background:#142128}html[data-theme=dark] .action-bar button:hover:not(:disabled){border-color:#5b879a;background:#1b2c34}html[data-theme=dark] .action-bar .primary-action{color:#fff;border-color:#168ab4;background:linear-gradient(#1087b0,#076789)}html[data-theme=dark] .action-bar .stop-action{color:#ff848c;border-color:#87474e;background:#3b2025}html[data-theme=dark] .action-bar button:disabled{color:#62757e;border-color:#2e3e46;background:#111c22}html[data-theme=dark] .status-bar{color:#9fb2bb}html[data-theme=dark] .status-bar small{color:#91a6af}.source-section{overflow:visible}.sidebar-panel-title{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-panel-title>div{min-width:0;display:flex;align-items:center;gap:7px}.sidebar-panel-title>div>svg{width:17px;height:17px;color:var(--blue-700)}.sidebar-panel-title strong{color:var(--blue-950);font-size:14px}.sidebar-panel-title>span{color:var(--muted);font-size:10px;white-space:nowrap}.source-sidebar-panel,.manual-transfer-panel{padding:9px 10px 10px}.source-sidebar-list{margin-top:4px;border-top:1px solid #e2e9ed}.source-sidebar-item{width:100%;min-height:44px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:8px;padding:5px 0;text-align:right;border:0;border-bottom:1px solid #edf1f4;background:transparent;cursor:pointer}.source-sidebar-item:last-child{border-bottom:0}.source-sidebar-item:disabled{opacity:1;cursor:default}.source-sidebar-item .source-icon{width:30px;height:30px;border-radius:6px}.source-sidebar-item .source-icon svg{width:15px;height:15px}.source-sidebar-item>div{min-width:0;display:grid;gap:2px}.source-sidebar-item strong{overflow:hidden;color:#173f58;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.source-sidebar-item>div>span{display:inline-flex;align-items:center;gap:5px;color:#27804a;font-size:9px}.source-sidebar-item>div>span.source-offline{color:#b4232d}.source-sidebar-item>div>span i{width:6px;height:6px;border-radius:50%;background:currentColor}.manual-file-input{display:none}.manual-file-picker{width:100%;min-height:48px;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:7px;margin-top:5px;padding:7px 9px;text-align:right;color:#1b5877;border:1px dashed #9ab8c8;border-radius:6px;background:#f6fbfd;cursor:pointer}.manual-file-picker svg{width:18px;height:18px}.manual-file-picker span{color:var(--muted);font-size:9px;white-space:nowrap}.manual-file-picker.is-dragging{color:#075f86;border-color:#0879a2;background:#e8f7fc;box-shadow:inset 0 0 0 1px #0879a2}.manual-file-list{max-height:210px;overflow-y:auto}.manual-file-selection{min-height:48px;display:grid;grid-template-columns:26px minmax(0,1fr) 26px;align-items:center;gap:7px;margin-top:5px;padding:6px 7px;border:1px solid #cbdce5;border-radius:6px;background:#f8fbfc}.manual-file-list .manual-file-selection+.manual-file-selection{margin-top:4px}.manual-more-files{display:block;margin:5px 4px 0;color:var(--muted);font-size:9px}.manual-test-profiles{display:grid;gap:5px;margin-top:8px}.manual-test-profiles>span{display:inline-flex;align-items:center;gap:5px;color:#405e70;font-size:10px}.manual-test-profiles>span svg{width:14px;height:14px}.manual-test-profiles>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.manual-test-profiles button{min-width:0;height:28px;overflow:hidden;padding:0 4px;color:#315b70;border:1px solid #c5d6de;border-radius:5px;background:#fff;font-size:9px;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.manual-test-profiles button.active{color:#fff;border-color:#0879a2;background:#0879a2}.manual-preflight{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:8px;overflow:hidden;border:1px solid #d5e0e6;border-radius:5px;background:#d5e0e6}.manual-preflight>div{min-width:0;display:grid;gap:2px;padding:6px;background:#f8fbfc}.manual-preflight span{color:#677d89;font-size:8px}.manual-preflight b{overflow:hidden;color:#173f58;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.manual-preflight .manual-capacity{grid-column:1 / -1;grid-template-columns:auto minmax(45px,1fr) auto;align-items:center;gap:6px}.manual-capacity i{height:5px;overflow:hidden;border-radius:3px;background:#d8e4ea}.manual-capacity i b{display:block;height:100%;border-radius:inherit;background:#1591b9}.manual-capacity strong{color:#315b70;font-size:8px}.manual-file-selection>svg{width:19px;height:19px;color:var(--blue-700)}.manual-file-selection>div{min-width:0;display:grid}.manual-file-selection strong{overflow:hidden;color:#173f58;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.manual-file-selection span{color:var(--muted);font-size:9px}.manual-file-selection button{width:26px;height:26px;display:grid;place-items:center;padding:0;border:0;background:transparent;cursor:pointer}.manual-file-selection button svg{width:15px;height:15px}.manual-priority{display:grid;grid-template-columns:auto minmax(100px,1fr);align-items:center;gap:8px;margin-top:7px;color:#405e70;font-size:10px}.manual-priority select{width:100%;height:30px;padding:0 8px;color:#173f58;border:1px solid #cbd8df;border-radius:5px;background:#fff}.manual-duplicate-option{display:grid;grid-template-columns:15px 15px minmax(0,1fr);align-items:center;gap:5px;margin-top:7px;color:#405e70;font-size:9px;line-height:1.5;cursor:pointer}.manual-duplicate-option input{width:14px;height:14px;margin:0;accent-color:#0879a2}.manual-duplicate-option svg{width:14px;height:14px;color:#0879a2}.manual-transfer-actions{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:6px;margin-top:8px}.manual-transfer-actions button{min-width:0;min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:5px 7px;border-radius:5px;cursor:pointer;font-size:10px;font-weight:600}.manual-transfer-actions button:disabled,.manual-file-picker:disabled{opacity:.55;cursor:not-allowed}.manual-transfer-actions svg{width:15px;height:15px}.manual-queue-button{color:#1b5877;border:1px solid #a9c4d2;background:#f5fafc}.manual-start-button{color:#fff;border:1px solid #0879a2;background:#0879a2}.manual-transfer-message{display:flex;align-items:flex-start;gap:5px;margin:7px 0 0;color:#a02b33;font-size:9px;line-height:1.7}.manual-transfer-message.state-queued{color:#1f7d45}.manual-transfer-message svg{width:14px;height:14px;margin-top:1px}.transfer-report-dialog{width:min(1040px,calc(100vw - 36px));max-width:1040px;height:min(720px,calc(100vh - 36px));overflow:hidden}.transfer-report-layout{min-height:0;display:grid;grid-template-columns:230px minmax(0,1fr);flex:1;overflow:hidden}.report-history{min-height:0;overflow-y:auto;padding:10px;border-left:1px solid #dce5ea;background:#f5f8fa}.report-history button{width:100%;display:grid;gap:4px;padding:9px;text-align:right;border:0;border-bottom:1px solid #dce5ea;background:transparent;cursor:pointer}.report-history button.active{border-radius:5px;border-bottom-color:transparent;background:#dff2f9}.report-history strong,.report-history span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-history strong{color:#173f58;font-size:11px}.report-history span{color:#687d89;font-size:9px}.report-details{min-width:0;min-height:0;display:flex;flex-direction:column;padding:14px;overflow:auto}.report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid #dce5ea}.report-summary>div{min-width:0;display:grid;grid-template-columns:22px minmax(0,1fr);gap:2px 6px;padding:10px;border-left:1px solid #e5ecef}.report-summary>div:last-child{border-left:0}.report-summary svg{grid-row:1 / 3;width:18px;height:18px;color:#0879a2}.report-summary span{color:#687d89;font-size:9px}.report-summary strong{overflow:hidden;color:#173f58;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.report-summary .report-status-completed{color:#18743d}.report-summary .report-status-failed{color:#a02b33}.report-summary .report-status-skipped{color:#9b611b}.report-table-wrap{min-height:190px;margin-top:14px;overflow:auto;border:1px solid #dce5ea;border-radius:5px}.report-table{width:100%;border-collapse:collapse;table-layout:fixed}.report-table th,.report-table td{padding:8px 9px;text-align:right;border-bottom:1px solid #e6ecef;color:#405e70;font-size:10px}.report-table th{position:sticky;top:0;color:#173f58;background:#f5f8fa;z-index:1}.report-table th:first-child{width:28%}.report-table th:nth-child(2),.report-table th:nth-child(3){width:15%}.report-table td strong{display:block;overflow:hidden;color:#173f58;text-overflow:ellipsis;white-space:nowrap}.report-table td small{color:#a05e16;font-size:8px}.report-table code{display:block;overflow:hidden;color:#456371;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.report-errors{margin-top:12px;padding:8px 10px;color:#8d2530;border-right:3px solid #b4232d;background:#fff3f4}.report-errors strong,.report-errors p{margin:0;font-size:10px}.report-errors p+p{margin-top:4px}.report-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px}.report-footer>span{min-width:0;overflow:hidden;color:#687d89;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.report-footer button{min-height:34px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;color:#fff;border:1px solid #0879a2;border-radius:5px;background:#0879a2;font-weight:600;cursor:pointer}.report-footer button svg{width:16px;height:16px}.report-empty{flex:1;display:grid;place-content:center;justify-items:center;gap:8px;color:#687d89;text-align:center}.report-empty svg{width:42px;height:42px;color:#8ca4b0}.report-empty strong{color:#173f58}.report-empty p{margin:0;font-size:11px}.source-section-title,.pane-title{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 5px 8px}.source-section-title>div,.pane-title>div{min-width:0}.source-section-title h2,.pane-title h3{margin:0;color:var(--blue-950);font-size:16px}.source-section-title span,.pane-title span{display:block;margin-top:2px;color:#657984;font-size:10px}.source-section-title .outline-button{flex:0 0 auto}.source-card b.source-offline{color:#b4232d;background:#fff0f1}.queue-policy-control{direction:rtl!important}.queue-policy-control>span{color:#5d707b;font-size:11px;font-weight:600}.queue-policy-control .select-control{min-width:210px}.receiver-link-preview{height:86px;display:grid;grid-template-columns:52px minmax(0,1fr) 34px;align-items:center;gap:10px;margin-bottom:9px;padding:12px;border:1px solid #c8d7df;border-radius:7px;color:#14384b;background:#f5fafc}.receiver-device-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:6px;color:#fff;background:#188db7}.receiver-link-laser .receiver-device-icon{background:#0879ad}.receiver-link-preview>div{min-width:0}.receiver-link-preview strong,.receiver-link-preview small{display:block}.receiver-link-preview strong{font-size:12px}.receiver-link-preview small{margin-top:7px;color:#4d6b79;font-size:9px}.receiver-link-preview small i{margin-left:5px;background:var(--green)}.receiver-link-preview>svg{color:#22a5cf}.unified-live-box{min-height:0;display:grid;grid-template-rows:minmax(230px,1fr) auto;overflow:hidden;border:1px solid var(--border);border-radius:7px;background:var(--surface);box-shadow:var(--shadow)}.unified-live-box>.live-section{min-height:230px;border:0;border-radius:0;box-shadow:none}.transfer-telemetry{min-height:128px;padding:9px 12px 10px;border-top:1px solid var(--border);background:#fbfdfe}.transfer-telemetry>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.transfer-telemetry>header>div{display:flex;align-items:center;gap:8px}.transfer-telemetry>header svg{width:18px;color:#1195c3}.transfer-telemetry>header span{display:flex;flex-direction:column}.transfer-telemetry>header strong{color:#17394b;font-size:11px}.transfer-telemetry>header small{color:#6a7d87;font-size:8px}.transfer-telemetry>header>b{display:inline-flex;align-items:center;gap:5px;color:#74858e;font-size:9px;font-weight:500}.transfer-telemetry>header>b i{width:7px;height:7px;border-radius:50%;background:#92a1a8}.transfer-telemetry>header>b.live{color:#18844c}.transfer-telemetry>header>b.live i{background:#21ac62;box-shadow:0 0 0 3px #21ac6226}.telemetry-content{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(260px,1.15fr);align-items:stretch;gap:12px}.rate-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.rate-metrics article{min-width:0;padding:7px 9px;border:1px solid #d5e0e6;border-radius:6px;background:#fff}.rate-metrics article span{display:flex;align-items:center;gap:5px;color:#637984;font-size:8px;white-space:nowrap}.rate-metrics article svg{width:13px;height:13px}.rate-metrics article strong{display:block;margin-top:5px;overflow:hidden;color:#17394b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.rate-chart{position:relative;min-height:64px}.rate-chart svg{width:100%;height:64px;overflow:visible}.rate-chart line{stroke:#dce6eb;stroke-width:1}.rate-chart polyline{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.rate-chart .sent-line{stroke:#139eca}.rate-chart .received-line{stroke:#20a45d}.chart-legend{position:absolute;top:-2px;left:2px;display:flex;gap:10px;color:#637984;font-size:8px}.chart-legend span{display:inline-flex;align-items:center;gap:4px}.chart-legend i{width:11px;height:3px;border-radius:2px}.chart-legend .sent{background:#139eca}.chart-legend .received{background:#20a45d}.source-manager-backdrop{z-index:80}.source-manager-dialog{width:min(1180px,calc(100vw - 32px));max-width:1180px;height:min(760px,calc(100vh - 32px))}.source-manager-body{min-height:0;flex:1;display:grid;grid-template-columns:minmax(390px,.95fr) minmax(430px,1.05fr);direction:ltr;overflow:hidden}.managed-sources-pane,.source-editor-pane{min-width:0;min-height:0;padding:18px;direction:rtl}.managed-sources-pane{border-right:1px solid #d6e0e5;overflow:hidden}.source-editor-pane{overflow-y:auto}.managed-source-list{height:calc(100% - 48px);overflow-y:auto;padding-left:4px}.managed-source-item{display:grid;grid-template-columns:42px minmax(0,1fr) 32px;gap:10px;margin-bottom:8px;padding:11px;border:1px solid #d4dfe5;border-radius:7px;background:#fff}.connector-kind-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:6px;color:#087fa9;background:#e9f7fb}.connector-kind-icon svg{width:20px}.managed-source-main{min-width:0}.managed-source-main>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.managed-source-main strong{overflow:hidden;color:#17394b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.connector-state{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;color:#16814a;font-size:8px}.connector-state i{width:6px;height:6px;background:currentColor}.connector-state.state-error{color:#bd2c36}.connector-state.state-running{color:#168bb4}.connector-state.state-disabled{color:#778991}.managed-source-main code{max-width:100%;display:block;margin-top:5px;overflow:hidden;color:#546b77;font:9px/1.5 Consolas,monospace;text-align:right;text-overflow:ellipsis;white-space:nowrap}.managed-source-main>small{display:block;margin-top:4px;color:#6a7e88;font-size:8px}.source-route-meta{display:flex;gap:5px;margin-top:7px}.source-route-meta span,.source-route-meta b{padding:2px 6px;border-radius:4px;color:#526d7a;background:#eef4f7;font-size:8px;font-weight:500}.managed-source-actions{display:flex;flex-direction:column;gap:4px}.managed-source-actions button{width:28px;height:28px;display:grid;place-items:center;padding:0;border:1px solid #cbd8df;border-radius:5px;color:#496876;background:#fff}.managed-source-actions button svg{width:13px}.managed-source-actions .danger-icon{color:#ba3039}.compact-switch{position:relative;width:28px;height:18px;display:block}.compact-switch input{position:absolute;opacity:0}.compact-switch span{position:absolute;inset:0;border-radius:9px;background:#9aaab2}.compact-switch span:after{position:absolute;width:12px;height:12px;top:3px;right:3px;border-radius:50%;background:#fff;content:"";transition:transform .18s ease}.compact-switch input:checked+span{background:#1299c5}.compact-switch input:checked+span:after{transform:translate(-10px)}.empty-sources{min-height:240px;display:grid;place-items:center;align-content:center;gap:8px;color:#7b8d96;text-align:center}.empty-sources svg{width:42px;height:42px}.empty-sources strong{color:#3d5967;font-size:12px}.empty-sources span{font-size:9px}.connector-kind-toggle{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:14px}.connector-kind-toggle button{height:42px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #b9cbd4;border-radius:6px;color:#4a6572;background:#fff}.connector-kind-toggle button.active{color:#087ba5;border-color:#1c9bc5;background:#eaf8fc}.connector-kind-toggle svg{width:18px}.source-editor-pane>label,.source-editor-grid>label{display:flex;flex-direction:column;gap:6px;margin-bottom:11px;color:#36525f;font-size:10px;font-weight:600}.source-editor-pane input,.source-editor-pane select{width:100%;height:39px;padding:0 10px;border:1px solid #bfcfd7;border-radius:5px;color:#183947;background:#fff;outline:none}.source-editor-pane input:focus,.source-editor-pane select:focus{border-color:#149bc7;box-shadow:0 0 0 3px #149bc71f}.source-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.connector-flags{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:2px 0 14px}.connector-flags>label{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #d1dde3;border-radius:6px;background:#f8fbfc}.connector-flags input{width:16px;height:16px;flex:0 0 auto;accent-color:#119bc8}.connector-flags span,.connector-flags strong,.connector-flags small{display:block}.connector-flags strong{color:#294a59;font-size:10px}.connector-flags small{margin-top:3px;color:#6b7f88;font-size:8px}.source-save-button{width:100%;height:43px}.connector-success{display:flex;align-items:center;gap:6px;color:#15804a;font-size:10px}.connector-success svg{width:16px}.transfer-stage-backdrop{position:fixed;inset:0;z-index:90;background:#081217}.transfer-stage-modal{width:auto;height:100vh;display:grid;grid-template-rows:62px minmax(0,1fr) 58px;color:#d9e8ee;background:#0d181e}.transfer-stage-header,.transfer-stage-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 22px;border-color:#2d4049;background:#101e25}.transfer-stage-header{border-bottom:1px solid #2d4049}.transfer-stage-footer{border-top:1px solid #2d4049}.transfer-stage-header>div,.transfer-stage-header>div:first-child>div,.transfer-stage-footer{display:flex;align-items:center}.transfer-stage-header>div{gap:9px}.transfer-stage-header>div:first-child>span{width:38px;height:38px;display:grid;place-items:center;border-radius:6px;color:#fff;background:#129bc7}.transfer-stage-header strong,.transfer-stage-header small{display:block}.transfer-stage-header strong{font-size:14px}.transfer-stage-header small{margin-top:3px;color:#9bb0b9;font-size:9px}.transfer-stage-header small i{margin-left:5px;background:#20b465}.transfer-stage-header button{width:36px;height:36px;display:grid;place-items:center;padding:0;border:1px solid #3a505a;border-radius:5px;color:#bed0d7;background:#14252d}.transfer-stage-header button svg{width:18px}.transfer-stage-content{min-height:0;padding:16px 20px;overflow:auto}.transfer-stage-content .unified-live-box{width:100%;height:100%;min-height:620px;grid-template-rows:minmax(430px,1fr) 170px;border-color:#344952;background:#132129;box-shadow:none}.transfer-stage-content .live-section{min-height:430px;background:#132129}.transfer-stage-content .live-section>h2{color:#e0edf2;font-size:18px}.transfer-stage-content .qr-live-content{grid-template-columns:minmax(620px,1.7fr) minmax(280px,.7fr)}.transfer-stage-content .qr-matrix{border-color:#3d525c;background:#f5f7f8}.transfer-stage-content .real-qr-grid{gap:12px;padding:12px}.transfer-stage-content .transfer-telemetry{min-height:170px;padding:15px 18px;border-color:#344952;background:#101e25}.transfer-stage-content .transfer-telemetry>header strong,.transfer-stage-content .rate-metrics article strong{color:#dceaf0}.transfer-stage-content .transfer-telemetry>header small,.transfer-stage-content .rate-metrics article span,.transfer-stage-content .chart-legend{color:#9eb1ba}.transfer-stage-content .rate-metrics article{border-color:#344952;background:#172831}.transfer-stage-content .rate-chart svg{height:94px}.transfer-stage-content .rate-chart{min-height:94px}.transfer-stage-content .rate-chart line{stroke:#31454f}.transfer-stage-footer{color:#9fb2ba;font-size:10px}.transfer-stage-footer .stop-action{width:auto;height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 18px;border:1px solid #8b3e49;border-radius:5px;color:#ffdfe2;background:#57232c}.transfer-stage-footer .pause-action{width:auto;height:38px;display:inline-flex;align-items:center;gap:7px;margin-right:auto;padding:0 18px;border:1px solid #a88735;border-radius:5px;color:#ffe8a6;background:#55431d}.transfer-stage-modal.is-paused .transfer-stage-header small i{background:#e2ab35}.qr-receiver-live-content{min-height:0;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,.55fr);gap:14px;padding:12px}.qr-camera-shell.expanded{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 32px}.qr-camera-shell.expanded .qr-camera-preview{min-height:310px;aspect-ratio:auto;border-color:#3d525c;border-radius:5px}.receiver-live-badge{display:inline-flex;align-items:center;gap:6px;margin-right:10px;color:#a9bdc6;font-size:10px;font-weight:500}.receiver-live-badge i{width:7px;height:7px;background:#e2ab35}.receiver-live-badge.state-scanning i{background:#2dd277}.receiver-live-summary{min-height:0;display:flex;flex-direction:column;gap:9px;padding:14px;border:1px solid #3a505a;border-radius:5px;color:#cbd9df;background:#172831}.receiver-live-summary>div:not(.receiver-live-progress){display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:9px;border-bottom:1px solid #30454e}.receiver-live-summary span,.receiver-live-summary small{color:#9eb1ba;font-size:10px}.receiver-live-summary strong{color:#e6f1f5;font-size:15px}.receiver-live-progress{height:7px;overflow:hidden;border-radius:3px;background:#2b3b43}.receiver-live-progress i{height:100%;display:block;background:#20b465}.receiver-live-summary em{color:#ffb4ba;font-size:10px;font-style:normal}html[data-theme=dark] .source-section-title h2,html[data-theme=dark] .sidebar-panel-title strong,html[data-theme=dark] .pane-title h3,html[data-theme=dark] .transfer-telemetry>header strong,html[data-theme=dark] .rate-metrics article strong,html[data-theme=dark] .managed-source-main strong,html[data-theme=dark] .empty-sources strong,html[data-theme=dark] .connector-flags strong{color:#dceaf0}html[data-theme=dark] .source-section-title span,html[data-theme=dark] .sidebar-panel-title>span,html[data-theme=dark] .pane-title span,html[data-theme=dark] .queue-policy-control>span,html[data-theme=dark] .transfer-telemetry>header small,html[data-theme=dark] .rate-metrics article span,html[data-theme=dark] .chart-legend,html[data-theme=dark] .managed-source-main code,html[data-theme=dark] .managed-source-main>small,html[data-theme=dark] .connector-flags small{color:#9eb1ba}html[data-theme=dark] .receiver-link-preview,html[data-theme=dark] .managed-source-item,html[data-theme=dark] .manual-file-selection,html[data-theme=dark] .manual-priority select,html[data-theme=dark] .manual-test-profiles button,html[data-theme=dark] .manual-preflight>div,html[data-theme=dark] .rate-metrics article,html[data-theme=dark] .connector-kind-toggle button,html[data-theme=dark] .source-editor-pane input,html[data-theme=dark] .source-editor-pane select{color:#d0dde3;border-color:#344952;background:#14242c}html[data-theme=dark] .source-sidebar-list,html[data-theme=dark] .source-sidebar-item{border-color:#31444d}html[data-theme=dark] .source-sidebar-item strong,html[data-theme=dark] .manual-file-selection strong{color:#d7e5eb}html[data-theme=dark] .manual-file-picker,html[data-theme=dark] .manual-queue-button{color:#9bd7eb;border-color:#426574;background:#142832}html[data-theme=dark] .manual-file-selection span,html[data-theme=dark] .manual-priority{color:#a3b7c0}html[data-theme=dark] .manual-file-picker.is-dragging,html[data-theme=dark] .manual-test-profiles button.active{color:#fff;border-color:#35b6df;background:#0879a2}html[data-theme=dark] .manual-preflight{border-color:#31505f;background:#31505f}html[data-theme=dark] .manual-test-profiles>span,html[data-theme=dark] .manual-duplicate-option,html[data-theme=dark] .manual-preflight span{color:#a9bdc7}html[data-theme=dark] .manual-preflight b,html[data-theme=dark] .manual-capacity strong{color:#d6e6ed}html[data-theme=dark] .transfer-report-dialog,html[data-theme=dark] .report-details,html[data-theme=dark] .report-table td{color:#d6e6ed;background:#10232c}html[data-theme=dark] .report-history,html[data-theme=dark] .report-table th{background:#152c37}html[data-theme=dark] .report-history,html[data-theme=dark] .report-history button,html[data-theme=dark] .report-summary,html[data-theme=dark] .report-summary>div,html[data-theme=dark] .report-table-wrap,html[data-theme=dark] .report-table th,html[data-theme=dark] .report-table td{border-color:#31505f}html[data-theme=dark] .report-history button.active{background:#17465a}html[data-theme=dark] .report-history strong,html[data-theme=dark] .report-summary strong,html[data-theme=dark] .report-table th,html[data-theme=dark] .report-table td strong,html[data-theme=dark] .report-empty strong{color:#e3eef3}html[data-theme=dark] .report-history span,html[data-theme=dark] .report-summary span,html[data-theme=dark] .report-footer>span,html[data-theme=dark] .report-table td,html[data-theme=dark] .report-table code,html[data-theme=dark] .report-empty{color:#a9bdc7}html[data-theme=dark] .report-errors{color:#ffbec4;background:#44232b}html[data-theme=dark] .receiver-link-preview strong,html[data-theme=dark] .receiver-link-preview small,html[data-theme=dark] .source-editor-pane>label,html[data-theme=dark] .source-editor-grid>label{color:#c7d7de}html[data-theme=dark] .unified-live-box,html[data-theme=dark] .transfer-telemetry,html[data-theme=dark] .source-manager-dialog{border-color:#344952;background:#101d24}html[data-theme=dark] .managed-sources-pane{border-color:#344952}html[data-theme=dark] .connector-kind-toggle button.active{color:#72d3ef;border-color:#249fc6;background:#173844}html[data-theme=dark] .connector-flags>label{border-color:#344952;background:#14242c}html[data-theme=dark] .source-route-meta span,html[data-theme=dark] .source-route-meta b{color:#b6cad3;background:#223640}html[data-theme=dark] .managed-source-actions button{color:#b9cbd3;border-color:#40545e;background:#172831}@media(max-width:1200px){.unified-live-box{min-height:430px}.source-manager-body{grid-template-columns:1fr;overflow-y:auto}.managed-sources-pane{min-height:320px;border-right:0;border-bottom:1px solid #d6e0e5}.managed-source-list{max-height:260px}.source-editor-pane{overflow:visible}}@media(max-width:720px){.source-section-title{align-items:stretch;flex-direction:column}.source-section-title .outline-button{width:100%;justify-content:center}.queue-policy-control{width:100%;align-items:stretch!important}.queue-policy-control .select-control{min-width:0}.telemetry-content,.rate-metrics,.source-editor-grid,.connector-flags{grid-template-columns:1fr}.rate-chart{min-height:88px}.source-manager-dialog{width:calc(100% - 16px);height:calc(100vh - 16px)}.managed-sources-pane,.source-editor-pane{padding:12px}.managed-source-item{grid-template-columns:38px minmax(0,1fr)}.managed-source-actions{grid-column:1 / -1;flex-direction:row;justify-content:flex-end}.transfer-stage-modal{grid-template-rows:56px minmax(0,1fr) 54px}.transfer-stage-header,.transfer-stage-footer{padding:0 10px}.transfer-stage-content{padding:8px}.transfer-stage-content .unified-live-box{height:auto;min-height:820px;grid-template-rows:minmax(500px,auto) auto}.transfer-stage-content .qr-live-content{grid-template-columns:1fr}.transfer-stage-content .qr-matrix{min-height:420px}.transfer-stage-footer>span{max-width:45vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}html[data-theme=dark] :is(.settings-nav button,.settings-form-grid label,.number-field>span,.reset-settings){color:#aebfc7}html[data-theme=dark] .settings-nav button.active{color:#fff;background:#1788b3}html[data-theme=dark] .settings-switch i{background:#53656e}html[data-theme=dark] .settings-switch input:checked+i{background:#28a7cf}html[data-theme=dark] :is(.auth-page,.auth-form,.identity-dialog,.dialog-body,.create-user-form){color:#d9e5ea;background:#17242b}html[data-theme=dark] :is(.auth-form>label,.password-form label,.create-user-fields label){color:#b9cad2}html[data-theme=dark] :is(.auth-form header h2,.password-form h3,.session-section h3,.users-heading h3,.create-user-form h3,.form-section-title h3){color:#dceaf0}html[data-theme=dark] :is(.auth-form header>span:not(.auth-mobile-mark),.auth-form footer,.form-section-title p,.users-heading span,.create-user-form>p){color:#9eb1ba}html[data-theme=dark] :is(.auth-input,.password-form input,.create-user-fields input,.create-user-fields select,.users-table select,.reset-password-row input){color:#e1ebef;border-color:#40515a;background:#101b21}html[data-theme=dark] input:-webkit-autofill,html[data-theme=dark] input:-webkit-autofill:hover,html[data-theme=dark] input:-webkit-autofill:focus{-webkit-text-fill-color:#e1ebef;box-shadow:0 0 0 1000px #101b21 inset;caret-color:#e1ebef}html[data-theme=dark] .users-table th{color:#aebfc7;background:#101b21}html[data-theme=dark] .users-table td{color:#d1dee4;background:#17242b}html[data-theme=dark] .users-table tbody tr:hover td{background:#1d2d35}html[data-theme=dark] .status-toggle{color:#ff9da3;border-color:#87474e;background:#3b2025}html[data-theme=dark] .status-toggle.active{color:#8de5ac;border-color:#376e50;background:#173728}html[data-theme=dark] .reset-password-row{color:#d1dee4;border-color:#40515a;background:#131f25}html[data-theme=dark] .account-menu>button{color:#c9d8df}html[data-theme=dark] .account-menu .logout-action{color:#ff8c93}html[data-theme=dark] .text-button{color:#aebfc7}html[data-theme=dark] :focus-visible{outline-color:#62c9e8}.center-panel,.mode-infrared .center-panel,.mode-laser .center-panel{grid-template-rows:minmax(245px,.9fr) minmax(245px,1.1fr);overflow-x:hidden;overflow-y:auto}.route-cell,.data-cell{min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px}.route-cell b,.route-cell small,.data-cell b,.data-cell small{max-width:100%;overflow:hidden;font-size:9px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.route-cell small,.data-cell small{color:#71828b;font-size:8px}.queue-table th:nth-child(1){width:6%}.queue-table th:nth-child(2){width:13%}.queue-table th:nth-child(3){width:27%}.queue-table th:nth-child(4){width:11%}.queue-table th:nth-child(5){width:14%}.queue-table th:nth-child(6){width:18%}.queue-table th:nth-child(7){width:11%}.queue-table{width:100%;table-layout:fixed}.queue-table .queue-actions{grid-template-columns:repeat(4,20px);gap:2px}.queue-table .queue-actions button{width:20px;height:20px}.queue-table .queue-actions svg{width:11px;height:11px}.queue-section .table-scroll{overflow-x:hidden}.unified-live-box{grid-template-rows:minmax(116px,1fr) 96px}.unified-live-box>.live-section{min-height:0}.unified-live-box>.transfer-telemetry{min-height:96px;padding:7px 10px}.unified-live-box>.transfer-telemetry>header{margin-bottom:4px}.unified-live-box>.transfer-telemetry .rate-metrics article{padding:4px 7px}.unified-live-box>.transfer-telemetry .rate-metrics article strong{margin-top:2px;font-size:10px}.unified-live-box>.transfer-telemetry .rate-chart,.unified-live-box>.transfer-telemetry .rate-chart svg{min-height:50px;height:50px}.transfer-stage-content .unified-live-box{min-height:0;grid-template-rows:minmax(380px,1fr) 150px}.transfer-stage-content .unified-live-box>.live-section{min-height:380px}.transfer-stage-content .unified-live-box>.transfer-telemetry{min-height:150px;padding:15px 18px}.transfer-stage-content .unified-live-box>.transfer-telemetry>header{margin-bottom:8px}.transfer-stage-content .unified-live-box>.transfer-telemetry .rate-metrics article{padding:10px 12px}.transfer-stage-content .unified-live-box>.transfer-telemetry .rate-metrics article strong{margin-top:6px;font-size:16px}.transfer-stage-content .unified-live-box>.transfer-telemetry .rate-chart,.transfer-stage-content .unified-live-box>.transfer-telemetry .rate-chart svg{min-height:78px;height:78px}.transfer-stage-content :is(.metric-box,.power-box,.laser-counter,.packet-summary){color:#cbd9df;border-color:#3a505a;background:#172831}.transfer-stage-content :is(.metric-box strong,.power-box>strong,.laser-counter strong,.packet-summary b){color:#dceaf0}.transfer-stage-content :is(.metric-box span,.power-box span,.power-box small,.laser-counter span,.packet-summary span){color:#9eb1ba}.transfer-stage-content .pulse-wave{border-color:#3a505a;background-color:#112129}.transfer-stage-content .packet-summary>div{background:#2b3b43}html[data-theme=dark] .route-cell small,html[data-theme=dark] .data-cell small{color:#91a6af}@media(max-width:1200px){.center-panel{grid-template-rows:none;overflow:visible}.unified-live-box{grid-template-rows:minmax(260px,auto) auto}.unified-live-box>.transfer-telemetry{min-height:128px}}@media(max-width:720px){.queue-section .table-scroll{overflow-x:auto}.queue-table{min-width:620px}.transfer-stage-content .unified-live-box{min-height:820px}.qr-receiver-live-content{grid-template-columns:1fr}.qr-camera-shell.expanded .qr-camera-preview{min-height:430px}.transfer-stage-footer>span{display:none}.transfer-stage-footer .pause-action{margin-right:0}.unified-live-box>.transfer-telemetry .rate-chart,.unified-live-box>.transfer-telemetry .rate-chart svg{min-height:82px;height:82px}.transfer-report-dialog{width:calc(100vw - 16px);height:calc(100vh - 16px)}.transfer-report-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.report-history{display:flex;gap:5px;overflow-x:auto;padding:7px;border-left:0;border-bottom:1px solid #dce5ea}.report-history button{min-width:170px;border:1px solid #dce5ea;border-radius:5px}.report-details{padding:9px}.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.report-summary>div:nth-child(2){border-left:0}.report-summary>div:nth-child(-n+2){border-bottom:1px solid #e5ecef}.report-table{min-width:680px}.report-footer{align-items:stretch;flex-direction:column}.report-footer button{justify-content:center}}:root{--app-bg: #eef2f4;--chrome: #f8fafb;--panel: #ffffff;--panel-muted: #f4f7f8;--ink: #152832;--ink-soft: #63747d;--rail: #0b161d;--rail-hover: #14242d;--rail-active: #17303b;--accent: #0789c7;--accent-soft: #e6f4fa;--success: #18a05e;--warning: #e99517;--danger: #e4414d;--console-border: #d8e0e4}.app-shell,.mode-infrared,.mode-laser{height:100vh;min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) 182px;grid-template-rows:68px minmax(0,1fr) 62px 28px;grid-template-areas:"topbar rail" "workspace rail" "actions rail" "status rail";color:var(--ink);background:var(--app-bg);direction:ltr;overflow:hidden}.navigation-rail{grid-area:rail;min-width:0;display:grid;grid-template-rows:92px minmax(0,1fr) 62px;color:#d7e2e7;border-left:1px solid #24343c;background:var(--rail);direction:rtl}.rail-brand{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:30px 18px;align-content:center;column-gap:9px;padding:0 18px;border-bottom:1px solid #203038;direction:ltr}.rail-brand svg{grid-row:1 / 3;align-self:center;width:29px;height:29px;color:#36c777}.rail-brand strong{align-self:end;color:#f1f7f9;font-size:22px;line-height:1}.rail-brand small{color:#718791;font-size:9px;text-transform:uppercase}.rail-items{display:flex;flex-direction:column;gap:4px;padding:12px 9px;overflow-y:auto}.rail-items button{position:relative;min-height:48px;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;padding:0 13px;border:0;border-radius:5px;color:#aebfc7;background:transparent;cursor:pointer;text-align:right;font-size:12px;font-weight:500}.rail-items button:before{content:"";position:absolute;inset-block:8px;right:-9px;width:3px;border-radius:0 2px 2px 0;background:transparent}.rail-items button:hover{color:#edf5f7;background:var(--rail-hover)}.rail-items button.active{color:#fff;background:var(--rail-active)}.rail-items button.active:before{background:#1aaee8}.rail-items svg{width:20px;height:20px;justify-self:center}.rail-version{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 15px;border-top:1px solid #203038;color:#93a7b0;font-size:9px}.rail-version i{width:7px;height:7px;border-radius:50%;background:#28bd6c}.rail-version small{color:#607680;direction:ltr}.topbar{grid-area:topbar;position:relative;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 18px;border-bottom:1px solid var(--console-border);background:var(--chrome);direction:rtl}.window-buttons,.brand{display:none}.page-heading{min-width:0}.page-heading>div{display:flex;align-items:center;gap:10px}.page-heading h1{margin:0;color:var(--ink);font-size:19px;font-weight:700;letter-spacing:0}.page-heading>div>span{display:inline-flex;align-items:center;gap:5px;color:var(--success);font-size:10px;font-weight:600}.page-heading>div>span.degraded{color:var(--warning)}.page-heading>div>span i{width:7px;height:7px;border-radius:50%;background:currentColor}.page-heading p{max-width:540px;display:flex;align-items:center;gap:6px;margin:4px 0 0;overflow:hidden;color:var(--ink-soft);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.page-heading p b{color:#465c67;font-family:ui-monospace,Consolas,monospace;font-weight:500}.page-heading p em{color:var(--success);font-style:normal}.top-actions{min-width:0;display:flex;align-items:center;gap:7px;direction:ltr}.connection-chip{height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid var(--console-border);border-radius:5px;color:#47606c;background:var(--panel);font-size:10px;direction:rtl}.connection-chip svg{width:15px;color:var(--success)}.connection-chip i{width:6px;height:6px;border-radius:50%;background:var(--success)}.top-actions>button,.top-actions>.account-button{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0;border:1px solid var(--console-border);border-radius:5px;color:#445a65;background:var(--panel)}.top-actions>button svg{width:17px;height:17px}.top-actions>.account-button{width:auto;max-width:180px;padding:0 10px;direction:rtl}.account-button span{max-width:104px;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.account-button svg:last-child{width:13px}.notification-button{position:relative}.notification-button i{position:absolute;top:5px;right:5px;width:6px;height:6px;border:1px solid var(--panel);border-radius:50%;background:var(--danger)}.account-menu{top:58px;left:18px;right:auto}.workspace,.mode-infrared .workspace,.mode-laser .workspace{grid-area:workspace;min-width:0;min-height:0;display:grid;grid-template-areas:"center context";grid-template-columns:minmax(0,1fr) 300px;gap:10px;padding:10px;background:var(--app-bg);direction:ltr;overflow:hidden}.context-sidebar{grid-area:context;min-width:0;min-height:0;display:flex;flex-direction:column;gap:9px;padding-left:2px;overflow-x:hidden;overflow-y:auto;direction:rtl;scrollbar-width:thin}.receiver-panel,.mode-infrared .receiver-panel,.mode-laser .receiver-panel{grid-area:auto;flex:0 0 auto;min-height:0;padding:10px;overflow:visible}.receiver-panel.role-receiver{overflow:visible}.controls-panel{grid-area:auto;flex:0 0 auto;min-height:0;overflow:visible;padding:0}.surface,.queue-section,.live-section,.source-section{border-color:var(--console-border);border-radius:6px;background:var(--panel);box-shadow:none}.section-title{min-height:28px;margin-bottom:8px;padding:0 2px 7px;color:var(--ink);border-color:#e8edef;font-size:13px}.section-title svg{width:17px;height:17px;color:var(--accent)}.center-panel,.mode-infrared .center-panel,.mode-laser .center-panel{grid-area:center;min-width:0;min-height:0;display:grid;grid-template-rows:104px minmax(230px,1.25fr) minmax(170px,.75fr);gap:8px;overflow:hidden;direction:rtl}.operation-overview{min-width:0;min-height:0;display:grid;grid-template-rows:64px 32px;gap:8px}.operation-kpis{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.operation-kpis article{position:relative;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:22px 26px;align-items:center;padding:7px 10px;overflow:hidden;border:1px solid var(--console-border);border-radius:6px;background:var(--panel)}.operation-kpis article>span{grid-column:1 / 3;display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:9px}.operation-kpis article>span svg{width:14px;height:14px;color:var(--accent)}.operation-kpis article strong{min-width:0;overflow:hidden;color:var(--ink);font-size:16px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.operation-kpis article small{color:var(--success);font-size:8px;font-weight:600}.kpi-trend{height:22px;display:flex;align-items:end;gap:2px;direction:ltr}.kpi-trend i{width:3px;border-radius:1px 1px 0 0;background:#169ed8}.kpi-trend i:nth-child(1){height:8px}.kpi-trend i:nth-child(2){height:15px}.kpi-trend i:nth-child(3){height:11px}.kpi-trend i:nth-child(4){height:19px}.kpi-trend i:nth-child(5){height:14px}.kpi-trend.received i{background:#27b66d}.transport-switcher{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;padding:2px;border:1px solid var(--console-border);border-radius:6px;background:var(--panel)}.transport-switcher button{min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-left:1px solid var(--console-border);color:var(--ink-soft);background:transparent;cursor:pointer;font-size:10px}.transport-switcher button:last-child{border-left:0}.transport-switcher button.active{color:#087fb6;background:var(--accent-soft)}.transport-switcher svg{width:15px;height:15px}.unified-live-box{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(235px,29%);grid-template-rows:minmax(0,1fr);gap:8px}.unified-live-box>.live-section,.unified-live-box>.transfer-telemetry{min-height:0;height:auto}.live-section{padding:8px 10px}.live-section>h2{min-height:27px;margin:0;padding:0 2px 6px;color:var(--ink);border-bottom:1px solid #e9eef0;font-size:12px}.qr-live-content{grid-template-columns:minmax(0,1fr) minmax(145px,27%);gap:8px;padding-top:7px}.packet-summary{padding:7px 8px;border-color:var(--console-border);border-radius:5px;background:var(--panel-muted)}.unified-live-box>.transfer-telemetry{padding:8px;border:1px solid var(--console-border);border-radius:6px;background:var(--panel)}.unified-live-box>.transfer-telemetry .telemetry-content{grid-template-columns:1fr;grid-template-rows:auto minmax(70px,1fr)}.unified-live-box>.transfer-telemetry .rate-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.unified-live-box>.transfer-telemetry .rate-metrics article{min-width:0;padding:5px}.unified-live-box>.transfer-telemetry .rate-metrics article span{font-size:7px}.unified-live-box>.transfer-telemetry .rate-metrics article strong{margin-top:2px;overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.unified-live-box>.transfer-telemetry .rate-chart,.unified-live-box>.transfer-telemetry .rate-chart svg{min-height:72px;height:100%}.queue-section{grid-template-rows:38px minmax(0,1fr) 26px}.queue-title{min-height:38px;padding:4px 9px}.queue-title h2{margin:0;color:var(--ink);font-size:12px}.queue-policy-control>span{color:var(--ink-soft);font-size:8px}.queue-policy-control .select-control{min-width:132px}.queue-policy-control .select-control select{height:28px;font-size:9px}.queue-table th,.queue-table td{height:31px;padding:3px 6px;border-color:#e2e8eb;color:#334a55;font-size:9px}.queue-table th{height:28px;color:#52646d;background:var(--panel-muted);font-size:8px}.status-badge{min-width:78px;height:22px;font-size:8px}.status-badge svg{width:12px}.queue-footer{min-height:26px;padding:0 9px;font-size:8px}.route-cell b,.route-cell small,.data-cell b,.data-cell small{font-size:8px}.queue-table .queue-actions{grid-template-columns:repeat(4,19px)}.queue-table .queue-actions button{width:19px;height:19px;border-radius:3px}.role-panel{padding:9px}.role-toggle{border-radius:5px}.role-toggle button{min-height:36px;font-size:10px}.manual-transfer-panel,.source-sidebar-panel,.qr-settings,.hardware-settings,.server-status{border-radius:6px}.source-sidebar-list{gap:5px}.source-sidebar-item{min-height:45px}.action-bar{grid-area:actions;min-width:0;justify-content:flex-start;gap:8px;padding:8px 12px;border-color:var(--console-border);background:var(--chrome);overflow-x:auto}.action-bar button{width:auto;min-width:116px;height:40px;gap:8px;padding:0 15px;border-color:#bccad0;border-radius:5px;color:#314b57;background:var(--panel);font-size:11px}.action-bar button svg{width:17px;height:17px}.action-bar .primary-action{min-width:156px;color:#fff;border-color:#087ead;background:#0789c7}.action-bar .primary-action:hover:not(:disabled){background:#087bad}.action-bar .pause-action{color:#9a6710;border-color:#d8bc7f;background:#fffaf0}.action-bar .stop-action{color:var(--danger);border-color:#e8a7ad;background:#fff}.status-bar,.mode-infrared .status-bar,.mode-laser .status-bar{grid-area:status;display:flex;min-width:0;padding:0 13px;border-color:var(--console-border);background:var(--chrome)}html[data-theme=dark]{--app-bg: #0a1318;--chrome: #0d181f;--panel: #111f26;--panel-muted: #0d1920;--ink: #e0e9ed;--ink-soft: #8ca0aa;--rail: #071118;--rail-hover: #102029;--rail-active: #122b36;--accent: #19a8e6;--accent-soft: #113543;--success: #43c77b;--warning: #f0a32b;--danger: #ff626b;--console-border: #263941}html[data-theme=dark] :is(.app-shell,.workspace,.topbar,.action-bar,.status-bar){color:var(--ink);border-color:var(--console-border);background:var(--app-bg)}html[data-theme=dark] :is(.topbar,.action-bar,.status-bar){background:var(--chrome)}html[data-theme=dark] :is(.surface,.queue-section,.live-section,.operation-kpis article,.transport-switcher,.unified-live-box>.transfer-telemetry,.connection-chip,.top-actions>button,.top-actions>.account-button){color:var(--ink);border-color:var(--console-border);background:var(--panel)}html[data-theme=dark] :is(.page-heading h1,.section-title,.queue-title h2,.live-section>h2,.operation-kpis article strong){color:var(--ink)}html[data-theme=dark] :is(.page-heading p,.operation-kpis article>span,.queue-policy-control>span,.connection-chip){color:var(--ink-soft)}html[data-theme=dark] :is(.section-title,.live-section>h2,.queue-table td,.queue-table th){border-color:var(--console-border)}html[data-theme=dark] .queue-table th,html[data-theme=dark] .packet-summary{color:#a9bac2;border-color:var(--console-border);background:var(--panel-muted)}html[data-theme=dark] .queue-table td{color:#cbd8de;background:var(--panel)}html[data-theme=dark] .transport-switcher button{color:#8fa3ad;border-color:var(--console-border)}html[data-theme=dark] .transport-switcher button.active{color:#71d2f5;background:var(--accent-soft)}html[data-theme=dark] .action-bar .primary-action{color:#fff;border-color:#169ed8;background:#087eaf}html[data-theme=dark] .action-bar .pause-action{color:#f1c874;border-color:#6d5931;background:#2b2518}html[data-theme=dark] .action-bar .stop-action{color:#ff858c;border-color:#683b40;background:#26181b}@media(max-width:1180px){.app-shell,.mode-infrared,.mode-laser{grid-template-columns:minmax(0,1fr) 76px}.navigation-rail{grid-template-rows:76px minmax(0,1fr) 48px}.rail-brand{display:grid;grid-template-columns:1fr;grid-template-rows:34px 18px;justify-items:center;padding:10px 4px}.rail-brand svg,.rail-brand strong{grid-column:1;grid-row:1}.rail-brand svg{opacity:.22}.rail-brand strong{align-self:center;font-size:16px}.rail-brand small,.rail-items button span,.rail-version span,.rail-version small{display:none}.rail-items button{grid-template-columns:1fr;justify-items:center;padding:0}.rail-items button:before{right:-9px}.rail-version{grid-template-columns:1fr;justify-items:center;padding:0}.workspace,.mode-infrared .workspace,.mode-laser .workspace{grid-template-columns:minmax(0,1fr) 278px}.operation-kpis article{padding-inline:7px}.operation-kpis article>span{font-size:8px}.unified-live-box{grid-template-columns:minmax(0,1fr) 225px}}@media(max-width:820px){.app-shell,.mode-infrared,.mode-laser{height:auto;min-height:100vh;grid-template-columns:minmax(0,1fr);grid-template-rows:64px auto auto 28px 62px;grid-template-areas:"topbar" "workspace" "actions" "status" "rail";overflow:visible}.navigation-rail{position:sticky;bottom:0;z-index:40;min-width:0;display:block;border-top:1px solid #263941;border-left:0}.rail-brand,.rail-version{display:none}.rail-items{height:62px;flex-direction:row;gap:2px;padding:5px 6px;overflow-x:auto;overflow-y:hidden}.rail-items button{min-width:74px;min-height:50px;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:0 6px;text-align:center;font-size:8px}.rail-items button span{display:block}.rail-items button:before{inset:auto 16px -5px;width:auto;height:3px}.topbar{padding:0 10px}.page-heading h1{font-size:16px}.page-heading p,.connection-chip,.account-button span,.account-button svg:last-child{display:none}.top-actions>.account-button{width:36px;padding:0}.workspace,.mode-infrared .workspace,.mode-laser .workspace{min-height:0;grid-template-areas:"center" "context";grid-template-columns:minmax(0,1fr);gap:9px;overflow:visible}.center-panel,.mode-infrared .center-panel,.mode-laser .center-panel{grid-template-rows:auto auto minmax(270px,auto);overflow:visible}.operation-overview{grid-template-rows:auto 38px}.operation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.operation-kpis article{min-height:64px}.unified-live-box{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(360px,auto) minmax(150px,auto)}.context-sidebar{max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;overflow:visible}.action-bar{position:static;justify-content:flex-start}.action-bar button{min-width:104px}}@media(max-width:560px){.operation-kpis{grid-template-columns:minmax(0,1fr)}.transport-switcher button span{font-size:8px}.qr-live-content,.context-sidebar{grid-template-columns:minmax(0,1fr)}.queue-section .table-scroll{overflow-x:auto}.queue-table{min-width:620px}}.app-shell,.mode-infrared,.mode-laser{width:100%;max-width:100%;height:100vh;grid-template-columns:minmax(0,1fr) 200px;grid-template-rows:68px minmax(0,1fr) 78px;grid-template-areas:"topbar rail" "workspace rail" "command rail";background:var(--app-bg);overflow:hidden}.navigation-rail{grid-area:rail;grid-template-rows:68px minmax(0,1fr) 54px;border-left:1px solid #22343d}.rail-brand{grid-template-columns:minmax(0,1fr);justify-items:center;padding:0 18px}.rail-brand svg{display:none}.rail-brand strong{grid-row:1;align-self:end;color:#20b8ef;font-size:25px;font-weight:700}.rail-brand small{grid-row:2;align-self:start;font-size:8px}.rail-items{gap:12px;padding:28px 7px}.rail-items button{min-height:58px;grid-template-columns:34px minmax(0,1fr);gap:13px;padding:0 23px;font-size:14px}.rail-items button:before{inset-block:0;right:-7px;width:4px}.rail-items svg{width:25px;height:25px}.rail-version{grid-template-columns:auto 1fr auto;padding:0 22px}.topbar{grid-area:topbar;flex-direction:row;padding:0 18px;border-bottom:1px solid var(--console-border);background:var(--chrome)}.top-actions{direction:rtl;gap:10px}.top-actions>button,.top-actions>.account-button,.connection-chip{height:42px;border-radius:5px;border-color:var(--console-border)}.top-actions>button{width:48px}.top-actions>.account-button{width:184px;max-width:184px;justify-content:flex-start;padding:0 16px}.account-button span{max-width:112px;font-size:13px}.connection-chip{min-width:172px;justify-content:center;padding:0 16px;font-size:13px}.notification-button b{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;display:grid;place-items:center;padding:0 4px;border:2px solid var(--chrome);border-radius:10px;color:#fff;background:#ef3947;font-size:10px;line-height:1}.secure-session{height:42px;display:flex;align-items:center;gap:0;padding:0 10px;border:1px solid var(--console-border);border-radius:5px;color:var(--ink-soft);background:var(--panel);direction:rtl;font-size:12px}.secure-session>*{min-height:24px;display:inline-flex;align-items:center;gap:7px;padding:0 14px;border-left:1px solid var(--console-border)}.secure-session>*:first-child{border-left:0}.secure-session span:first-child strong{color:var(--success)}.secure-session span:last-of-type{color:var(--ink);font-weight:600}.secure-session svg{width:22px;height:22px;color:var(--success)}.secure-session i{width:7px;height:7px;border-radius:50%;background:var(--success)}.secure-session em{color:var(--success);font-style:normal}.account-menu{top:57px;right:18px;left:auto}.workspace,.mode-infrared .workspace,.mode-laser .workspace{grid-area:workspace;display:block;padding:0 16px 8px;background:var(--app-bg);overflow:hidden}.configuration-drawer{display:none}.transfer-tools-dialog{width:min(1040px,calc(100vw - 40px));max-height:min(86vh,820px);overflow:hidden}.transfer-tools-body{min-height:0;padding:14px;overflow:auto}.transfer-tools-body .controls-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;overflow:visible}.transfer-tools-body .manual-transfer-panel,.transfer-tools-body .source-sidebar-panel{grid-row:span 2}.center-panel,.mode-infrared .center-panel,.mode-laser .center-panel{width:100%;height:100%;display:grid;grid-template-rows:66px 74px minmax(310px,1fr) 222px;gap:9px;overflow:hidden}.workspace-heading{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:5px 4px 0;direction:rtl}.workspace-heading h1{margin:0;color:var(--ink);font-size:25px;line-height:1.35}.workspace-heading p{display:flex;align-items:center;gap:7px;margin:3px 0 0;color:var(--ink-soft);font-size:11px}.workspace-heading p span{display:inline-flex;align-items:center;gap:5px;color:var(--success);font-weight:600}.workspace-heading p span.degraded{color:var(--warning)}.workspace-heading p i{width:7px;height:7px;border-radius:50%;background:currentColor}.workspace-heading p b{font-family:ui-monospace,Consolas,monospace;font-weight:500}.operation-overview{display:block;min-height:0}.operation-kpis{height:74px;gap:9px}.operation-kpis article{grid-template-columns:minmax(0,1fr) 90px;grid-template-rows:28px 34px;padding:8px 16px;border-radius:5px}.operation-kpis article>span{font-size:12px}.operation-kpis article>span svg{width:17px;height:17px}.operation-kpis article strong{font-size:18px}.operation-kpis article small{font-size:11px}.kpi-trend{position:relative;height:30px;width:90px;display:block}.kpi-trend i{position:absolute;left:0;bottom:14px;width:22px;height:2px!important;transform-origin:left center;background:#149fe0}.kpi-trend i:nth-child(1){left:0;transform:rotate(-42deg)}.kpi-trend i:nth-child(2){left:16px;transform:rotate(34deg)}.kpi-trend i:nth-child(3){left:34px;transform:rotate(-36deg)}.kpi-trend i:nth-child(4){left:51px;transform:rotate(29deg)}.kpi-trend i:nth-child(5){left:69px;transform:rotate(-31deg)}.kpi-donut{position:relative;grid-column:2;grid-row:1 / 3;justify-self:center;width:48px;height:48px;border-radius:50%;background:conic-gradient(#efa31d 0 76%,#263942 76% 100%)}.kpi-donut:after{content:"";position:absolute;width:29px;height:29px;inset:9px;border-radius:50%;background:var(--panel)}.operation-kpis article:last-child>span{grid-column:1;grid-row:1}.operation-kpis article:last-child>strong{grid-column:1;grid-row:2}.operation-kpis article:last-child>small{position:absolute;right:16px;bottom:5px}.transfer-grid{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:9px;direction:ltr}.transfer-primary{min-width:0;min-height:0;display:grid;grid-template-rows:50px minmax(0,1fr);border:1px solid var(--console-border);border-radius:5px;background:var(--panel);direction:rtl;overflow:hidden}.transport-switcher{margin:10px 14px 0;padding:0;border-radius:4px;background:transparent}.transport-switcher button{font-size:12px}.transport-switcher button.active{border:1px solid var(--accent);color:var(--ink);background:#19a8e60a}.transfer-primary .unified-live-box{display:block;min-height:0}.transfer-primary .live-section{height:100%;display:grid;grid-template-rows:minmax(0,1fr) 49px;padding:0;border:0;border-radius:0;background:transparent}.transfer-primary .live-section>h2{display:none}.qr-live-content{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:18px;padding:0 18px 8px;direction:rtl}.qr-matrix{min-width:0;min-height:0;display:grid;grid-template-rows:28px minmax(0,1fr);padding:0;border:0;background:transparent}.qr-grid-title{display:flex;align-items:center;justify-content:center;color:var(--ink);font-size:12px;font-weight:500}.real-qr-grid{min-height:0;height:100%;gap:12px 17px;padding:0;border:0;background:transparent}.real-qr-tile{min-height:0;padding:5px 5px 18px;border:2px solid #dfe5e7;border-radius:5px;background:#fff}.real-qr-tile canvas{width:100%;height:100%;object-fit:fill}.real-qr-tile span{bottom:1px;color:#111b21;font-size:10px}.missing-packets-card{min-width:0;align-self:stretch;display:flex;flex-direction:column;align-items:center;padding:0 15px 13px;border:1px solid #b7c4ca;border-radius:5px;color:var(--ink);background:var(--panel-muted);direction:rtl}.missing-packets-card h3{width:100%;margin:0 0 18px;padding:11px 0 9px;border-bottom:1px solid var(--console-border);color:#f3a11a;font-size:15px;text-align:center}.missing-packets-card>div,.missing-packets-card>p{width:100%;margin:0 0 14px;text-align:center}.missing-packets-card span{display:block;margin-bottom:5px;color:var(--ink-soft);font-size:11px}.missing-packets-card strong{color:#ff930f;font-size:29px}.missing-packets-card p b{color:var(--ink);font-size:12px;font-weight:500}.missing-packets-card button{width:100%;min-height:42px;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:auto;border:1px solid #ff9b17;border-radius:5px;color:#fff;background:#e87910;font-family:inherit;font-size:12px;font-weight:600}.missing-packets-card button:disabled{opacity:.78}.missing-packets-card button svg{width:19px}.qr-progress-footer{min-width:0;display:grid;grid-template-columns:88px 245px 52px minmax(0,1fr);align-items:center;gap:12px;padding:0 18px;border-top:1px solid var(--console-border);color:var(--ink);font-size:11px;direction:rtl}.qr-progress-footer>div{height:8px;overflow:hidden;border-radius:4px;background:#25353d}.qr-progress-footer>div i{display:block;height:100%;background:#149bd5}.qr-progress-footer>strong{font-size:14px}.qr-progress-footer p{min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:14px;margin:0;overflow:hidden;color:var(--ink-soft);direction:ltr;white-space:nowrap}.qr-progress-footer p b{color:var(--ink)}.qr-dashboard-error{position:absolute}.receiver-panel,.mode-infrared .receiver-panel,.mode-laser .receiver-panel{min-width:0;height:100%;padding:12px 15px;overflow:hidden;direction:rtl}.receiver-panel .section-title{min-height:30px;margin:0;padding:0 0 10px;font-size:14px}.sender-receiver-overview{min-height:0;height:calc(100% - 30px);display:grid;grid-template-rows:218px minmax(0,1fr)}.sender-receiver-overview dl{min-height:0;margin:0}.sender-receiver-overview dl>div{min-height:51px;display:grid;grid-template-columns:1fr auto;align-items:center;padding:0 8px;border-bottom:1px solid var(--console-border)}.sender-receiver-overview dt{color:var(--ink-soft);font-size:13px}.sender-receiver-overview dd{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--ink);font-size:15px}.sender-receiver-overview dd>i{width:8px;height:8px;border-radius:50%;background:currentColor}.sender-receiver-overview dd svg{width:20px}.sender-receiver-overview .receiver-positive,.sender-receiver-overview .receiver-signal{color:var(--success)}.sender-receiver-overview .receiver-verifying{color:var(--warning)}.sender-receiver-overview .receiver-verifying b{order:-1;font-size:12px}.recent-received-files h3{margin:8px 0 6px;color:var(--ink);font-size:13px}.recent-received-files table{width:100%;border-collapse:separate;border-spacing:0 4px}.recent-received-files td{height:25px;padding:0 7px;color:var(--ink-soft);background:var(--panel-muted);font-size:9px;white-space:nowrap}.recent-received-files td:nth-child(3){max-width:128px;overflow:hidden;color:var(--ink);text-overflow:ellipsis}.recent-received-files td svg{width:14px;color:var(--ink)}.recent-received-files button{display:flex;align-items:center;gap:7px;padding:4px 2px;border:0;color:var(--ink);background:transparent;font-family:inherit;font-size:10px}.recent-received-files button svg{width:16px}.dashboard-lower-grid{min-width:0;min-height:0;display:grid;grid-template-columns:32% minmax(0,1fr);gap:9px;direction:ltr}.dashboard-lower-grid>*{min-width:0;min-height:0;direction:rtl}.dashboard-telemetry{height:100%;padding:10px;border:1px solid var(--console-border);border-radius:5px;background:var(--panel)}.dashboard-telemetry>header{min-height:24px}.dashboard-telemetry>header svg,.dashboard-telemetry>header>b{display:none}.dashboard-telemetry>header strong{color:var(--ink);font-size:13px}.dashboard-telemetry .telemetry-content{height:calc(100% - 24px);display:block}.dashboard-telemetry .rate-metrics{display:none}.dashboard-telemetry .rate-chart,.dashboard-telemetry .rate-chart svg{width:100%;height:100%;min-height:0}.dashboard-telemetry .chart-legend{top:-21px;bottom:auto;left:10px}.dashboard-lower-grid .queue-section{height:100%;grid-template-rows:34px minmax(0,1fr) 24px;overflow:hidden}.dashboard-lower-grid .queue-title{min-height:34px;padding:0 10px}.dashboard-lower-grid .queue-title h2{font-size:13px}.dashboard-lower-grid .queue-policy-control{display:none}.dashboard-lower-grid .queue-table th,.dashboard-lower-grid .queue-table td{height:30px;padding:2px 6px;font-size:10px}.dashboard-lower-grid .queue-table th{height:25px;font-size:10px}.dashboard-lower-grid .queue-footer{min-height:24px}.command-deck{grid-area:command;min-width:0;display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:16px;padding:0 17px;border-top:1px solid var(--console-border);background:var(--chrome);direction:ltr}.command-deck .status-bar{grid-area:auto;height:100%;padding:0;border:0;background:transparent}.command-deck .status-bar small{display:none}.command-deck .status-bar span{font-size:11px}.command-deck .action-bar{grid-area:auto;height:auto;gap:24px;padding:0;border:0;background:transparent;overflow:visible;direction:rtl}.command-deck .action-bar button{min-width:210px;height:44px;border-radius:5px;font-size:13px}.command-deck .action-bar .primary-action{min-width:210px}.command-deck .action-bar .pause-action,.command-deck .action-bar .stop-action{min-width:170px}html[data-theme=dark]{--app-bg: #071219;--chrome: #08141b;--panel: #0c1a22;--panel-muted: #13232c;--ink: #edf3f5;--ink-soft: #9aaab2;--rail: #061118;--rail-hover: #0c1b23;--rail-active: #102029;--accent: #149fe0;--accent-soft: #0c3344;--success: #45c65d;--warning: #f0a018;--danger: #ff4e58;--console-border: #263942}html[data-theme=dark] .operation-kpis article,html[data-theme=dark] .transfer-primary,html[data-theme=dark] .receiver-panel,html[data-theme=dark] .dashboard-telemetry,html[data-theme=dark] .dashboard-lower-grid .queue-section,html[data-theme=dark] .secure-session,html[data-theme=dark] .connection-chip,html[data-theme=dark] .top-actions>button,html[data-theme=dark] .top-actions>.account-button{border-color:var(--console-border);background:var(--panel)}html[data-theme=dark] .real-qr-tile{border-color:#e1e4e5;background:#fff}html[data-theme=dark] .missing-packets-card{border-color:#bac4c8;background:#09161d}@media(max-width:1360px){.app-shell,.mode-infrared,.mode-laser{grid-template-columns:minmax(0,1fr) 168px}.rail-items button{padding-inline:16px}.transfer-grid{grid-template-columns:minmax(0,1fr) 340px}.qr-live-content{grid-template-columns:minmax(0,1fr) 245px;gap:12px}.command-deck .action-bar{gap:8px}.command-deck .action-bar button,.command-deck .action-bar .primary-action,.command-deck .action-bar .pause-action,.command-deck .action-bar .stop-action{min-width:132px}}@media(max-width:1040px){.app-shell,.mode-infrared,.mode-laser{height:auto;min-height:100vh;grid-template-columns:minmax(0,1fr) 76px;grid-template-rows:64px auto auto;grid-template-areas:"topbar rail" "workspace rail" "command rail";overflow:visible}.rail-brand small,.rail-items button span,.rail-version span,.rail-version small{display:none}.rail-brand,.rail-items button{grid-template-columns:1fr;justify-items:center;padding-inline:0}.secure-session{display:none}.center-panel,.mode-infrared .center-panel,.mode-laser .center-panel{grid-template-rows:66px auto auto auto;overflow:visible}.operation-kpis{height:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.transfer-grid,.dashboard-lower-grid{grid-template-columns:minmax(0,1fr)}.transfer-primary{min-height:560px}.receiver-panel{min-height:390px}.dashboard-telemetry{min-height:240px}.dashboard-lower-grid .queue-section{min-height:250px}.command-deck{min-height:76px;grid-template-columns:1fr}.command-deck .status-bar{display:none}}@media(max-width:720px){.transfer-tools-dialog{width:calc(100vw - 18px)}.transfer-tools-body .controls-panel{grid-template-columns:minmax(0,1fr)}.app-shell,.mode-infrared,.mode-laser{grid-template-columns:minmax(0,1fr);grid-template-rows:60px auto auto 62px;grid-template-areas:"topbar" "workspace" "command" "rail"}.navigation-rail{position:sticky;bottom:0;display:block;border-top:1px solid var(--console-border);border-left:0}.rail-brand,.rail-version{display:none}.rail-items{height:62px;flex-direction:row;gap:2px;padding:5px}.rail-items button{min-width:74px;min-height:50px;display:flex;flex-direction:column;gap:2px;font-size:8px}.rail-items button span{display:block}.workspace{padding-inline:9px;overflow:visible}.top-actions .connection-chip,.top-actions .account-button span,.top-actions .account-button svg:last-child{display:none}.top-actions>.account-button{width:48px;padding:0;justify-content:center}.operation-kpis{grid-template-columns:minmax(0,1fr)}.qr-live-content{grid-template-columns:minmax(0,1fr);padding-inline:9px}.transfer-primary{min-height:920px}.qr-progress-footer{grid-template-columns:70px minmax(80px,1fr) 42px}.qr-progress-footer p{display:none}.command-deck{overflow-x:auto}.command-deck .action-bar{min-width:max-content}}
