.contacts-page{width:100%;margin:0;color:var(--text)}.contacts-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}.contacts-heading h1{margin:5px 0;font-size:27px;letter-spacing:-.04em}.contacts-heading p{margin:0;color:var(--muted);font-size:12px}.contacts-actions{display:flex;align-items:center;gap:10px}.contacts-search input{width:min(310px,25vw);min-height:37px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;color:var(--text);background:var(--surface);font:inherit;font-size:12px}.contacts-actions .primary-button:disabled{opacity:.56;cursor:not-allowed}.contacts-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.contacts-filters{display:flex;flex-wrap:wrap;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface)}.contacts-filters button{min-height:35px;padding:7px 12px;border:0;border-right:1px solid var(--line);color:var(--text);background:transparent;font-size:11px;font-weight:650}.contacts-filters button:last-child{border-right:0}.contacts-filters button.active{color:var(--surface);background:var(--accent)}.contacts-filters button:hover:not(.active){background:var(--panel)}.contacts-sort{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}.contacts-sort select{min-height:35px;padding:6px 9px;border:1px solid var(--line);border-radius:8px;color:var(--text);background:var(--surface);font:inherit}.contacts-layout{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(270px,.95fr);align-items:start;gap:14px}.contacts-list,.contact-detail{min-width:0;border:1px solid var(--line);border-radius:11px;background:var(--surface);overflow:hidden}.contacts-list-head,.contact-row{display:grid;grid-template-columns:minmax(150px,1.3fr) minmax(85px,.85fr) minmax(100px,1fr) minmax(80px,.85fr) minmax(68px,.55fr);align-items:center;gap:8px}.contacts-list-head{padding:12px 14px;border-bottom:1px solid var(--line);color:var(--muted);background:color-mix(in srgb,var(--surface) 55%,var(--panel));font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.contact-row{width:100%;min-height:62px;padding:9px 14px;border:0;border-bottom:1px solid var(--line);color:var(--text);background:transparent;text-align:left;font-size:11px}.contact-row:last-child{border-bottom:0}.contact-row:hover,.contact-row.selected{background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.contact-person{display:flex;align-items:center;min-width:0;gap:10px}.contact-person strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.contact-initials{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;color:var(--accent);background:var(--panel);font-size:10px;font-weight:760}.contact-initials.large{width:47px;height:47px;font-size:15px}.contact-type{display:inline-block;width:max-content;max-width:100%;padding:4px 7px;border-radius:6px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));font-size:10px;font-weight:700}.contact-company,.contact-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.contact-shortcuts{display:flex;gap:7px;align-items:center}.contact-shortcuts a{position:relative;z-index:1;display:grid;place-items:center;min-width:27px;min-height:27px;border:1px solid var(--line);border-radius:7px;color:var(--accent);background:var(--surface);font-size:10px;font-weight:750;text-decoration:none}.contact-shortcuts a:hover{border-color:var(--accent)}.contact-no-shortcut{color:var(--muted)}.contact-detail{padding:16px}.contact-detail-title{display:flex;align-items:center;gap:12px;padding-bottom:16px}.contact-detail-title h2{margin:0 0 5px;font-size:16px}.contact-detail-section{padding:15px 0;border-top:1px solid var(--line)}.contact-detail-section h3{margin:0 0 12px;color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.contact-detail-section dl{display:grid;grid-template-columns:70px 1fr;gap:9px;margin:0;font-size:11px}.contact-detail-section dt{color:var(--muted)}.contact-detail-section dd{min-width:0;margin:0;overflow-wrap:anywhere}.contact-detail-section a{color:var(--accent)}.contact-detail-section p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.contact-projects{display:grid}.contact-projects button{display:grid;gap:4px;width:100%;padding:9px 0;border:0;border-bottom:1px solid var(--line);color:var(--text);background:transparent;text-align:left}.contact-projects button:last-child{border-bottom:0}.contact-projects strong{font-size:11px}.contact-projects small{color:var(--muted);font-size:10px}.contact-projects button:hover strong{text-decoration:underline}.contacts-empty{padding:20px;color:var(--muted);font-size:12px}
@media(max-width:1100px){.contacts-layout{grid-template-columns:1fr}.contacts-list-head,.contact-row{grid-template-columns:minmax(150px,1.4fr) minmax(90px,.7fr) minmax(100px,1fr) minmax(66px,.5fr)}.contacts-list-head span:nth-child(4),.contact-role{display:none}.contacts-search input{width:min(310px,35vw)}}
@media(max-width:700px){.contacts-heading{align-items:stretch;flex-direction:column}.contacts-actions{display:grid;grid-template-columns:1fr auto}.contacts-search input{width:100%}.contacts-toolbar{align-items:stretch;flex-direction:column}.contacts-filters{overflow:auto;flex-wrap:nowrap}.contacts-filters button{white-space:nowrap}.contacts-sort{align-self:flex-end}.contacts-list-head{display:none}.contact-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.contact-person{grid-column:1}.contact-type{grid-column:1;margin-left:42px}.contact-company,.contact-role{display:none}.contact-shortcuts{grid-column:2;grid-row:1 / span 2}.contact-detail{padding:14px}}

.contact-shortcuts a{min-width:32px;min-height:32px}.contact-shortcuts svg{width:18px;height:18px;display:block}

.contact-shortcuts button{position:relative;z-index:1;display:grid;place-items:center;width:32px;min-height:32px;padding:0;border:1px solid var(--line);border-radius:7px;color:var(--accent);background:var(--surface);cursor:pointer}.contact-shortcuts svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.contact-shortcuts button:hover{border-color:var(--accent)}.contact-shortcuts{flex-wrap:wrap}.sample-contact-notice{flex-basis:100%;font-size:10px;color:var(--muted)}.overview-contact-row{display:flex!important;align-items:center;justify-content:space-between;gap:10px}.overview-contact-row>div:first-child{display:grid!important;gap:4px;padding:0!important;border:0!important}.overview-contact-row .contact-shortcuts{display:flex!important;padding:0!important;border:0!important}.contact-detail-section>.contact-shortcuts{margin-top:12px}

.overview-contact-row{flex-wrap:wrap}.overview-contact-row>div:first-child{flex:1;min-width:110px}.overview-contact-row .contact-shortcuts{flex-shrink:0}.sample-contact-notice{grid-column:1/-1;flex-basis:100%;line-height:1.4}

.company-members-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.company-members-heading h3{margin-bottom:0}.company-members{display:grid;margin-top:10px}.company-members>button{display:grid;gap:4px;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;font-size:12px}.company-members small{color:var(--muted);font-size:10px}.company-members>button:hover strong{color:var(--accent)}

.contact-project-context{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px;color:var(--muted);font-size:12px}
