:root{color-scheme:light dark;--rr-bg: #f6f7fa;--rr-bg-inset: #eef0f5;--rr-surface: #ffffff;--rr-surface-2: #fafbfd;--rr-text: #182135;--rr-text-muted: #5b6577;--rr-border: #e2e6ee;--rr-border-strong: #c9d1e0;--rr-primary: #0e5fd8;--rr-primary-strong: #0a4cae;--rr-primary-soft: #e8f0fd;--rr-accent: #6d3fd4;--rr-danger: #c93a3a;--rr-danger-soft: #fdeeee;--rr-warn: #a3660f;--rr-warn-soft: #fdf3e4;--rr-ok: #177a48;--rr-ok-soft: #e8f6ee;--rr-info-soft: #eef3fb;--rr-review: #8a5bd0;--rr-review-soft: #f3edfd;--rr-edge: #7d92b8;--rr-radius-s: 6px;--rr-radius-m: 10px;--rr-radius-l: 16px;--rr-shadow-1: 0 1px 2px rgb(18 26 43 / .05), 0 1px 3px rgb(18 26 43 / .08);--rr-shadow-2: 0 10px 30px rgb(18 26 43 / .12);--rr-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--rr-font-mono: ui-monospace, SFMono-Regular, Consolas, "Courier New", monospace;--rr-space-1: 4px;--rr-space-2: 8px;--rr-space-3: 12px;--rr-space-4: 16px;--rr-space-5: 24px;--rr-space-6: 32px;--rr-space-7: 48px}[data-theme=dark]{color-scheme:dark;--rr-bg: #10131b;--rr-bg-inset: #171b26;--rr-surface: #191e2b;--rr-surface-2: #1f2534;--rr-text: #e7eaf2;--rr-text-muted: #99a2b5;--rr-border: #2a3142;--rr-border-strong: #3b445a;--rr-primary: #5b93ec;--rr-primary-strong: #7ba6f0;--rr-primary-soft: #1c2942;--rr-accent: #a88ae8;--rr-danger: #e5726f;--rr-danger-soft: #3a2226;--rr-warn: #d9a15b;--rr-warn-soft: #382c1c;--rr-ok: #5fbd8a;--rr-ok-soft: #1d3128;--rr-info-soft: #1c2739;--rr-review: #b395e8;--rr-review-soft: #2c2440;--rr-edge: #55688f;--rr-shadow-1: 0 1px 2px rgb(0 0 0 / .4);--rr-shadow-2: 0 10px 30px rgb(0 0 0 / .5)}body{font-family:var(--rr-font-sans);background:var(--rr-bg);color:var(--rr-text);line-height:1.6;-webkit-font-smoothing:antialiased}.page{max-width:960px;margin:0 auto;padding:48px 24px}:focus-visible{outline:2px solid var(--rr-primary);outline-offset:2px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--rr-font-sans);background:var(--rr-bg);color:var(--rr-text);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:focus-visible{outline:2px solid var(--rr-primary);outline-offset:2px;border-radius:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.rr-btn{display:inline-flex;align-items:center;gap:var(--rr-space-2);padding:8px 16px;border-radius:var(--rr-radius-m);border:1px solid var(--rr-border-strong);background:var(--rr-surface);color:var(--rr-text);font:inherit;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease}.rr-btn:hover:not(:disabled){background:var(--rr-surface-2);border-color:var(--rr-primary)}.rr-btn:active:not(:disabled){transform:translateY(1px)}.rr-btn:disabled{opacity:.55;cursor:not-allowed}.rr-btn--primary{background:var(--rr-primary);border-color:var(--rr-primary);color:#fff}.rr-btn--primary:hover:not(:disabled){background:var(--rr-primary-strong);border-color:var(--rr-primary-strong)}.rr-btn--ghost{border-color:transparent;background:transparent}.rr-btn--sm{padding:4px 10px;font-size:13px;border-radius:var(--rr-radius-s)}.rr-card{background:var(--rr-surface);border:1px solid var(--rr-border);border-radius:var(--rr-radius-l);box-shadow:var(--rr-shadow-1)}.rr-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.rr-badge--error{background:var(--rr-danger-soft);color:var(--rr-danger)}.rr-badge--warning{background:var(--rr-warn-soft);color:var(--rr-warn)}.rr-badge--review{background:var(--rr-review-soft);color:var(--rr-review)}.rr-badge--info{background:var(--rr-info-soft);color:var(--rr-text-muted)}.rr-badge--primary{background:var(--rr-primary-soft);color:var(--rr-primary)}.rr-select{font:inherit;padding:7px 30px 7px 10px;border-radius:var(--rr-radius-m);border:1px solid var(--rr-border-strong);background:var(--rr-surface);color:var(--rr-text);cursor:pointer;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--rr-text-muted) 50%),linear-gradient(135deg,var(--rr-text-muted) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px;background-repeat:no-repeat}.rr-home{min-height:100vh;display:flex;flex-direction:column}.rr-home__nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--rr-space-2) var(--rr-space-3);padding:var(--rr-space-4) var(--rr-space-5);max-width:1120px;width:100%;margin:0 auto}.rr-brand{white-space:nowrap}.rr-brand__sub{color:var(--rr-text-muted);font-weight:400;font-size:13px}@media(max-width:640px){.rr-brand__sub{display:none}}.rr-brand{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:700;letter-spacing:.2px;color:var(--rr-text);text-decoration:none}.rr-brand__logo{width:30px;height:30px;flex:none}.rr-home__main{flex:1;width:100%;max-width:1120px;margin:0 auto;padding:var(--rr-space-6) var(--rr-space-6) var(--rr-space-7)}.rr-hero{text-align:center;margin:var(--rr-space-6) 0 var(--rr-space-6)}.rr-hero h1{font-size:clamp(28px,4.6vw,44px);line-height:1.25;margin:0 0 var(--rr-space-4);letter-spacing:.3px}.rr-hero p{max-width:720px;margin:0 auto var(--rr-space-3);color:var(--rr-text-muted);font-size:16px}.rr-hero__badges{display:flex;gap:var(--rr-space-2);justify-content:center;flex-wrap:wrap;margin-top:var(--rr-space-4)}.rr-uploader{max-width:640px;margin:var(--rr-space-5) auto;padding:var(--rr-space-7) var(--rr-space-5);border:2px dashed var(--rr-border-strong);border-radius:var(--rr-radius-l);text-align:center;background:var(--rr-surface);transition:border-color .15s ease,background .15s ease;cursor:pointer}.rr-uploader:hover,.rr-uploader--drag{border-color:var(--rr-primary);background:var(--rr-primary-soft)}.rr-uploader__title{font-size:17px;font-weight:600}.rr-uploader__hint{color:var(--rr-text-muted);font-size:13px;margin-top:var(--rr-space-2)}.rr-alt-actions{display:flex;gap:var(--rr-space-3);justify-content:center;flex-wrap:wrap;margin-top:var(--rr-space-4)}.rr-paste-panel{max-width:640px;margin:var(--rr-space-4) auto 0;display:flex;flex-direction:column;gap:var(--rr-space-2)}.rr-paste-panel textarea{font:inherit;min-height:120px;padding:var(--rr-space-3);border-radius:var(--rr-radius-m);border:1px solid var(--rr-border-strong);background:var(--rr-surface);color:var(--rr-text);resize:vertical}.rr-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--rr-space-4);margin-top:var(--rr-space-7)}.rr-feature{padding:var(--rr-space-5);border-radius:var(--rr-radius-l);background:var(--rr-surface);border:1px solid var(--rr-border)}.rr-feature h3{margin:0 0 var(--rr-space-2);font-size:15.5px}.rr-feature p{margin:0;color:var(--rr-text-muted);font-size:13.5px}.rr-privacy{margin-top:var(--rr-space-6);padding:var(--rr-space-5);border-radius:var(--rr-radius-l);background:var(--rr-ok-soft);border:1px solid transparent;display:flex;gap:var(--rr-space-3);align-items:flex-start}.rr-privacy h3{margin:0 0 var(--rr-space-1);font-size:15px}.rr-privacy p{margin:0;font-size:13.5px}.rr-footer{text-align:center;padding:var(--rr-space-5);color:var(--rr-text-muted);font-size:13px;border-top:1px solid var(--rr-border)}.rr-footer a{color:var(--rr-primary)}.rr-alert{display:flex;gap:var(--rr-space-2);align-items:flex-start;padding:var(--rr-space-3) var(--rr-space-4);border-radius:var(--rr-radius-m);margin:var(--rr-space-3) auto;max-width:640px;font-size:14px}.rr-alert--error{background:var(--rr-danger-soft);color:var(--rr-danger)}.rr-alert--info{background:var(--rr-info-soft);color:var(--rr-text)}.rr-wb{height:100vh;display:flex;flex-direction:column;overflow:hidden}.rr-wb__top{display:flex;align-items:center;gap:var(--rr-space-3);padding:var(--rr-space-2) var(--rr-space-4);border-bottom:1px solid var(--rr-border);background:var(--rr-surface);flex-wrap:wrap}.rr-wb__file{font-weight:600;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rr-wb__stats{display:flex;gap:var(--rr-space-2);flex-wrap:wrap}.rr-stat{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--rr-text-muted);padding:3px 9px;background:var(--rr-bg-inset);border-radius:999px}.rr-stat b{color:var(--rr-text);font-variant-numeric:tabular-nums}.rr-wb__actions{margin-left:auto;display:flex;gap:var(--rr-space-2);align-items:center;flex-wrap:wrap}.rr-wb__body{flex:1;display:grid;grid-template-columns:220px minmax(0,1fr) 400px;min-height:0}.rr-wb__pane{overflow-y:auto;min-height:0}.rr-wb__pane--left{border-right:1px solid var(--rr-border);background:var(--rr-surface);padding:var(--rr-space-3)}.rr-wb__pane--center{background:var(--rr-bg);padding:var(--rr-space-4)}.rr-wb__pane--right{border-left:1px solid var(--rr-border);background:var(--rr-surface);padding:var(--rr-space-3);display:flex;flex-direction:column;min-height:0}.rr-pane-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--rr-text-muted);margin:0 0 var(--rr-space-2)}.rr-nav-item{display:block;width:100%;text-align:left;font:inherit;font-size:13px;padding:5px 8px;border:none;background:none;color:var(--rr-text);border-radius:var(--rr-radius-s);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rr-nav-item:hover{background:var(--rr-bg-inset)}.rr-nav-item--active{background:var(--rr-primary-soft);color:var(--rr-primary);font-weight:600}.rr-nav-item--h1{font-weight:600}.rr-nav-item--h2{padding-left:18px}.rr-nav-item--h3{padding-left:32px;font-size:12.5px}.rr-nav-item .rr-cite-dots{font-variant-numeric:tabular-nums;color:var(--rr-text-muted);font-size:11px;margin-left:4px}.rr-doc{background:var(--rr-surface);border:1px solid var(--rr-border);border-radius:var(--rr-radius-m);padding:var(--rr-space-5) var(--rr-space-6);max-width:760px;margin:0 auto}.rr-doc__block{margin:0 0 var(--rr-space-3);line-height:1.9;font-size:14.5px;border-radius:var(--rr-radius-s);padding:1px 4px;scroll-margin:80px;transition:background .6s ease}.rr-doc__block--h1{font-size:19px;font-weight:700;margin-top:var(--rr-space-4)}.rr-doc__block--h2{font-size:16.5px;font-weight:600;margin-top:var(--rr-space-3)}.rr-doc__block--h3{font-size:15px;font-weight:600}.rr-doc__block--num:before{content:attr(data-number) " ";font-weight:600}.rr-doc__block--flash{background:var(--rr-warn-soft)}.rr-doc__row{display:flex;gap:0;border:1px solid var(--rr-border);border-radius:0;overflow:hidden;margin:0;scroll-margin:80px;background:var(--rr-surface-2)}.rr-doc__row--first{border-top-left-radius:var(--rr-radius-s);border-top-right-radius:var(--rr-radius-s)}.rr-doc__row--last{border-bottom-left-radius:var(--rr-radius-s);border-bottom-right-radius:var(--rr-radius-s);margin-bottom:var(--rr-space-3)}.rr-doc__cell{flex:1;padding:var(--rr-space-2) var(--rr-space-3);font-size:13.5px;line-height:1.7;border-right:1px solid var(--rr-border);min-width:0}.rr-doc__cell:last-child{border-right:none}.rr-doc__cell:not(:first-child){border-left:1px solid var(--rr-border)}.rr-doc__cell:first-child{border-left:none}.rr-doc__block--note{font-size:12.5px;color:var(--rr-text-muted);border-left:2px solid var(--rr-border-strong);padding-left:10px}.rr-cite{border-radius:3px;padding:0 1px;cursor:pointer;border:none;font:inherit;background:var(--rr-primary-soft);color:var(--rr-primary);transition:background .15s ease}.rr-cite:hover{background:var(--rr-primary);color:#fff}.rr-cite--missing{background:var(--rr-danger-soft);color:var(--rr-danger);font-weight:600}.rr-cite--review{background:var(--rr-review-soft);color:var(--rr-review)}.rr-cite--active{outline:2px solid var(--rr-primary);outline-offset:1px}.rr-issues-toolbar{display:flex;gap:var(--rr-space-1);flex-wrap:wrap;margin-bottom:var(--rr-space-3)}.rr-chip{font:inherit;font-size:12.5px;border:1px solid var(--rr-border-strong);background:var(--rr-surface);color:var(--rr-text);border-radius:999px;padding:3px 11px;cursor:pointer;font-variant-numeric:tabular-nums}.rr-chip--active{background:var(--rr-primary);border-color:var(--rr-primary);color:#fff}.rr-issue{border:1px solid var(--rr-border);border-radius:var(--rr-radius-m);padding:var(--rr-space-3);margin-bottom:var(--rr-space-2);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;background:var(--rr-surface)}.rr-issue:hover{border-color:var(--rr-primary);box-shadow:var(--rr-shadow-1)}.rr-issue--active{border-color:var(--rr-primary);box-shadow:0 0 0 1px var(--rr-primary)}.rr-issue__head{display:flex;gap:var(--rr-space-2);align-items:center;margin-bottom:4px}.rr-issue__rule{font-family:var(--rr-font-mono);font-size:11px;color:var(--rr-text-muted)}.rr-issue__detail{font-size:13.5px;margin:0 0 var(--rr-space-2)}.rr-issue__quote{font-size:12.5px;color:var(--rr-text-muted);background:var(--rr-bg-inset);border-radius:var(--rr-radius-s);padding:6px 9px;margin-bottom:var(--rr-space-2);overflow-wrap:anywhere}.rr-issue__basis{font-size:12px;color:var(--rr-text-muted);border-top:1px dashed var(--rr-border);padding-top:6px;display:flex;flex-direction:column;gap:2px}.rr-issue__basis b{color:var(--rr-text);font-weight:600}.rr-empty{text-align:center;color:var(--rr-text-muted);padding:var(--rr-space-7) var(--rr-space-4);font-size:14px}.rr-progress{max-width:420px;margin:var(--rr-space-5) auto;text-align:center;color:var(--rr-text-muted)}.rr-progress__bar{height:6px;border-radius:3px;background:var(--rr-bg-inset);overflow:hidden;margin-top:var(--rr-space-3)}.rr-progress__bar i{display:block;height:100%;width:40%;border-radius:3px;background:var(--rr-primary);animation:rr-slide 1.1s ease-in-out infinite}@keyframes rr-slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.rr-graph{height:100%;display:flex;flex-direction:column;padding:var(--rr-space-3);gap:var(--rr-space-2);min-height:0}.rr-graph__toolbar{display:flex;gap:var(--rr-space-2);align-items:center;flex-wrap:wrap}.rr-graph__toolbar input[type=search]{font:inherit;font-size:13px;padding:6px 12px;border-radius:var(--rr-radius-m);border:1px solid var(--rr-border-strong);background:var(--rr-surface);color:var(--rr-text);min-width:220px}.rr-graph__canvas{flex:1;min-height:0;border:1px solid var(--rr-border);border-radius:var(--rr-radius-m);background:var(--rr-surface);overflow:auto}.rr-graph__hint{font-size:12px;color:var(--rr-text-muted)}.rr-gnode{cursor:pointer}.rr-gnode rect{transition:fill .15s ease,stroke .15s ease}.rr-gnode--dim{opacity:.25}.rr-gedge{fill:none;stroke:var(--rr-edge);stroke-opacity:.75}.rr-gedge--active{stroke:var(--rr-primary);stroke-opacity:1;stroke-width:2}.rr-gedge--missing{stroke:var(--rr-danger);stroke-dasharray:4 3;stroke-opacity:.9}.rr-scope-list{margin:0;padding-left:18px;font-size:13px;color:var(--rr-text-muted);display:flex;flex-direction:column;gap:6px}@media(max-width:1080px){.rr-wb__body{grid-template-columns:1fr;grid-template-rows:auto;overflow-y:auto;display:block}.rr-wb__pane{max-height:none;overflow:visible;border:none!important;border-top:1px solid var(--rr-border)!important}.rr-wb__pane--left{display:none}}.rr-fixpreview{border:1px dashed var(--rr-border-strong);border-radius:var(--rr-radius-s);padding:8px 10px;margin-bottom:var(--rr-space-2);background:var(--rr-surface-2)}.rr-fixpreview__title{font-size:12px;font-weight:700;margin-bottom:6px}.rr-fixpreview__row{display:flex;gap:8px;align-items:baseline;margin-bottom:4px;min-width:0}.rr-fixpreview__label{flex:none;font-size:11px;color:var(--rr-text-muted);width:44px}.rr-fixpreview__row code{font-family:var(--rr-font-mono);font-size:12px;overflow-wrap:anywhere;white-space:pre-wrap}.rr-fixpreview__before{color:var(--rr-danger);text-decoration:line-through}.rr-fixpreview__after{color:var(--rr-ok)}.rr-fixpreview__full{color:var(--rr-ok);font-weight:600}.rr-fixpreview__actions{display:flex;gap:8px;align-items:center;margin-top:6px}.rr-fixpreview__note{font-size:11px;color:var(--rr-text-muted)}.rr-group{border:1px solid var(--rr-border);border-radius:var(--rr-radius-m);margin-bottom:var(--rr-space-2);background:var(--rr-surface)}.rr-group__summary{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;cursor:pointer;list-style:none;font-size:13px;font-weight:600}.rr-group__summary::-webkit-details-marker{display:none}.rr-group__summary:after{content:"▾";color:var(--rr-text-muted)}.rr-group:not([open]) .rr-group__summary:after{content:"▸"}.rr-group__count{font-variant-numeric:tabular-nums;font-size:12px;color:var(--rr-text-muted);background:var(--rr-bg-inset);border-radius:999px;padding:1px 8px}.rr-group>.rr-issue{margin:0 0 1px;border-left:none;border-right:none;border-radius:0}.rr-group>.rr-issue:last-child{border-bottom:none}
