.form textarea { display:block; width:100%; border:1px solid #aeb7bd; padding:8px; margin-top:4px; font:inherit; resize:vertical; }
.profile-form { max-width:620px; }
.form-help { color:#68747c; }
.account-avatar,.profile-avatar { display:block; border-radius:50%; background:#edf0f2; border:1px solid #c9ced2; }
.profile-hero { display:flex; align-items:center; gap:24px; background:#fff; border:1px solid #c9ced2; border-left:4px solid #159957; padding:22px; }
.profile-hero h1 { margin-bottom:6px; }
.profile-bio { max-width:720px; margin:0 0 10px; white-space:pre-wrap; overflow-wrap:anywhere; }
.profile-meta { display:flex; flex-wrap:wrap; gap:8px 18px; color:#68747c; }
@media (max-width:700px) { .profile-hero { align-items:stretch; flex-direction:column; } .profile-avatar { width:96px; height:96px; } }
.primary-nav { display:flex; align-items:center; gap:18px; }
.guest-nav,.account-menu { margin-left:auto; }
.account-menu { position:relative; color:#fff; }
.account-menu summary { display:flex; align-items:center; gap:9px; cursor:pointer; list-style:none; color:#d7e0e4; user-select:none; }
.account-menu summary::-webkit-details-marker { display:none; }
.account-menu summary::after { content:'▾'; color:#aebbc1; font-size:11px; }
.account-menu summary:hover,.account-menu[open] summary { color:#fff; }
.account-menu summary img { border-radius:50%; background:#edf0f2; border:1px solid #64747c; }
.account-menu-panel { position:absolute; z-index:20; right:0; top:42px; min-width:190px; padding:6px; background:#fff; border:1px solid #aeb7bd; box-shadow:0 8px 24px rgba(24,34,39,.2); }
.account-menu-panel a,.account-menu-panel button { display:block; width:100%; padding:9px 10px; border:0; background:none; color:#263238; text-align:left; text-decoration:none; font:inherit; cursor:pointer; }
.account-menu-panel a:hover,.account-menu-panel button:hover { background:#edf7f1; color:#087744; }
.account-menu-panel form { margin:4px 0 0; padding-top:4px; border-top:1px solid #e1e4e6; }
@media (max-width:700px) { .account-menu summary span { max-width:110px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } }
.score-summary { grid-template-columns:repeat(2,1fr); }
.workload-table .workload-start > * { border-top:2px solid #c9ced2; }
.workload-table tbody tr:first-child > * { border-top-width:1px; }
.workload-name { min-width:0; white-space:normal; vertical-align:top; color:#263238; background:#f8faf9; }
.workload-name small { display:block; margin-top:4px; color:#68747c; font-weight:normal; line-height:1.35; }
@media (max-width:700px) { .score-summary { grid-template-columns:1fr; } }
