:root{color:#e5e7eb;scroll-behavior:smooth;background:#1f2933;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}.app-shell{max-width:1120px;margin:0 auto;padding:32px 20px 56px}.app-header{background:#03060e;border:1px solid #3a4655;border-radius:8px;grid-template-columns:minmax(0,1fr) 320px;align-items:center;gap:24px;padding:32px;display:grid}.app-header-compact{background:#03060e;border:1px solid #3a4655;border-radius:8px;flex-direction:row;align-items:center;gap:24px;padding:16px 24px;display:flex}.app-header-compact .brand-logo{flex-shrink:0;width:220px;margin-bottom:0}.compact-file-info{text-align:center;flex:1;min-width:0}.compact-file-label{text-transform:uppercase;letter-spacing:.06em;color:#60a5fa;margin:0 0 2px;font-size:.75rem;font-weight:700}.compact-file-name{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.05rem;font-weight:700;overflow:hidden}.drop-zone-compact{cursor:pointer;border:2px dashed #3a4655;border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:260px;min-height:90px;padding:26px 16px;transition:border-color .15s;display:flex}.drop-zone-compact.dragging{border-color:#60a5fa}.drop-zone-compact-hint{color:#64748b;margin:0;font-size:.78rem}.app-info-card{background:#2a3441;border:1px solid #3a4655;border-radius:8px;gap:14px;margin-top:18px;padding:24px 28px;display:grid}.beta-notice{color:#e8d87a;text-align:center;background:#2e2a18;border:1px solid #7a6520;border-radius:6px;padding:10px 14px;font-size:.9rem;line-height:1.5}.beta-notice strong{letter-spacing:.03em;font-weight:800}.app-info-list{grid-template-columns:repeat(2,minmax(0,max-content));gap:18px 32px;margin:0;display:grid}.app-info-list div{min-width:0}.app-info-list dt{color:#9ca3af;text-transform:uppercase;font-size:.84rem;font-weight:700}.app-info-list dd{color:#f3f4f6;margin:3px 0 0;font-weight:800}.app-info-card p{color:#b4bfcc;margin:0}.app-info-card a{color:#93c5fd}.app-info-card a:hover,.app-info-card a:focus-visible{color:#bfdbfe;outline:none}.app-resources{gap:8px;display:grid}.app-resources h2{color:#f3f4f6;margin:0;font-size:1rem}.app-resources ul{margin:0;padding-left:20px}.app-resources li+li{margin-top:4px}.brand-block{text-align:center;flex-direction:column;align-items:center;margin-bottom:20px;display:flex}.brand-logo{width:min(488px,100%);height:auto;margin-bottom:10px;display:block}.install-section{margin-top:24px}.install-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;margin-top:16px;padding:8px 18px;font-size:.95rem;font-weight:600}.install-button:hover{background:#1d4ed8}.eyebrow{color:#93c5fd;text-transform:uppercase;margin:0 0 8px;font-size:1.23rem;font-weight:700}h1,h2,h3,p{margin-top:0}.filename-card{background:#03060e;border-left:6px solid #60a5fa;border-radius:6px;max-width:860px;margin:32px auto 24px;padding:20px 28px}.filename-card-label{text-transform:uppercase;letter-spacing:.06em;color:#60a5fa;margin:0 0 4px;font-size:.8rem;font-weight:700}.filename-card-name{color:#f1f5f9;word-break:break-all;margin:0;font-size:1.3rem;font-weight:800}h1{color:#f3f4f6;max-width:760px;margin-bottom:12px;font-size:clamp(1rem,2vw,1.7rem);line-height:1.05}.app-header p:not(.eyebrow){color:#b4bfcc;max-width:720px;margin-bottom:0}.drop-zone{cursor:pointer;background:#24313d;border:2px dashed #4a5a68;border-radius:8px;align-content:center;gap:12px;min-height:220px;padding:20px;display:grid}.drop-zone.dragging,.drop-zone:focus-visible{background:#283746;border-color:#93c5fd;outline:none}.file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.drop-title{color:#f3f4f6;margin-bottom:0;font-weight:800}.drop-copy{color:#b4bfcc;margin-bottom:2px}.choose-file-button{color:#dbeafe;cursor:pointer;background:#304155;border:1px solid #5d7893;border-radius:6px;justify-self:start;min-height:42px;padding:9px 14px;font-weight:700}.choose-file-button:hover,.choose-file-button:focus-visible{background:#394d63}.choose-file-button:disabled{cursor:not-allowed;opacity:.7}.notice,.error{border-radius:8px;margin:18px 0 0;padding:14px 16px}.notice{background:#26384a;border:1px solid #4d6680}.error{color:#fecaca;background:#442a2e;border:1px solid #8a4d54}.report{margin-top:24px}.summary{background:#2a3441;border:1px solid #3a4655;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:24px;padding:28px;display:grid}.summary h2{color:#f3f4f6;margin-bottom:8px;font-size:1.8rem}.summary-copy{color:#b4bfcc;overflow-wrap:break-word;margin-bottom:0}.summary-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;display:grid}.summary-cell{min-width:0;color:inherit;background:#24313d;border:1px solid #3a4655;border-left-width:6px;border-radius:8px;padding:16px;display:block}.summary-cell--fail{border-left-color:#d16d6d}.summary-cell--fail .summary-cat-count{color:#e8a0a0}.summary-cell--review{border-left-color:#d1a14a}.summary-cell--review .summary-cat-count{color:#e8c87a}.summary-cell--pass{border-left-color:#6bbf8f}.summary-cell--pass .summary-cat-count{color:#6bbf8f}.summary-grid dt{color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;font-size:.86rem;font-weight:700}.summary-grid dd{margin:8px 0 0}.summary-cell-zero{color:#4a5568;font-size:1.6rem;font-weight:800}.summary-cat-links{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.summary-cat-link{color:inherit;border-radius:5px;justify-content:space-between;align-items:flex-start;gap:8px;padding:4px 8px;text-decoration:none;transition:background .12s;display:flex}.summary-cat-link:hover,.summary-cat-link:focus-visible{background:#2d3d4d;outline:none}.summary-cat-name{color:#b4bfcc;font-size:.82rem}.summary-cat-count{color:#f3f4f6;flex-shrink:0;font-size:1.3rem;font-weight:800}.checks{gap:14px;margin-top:18px;display:grid}.check-group{gap:14px;margin-top:8px;scroll-margin-top:100px;display:grid}.check-group-heading{text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin:0;font-size:.95rem;font-weight:700}.fail-intro,.warn-intro,.review-intro,.pass-intro{border-radius:6px;margin:0;padding:10px 16px;font-size:.9rem}.fail-intro{color:#e8a0a0;background:#352222;border:1px solid #6d3d3d}.warn-intro{color:#e8b080;background:#352a1a;border:1px solid #6d4a2a}.review-intro{color:#a8c498;background:#2a3322;border:1px solid #4a6040}.pass-intro{color:#6bbf8f;background:#1f2d28;border:1px solid #3a5a46}.check-category-label{text-transform:uppercase;letter-spacing:.08em;color:#6b7a8d;border-top:1px solid #2e3a4a;justify-content:space-between;align-items:center;margin:4px 0 0;padding:6px 0 4px;scroll-margin-top:100px;font-size:.72rem;font-weight:700;display:flex}.check-category-top{text-transform:none;letter-spacing:normal;color:#4a5a6d;font-size:.72rem;font-weight:400;text-decoration:none}.check-category-top:hover,.check-category-top:focus-visible{color:#b4bfcc}.check-card{background:#2a3441;border:1px solid #3a4655;border-left-width:6px;border-radius:8px;padding:20px}.check-card.fail{border-left-color:#d16d6d}.check-card.warn{border-left-color:#d1864a}.check-card.review{border-left-color:#d1a14a}.check-card.pass{border-left-color:#6bbf8f}.check-header{align-items:center;gap:12px;margin-bottom:10px;display:flex}.check-header h3{color:#f3f4f6;margin:0;font-size:1.15rem}.status-badge{color:#e5e7eb;text-align:center;text-transform:uppercase;background:#364454;border-radius:999px;min-width:76px;padding:4px 9px;font-size:.78rem;font-weight:800}.check-card.fail .status-badge{color:#d16d6d;background:#3d1e1e}.check-card.warn .status-badge{color:#d1864a;background:#3d2614}.check-card.review .status-badge{color:#d1a14a;background:#3d2e1a}.check-card.pass .status-badge{color:#6bbf8f;background:#1e3d2e}.check-card.skipped .status-badge{color:#7a8a9a;background:#2e3540}.found{margin-bottom:8px}.expected{color:#aab4c1;margin-bottom:0}.expected-items{color:#aab4c1;margin:4px 0 0;padding-left:20px}.expected-items li{margin-bottom:2px}.expected-item-sub{margin-left:16px;list-style-type:circle}.fixes{margin-top:16px}.fix-note{color:#9ca3af;margin:8px 0 0;font-size:.85rem}.fix-toggle{color:#dbeafe;cursor:pointer;background:#304155;border:1px solid #4d6680;border-radius:6px;min-height:40px;padding:8px 12px}.fix-toggle:hover,.fix-toggle:focus-visible{background:#394d63}.fixes ol{margin:12px 0 0;padding-left:24px}.fixes li+li{margin-top:6px}.check-resources{margin-top:14px}.check-resources h4{color:#f3f4f6;margin:0 0 6px;font-size:.95rem}.check-resources ul{margin:0;padding-left:24px}.check-resources a{color:#93c5fd}.check-resources a:hover,.check-resources a:focus-visible{color:#bfdbfe;outline:none}.missing-items{background:#1c2a3a;border:1px solid #374151;border-radius:6px;margin-top:14px;padding:10px 14px}.missing-items-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem;font-weight:600}.missing-items ul{margin:0;padding-left:20px}.missing-items li{color:#e5e7eb;font-family:Times New Roman,Times,serif;font-size:.85rem;line-height:1.5}.missing-items li+li{margin-top:4px}.citation-example{margin-bottom:12px}.citation-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.citation-example-demo{gap:12px;display:flex}.citation-example-col{flex-direction:column;flex:1;gap:4px;max-width:240px;display:flex}.citation-example-tag{letter-spacing:.02em;font-size:.78rem;font-weight:600}.citation-example-tag--wrong{color:#f87171}.citation-example-tag--right{color:#6ee7b7}.citation-example-page{color:#e5e7eb;background:#111827;border:1px solid #374151;border-radius:6px;padding:10px 12px;font-family:Times New Roman,Times,serif;font-size:.85rem;line-height:1.5}.citation-body-text{text-indent:1.5em;margin:0}.citation-inline{color:#93c5fd;font-weight:600}.citation-inline--highlighted,.citation-body-text--highlighted{color:#fca5a5;-webkit-text-decoration:underline wavy #f87171;text-decoration:underline wavy #f87171}.font-example--wrong-heading{color:#fca5a5;text-indent:0;margin-bottom:4px;font-family:Arial,sans-serif;font-size:15px;font-weight:700;-webkit-text-decoration:underline wavy #f87171;text-decoration:underline wavy #f87171}.font-example--wrong-body{text-indent:0;font-family:Arial,sans-serif;font-size:13px}.font-example--right-heading{text-indent:0;margin-bottom:4px;font-family:Times New Roman,Times,serif;font-size:12px;font-weight:700}.font-example--right-body{text-indent:0;font-family:Times New Roman,Times,serif;font-size:12px}.citation-divider{background:#374151;height:1px;margin:8px 0}.citation-ref-entry{text-indent:-1.5em;margin:0;padding-left:1.5em;line-height:1.5}.citation-ref-entry--highlighted{color:#fca5a5;-webkit-text-decoration:underline wavy #f87171;text-decoration:underline wavy #f87171}.citation-ref-missing{color:#6b7280;margin:4px 0 0;padding-left:1.5em;font-size:.82rem;font-style:italic}.title-page-example{margin-bottom:12px}.title-page-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.title-page-demo{color:#e5e7eb;text-align:center;background:#111827;border:1px solid #374151;border-radius:6px;max-width:340px;padding:28px 20px;font-family:Times New Roman,Times,serif;font-size:.95rem}.title-page-title{margin:0;font-weight:700;line-height:1.4}.title-page-spacer{height:28px}.title-page-meta{margin:0;line-height:1.8}.margins-example{margin-bottom:12px}.margins-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.margins-demo{align-items:flex-start;gap:16px;display:flex}.margins-col{flex-direction:column;align-items:center;gap:4px;display:flex}.margins-tag{letter-spacing:.02em;align-self:flex-start;font-size:.78rem;font-weight:600}.margins-tag--wrong{color:#f87171}.margins-tag--right{color:#6ee7b7}.margins-page{background:#1e293b;border:1px solid #4b5563;border-radius:3px;align-items:stretch;width:90px;height:116px;display:flex}.margins-content{background:#111827;flex-direction:column;flex:1;justify-content:flex-start;gap:5px;display:flex}.margins-content--tight{margin:4px;padding:5px 4px}.margins-content--wide{margin:24px;padding:5px 4px}.margins-content--correct{margin:14px;padding:5px 4px}.margins-line{background:#374151;border-radius:2px;height:5px}.margins-line--short{width:55%}.margins-caption{color:#9ca3af;font-size:.75rem}.para-spacing-example{margin-bottom:12px}.para-spacing-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.para-spacing-demo{gap:12px;display:flex}.para-spacing-col{flex-direction:column;flex:1;gap:4px;max-width:220px;display:flex}.para-spacing-tag{letter-spacing:.02em;font-size:.78rem;font-weight:600}.para-spacing-tag--wrong{color:#f87171}.para-spacing-tag--right{color:#6ee7b7}.para-spacing-page{color:#e5e7eb;background:#111827;border:1px solid #374151;border-radius:6px;padding:10px 12px;font-family:Times New Roman,Times,serif;font-size:.85rem}.para-spacing-para{text-indent:1.5em;margin:0;line-height:2}.para-spacing-para--extra{margin-bottom:10px}.para-spacing-para--none{margin-bottom:0}.page-numbering-example{margin-bottom:12px}.page-numbering-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.page-numbering-demo{gap:12px;display:flex}.page-numbering-col{flex-direction:column;flex:1;gap:4px;max-width:160px;display:flex}.page-numbering-tag{letter-spacing:.02em;font-size:.78rem;font-weight:600}.page-numbering-tag--wrong{color:#f87171}.page-numbering-tag--right{color:#6ee7b7}.page-numbering-page{background:#111827;border:1px solid #374151;border-radius:6px;overflow:hidden}.page-numbering-header{border-bottom:1px solid #374151;justify-content:flex-end;align-items:center;min-height:22px;padding:5px 10px;display:flex}.page-numbering-number{color:#e5e7eb;font-family:Times New Roman,Times,serif;font-size:.8rem}.page-numbering-body{flex-direction:column;gap:5px;padding:10px 10px 12px;display:flex}.page-numbering-line{background:#374151;border-radius:2px;height:6px}.page-numbering-line--short{width:55%}.line-spacing-example{margin-bottom:12px}.line-spacing-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.line-spacing-demo{gap:12px;display:flex}.line-spacing-col{flex-direction:column;flex:1;gap:4px;max-width:220px;display:flex}.line-spacing-tag{letter-spacing:.02em;font-size:.78rem;font-weight:600}.line-spacing-tag--wrong{color:#f87171}.line-spacing-tag--right{color:#6ee7b7}.line-spacing-page{color:#e5e7eb;background:#111827;border:1px solid #374151;border-radius:6px;padding:10px 12px;font-family:Times New Roman,Times,serif;font-size:.85rem}.line-spacing-entry{text-indent:-1.5em;margin:0;padding-left:1.5em}.line-spacing-entry--single{line-height:1.2}.line-spacing-entry--single+.line-spacing-entry--single{margin-top:4px}.line-spacing-entry--double{line-height:2}.line-spacing-body-para{text-indent:1.5em;margin:0}.line-spacing-heading-para{margin:0;font-weight:700}.first-line-indent-example{margin-bottom:12px}.first-line-indent-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.first-line-indent-demo{gap:12px;display:flex}.first-line-indent-col{flex-direction:column;flex:1;gap:4px;max-width:220px;display:flex}.first-line-indent-tag{letter-spacing:.02em;font-size:.78rem;font-weight:600}.first-line-indent-tag--wrong{color:#f87171}.first-line-indent-tag--right{color:#6ee7b7}.first-line-indent-page{color:#e5e7eb;background:#111827;border:1px solid #374151;border-radius:6px;padding:10px 12px;font-family:Times New Roman,Times,serif;font-size:.85rem;line-height:1.5}.first-line-indent-para{margin:0 0 6px}.first-line-indent-para:last-child{margin-bottom:0}.first-line-indent-para--none{text-indent:0}.first-line-indent-para--indented{text-indent:1.5em}.hanging-indent-example{margin-bottom:12px}.hanging-indent-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.hanging-indent-demo{color:#e5e7eb;background:#111827;border:1px solid #374151;border-radius:6px;max-width:480px;padding:12px 16px;font-family:Times New Roman,Times,serif;font-size:.95rem}.hanging-indent-entry{text-indent:-2em;margin:0;padding-left:2em;line-height:2}.heading-alignment-example{margin-bottom:12px}.heading-alignment-example-label{color:#d1d5db;margin:0 0 6px;font-size:.9rem}.heading-alignment-demo{gap:12px;display:flex}.heading-alignment-col{flex-direction:column;flex:1;gap:4px;max-width:200px;display:flex}.heading-alignment-tag{letter-spacing:.02em;font-size:.78rem;font-weight:600}.heading-alignment-tag--wrong{color:#f87171}.heading-alignment-tag--right{color:#6ee7b7}.heading-alignment-page{color:#e5e7eb;background:#111827;border:1px solid #374151;border-radius:6px;padding:10px 12px;font-family:Times New Roman,Times,serif;font-size:.9rem}.heading-alignment-heading{margin:0 0 8px;font-weight:700}.heading-alignment-heading--left{text-align:left}.heading-alignment-heading--center{text-align:center}.heading-alignment-lines{flex-direction:column;gap:5px;display:flex}.heading-alignment-lines span{background:#374151;border-radius:3px;height:6px;display:block}.heading-alignment-line--short{width:55%}.back-to-top{color:#6b7f90;justify-self:end;font-size:.85rem;text-decoration:none}.back-to-top:hover,.back-to-top:focus-visible{color:#93c5fd;outline:none}@media (width<=760px){.app-header,.summary{grid-template-columns:1fr;padding:22px}.app-info-card{padding:22px}.app-info-list,.summary-grid{grid-template-columns:1fr}}.app-footer{text-align:center;color:#6b7280;border-top:1px solid #3a4655;margin-top:48px;padding-top:20px;font-size:.8rem;line-height:1.6}.app-footer p{margin:0}.print-report-header{display:none}.print-report-btn{color:#dbeafe;cursor:pointer;background:#304155;border:1px solid #4d6680;border-radius:6px;margin-top:16px;padding:8px 16px;font-size:.9rem}.print-report-btn:hover,.print-report-btn:focus-visible{background:#394d63;outline:none}@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{margin:1in}body{color:#000;background:#fff;font-size:11pt}.app-header,.app-header-compact,.drop-zone,.drop-zone-compact,.back-to-top,.fix-toggle,.app-footer,.print-report-btn{display:none!important}.print-report-header{border-bottom:2px solid #333;margin-bottom:20px;padding-bottom:12px;display:block}.print-report-title{color:#000;margin:0 0 4px;font-size:1.4rem;font-weight:700}.print-report-meta{color:#555;margin:0;font-size:.85rem}.summary{background:#fff;border-color:#ccc;padding:16px 0;display:block}.summary h2{color:#000}.eyebrow{color:#555}.summary-copy{color:#333}.summary-grid{gap:12px;margin-top:12px;display:flex}.summary-cell{color:#000;background:#f4f4f4;border-color:#ccc}.summary-grid dt{color:#555}.summary-cat-link{color:#000}.summary-cat-name{color:#555}.summary-cat-count{color:#000}.summary-cell-zero{color:#aaa}.check-group{margin-top:20px}.check-group-heading{color:#000;border-bottom:1px solid #ccc;padding-bottom:4px}.fail-intro,.warn-intro,.review-intro,.pass-intro{color:#333!important;background:#f5f5f5!important;border-color:#ccc!important}.check-category-label{color:#555;border-top-color:#ccc}.check-category-top{display:none}.summary-cell--fail{border-left-color:#d16d6d}.summary-cell--review{border-left-color:#d1a14a}.summary-cell--pass{border-left-color:#6bbf8f}.check-card{page-break-inside:avoid;break-inside:avoid;background:#fff;border-color:#ccc;margin-bottom:10px}.check-card.fail{border-left-color:#d16d6d}.check-card.warn{border-left-color:#d1864a}.check-card.review{border-left-color:#d1a14a}.check-card.pass{border-left-color:#6bbf8f}.status-badge{color:#333;background:#eee}.check-card.fail .status-badge{color:#b00;background:#fde8e8}.check-card.warn .status-badge{color:#8a3800;background:#fef0e6}.check-card.review .status-badge{color:#6b4500;background:#fef7e6}.check-card.pass .status-badge{color:#155d37;background:#e8f7ef}.check-card.skipped .status-badge{color:#555;background:#e8eaec}.check-header h3,.found{color:#000}.expected{color:#555}.fixes [hidden]{display:block!important}.fixes ol{color:#000}.missing-items{background:#f5f5f5!important;border-color:#ccc!important}.missing-items-label,.missing-items li{color:#333!important}.check-resources h4{color:#333}.check-resources a{color:#1a56db}.title-page-demo,.para-spacing-page,.page-numbering-page,.line-spacing-page,.first-line-indent-page,.heading-alignment-page,.citation-example-page,.hanging-indent-demo{color:#000!important;background:#fff!important;border-color:#bbb!important}.margins-page{background:#e8e8e8!important;border-color:#bbb!important}.margins-content{background:#fff!important}.margins-line,.page-numbering-line{background:#bbb!important}.page-numbering-header{border-bottom-color:#bbb!important}.page-numbering-number{color:#000!important}.heading-alignment-lines span{background:#bbb!important}.citation-inline{color:#1a56db!important}.citation-inline--highlighted,.citation-body-text--highlighted,.font-example--wrong-heading{color:#b00!important;text-decoration-color:#b00!important}[class*=-tag--wrong]{color:#b00!important}[class*=-tag--right]{color:#166534!important}[class*=-example-label],.hanging-indent-example-label,.margins-caption{color:#555!important}}
