.hx-report-design-studio{position:relative;min-height:460px;display:flex;align-items:center;font-family:var(--font-sans);perspective:1400px}.hx-report-design-studio .pb-stage{position:relative;width:100%;transform:rotateY(-9deg) rotateX(3deg);transform-style:preserve-3d;transition:transform .8s var(--ease)}.hx-report-design-studio:hover .pb-stage{transform:rotateY(-3deg) rotateX(1deg)}.hx-report-design-studio .pb-frame{position:relative;border-radius:14px;overflow:hidden;border:1px solid #2a2d36;background:#0b0c10;box-shadow:0 50px 90px -40px #000000e6,0 0 0 1px color-mix(in srgb,var(--a) 18%,transparent),0 30px 80px -30px color-mix(in srgb,var(--a) 45%,transparent)}.hx-report-design-studio .pb-bar0{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;background:#16181e;border-bottom:1px solid #2a2d36}.hx-report-design-studio .pb-bar0 i{width:9px;height:9px;border-radius:50%;background:#343844}.hx-report-design-studio .pb-bar0 span{margin:0 auto;padding:3px 12px;border-radius:6px;background:#0b0c10;font:10.5px var(--font-mono);color:#8a8f9c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80%}.hx-report-design-studio .pb-bar0 b{color:var(--a);font-weight:500}.hx-report-design-studio .pb-video{display:block;width:100%;height:auto;aspect-ratio:8 / 5;background:#0b0c10 url(/media/report-design-studio/studio.webp) center / cover}:root[data-theme=light] .hx-report-design-studio .pb-video{background:#f3f2ef url(/media/report-design-studio/studio-light.webp) center / cover}.hx-report-design-studio .pb-rec{position:absolute;left:-14px;bottom:26px;display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:99px;background:#101216;border:1px solid #2a2d36;box-shadow:0 16px 34px -14px #000c;font:600 11px var(--font-mono);color:#e8eaef;transform:translateZ(40px)}.hx-report-design-studio .pb-rec i{width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 #ef444499;animation:pb-rec 1.6s infinite}@keyframes pb-rec{70%{box-shadow:0 0 0 7px #ef444400}to{box-shadow:0 0 #ef444400}}:root[data-theme=light] .hx-report-design-studio .pb-frame{border-color:#10121b1f;box-shadow:0 50px 90px -46px #10121b80,0 0 0 1px color-mix(in srgb,var(--a) 18%,transparent),0 30px 80px -36px color-mix(in srgb,var(--a) 40%,transparent)}:root[data-theme=light] .hx-report-design-studio .pb-bar0{background:#f3f2ee;border-bottom-color:#10121b14}:root[data-theme=light] .hx-report-design-studio .pb-bar0 i{background:#10121b24}:root[data-theme=light] .hx-report-design-studio .pb-bar0 span{background:#fff;color:var(--ink-3)}:root[data-theme=light] .hx-report-design-studio .pb-bar0 b{color:var(--at)}:root[data-theme=light] .hx-report-design-studio .pb-rec{background:#fff;border-color:#10121b1a;color:var(--ink);box-shadow:0 16px 34px -18px #10121b73}@media(max-width:980px){.hx-report-design-studio{min-height:0;perspective:none}.hx-report-design-studio .pb-stage{transform:none}.hx-report-design-studio .pb-rec{left:10px;bottom:10px}}@media(prefers-reduced-motion:reduce){.hx-report-design-studio .pb-stage{transition:none}.hx-report-design-studio .pb-rec i{animation:none}}@property --p1{syntax: "<color>"; inherits: true; initial-value: #E69F00;}@property --p2{syntax: "<color>"; inherits: true; initial-value: #56B4E9;}@property --p3{syntax: "<color>"; inherits: true; initial-value: #009E73;}@property --p4{syntax: "<color>"; inherits: true; initial-value: #F0E442;}@property --p5{syntax: "<color>"; inherits: true; initial-value: #CC79A7;}.pbx-live{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:26px;width:100%;max-width:540px;animation:pbx-retheme 12s infinite}@keyframes pbx-retheme{0%,21%,to{--p1: #E69F00;--p2: #56B4E9;--p3: #009E73;--p4: #F0E442;--p5: #CC79A7}25%,46%{--p1: #8B5CF6;--p2: #F65C8B;--p3: #5CF6C4;--p4: #C4A8FF;--p5: #FFA8C4}50%,71%{--p1: #FF7A59;--p2: #FFB347;--p3: #6A4C93;--p4: #1982C4;--p5: #8AC926}75%,96%{--p1: #BFA5FA;--p2: #F26666;--p3: #3E84F6;--p4: #F6A41B;--p5: #07C6E6}}.pbx-src{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pbx-src figure{margin:0;display:grid;gap:7px;padding:7px 7px 8px;border-radius:14px;background:var(--card-2);border:1px solid var(--rule);animation:pbx-way 12s calc(var(--i) * 3s) infinite}.pbx-src figcaption{font:600 12px var(--font-sans);text-align:center;white-space:nowrap;color:var(--ink-3);animation:pbx-cap 12s calc(var(--i) * 3s) infinite}@keyframes pbx-way{0%,24%{border-color:var(--a);translate:0 -3px;box-shadow:0 14px 26px -16px var(--a)}27%,to{border-color:var(--rule);translate:0;box-shadow:none}}@keyframes pbx-cap{0%,24%{color:var(--at)}27%,to{color:var(--ink-3)}}.pbx-art{position:relative;height:88px;border-radius:9px;overflow:hidden;background:#15161b}.pbx-art.a0 span{position:absolute;inset:16% 20%;display:flex;border-radius:6px;overflow:hidden;rotate:calc((var(--k) - 2) * 10deg);box-shadow:0 6px 12px -4px #000000b3}.pbx-art.a0 i{flex:1}.pbx-art.a1{display:grid;place-items:center}.pbx-art.a1 svg{width:76px;height:76px;border-radius:50%;animation:pbx-spin 24s linear infinite;background:radial-gradient(closest-side,#15161b 30%,transparent 32%),conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.pbx-art.a1 polygon{fill:#ffffff26;stroke:#fff;stroke-width:2}.pbx-art.a1 circle{fill:#00000040;stroke:#fff;stroke-width:3}@keyframes pbx-spin{to{rotate:1turn}}.pbx-art.a2{background:radial-gradient(120% 40% at 10% 100%,#8AC926 0 45%,transparent 46%),radial-gradient(circle at 62% 46%,#FFB347 0 10%,transparent 11%),linear-gradient(#6a4c93,#c8608a 35%,#ff7a59 56%,#ffb347 64%,#1982c4 65%,#145f96)}.pbx-art.a2 b{position:absolute;width:13px;height:13px;translate:-50% -50%;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #00000059;animation:pbx-ring 2s calc(var(--k) * .3s) ease-in-out infinite}@keyframes pbx-ring{50%{scale:1.3}}.pbx-art.a3{display:grid;gap:4px;padding:9px 12px}.pbx-art.a3 span{display:flex;justify-content:flex-end;align-items:center;padding-right:4px;border-radius:3px}.pbx-art.a3 svg{width:9px;height:9px;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round}.pbx-fan{display:grid;justify-items:center;gap:10px}.pbx-deck{position:relative;width:100%;height:200px}.pbx-deck i{position:absolute;left:50%;bottom:4px;width:48px;height:188px;margin-left:-24px;border-radius:8px;overflow:hidden;transform-origin:50% calc(100% - 14px);rotate:calc(var(--n) * 13deg);box-shadow:0 10px 22px -10px #000000b3;animation:pbx-fan 3s var(--ease) infinite}.pbx-deck i:after{content:"";position:absolute;left:0;right:0;bottom:0;height:30px;background:#f4f2ee}.pbx-deck:after{content:"";position:absolute;left:50%;bottom:13px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:#c9c6bf;border:2px solid #8d8a84;box-sizing:border-box}@keyframes pbx-fan{0%,to{rotate:calc(var(--n) * 2deg)}14%,80%{rotate:calc(var(--n) * 13deg)}}.pbx-names{display:grid}.pbx-names b{grid-area:1 / 1;justify-self:center;padding:3px 10px;border-radius:7px;font:700 11px var(--font-mono);white-space:nowrap;color:var(--ink);background:var(--card-2);border:1px solid var(--rule);opacity:0;animation:pbx-name 12s calc(var(--i) * 3s) infinite}@keyframes pbx-name{0%,24%{opacity:1}26%,to{opacity:0}}.pbx-ok{display:inline-flex;align-items:center;gap:6px;font:600 11px var(--font-mono);color:#4ade80}.pbx-ok i{width:7px;height:7px;border-radius:50%;background:currentColor}@media(prefers-reduced-motion:reduce){.pbx-live,.pbx-src figure,.pbx-src figcaption,.pbx-names b,.pbx-deck i,.pbx-art.a1 svg,.pbx-art.a2 b{animation:none}.pbx-names b:first-child{opacity:1}.pbx-src figure:first-child{border-color:var(--a)}}@property --lx{syntax: "<length>"; inherits: true; initial-value: 30%;}@property --ly{syntax: "<length>"; inherits: true; initial-value: 40%;}.pbx-lens{margin-top:40px}.pbx-sec .sec2-head{align-items:flex-start}.pbx-sec .sec2-aside{flex:0 1 420px;padding-bottom:0}.pbx-views{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pbx-view{display:grid;gap:7px;padding:6px 6px 8px;border-radius:14px;border:1px solid var(--rule);background:var(--card);cursor:pointer;transition:border-color .2s,transform .25s var(--ease)}.pbx-view:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--a) 40%,var(--rule))}.pbx-thumb{display:block;overflow:hidden;border-radius:9px;aspect-ratio:760 / 457;container-type:inline-size}.pbx-thumb>span{display:block;width:760px;zoom:.318;zoom:tan(atan2(100cqw,760px));zoom:calc(100cqw/760px)}.pbx-vn{padding:0 4px;font:600 13px var(--font-sans);color:var(--vn, var(--ink-2))}.pbx-sec:has(#pbx-t-deut:checked) .pbx-view[data-t=deut],.pbx-sec:has(#pbx-t-prot:checked) .pbx-view[data-t=prot],.pbx-sec:has(#pbx-t-trit:checked) .pbx-view[data-t=trit],.pbx-sec:has(#pbx-t-achr:checked) .pbx-view[data-t=achr]{--vn: var(--at);border-color:var(--a);box-shadow:0 0 0 3px color-mix(in srgb,var(--a) 18%,transparent)}@media(max-width:980px){.pbx-sec .sec2-aside{flex-basis:100%}}.pbx-defs{position:absolute;width:0;height:0}.pbx-types{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;border:0}.pbx-types label{position:relative;cursor:pointer}.pbx-types input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.pbx-types span{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 16px;border-radius:99px;border:1px solid var(--rule);background:var(--card);font:600 13.5px var(--font-sans);color:var(--ink-2);transition:all .2s var(--ease)}.pbx-types span:before{content:"";width:10px;height:10px;border-radius:50%;border:2px solid var(--ink-3)}.pbx-types input:checked+span{color:var(--at);border-color:color-mix(in srgb,var(--a) 60%,transparent);background:color-mix(in srgb,var(--a) 12%,var(--card))}.pbx-types input:checked+span:before{border-color:var(--a);background:var(--a)}.pbx-types input:focus-visible+span{outline:2px solid var(--at);outline-offset:2px}.pbx-stage{--lx: 30%;--ly: 40%;position:relative;border-radius:18px;overflow:hidden;cursor:none;touch-action:pan-y;border:1px solid #23262e;box-shadow:var(--sh-screen);animation:pbx-drift 14s ease-in-out infinite}.pbx-stage[data-held]{animation:none}@keyframes pbx-drift{0%,to{--lx: 22%;--ly: 38%}25%{--lx: 58%;--ly: 30%}50%{--lx: 78%;--ly: 66%}75%{--lx: 38%;--ly: 72%}}.pbx-glass{position:absolute;inset:0;pointer-events:none;filter:url(#pbx-deut);clip-path:circle(120px at var(--lx) var(--ly))}.pbx-lens:has(input[value=prot]:checked) .pbx-glass{filter:url(#pbx-prot)}.pbx-lens:has(input[value=trit]:checked) .pbx-glass{filter:url(#pbx-trit)}.pbx-lens:has(input[value=achr]:checked) .pbx-glass{filter:url(#pbx-achr)}.pbx-rim{position:absolute;left:var(--lx);top:var(--ly);width:240px;height:240px;margin:-120px 0 0 -120px;border-radius:50%;pointer-events:none;box-shadow:0 0 0 3px #fff,0 0 0 9px #00000059,0 20px 50px 10px #00000073,inset 0 0 30px #ffffff1f}.pbx-key{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0 0 12px;font-size:14px;color:var(--ink-2)}.pbx-key span{display:inline-flex;align-items:center;gap:8px}.pbx-key i{width:14px;height:14px;border-radius:50%}.pbx-key i.n{border:1px dashed var(--ink-3)}.pbx-key i.c{box-shadow:0 0 0 2px #fff inset,0 0 0 1px var(--rule);background:conic-gradient(#8a8a3c,#6f7fd6,#8a8a3c)}.pbx-key b,.pbx-tag{font-weight:600;color:var(--ink)}.pbx-who:after{content:"someone with deuteranopia"}.pbx-how{margin:-4px 0 14px;font-size:14px;color:var(--ink-3)}.pbx-how b{font-weight:600;color:var(--ink-2)}.pbx-how span{display:none}.pbx-lens:has(#pbx-t-deut:checked) .pbx-how [data-t=deut],.pbx-lens:has(#pbx-t-prot:checked) .pbx-how [data-t=prot],.pbx-lens:has(#pbx-t-trit:checked) .pbx-how [data-t=trit],.pbx-lens:has(#pbx-t-achr:checked) .pbx-how [data-t=achr]{display:inline}.pbx-tag{position:absolute;left:50%;top:calc(100% + 12px);transform:translate(-50%);white-space:nowrap;padding:4px 11px;border-radius:99px;background:#fff;color:#111!important;font:600 12px var(--font-sans);box-shadow:0 8px 20px -6px #0009}.pbx-tag:after{content:"Deuteranopia view"}.pbx-lens:has(input[value=prot]:checked) .pbx-tag:after{content:"Protanopia view"}.pbx-lens:has(input[value=trit]:checked) .pbx-tag:after{content:"Tritanopia view"}.pbx-lens:has(input[value=achr]:checked) .pbx-tag:after{content:"No-colour view"}.pbx-lens:has(input[value=prot]:checked) .pbx-who:after{content:"someone with protanopia"}.pbx-lens:has(input[value=trit]:checked) .pbx-who:after{content:"someone with tritanopia"}.pbx-lens:has(input[value=achr]:checked) .pbx-who:after{content:"someone who sees no colour"}.pbx-hint{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:inline-flex;align-items:center;gap:9px;padding:8px 15px 8px 11px;border-radius:99px;background:#0a0b0fd1;border:1px solid rgb(255 255 255 / .18);color:#fff;font:600 13px var(--font-sans);backdrop-filter:blur(6px);pointer-events:none;transition:opacity .4s}.pbx-hint i{width:18px;height:18px;border-radius:50%;border:2px solid #fff;animation:pbx-ping 1.6s ease-out infinite}@keyframes pbx-ping{0%{box-shadow:0 0 #fff9}to{box-shadow:0 0 0 12px #fff0}}.pbx-stage[data-used] .pbx-hint{opacity:0}@media(hover:none){.pbx-hint{font-size:0;gap:0}.pbx-hint:after{content:"Drag across the report";font-size:13px;margin-left:9px}}.pbx-report{display:grid;gap:14px;padding:22px;background:#101216;color:#e8eaef;font-family:var(--font-sans);user-select:none}.pbx-head{display:flex;align-items:baseline;justify-content:space-between}.pbx-head b{font-size:17px}.pbx-head span{font:11px var(--font-mono);color:#8a8f9c}.pbx-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.pbx-kpi,.pbx-vis{position:relative;padding:14px 16px;border-radius:10px;background:#1a1d24;border:1px solid #262a33;overflow:hidden}.pbx-report small{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#8a8f9c}.pbx-kpi b{display:block;margin:6px 0 4px;font-size:26px;font-weight:800;letter-spacing:-.02em}.pbx-kpi u{text-decoration:none;font-size:11.5px;font-weight:700;padding:3px 8px;border-radius:99px}.pbx-kpi.ok u{color:#0b0b10;background:#1aab40}.pbx-kpi.bad u{color:#fff;background:#d64550}.pbx-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#1aab40}.pbx-kpi.bad:before{background:#d64550}.pbx-row{display:grid;grid-template-columns:1.6fr 1fr;gap:12px}.pbx-cols{display:flex;align-items:flex-end;gap:10px;height:170px;margin-top:14px;background:repeating-linear-gradient(to top,#262a33 0 1px,transparent 1px 42px)}.pbx-cols i{flex:1;border-radius:4px 4px 0 0;background:#1aab40}.pbx-cols i:nth-child(odd){background:#118dff}.pbx-cols i.hot{background:#d64550}.pbx-pie{display:block;width:130px;height:130px;margin:14px auto 12px;border-radius:50%;background:conic-gradient(#1aab40 0 32%,#d64550 32% 58%,#e66c37 58% 80%,#118dff 80%)}.pbx-vis ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;font-size:12px;color:#b6bac4}.pbx-vis li:before{content:"";display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:3px;background:#1aab40}.pbx-vis li:nth-child(2):before{background:#d64550}.pbx-vis li:nth-child(3):before{background:#e66c37}.pbx-vis li:nth-child(4):before{background:#118dff}.pbx-note{margin:14px 0 0;font-size:14px;color:var(--ink-3)}.pbx-note b{color:var(--ink)}:root[data-theme=light] .pbx-art{background-color:#eeede9}:root[data-theme=light] .pbx-art.a1 svg{background:radial-gradient(closest-side,#eeede9 30%,transparent 32%),conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}:root[data-theme=light] .pbx-stage{border-color:#10121b1a}:root[data-theme=light] .pbx-report{background:#f3f2ef;color:#1b1d24}:root[data-theme=light] .pbx-head span,:root[data-theme=light] .pbx-report small{color:#6b6f7b}:root[data-theme=light] :is(.pbx-kpi,.pbx-vis){background:#fff;border-color:#10121b14}:root[data-theme=light] .pbx-kpi.ok u{color:#fff;background:#158a33}:root[data-theme=light] .pbx-cols{background:repeating-linear-gradient(to top,rgb(16 18 27 / .1) 0 1px,transparent 1px 42px)}:root[data-theme=light] .pbx-vis ul{color:#4a4d57}@media(max-width:760px){.pbx-stage .pbx-kpis{grid-template-columns:1fr 1fr}.pbx-stage .pbx-row{grid-template-columns:1fr}.pbx-glass{clip-path:circle(90px at var(--lx) var(--ly))}.pbx-rim{width:180px;height:180px;margin:-90px 0 0 -90px}}@media(prefers-reduced-motion:reduce){.pbx-stage{animation:none}}