.mm-ticket-portal {
            display: grid;
            gap: clamp(1.25rem, 3vw, 2rem);
        }
        .mm-ticket-portal__panel,
        .mm-ticket-portal__ticket,
        .mm-ticket-portal__empty {
            border: 1px solid rgba(25, 35, 52, 0.13);
            border-radius: 8px;
            background: #fff;
            box-shadow: 0 16px 38px rgba(25, 35, 52, 0.07);
        }
        .mm-ticket-portal__panel,
        .mm-ticket-portal__empty {
            padding: clamp(1.2rem, 3vw, 2rem);
        }
        .mm-ticket-portal__panel h3,
        .mm-ticket-portal__ticket h3 {
            margin: 0 0 0.75rem;
            color: var(--mm-midnight, #192334);
            font-family: var(--mm-font-display, inherit);
            line-height: 1.2;
        }
        .mm-ticket-portal__panel p,
        .mm-ticket-portal__empty p,
        .mm-ticket-portal__ticket p {
            color: var(--mm-text-muted, #586174);
            line-height: 1.65;
        }
        .mm-ticket-portal__notice {
            margin: 0;
            padding: 0.9rem 1rem;
            border-radius: 8px;
            background: #e8f5e9;
            color: #1b6b34;
            font-weight: 700;
        }
        .mm-ticket-portal__notice--error {
            background: #fde7e9;
            color: #b42318;
        }
        .mm-ticket-portal__form {
            display: grid;
            gap: 1rem;
        }
        .mm-ticket-portal__form label {
            display: grid;
            gap: 0.45rem;
            color: var(--mm-midnight, #192334);
            font-weight: 700;
        }
        .mm-ticket-portal__form input,
        .mm-ticket-portal__form textarea {
            width: 100%;
            border: 1px solid rgba(25, 35, 52, 0.18);
            border-radius: 8px;
            padding: 0.85rem 0.95rem;
            background: #fff;
            color: var(--mm-midnight, #192334);
            font: inherit;
        }
        .mm-ticket-portal__form textarea {
            min-height: 150px;
            resize: vertical;
        }
        .mm-ticket-portal__submit {
            justify-self: start;
            border: 0;
            border-radius: 8px;
            padding: 0.85rem 1.2rem;
            background: var(--mm-coral, #ff6b4a);
            color: #fff;
            font-weight: 800;
            cursor: pointer;
        }
        .mm-ticket-portal__meta {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            margin: 0 0 1rem;
            padding: 0;
            list-style: none;
        }
        .mm-ticket-portal__meta li,
        .mm-ticket-portal__badge {
            border-radius: 999px;
            padding: 0.32rem 0.7rem;
            background: rgba(25, 35, 52, 0.07);
            color: var(--mm-midnight, #192334);
            font-size: 0.82rem;
            font-weight: 800;
        }
        .mm-ticket-portal__badge--new { background: #e7f5ff; color: #006ba1; }
        .mm-ticket-portal__badge--in_progress { background: #fff3cd; color: #7a5200; }
        .mm-ticket-portal__badge--waiting_on_client { background: #f3e8ff; color: #6b21a8; }
        .mm-ticket-portal__badge--resolved { background: #e8f5e9; color: #1b6b34; }
        .mm-ticket-portal__badge--closed { background: #f1f1f1; color: #50575e; }
        .mm-ticket-portal__ticket {
            overflow: hidden;
        }
        .mm-ticket-portal__ticket-header,
        .mm-ticket-portal__ticket-body,
        .mm-ticket-portal__ticket-actions {
            padding: clamp(1.1rem, 3vw, 1.6rem);
        }
        .mm-ticket-portal__ticket-header {
            border-bottom: 1px solid rgba(25, 35, 52, 0.1);
            background: #fffdfa;
        }
        .mm-ticket-portal__ticket-body {
            display: grid;
            gap: 1rem;
        }
        .mm-ticket-portal__ticket-actions {
            border-top: 1px solid rgba(25, 35, 52, 0.1);
            background: rgba(25, 35, 52, 0.03);
        }
        .mm-ticket-portal__thread {
            display: grid;
            gap: 0.8rem;
        }
        .mm-ticket-portal__reply {
            border-left: 4px solid #2271b1;
            border-radius: 8px;
            padding: 0.85rem 1rem;
            background: rgba(34, 113, 177, 0.07);
        }
        .mm-ticket-portal__reply--client {
            border-left-color: var(--mm-coral, #ff6b4a);
            background: rgba(255, 107, 74, 0.08);
        }
        .mm-ticket-portal__reply-meta {
            display: flex;
            justify-content: space-between;
            gap: 1rem;
            margin-bottom: 0.45rem;
            color: var(--mm-text-muted, #586174);
            font-size: 0.82rem;
            font-weight: 800;
        }
        .mm-ticket-portal__attachments {
            display: grid;
            gap: 0.45rem;
            margin: 0;
            padding: 0;
            list-style: none;
        }
        .mm-ticket-portal__attachments a {
            color: var(--mm-coral, #ff6b4a);
            font-weight: 800;
        }
        @media (max-width: 680px) {
            .mm-ticket-portal__reply-meta {
                display: grid;
                gap: 0.2rem;
            }
        }
