.cpub-consent[data-v-95de666e]{background:var(--surface);border-top:var(--border-width-default) solid var(--border);bottom:0;box-shadow:0 -2px 0 var(--border);left:0;position:fixed;right:0;z-index:var(--z-toast)}.cpub-consent-inner[data-v-95de666e]{align-items:center;display:flex;gap:var(--space-4);justify-content:space-between;margin:0 auto;max-width:var(--content-max-width);padding:var(--space-4) var(--space-6)}.cpub-consent-text[data-v-95de666e]{color:var(--text-dim);flex:1;font-size:var(--text-sm);line-height:var(--leading-snug);min-width:0}.cpub-consent-link[data-v-95de666e]{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.cpub-consent-actions[data-v-95de666e]{display:flex;flex-shrink:0;gap:var(--space-2)}.cpub-consent-slide-enter-active[data-v-95de666e],.cpub-consent-slide-leave-active[data-v-95de666e]{transition:transform .3s ease,opacity .3s ease}.cpub-consent-slide-enter-from[data-v-95de666e],.cpub-consent-slide-leave-to[data-v-95de666e]{opacity:0;transform:translateY(100%)}@media(max-width:640px){.cpub-consent-inner[data-v-95de666e]{align-items:stretch;flex-direction:column;padding:var(--space-4)}.cpub-consent-actions[data-v-95de666e]{justify-content:stretch}.cpub-consent-actions .cpub-btn[data-v-95de666e]{flex:1}}.cpub-trg[data-v-704d6c91]{align-items:center;background:#000000b3;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.cpub-trg-card[data-v-704d6c91]{background:var(--surface);border:var(--border-width-default) solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:14px;max-width:460px;padding:28px;width:100%}.cpub-trg-title[data-v-704d6c91]{font-size:18px;font-weight:700;margin:0}.cpub-trg-body[data-v-704d6c91]{color:var(--text-dim);font-size:14px;line-height:1.7;margin:0}.cpub-trg-links[data-v-704d6c91]{font-size:13px;margin:0}.cpub-trg-links a[data-v-704d6c91]{color:var(--accent);text-decoration:none}.cpub-trg-links a[data-v-704d6c91]:hover{text-decoration:underline}.cpub-grain{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='a'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='4' stitchTiles='stitch' type='fractalNoise'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");inset:0;opacity:var(--grain,0);pointer-events:none;position:fixed;z-index:9999}@media print{.cpub-grain{display:none}}.cpub-error-page[data-v-a02bfcc9]{align-items:center;background:var(--bg,#fafaf9);display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.cpub-error-grid[data-v-a02bfcc9]{background-image:linear-gradient(var(--border2,#d4d4d0) 1px,transparent 1px),linear-gradient(90deg,var(--border2,#d4d4d0) 1px,transparent 1px);background-size:40px 40px;inset:0;opacity:.15;position:absolute}.cpub-error-inner[data-v-a02bfcc9]{max-width:480px;padding:32px;position:relative;text-align:center;z-index:1}.cpub-error-code[data-v-a02bfcc9]{color:var(--accent,#5b9cf6);font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:80px;font-weight:700;letter-spacing:-.04em;line-height:1;margin-bottom:12px}.cpub-error-title[data-v-a02bfcc9]{color:var(--text,#1a1a1a);font-size:20px;font-weight:700;margin-bottom:10px}.cpub-error-desc[data-v-a02bfcc9]{color:var(--text-dim,#6b6b66);font-size:13px;line-height:1.6;margin-bottom:28px}.cpub-error-actions[data-v-a02bfcc9]{display:flex;gap:10px;justify-content:center}.cpub-error-btn[data-v-a02bfcc9]{align-items:center;background:var(--surface,#fff);border:var(--border-width-default) solid var(--border,#1a1a1a);color:var(--text,#1a1a1a);cursor:pointer;display:inline-flex;font-family:inherit;font-size:12px;font-weight:500;gap:6px;padding:8px 18px;text-decoration:none;transition:all .15s}.cpub-error-btn[data-v-a02bfcc9]:hover{box-shadow:var(--shadow-sm)}.cpub-error-btn-primary[data-v-a02bfcc9]{background:var(--accent,#5b9cf6);box-shadow:var(--shadow-md);color:var(--color-text-inverse,#fff)}.cpub-error-btn-primary[data-v-a02bfcc9]:hover{box-shadow:var(--shadow-lg);transform:translate(-1px,-1px)}
