*{box-sizing:border-box}html,body,#root{height:100%}body{color:#f5f5f5;background:#202124;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;appearance:none}.loading{place-items:center;min-height:100vh;display:grid}.app{grid-template-columns:340px minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.app.sidebarCollapsed{grid-template-columns:0 minmax(0,1fr)}.tocPanel{background:#111;border-right:1px solid #343434;height:100vh;overflow-y:auto}.sidebarCollapsed .tocPanel{border-right:0;overflow:hidden}.tocBackdrop{display:none}.toc{padding:20px 16px 32px}.toc h1{letter-spacing:.02em;margin:0 0 18px;font-size:25px}.toc details{border-top:1px solid #2e2e2e;padding:10px 0}.toc summary{cursor:pointer;color:#fff;font-weight:700}.tocItem{text-align:left;color:#ddd;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:72px 1fr;gap:8px;width:100%;margin-top:8px;padding:9px 10px;display:grid}.tocItem:hover,.tocItem.active{color:#fff;background:#2d3b55}.tocItem span{letter-spacing:.04em;font-size:12px;font-weight:800}.tocItem em{font-size:13px;font-style:normal;line-height:1.25}.tocFooter{color:#a8a8a8;border-top:1px solid #2e2e2e;margin-top:28px;padding-top:16px;font-size:12px;line-height:1.45}.tocFooter p{margin:0 0 8px}.tocFooter a{color:#dce7ff;text-decoration:none}.tocFooterIcon{vertical-align:-2px;color:#dce7ff;margin-right:3px;display:inline-block}.main{grid-template-rows:auto 1fr;min-width:0;min-height:0;display:grid;overflow:hidden}.topbar{z-index:3;background:#18191b;border-bottom:1px solid #343434;align-items:center;gap:14px;height:56px;padding:0 16px;display:flex;position:sticky;top:0}.menuButton{color:#fff;background:#25272b;border:1px solid #555;border-radius:8px;place-items:center;width:34px;height:34px;padding:0;display:none}.sidebarToggle,.topIcon{color:#fff;background:#25272b;border:1px solid #555;border-radius:8px;place-items:center;width:34px;height:34px;text-decoration:none;display:inline-grid}.docVersion{color:#aeb7c8;margin-left:auto;font-size:13px}.viewer{grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.viewerControls{background:#242529;border-bottom:1px solid #343434;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:10px 16px;display:grid}.viewerControls button{color:#111827;background:#f3f3f3;border:0;border-radius:7px;place-items:center;min-width:34px;height:34px;padding:7px 10px;display:inline-grid}.viewerControls button:disabled{opacity:.45}.pageControls,.zoomControls{align-items:center;gap:10px;display:flex}.zoomControls{justify-self:center}.searchButton{justify-self:end}.searchPanel{z-index:40;background:#111318f7;border:1px solid #4b5567;border-radius:16px;width:min(420px,100vw - 32px);padding:12px;position:fixed;top:72px;right:24px;box-shadow:0 18px 50px #00000073}.searchRow{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.searchRow input{color:#fff;appearance:none;background:#242833;border:1px solid #4d5565;border-radius:10px;width:100%;padding:9px 10px;font-size:16px}.searchRow button,.searchNav button{color:#111827;background:#eef2ff;border:0;border-radius:8px;place-items:center;padding:7px 10px;display:inline-grid}.searchMeta{color:#aeb7c8;margin-top:8px;font-size:13px}.searchNav{justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.searchExcerpt{text-align:left;color:#eef2ff;background:#273044;border:1px solid #4b5567;border-radius:10px;width:100%;margin-top:10px;padding:10px;line-height:1.35}.canvasWrap{text-align:center;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;height:100%;min-height:0;padding:16px;position:relative;overflow:auto}.pdfLoader{z-index:5;color:#eef2ff;pointer-events:none;background:#202124b8;place-content:center;gap:12px;font-size:14px;display:grid;position:absolute;inset:0}.pdfLoader span{border:4px solid #eef2ff47;border-top-color:#eef2ff;border-radius:50%;justify-self:center;width:38px;height:38px;animation:.8s linear infinite loaderSpin}@keyframes loaderSpin{to{transform:rotate(360deg)}}.canvasWrap:focus{outline:none}.pageLayer{vertical-align:top;background:#fff;margin:0 auto;display:inline-block;position:relative;box-shadow:0 12px 40px #00000073}canvas{pointer-events:none;background:#fff;display:block}.textLayer{opacity:1;text-align:initial;z-index:2;pointer-events:auto;-webkit-user-select:text;user-select:text;forced-color-adjust:none;transform-origin:0 0;line-height:1;position:absolute;inset:0;overflow:hidden}.textLayer span,.textLayer br{color:#0000;white-space:pre;cursor:text;transform-origin:0 0;-webkit-user-select:text;user-select:text;position:absolute}.textLayer span.markedContent{height:0;top:0}.textLayer .highlight{background-color:#b400aa;border-radius:4px;margin:-1px;padding:1px}.textLayer ::selection{background:#0060ff47}.ruleHighlight{mix-blend-mode:multiply;pointer-events:none;z-index:1;background:#ffe2406b;animation:1.2s ease-out highlightPulse;position:absolute;left:0;right:0}@keyframes highlightPulse{0%{background:#ffe240cc}to{background:#ffe2406b}}.ruleNavigator{z-index:30;background:#101216f5;border:1px solid #4b5567;border-radius:18px;grid-template-columns:48px 1fr 48px;align-items:center;gap:12px;width:min(520px,100vw - 48px);padding:14px;display:grid;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 50px #00000073}.ruleNavigator button{color:#111827;background:#e8edf8;border:0;border-radius:12px;height:44px}.ruleNavigator button:disabled{color:#667085;opacity:.55}.ruleNavigator div{min-width:0}.ruleNavigator strong{margin-right:10px}.ruleNavigator span{color:#aeb7c8}.ruleNavigator p{color:#eef2ff;white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;overflow:hidden}@media (width<=820px){.app{grid-template-rows:1fr;grid-template-columns:1fr;height:100dvh;display:grid;overflow:hidden}.tocPanel{z-index:10;width:min(88vw,360px);box-shadow:none;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.sidebarCollapsed .tocPanel{width:min(88vw,360px)}.tocPanel.open{transform:translate(0);box-shadow:18px 0 50px #00000073}.tocBackdrop{z-index:9;background:#00000038;border:0;width:100%;display:block;position:fixed;inset:0}.main{grid-template-rows:auto minmax(0,1fr);height:100dvh}.menuButton{display:inline-grid}.sidebarToggle{display:none}.topbar{gap:10px;height:52px;position:static}.docVersion{display:none}.topbar>div{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.topIcon:first-of-type{margin-left:auto}.viewer{height:100%;min-height:0}.viewerControls{overflow-x:auto}.canvasWrap{text-align:center;padding:6px;display:block}.viewerControls{grid-template-columns:auto auto 1fr;gap:8px;padding:8px}.searchPanel{width:calc(100vw - 16px);top:64px;right:8px}.ruleNavigator{grid-template-columns:42px 1fr 42px;width:calc(100vw - 24px);bottom:12px;right:12px}}
