.floating-bug-button{z-index:50;background-color:var(--accent-primary);color:#fff;box-shadow:var(--shadow-lg);cursor:pointer;border:none;border-radius:9999px;justify-content:center;align-items:center;padding:1rem;line-height:0;transition:all .3s;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}[data-theme=dark] .floating-bug-button{color:#000;background-color:#fff}[data-theme=dark] .floating-bug-button:hover{background-color:#f0f0f0}[data-theme=light] .floating-bug-button{background-color:var(--accent-primary);color:#fff}[data-theme=light] .floating-bug-button:hover{background-color:var(--accent-hover)}.floating-bug-button:hover{box-shadow:var(--shadow-xl);transform:scale(1.1)}.bug-button-tooltip{background-color:var(--card-bg);color:var(--text-primary);border:1px solid var(--border-color);opacity:0;white-space:nowrap;pointer-events:none;border-radius:.5rem;margin-right:.75rem;padding:.375rem .75rem;font-size:.875rem;transition:opacity .3s;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.floating-bug-button:hover .bug-button-tooltip{opacity:1}.bug-report-overlay{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.bug-report-modal{background-color:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-xl);-ms-overflow-style:none;scrollbar-width:none;border-radius:1rem;flex-direction:column;width:100%;max-width:30rem;max-height:80vh;display:flex;position:relative;top:40px;overflow-y:hidden}.bug-report-modal::-webkit-scrollbar{display:none}.bug-report-header{z-index:10;background:linear-gradient(135deg,var(--accent-primary)0%,var(--accent-secondary)100%);color:#fff;border-radius:1rem 1rem 0 0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex;position:sticky;top:0}.bug-report-header-content{align-items:center;gap:.75rem;display:flex}.bug-report-header-content svg{width:1.5rem;height:1.5rem}.bug-report-header h2{margin:0;font-size:1rem;font-weight:700}.bug-report-close-button{cursor:pointer;color:#fff;background:0 0;border:none;border-radius:9999px;justify-content:center;align-items:center;padding:.5rem;transition:background-color .2s;display:flex}.bug-report-close-button:hover{background-color:#ffffff26}.bug-report-close-button svg{width:1.25rem;height:1.25rem}.bug-report-content{background-color:var(--bg-primary);color:var(--text-primary);-ms-overflow-style:none;scrollbar-width:none;flex:1;padding:1rem;overflow-y:auto}.bug-report-content::-webkit-scrollbar{display:none}@media (max-width:640px){.floating-bug-button{right:1rem}}
.floating-theme-toggle{z-index:50;background-color:var(--accent-primary);color:#fff;box-shadow:var(--shadow-lg);cursor:pointer;border:none;border-radius:9999px;justify-content:center;align-items:center;gap:.375rem;padding:1rem;line-height:0;transition:all .3s;display:flex;position:fixed;bottom:5.5rem;right:1.5rem}[data-theme=dark] .floating-theme-toggle{color:#000;background-color:#fff}[data-theme=dark] .floating-theme-toggle:hover{background-color:#f0f0f0}[data-theme=light] .floating-theme-toggle{background-color:var(--accent-primary);color:#fff}[data-theme=light] .floating-theme-toggle:hover{background-color:var(--accent-hover)}.floating-theme-toggle:hover{box-shadow:var(--shadow-xl);transform:scale(1.1)}.theme-bug-icon{opacity:.9}.theme-toggle-tooltip{background-color:var(--card-bg);color:var(--text-primary);border:1px solid var(--border-color);opacity:0;white-space:nowrap;pointer-events:none;border-radius:.5rem;margin-right:.75rem;padding:.375rem .75rem;font-size:.875rem;transition:opacity .3s;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.floating-theme-toggle:hover .theme-toggle-tooltip{opacity:1}@media (max-width:640px){.floating-theme-toggle{padding:1rem;bottom:5rem;right:1rem}}
.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;width:340px;max-width:calc(100vw - 40px);display:flex;position:fixed;top:100px;right:20px}.toast-item{pointer-events:auto;background:var(--card-bg);border:1px solid var(--border-color);will-change:transform,opacity;border-left-width:3px;border-radius:8px;align-items:flex-start;gap:10px;padding:11px 13px;animation:.22s cubic-bezier(.16,1,.3,1) forwards toast-enter;display:flex;box-shadow:0 2px 8px #00000014,0 1px 2px #0000000a}@keyframes toast-enter{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.toast-item{animation:none}}.toast-icon{flex-shrink:0;width:16px;height:16px;margin-top:1px}.toast-body{flex:1;min-width:0}.toast-message{color:var(--text-primary);word-break:break-word;margin:0;font-size:.8375rem;font-weight:500;line-height:1.45}.toast-close-btn{width:20px;height:20px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;padding:0;transition:background .15s,color .15s;display:flex}.toast-close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.toast-close-btn:focus-visible{outline:2px solid var(--border-focus);outline-offset:1px}.toast-close-icon{width:13px;height:13px}.toast-row,.toast-main{display:contents}.toast-item.toast-success{border-left-color:var(--success)}.toast-text-success{color:var(--success)}.toast-item.toast-error{border-left-color:var(--error)}.toast-text-error{color:var(--error)}.toast-item.toast-warning{border-left-color:var(--warning)}.toast-text-warning{color:var(--warning)}.toast-item.toast-info{border-left-color:var(--info)}.toast-text-info{color:var(--info)}[data-theme=dark] .toast-item{background:var(--bg-quaternary);border-color:var(--border-hover);box-shadow:0 2px 12px #00000073,0 1px 3px #0000004d}[data-theme=dark] .toast-text-success{color:#34d399}[data-theme=dark] .toast-text-error{color:#f87171}[data-theme=dark] .toast-text-warning{color:#fbbf24}[data-theme=dark] .toast-text-info{color:#60a5fa}[data-theme=dark] .toast-item.toast-success{border-left-color:#34d399}[data-theme=dark] .toast-item.toast-error{border-left-color:#f87171}[data-theme=dark] .toast-item.toast-warning{border-left-color:#fbbf24}[data-theme=dark] .toast-item.toast-info{border-left-color:#60a5fa}@media (max-width:640px){.toast-container{gap:6px;width:auto;max-width:none;top:80px;left:12px;right:12px}.toast-item{padding:9px 11px}.toast-icon{width:15px;height:15px}.toast-message{font-size:.8rem;line-height:1.4}.toast-close-btn{width:18px;height:18px}.toast-close-icon{width:12px;height:12px}}
.cookie-overlay{background:var(--overlay-bg,#0009);z-index:9998;animation:.3s ease-in-out fadeIn;position:fixed;inset:0}.cookie-banner{background:var(--card-bg,#fff);width:calc(100% - 48px);max-width:440px;box-shadow:var(--shadow-xl,0 20px 25px #00000026);z-index:9999;border:1px solid var(--border-color,#e5e7eb);will-change:transform,opacity;border-radius:18px;animation:.4s cubic-bezier(.22,1,.36,1) slideUpRight;position:fixed;bottom:24px;right:24px;overflow:hidden;transform:none}.cookie-banner-content{padding:20px;display:block}.cookie-banner-intro{align-items:center;gap:10px;margin-bottom:10px;display:flex}.cookie-icon{border:1px solid var(--border-color,#e5e7eb);background:var(--bg-secondary,#f9fafb);border-radius:12px;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:19px;line-height:1;display:grid}.cookie-banner-intro h3{color:var(--text-primary,#333);margin:0;font-size:1.1rem;font-weight:700;line-height:1.25}.cookie-banner-eyebrow{color:var(--text-tertiary,#9ca3af);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:.7rem;font-weight:700;line-height:1.2;display:block}.cookie-banner-text{max-width:none;color:var(--text-secondary,#6b7280);margin:0;font-size:.8125rem;line-height:1.5}.cookie-banner-actions{justify-content:flex-start;align-items:center;gap:6px;margin-top:12px;display:flex}.cookie-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;min-height:36px;padding:7px 12px;font-size:.75rem;font-weight:600;transition:background-color .2s,border-color .2s,color .2s,transform .2s}.cookie-btn-primary{background:var(--accent-primary,#333);color:var(--text-inverse,#fff)}.cookie-btn-primary:hover{background:var(--accent-hover,#000);transform:translateY(-2px)}.cookie-btn-secondary{background:var(--bg-tertiary,#f3f4f6);color:var(--text-primary,#333)}.cookie-btn-secondary:hover{background:var(--bg-quaternary,#e5e7eb)}.cookie-btn-tertiary{color:var(--text-primary,#333);border-color:var(--border-color,#e5e7eb);background:0 0}.cookie-btn-tertiary:hover{background:var(--bg-hover,#0000000a)}.cookie-banner-link{color:var(--link-color,#333);text-underline-offset:3px;white-space:nowrap;margin-top:10px;font-size:.75rem;font-weight:600;line-height:1.4;text-decoration:none;transition:color .2s}.cookie-banner-link:hover{color:var(--link-hover,#000);text-decoration:underline}.cookie-preferences{max-height:80vh;padding:24px;overflow-y:auto}.cookie-preferences-header{border-bottom:1px solid var(--border-color,#e5e7eb);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.cookie-preferences-header h3{color:var(--text-primary,#1f2937);margin:0;font-size:20px;font-weight:600}.cookie-close-btn{cursor:pointer;color:var(--text-secondary,#6b7280);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:32px;line-height:1;transition:all .2s;display:flex}.cookie-close-btn:hover{background:var(--bg-tertiary,#f3f4f6);color:var(--text-primary,#333)}.cookie-preferences-content{flex-direction:column;gap:16px;margin-bottom:20px;display:flex}.cookie-category{background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-color,#e5e7eb);border-radius:12px;padding:16px}.cookie-category-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.cookie-category-header h4{color:var(--text-primary,#1f2937);margin:0 0 6px;font-size:16px;font-weight:600}.cookie-category-header p{color:var(--text-secondary,#6b7280);margin:0;font-size:13px;line-height:1.5}.cookie-toggle{cursor:pointer;flex-shrink:0;width:48px;height:26px;display:inline-block;position:relative}.cookie-toggle-disabled{opacity:.5;cursor:not-allowed}.cookie-toggle input{opacity:0;width:0;height:0}.cookie-toggle-slider{cursor:pointer;background-color:var(--toggle-off,#d1d5db);border-radius:26px;transition:all .3s;position:absolute;inset:0}.cookie-toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;bottom:3px;left:3px}.cookie-toggle input:checked+.cookie-toggle-slider{background:var(--accent-primary,#333)}.cookie-toggle input:checked+.cookie-toggle-slider:before{transform:translate(22px)}.cookie-toggle-disabled .cookie-toggle-slider{background:var(--accent-primary,#333)}.cookie-preferences-actions{border-top:1px solid var(--border-color,#e5e7eb);gap:12px;padding-top:16px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%)translateY(100%)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes slideUpRight{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.cookie-banner{border-radius:16px 16px 0 0;width:100%;max-width:100%;animation:.42s cubic-bezier(.22,1,.36,1) slideUpMobile;bottom:0;left:0;right:0;transform:none}.cookie-banner-content{padding:20px 20px 18px;display:block}.cookie-banner-intro{margin-bottom:14px}.cookie-banner-text{max-width:none;margin-bottom:14px}.cookie-banner-actions{flex-direction:column;align-items:stretch;margin-top:0}.cookie-btn{width:100%}.cookie-banner-link{margin-top:16px;display:inline-block}.cookie-preferences{max-height:70vh;padding:20px}.cookie-preferences-actions{flex-direction:column}.cookie-preferences-actions .cookie-btn{width:100%}.cookie-category-header{flex-direction:column;gap:12px}.cookie-toggle{align-self:flex-start}}:root[data-theme=dark] .cookie-btn-primary{color:#000;background:#fff}:root[data-theme=dark] .cookie-btn-primary:hover{background:#e5e5e5}@media (max-width:360px){.cookie-banner-content{padding-inline:16px}.cookie-banner-intro{gap:10px}.cookie-icon{width:40px;height:40px}.cookie-banner-intro h3{font-size:1.05rem}}@media (prefers-reduced-motion:reduce){.cookie-overlay,.cookie-banner{animation-duration:.01ms;animation-iteration-count:1}}.cookie-btn:focus-visible,.cookie-banner-link:focus-visible,.cookie-close-btn:focus-visible,.cookie-toggle input:focus-visible+.cookie-toggle-slider{outline:2px solid var(--accent-primary,#333);outline-offset:3px}
