.team-layout { display:grid; grid-template-columns:minmax(260px, 340px) minmax(0, 1fr); gap:20px; align-items:start; }
.team-invite { padding:24px; }
.team-section-title { display:flex; align-items:flex-start; gap:12px; margin-bottom:24px; }
.team-section-title h2,.team-people h2 { font-size:16px; margin:0; }
.team-section-title p { font-size:13px; color:var(--ink-soft); margin-top:4px; }
.team-symbol { display:grid; place-items:center; width:36px; height:36px; border-radius:11px; background:var(--surface); color:var(--ink-soft); font-size:24px; flex:none; }
.team-form .field { margin-bottom:16px; }
.team-form input,.team-form select { width:100%; height:42px; }
.team-submit { width:100%; margin-top:8px; }
.team-permission { padding:12px; background:var(--surface); color:var(--ink-soft); border-radius:10px; font-size:13px; line-height:1.6; }
.team-permission strong { color:var(--ink); font-weight:600; }
.team-note { font-size:12px; line-height:1.6; margin-top:12px; color:var(--ink-soft); }
.team-message { font-size:13px; color:var(--ok); line-height:1.6; margin-top:12px; overflow-wrap:anywhere; }
.team-message:empty { display:none; }
.team-message.is-error { color:var(--danger); }
.team-link { margin-top:16px; }
.team-link[hidden] { display:none; }
.team-link label { font-size:12px; font-weight:600; }
.team-link>div { display:flex; gap:6px; margin:6px 0; flex-wrap:wrap; }
.team-link input { width:100%; font-size:12px; }
.team-link small { color:var(--ink-soft); font-size:12px; }
.team-people { overflow:hidden; }
.team-people__head { display:flex; align-items:center; gap:10px; padding:22px 24px; }
.team-count { color:var(--ink-soft); font-size:12px; background:var(--surface); border-radius:6px; padding:2px 7px; }
.team-person { display:flex; gap:12px; align-items:center; padding:18px 24px; border-top:1px solid var(--rule-light); flex-wrap:wrap; }
.team-avatar { display:grid; place-items:center; height:38px; width:38px; flex:none; background:var(--surface-2); color:var(--ink-soft); border-radius:50%; font-size:12px; font-weight:600; }
.team-avatar--pending { background:var(--surface); font-size:20px; }
.team-person__info { flex:1; min-width:120px; overflow-wrap:anywhere; }
.team-person__info strong { display:block; font-size:13.5px; font-weight:600; }
.team-person__info small { display:block; font-size:12px; color:var(--ink-soft); margin-top:4px; }
.team-role,.team-pending-label { font-size:12px; color:var(--ink-soft); }
.team-role { background:var(--surface); padding:4px 8px; border-radius:6px; }
.team-row-actions { display:flex; gap:6px; flex-wrap:wrap; }
.team-person .btn { font-size:12px; height:32px; padding:0 10px; }
.team-empty { padding:10px 24px 24px; font-size:13px; color:var(--ink-soft); line-height:1.7; }
.team-pending:not(:empty) { border-top:1px solid var(--rule-light); }
.team-dialog { border:1px solid var(--rule-light); padding:28px; width:min(440px, calc(100% - 32px)); border-radius:20px; margin:auto; box-shadow:var(--shadow-lift); color:var(--ink); background:var(--white); }
.team-dialog::backdrop { background:rgba(17,16,20,.35); }
.team-dialog h2 { font-size:20px; margin-bottom:12px; }
.team-dialog p { color:var(--ink-soft); font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.team-dialog__actions { display:flex; gap:8px; justify-content:flex-end; margin-top:24px; }
@media(max-width:1000px) { .team-layout { grid-template-columns:1fr; } .team-form { display:flex; align-items:end; gap:12px; flex-wrap:wrap; } .team-form .field { flex:1; min-width:180px; margin:0; } .team-submit { width:auto; } .team-permission { flex-basis:100%; } }
@media(max-width:540px) { .team-form { display:block; } .team-form .field { margin-bottom:12px; } .team-submit { width:100%; } .team-person { padding:16px; } .team-row-actions { width:100%; padding-left:50px; } .team-dialog__actions { flex-wrap:wrap; } }
.team-dialog .field { margin:12px 0; display:flex; flex-direction:column; gap:6px; }
.team-dialog .field label { font-size:12px; font-weight:600; }
.team-dialog__choice { border:0; padding:0; margin:8px 0 4px; display:flex; flex-direction:column; gap:6px; font-size:13px; }
.team-dialog__choice legend { font-size:12px; font-weight:600; margin-bottom:4px; }
.team-dialog__choice label { display:flex; gap:8px; align-items:center; }
