.zlix-notification-tabs {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.zlix-notification-tab-list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 12px;
}

.zlix-notification-tab {
    appearance: none;
    border: 1px solid rgba(28, 72, 88, 0.22);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.34);
    color: inherit;
    cursor: pointer;
    font: inherit;
    font-weight: 700;
    line-height: 1.2;
    padding: 8px 14px;
}

.zlix-notification-tab:hover {
    background: rgba(255, 255, 255, 0.55);
}

.zlix-notification-tab.is-active {
    border-color: currentColor;
    background: rgba(255, 255, 255, 0.68);
}

.zlix-notification-view-panel {
    position: static;
    inset: auto;
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.zlix-notification-view-panel[hidden] {
    display: none !important;
}

.zlix-notification-preferences {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.zlix-notification-preferences,
.zlix-notification-preferences * {
    box-sizing: border-box;
}

.zlix-notification-preferences-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.zlix-notification-preferences-head h3 {
    margin: 0 0 4px;
}

.zlix-notification-preferences-head p {
    margin: 0;
    opacity: 0.78;
}

.zlix-notification-preference-group {
    border: 1px solid rgba(28, 72, 88, 0.15);
    border-radius: 12px;
    margin-top: 12px;
    overflow: hidden;
}

.zlix-notification-preference-group > h4 {
    margin: 0;
    padding: 12px 14px;
    border-bottom: 1px solid rgba(28, 72, 88, 0.12);
}

.zlix-notification-preference-table-wrap {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
}

.zlix-notification-preference-table {
    width: 100%;
    min-width: 620px;
    border-collapse: collapse;
}

.zlix-notification-preference-table th,
.zlix-notification-preference-table td {
    padding: 11px 14px;
    text-align: left;
    vertical-align: middle;
    border-bottom: 1px solid rgba(28, 72, 88, 0.1);
}

.zlix-notification-preference-table th {
    font-size: 0.84rem;
    text-transform: uppercase;
    letter-spacing: 0.035em;
    opacity: 0.78;
}

.zlix-notification-preference-table tbody tr:last-child td {
    border-bottom: 0;
}

.zlix-notification-preference-event {
    width: 60%;
    min-width: 280px;
}

.zlix-notification-preference-event strong {
    display: block;
    margin-bottom: 3px;
}

.zlix-notification-preference-event span {
    display: block;
    font-size: 0.9rem;
    opacity: 0.72;
    line-height: 1.35;
}

.zlix-notification-preference-channel {
    min-width: 145px;
}

.zlix-notification-preference-required,
.zlix-notification-preference-fixed,
.zlix-notification-preference-na {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    border-radius: 999px;
    padding: 4px 9px;
    font-size: 0.86rem;
    font-weight: 700;
}

.zlix-notification-preference-required {
    border: 1px solid rgba(28, 72, 88, 0.2);
    background: rgba(255, 255, 255, 0.42);
}

.zlix-notification-preference-fixed,
.zlix-notification-preference-na {
    opacity: 0.72;
}

.zlix-notification-preference-select {
    width: 100%;
    min-width: 138px;
    max-width: 190px;
    min-height: 34px;
    border: 1px solid rgba(28, 72, 88, 0.22);
    border-radius: 7px;
    background: rgba(255, 255, 255, 0.68);
    color: inherit;
    font: inherit;
    padding: 5px 8px;
}

.zlix-notification-preference-select:disabled {
    cursor: wait;
    opacity: 0.65;
}

.zlix-notification-preferences-note {
    margin: 12px 2px 0;
    font-size: 0.9rem;
    opacity: 0.72;
}

.zlix-notification-preference-status {
    margin: 10px 0;
    border: 1px solid rgba(28, 72, 88, 0.18);
    border-radius: 8px;
    padding: 9px 11px;
}

.zlix-notification-preference-status.is-success {
    font-weight: 700;
}

.zlix-notification-preference-status.is-error,
.zlix-notification-preferences-error {
    font-weight: 700;
}

.zlix-notification-preferences-loading,
.zlix-notification-preferences-empty,
.zlix-notification-preferences-error {
    border: 1px solid rgba(28, 72, 88, 0.14);
    border-radius: 10px;
    padding: 14px;
}

@media (max-width: 640px) {
    .zlix-notification-tab-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .zlix-notification-tab {
        width: 100%;
    }

    .zlix-notification-preferences-head {
        display: block;
    }
}
