.apk-workspace{color:#24334b;max-width:1440px;margin:auto;padding:0 32px 48px;font-size:14px}.workspace-header{border-bottom:1px solid #e2e8f0;height:80px}.workspace-header .brand{letter-spacing:-.5px;font-size:19px}.workspace-nav{align-items:center;gap:8px;padding:20px 0 26px;display:flex}.workspace-nav button{color:#66758b;background:0 0;border:1px solid #0000;padding:10px 20px}.workspace-nav button[aria-current=page]{color:#245ac5;background:#fff;border-color:#d5dfed;box-shadow:0 2px 4px #22334d08}.workspace-nav small{margin-left:7px;font-size:11px}.workspace-nav>span{color:#7c8b9d;margin-left:auto;font-size:12px}.apk-workspace h1{letter-spacing:-.7px;margin:0;font-size:25px}.apk-workspace h2,.apk-workspace h3{margin:0;font-size:17px}.apk-workspace p{line-height:1.6}.apk-workspace code,.install-dialog code{color:#748299;overflow-wrap:anywhere;white-space:normal;font-size:11px;display:block}.apk-workspace small{color:#77869a;line-height:1.5;display:block}.apk-workspace button:disabled,.install-dialog button:disabled{cursor:not-allowed}.apk-workspace input:not([type=checkbox]):not([type=radio]):not([type=file]),.apk-workspace select,.install-dialog input:not([type=checkbox]):not([type=radio]){color:#33465f;background:#fff;border:1px solid #d7e0ec;border-radius:8px;max-width:100%;padding:10px 12px}.section-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.section-head p{color:#77869a;margin:6px 0 0}.toolbar{align-items:center;gap:12px;margin:16px 0;display:flex}.toolbar input{flex:1;min-width:0}.toolbar>span{color:#748299;font-size:12px}.device-workspace{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:24px;display:grid}.device-sidebar{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px;position:sticky;top:16px}.device-sidebar .section-head{margin-bottom:10px}.device-sidebar .ghost{padding:7px 10px;font-size:11px}.device-sidebar>p{font-size:12px}.device-sidebar select{width:100%}.source-list{max-height:65vh;margin-top:16px;overflow:auto}.source-list article{border-top:1px solid #edf0f5;border-left:3px solid #0000;grid-template-columns:1fr auto;gap:10px;padding:14px 10px;display:grid}.source-list article.selected-source{background:#f3f7ff;border-left-color:#3573dc}.source-list article>div{grid-column:1/-1}.source-list b{font-size:13px}.source-list small{margin:4px 0;font-size:11px}.availability{color:#8793a5;align-self:center;font-size:11px}.availability.online{color:#278661}.availability.online:before{content:"";background:#36a474;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.device-content,.archive-workspace,.tasks-workspace{background:#fff;border:1px solid #e2e8f0;border-radius:14px;min-width:0;padding:24px}.device-content .inventory-panel{box-shadow:none;border:0;padding:0}.device-content .inventory-toolbar,.device-content .inventory-actions{flex-wrap:wrap}.package-list{gap:0;display:grid}.package-list>article{border-bottom:1px solid #edf1f6;align-items:center;gap:14px;min-width:0;padding:17px 4px;display:flex}.package-list>article>div:first-of-type{flex:1;min-width:0}.package-list b{overflow-wrap:anywhere;font-size:14px}.package-list code{margin:5px 0}.package-list small{margin-top:3px;font-size:11px}.package-list button{white-space:nowrap;font-size:12px}.package-icon{color:#4974bd;background:#edf3ff;border-radius:10px;flex:0 0 40px;place-items:center;height:40px;font-weight:700;display:grid}.package-actions{gap:8px;display:flex}.highlighted{background:#f0f6ff;border-radius:8px}.patch-action{background:#6952b8}.archive-title{align-items:center;gap:8px;display:flex}.patched-badge{color:#654da9;letter-spacing:.04em;text-transform:uppercase;background:#f2efff;border:1px solid #c9bdf4;padding:3px 7px!important;font-size:9px!important}.patch-field{color:#52647d;text-transform:uppercase;letter-spacing:.04em;gap:6px;margin:16px 0;font-size:11px;font-weight:700;display:grid}.patch-field input{width:100%}.patch-field small{text-transform:none;letter-spacing:0;font-weight:400}.patch-check{color:#52647d;align-items:center;gap:9px;margin:18px 0;font-size:13px;display:flex}.patch-check input{accent-color:#6952b8;width:16px;height:16px}.patch-info-dialog{width:min(780px,100vw - 32px)}.patch-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.patch-info-grid>div{background:#f9fbfd;border:1px solid #e1e7f0;border-radius:8px;min-width:0;padding:10px}.patch-info-grid dt{color:#7a879a;letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:700}.patch-info-grid dd{color:#34465f;overflow-wrap:anywhere;margin:4px 0 0;font-size:12px;line-height:1.45}.upload-box{background:#f8fafd;border:1px dashed #c9d6e7;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;padding:16px;display:flex}.upload-box p{color:#7a8799;margin:4px 0;font-size:12px}.upload-box ul{width:100%;margin:0;padding:0;list-style:none}.upload-box li{border-top:1px solid #e4eaf2;flex-wrap:wrap;gap:10px;padding:8px 0;display:flex}.upload-box input{max-width:100%;font-size:12px}.workspace-empty{text-align:center;color:#8997aa;padding:48px 20px;font-size:13px}.notice{color:#9c5c22;overflow-wrap:anywhere;background:#fff7ec;border:1px solid #f5dfba;border-radius:8px;margin:12px 0;padding:12px;font-size:12px}.workspace-toast{color:#355783;z-index:20;background:#fff;border:1px solid #bdd2ef;border-radius:10px;align-items:center;gap:16px;max-width:min(620px,90vw);padding:12px 16px;font-size:13px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #20345620}.workspace-toast button{color:#7285a0;background:0 0;padding:0}.tasks-layout{gap:22px;display:grid}.tasks-layout.with-detail{grid-template-columns:minmax(250px,360px) minmax(0,1fr);align-items:start}.task-list{align-content:start;gap:10px;display:grid}.task-card{text-align:left;color:#33445e;background:#fff;border:1px solid #e0e7f0;border-radius:10px;gap:7px;padding:15px;display:grid;overflow:hidden}.task-card:hover{background:#f9fbff}.task-card.selected{background:#f6f9ff;border-color:#8ab2ee}.task-card>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.task-card>div>b{letter-spacing:.5px;color:#6681a4;font-size:11px}.task-card strong{overflow-wrap:anywhere;font-size:13px}.task-card small{font-size:11px}.task-status{color:#60738d;white-space:nowrap;background:#edf2f8;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-flex!important}.task-status.succeeded{color:#207b50;background:#eaf8ef}.task-status.failed{color:#b04944;background:#fff0ee}.task-status.unknown,.task-status.partially_succeeded{color:#a06d1c;background:#fff5dd}.task-status.running{color:#376bb6;background:#ebf3ff}.task-status.cancelled{color:#778393;background:#f1f3f6}.task-detail{border:1px solid #dce5f1;border-radius:10px;min-width:0;padding:20px}.task-detail>header{border-bottom:1px solid #edf1f6;height:auto;margin-bottom:20px;padding-bottom:18px}.task-detail .eyebrow{letter-spacing:1.5px;font-size:9px}.task-detail h2{margin-top:4px;font-size:16px}.task-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.task-heading code{margin:6px 0}.task-heading small{margin-top:4px;font-size:11px}.task-tools{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.task-tools button{padding:8px 10px;font-size:11px}.task-detail>.muted{font-size:12px}.task-target{border:1px solid #e6ebf2;border-radius:8px;margin-top:15px;padding:15px}.target-timing{justify-content:space-between;gap:10px;margin:15px 0 8px;font-size:11px;display:flex}.target-timing>span{color:#8994a6}.transfer-progress{align-items:center;gap:12px;margin:10px 0;display:flex}.transfer-progress progress{accent-color:#4b84d7;width:100%;height:7px}.transfer-progress small{white-space:nowrap}.task-error{color:#a04d49;background:#fff8f7;border:1px solid #f3dbd8;border-radius:7px;margin-top:12px;padding:10px;font-size:12px}.task-error pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px;font-size:10px;line-height:1.6;overflow:auto}.technical,.event-history{color:#7b899e;margin-top:15px;font-size:11px}.technical code{margin-top:8px}.event-history p{border-bottom:1px solid #edf1f6;padding-bottom:8px}.pagination{justify-content:space-between;align-items:center;gap:10px;margin-top:10px;font-size:12px;display:flex}.install-dialog{color:#34465f;border:1px solid #d5dfed;border-radius:14px;width:min(720px,100vw - 32px);max-height:90vh;padding:24px;overflow:auto;box-shadow:0 20px 80px #13213940}.install-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17243d66}.install-dialog header{height:auto;margin-bottom:20px}.install-dialog h2{margin:5px 0 0;font-size:22px}.install-dialog p{color:#748299;font-size:13px;line-height:1.6}.install-package{background:#f5f8fd;border:1px solid #e2eaf4;border-radius:8px;padding:15px}.install-package code{margin:7px 0}.install-package>span{color:#6b7e99;font-size:12px}.install-devices{max-height:40vh;overflow:auto}.install-devices fieldset{border:0;border-top:1px solid #e7edf5;margin:0;padding:12px 0}.install-devices legend{padding-right:8px;font-size:12px;font-weight:700}.install-devices .text-button{padding:4px 0 10px;font-size:11px}.target-option{border:1px solid #0000;border-radius:7px;align-items:center;gap:12px;padding:13px 10px;display:flex}.target-option.chosen{background:#f1f6ff;border-color:#c1d6f5}.target-option input{accent-color:#346bc4;cursor:pointer;width:16px;height:16px}.target-option>span:first-of-type{flex:1;min-width:0}.target-option b{font-size:13px}.target-option small{color:#8390a3;overflow-wrap:anywhere;margin-top:4px;font-size:11px;display:block}.install-dialog footer{border-top:1px solid #e4eaf2;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding-top:20px;display:flex}.install-dialog footer small{color:#8a96a7;margin-top:4px;font-size:11px;display:block}@media (width<=950px){.apk-workspace{padding:0 16px 32px}.device-workspace{grid-template-columns:250px minmax(0,1fr)}.workspace-nav>span{display:none}.tasks-layout.with-detail{grid-template-columns:1fr}.task-list{max-height:400px;overflow:auto}.package-actions{flex-direction:column}}@media (width<=680px){.device-workspace{grid-template-columns:1fr}.device-sidebar{position:static}.source-list{max-height:240px}.workspace-header .brand{font-size:14px}.header-actions{gap:7px}.header-actions>span{display:none}.header-actions button{padding:7px;font-size:10px}.workspace-nav{gap:3px}.workspace-nav button{padding:9px 13px}.device-content,.archive-workspace,.tasks-workspace{padding:16px}.package-list>article{flex-wrap:wrap}.package-actions{flex-direction:row;margin-left:54px}.task-heading,.target-timing{flex-wrap:wrap}.install-dialog{padding:17px}.install-dialog footer{flex-direction:column;align-items:flex-start}.section-head{flex-wrap:wrap}.patch-info-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}:root{color:#14213d;background:#f7f9fc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:#fff;background:#1d4ed8;border:0;border-radius:10px;padding:10px 14px;font-weight:650}button:disabled{opacity:.58;cursor:wait}.app-shell{max-width:1240px;margin:auto;padding:0 28px 48px}header{justify-content:space-between;align-items:center;height:76px;display:flex}.brand,.header-actions{align-items:center;gap:12px;display:flex}.brand{font-size:18px;font-weight:760}.brand-mark{color:#fff;background:linear-gradient(135deg,#2563eb,#1e40af);border-radius:13px;place-items:center;width:42px;height:42px;font-size:20px;font-weight:850;display:grid}.brand-mark.small{border-radius:10px;width:32px;height:32px;font-size:15px}.user{color:#475569;font-size:14px}.ghost{color:#334155;background:#fff;border:1px solid #dbe2ea}.hero{max-width:660px;padding:40px 0 32px}.eyebrow{letter-spacing:.13em;color:#2563eb;margin:0 0 9px;font-size:11px;font-weight:800}.hero h1{letter-spacing:-.045em;margin:0 0 14px;font-size:42px;line-height:1.08}.hero>p:last-child,.muted,.empty p{color:#64748b;line-height:1.55}.workspace{grid-template-columns:300px 1fr;gap:20px;display:grid}.step-card,.apps-card,.archive,.modal{background:#fff;border:1px solid #e5eaf1;border-radius:18px;box-shadow:0 12px 35px #0f172a0a}.step-card{padding:22px}.step-card>span{color:#2563eb;font-size:12px;font-weight:800}.step-card h2{margin:4px 0 10px;font-size:16px}.step-card select,.search,.node-form input{background:#fff;border:1px solid #dbe2ea;border-radius:9px;width:100%;padding:10px}.device{color:#334155;text-align:left;background:#f8fafc;border:1px solid #0000;padding:11px}.device.active{color:#1e40af;background:#eff6ff;border-color:#93c5fd}.device small,.app-row small,.archive small,.node-table small{color:#64748b;margin-top:3px;font-size:12px;display:block}.apps-card{min-height:460px;padding:24px}.section-title{justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;display:flex}.section-title h2{letter-spacing:-.025em;margin:0;font-size:21px}.search{width:230px}.apps-grid{grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:11px;display:grid}.app-row,.archive-list article,.node-table article{border:1px solid #e8edf3;border-radius:12px;align-items:center;gap:11px;padding:12px;display:flex}.app-row>div:nth-child(2){flex:1;min-width:0}.app-row b,.archive b,.node-table b{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.app-row button{padding:8px 10px;font-size:12px}.app-icon{color:#3157bf;background:#edf2ff;border-radius:11px;flex:0 0 37px;place-items:center;height:37px;font-weight:800;display:grid}.archive{margin-top:20px;padding:24px}.archive-list article>div:nth-child(2){flex:1;min-width:0}.archive-list a{color:#1d4ed8;font-size:13px;font-weight:700;text-decoration:none}.pill,.status{color:#64748b;background:#f1f5f9;border-radius:99px;padding:5px 8px;font-size:11px;font-weight:750}.status.good{color:#047857;background:#ecfdf5}.toast{color:#fff;z-index:4;background:#172554;border-radius:12px;padding:12px 14px;position:fixed;bottom:22px;right:22px;box-shadow:0 10px 28px #0f172a33}.login-shell{background:radial-gradient(circle at 25% 15%,#e0ecff,#0000 35%),#f7f9fc;place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:#fff;border:1px solid #e5eaf1;border-radius:20px;width:min(400px,100%);padding:36px;box-shadow:0 20px 60px #1e3a8a12}.login-card h1{margin:16px 0 7px}.login-card p{color:#64748b;line-height:1.5}.login-card form{gap:15px;margin:25px 0;display:grid}.login-card label{color:#334155;gap:6px;font-size:13px;font-weight:650;display:grid}.login-card input{border:1px solid #dbe2ea;border-radius:9px;padding:11px}.login-card small{color:#94a3b8}.error{color:#b91c1c;background:#fef2f2;border-radius:8px;padding:9px;font-size:13px}.modal-backdrop{z-index:5;background:#0f172a55;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{width:min(820px,100%);max-height:85vh;padding:25px;overflow:auto}.node-form{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:22px;display:grid}.node-form input:nth-child(3){grid-column:span 2}.toggle{color:#475569;align-items:center;gap:7px;font-size:13px;display:flex}.node-table{gap:8px;display:grid}.node-table article>div{flex:1;min-width:0}.node-table button{padding:7px 9px;font-size:12px}@media (width<=760px){.app-shell{padding:0 15px 30px}.workspace{grid-template-columns:1fr}.header-actions .user{display:none}.hero h1{font-size:34px}.section-title{flex-direction:column;align-items:flex-start}.search{width:100%}.node-form{grid-template-columns:1fr}.node-form input:nth-child(3){grid-column:auto}.archive-list article{flex-wrap:wrap}}.login-simple{background:#f7f9fc}.login-simple-card{width:min(440px,100%);padding:24px}.login-simple-card header{text-align:center;height:auto;display:block}.login-simple-card h1{letter-spacing:-.025em;margin:0;font-size:24px;font-weight:650}.login-simple-card header p{color:#64748b;margin:5px 0 0;font-size:14px}.login-simple-card form{gap:12px;margin:22px 0 0;display:grid}.login-simple-card input{background:#fff;border:1px solid #dbe2ea;border-radius:8px;width:100%;padding:10px 11px}.login-simple-card button{border-radius:8px;width:100%}.login-updated{color:#94a3b8;margin:12px 0 0;font-size:10px}:root{color:#182033;background:#f5f7fa}body{background:linear-gradient(#f8fafc 0,#f4f6f9 48%,#f8fafc 100%)}button{transition:border-color .16s,background-color .16s,box-shadow .16s,transform .16s}button:not(:disabled):active{transform:translateY(1px)}.app-shell{max-width:1380px;padding:0 32px 34px}.app-header{border-bottom:1px solid #e7ebf1;height:74px}.brand{letter-spacing:-.02em;gap:10px;font-size:17px}.brand-mark.small{background:#1d4ed8;border-radius:9px;box-shadow:0 6px 14px #1d4ed82e}.header-actions{gap:8px}.header-actions .ghost{border-radius:8px;padding:8px 11px;font-size:12px;font-weight:650}.ghost:hover,.icon-button:hover{background:#f1f5f9;border-color:#cad4e0}.ghost.compact{padding:6px 9px;font-size:10px}.user{color:#3f4b5f;align-items:center;gap:8px;margin-right:5px;font-size:12px;font-weight:650;display:flex}.user-avatar{color:#3157b5;background:#eaf1ff;border:1px solid #d8e2f0;border-radius:50%;place-items:center;width:27px;height:27px;font-size:11px;display:grid}.user em{color:#5b7195;text-transform:uppercase;letter-spacing:.06em;margin-left:5px;font-size:10px;font-style:normal;font-weight:700;display:inline-block}.workspace{grid-template-columns:310px minmax(0,1fr);align-items:start;gap:18px}.control-rail,.workbench,.archive-panel{background:#fff;border:1px solid #e3e8ef;border-radius:14px;box-shadow:0 3px 11px #0f172a06}.control-rail{overflow:hidden}.rail-section{padding:17px}.rail-section+.rail-section{border-top:1px solid #edf0f4}.node-inline{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.node-inline>span,.rail-heading>div>span{color:#3d4b60;text-transform:uppercase;letter-spacing:.075em;font-size:12px;font-weight:800}.node-inline select{color:#27364b;border:1px solid #dce4ed;border-radius:7px;min-width:0;height:32px;padding:0 8px;font-size:12px;font-weight:650}.icon-button{color:#61708a;background:#fff;border:1px solid #e0e6ee;border-radius:7px;place-items:center;width:27px;height:27px;padding:0;font-size:16px;line-height:1;display:grid}.rail-heading{justify-content:space-between;align-items:center;min-height:21px;margin-bottom:12px;display:flex}.rail-heading small{color:#8b98aa;margin-left:7px;font-size:11px;font-weight:600}.node-health{background:#f7fcf9;border:1px solid #dceae3;border-radius:8px;align-items:flex-start;gap:8px;margin-top:10px;padding:9px;display:flex}.node-health.unhealthy,.node-health.unreachable{background:#fffaf0;border-color:#f1d2a1}.node-health.neutral{background:#f8fbff;border-color:#dbe5f2}.node-health .health-symbol,.node-health .loading-spinner{color:#208452;background:#dff6e9;border-radius:50%;flex:0 0 16px;place-items:center;width:16px;height:16px;font-size:10px;font-weight:900;display:grid}.node-health.unhealthy .health-symbol,.node-health.unreachable .health-symbol{color:#b56b0a;background:#fff0d6}.node-health.neutral .health-symbol{color:#476ca8;background:#edf3ff}.node-health b,.node-health small{display:block}.node-health b{color:#38624d;font-size:10px;line-height:1.35}.node-health.unhealthy b,.node-health.unreachable b{color:#8e5a13}.node-health small{color:#718096;overflow-wrap:anywhere;margin-top:2px;font-size:9px;line-height:1.35}.node-error{color:#9a6109;background:#fff9ed;border:1px solid #f0c78a;border-radius:7px;margin:0 0 8px;padding:7px 8px;font-size:10px;line-height:1.35}.device-list{gap:6px;display:grid}.device{background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:9px;min-height:68px;padding:9px;display:flex}.device:hover{background:#f8fafc;border-color:#e7edf4}.device.active{background:#edf4ff;border-color:#cbdafa;box-shadow:inset 3px 0 #3672df}.device-status{cursor:help;border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.device-status[data-state=online],.device-status.online{background:#22a76c;box-shadow:0 0 0 3px #dff7ea}.device-status[data-state=unauthorized],.device-status.unauthorized{background:#dc3e42;box-shadow:0 0 0 3px #fde8e8}.device-status[data-state=recently_unavailable],.device-status.recently_unavailable{background:#e79622;box-shadow:0 0 0 3px #fff0d6}.device-status[data-state=stale],.device-status.stale{background:#9caaba;box-shadow:0 0 0 3px #edf0f4}.device-main{flex:1;min-width:0}.copy-value{max-width:100%;color:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:0;display:block;overflow:hidden}.copy-value:hover{color:#1d5bc2;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.device-title{align-items:center;gap:5px;font-size:12px;font-weight:750;display:flex}.farm-id-badge{color:#3970c9;letter-spacing:.02em;background:#fff;border:1px solid #c7d8f7;border-radius:4px;padding:1px 4px;font-size:10px;font-weight:800}.device-id{color:#71829a;margin-top:3px;font-size:10px}.device small{color:#8090a5;white-space:nowrap;justify-content:space-between;gap:8px;margin-top:4px;font-size:9px;display:flex}.device-use{color:#2e62bb;background:#f7faff;border:1px solid #d7e3f5;border-radius:6px;padding:6px 8px;font-size:10px}.device-use:disabled{color:#919cab;cursor:not-allowed;background:#f5f6f8}.inline-loader,.rail-empty{text-align:center;color:#8491a3;padding:22px 5px;font-size:12px}.rail-empty span{color:#a1afc0;font-size:26px;line-height:1;display:block}.rail-empty p{margin:6px 0}.workbench{overflow:hidden}.target-strip{background:#fbfcfe;border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;min-height:58px;padding:12px 20px;display:flex}.target-strip b,.target-strip span{display:block}.target-strip b{color:#28384e;font-size:13px}.target-strip span{color:#738197;margin-top:3px;font-size:10px}.mode-tabs{border-bottom:1px solid #edf0f4;gap:4px;padding:10px 20px 0;display:flex}.mode-tabs button{color:#748197;background:0 0;border-radius:7px 7px 0 0;padding:8px 10px;font-size:11px;font-weight:750}.mode-tabs button.selected{color:#225aba;box-shadow:inset 0 -2px #2862c7}.mode-tabs button:disabled{opacity:.45;cursor:not-allowed}.upload-composer{background:#f8fbff;border:1px solid #dce6f5;border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin:15px 20px 8px;padding:13px;display:grid}.upload-composer b,.upload-composer small{display:block}.upload-composer b{color:#26364d;font-size:12px}.upload-composer small{color:#738197;margin-top:3px;font-size:10px}.file-picker{color:#40536e;cursor:pointer;background:#fff;border:1px solid #ced9e7;border-radius:7px;justify-content:center;align-items:center;height:32px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.file-picker:hover{border-color:#9eb6d9}.file-picker input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.primary-action{white-space:nowrap;background:#2862c7;border-radius:7px;min-height:33px;padding:7px 11px;font-size:10px;font-weight:750}.primary-action:not(:disabled):hover,.archive-install:not(:disabled):hover,.pull-action:not(:disabled):hover{background:#1f54ad;box-shadow:0 4px 11px #245dbd33}.upload-queue{gap:4px;margin:0 20px 12px;display:grid}.upload-queue>div{color:#4a5a71;border:1px solid #e8edf4;border-radius:7px;grid-template-columns:minmax(0,1fr) 100px auto;align-items:center;gap:10px;padding:6px 9px;font-size:10px;display:grid}.upload-queue>div>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-queue small{color:#748196;text-transform:capitalize}.upload-queue small.uploaded{color:#208452}.upload-queue small.failed{color:#b34848}.text-button{color:#3e68b6;background:0 0;padding:0;font-size:10px}.application-panel,.inventory-panel{border-top:1px solid #edf0f4}.panel-toolbar{justify-content:space-between;align-items:center;gap:18px;padding:17px 20px 13px;display:flex}.panel-toolbar h2{color:#344158;letter-spacing:-.01em;margin:0;font-size:14px}.panel-toolbar small{color:#8a98ab;margin-top:3px;font-size:10px;display:block}.search-wrap,.archive-search{color:#8b9ab0;background:#fff;border:1px solid #dbe3ec;border-radius:7px;align-items:center;width:245px;height:33px;padding:0 8px;display:flex}.search-wrap:focus-within,.archive-search:focus-within{border-color:#9ab7ea;box-shadow:0 0 0 3px #4b84e717}.search-wrap>span,.archive-search>span{font-size:15px;transform:rotate(-20deg)}.search,.archive-search input{color:#34445b;border:0;outline:none;width:100%;padding:0 0 0 7px;font-size:11px}.apps-grid{grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:8px;padding:0 20px 20px;display:grid}.app-row{background:#fff;border:1px solid #e7ecf2;border-radius:10px;min-height:60px;padding:10px}.app-row:hover{border-color:#d4e0ee;box-shadow:0 4px 11px #0f172a09}.app-row b{color:#334158;font-size:12px}.app-row small{color:#8390a4;text-overflow:ellipsis;white-space:nowrap;max-width:175px;margin-top:3px;font-size:10px;overflow:hidden}.app-icon{color:#3e68b6;background:#edf3ff;border-radius:9px;flex:0 0 35px;place-items:center;width:35px;height:35px;font-size:13px;font-weight:750;display:grid}.pull-action{color:#2e62bb;background:#f7faff;border:1px solid #d7e3f5;border-radius:7px;padding:7px 9px;font-size:10px;font-weight:750}.content-loader{color:#758399;justify-content:center;align-items:center;gap:9px;min-height:180px;font-size:13px;display:flex}.app-empty{text-align:center;grid-column:1/-1;padding:30px 6px 10px}.empty{text-align:center;padding:54px 20px}.empty h3{color:#39475c;margin:13px 0 4px;font-size:15px}.empty p{max-width:320px;margin:0 auto;font-size:12px}.empty-icon{color:#5a7fbd;background:#eff6ff;border-radius:50%;place-items:center;width:45px;height:45px;margin:auto;font-size:21px;display:grid}.inventory-toolbar{align-items:flex-end}.inventory-actions{gap:8px;display:flex}.scan-progress{color:#53647d;background:#f8fbff;border:1px solid #dce6f5;border-radius:8px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:7px;margin:0 20px 12px;padding:8px 10px;font-size:10px;display:grid}.scan-progress .loading-spinner{width:13px;height:13px}.scan-progress small{color:#718096;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scan-progress.failed{background:#fff7f7;border-color:#f4c7c7}.inventory-list{gap:0;display:grid}.inventory-app{border-top:1px solid #edf0f4}.inventory-summary{color:#354257;text-align:left;background:#fff;border-radius:0;grid-template-columns:35px minmax(0,1fr) minmax(160px,.8fr) auto 16px;align-items:center;gap:10px;width:100%;padding:11px 20px;display:grid}.inventory-summary:hover{background:#fbfcfe}.inventory-summary b,.inventory-summary small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inventory-summary b{font-size:12px}.inventory-summary small{color:#8290a5;margin-top:3px;font-size:10px}.version-list{flex-wrap:wrap;gap:4px;display:flex}.version-list i{color:#64748b;background:#f2f5f9;border-radius:5px;padding:3px 5px;font-size:9px;font-style:normal}.device-count{color:#61718a;white-space:nowrap;font-size:10px}.chevron{width:16px;height:16px;transition:transform .16s}.chevron.open{transform:rotate(180deg)}.inventory-devices{background:#fafbfc;border-top:1px solid #edf0f4;gap:0;display:grid}.inventory-devices>div{border-top:1px solid #f0f2f5;grid-template-columns:10px minmax(140px,.45fr) minmax(0,1fr);align-items:center;gap:9px;padding:8px 20px 8px 58px;display:grid}.inventory-device-name{color:#3b5d9e;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:0;font-size:10px;font-weight:700;overflow:hidden}.inventory-device-name:disabled{color:#8b97a8;cursor:not-allowed}.inventory-devices small{color:#7c8a9d;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.archive-panel{margin-top:18px;padding:0;overflow:hidden}.archive-panel.collapsed{box-shadow:none}.archive-toolbar{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;min-height:58px;padding:11px 18px;display:flex}.archive-toolbar>div{align-items:center;gap:8px;display:flex}.archive-toggle{color:#3b4a60;background:0 0;align-items:center;gap:7px;padding:5px 0;font-size:12px;font-weight:750;display:inline-flex}.archive-toggle em{color:#8090a5;font-size:11px;font-style:normal;font-weight:650}.refresh-archive{border-radius:7px;padding:7px 9px;font-size:11px}.archive-search{width:190px}.archive-batch{color:#58708e;background:#f8fbff;border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;padding:8px 18px;font-size:10px;font-weight:700;display:flex}.archive-batch button{border-radius:7px;padding:7px 9px;font-size:10px}.archive-list{gap:0;display:grid}.archive-list article{border:0;border-bottom:1px solid #edf0f4;border-radius:0;align-items:center;gap:12px;min-height:75px;padding:12px 18px;display:flex}.archive-list article:hover{background:#fbfcfe}.archive-details{flex:1;min-width:0}.archive-name{align-items:center;gap:7px;min-width:0;display:flex}.archive-name b{color:#354257;font-size:12px}.archive-details small{color:#8190a5;margin-top:4px;font-size:10px;display:block}.archive-details small i{color:#c0c9d4;margin:0 2px;font-style:normal}.archive-date{color:#637893!important}.source-tag,.install-state{color:#4771ae;letter-spacing:.03em;text-transform:uppercase;background:#edf4ff;border-radius:999px;align-items:center;min-height:19px;padding:2px 6px;font-size:9px;font-weight:800;display:inline-flex}.source-tag.upload-source{color:#7653b4;background:#f2ecff}.install-state{color:#9a6b12;background:#fff6df;margin-top:5px}.install-state.succeeded{color:#278050;background:#eaf9ef}.install-state.failed{color:#b34848;background:#fff0f0}.archive-actions{gap:7px;display:flex}.archive-install,.archive-download{text-align:center;border-radius:7px;min-width:71px;padding:8px 10px;font-size:10px}.archive-download{color:#49647f;background:#fff;border:1px solid #dbe4f1;text-decoration:none}.archive-download:hover{background:#f8fbff;border-color:#b7c9e0}.archive-empty{color:#8090a4;align-items:center;gap:12px;padding:28px 22px;display:flex}.archive-empty>span{color:#a4b1c0;border:1px solid #dce5ef;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.archive-empty b{color:#536174;font-size:12px;display:block}.archive-empty p{margin:3px 0 0;font-size:11px}.archive-select{place-items:center;width:16px;height:16px;display:grid;position:relative}.archive-select input{width:14px;height:14px}.app-footer{color:#9aa6b6;text-align:right;margin-top:15px;font-size:10px}.toast{background:#1f2d46;align-items:center;gap:12px;max-width:440px;font-size:12px;display:flex}.toast button{background:0 0;padding:0 0 0 15px}.node-modal{max-width:800px}.node-modal .section-title small{color:#7f8da1;margin-top:4px;font-size:10px;display:block}.node-form.refined{grid-template-columns:1fr 1fr;gap:12px}.node-form.refined label{color:#516177;gap:5px;font-size:10px;font-weight:700;display:grid}.node-form.refined label>span{text-transform:uppercase;letter-spacing:.055em}.node-form.refined .full{grid-column:1/-1}.node-form.refined input{height:36px}.input-suffix{background:#fff;border:1px solid #dbe2ea;border-radius:8px;align-items:center;display:flex}.input-suffix input{border:0;width:100%}.input-suffix b{color:#8a98ab;padding-right:9px;font-size:10px}.toggle-field{justify-content:space-between}.toggle{align-items:center;gap:7px;padding-top:8px;color:#455870!important;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;display:flex!important}.form-actions{justify-content:flex-end;align-items:end;gap:8px;display:flex!important}.configured-heading{justify-content:space-between;align-items:center;margin:22px 0 8px;display:flex}.configured-heading h3{color:#3d4b60;text-transform:uppercase;letter-spacing:.075em;margin:0;font-size:12px}.configured-heading small{color:#8b98aa;font-size:10px}.node-table article{border-radius:9px}.node-table .danger{color:#b04747}.screen-loader{color:#718096;justify-content:center;align-items:center;gap:9px;min-height:100vh;font-size:13px;display:flex}.farm-id-badge.unassigned{color:#94a3b8;background:#f8fafc;border-color:#e2e8f0;font-weight:700}.inventory-panel{flex-direction:column;min-height:0;display:flex}.inventory-list{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:clamp(300px,52vh,560px);overflow-y:auto}.inventory-app:first-child{border-top:0}.scan-age{color:#6d829e;white-space:nowrap;font-weight:650}.inventory-devices>div{grid-template-columns:10px auto minmax(130px,.45fr) minmax(0,1fr)}.inventory-farm-id{white-space:nowrap;justify-self:start}.device-target-toolbar{color:#718096;justify-content:space-between;align-items:center;gap:8px;margin:-3px 0 10px;font-size:10px;font-weight:700;display:flex}.device-target-toolbar>div{gap:8px;display:flex}.device-target-toolbar .text-button{color:#3e68b6;font-weight:750}.device-target-toolbar .text-button:disabled{color:#a0acbc;cursor:not-allowed}.device-target-select{flex:none;place-items:center;width:16px;height:16px;display:grid}.device-target-select input{accent-color:#2862c7;width:14px;height:14px}.installation-batch-progress{background:#f8fbff;border:1px solid #d7e4f6;border-radius:9px;margin:12px 18px;overflow:hidden}.installation-batch-progress header{color:#526b8c;border-bottom:1px solid #e0eaf7;justify-content:space-between;align-items:center;gap:12px;min-height:0;padding:10px 12px;font-size:10px;font-weight:700;display:flex}.installation-batch-progress header b,.installation-batch-progress header small{display:block}.installation-batch-progress header b{color:#344966;font-size:11px}.installation-batch-progress header small{color:#7d8ca2;margin-top:2px;font-size:9px;font-weight:600}.installation-batch-tasks{display:grid}.installation-batch-tasks>div{border-top:1px solid #edf2f8;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 12px;display:grid}.installation-batch-tasks>div:first-child{border-top:0}.installation-batch-tasks b{color:#43536a;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.installation-batch-tasks small{color:#b34848;overflow-wrap:anywhere;grid-column:1/-1;font-size:9px}.installation-batch-float{z-index:6;background:#fff;border:1px solid #cbdcf4;border-radius:10px;width:min(360px,100vw - 40px);display:grid;position:fixed;bottom:20px;right:20px;overflow:hidden;box-shadow:0 14px 34px #0f172a29}.installation-batch-float header,.installation-batch-float>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 11px;display:grid}.installation-batch-float header{color:#58708e;background:#eef5ff}.installation-batch-float>div{border-top:1px solid #edf1f6}.installation-batch-float b,.installation-batch-float small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.installation-batch-float b{color:#384b66;font-size:10px}.installation-batch-float small{color:#718096;font-size:9px}.installation-batch-float>div small{color:#b34848;white-space:normal;overflow-wrap:anywhere;grid-column:1/-1}@media (width<=900px){.app-shell{padding-inline:18px}.workspace{grid-template-columns:1fr}.control-rail{grid-template-columns:290px 1fr;display:grid}.rail-section+.rail-section{border-top:0;border-left:1px solid #edf0f4}.device-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.app-shell{padding-inline:13px}.app-header{height:64px}.header-actions .user,.header-actions .ghost:first-of-type{display:none}.control-rail{display:block}.rail-section+.rail-section{border-top:1px solid #edf0f4;border-left:0}.device-list{grid-template-columns:1fr}.upload-composer{grid-template-columns:1fr auto}.upload-composer>div,.upload-composer .primary-action{grid-column:1/-1}.panel-toolbar,.inventory-toolbar{flex-direction:column;align-items:flex-start}.inventory-actions{width:100%}.search-wrap{flex:1;width:auto}.inventory-summary{grid-template-columns:35px minmax(0,1fr) auto 16px}.inventory-summary .version-list{display:none}.inventory-devices>div{grid-template-columns:10px auto minmax(0,1fr);padding-left:25px}.inventory-devices small{grid-column:3}.archive-toolbar{align-items:flex-start;gap:8px}.archive-toolbar>div{flex:1;justify-content:flex-end}.archive-search{width:140px}.archive-list article{flex-wrap:wrap;align-items:flex-start;padding-inline:13px}.archive-actions{width:100%;padding-left:47px}.archive-actions>*{flex:1}.node-form.refined{grid-template-columns:1fr}.node-form.refined .full{grid-column:auto}.form-actions{justify-content:stretch}.form-actions button{flex:1}}
