/*
 * Início — Acessos rápidos desktop | release 27297
 * Escopo isolado do card de rotina. Mobile permanece intocado.
 */
@layer mindz.module {
    @media (min-width: 960px) {
        .mindz-quick-access-host {
            min-width: 0;
            overflow: hidden;
        }

        .mindz-quick-access-card {
            display: flex;
            flex-direction: column;
            gap: 14px;
            width: 100%;
            height: 100%;
            min-width: 0;
            padding: 16px;
            border-radius: inherit;
            background:
                radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--primary) 9%, transparent), transparent 38%),
                linear-gradient(180deg, color-mix(in srgb, var(--surface) 97%, var(--primary) 3%), var(--surface));
            color: var(--text);
        }

        .mindz-quick-access-card__header {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 16px;
            min-width: 0;
        }

        .mindz-quick-access-card__heading {
            min-width: 0;
        }

        .mindz-quick-access-card__eyebrow,
        .mindz-favorites-dialog__eyebrow {
            display: block;
            margin-bottom: 3px;
            color: color-mix(in srgb, var(--primary) 76%, var(--text));
            font-size: 9px;
            font-weight: 760;
            letter-spacing: .085em;
            line-height: 1.2;
            text-transform: uppercase;
        }

        .mindz-quick-access-card__heading h3 {
            margin: 0;
            color: var(--text);
            font-size: 16px;
            font-weight: 720;
            letter-spacing: -.025em;
            line-height: 1.15;
        }

        .mindz-quick-access-card__heading p {
            margin: 4px 0 0;
            color: var(--text-muted);
            font-size: 10.5px;
            line-height: 1.3;
        }

        .mindz-quick-access-notifications {
            position: relative;
            display: flex;
            align-items: center;
            gap: 9px;
            flex: 0 0 auto;
            min-width: 146px;
            min-height: 44px;
            padding: 8px 12px;
            border: 1px solid color-mix(in srgb, var(--border) 84%, transparent);
            border-radius: 13px;
            background: color-mix(in srgb, var(--surface) 95%, var(--primary) 5%);
            color: var(--text);
            box-shadow: 0 5px 15px color-mix(in srgb, var(--shadow-color, #000) 6%, transparent);
            cursor: pointer;
            text-align: left;
            transition: border-color 150ms ease, background 150ms ease, box-shadow 150ms ease, transform 150ms ease;
        }

        .mindz-quick-access-notifications:hover {
            transform: translateY(-1px);
            border-color: color-mix(in srgb, var(--primary) 34%, var(--border));
            background: color-mix(in srgb, var(--surface) 91%, var(--primary) 9%);
            box-shadow: 0 9px 20px color-mix(in srgb, var(--shadow-color, #000) 8%, transparent);
        }

        .mindz-quick-access-notifications:focus-visible,
        .mindz-quick-access-item:focus-visible,
        .mindz-quick-access-add:focus-visible,
        .mindz-quick-access-more:focus-visible,
        .mindz-quick-access-empty:focus-visible,
        .mindz-favorites-option:focus-visible,
        .mindz-favorites-dialog button:focus-visible,
        .mindz-favorites-dialog input:focus-visible {
            outline: 2px solid color-mix(in srgb, var(--primary) 72%, white);
            outline-offset: 2px;
        }

        .mindz-quick-access-notifications__icon {
            display: inline-grid;
            place-items: center;
            width: 29px;
            height: 29px;
            flex: 0 0 29px;
            border-radius: 9px;
            background: color-mix(in srgb, var(--primary) 12%, transparent);
            color: var(--primary);
        }

        .mindz-quick-access-notifications__icon svg {
            width: 16px;
            height: 16px;
        }

        .mindz-quick-access-notifications__copy {
            display: grid;
            gap: 1px;
            min-width: 0;
        }

        .mindz-quick-access-notifications__copy strong {
            color: var(--text);
            font-size: 10px;
            font-weight: 680;
            line-height: 1.2;
        }

        .mindz-quick-access-notifications__copy small {
            color: var(--text-muted);
            font-size: 8.5px;
            line-height: 1.2;
        }

        .mindz-quick-access-notifications__badge {
            position: absolute;
            top: -6px;
            right: -5px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 20px;
            height: 20px;
            padding: 0 5px;
            border: 2px solid var(--surface);
            border-radius: 999px;
            background: var(--danger, #d92d20);
            color: #fff;
            font-size: 9px;
            font-weight: 760;
            line-height: 1;
            box-shadow: 0 3px 8px color-mix(in srgb, var(--danger, #d92d20) 24%, transparent);
        }

        .mindz-quick-access-notifications__badge[hidden] {
            display: none !important;
        }

        .mindz-quick-access-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 8px;
            min-width: 0;
            align-content: start;
        }

        .mindz-quick-access-item,
        .mindz-quick-access-add,
        .mindz-quick-access-more,
        .mindz-quick-access-empty {
            min-width: 0;
            min-height: 54px;
            border: 1px solid color-mix(in srgb, var(--border) 83%, transparent);
            border-radius: 13px;
            background: color-mix(in srgb, var(--surface) 98%, var(--primary) 2%);
            color: var(--text);
            box-shadow: 0 3px 10px color-mix(in srgb, var(--shadow-color, #000) 3.5%, transparent);
            transition: border-color 145ms ease, background 145ms ease, box-shadow 145ms ease, transform 145ms ease;
        }

        .mindz-quick-access-item,
        .mindz-quick-access-add {
            display: flex;
            align-items: center;
            gap: 9px;
            padding: 9px 10px;
            text-align: left;
            text-decoration: none;
        }

        .mindz-quick-access-item:hover,
        .mindz-quick-access-add:hover,
        .mindz-quick-access-more:hover,
        .mindz-quick-access-empty:hover {
            transform: translateY(-1px);
            border-color: color-mix(in srgb, var(--primary) 32%, var(--border));
            background: color-mix(in srgb, var(--surface) 94%, var(--primary) 6%);
            box-shadow: 0 7px 16px color-mix(in srgb, var(--shadow-color, #000) 6%, transparent);
        }

        .mindz-quick-access-item__icon,
        .mindz-quick-access-add__icon {
            display: inline-grid;
            place-items: center;
            width: 31px;
            height: 31px;
            flex: 0 0 31px;
            border-radius: 10px;
            background: color-mix(in srgb, var(--primary) 10%, transparent);
            color: var(--primary);
        }

        .mindz-quick-access-item__icon svg {
            width: 16px;
            height: 16px;
        }

        .mindz-quick-access-add__icon {
            border: 1px dashed color-mix(in srgb, var(--primary) 42%, var(--border));
            background: color-mix(in srgb, var(--primary) 5%, transparent);
            font-size: 20px;
            font-weight: 400;
        }

        .mindz-quick-access-item__copy,
        .mindz-quick-access-add > span:last-child {
            display: grid;
            gap: 2px;
            min-width: 0;
            flex: 1 1 auto;
        }

        .mindz-quick-access-item__copy strong,
        .mindz-quick-access-add strong {
            overflow: hidden;
            color: var(--text);
            font-size: 10px;
            font-weight: 660;
            line-height: 1.18;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .mindz-quick-access-item__copy small,
        .mindz-quick-access-add small {
            overflow: hidden;
            color: var(--text-muted);
            font-size: 8px;
            line-height: 1.15;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .mindz-quick-access-item__arrow {
            flex: 0 0 auto;
            color: var(--text-muted);
            font-size: 11px;
            opacity: .72;
        }

        .mindz-quick-access-add,
        .mindz-quick-access-more,
        .mindz-quick-access-empty {
            cursor: pointer;
        }

        .mindz-quick-access-more {
            display: grid;
            place-content: center;
            gap: 1px;
            padding: 7px;
            text-align: center;
        }

        .mindz-quick-access-more strong {
            color: var(--primary);
            font-size: 15px;
            font-weight: 760;
            line-height: 1;
        }

        .mindz-quick-access-more span {
            color: var(--text-muted);
            font-size: 8px;
        }

        .mindz-quick-access-empty {
            grid-column: span 2;
            display: flex;
            align-items: center;
            gap: 11px;
            padding: 10px 12px;
            text-align: left;
        }

        .mindz-quick-access-empty__icon {
            display: inline-grid;
            place-items: center;
            width: 34px;
            height: 34px;
            flex: 0 0 34px;
            border-radius: 11px;
            background: color-mix(in srgb, var(--primary) 8%, transparent);
            color: var(--primary);
            font-size: 20px;
        }

        .mindz-quick-access-empty > span:last-child {
            display: grid;
            gap: 2px;
        }

        .mindz-quick-access-empty strong {
            font-size: 10.5px;
            font-weight: 670;
        }

        .mindz-quick-access-empty small {
            color: var(--text-muted);
            font-size: 8.5px;
            line-height: 1.25;
        }

        /* Dialog isolado, usando tokens globais do MindZ. */
        .mindz-favorites-dialog {
            width: min(680px, calc(100vw - 40px));
            max-width: 680px;
            max-height: min(760px, calc(100vh - 48px));
            padding: 0;
            border: 0;
            border-radius: 20px;
            background: transparent;
            color: var(--text);
            overflow: visible;
        }

        .mindz-favorites-dialog::backdrop {
            background: rgb(15 23 42 / .42);
            backdrop-filter: blur(4px);
        }

        .mindz-favorites-dialog__surface {
            display: flex;
            flex-direction: column;
            max-height: min(760px, calc(100vh - 48px));
            padding: 20px;
            border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
            border-radius: 20px;
            background: var(--surface);
            box-shadow: 0 24px 70px rgb(15 23 42 / .2);
            overflow: hidden;
        }

        .mindz-favorites-dialog__header {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 18px;
        }

        .mindz-favorites-dialog__header h2 {
            margin: 0;
            color: var(--text);
            font-size: 19px;
            font-weight: 720;
            letter-spacing: -.025em;
            line-height: 1.15;
        }

        .mindz-favorites-dialog__header p {
            max-width: 510px;
            margin: 5px 0 0;
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.4;
        }

        .mindz-favorites-dialog__close {
            display: inline-grid;
            place-items: center;
            width: 34px;
            height: 34px;
            flex: 0 0 34px;
            border: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
            border-radius: 10px;
            background: var(--surface);
            color: var(--text-muted);
            font-size: 22px;
            line-height: 1;
            cursor: pointer;
        }

        .mindz-favorites-dialog__search-wrap {
            display: flex;
            align-items: center;
            gap: 9px;
            margin-top: 16px;
            padding: 0 12px;
            border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
            border-radius: 12px;
            background: color-mix(in srgb, var(--surface) 97%, var(--primary) 3%);
        }

        .mindz-favorites-dialog__search-wrap svg {
            width: 16px;
            height: 16px;
            flex: 0 0 16px;
            color: var(--text-muted);
        }

        .mindz-favorites-dialog__search-wrap input {
            width: 100%;
            min-width: 0;
            height: 40px;
            border: 0;
            outline: 0;
            background: transparent;
            color: var(--text);
            font: inherit;
            font-size: 11px;
        }

        .mindz-favorites-dialog__meta {
            margin: 10px 2px 7px;
            color: var(--text-muted);
            font-size: 9px;
            font-weight: 550;
        }

        .mindz-favorites-dialog__meta span {
            color: var(--text);
            font-weight: 720;
        }

        .mindz-favorites-dialog__list {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 7px;
            min-height: 0;
            padding: 2px 2px 10px;
            overflow-y: auto;
            overscroll-behavior: contain;
            scrollbar-width: thin;
        }

        .mindz-favorites-option {
            display: flex;
            align-items: center;
            gap: 9px;
            min-width: 0;
            min-height: 50px;
            padding: 8px 9px;
            border: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
            border-radius: 12px;
            background: var(--surface);
            color: var(--text);
            cursor: pointer;
            text-align: left;
            transition: border-color 130ms ease, background 130ms ease, transform 130ms ease;
        }

        .mindz-favorites-option:hover {
            transform: translateY(-1px);
            border-color: color-mix(in srgb, var(--primary) 30%, var(--border));
        }

        .mindz-favorites-option.is-selected {
            border-color: color-mix(in srgb, var(--primary) 42%, var(--border));
            background: color-mix(in srgb, var(--surface) 93%, var(--primary) 7%);
        }

        .mindz-favorites-option__icon {
            display: inline-grid;
            place-items: center;
            width: 30px;
            height: 30px;
            flex: 0 0 30px;
            border-radius: 9px;
            background: color-mix(in srgb, var(--primary) 9%, transparent);
            color: var(--primary);
        }

        .mindz-favorites-option__icon svg {
            width: 15px;
            height: 15px;
        }

        .mindz-favorites-option__copy {
            display: grid;
            gap: 2px;
            min-width: 0;
            flex: 1 1 auto;
        }

        .mindz-favorites-option__copy strong,
        .mindz-favorites-option__copy small {
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .mindz-favorites-option__copy strong {
            font-size: 10px;
            font-weight: 650;
        }

        .mindz-favorites-option__copy small {
            color: var(--text-muted);
            font-size: 8px;
        }

        .mindz-favorites-option__check {
            display: inline-grid;
            place-items: center;
            width: 24px;
            height: 24px;
            flex: 0 0 24px;
            border-radius: 8px;
            background: color-mix(in srgb, var(--border) 50%, transparent);
            color: var(--text-muted);
            font-size: 13px;
            font-weight: 700;
        }

        .mindz-favorites-option.is-selected .mindz-favorites-option__check {
            background: color-mix(in srgb, var(--primary) 14%, transparent);
            color: var(--primary);
        }

        .mindz-favorites-dialog__empty {
            padding: 34px 16px;
            color: var(--text-muted);
            font-size: 11px;
            text-align: center;
        }

        .mindz-favorites-dialog__footer {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 8px;
            padding-top: 12px;
            border-top: 1px solid color-mix(in srgb, var(--border) 70%, transparent);
        }

        .mindz-favorites-dialog__secondary,
        .mindz-favorites-dialog__primary {
            min-height: 36px;
            padding: 0 14px;
            border-radius: 10px;
            font-size: 10px;
            font-weight: 650;
            cursor: pointer;
        }

        .mindz-favorites-dialog__secondary {
            border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
            background: var(--surface);
            color: var(--text);
        }

        .mindz-favorites-dialog__primary {
            border: 1px solid color-mix(in srgb, var(--primary) 76%, black);
            background: var(--primary);
            color: var(--on-primary, #fff);
            box-shadow: 0 5px 14px color-mix(in srgb, var(--primary) 22%, transparent);
        }

        .mindz-favorites-dialog__primary:disabled {
            cursor: wait;
            opacity: .66;
        }
    }

    @media (min-width: 960px) and (max-width: 1180px) {
        .mindz-quick-access-card {
            padding: 13px;
            gap: 11px;
        }

        .mindz-quick-access-card__header {
            gap: 10px;
        }

        .mindz-quick-access-card__heading p {
            display: none;
        }

        .mindz-quick-access-notifications {
            min-width: 128px;
            min-height: 40px;
            padding: 6px 9px;
        }

        .mindz-quick-access-grid {
            gap: 6px;
        }

        .mindz-quick-access-item,
        .mindz-quick-access-add,
        .mindz-quick-access-more,
        .mindz-quick-access-empty {
            min-height: 49px;
        }

        .mindz-quick-access-item,
        .mindz-quick-access-add {
            gap: 7px;
            padding: 7px 8px;
        }

        .mindz-quick-access-item__icon,
        .mindz-quick-access-add__icon {
            width: 28px;
            height: 28px;
            flex-basis: 28px;
        }
    }
}
