/* Portfolio page. Tokens only from styles.css (--silia-*), no new colors. */
.portfolio { margin-bottom: 16px; }
.tablewrap { overflow-x: auto; margin-top: 12px; }
.portfolio table { width: 100%; border-collapse: collapse; min-width: 920px; table-layout: fixed; }
.portfolio th:nth-child(1) { width: 27%; } .portfolio th:nth-child(2) { width: 118px; } .portfolio th:nth-child(3) { width: 19%; }
.portfolio th:nth-child(4) { width: 16%; } .portfolio th:nth-child(5) { width: 14%; } .portfolio th:nth-child(6) { width: 112px; } .portfolio th:nth-child(7) { width: 104px; }
.portfolio .health { white-space: nowrap; }
.portfolio th { text-align: left; font-size: 12px; font-weight: 600; color: var(--silia-text-description); padding: 8px 12px 8px 0; border-bottom: 1px solid var(--silia-border); white-space: nowrap; }
.portfolio td { padding: 14px 12px 14px 0; border-bottom: 1px solid var(--silia-border-subtle); vertical-align: top; }
.portfolio tr:last-child td { border-bottom: 0; }
.portfolio td b { color: var(--silia-brand-black); font-weight: 600; }
.portfolio .muted { font-size: 12px; margin-top: 2px; }
.portfolio .avance .progress { margin-top: 6px; }
.portfolio .nums { margin-top: 8px; font-size: 13px; }
.portfolio .gap { font-weight: 600; margin-left: 4px; }
.portfolio .gap.ahead { color: var(--silia-success-fg-strong); }
.portfolio .gap.behind { color: var(--silia-danger-fg-strong); }
.portfolio .od { color: var(--silia-danger-fg-strong); font-weight: 600; margin-left: 4px; }
.portfolio .acts { white-space: nowrap; }
.portfolio .hidden-project td { opacity: .6; }
.myprojects { display: grid; gap: 12px; }
.myprojects a.proj { display: block; background: var(--silia-bg-container); border: 1px solid var(--silia-border-subtle); border-radius: var(--radius); padding: 18px 20px; box-shadow: var(--silia-shadow-sm); }
.myprojects a.proj:hover { border-color: var(--silia-purple4); }
.myprojects .client { color: var(--silia-text-description); font-size: 12px; font-weight: 600; margin-bottom: 2px; }
.myprojects b { color: var(--silia-brand-black); font-size: 16px; font-weight: 600; }

/* Sign-in page */
.loginbox { display: flex; justify-content: center; padding: 32px 0; }
.loginbox .empty { max-width: 460px; text-align: center; }
.loginbox button { margin-top: 12px; height: var(--control-h); padding: 0 16px; border-radius: var(--radius-sm); border: 1px solid var(--silia-border); background: var(--silia-bg-container); cursor: pointer; }
