.cdsp-presence {
margin: 1.5rem 0;
padding: 1.1rem 1.2rem;
border-radius: 14px;
background: rgba(252, 232, 240, 0.35);
border: 1px solid rgba(30, 58, 95, 0.08);
}
.cdsp-presence__title {
margin: 0 0 0.5rem;
font-size: 1.1rem;
font-weight: 700;
color: var(--cdsp-navy, #1e3a5f);
}
.cdsp-presence__intro {
margin: 0 0 1rem;
font-size: 0.92rem;
line-height: 1.5;
color: var(--cdsp-muted, #475569);
}
.cdsp-presence__hint {
margin: 0;
font-size: 0.9rem;
line-height: 1.45;
color: var(--cdsp-muted, #475569);
}
.cdsp-presence--guest .cdsp-presence__actions {
margin-top: 0.25rem;
}
.cdsp-presence__notice {
margin: 0 0 0.75rem;
padding: 0.5rem 0.75rem;
border-radius: 10px;
background: #fff;
font-size: 0.9rem;
}
.cdsp-presence__notice[hidden] {
display: none;
}
.cdsp-presence__visibility {
margin: 1rem 0 0;
padding: 0;
border: none;
}
.cdsp-presence__visibility--collapsed {
display: none;
}
.cdsp-presence__visibility[hidden],
.cdsp-presence__visibility--collapsed[hidden] {
display: none !important;
}
.cdsp-presence--choosing-visibility.cdsp-presence-compact {
display: flex;
flex-direction: column;
align-items: stretch;
width: 100%;
max-width: 100%;
padding: 0.65rem 0.75rem;
border-radius: 10px;
background: rgba(252, 232, 240, 0.35);
border: 1px solid rgba(30, 58, 95, 0.08);
}
.cdsp-presence__visibility-legend {
display: block;
margin: 0 0 0.55rem;
padding: 0;
font-size: 0.9rem;
font-weight: 600;
color: var(--cdsp-navy, #1e3a5f);
}
.cdsp-presence__visibility-option {
display: flex;
gap: 0.45rem;
align-items: flex-start;
margin-bottom: 0.55rem;
font-size: 0.88rem;
cursor: pointer;
}
.cdsp-presence__visibility-option input {
margin-top: 0.2rem;
flex: 0 0 auto;
}
.cdsp-presence__visibility-text {
line-height: 1.45;
color: var(--cdsp-muted, #475569);
}
.cdsp-presence__visibility label {
display: block;
margin-bottom: 0.5rem;
font-size: 0.88rem;
cursor: pointer;
}
.cdsp-presence__link {
margin: 1rem 0 0;
font-size: 0.9rem;
}
.cdsp-crossed-list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 1rem;
}
.cdsp-crossed-card {
display: flex;
gap: 0.85rem;
align-items: flex-start;
padding: 0.85rem 1rem;
border-radius: 14px;
background: #fff;
border: 1px solid rgba(30, 58, 95, 0.08);
box-shadow: 0 2px 10px rgba(30, 58, 95, 0.04);
}
.cdsp-crossed-card__avatar {
border-radius: 50%;
flex-shrink: 0;
object-fit: cover;
}
.cdsp-crossed-card__name {
margin: 0 0 0.25rem;
font-weight: 700;
font-size: 1rem;
}
.cdsp-crossed-card__styles {
margin: 0 0 0.65rem;
font-size: 0.85rem;
color: var(--cdsp-muted, #475569);
}
.cdsp-btn--sm {
padding: 0.5rem 1rem;
font-size: 0.88rem;
min-height: 44px;
}
@media (max-width: 480px) {
.cdsp-crossed-card {
flex-direction: column;
align-items: stretch;
}
} .cdsp-presence--loading {
position: relative;
pointer-events: none;
opacity: 0.85;
}
.cdsp-presence--loading::after {
content: '';
position: absolute;
inset: 0;
background: rgba(255, 255, 255, 0.45);
border-radius: inherit;
}
.cdsp-presence__actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 0.5rem 0.75rem;
}
.cdsp-presence__state--on {
font-size: 0.88rem;
font-weight: 600;
color: var(--cdsp-navy, #1e3a5f);
}
.cdsp-presence__state--on::before {
content: '✓ ';
font-weight: 700;
}
.cdsp-notice--err {
color: #9b1c31;
}
.cdsp-notice--ok {
color: #1e5a3a;
} .cdsp-presence-compact {
display: inline-flex;
flex-wrap: wrap;
align-items: center;
gap: 0.35rem 0.5rem;
margin: 0.5rem 0 0;
padding: 0;
background: transparent;
border: none;
}
.cdsp-presence__lock-icon {
margin-right: 0.25rem;
font-size: 0.92em;
line-height: 1;
}
.cdsp-presence__checkin--disabled .cdsp-presence__lock-icon {
opacity: 0.85;
}
.cdsp-presence-compact.cdsp-presence--active .cdsp-presence__checkin {
display: none;
}
.cdsp-presence-compact.cdsp-presence--active .cdsp-presence__withdraw {
display: inline-flex;
}
.cdsp-presence__checkin--disabled,
.cdsp-presence__checkin:disabled {
opacity: 0.55;
cursor: not-allowed;
pointer-events: none;
filter: grayscale(0.15);
}
.cdsp-presence__checkin-disabled-wrap {
display: inline-flex;
align-items: center;
gap: 0.35rem;
flex-wrap: wrap;
}
.cdsp-presence__help-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 1.25rem;
height: 1.25rem;
border-radius: 50%;
font-size: 0.78rem;
line-height: 1;
color: var(--cdsp-muted, #475569);
background: rgba(30, 58, 95, 0.08);
cursor: help;
}
.cdsp-presence__micro-help {
flex: 1 1 100%;
margin: 0.35rem 0 0;
font-size: 0.78rem;
line-height: 1.4;
color: var(--cdsp-muted, #475569);
}
.cdsp-presence__micro-help--unavailable {
font-style: normal;
}
.cdsp-presence-compact .cdsp-presence__micro-help {
font-size: 0.74rem;
}
.cdsp-presence--ui-future .cdsp-presence__micro-help,
.cdsp-presence--ui-unavailable .cdsp-presence__micro-help {
max-width: 22rem;
}
.cd-event-modal-actions .cdsp-presence__micro-help {
font-size: 0.8rem;
margin-top: 0.45rem;
}
.cdsp-presence-compact__btn {
padding: 0.35rem 0.65rem;
font-size: 0.82rem;
min-height: 36px;
line-height: 1.2;
}
.cdsp-presence-compact .cdsp-presence__state {
font-size: 0.82rem;
}
.cdsp-presence-compact__notice {
width: 100%;
margin: 0.25rem 0 0;
font-size: 0.8rem;
}
.mec-event-footer .cdsp-presence-compact,
.mec-event-detail .cdsp-presence-compact,
.mec-monthly-contents .cdsp-presence-compact {
margin-top: 0.35rem;
}
.cdsp-presence-compact-toast {
position: fixed;
right: 1rem;
bottom: 1rem;
z-index: 100050;
max-width: min(22rem, calc(100vw - 2rem));
padding: 0.85rem 1rem;
border-radius: 10px;
background: rgba(255, 255, 255, 0.98);
border: 1px solid rgba(92, 61, 122, 0.18);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}
.cdsp-presence-compact-toast__text {
margin: 0 0 0.55rem;
font-size: 0.88rem;
line-height: 1.45;
}
.cdsp-presence-compact-toast__link {
font-size: 0.86rem;
font-weight: 600;
text-decoration: underline;
}