@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.aspect-\[380\/230\]{aspect-ratio:380/230}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-\[420px\]{height:420px}.w-5{width:calc(var(--spacing) * 5)}.w-full{width:100%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-2{gap:calc(var(--spacing) * 2)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-\[3px\]{border-radius:3px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-\[\#F7F9F8\]{background-color:#f7f9f8}.text-right{text-align:right}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[\#2B7A53\]{color:#2b7a53}.text-\[\#5F6368\]{color:#5f6368}.text-\[\#6B7A73\]{color:#6b7a73}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#18302d;--muted:#6c7d78;--paper:#f8f5ed;--line:#dfe6e2;--green:#174f49;--copper:#d48c58;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);background:#e8eeeb;margin:0;font-family:Epsilon,Tahoma,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}.book-app{background:radial-gradient(circle at 10% 0,#d48c581f,#0000 24rem),#e8eeeb;height:100svh;overflow:hidden}.book-toolbar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f8faf8eb;border-bottom:1px solid #18302d1a;justify-content:space-between;align-items:center;gap:1rem;min-height:72px;padding:.7rem clamp(1rem,4vw,3rem);display:flex;position:sticky;top:0;box-shadow:0 8px 30px #18302d0a}.brand{align-items:center;gap:.75rem;display:flex}.brand-mark{background:var(--green);color:#fff;border-radius:14px 5px;place-items:center;width:42px;height:42px;font-size:1.25rem;display:grid;box-shadow:0 7px 15px #174f492e}.brand strong,.brand small{display:block}.brand strong{font-size:.95rem}.brand small{color:var(--muted);margin-top:.15rem;font-size:.7rem}.toolbar-actions{align-items:center;gap:.55rem;display:flex}.toolbar-actions button,.toolbar-actions a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:.65rem .85rem;text-decoration:none}.toolbar-actions button span{color:var(--green);background:#e7f0ed;border-radius:99px;margin-right:.35rem;padding:.05rem .4rem;font-size:.72rem}.toolbar-actions a{background:var(--green);color:#fff;border-color:var(--green)}.qr-shortcut{z-index:30;border:1px solid var(--green);background:var(--green);color:#fff;border-radius:10px;padding:.65rem .9rem;text-decoration:none;position:fixed;top:1rem;right:1rem;box-shadow:0 8px 24px #174f4929}.reader-shell{height:100svh;overflow:hidden}.page-controls{z-index:30;min-height:58px;padding:.55rem 1rem calc(.55rem + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--muted);background:#f8faf8eb;border-top:1px solid #18302d1a;justify-content:center;align-items:center;gap:.55rem;font-size:.82rem;display:flex;position:fixed;bottom:0;left:0;right:0}.page-controls button{width:34px;height:34px;color:var(--ink);background:#f9fbfa;border:1px solid #cfd9d4;border-radius:9px;place-items:center;font-size:1.05rem;display:grid}.page-controls .fullscreen-control svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.page-controls label{align-items:center;gap:.35rem;display:flex}.page-controls input{width:54px;color:var(--ink);text-align:center;background:#fff;border:1px solid #cfd9d4;border-radius:7px;outline:none;padding:.35rem}.control-divider{background:#cbd5d0;width:1px;height:24px;margin:0 .3rem}.pdf-viewport{width:100%;height:calc(100svh - 58px - env(safe-area-inset-bottom));text-align:center;direction:ltr;padding:clamp(8px,1.2svh,14px) 0;overflow:auto}.pdf-viewport.can-pan{cursor:grab;overscroll-behavior:contain}.pdf-viewport.is-panning,.pdf-viewport.is-panning .webgl-book canvas{cursor:grabbing}.book-app:fullscreen,.book-app:fullscreen .reader-shell{width:100%;height:100%}.book-app:fullscreen .pdf-viewport{height:calc(100% - 58px - env(safe-area-inset-bottom))}.react-pdf__Document{direction:ltr;display:inline-block}.react-pdf__Page{background:#fff;border-radius:3px;overflow:hidden;box-shadow:0 18px 55px #18302d2e,0 1px 2px #18302d26}.react-pdf__Page canvas{max-width:none;display:block;height:auto!important}.turn-hint{width:fit-content;color:var(--muted);background:#ffffffb8;border-radius:99px;margin:0 auto .75rem;padding:.35rem .75rem;font-size:.72rem;display:block}.book-stage{contain:layout paint;background:0 0;width:100%;height:100%;min-height:0;margin:0 auto;position:relative;overflow:hidden}.book-stage>.react-pdf__Document{width:100%;height:100%;display:block}.webgl-book{width:100%;height:100%;position:relative;overflow:hidden}.webgl-book canvas{opacity:0;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:100%;transition:opacity .3s;display:block}.webgl-book.is-ready canvas{opacity:1}.book-initial-loader{z-index:4;color:var(--muted);background:0 0;place-items:center;font-size:.82rem;display:grid;position:absolute;inset:0}.webgl-book canvas.grabbing{cursor:grabbing}.webgl-book canvas.chart-hover{cursor:none}.chart-hover-cursor{--chart-cursor-x:-100px;--chart-cursor-y:-100px;z-index:8;opacity:0;pointer-events:none;transform:translate3d(var(--chart-cursor-x), var(--chart-cursor-y), 0);will-change:transform;transition:transform 70ms linear,opacity .12s;position:absolute;top:0;left:0}.chart-hover-cursor__content{color:var(--green);filter:drop-shadow(0 5px 10px #18302d33);transform-origin:7px 5px;direction:ltr;align-items:flex-start;transition:transform .18s cubic-bezier(.2,.9,.2,1.25);display:flex;position:relative;transform:translate(-7px,-5px)scale(.72)rotate(-4deg)}.chart-hover-cursor__content:before{content:"";opacity:0;border:1px solid #d48c58b8;border-radius:50%;width:12px;height:12px;position:absolute;top:3px;left:4px;transform:scale(.4)}.chart-hover-cursor__pointer{z-index:1;flex:none;width:26px;height:31px;position:relative}.chart-hover-cursor__label{background:var(--green);color:#fff;white-space:nowrap;direction:rtl;border:1px solid #ffffff47;border-radius:5px 12px 12px;margin-top:20px;margin-left:-2px;padding:.38rem .65rem;font-size:.72rem;font-weight:500;line-height:1;box-shadow:0 8px 22px #174f4938}.chart-hover-cursor.is-visible{opacity:1}.chart-hover-cursor.is-visible .chart-hover-cursor__content{transform:translate(-7px,-5px)scale(1)rotate(0)}.chart-hover-cursor.is-visible .chart-hover-cursor__content:before{animation:1.65s ease-out infinite chart-cursor-pulse}.chart-hover-cursor.is-pressed .chart-hover-cursor__content{transition-duration:80ms;transform:translate(-7px,-5px)scale(.88)}@keyframes chart-cursor-pulse{0%{opacity:.8;transform:scale(.4)}70%,to{opacity:0;transform:scale(2.5)}}.pdf-flipbook{filter:drop-shadow(0 22px 26px #18302d33);transform-style:preserve-3d;direction:ltr;margin:0 auto}.pdf-flipbook.stf__parent{perspective:1350px;transform:scaleX(-1)translateZ(0)}.pdf-flipbook .stf__block{transform-style:preserve-3d;perspective:1350px!important}.pdf-flipbook .stf__wrapper{transform-style:preserve-3d}.flip-page{cursor:grab;backface-visibility:hidden;background:#fff;border:1px solid #1c2d2a14;place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.flip-page:active{cursor:grabbing}.flip-page:after{z-index:2;content:"";pointer-events:none;mix-blend-mode:multiply;background:linear-gradient(90deg,#141c1b1f,#0000 3.5% 94%,#141c1b09);position:absolute;inset:0}.flip-page>.pdf-half-page,.flip-page>.pdf-cover-page,.flip-page>.deferred-page,.flip-page>.pdf-page-image{transform:scaleX(-1)}.pdf-page-image{object-fit:fill;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.flip-blank{background:linear-gradient(105deg,#e5e9e5,#f7f7f3);border-color:#0000}.flip-blank:after{display:none}.flip-page .react-pdf__Page{box-shadow:none;border-radius:0}.pdf-half-page,.pdf-cover-page{background:#fff;width:100%;height:100%;position:relative;overflow:hidden}.pdf-half-page .react-pdf__Page{position:absolute;top:0;width:200%!important;height:100%!important}.pdf-half-left .react-pdf__Page{left:0}.pdf-half-right .react-pdf__Page{right:0}.pdf-half-page .react-pdf__Page canvas{width:100%!important;height:100%!important}.flip-page.flip-cover{background:#dfe7e3}.pdf-cover-page{background:#dfe7e3;place-items:center;display:grid}.pdf-cover-page .react-pdf__Page{background:0 0;place-items:center;width:100%;height:100%;display:grid}.pdf-cover-page .react-pdf__Page canvas{object-fit:contain;max-width:100%;width:auto!important;height:100%!important}.flip-page .page-skeleton{width:100%;min-height:100%;box-shadow:none}.deferred-page{color:#a1aca7;font-size:.8rem}.spread-range{direction:ltr;margin-right:-.2rem}.pdf-message,.page-skeleton{width:min(80vw,700px);min-height:70vh;color:var(--muted);background:#fff;border-radius:4px;place-items:center;display:grid;box-shadow:0 18px 55px #18302d1f}.book-stage .pdf-message{border-radius:inherit;width:100%;min-height:100%;box-shadow:none;background:0 0;position:absolute;inset:0}.skeleton-action{background:#ffffffb8;border-radius:10px;width:150px;height:40px;display:block}.skeleton-hint{visibility:hidden}.pdf-message.error{color:#9d3f3f}.page-skeleton{background:linear-gradient(110deg,#fff 25%,#f3f5f3 40%,#fff 55%) 0 0/200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position-x:-200%}}.empty-book{background:#ffffff94;border:1px dashed #bdcbc5;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;width:min(100%,650px);min-height:65vh;margin:2rem auto;padding:2rem;display:flex}.empty-book-icon{border:2px solid var(--copper);width:86px;height:105px;color:var(--copper);border-radius:8px 18px 8px 8px;place-items:center;font-weight:700;display:grid}.empty-book h1{margin:1.3rem 0 .45rem;font-size:clamp(1.4rem,4vw,2rem)}.empty-book p{max-width:32rem;color:var(--muted);margin:0;line-height:2}.file-picker{background:var(--green);color:#fff;cursor:pointer;border-radius:10px;margin-top:1.3rem;padding:.75rem 1.2rem}.file-picker input{display:none}.drawer-backdrop,.chart-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0b1f1c94;position:fixed;inset:0}.chart-drawer{background:#f8faf8;flex-direction:column;width:min(92vw,430px);height:100%;animation:.25s ease-out drawer-in;display:flex;position:absolute;top:0;right:0;box-shadow:-25px 0 70px #0000002e}@keyframes drawer-in{0%{transform:translate(100%)}}.chart-drawer header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:1.4rem;display:flex}.chart-drawer h2{margin:.15rem 0 0}.chart-drawer small{color:var(--copper)}.chart-drawer header button,.chart-modal header>button{width:40px;height:40px;color:var(--ink);background:#e7eeeb;border:0;border-radius:50%;place-items:center;font-size:1.6rem;display:grid}.chart-search{background:#fff;border:1px solid #ccd7d2;border-radius:10px;outline:none;margin:1rem 1.2rem;padding:.8rem 1rem}.chart-search:focus{border-color:var(--green);box-shadow:0 0 0 3px #174f491a}.chart-list{padding:0 1.2rem 1.2rem;overflow-y:auto}.chart-list button{border:0;border-bottom:1px solid var(--line);text-align:right;background:0 0;grid-template-columns:54px 1fr;align-items:center;gap:.7rem;width:100%;padding:.8rem 0;display:grid}.chart-list button span{color:var(--green);text-align:center;background:#e8efec;border-radius:6px;padding:.28rem;font:.6rem ui-monospace,monospace}.chart-list button strong{line-height:1.7}.chart-modal-backdrop{place-items:center;padding:clamp(.5rem,2vw,1.5rem);animation:.38s ease-out both chart-backdrop-in;display:grid;overflow:hidden}.chart-modal-backdrop:before{z-index:0;top:var(--chart-origin-y,50vh);left:var(--chart-origin-x,50vw);content:"";pointer-events:none;border:1px solid #d48c58b3;border-radius:50%;width:18px;height:18px;animation:.72s cubic-bezier(.2,.75,.25,1) both chart-origin-pulse;position:fixed}.chart-modal{z-index:1;width:min(100%,1180px);height:min(92dvh,820px);transform-origin:var(--chart-origin-x-percent,50%) var(--chart-origin-y-percent,50%);will-change:transform, opacity, clip-path;background:#fff;border:1px solid #ffffff80;border-radius:22px;flex-direction:column;animation:.52s cubic-bezier(.16,1,.3,1) both chart-modal-reveal;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 100px #00000047}.chart-modal>header{animation:.38s ease-out .14s both chart-modal-content-in}.chart-modal>.interactive-chart,.chart-modal>.chart-load-state,.chart-modal>footer{animation:.42s ease-out .2s both chart-modal-content-in}@keyframes chart-backdrop-in{0%{-webkit-backdrop-filter:blur();backdrop-filter:blur();background-color:#0b1f1c00}}@keyframes chart-origin-pulse{0%{opacity:0;transform:translate(-50%,-50%)scale(.2);box-shadow:0 0 #d48c5840}28%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(3.4);box-shadow:0 0 0 36px #d48c5800}}@keyframes chart-modal-reveal{0%{opacity:0;clip-path:circle(0 at var(--chart-origin-x-percent,50%) var(--chart-origin-y-percent,50%));border-radius:34px;transform:translateY(18px)scale(.94)}58%{opacity:1}to{opacity:1;clip-path:circle(150% at var(--chart-origin-x-percent,50%) var(--chart-origin-y-percent,50%));border-radius:22px;transform:translateY(0)scale(1)}}@keyframes chart-modal-content-in{0%{opacity:0;transform:translateY(8px)}}.chart-modal header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:clamp(1rem,3vw,1.65rem) clamp(1rem,3vw,2rem);display:flex}.chart-modal header small{color:var(--copper)}.chart-modal h2{margin:.2rem 0 0;font-size:clamp(1.1rem,3vw,1.65rem);line-height:1.6}.chart-modal header p{color:var(--muted);margin:.2rem 0 0;font-size:.78rem}.interactive-chart{direction:ltr;flex:1;min-width:0;min-height:420px;padding:clamp(.5rem,1.6vw,1.25rem)}.chart-canvas{width:100%;height:clamp(360px,58vw,620px)}.chart-canvas--wide{aspect-ratio:380/230}.chart-with-side-legend{align-items:stretch;gap:clamp(.75rem,2vw,1.5rem);width:100%;height:clamp(420px,58vw,650px);display:flex}.treemap-chart{width:100%;max-width:900px;margin-inline:auto}.treemap-chart__canvas{aspect-ratio:1;width:min(100%,640px);margin-inline:auto;position:relative}.treemap-chart__legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.25rem;margin-top:1rem;display:grid}.treemap-chart__legend-item{color:#4b5563;text-align:right;overflow-wrap:anywhere;align-items:flex-start;gap:.5rem;min-width:0;font-family:Epsilon,Tahoma,sans-serif;font-size:clamp(.82rem,1.5vw,1rem);line-height:1.8;display:inline-flex}.treemap-chart__legend-item>[aria-hidden=true]{border-radius:3px;flex:0 0 12px;width:12px;height:12px;margin-top:.45em}.chart-load-state{min-height:260px;color:var(--muted);flex:1;place-items:center;display:grid}.chart-load-state.error{color:#9d3f3f}.chart-modal footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1.5rem;font-size:.78rem;display:flex}.chart-modal footer button{background:var(--green);color:#fff;border:0;border-radius:9px;padding:.65rem 1rem}.public-chart-page{background:#f4f7f5;min-height:100dvh;padding:1rem;display:flex}.public-chart-page .interactive-chart{background:#fff;border:1px solid #18302d12;border-radius:18px;width:100%;min-height:calc(100dvh - 2rem);overflow:hidden;box-shadow:0 18px 55px #18302d14}.qr-page{background:radial-gradient(circle at 90% 0,#d48c581f,#0000 25rem),#edf2ef;min-height:100dvh;padding:clamp(1rem,4vw,3rem)}.qr-catalog{width:min(100%,1440px);margin:auto}.qr-nav{margin-bottom:1rem}.qr-nav a{color:var(--green);text-decoration:none}.qr-catalog-header{justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1.5rem;display:flex}.eyebrow{color:var(--copper);font-size:.82rem}.qr-catalog-header h1{margin:.25rem 0;font-size:clamp(1.8rem,5vw,3rem)}.qr-catalog-header p{max-width:55rem;color:var(--muted);margin:0;line-height:1.9}.qr-summary{border:1px solid var(--line);min-width:100px;color:var(--muted);background:#fff;border-radius:16px;place-items:center;padding:1rem;display:grid}.qr-summary strong{color:var(--green);font-size:2rem}.qr-tools{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:.6rem;display:flex}.qr-search{width:min(100%,540px);color:var(--ink);display:block}.qr-search span{margin-bottom:.35rem;display:block}.qr-search input{background:#fff;border:1px solid #cbd6d1;border-radius:10px;outline:none;width:100%;padding:.75rem 1rem}.download-all{background:var(--green);color:#fff;border:0;border-radius:10px;min-width:220px;padding:.78rem 1rem}.qr-results{color:var(--muted);margin-bottom:1rem;font-size:.8rem}.qr-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.qr-item{border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 12px 35px #18302d0f}.qr-item-image{background:#f5f8f6;place-items:center;padding:1rem;display:grid}.qr-item-image img,.qr-placeholder{aspect-ratio:1;border-radius:8px;width:min(100%,210px);height:auto}.qr-placeholder{background:#e6ece9}.qr-item-content{padding:1rem}.qr-type{color:var(--green);background:#e8f0ed;border-radius:99px;padding:.2rem .5rem;font:.65rem ui-monospace,monospace}.qr-item h2{min-height:3.5rem;margin:.5rem 0;font-size:.95rem;line-height:1.8}.qr-item p{overflow-wrap:anywhere;min-height:2.3rem;color:var(--muted);text-align:left;margin:.55rem 0 0;font:.68rem/1.5 ui-monospace,monospace}.page-map{color:var(--muted);justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.page-map strong{color:var(--ink);font-size:.9rem}.stable-id{overflow-wrap:anywhere;color:#8a9893;text-align:left;margin-top:.45rem;font:.65rem/1.5 ui-monospace,monospace;display:block}.qr-actions{gap:.5rem;margin-top:.8rem;display:flex}.qr-actions a{background:var(--green);color:#fff;text-align:center;border-radius:8px;flex:1;padding:.55rem;font-size:.78rem;text-decoration:none}.qr-actions a+a{color:var(--green);background:#e7efec}@media (max-width:700px){.book-toolbar{min-height:62px;padding:.55rem .75rem}.brand small{display:none}.brand-mark{width:36px;height:36px}.toolbar-actions button{font-size:0}.toolbar-actions button span{margin:0;font-size:.72rem}.toolbar-actions a{padding:.55rem .65rem;font-size:.75rem}.qr-shortcut{padding:.55rem .7rem;font-size:.75rem;top:.65rem;right:.65rem}.page-controls{justify-content:center;top:auto;overflow-x:auto}.pdf-viewport{height:calc(100svh - 58px - env(safe-area-inset-bottom));padding:7px 0}.book-stage{height:100%;min-height:0}.chart-modal-backdrop{padding:0}.chart-modal{border-radius:0;width:100%;height:100dvh}.chart-modal footer span{display:none}.chart-modal footer{justify-content:flex-end}.interactive-chart{min-height:340px;padding:.5rem}.chart-canvas--wide{aspect-ratio:auto}.chart-with-side-legend{flex-direction:column;height:auto}.chart-with-side-legend>:first-child{width:100%!important;height:380px!important}.chart-with-side-legend>[data-chart-custom-legend=true]{max-height:180px;flex-flow:wrap!important;justify-content:flex-start!important;width:100%!important;height:auto!important;overflow-y:auto!important}.treemap-chart__legend{grid-template-columns:1fr;gap:.45rem}.qr-catalog-header,.qr-tools{flex-direction:column;align-items:stretch}.qr-summary{justify-content:center;gap:.4rem;min-width:0;padding:.5rem;display:flex}.qr-summary strong{font-size:1.2rem}.download-all{width:100%}.qr-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.chart-modal-backdrop,.chart-modal-backdrop:before,.chart-modal,.chart-modal>header,.chart-modal>.interactive-chart,.chart-modal>.chart-load-state,.chart-modal>footer{animation:none}.chart-hover-cursor,.chart-hover-cursor__content{transition:none}.chart-hover-cursor.is-visible .chart-hover-cursor__content:before{animation:none}}@media (hover:none),(pointer:coarse){.chart-hover-cursor{display:none}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
