.teams-vue{--accent: #0151a7;--accent-hover: #0161c7;--ink: #1c2026;--ink-2: #25282d;--muted: #6b7280;--muted-2: #596375;--border: #e6e9f0;--border-soft: #eef1f5;--card: #ffffff;--ok-bg: #e7f6ec;--ok-fg: #1f8a4c;--off-bg: #eef1f6;--off-fg: #6a7488;--font: "Montserrat", -apple-system, "Segoe UI", sans-serif;font-family:var(--font);color:var(--ink-2);padding-bottom:48px}.teams-vue *{box-sizing:border-box}.teams-vue .tv-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px}.teams-vue .tv-head__title{margin:0;font-size:26px;font-weight:700;color:var(--ink);line-height:1.2}.teams-vue .tv-head__sub{margin:6px 0 0;font-size:13.5px;color:var(--muted)}.teams-vue .tv-head__sub b{color:var(--ink-2);font-weight:600}.teams-vue .tv-create{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border:none;border-radius:12px;background:var(--accent);color:#fff;font-family:var(--font);font-size:14px;font-weight:600;cursor:pointer;transition:background-color .14s ease}.teams-vue .tv-create svg{width:17px;height:17px}.teams-vue .tv-create:hover{background:var(--accent-hover)}.teams-vue .tv-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}.teams-vue .tv-search{position:relative;flex:1 1 280px;min-width:220px}.teams-vue .tv-search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:#9aa3b2;pointer-events:none}.teams-vue .tv-search input{width:100%;height:44px;padding:0 14px 0 40px;border:1px solid var(--border);border-radius:12px;background:#fff;font-family:var(--font);font-size:14px;color:var(--ink-2);outline:none;transition:border-color .14s ease}.teams-vue .tv-search input::placeholder{color:#aeb5c2}.teams-vue .tv-search input:focus{border-color:var(--accent)}.teams-vue .tv-tabs{display:inline-flex;padding:4px;border:1px solid var(--border);border-radius:12px;background:#f4f6fa}.teams-vue .tv-tabs button{border:none;background:none;padding:8px 16px;border-radius:9px;font-family:var(--font);font-size:13px;font-weight:600;color:var(--muted-2);cursor:pointer;transition:background-color .14s ease,color .14s ease}.teams-vue .tv-tabs button.is-active{background:#fff;color:var(--accent);box-shadow:0 1px 3px #0f172a1a}.teams-vue .tv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.teams-vue .tcard{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:18px;background:var(--card);overflow:hidden;text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.teams-vue .tcard:hover{transform:translateY(-3px);border-color:#d3dcec;box-shadow:0 14px 30px #0f172a1a}.teams-vue .tcard:hover .tcard__go{color:var(--accent)}.teams-vue .tcard:hover .tcard__logo img{transform:scale(1.04)}.teams-vue .tcard__logo{position:relative;height:150px;background:linear-gradient(135deg,#f3f6fb,#e9eef7);display:flex;align-items:center;justify-content:center;overflow:hidden}.teams-vue .tcard__logo img{width:96px;height:96px;object-fit:cover;border-radius:16px;background:#fff;box-shadow:0 4px 14px #0f172a1a;transition:transform .2s ease}.teams-vue .tcard__off{position:absolute;top:10px;right:10px;padding:3px 9px;border-radius:999px;background:var(--off-bg);color:var(--off-fg);font-size:11px;font-weight:600}.teams-vue .tcard__body{padding:14px 16px 6px;flex:1 1 auto}.teams-vue .tcard__name{font-size:16px;font-weight:700;color:var(--ink);line-height:1.3;word-break:break-word}.teams-vue .tcard__slogan{margin-top:5px;font-size:12.5px;color:var(--muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.teams-vue .tcard__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;margin-top:8px;border-top:1px solid var(--border-soft)}.teams-vue .tcard__members{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--muted-2)}.teams-vue .tcard__members svg{width:16px;height:16px;color:#9aa3b2}.teams-vue .tcard__go{font-size:12.5px;font-weight:600;color:var(--muted);transition:color .14s ease}.teams-vue .tv-empty{padding:48px 20px;text-align:center;border:1px dashed var(--border);border-radius:16px;background:#fafbfc;color:var(--muted);font-size:14px}@media (max-width: 560px){.teams-vue .tv-head__title{font-size:22px}.teams-vue .tv-create{width:100%;justify-content:center}.teams-vue .tv-tabs{width:100%}.teams-vue .tv-tabs button{flex:1}}
