/* ============================================================
   Software Store
   ============================================================ */
.software-layout{
  display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-window-alt);
}
.soft-header{
  height:44px;display:flex;align-items:center;gap:8px;padding:0 12px;
  border-bottom:1px solid var(--border);background:var(--bg-window);flex-shrink:0;
}
.soft-header h3{margin:0;font-size:14.5px;font-weight:700}
.soft-tabs{
  display:flex;gap:2px;margin-left:8px;
}
.soft-tab{
  background:transparent;border:0;color:var(--text-secondary);
  padding:5px 12px;border-radius:6px;font-size:12px;font-weight:500;
  cursor:pointer;
}
.soft-tab:hover{background:var(--bg-hover);color:var(--text)}
.soft-tab.active{background:var(--bg-active);color:var(--accent);font-weight:600}
.soft-search{
  margin-left:auto;height:28px;
  background:var(--bg-input);border:1px solid var(--border);
  border-radius:14px;padding:0 10px;
  font-size:12px;color:var(--text);width:200px;
}

.soft-content{
  flex:1;overflow-y:auto;padding:16px;
}
.soft-featured{
  background:linear-gradient(135deg,var(--yaru-aubergine) 0%,var(--yaru-purple) 100%);
  border-radius:12px;padding:20px 24px;color:#fff;
  margin-bottom:18px;position:relative;overflow:hidden;
}
.soft-featured .feat-title{font-size:20px;font-weight:700;margin:0}
.soft-featured .feat-sub{font-size:12.5px;opacity:.85;margin-top:6px}
.soft-featured .feat-btn{
  background:#fff;color:var(--yaru-aubergine);border:0;padding:8px 18px;
  border-radius:8px;font-weight:600;font-size:12.5px;margin-top:12px;
  cursor:pointer;
}
.soft-featured .feat-btn:hover{background:rgba(255,255,255,.92)}

.soft-cats{
  display:flex;gap:0;margin-bottom:0;border-bottom:1px solid var(--border);
}
.soft-cat{
  background:transparent;border:0;color:var(--text-secondary);font-size:12px;
  padding:8px 12px;font-weight:500;cursor:pointer;
  border-bottom:2px solid transparent;
}
.soft-cat:hover{color:var(--text)}
.soft-cat.active{color:var(--accent);border-bottom-color:var(--accent)}

.soft-app-grid{
  display:grid;grid-template-columns:repeat(auto-fill,280px);gap:10px;
}
.soft-app-card{
  background:var(--bg-window);border:1px solid var(--border);
  border-radius:10px;padding:12px;display:flex;gap:12px;
  transition:box-shadow .15s,border-color .15s;
}
.soft-app-card:hover{border-color:var(--border-strong);box-shadow:0 4px 12px rgba(0,0,0,.12)}
.soft-app-icon{width:48px;height:48px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.soft-app-icon svg{width:28px;height:28px;color:#fff}
.soft-app-body{flex:1;min-width:0}
.soft-app-name{font-weight:600;font-size:13px}
.soft-app-desc{font-size:11px;color:var(--text-secondary);margin-top:2px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.soft-app-rating{color:var(--yaru-yellow);font-size:11px;margin-top:3px}
.soft-app-rating .rs{color:var(--text-secondary)}
.soft-app-install{
  background:var(--accent);border:0;color:#fff;padding:5px 12px;
  border-radius:6px;font-size:11.5px;font-weight:600;cursor:pointer;
  align-self:flex-start;
}
.soft-app-install:hover{background:var(--accent-hover)}
.soft-app-install.installed{background:var(--bg-hover);color:var(--text-secondary)}
.soft-legend{font-size:11px;color:var(--text-secondary);padding:8px 2px 4px}
