:root{--color-bg-primary: #f8f9fa;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f3f4f6;--color-bg-elevated: #ffffff;--color-text-primary: #212529;--color-text-secondary: #374151;--color-text-tertiary: #6b7280;--color-text-disabled: #9ca3af;--color-border-default: #e5e7eb;--color-border-muted: #eef2f7;--color-border-emphasis: #d1d5db;--color-accent-primary: #2563eb;--color-accent-hover: #1d4ed8;--color-accent-active: #1e40af;--color-success: #10b981;--color-error: #ef4444;--color-warning: #f59e0b;--color-info: #3b82f6;--color-success-bg: #f0fdf4;--color-error-bg: #fef2f2;--color-warning-bg: #fef3c7;--color-info-bg: #eff6ff;--color-success-border: #bbf7d0;--color-error-border: #fecaca;--color-accent-bg: #eff6ff;--color-card-bg: #ffffff;--color-card-border: #e5e7eb;--color-button-disabled: #9ca3af;--color-tooltip-bg: #1f2937;--color-tooltip-text: #ffffff;--color-input-bg: #ffffff;--color-input-border: #d1d5db;--color-input-focus: #2563eb;--color-subhead: var(--color-text-tertiary);--color-tab-inactive: var(--color-text-tertiary);--color-overlay: rgba(0, 0, 0, .5);--color-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--color-shadow-md: 0 2px 8px rgba(0, 0, 0, .1);--color-shadow-lg: 0 4px 16px rgba(0, 0, 0, .15);--color-focus-ring: rgba(37, 99, 235, .65);--color-brand-violet: #7c3aed;--color-brand-violet-hover: #9333ea;--color-brand-violet-strong: #6d28d9;--color-brand-violet-weak: #f3e8ff;--reader-bg-light: #ffffff;--reader-text-light: #000000;--reader-bg-sepia: #f4ecd8;--reader-text-sepia: #5c4a3a;--reader-bg-dark: #1a1a1a;--reader-text-dark: #e0e0e0;--comic-bg-primary: #1a1a1a;--comic-bg-muted: #2d2d2d;--comic-border: #3a3a3a;--comic-text-muted: #b0b0b0;--brand-rose-bg: #fce7f3;--brand-rose-weak: #fdf2f8;--brand-rose-strong: #831843;--brand-rose-mid: #be185d;--brand-rose-dark: #9f1239;--viewer-bg-primary: #000000;--viewer-bg-secondary: #333333;--viewer-border: #555555;--viewer-text-muted: #aaaaaa;--viewer-text-primary: #ffffff;--brand-youtube: #ff0000;--brand-link: #0066cc;--dp-series-bg: var(--color-accent-primary);--dp-series-text: var(--color-accent-primary);--dp-episode-bg: var(--color-success);--dp-episode-text: var(--color-success)}[data-theme=dark]{--color-bg-primary: #1a1b26;--color-bg-secondary: #24283b;--color-bg-tertiary: #2f3549;--color-bg-elevated: #3b4261;--color-text-primary: #c0caf5;--color-text-secondary: #9aa5ce;--color-text-tertiary: #8fa3d5;--color-text-disabled: #414868;--color-border-default: #3b4261;--color-border-muted: #2f3549;--color-border-emphasis: #565f89;--color-accent-primary: #7aa2f7;--color-accent-hover: #89b4fa;--color-accent-active: #6690f5;--color-success: #9ece6a;--color-error: #f7768e;--color-warning: #e0af68;--color-info: #7dcfff;--color-success-bg: rgba(16,185,129,.16);--color-error-bg: rgba(239,68,68,.16);--color-warning-bg: rgba(245,158,11,.16);--color-info-bg: rgba(125,207,255,.16);--color-success-border: var(--color-success);--color-error-border: var(--color-error);--color-accent-bg: rgba(122,162,247,.16);--color-focus-ring: rgba(122,162,247,.7);--color-card-bg: #24283b;--color-card-border: #3b4261;--color-button-disabled: #4b5563;--color-tooltip-bg: #3b4261;--color-tooltip-text: #c0caf5;--color-input-bg: #1f2937;--color-input-border: #4b5563;--color-input-focus: #7aa2f7;--color-subhead: var(--color-text-secondary);--color-tab-inactive: var(--color-text-secondary);--color-overlay: rgba(26, 27, 38, .8);--color-shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--color-shadow-md: 0 2px 8px rgba(0, 0, 0, .4);--color-shadow-lg: 0 4px 16px rgba(0, 0, 0, .5);--color-brand-violet: #a78bfa;--color-brand-violet-hover: #8b5cf6;--color-brand-violet-strong: #7c3aed;--color-brand-violet-weak: rgba(167,139,250,.15);--reader-bg-light: #ffffff;--reader-text-light: #000000;--reader-bg-sepia: #f4ecd8;--reader-text-sepia: #5c4a3a;--reader-bg-dark: #1a1a1a;--reader-text-dark: #e0e0e0;--comic-bg-primary: #1a1a1a;--comic-bg-muted: #2d2d2d;--comic-border: #3a3a3a;--comic-text-muted: #b0b0b0;--brand-rose-bg: rgba(252,231,243,.15);--brand-rose-weak: rgba(253,242,248,.12);--brand-rose-strong: #f472b6;--brand-rose-mid: #ec4899;--brand-rose-dark: #be185d;--viewer-bg-primary: #000000;--viewer-bg-secondary: #333333;--viewer-border: #555555;--viewer-text-muted: #aaaaaa;--viewer-text-primary: #ffffff;--brand-youtube: #ff0000;--brand-link: #89b4fa;--dp-series-bg: var(--color-accent-primary);--dp-series-text: var(--color-accent-primary);--dp-episode-bg: var(--color-success);--dp-episode-text: var(--color-success)}*{transition-property:background-color,border-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}button,a,input,select,textarea{transition-property:background-color,border-color,transform,box-shadow;transition-duration:.1s;transition-timing-function:ease-out}*,*:before,*:after{transition-property:background-color,border-color}[data-instant],.instant{transition:none!important}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}[data-theme=dark] img:not([data-no-dark-adjust]){border:1px solid var(--color-border-default);border-radius:4px}[data-theme=dark] .logo,[data-theme=dark] [data-logo]{opacity:.92}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--color-bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--color-border-emphasis);border-radius:6px;border:2px solid var(--color-bg-tertiary)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}*{scrollbar-width:thin;scrollbar-color:var(--color-border-emphasis) var(--color-bg-tertiary)}::selection{background-color:var(--color-accent-primary);color:#fff}::-moz-selection{background-color:var(--color-accent-primary);color:#fff}[data-theme=dark] ::selection{background-color:var(--color-accent-primary);color:var(--color-bg-primary)}[data-theme=dark] ::-moz-selection{background-color:var(--color-accent-primary);color:var(--color-bg-primary)}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background-color:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);margin-top:0}p{color:var(--color-text-secondary)}a{color:var(--color-accent-primary);text-decoration:none}a:hover{color:var(--color-accent-hover);text-decoration:underline}.card{background-color:var(--color-card-bg);border-radius:8px;box-shadow:var(--color-shadow-md);border:1px solid var(--color-card-border);padding:1rem;margin-bottom:1rem}.btn{display:inline-block;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-align:center;color:#fff;background-color:var(--color-accent-primary);border-radius:6px;border:1px solid transparent;cursor:pointer;transition:background-color .1s;text-decoration:none}.btn:hover{background-color:var(--color-accent-hover)}.btn:active{background-color:var(--color-accent-active)}.btn:disabled{background-color:var(--color-button-disabled);cursor:not-allowed;opacity:.6}.grid{max-width:64rem;margin:0 auto;padding:1rem}.row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.toast{position:fixed;top:1rem;right:1rem;z-index:1000;max-width:320px;border-radius:8px;padding:.75rem 1rem;box-shadow:var(--color-shadow-lg);font-size:.875rem;font-weight:500;animation:slideIn .3s ease-out;background-color:var(--color-card-bg);border:1px solid var(--color-card-border);color:var(--color-text-primary)}.toast.success{border-left:4px solid var(--color-success)}.toast.error{border-left:4px solid var(--color-error)}.toast.warning{border-left:4px solid var(--color-warning)}.toast.info{border-left:4px solid var(--color-info)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.tooltip{position:relative;display:inline-block}.tooltip:after{content:attr(data-tooltip);position:absolute;bottom:125%;left:50%;transform:translate(-50%);background-color:var(--color-tooltip-bg);color:var(--color-tooltip-text);padding:.5rem;border-radius:4px;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s;z-index:1000}.tooltip:hover:after{opacity:1}input,select,textarea{background-color:var(--color-input-bg);color:var(--color-text-primary);border:1px solid var(--color-input-border);border-radius:6px;padding:.5rem;font-size:.875rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-input-focus);box-shadow:0 0 0 3px #2563eb1a}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{box-shadow:0 0 0 3px #7aa2f726}.text-muted{color:var(--color-text-tertiary)}.text-disabled{color:var(--color-text-disabled)}.bg-secondary{background-color:var(--color-bg-secondary)}.bg-tertiary{background-color:var(--color-bg-tertiary)}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors: active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}
