UNPKG

solid-panes

Version:

Solid-compatible Panes: applets and views for the mashlib and databrowser

805 lines (699 loc) 19.4 kB
.social-pane { display: block; background: var(--color-background, #F8F9FB); border-radius: var(--border-radius-base, 0.3125rem); overflow: visible; width: 100%; min-width: 100%; box-sizing: border-box; max-width: none; margin: 0; } .social-pane__header-section { background:white; } .social-pane__header { position: relative; width: 100%; } .social-pane__header-content { display: flex; align-items: flex-start; gap: var(--spacing-lg, 1.5625rem); padding: 1.5rem 1.5rem 0.5rem; } .social-pane__header-media { display: flex; flex: 0 0 180px; flex-direction: column; align-items: flex-start; width: 180px; gap: var(--spacing-base, 0.5rem); overflow: visible; border-radius: var(--border-radius-full, 0.625rem); } .social-pane__header-details { display: flex; flex: 1 1 auto; flex-direction: column; align-items: flex-start; gap: var(--spacing-xs, 0.75rem); min-width: 0; } .social-pane__header-summary { gap: var(--spacing-xs, 0.75rem); width: fit-content; max-width: 100%; } .social-pane__header-stats { display: flex; flex-wrap: wrap; gap: var(--spacing-xs, 0.75rem); justify-content: flex-start; align-self: flex-start; } .social-pane__header-stat { appearance: none; border: 0; background: transparent; cursor: pointer; color: var(--slate-700, #314158); font-size: var(--font-size-sm, 0.875rem); font-weight: var(--font-weight-bold, 600); line-height: var(--line-height-tight, 1.4); padding: 0; text-decoration: none; } .social-pane__header-stat + .social-pane__header-stat::before { content: '◆'; color: var(--gray-400, #99A1AF); font-size: 0.5rem; margin-right: var(--spacing-xs, 0.75rem); vertical-align: middle; } .social-pane__header-stat:hover .social-pane__header-stat-label { text-decoration: underline; } .social-pane__header-stat:focus-visible { outline: var(--border-width-medium, 2px) solid #111827; outline-offset: 2px; } .social-pane__edit-button { position: absolute; top: var(--spacing-xs, 0.75rem); right: var(--spacing-xs, 0.75rem); left: auto; z-index: 1; display: inline-flex; align-items: center; gap: 0.45rem; border: 0; background: transparent; color: var(--color-primary, #7C4DFF); padding: 0; font-size: var(--font-size-md, 1rem); font-weight: var(--font-weight-bold, 600); cursor: pointer; text-decoration: none; } .social-pane__edit-button:hover { text-decoration: underline; } .social-pane__edit-button:focus-visible { outline: var(--border-width-medium, 2px) solid var(--color-primary, #7C4DFF); outline-offset: 2px; } .social-pane__edit-button-icon { display: inline-flex; align-items: center; justify-content: center; line-height: 0; } .social-pane__edit-button-icon svg { width: var(--icon-xxs, 1rem); height: var(--icon-xs, 1rem); } .social-pane__edit-button-icon svg path { fill: currentColor; stroke: currentColor; } .social-pane__friend-action { position: absolute; top: var(--spacing-xs, 0.75rem); right: var(--spacing-xs, 0.75rem); z-index: 1; width: auto; min-width: 0; max-width: none; padding: var(--spacing-xxs, 0.3125rem) var(--spacing-xs, 0.75rem); gap: var(--spacing-xxs, 0.3125rem); border-radius: var(--border-radius-md, 0.5rem); border: 1px solid var(--color-primary, #7C4DFF); background: transparent; color: var(--color-primary, #7C4DFF); cursor: pointer; font: inherit; font-weight: var(--font-weight-bold, 600); } .social-pane__friend-action:hover { background: rgb(124 77 255 / 0.06); } .social-pane__friend-action:focus-visible { outline: var(--border-width-medium, 2px) solid var(--color-primary, #7C4DFF); outline-offset: 2px; } .social-pane__dialog-backdrop { position: fixed; inset: 0; z-index: 1000; padding: 1rem; background: rgb(15 23 42 / 0.45); } .social-pane__dialog { width: min(32rem, 100%); max-height: calc(100vh - 2rem); overflow: auto; border-radius: 1rem; background: var(--white, #fff); color: var(--color-text, #111827); padding: var(--spacing-md, 1.25rem); box-shadow: 0 20px 45px rgb(15 23 42 / 0.25); } .social-pane__dialog-header { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--spacing-md, 1rem); } .social-pane__dialog-title { margin: 0 0 var(--spacing-base, 0.5rem); } .social-pane__dialog-close { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; border: 0; background: transparent; color: var(--color-text-subheading, #6b7280); cursor: pointer; padding: 0; line-height: 0; } .social-pane__dialog-close:hover { color: var(--color-text-primary, #364153); } .social-pane__dialog-close:focus-visible { outline: var(--border-width-medium, 2px) solid var(--color-text-primary, #364153); outline-offset: 2px; } .social-pane__dialog-close svg { width: var(--icon-xxxs, 0.75rem); height: var(--icon-xxxs, 0.75rem); } .social-pane__dialog-close svg path { fill: currentColor; } .social-pane__dialog-hint { margin: 0 0 var(--spacing-base, 1rem); color: var(--color-text-secondary, #4A5565); } .social-pane__dialog-form { gap: var(--spacing-sm, 0.938rem); } .social-pane__dialog-field { gap: var(--spacing-xxs, 0.3125rem); } .social-pane__dialog-label { font-weight: var(--font-weight-bold, 600); } .social-pane__dialog-input { width: 100%; box-sizing: border-box; min-height: auto; resize: none; } .social-pane__dialog-error { min-height: 1.25rem; margin: 0; color: var(--color-warning, red); } .social-pane__dialog-actions { display: flex; justify-content: flex-end; gap: var(--spacing-xs, 0.75rem); } .social-pane__dialog-button { border-radius: var(--border-radius-lg, 0.75rem) !important; padding: var(--spacing-2xs, 0.625rem) 1rem; font: inherit; font-weight: var(--font-weight-bold, 600); cursor: pointer; } .social-pane__dialog-button:disabled { opacity: 0.6; cursor: wait; } .social-pane__header-name { color: var(--color-text-heading, #000); font-size: var(--font-size-xxl, 1.75rem); /* 28px */ font-weight: var(--font-weight-bold, 600); margin: 0; padding: 0; text-indent: 0; line-height: 1.2; text-align: left; transform: none; } .social-pane__header-location { display: inline-flex; align-items: center; gap: 0.45rem; color: var(--slate-700, #314158); font-size: var(--font-size-xs, 0.8125rem); font-weight: var(--font-weight-normal, 400); line-height: 1.3; } .social-pane__header-job-org { margin: 0; color: var(--color-text-subheading, #101828); font-size: var(--font-size-base, 1rem); font-weight: var(--font-weight-medium, 500); line-height: 1.25; text-align: left; } .social-pane__header-location-icon { line-height: 0; } .social-pane__header-location-icon svg { width: var(--icon-xxs, 1rem); height: var(--icon-xxs, 1rem); } .social-profile-links { display: grid; grid-template-columns: repeat(2, max-content); align-items: start; column-gap: 1rem; row-gap: 0.15rem; } .social-pane__header-hero { width: 140px; height: 140px; border-radius: var(--border-radius-full, 0.625rem); /* 10px */; border: var(--border-width-sm, 0.1rem) solid var(--color-primary, #7C4DFF); background: var(--gray-200, #E5E7EB) 50% / cover no-repeat; background-position: 50%; object-fit: cover; object-position: center; } .social-pane__header-hero-icon { width: 140px; height: 140px; border-radius: var(--border-radius-full, 0.625rem) !important; border: var(--border-width-sm, 0.1rem) solid var(--color-primary, #7C4DFF); background: var(--color-card-bg); line-height: 0; flex-shrink: 0; } .social-pane__header-hero-icon svg { display: block; width: 100%; height: 100%; } .social-pane .social-layout { display: flex; align-items: flex-start; gap: 1rem; width: 100%; } .social-pane .social-primary { flex: 1 1 70%; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto minmax(0, auto); gap: 0; align-items: start; } .social-pane .social-primary__tabs { grid-column: 1; grid-row: 1; display: flex; align-items: center; gap: var(--spacing-base, 0.5rem); padding: 0; background: transparent; width: fit-content; max-width: 100%; margin-bottom: 0; position: relative; z-index: 1; } .social-pane .social-primary__tab { appearance: none; -webkit-appearance: none; border: 0; border-bottom: var(--border-width-sm, 0.1rem) solid transparent; border-radius: 0; background: transparent; color: #374151; cursor: pointer; font: inherit; font-weight: var(--font-weight-bold, 600); padding: var(--spacing-2xs, 0.625rem) 1rem; box-shadow: none !important; transition: background-color 120ms ease, color 120ms ease, box-shadow 120ms ease; } .social-pane .social-primary__tab:hover { background: var(--lavender-300, #e6dcff) !important; color: var(--grey-purple-900, #332746); box-shadow: none !important; } .social-pane .social-primary__tab[aria-selected='true'] { background: transparent; color: var(--grey-purple-900, #332746); box-shadow: none !important; border-bottom-color: var(--color-primary, #7C4DFF); } .social-pane .social-primary__tab:focus-visible { outline: none; outline-offset: 2px; box-shadow: none !important; } .social-pane .social-primary__tab--active { background: transparent; color: var(--grey-purple-900, #332746); border-bottom-color: var(--color-primary, #7C4DFF); box-shadow: none !important; } .social-pane .social-primary__panel { grid-column: 1; grid-row: 2; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(0.35rem); transition: opacity 160ms ease, transform 160ms ease, visibility 0s linear 160ms; } .social-pane .social-primary__panel--active { opacity: 1; visibility: visible; pointer-events: auto; border: 0; border-bottom: var(--border-width-sm, 0.1rem) solid transparent; transition: opacity 180ms ease, transform 180ms ease; } .social-pane .social-pane__mutual-friends, .social-pane .social-pane__all-friends { margin-top: 0; padding-top: var(--spacing-xxxs, 0.2rem); } .social-pane .social-nav { display: block; width: 100%; background-color: var(--gray-200, #E5E7EB); background: transparent; padding: var(--spacing-base, 0.5rem); box-sizing: border-box; border-bottom-color: var(--color-primary, #7C4DFF); } .social-pane .social-toolbar { flex: 0 0 30%; min-width: 14rem; background-color: var(--gray-200, #E5E7EB); border: 0; padding: var(--spacing-base, 0.5rem); box-sizing: border-box; background: transparent; border-bottom-color: var(--color-primary, #7C4DFF); display: block; width: 100%; padding-top: 0; } .social-pane .social-main { display: table; background-color: var(--color-card-bg, #fff); color: var(--color-text-primary, #364153); border: 0; padding: 0; box-sizing: border-box; width: 100%; border-collapse: collapse; } .social-pane .social-main--mutual { gap: var(--spacing-xs, 0.75rem); margin-top: 1em; margin-bottom: 1em; padding: 1rem; border-radius: var(--border-radius-lg, 0.75rem); } .social-pane .social-mutual-summary { gap: var(--spacing-base, 0.5rem); } .social-pane .social-mutual-summary-line { color: var(--slate-700, #314158); font-size: var(--font-size-sm, 0.95rem); line-height: var(--line-height-base, 1.5); justify-content: flex-start; padding: 1rem; } .social-pane .social-mutual-summary-line--action { flex-wrap: wrap; gap: var(--spacing-xxs, 0.75rem); } .social-pane .social-mutual-confirm-prompt { display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--spacing-xxxs, 0.2rem); font-weight: var(--font-weight-semibold, 600); } .social-pane .social-pane__friend-action--inline { position: static; top: auto; right: auto; z-index: auto; align-self: flex-start; } .social-pane .social-mutual-checkbox-form { display: block; margin: 0; } .social-pane .social-mutual-checkbox-form label { display: inline-flex; align-items: center; gap: var(--spacing-2xs, 0.65rem); color: var(--slate-700, #374151); font-size: var(--font-size-sm, 0.875rem); line-height: 1.4; } .social-pane .social-mutual-checkbox-form input[type='checkbox'] { width: 1rem; height: 1rem; margin: 0; accent-color: var(--color-primary, #7C4DFF); } .social-pane .social-mutual-checkbox-form input[type='checkbox']:disabled { opacity: 0.65; cursor: not-allowed; } .social-pane .social-friends-list { width: 100%; margin-top: 0; } .social-pane .social-friends-grid { display: flex; flex-wrap: wrap; align-items: stretch; width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 0; gap: var(--spacing-xs, 0.75rem); } .social-pane .social-friends-grid > tr { display: inline-table; width: calc(50% - 0.375rem); table-layout: fixed; box-sizing: border-box; } .social-pane .social-friends-grid > tr, .social-pane .social-friend-card { border: 1px solid var(--gray-200, #E5E7EB); background: var(--white, #fff); border-radius: var(--border-radius-lg, 0.75rem); overflow: visible; box-shadow: 0 1px 3px rgb(0 0 0 / 0.08); transition: box-shadow 140ms ease, border-color 140ms ease, transform 140ms ease; } .social-pane .social-friends-grid > tr:hover, .social-pane .social-friend-card:hover { border-color: var(--gray-300, #D1D5DC); box-shadow: 0 6px 18px rgb(0 0 0 / 0.1); transform: translateY(-1px); } .social-pane .social-friends-grid > tr td, .social-pane .social-friend-card td { background: var(--color-background, #F8F9FB); } .social-pane .social-friends-grid td > div > div { min-width: 18rem !important; max-width: min(90vw, 26rem) !important; width: auto !important; white-space: normal !important; } .social-pane .social-friends-grid td > div > div button { white-space: normal !important; } /* change the style of the name / label in the friend card */ .social-pane .social-friends-grid > tr > td:nth-child(2) > div:first-child > span { display: inline-block; width: min(20rem, 100%); max-width: 100%; vertical-align: text-top; font-size: var(--font-size-lg, 1.125rem); /* 18px */ font-weight: var(--font-weight-bold, 600); /* new design uses 600 */ line-height: var(--line-height-tight); margin-top: 0; margin-bottom: var(--spacing-sm); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .social-pane .social-friend-pronouns { color: var(--color-text-secondary, #4A5565); font-size: var(--font-size-sm, 0.875rem); /* 14px */ font-weight: var(--font-weight-regular, 400); line-height: 1.2; text-align: center; } .social-pane .social-friend-job-org { margin: 0; width: 100%; white-space: normal; color: var(--color-text-subheading, #101828); font-size: var(--font-size-sm, 0.875rem); font-weight: var(--font-weight-medium, 500); line-height: 1.25; text-align: left; } .social-pane .social-friend-location { color: var(--color-text-secondary, #6b7280); font-size: var(--font-size-xs, 0.8125rem); line-height: 1.3; } .social-pane .social-friends-header { display: flex; align-items: center; justify-content: space-between; padding: 0 var(--spacing-xs, 0.75rem) var(--spacing-base, 0.5rem); background-color: var(--gray-100, #F3F4F6); caption-side: top; margin-top: 0; } .social-pane .social-friends-header-title { font-size: var(--font-size-md, 1rem); font-weight: var(--font-weight-bold, 600); color: var(--color-text-primary, #364153); } .social-pane .social-friends-header-actions { display: inline-flex; align-items: center; justify-content: flex-end; } .social-pane .social-friends-header-actions--standalone { display: flex; align-items: center; gap: var(--spacing-xs, 0.75rem); justify-content: flex-start; padding: 0.7rem 1rem 0; } .social-pane .social-friends-header-hint { color: var(--color-text-secondary, #4A5565); font-size: var(--font-size-sm, 0.875rem); line-height: 1.4; } .social-pane .social-friends-header-actions button { display: inline-flex; align-items: center; justify-content: center; width: 1.5rem !important; min-width: 1.5rem !important; height: 1.5rem !important; padding: 0.125rem !important; margin: 0 !important; border-width: 0 !important; } .social-pane .social-friends-header-actions button img { width: var(--icon-base, 2rem) !important; height: var(--icon-base, 2rem) !important; } .social-pane .social-nav h3 { margin-top: 0; padding-top: 0; border-top: 0; } /* From tabbedtab.css */ /* ***************** Social Pane **********/ div.social-pane { padding-top: 0; padding-bottom: 0; margin: 0; } .social-pane a { color: var(--color-primary, #7C4DFF); text-decoration: none; font-weight: bold; } .social-pane a:link { color: var(--color-primary, #7C4DFF); text-decoration: none; font-weight: bold; } .social-pane a:visited { color: var(--color-primary, #7C4DFF); text-decoration: none; font-weight: bold; } .social-pane a:hover { color: var(--color-primary, #7C4DFF); text-decoration: underline; font-weight: bold; } .social-pane a:active { color: var(--color-primary, #7C4DFF); text-decoration: none; } .social-pane__link-button { width: fit-content; max-width: 100%; display: inline-flex; white-space: nowrap; background-color: transparent; border: none; margin-top: 0; margin-bottom: 0; padding: var(--spacing-xxxs, 0.2rem) var(--spacing-base, 0.5rem); text-align: left; } .social-pane__link-button > a { display: inline-flex; white-space: nowrap; background-color: transparent; color: var(--color-primary, #7C4DFF); } .social-pane__link-button > a:link, .social-pane__link-button > a:visited, .social-pane__link-button > a:hover { color: var(--color-primary, #7C4DFF); } .social-pane__link-button > a:hover { text-decoration: underline; } @media (max-width: 600px) { .social-pane__header-content { flex-direction: column; align-items: flex-start; } .social-pane .social-layout, .social-pane .social-primary { display: block; } .social-pane .social-friends-grid { display: block; } .social-pane .social-friends-grid > tr { display: table; width: 100%; margin-bottom: var(--spacing-xs, 0.75rem); } .social-pane .social-friends-grid > tr:last-child { margin-bottom: 0; } .social-pane .social-nav, .social-pane .social-toolbar, .social-pane .social-content, .social-pane .social-main { width: 100%; } }