.mm-cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:99990;background:#1e293b;color:#f1f5f9;padding:20px 0;box-shadow:0 -4px 24px rgba(0,0,0,0.25);transform:translateY(100%);transition:transform 0.4s cubic-bezier(0.4,0,0.2,1)}.mm-cookie-banner.is-visible{transform:translateY(0)}.mm-cookie-banner__inner{display:flex;flex-wrap:wrap;align-items:flex-start;gap:20px;max-width:1200px;margin:0 auto;padding:0 20px}.mm-cookie-banner__text{flex:1 1 320px}.mm-cookie-banner__text h3{margin:0 0 6px;font-size:15px;font-weight:700;color:#f8fafc}.mm-cookie-banner__text p{margin:0;font-size:13px;color:#94a3b8;line-height:1.6}.mm-cookie-banner__text a{color:#93c5fd;text-decoration:underline}.mm-cookie-banner__categories{flex:1 1 280px;display:flex;flex-direction:column;gap:8px}.mm-cookie-category{display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:8px;padding:8px 12px;font-size:13px}.mm-cookie-category__label{display:flex;flex-direction:column;gap:2px}.mm-cookie-category__name{font-weight:600;color:#e2e8f0}.mm-cookie-category__desc{font-size:11px;color:#64748b}.mm-cookie-category__required{font-size:11px;color:#4ade80;font-style:italic}.mm-cookie-toggle{position:relative;width:40px;height:22px;flex-shrink:0}.mm-cookie-toggle input{opacity:0;width:0;height:0}.mm-cookie-toggle__slider{position:absolute;inset:0;background:#334155;border-radius:22px;cursor:pointer;transition:background 0.2s}.mm-cookie-toggle__slider::before{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform 0.2s}.mm-cookie-toggle input:checked + .mm-cookie-toggle__slider{background:#3b82f6}.mm-cookie-toggle input:checked + .mm-cookie-toggle__slider::before{transform:translateX(18px)}.mm-cookie-toggle input:disabled + .mm-cookie-toggle__slider{background:#1e40af;cursor:not-allowed;opacity:0.7}.mm-cookie-banner__actions{flex:0 0 auto;display:flex;flex-direction:column;gap:8px;align-self:center;min-width:160px}.mm-cookie-btn{display:block;width:100%;padding:10px 20px;border-radius:8px;border:none;font-size:13px;font-weight:600;cursor:pointer;text-align:center;transition:opacity 0.2s,transform 0.1s;line-height:1.4}.mm-cookie-btn:hover{opacity:0.9;transform:translateY(-1px)}.mm-cookie-btn--accept{background:#3b82f6;color:#fff}.mm-cookie-btn--selected{background:#1e40af;color:#fff}.mm-cookie-btn--reject{background:transparent;color:#94a3b8;border:1px solid #334155;font-weight:400}.mm-cookie-btn--reject:hover{background:rgba(255,255,255,0.05);color:#e2e8f0}.mm-cookie-settings-link{font-size:11px;color:#64748b;text-align:center;cursor:pointer;text-decoration:underline;background:none;border:none;padding:0;width:100%}.mm-cookie-settings-link:hover{color:#94a3b8}#mm-cookie-reopen{position:fixed;bottom:140px;right:20px;z-index:99980;background:#1e293b;color:#f1f5f9;border:1px solid #334155;border-radius:50%;width:48px;height:48px;font-size:22px;cursor:pointer;display:none;align-items:center;justify-content:center;box-shadow:0 2px 12px rgba(0,0,0,0.3);transition:background 0.2s;padding:0;line-height:1}#mm-cookie-reopen:hover{background:#334155}#mm-cookie-reopen.is-visible{display:flex}@media (max-width:768px){.mm-cookie-banner__inner{flex-direction:column;gap:16px}.mm-cookie-banner__actions{width:100%;flex-direction:row;flex-wrap:wrap}.mm-cookie-btn{flex:1 1 auto}.mm-cookie-settings-link{width:100%}}.mm-cookie-banner--top{bottom:auto;top:0;transform:translateY(-100%);box-shadow:0 4px 24px rgba(0,0,0,0.25)}.mm-cookie-banner--top.is-visible{transform:translateY(0)}.mm-cookie-banner--bottom-left,.mm-cookie-banner--bottom-right{bottom:20px;left:auto;right:auto;width:380px;border-radius:12px;transform:translateY(120%)}.mm-cookie-banner--bottom-left{left:20px}.mm-cookie-banner--bottom-right{right:20px}.mm-cookie-banner--bottom-left.is-visible,.mm-cookie-banner--bottom-right.is-visible{transform:translateY(0)}@media (max-width:480px){.mm-cookie-banner--bottom-left,.mm-cookie-banner--bottom-right{width:calc(100% - 40px);left:20px;right:20px}}