.software-view{padding:0;overflow:hidden}.software-view .view-head{height:54px;margin:0;padding:7px 14px}.software-shell{position:absolute;inset:58px 8px 8px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:8px;min-width:0;min-height:0}.software-toolbar,.software-factory,.software-content{border:1px solid rgba(77,175,233,.22);border-radius:12px;background:rgba(3,22,42,.84);box-shadow:inset 0 0 18px rgba(0,0,0,.22)}.software-toolbar{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:10px;align-items:center;padding:9px 10px}.software-stats{display:flex;gap:6px}.software-stats>span{min-width:64px;padding:6px 8px;border:1px solid rgba(69,165,224,.18);border-radius:9px;background:rgba(7,45,75,.56);text-align:center}.software-stats b,.software-stats small{display:block}.software-stats b{font-size:14px;color:#e8f8ff}.software-stats small{font-size:7px;letter-spacing:.7px;color:#7da7c0;text-transform:uppercase;margin-top:2px}.software-search{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px}.software-search span{font-size:8px;color:#82a9c1;text-transform:uppercase;letter-spacing:1px}.software-search input{width:100%;min-width:0;border:1px solid rgba(70,168,225,.24);background:#061d34;color:#edf8ff;border-radius:9px;padding:8px 9px;outline:none}.software-filters{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.software-filters button{border:1px solid rgba(73,171,228,.2);background:rgba(8,48,78,.68);color:#9ec5dc;border-radius:8px;padding:7px 8px;font-size:8px;cursor:pointer}.software-filters button.active,.software-filters button:hover{color:#fff;border-color:rgba(55,194,255,.52);background:rgba(12,83,128,.86)}.software-factory{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 11px}.software-factory small,.software-factory strong{display:block}.software-factory small{font-size:7px;letter-spacing:1px;text-transform:uppercase;color:#65b9e4}.software-factory strong{font-size:11px;color:#dff5ff;margin-top:2px}.software-factory-meta{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.software-factory-meta span{font-size:8px;color:#789db4}.software-content{min-height:0;overflow:auto;padding:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));align-content:start;gap:8px}.software-card{min-width:0;border:1px solid rgba(77,175,233,.16);border-radius:12px;background:linear-gradient(180deg,rgba(8,45,73,.76),rgba(3,25,45,.72));padding:10px}.software-card.pending{border-color:rgba(242,191,91,.2)}.software-card.review{border-color:rgba(255,140,92,.25)}.software-card.asset{border-color:rgba(153,126,255,.25)}.software-card-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.software-card-head small,.software-card-head strong{display:block}.software-card-head small{font-size:7px;letter-spacing:.8px;color:#6e9ab5;text-transform:uppercase}.software-card-head strong{font-size:13px;color:#e7f7ff;margin-top:3px}.software-version{font-size:8px;padding:4px 6px;border-radius:999px;background:rgba(18,109,164,.34);color:#9edbff;white-space:nowrap}.software-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.software-badge{font-size:7px;line-height:1.2;padding:4px 6px;border-radius:999px;border:1px solid rgba(93,170,214,.22);color:#9fc4d8;background:rgba(8,50,81,.5)}.software-badge.ok{color:#a4ecc9;border-color:rgba(75,210,148,.28)}.software-badge.warn{color:#f0cb83;border-color:rgba(237,185,83,.28)}.software-badge.neutral{color:#9eb8ca}.software-path{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;margin-top:9px;padding:7px 8px;border-radius:8px;background:rgba(1,14,28,.48)}.software-path span{font-size:8px;color:#91acbd;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.software-path button{border:0;background:transparent;color:#64c8ff;font-size:8px;cursor:pointer;white-space:nowrap}.software-line{display:grid;grid-template-columns:74px minmax(0,1fr);gap:7px;margin-top:7px;font-size:8px}.software-line b{color:#7ba8c1}.software-line span{color:#aec5d4}.software-loading,.software-empty,.software-error{grid-column:1/-1;align-self:center;justify-self:center;padding:34px;text-align:center;color:#88aabe;font-size:10px}.software-error strong,.software-error span{display:block}.software-error strong{color:#ff9aa8;font-size:12px}.software-error span{margin-top:5px}.taskbar-icon-software svg{width:17px;height:17px}@media(max-width:1100px){.software-toolbar{grid-template-columns:1fr 1fr}.software-stats{grid-column:1/-1}.software-filters{justify-content:flex-start}.software-factory{align-items:flex-start;flex-direction:column}.software-factory-meta{justify-content:flex-start}}@media(max-width:760px){.software-toolbar{grid-template-columns:1fr}.software-stats{overflow:auto}.software-search{grid-template-columns:1fr}.software-filters{justify-content:flex-start}.software-content{grid-template-columns:1fr}}
/* 0.8.9 visible launcher hardening */
#softwareTaskbar{order:99;min-width:42px}.taskbar-icon-software{position:relative}.software-mini-label{position:absolute;right:1px;bottom:0;z-index:3;font-size:6px;line-height:9px;min-width:12px;height:9px;padding:0 2px;border-radius:4px;background:#e9f8ff;color:#06304f;font-weight:900;letter-spacing:.2px;box-shadow:0 0 6px rgba(141,224,255,.65);pointer-events:none}

/* 0.8.10 Software To Go launcher: visible label on normal screens */
#softwareTaskbar{order:99;min-width:116px!important;padding:0 8px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;border:1px solid rgba(94,205,255,.42)!important;background:linear-gradient(145deg,rgba(10,82,132,.44),rgba(3,31,62,.60))!important;box-shadow:inset 0 0 0 1px rgba(120,220,255,.08),0 0 14px rgba(32,180,255,.16)!important}
#softwareTaskbar .software-taskbar-text{display:block;font-size:9px;line-height:1;font-weight:850;letter-spacing:.2px;color:#eefaff;text-shadow:0 1px 5px rgba(0,0,0,.5);pointer-events:none}
@media(max-width:1100px){#softwareTaskbar{min-width:42px!important;padding:0 2px!important;display:inline-grid!important}.software-taskbar-text{display:none!important}}
